/* Sticky footer styles
-------------------------------------------------- */

html,
body {
	/* The html and body elements cannot have any padding or margin. */
	background: #1e1e1e;
	font-size: 16px;
	font-family: Open Sans, Raleway, Arial;
}

@media (max-width: 560px) {

	body{
		font-size: 10px;
	}

}

/* Misc */
input, textarea, select{
	padding: 5px 10px 5px 10px;
	border: 0px;
}

input, textarea, button, select {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}

.btn, .btn:hover{
	border: 0px;

	color: white;
	background-color: #222;
	outline: 0px;
}

.btn-big, .btn-big:hover, .btn-big:active, .btn-big:focus, .btn-big:visited{
	color: white;

	font-size: 2em;

	background: transparent;

	border: 2px solid #ffffff;
	padding: 5px 40px 5px 40px;

	margin: 20px auto;

	outline: none;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
	border-color: auto;
}

iframe{
	max-width: 100%;
}

iframe[name='google_conversion_frame'] {
    height: 0 !important;
    width: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    margin-top: -13px;
    float: left;
}

@media (max-width: 760px) {
	.sl-widget-box{
		display: none !important;
	}
}

/* Navbar */
nav#menu1{
	padding: 0px;
}

.nav-right{
	margin-top: 40px;
}

.top-menu-wrap{
	float: left;
	padding-left: 15px;
}

.menu-horizontal li a {
    text-transform: initial !important;
    font-size: 12px !important;
	margin-top: 20px;
	opacity: 1 !important;
    color: #444 !important;
}

.bar__module{
	margin-top: 10px;
}

/* Navbar search box */
.search-form form{
	display: contents;
}

.search-form input{
    font-size: 10px;
    width: auto;
    padding: 0px 20px;
    height: auto;
    float: right;
	margin-right: 10px;
}

.search-form button{
    font-size: 10px;
    width: auto !important;
    padding: 5px 20px;
    border-radius: 15px;
    float: right;
	margin-left: 10px;
}

/* Wrapper for page content to push down footer */
#wrap {
  min-height: 100%;
  /* Negative indent footer by its height */
  margin: 0 auto -180px;
  /* Pad bottom by footer height */
  padding: 0 0 180px;
}

/* Set the fixed height of the footer here */
#footer {
	min-height: 180px;
}

@media (max-width: 560px) {

	.btn-big{
		font-size: 22px;
	}

}

img{
	max-width: 100% !important;
	height: auto;
}

a, a:hover, a:visited, a:active, a:focus{
	color: inherit;
	text-decoration: none;
}

@media (max-width: 560px) {

	blockquote{
		border: 0px;
	}

}

h1{
	font-size: 42px;
}

h1, h2, h3, h4, h5, h6{
	font-family: Montserrat, Open Sans;
	line-height: 130%;
	width: 100%;
    display: inline-block;
}

td, th{
	padding: 10px;
}

.margin-top-10{
	margin-top: 10px;
}

.margin-top-20{
	margin-top: 20px;
}

.margin-top-40{
	margin-top: 40px;
}

.margin-top-80{
	margin-top: 80px;
}

/* Custom page CSS
-------------------------------------------------- */
/* Not required for template or sticky footer method. */

#wrap{
	background: #ffffff;
}

#wrap > .container {
  padding: 60px 15px 0;
}
.container .credit {
  margin: 20px 0;
}

#footer > .container {
  padding-left: 15px;
  padding-right: 15px;
}

code {
  font-size: 80%;
}

@media (max-width: 1200px) {

	html, body, #wrap{
		width: 100%;
		margin: 0px;
		padding: 0px;
		overflow-x: hidden;
	}

}

/* Header
-------------------------------------------------- */

#header_wrap{
	max-width: 1200px;
	width: 100%;
	margin: 0px auto;
	padding: 0px;
}

.navbar{
	position: relative;
	border: 0px;
	margin-bottom: 0px;
}

.navbar-default{
	color: #ffffff;
	background: #303030;
	z-index: 1;
}

.navbar .menu{
	width: 25%;
}

.navbar .menu li{
	font-size: 14px;
	text-transform: uppercase;
}

.navbar-default .navbar-nav li, .navbar-default .navbar-nav li a, .navbar-default .navbar-nav li a:hover, .navbar-default .navbar-nav li a:visited{
	font-weight: bold;
	color: #ffffff;
}

.navbar .navbar-brand img{
	width: 220px;
	padding-top: 10px;

	margin-left: calc((100% - 1200) / 2);
}

@media (min-width: 768px) {

	.navbar .menu{
		float: left;
		width: 32%;
	}

	.navbar .menu ul{
		width: 100%;

		padding-top: 15px;
	}

}

.navbar .login{
	padding: 20px 0px 10px 20px;

	color: #303030;

	background: #ffffff;
}

.navbar .login a{
	color: #303030;
	text-decoration: underline;
}

.navbar .login input{
	float: left;
	width: 38%;
	background-color: #f2f2f2;
	color: #303030;
}

.navbar .login .btn{
	padding-top: 3px;
	padding-bottom: 3px;
	border: 2px solid #f2f2f2;
	background-color: #555555;
}

#header_login .loading{
	width: 20px;
	margin-top: -15px;
	margin-left: 5px;
}

#header_login .success{
	width: 20px;
	margin-top: -15px;
	margin-left: 5px;
}

#header_login .text{
	clear: both;
	margin-left: 0px;
}

@media (min-width: 768px) {

	.navbar .login input{
		width: 150px;
	}

}

@media (max-width: 1200px) {

	.navbar .menu{
		float: right;
		width: 36%;
	}

	.navbar .login{
		margin: 40px 0px 0px 0px;
		width: 100%;
	}

	.navbar .login input{
		font-size: 20px;
	}

	.navbar .login{
		font-size: 20px;
	}

	.navbar .login .btn{
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.navbar .menu li{
		float: right;
		font-size: 22px;
	}

}

@media (max-width: 960px) {

	.navbar .menu{
		width: 55%;
	}

}

@media (max-width: 768px) {

	.navbar .menu{
		float: left;
		width: 100%;

		font-size: 18px;
	}

	.navbar .login{
		font-size: 14px;
	}

}

#banner_top{
	margin-top: 40px;
    margin-bottom: 20px;
	width: 100%;
}

/* Content
-------------------------------------------------- */

/* Blog */

.blog{
	max-width: 760px;
	margin: 60px auto;
	margin-bottom: 0px;

	color: white;
}

.blog .post{
	font-family: Raleway, Open Sans;
	letter-spacing: 1px;
	display: inline-block;

	color: #323232;
	font-size: 18px;
	line-height: 150%;

	margin-bottom: 30px;
	padding-bottom: 30px;

	border-bottom: 1px solid #eee;
}

.blog .post p{
	float: left;
	width: 90%;
	margin-bottom: 30px;
	font-family: Raleway, Open Sans;
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 150%;
}

.blog .post button.download{
	color: white;
	padding: 20px;
	margin-bottom: 10px;
	background-color: #FFAE01;
	font-weight: bold;
	text-transform: uppercase;
}

@media (max-width: 760px) {

	#blog_wrap{
		padding-left: 0px;
		padding-right: 0px;
	}

	.blog .post p{
		width: 100%;
	}

	.blog .post{
		width: 100%;
	}

}

/* Download Plugin */
.onp-sl{
	display: inline-block !important;
}

.blog .post i{
	font-weight: 100;
}

.blog .post a{
	color: #7f4dcf;
}

.blog .post img:not(.small){
	width: 100%;

	margin-top: 15px;
	margin-bottom: 15px;
}

.blog .post .destaque{
	border-top: 5px solid #ddd;
	display: inline-block;
	border-bottom: 5px solid #ddd;
	margin-bottom: 30px;
}

.blog .post .destaque .text-right strong{
	display: inline-block;
	margin-top: 30px;
}

.blog .post .destaque a.purple{
	color: #7f4dcf;
}

.blog .post .destaque a{
	color: inherit;
	font-weight: bold;
}

.post h2{
	width: 100%;
	color: #7f4dcf;
	font-size: 2em;

	margin-bottom: 20px;
	margin-top: 30px;
	display: inline-block;

	line-height: 150%;
}

.post h3{
	color: #7f4dcf;

	margin-bottom: 20px;

	line-height: 150%;
}

.blog .post ul {
	display: inline-block;
	margin-bottom: 10px;
}

.blog .post .bold{
	font-weight: bold;
}

.blog .post .green{
	color: #009688;
}

.blog .post .red{
	color: #d44949;
}

.blog .post ul li{
	float: left;
	width: 100%;
	display: inline-block;
	margin-bottom: 20px;
	list-style: none;
	padding-left: 20px;
}

.blog .post ul li:before {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    background: #7f4dcf;
    position: absolute;
    margin-left: -40px;
    margin-top: 10px;
}

.blog .post blockquote{
	width: 100%;
	display: inline-block;
	font-size: 18px;
	font-style: italic;
	    border-left-color: #7F4FCF;
}

.blog .post blockquote p{
	margin-bottom: 0px;
	font-size: inherit;
}

.blog .nav{
	color: #04292f;
	font-weight: bold;
	font-size: 1.2em;
	margin-bottom: 30px;
}

/* Comentários */

.blog .comments{
	color: #3e3e3e;
}

.blog .comments a{
	color: #7f4dcf;
}

/* Contact */

#contact_wrap{
	background-color: #252525;
}

.contact{
	max-width: 1200px;
	margin: 0px auto;
	margin-bottom: 0px;
	padding-top: 30px;
	padding-bottom: 30px;

	color: white;
}

.contact h2{
	font-size: 42px;
}

.contact p{
	font-size: 18px;
}

.contact strong{
	font-size: 26px;
	color: #ffa95c;
	margin-left: 5px;
	font-weight: normal;
}

.contact input[type='text'],.contact input[type='email'], .contact textarea{
	margin: 10px;
	padding: 10px;

	color: #3a3a3a;

	font-size: 16px;

	outline: none !important;
}

.contact input[type='text']{
	width: 60%;
}

.contact textarea{
	width: 98%;
	height: 100px;
	resize: vertical;
}
.contact textarea::-webkit-input-placeholder { /* WebKit browsers */
    color:    #aaa;
}
.contact textarea:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #aaa;
   opacity:  1;
}
.contact textarea::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #aaa;
   opacity:  1;
}
.contact textarea:-ms-input-placeholder { /* Internet Explorer 10+ */
   color:    #aaa;
}

#faq{
	display: inline-block;
	margin-top: 20px;
}

#faq .panel{
	border: none;
	border-radius: 2px;
}

#faq .panel-heading{
	background: #ffffff;
	color: #4373c9;
	border: none;

	padding: 0px 20px 5px 20px;

	border-left: 10px solid #ffa95c;
}

#faq .panel-title, #faq .panel-heading a{
	font-size: 18px;
}

#faq .panel-heading h4{
	min-height: 60px;
	padding-top: 20px;
}

#faq .panel-heading.focus{
	background: #ffa95c;
	color: white;
}

#faq .panel-body{
	border-top: 0px;
	color: #3a3a3a;
}

@media (max-width: 960px) {

	.contact textarea{
		width: 95%;
	}

}

/* Sidebar */

.sidebar{
	margin-top: 20px;
}

.widget{
	display: inline-block;
	margin-bottom: 30px;
	color: #303030;
}

.widget p{
	font-size: 16px;
	text-align: justify;
	font-family: Raleway, Open Sans;
}

.widget a{
	color: #7f4dcf;
	text-decoration: underline;
}

.widget.banner{
	padding: 0px;
}

.widget h3{
	color: #333;
	font-size: 2.2em;
	margin-bottom: 30px;
}

/* Optin */

.optin{
	text-align: center;

	padding: 20px 0px 20px 0px;

	background-image: url('../img/background-opt-in.jpg');
	background-size: cover;
	background-repeat: no-repeat;
}

.optin h4{
	font-size: 1.5em;
	line-height: 150%;
	margin-bottom: 5px;
}

.optin p{
	float: left;
	width: 100%;
	padding: 10px 20px 10px 20px;

	font-size: 14px;
	font-style: italic;
	font-weight: 300;
}

.optin input{
	float: left;
	background-color: #04292f;
	padding: 10px;
	max-width: 220px;
	text-align: center;

	font-size: 1.5em;
	margin-left: 25px;

	outline: none;
}

.optin .btn, .optin .btn:hover, .optin .btn:active, .optin .btn:focus{
	float: left;
	border: 9px solid #04292f;
	outline: none;
}

.optin .icons{
	width: 100%;
}

.optin .success, .optin .error{
	display: inline-block;
	margin-top: 10px;
}

@media (max-width: 1200px) {

	.optin input{
		width: 80%;
		max-width: 100%;
		margin-left: 10%;

		font-size: 16px;
	}

	.optin button{
		border: none !important;

		display: inline-block;
		margin: 20px auto;
		width: 50%;
		margin-left: 25%;
	}

	.optin p{
		line-height: 150%;
		font-size: 14px;

		text-align: center;
	}

}

/* Search */

.search{
	background-color: #e6e6e6;
	color: #333;

	padding: 10px 20px 20px 20px;
	font-size: 1em;
	line-height: 140%;
}

.search a{
	color: #7f4dcf;
}

.search input{
	float: left;
	color: #333;
	background-color: #ffffff;
	padding: 10px;
	max-width: 220px;
	text-align: center;

	outline: none;
}

.search .btn, .search .btn:hover, .search .btn:active, .search .btn:focus{
	float: left;
	border: 4px solid #ffffff;
	border-bottom-width: 3px;
	outline: none;
	padding-bottom: 9px;
}

.search p{
	float: left;
	width: 100%;

	font-size: 12px;
	font-weight: bold;
	margin-top: 10px;
}

@media (max-width: 1200px) {

	.search input{
		width: 100%;
		max-width: 100%;

		font-size: 16px;
	}

	.search button{
		border: none;

		display: inline-block;
		margin: 20px auto;
		width: 50%;
		margin-left: 25%;
	}

	.search p{
		line-height: 150%;
		font-size: 14px;

		text-align: center;
	}

}

/* Recent */

.recent{
	padding-bottom: 30px;
}

.recent .item{
	display: inline-block;
	width: 100%;
	min-height: 150px;

	background: #7f4dcf;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.recent .item:not(.last){
	margin-bottom: 30px;
}

.recent .item .thumb{
	padding: 0px;
	position: absolute;
	width: calc(100%);
}

.recent .item .thumb img{
	width: 100%;
}

.recent .item .title{
	padding: 0px 0px 0px 10px;
	color: #e6701a;
	font-size: 22px;

	padding: 10px 10px 10px 5px;

	line-height: 150%;
	font-family: Raleway, Open Sans;
	font-style: italic;
}

.recent .item .title span{
	box-shadow: 0.5em 0 0 #ffffff,-0.5em 0 0 #ffffff;
	background: #ffffff;
}

/* Facebook */

#fb-root {
  display: none;
}
.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget span iframe[style] {
  width: 100% !important;
}

/* Categories */

.categories .category{
	padding: 0px 5px 5px 0px;
}

/* Tags */

.tags .item{
	display: inline-block;
	margin: 5px;
	padding: 10px;
	font-size: 1.2em;
	color: #ffffff;
	background-color: #1e1e1e;

	word-break: keep-all;

	font-family: Raleway;
    font-size: 16px;
}

@media (max-width: 1200px) {

	.tags .item{
		font-size: 16px;
	}

}

/* Contato */

.contact-form textarea{
	width: 100% !important;
	color: #aaa;
}

.contact-submit input[type='submit']{
	font-size: 20px;
}

/* Autor */

#author_bio{
	margin-top: 20px;
	border-top: 1px solid #eee;

	color: #666;
	font-size: 16px;

	display: inline-block;
	padding-top: 20px;
}

#author_bio .author_name{
	font-size: 20px;
}

#author_bio img{
	max-width: 60px !important;
    float: left;
    margin-right: 20px;
    margin-top: 0px;
}

/* Misc */

.image-clickable:hover{
	opacity: 0.8;
}

.kk-star-ratings{
	margin-right: 45%;
}

.wp-block-columns{
	width: 100%;
}

.post-date{
	margin-bottom: 40px;
    display: inline-block;
    padding-bottom: 10px;
    width: 100%;
}

.post-date:after{
	content: ' ';
    border-bottom: 5px solid #7f4dcf;
    width: 30%;
    position: relative;
    display: block;
	margin-top: 20px;
}

/* Footer
-------------------------------------------------- */

#footer{
	background: #000;
	color: white;

	padding: 20px;
}

#footer_content{
	max-width: 1200px;
	margin: 0px auto;
}

#footer .logo{
	max-width: 240px;
}

#footer .menu{
	font-size: 18px;
	margin-top: 20px;
	padding-left: 0px;
	line-height: 200%;

	color: #7f4dcf;
}

#footer .contact{
	font-size: 1em;

	border-left: 2px solid #ffffff;
}

#footer .contact img{
	margin-left: 10px;
}

@media (max-width: 960px) {

	#footer .contact{
		border-left: none;
	}

}

@media (max-width: 1200px) {

	#footer .logo{
		max-width: 200px;
	}

	#footer .menu{
		font-size: 14px;
	}

	#footer .contact{
		font-size: 14px;
	}

}

/*
*	GDPR COOKIE CONSENT FORM
*/

#cookies-eu-banner{
	display: block;
    position: fixed;
    bottom: 0px;
    width: 100%;
    background: #fff;
    padding: 20px;
	z-index: 9000;
}

#cookies-eu-reject{
	border-radius: 15px;
    width: auto;
    padding: 5px 20px;
    font-size: 14px;
    margin: 0px;
    display: inline-block;
    border: 1px solid #aaa;
    font-weight: bold;
}

#cookies-eu-accept{
	border-radius: 15px;
    width: auto;
    padding: 5px 20px;
    font-size: 14px;
    margin: 0px;
    display: inline-block;
    border: 1px solid #aaa;
    font-weight: bold;
	background-color: #9b52ed;
	color: #fff;
}