/*
Theme Name: TheGem Child
Description: Multi-Purpose Wordpress Theme
Author: Codex Themes.
Theme URI: http://codex-themes.com/thegem/
Author URI: http://codex-themes.com/thegem/
Template: thegem
Version: 1.0
Tags: one-column, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, full-width-template, theme-options, translation-ready, dark, light
License: GNU General Public License
License URI: license.txt
*/

/** Header Menu Styles **/
body #primary-menu.no-responsive > li.menu-item-current > a {
	color: #52a6a6;
	border: none !important;
}
.top-area {
	display: none;
}
#primary-navigation #primary-menu > li.menu-item-search > a:before,
#searchform-submit,
#searchform-input {
	font-weight: bold !important;
}
@media only screen and (min-width: 980px) {
	body #site-header .primary-navigation,
	body #site-header #perspective-menu-buttons {
		text-align: left;
	}
	.top-area {
		display: block;
	}
	body #site-header.fixed {
		padding: 23px 0;
	}
}

body #site-header-wrapper {
	position: relative;
}

body #site-header .primary-navigation {
	padding-left: 75px;
}

body #site-header .primary-navigation li.menu-item-active > a {
	border: 0 !important;
	color: #51a6a6;
}

body .top-area {
	border: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 12;
	padding-right: 20px;
}

body .top-area .container {
	padding: 0;
}

@media only screen and (min-width: 1213px) {
	body .top-area {
		top: 50%;
		transform: translateY(-50%);
	}
}

body .top-area .container {
	width: auto;
}

body .top-area .top-area-items .top-area-block {
	height: auto;
	line-height: 1;
}

body .top-area .gem-button {
	font-size: 20px;
	height: auto;
	padding: 6px 14px !important;
	text-transform: uppercase;
	font-weight: 500;
}

/** Mobile Menu Styles **/
body .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li {
	border: 0;
}

body .mobile-menu-layout-slide-horizontal #primary-navigation.responsive .mobile-menu-slide-wrapper,
body .mobile-menu-layout-slide-vertical #primary-navigation.responsive .mobile-menu-slide-wrapper,
body .menu-overlay.mobile {
	background-color:#45494A; 
}

body #primary-navigation.responsive .mobile-menu-slide-wrapper .mobile-menu-slide-close:before,
body #primary-navigation.responsive .mobile-menu-slide-wrapper .mobile-menu-slide-close:after {
	background-color: #fff;
}

body #primary-navigation.responsive .mobile-menu-slide-wrapper .mobile-menu-slide-close:hover:before,
body #primary-navigation.responsive .mobile-menu-slide-wrapper .mobile-menu-slide-close:hover:after {
	background-color: #51a6a6;
}

body #primary-navigation.responsive #primary-menu > li > .menu-item-parent-toggle,
body #primary-navigation.responsive #primary-menu > li.menu-item-active > .menu-item-parent-toggle,
body #primary-navigation.responsive #primary-menu > li.opened > .menu-item-parent-toggle {
	color: #fff;
}

body #primary-navigation.responsive #primary-menu > li > .menu-item-parent-toggle:hover,
body #primary-navigation.responsive #primary-menu > li.menu-item-active > .menu-item-parent-toggle:hover,
body #primary-navigation.responsive #primary-menu > li.opened > .menu-item-parent-toggle:hover {
	color: #51a6a6;
}


body .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li.menu-item-widgets .menu-item-socials,
body .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li.menu-item-widgets .menu-item-socials {
	display: none;
}

body .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li a,
body .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li a {
	background-color:#45494A;
	color: #fff;
	border: 0;
	font-weight: 700;
	text-transform: uppercase;
}

body .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li a:hover,
body .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li a:hover {
	background-color:#45494A;
	color: #51a6a6;
}

/** Footer Styles **/
body footer.custom-footer {
	padding-top: 60px;
	text-align: center;
	font-weight: 700;
}
body footer.custom-footer figure {
	margin: 0 auto 10px !important;
	display: table !important;
}
@media only screen and (min-width: 768px) {
	body footer.custom-footer {
		text-align: left;
	}
	body footer.custom-footer figure {
		margin: 0 0 10px !important;
	}
}

body .custom-footer .container {
	padding-top: 80px; 
	border-top:  1px #fbcc86 solid;
}

/** Server Login Select Styles **/
.server-logins .select {
	position: relative;
	display: inline-block;
}
.server-logins .select .fa {
	position: absolute;
	right: 10px;
	top: 50%;
	z-index: 1;
	transform: translateY(-50%);
	pointer-events: none;
}
.server-logins select {
	background: #ededed;
	border: 0;
	border-radius: 0;
	min-height: 40px;
	font-size: 14px;
	appearance: none;
	-webkit-appearance: none;
	padding: 0 30px 0 10px;
}

body .widget_nav_menu .menu,
body .widget_nav_menu li {
	border: none !important;
}

body .widget_nav_menu li {
	margin: 12px 0;
}

body .widget_nav_menu .menu a,
body .widget_nav_menu li a {
	color: #51a6a6;
	font-weight: 700;
	padding: 0 !important;
}

body .widget_nav_menu .menu a:hover,
body .widget_nav_menu li a:hover {
	color: #76d6d5;
}

body .portfolio-slider.hover-title.columns-3 .portfolio-item {
	width: 100% !important;
}

body .hover-title.columns-3 .portfolio-item img {
	left: auto !important;
}

body .portfolio-item .portfolio-icons {
	/* Uncomment to hide portfolio icons */
	/* display: none; */
}

body .portfolio-slider .portfolio-item .portfolio-icons,
body .portfolio:not(.title-on-page) .portfolio-item .portfolio-icons {
	display: none;
}

body .portfolio-item .image .links .caption .title a {
	display: block;
}

body #main-content .custom-header {
	background-size: cover;
}

body #main-content .custom-header * {
	color: #fff;
	text-align: center;
	font-weight: 700;
}

body.home #main-content .custom-header * {
	text-align: left;
}

body #main-content .custom-header h1,
body #main-content .custom-header h2,
body #main-content .custom-header h3 {
	text-transform: uppercase;
}

body .custom-header .gem-button {

}

body.home .custom-header .gem-button {
	margin-left: 0;
	margin-right: 0;
}

body .custom-header .gem-icon-pack-elegant {
	display: none;
}

body .custom-header-title {
	float: none !important;
	clear: none !important;
	margin-left: auto;
	margin-right: auto;
}

body.home .custom-header-title {
	float: left !important;
	clear: left !important;
}

body .custom-header-title a {
	background-color: #51a6a6 !important;
}

body .custom-header-title a:hover {
	background-color: #76d6d5 !important;
}

body .socials-colored a .socials-item-icon,
body .socials-colored-hover a:hover .socials-item-icon {
	color: #51a6a6 !important;
}

body .socials-colored-hover a:hover .socials-item-icon {
	color: #76d6d5 !important;
}

/** Global Styles **/
.entry-content h1,
.entry-content .title-h1,
.entry-content h2,
.entry-content .title-h2,
.entry-content h3,
.entry-content .title-h3 {
	text-transform: none;
}

body .page-title-title h1 {
	font-weight: 700;
}

.entry-content a {
	font-weight: 700;
}

body blockquote:after {
	bottom: 20px;
}

body blockquote {
	background-color: #ededed;
	margin: 40px auto;
}

body .wp-block-separator {
	border-top-color: #fbcc86;
}
body .wp-block-separator.is-style-wide {
	border-top-color: #76d6d5;
}

/** Button Styles **/
body .wp-block-button a.wp-block-button__link,
.entry-content .gem-button {
	padding: 10px 75px;
	height: auto;
	letter-spacing: 1px;
}
.wp-block-button.is-style-outline a.wp-block-button__link {
	background-color: #fff;
	border: 1px solid #ce4f60;
	color: #ce4f60;
}
.wp-block-button.is-style-outline a.wp-block-button__link:hover {
	background-color: #fff;
	border: 1px solid #e48492;
	color: #e48492;
}
.wp-block-button.is-style-squared a.wp-block-button__link {
	background-color: #51a6a6;
}
.wp-block-button.is-style-squared a.wp-block-button__link:hover {
	background-color: #76d6d5;
}

/** Homepage Styles **/
@media only screen and (max-width: 767px) {
	body .custom-header h1,
	body .custom-header h2,
	body .custom-header h3 {
		line-height: 1.3;
	}
	body .custom-header .custom-header-title span h1,
	body .custom-header .custom-header-title span h2,
	body .custom-header .custom-header-title span h3 {
		font-size: 8vw !important;
	}
	body .custom-header .custom-header-title span p {
		font-size: 1.8rem;
	}
	body .custom-header-title {
		margin: 0 !important;
	}
	body h2, body .title-h2 {
		font-size: 8vw;
		line-height: 1.3;
	}
}

@media only screen and (min-width: 768px) {
	h2.vc_custom_heading {
		font-size: 46px;
	}
}

body .post-footer-sharing {
	display: none;
}
body .blog-style-justified-3x .description .info {
	left: 50%;
	transform: translate(-50%);
}
body .justified-style-1 .post-content-wrapper {
	border: none;
}
body .gem-button-size-tiny {
	height: auto;
}
body .gem-button-container .gem-button-size-tiny {
	padding: 10px 75px;
}
body .blog article .post-featured-content > a:after, 
body .blog .gem-simple-gallery .gem-gallery-item a:after {
	display: none;
}

/** Products Page Styles **/
.portfolio.portfolio-style-justified .portfolio-set .portfolio-item {
	background-color: #ededed;
}
.portfolio.portfolio-style-justified .portfolio-set .portfolio-item:nth-child(2n+2) {
	background-color: #fff;
}
.portfolio.portfolio-style-justified .portfolio-set .portfolio-item .wrap > .caption {
	text-align: right;
}
.portfolio.portfolio-style-justified .portfolio-set .portfolio-item:nth-child(2n+2) .wrap > .caption {
	text-align: left;
}
.portfolio.portfolio-style-justified .portfolio-item .wrap > .caption {
	background: none !important;
	border: none !important;
	padding: 0;
}
.portfolio.portfolio-style-justified .portfolio-item .caption-sizable-content,
.portfolio.portfolio-style-justified .portfolio-item .caption-bottom-line {
	position: relative;
}
.portfolio.portfolio-style-justified .portfolio-item .caption-bottom-line {
	padding: 20px 0 0 0;
}
.portfolio.portfolio-style-justified .portfolio-item .caption-bottom-line .gem-button {
	margin: 0;
}
.portfolio.portfolio-style-justified .portfolio-item .caption-sizable-content:after {
	display: none !important;
}
/* .portfolio.portfolio-style-justified .wrap {
	max-width: 1170px;
	margin: 80px auto 60px;
	align-items: flex-start;
} */
.portfolio.portfolio-style-justified .image-inner {
	background: none;
}
@media only screen and (max-width: 991px) {
	.portfolio.portfolio-style-justified .wrap {
		margin: 0 auto 60px;
	}
	.portfolio.portfolio-style-justified .portfolio-set .portfolio-item {
		padding: 0 !important;
	}
	.portfolio.portfolio-style-justified .portfolio-set .portfolio-item .wrap > .caption {
		text-align: center !important;
		margin-top: 40px;
	}
}
/* Hide meta for single portfolio items */
.single-thegem_pf_item .single-post-meta {
	display: none;
}

/** Resource Page Styles **/
body .blog-style-compact article {
	padding: 0;
	background: none;
}
body .blog-style-compact .gem-compact-item-content {
	position: static !important;
}
body .blog-style-compact .gem-compact-item-content:after {
	display: none;
}
body .blog-style-default .has-post-thumbnail:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border: 0;
}

/** Blog Styles **/
body .gem-pp-posts {
	border-bottom-color: #ededed !important;
}
body.search .page-title-block .highlight {
	color: #51a6a6 !important;
}
body .post-read-more .gem-button,
body  .block-navigation .gem-button,
body .gem-button-style-outline {
	background-color: #ce4f60 !important;
	color: #ffffff !important;
	border: 0;
}
body .post-read-more .gem-button:hover,
body  .block-navigation .gem-button:hover,
body .gem-button-style-outline:hover {
	background-color: #e48492 !important;
	color: #ffffff !important;
}
body .gem-button-size-tiny,
body .gem-button-size-tiny.gem-button-style-outline,
body .gem-button-size-medium,
body .input.gem-button-size-medium {
	padding: 10px 75px;
	height: auto;
	letter-spacing: 1px;
	line-height: 36px;
	font-size: 14px;
}


/** Portfolio Styles **/
body .portfolio.hover-title .portfolio-item .caption .title,
body .portfolio.hover-title .portfolio-item .caption .subtitle {
	color: #ce4f60;
}

/** Search Styles **/
body.search .page-title-block {
	background-color: #ffffff !important;
}
body.search .page-title-block:before {
	display: none !important;
}
body.search .page-title-title > h1 > .highlight,
body.search .page-title-title > h1 > .light {
	font-weight: 300 !important;
	font-family: 'Montserrat', sans-serif;
}
body .page-content.content-none .searchform {
	max-width: 600px;
}
body .page-content.content-none .searchform input::placeholder,
body .page-content.content-none .searchform input {
	color: #5e6263;
	border: 0;
}

/** Partners Styles **/
.partners-section .portfolio.portfolio-style-justified .portfolio-set .portfolio-item {
	background: none;
}
.portfolio .portfolio-filters a {
	border-radius: 3px;
	padding: 10px 35px;
	letter-spacing: 1px;
	color: #ffffff;
	height: auto;
}
.portfolio .portfolio-filters a:hover {
	background-color: #72d6d5;
}
.portfolio .portfolio-filters a .light {
	font-weight: 700 !important;
	font-family: 'Montserrat', sans-serif;
}
.partners-section .portfolio.portfolio-style-justified .portfolio-set .portfolio-item .wrap > .caption {
	text-align: left;
}

@media only screen and (max-width: 768px) {
	body .portfolio-filters-resp {
		display: none;
	}
	body .portfolio-filters {
		font-size: initial;
		display: block;
	}
}

@media only screen and (max-width: 557px) {
	body .portfolio-filters a {
		width: 100%;
	}
}

/** HubSpot Footer Form Styles **/
.custom-footer .hs-form {
	max-width: 400px;
	margin: 0 auto;
}
.custom-footer .hs_email > label {
	position: absolute !important;
	height: 1px; width: 1px;
	overflow: hidden;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
}
.custom-footer .hs_email {
	float: left;
	width: 75%;
}
.custom-footer .hs_submit {
	float: right;
	width: 25%;
}
.custom-footer .hs_submit input[type="submit"] {
	width: 100%;
	margin: 0 !important;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.custom-footer .hs-form input {
	width: 100%;
	font-size: 14px;
	min-height: 40px;
}
.custom-footer .hs_error_rollup {
	display: none !important;
}
.hs-error-msgs {
	padding: 0;
	margin: 0;
}
.hs-error-msgs li:before {
	content: none !important;
}
.hs-error-msgs li label {
	font-size: 14px;
}

/* All HubSpot Forms
   ========================================================================== */

.hs-form {
	max-width: 100%;
}

.hs-form ul,
.hs-form li {
	list-style: none;
	padding: 0;
	margin-left: 0;
}

.hs-form li:before {
	content: none;
	display: none;
}

/* Form Field (selector for form field wrapper) */
.hs-form .hs-form-field {}

/* Descriptions (targets class applied to Help Text divs) */
.hs-form .hs-field-desc {}

/* Labels (selects field labels and error messages) */
.hs-form label {
	font-size: 14px;
	font-weight: 700;
	color: #5e6263;
	font-family: 'Montserrat', sans-serif;
}
.hs-form .hs-form-field > label {}

/* Inputs (selectors for all inputs)  */
.hs-form input[type="text"],
.hs-form input[type="password"], 
.hs-form input[type="datetime"], 
.hs-form input[type="datetime-local"], 
.hs-form input[type="date"], 
.hs-form input[type="month"], 
.hs-form input[type="time"], 
.hs-form input[type="week"], 
.hs-form input[type="number"], 
.hs-form input[type="email"], 
.hs-form input[type="url"], 
.hs-form input[type="search"], 
.hs-form input[type="tel"], 
.hs-form input[type="color"],
.hs-form input[type="file"],
.hs-form textarea,
.hs-form select {
	font-size: 14px;
	background-color: #ededed;
	border: 0;
	border-radius: 0;
	min-height: 40px;
	padding: 7px 10px;
	width: 100%;
	font-weight: 700;
	color: #5e6263;
	font-family: 'Montserrat', sans-serif;
}

/* Inputs in focus (selectors for all inputs when clicked)  */
.hs-form input[type="text"]:focus,
.hs-form input[type="password"]:focus, 
.hs-form input[type="datetime"]:focus, 
.hs-form input[type="datetime-local"]:focus, 
.hs-form input[type="date"]:focus, 
.hs-form input[type="month"]:focus, 
.hs-form input[type="time"]:focus, 
.hs-form input[type="week"]:focus, 
.hs-form input[type="number"]:focus, 
.hs-form input[type="email"]:focus, 
.hs-form input[type="url"]:focus, 
.hs-form input[type="search"]:focus, 
.hs-form input[type="tel"]:focus, 
.hs-form input[type="color"]:focus,
.hs-form input[type="file"]:focus,
.hs-form textarea:focus,
.hs-form select:focus {}

/* Multi-line inputs (selectors to target multi-line fields */
.hs-form textarea {}
.hs-form textarea:focus {}

/* Dropdowns (selectors for dropdowns) */
.hs-form select {
	appearance: none;
	-webkit-appearance: none;
}
.hs-form select:focus {}

.hs-fieldtype-select .input {
	position: relative;
}
.hs-fieldtype-select .input:after {
	content: "\f0d7";
	position: absolute;
	right: 10px;
	top: 50%;
	z-index: 1;
	transform: translateY(-50%);
	pointer-events: none;
	display: inline-block;
	font: normal normal normal 14px/1 evo_FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Multi-select (selectors for multi-select fields) */
.hs-form form.hs-form .hs-form-field ul.inputs-list {}

.hs-form form.hs-form .hs-form-field ul.inputs-list li input {
	transform: translateY(-1px);
}
.hs-form input[type="radio"] {}
.hs-form input[type="checkbox"] {}

.hs-form .hs-form-checkbox label span,
.hs-form .hs-form-radio label span {
	margin-left: 10px;
}

/* Required (selectors for fields, when they do not pass validation) */
.hs-form input:focus:required:invalid, 
.hs-form textarea:focus:required:invalid, 
.hs-form select:focus:required:invalid {}

.hs-form input:focus:required:invalid:focus, 
.hs-form textarea:focus:required:invalid:focus, 
.hs-form select:focus:required:invalid:focus {}

/* Error message (selector for validation messages) */
.hs-form .hs-error-msgs label{}

/* Placeholder Text (styles the placeholder attribute text) */
.hs-form input::placeholder { 
	font-weight: 700;
	color: #5e6263;
	font-family: 'Montserrat', sans-serif;
}
.hs-form input::-webkit-input-placeholder { 
	font-weight: 700;
	color: #5e6263;
	font-family: 'Montserrat', sans-serif;
}
.hs-form input::-moz-placeholder { 
	font-weight: 700;
	color: #5e6263;
	font-family: 'Montserrat', sans-serif;
}

/* Multi Column Form (selectors for fieldsets and field wrappers) 
   ========================================================================== */
.hs-form fieldset {
	max-width: 100% !important;
}
.hs-form fieldset.form-columns-1 {
	margin-bottom: 2rem;
}
.hs-form fieldset.form-columns-1 .hs-form-field {}

.hs-form fieldset.form-columns-2 {
	margin-bottom: 2rem;
}
.hs-form fieldset.form-columns-2 .hs-form-field {}

.hs-form fieldset.form-columns-3 {
	margin-bottom: 2rem;
}
.hs-form fieldset.form-columns-3 .hs-form-field {}

/* Submit buttons (selectors for all non-CTA buttons) 
   ========================================================================== */

body .hs-form .hs-button.primary,
body .hs-form input[type="submit"],
body .hs-form input[type="button"] {
	margin: 25px 0 0 0;
}

/* EventOn custom styles
   ========================================================================== */
.entry-content .evo_search_bar {
	margin-bottom: 20px !important;
	height: 40px;
}
.entry-content .evo_search_bar_in {
	height: 40px;
}
.entry-content .evo_search_bar input, 
.entry-content .evo_search_bar input[type=text] {
	font-family: "Source Sans Pro", sans-serif;
	border-radius: 4px;
	padding: 0 40px 0 10px;
	height: 40px;
	outline: none;
	font-weight: 700;
	font-size: 16px;
	background-color: #5e6263;
	color: #ffffff;
}
.entry-content .evo_search_bar input::placeholder {
	color: #ffffff;
}
.entry-content .evo_search_bar .evosr_search_btn {
	top: 8px;
	height: 50%;
}
.entry-content .evo_search_bar .fa-search {
	font-size: 18px;
}
.site-main .evo_cal_above span {
	padding: 10px 75px;
	height: auto;
	letter-spacing: 1px;
	background-color: #ce4f60;
	color: #fff;
	opacity: 1;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 14px;
}
.site-main .evo_cal_above span:hover {
	background-color: #e48492;
}

