/*
Theme Name:     Jupiter Child Theme
Theme URI: 		http://demos.artbees.net/jupiter5
Description:    Child theme for the Jupiter theme
Author:         Your name here
Theme URI: 		http://themeforest.net/user/artbees
Template:       jupiter
Text Domain: mk_framework
Domain Path: /languages/
*/


/* #############################
	Global Header adjustments
############################# */


/* set avsolute position to turn on transparent header, add 80px of space above header */
.mk-header {
 position: absolute;
 border-bottom: none;
}
.mk-header-holder { top: 80px !important; }

#theme-page .theme-page-wrapper .theme-content{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
#theme-page .theme-page-wrapper {
   margin-top: 0 !important;
   margin-bottom: 0 !important;
}

#mk-page-introduce { display: none; }

/* remove top header space for sticky nav */
.a-sticky .mk-header-holder { top: 0px !important; }

/* add 32px space if logged in to wp admin */
.admin-bar .sticky-style-fixed.header-style-1.a-sticky.toolbar-false .mk-header-holder, .admin-bar .sticky-style-fixed.header-style-3.a-sticky.toolbar-false .mk-header-holder { top: 32px !important; }

/* adjust logo to flow outside nav bar...only for non-mobile */
@media only all and (min-width:1141px) {
	.header-logo a { height: 140px; margin-top: -20px;}
	/*.a-sticky .header-logo a { height: 45px; margin: 5px 0;}*/
	.a-sticky .header-logo a { height: 80px; margin: 10px 0;}
}
@media only all and (max-width:1140px) {
	.header-logo a { height: 70px; margin: 10px 0;}
	/* fix extra space showing up in Safari mobile*/
	.mk-header {
		position: static;
	}
}

/* no margin bottom on home header row */
.page .vc_row.cac-home-slider-section {margin-bottom: 0px;}

@media handheld, only screen and (max-width: 780px) {
	.mk-header-right {
		display: block!important;
	}
}
@media handheld, only screen and (max-width: 780px) {
	.cac-header-social-icons a.cac-social-btn  {
		display: none!important;
	}
}

/* header social icon fixes */
.cac-header-social-icons a {
	display: inline-flex;
	width: 27px;
	height: 27px;
	overflow: hidden;
	text-align: center;
	color: #ffffff;
	background-color: #635e5d;
	border: 1px solid #ffffff;
	margin: 7px 12px 0 0;
	font-size: 14px;
}
.cac-header-social-icons a.cac-mobile-language-btn {
	display: inline;
	padding: 5px 8px 5px 8px;
	margin-right: 0;
	background-color: #ffffff;
	color: #635e5d;
	font-weight: bold;
	font-size: 18px;
}

/* hide mobile language button on full nav widths */
@media only all and (min-width:1141px) {
	.cac-header-social-icons a.cac-mobile-language-btn {
	display: none;
	}
	
	/* donate button for desktop */
	.header-style-1 .menu-hover-style-4 .main-navigation-ul li.donate-link.menu-item { 
		position: absolute;
		top: 100px;
		right: 0;
		padding: 0;
		height: 53px;
		line-height: 50px;
	}
	.header-style-1.a-sticky .menu-hover-style-4 .main-navigation-ul li.donate-link.menu-item { top: 101px; }

	.header-style-1 .menu-hover-style-4 .main-navigation-ul > li.donate-link.menu-item > a { line-height: 50px; height: 53px; color: #ffffff; width: 160px; background: #4fa685; }
	.header-style-1.a-sticky .menu-hover-style-4 .main-navigation-ul > li.donate-link.menu-item > a { line-height: 50px !important; height: 53px !important; color: #ffffff; }
	.header-style-1 .menu-hover-style-4 .main-navigation-ul > li.donate-link.menu-item > a:hover { background: #cbb84b; color: #444444; }
}
/* hide social buttons in awkward screen range where they would overlap nav items */
@media only all and (min-width:1141px) and (max-width:1476px) {
	.cac-header-social-icons a.cac-social-btn {
	display: none;
	}
}



.cac-header-social-icons a i { padding: 7px 8px 8px 8px; margin-right: 100px;}

/*@media only all and (max-width:1500px) {
	.cac-header-social-icons { display: none;}
}*/

/* #############################
	Main menu adjustments
############################# */
.main-navigation-ul[id^='menu-main-navigation'] li.no-mega-menu > ul.sub-menu { top: 130%; left:-50%!important; }
.main-navigation-ul li.no-mega-menu ul.sub-menu ul.sub-menu {
	top: -8px;
	border-left: 2px solid #4fa685;
	border-bottom: 2px solid #4fa685;
	box-shadow: 0 20px 50px 10px rgba(0, 0, 0, 0.15);
}
/* fix menu item going white on white when hovering over 2nd level item */
/*.menu-hover-style-4 .main-navigation-ul li.menu-item:hover > a.menu-item-link {
	color: #645e5d;
}*/
.menu-hover-style-4 .main-navigation-ul > li.menu-item > ul.sub-menu li.menu-item:hover > a.menu-item-link {
	color: #645e5d;
}
@media only all and (min-width:1141px) {
	.cac-icon-nav a { width: 43px; overflow: hidden; }
	.cac-icon-nav a svg { margin-top: -4px; }
}

/* #############################
	Mobile menu adjustments
############################# */

.mk-nav-arrow.mk-nav-sub-opened .mk-svg-icon {
	transform: rotate(90deg);
	transition:  0.4s ease;
}
.mk-nav-arrow.mk-nav-sub-closed .mk-svg-icon {
	transition:  0.4s ease;
}


/* #############################
	Footer styles
############################# */

/* set background image for footer */
#mk-footer { background-image: url(images/cac-footer-bg.png); background-size: cover;}

/* make 3rd column widget area in footer drop to new row */
#mk-footer div.mk-col-1-3:nth-child(3) { clear: left; width: 100%;}
#mk-footer div.mk-col-1-3:nth-child(3) section { float: left; margin-bottom: 0;}

/* style footer nav */
#mk-footer ul[id^='menu-footer-navigation'] li { float: left;}
#mk-footer ul[id^='menu-footer-navigation'] li > a > svg { display: none;}
#mk-footer ul[id^='menu-footer-navigation'] > a { padding: 5px 20px 5px 0; text-transform: uppercase;}
.cac-footer-social-icons a {
	display: block;
	float: left;
	width: 27px;
	height: 27px;
	overflow: hidden;
	text-align: center;
	color: #ffffff;
	background-color: #635e5d;
	border: 1px solid #ffffff;
	margin: 7px 12px 0 0;
}

/* #############################
	Footer login widget
############################# */

.cac_login_widget .widgettitle {margin-bottom: 0;}
#cac-login-widget-form {
	background-color: #ffffff;
}
#cac-login-widget-form .row { position: relative;}
#cac-login-widget-form label {
	position: absolute;
	left: -999px;
}
#cac-login-widget-form input[type=text], #cac-login-widget-form input[type=password] {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0 60px;
	font-size: 18px;
	border: 0;
	line-height: 67px;
	box-sizing: border-box;
	color: #635e5d;
}


#cac-login-widget-form input[type=submit] {
	width: 100%;
	font-size: 18px;
	background-color: rgb(99, 94, 93);
    border: 0;
    line-height: 60px;
	color: #ffffff;
}
#cac-login-widget-form input[type=submit]:hover {
	background-color: rgba(99, 94, 93, 0.8);
}

.cac-login-icon {
	position: absolute;
	color: #635e5d;
	left: 24px;
    top: 22px;
    font-size: 24px;
}

/* hide login footer if already logged in */
.logged-in .cac_login_widget {
	display: none;
}

/* #############################
	Footer join CTA widget
############################# */
.cac_join_cta_widget .widgettitle {margin-bottom: 0;}

.cac_join_cta_widget_wrapper {
	background-color: #ffffff;
	padding: 24px 0 0 0;
	min-height: 172px;
	position: relative;
}

@media (max-width:410px) {
	body.fr .cac_join_cta_widget_wrapper {
		min-height: 250px;
	}
	body.en .cac_join_cta_widget_wrapper {
		min-height: 200px;
	}
}

.cac_join_cta_widget_wrapper h3 {
	color: #635e5d !important;
	font-size: 18px;
	font-weight: bold;
    margin: 0 32px 8px 32px;
}
.cac_join_cta_widget_wrapper p {
	color: #635e5d !important;
	font-size: 18px;
	margin: 0 32px;
}
.cac_join_cta_widget_wrapper a {
	position: absolute;
    width: 100%;
    bottom: 0px;

	color: #000000 !important;
	font-size: 18px;
	line-height: 60px;
	text-align: center;
	background-color: rgb(79, 165, 132);
}
.cac_join_cta_widget_wrapper a:hover {
	background-color: rgba(79, 165, 132, .8);
}

/* hide footer join if logged in member */
.logged-in .cac_join_cta_widget { display: none;}

/* #############################
	3 home buttons
############################# */

/* negative margin on home 3 buttons to bring them up over the slider */
.page .vc_row.cac-home-buttons-row {margin-top: -94px; padding: 0 60px; z-index: 99;}

.page .vc_row.cac-home-buttons-row .mk-button--size-xx-large { padding: 38px 20px; margin-bottom: 20px;}

@media (max-width:1080px) {
	.page .vc_row.cac-home-buttons-row {margin-top: -88px; padding: 0;}
	.page .vc_row.cac-home-buttons-row .mk-button--size-xx-large { font-size: 12px;}
}

@media (max-width:767px) {
	.page .vc_row.cac-home-buttons-row {margin-top: 15px; padding: 0;}
	.page .vc_row.cac-home-buttons-row .mk-button--size-xx-large { font-size: 18px;}
}

/* #############################
	Home alternating feature boxes
############################# */
.cac-home-feature-box-text { padding: 120px 200px;}

@media (max-width:1300px) {
	.cac-home-feature-box-text { padding: 120px 120px;}
}
@media (max-width:1100px) {
	.cac-home-feature-box-text { padding: 60px 60px;}
}

/* #############################
	Home Slider Styles
############################# */


/* #############################
	Single Page header
############################# */



/* #############################
	General styles
############################# */
.master-holder h1, .master-holder h2 { letter-spacing: 1px; /*margin-bottom: 32px;*/ }
.master-holder h4 { font-weight: 700;}

.mk-text-block a > strong { color: #4fa685; }

/* bottom padding on all rows */
.page .vc_row {margin-bottom: 28px;}
.page.home .vc_row {margin-bottom: 0;}

/* give ordered lists some breather room */
.mk-text-block ol > li { margin-bottom:20px; padding-left: 10px; }

/* give H3 icons a gold color */
.mk-text-block h3 > i {color: #cab74c;}

/* #############################
	CAC Button styles
############################# */

.cac-button {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 300px;
	padding: 0 50px;
}
.cac-button:hover { opacity: 0.8;}

/* #############################
	employee grid styles
############################# */
.team-member-name { font-size: 14px; }
.team-member-position { font-size: 10px; font-style: italic;}

/* #############################
	award winner styles
############################# */
.award-winner-photo {
	float: left;
	margin-right: 25px;
}
.award-winner-photo-wrapper {
	text-align: center;
}

.single-award_winners h1 { margin-bottom: 40px;}
@media (max-width:540px) {
	.award-winner-photo {
		float: none;
		margin-bottom: 25px;
	}
}

.awards-grid .awards-grid-text { font-size: 14px; }
.awards-grid .vc_gitem-zone { max-height: 320px;}
.awards-grid .vc_gitem_row { margin-bottom: 0;}
/*.awards-grid .awards-grid-img img { max-width: 300px; }*/

/* #############################
	WooCommerce styles
############################# */

.woocommerce-checkout #account_password_field label { float: left;}
.woocommerce-checkout .create-account label { float: left; }

.single-product .single_variation_wrap > .woocommerce-variation + .wc-pao-addon {
	display: inline-block;
}
.single-product .wc-pao-addon > .wc-pao-addon-name {
	font-weight: 700;
}
.single-product .wc-pao-addon-custom-price {
	padding: 10px;
	border: 1px solid #4fa685;
}
.single-product .wc-pao-col2 > .amount {
	font-weight: 700;
}

/* Force error message below header nav on member-portal page when not logged in or do not have a membership */
@media (min-width: 1141px) {
	.woocommerce .wc-memberships-restriction-message {
		margin-top: 250px !important;
	}
}
/* #############################
	WooCommerce My Account Login styles
############################# */

.woocommerce-account .woocommerce { max-width: 600px; margin: 0 auto; }
.woocommerce-account .woocommerce h2 { display: none;}
.woocommerce-account .woocommerce .login-submit, .woocommerce-account .woocommerce .login-remember { text-align: center; }

.woocommerce-account.logged-in .woocommerce { max-width: none; margin: 0; }
.woocommerce-account.logged-in .woocommerce h2 { display: block;}

/* #############################
	Membership pages styles
############################# */
#mk-pricing-table-23.new-style .pricing-cols .pricing-features ul li { font-size: 16px !important;}

/* #############################
	Gravity Forms styles
############################# */
.gfield_select {border: 1px solid #e3e3e3; background-color: #fdfdfd; padding: 5px 4px !important;}

/* #############################
	Member Profile styles
############################# */

.wppb-heading h4.extra_field_heading { margin-top: 40px;}
ul .wppb-heading:first-child h4.extra_field_heading { margin-top: 0px;}

.woocommerce-checkout .woocommerce-account-fields h4 { margin-top: 40px;}
.woocommerce-checkout #cac_profile_heading_field { margin-top: 60px;}
.woocommerce-checkout #cac_specializations_heading_field {margin-top: 30px;}

/*.woocommerce-checkout p.form-row[id^='cac_spec_'] label { display: inline;}
.woocommerce-checkout p.form-row[id^='cac_spec_'] > span.select2 {
	width: 250px !important;
    margin-left: 25px;
}*/

.woocommerce-checkout p.form-row[id^='cac_spec_'] .select2-container--default .select2-selection--single .select2-selection__placeholder { color: #fff;}

/*ul[id^='menu-footer-navigation']
    width: 250px;
    margin-left: 25px;*/

/*.woocommerce-checkout .woocommerce-account-fields p#29_field .description { display: none !important;}*/


/*.woocommerce-MyAccount-navigation-link.is-active a:before { content: "--"; padding-right: 5px; }
.woocommerce-MyAccount-navigation-link.is-active a:after { content: "--"; padding-left: 5px; }
.woocommerce-MyAccount-navigation-link.is-active a { padding-left: 5px;}*/


.woocommerce-MyAccount-navigation-link.is-active { background-color: #4fa685; }
.woocommerce-MyAccount-navigation-link.is-active a { color: #ffffff; }

/* #############################
	Member Portal styles
############################# */

/*login form errors localization */
body.fr .cac-error-en { display: none;}
body.en .cac-error-fr { display: none;}

/* menu portal sub-nav */
/*.menu-member-portal-container, .menu-member-portal-fr-container { margin: 0 0 30px 0;}*/
ul[id^='menu-member-portal'].menu { border: none; text-align: center; }
ul[id^='menu-member-portal'] li { display: inline; border: none;}
ul[id^='menu-member-portal'] li.current-menu-item a {
	background-color: #4fa685;
	color: #ffffff;
}
ul[id^='menu-member-portal'] li a { font-size: 15px;}
ul[id^='menu-member-portal'] li a:hover {
	text-decoration: underline;
}

.dlm-downloads { list-style: none; margin-left: 0;}
.dlm-downloads > li { margin-left: 0;}
.cac-download-citation { font-style: italic; font-size: 14px;}

/* my account mobile fixes */
@media (max-width:800px) {
	.woocommerce-MyAccount-navigation {
		float: none;
		width: inherit;
		margin-bottom: 40px;
		font-size: 15px;
	}
	.woocommerce-MyAccount-navigation > ul {
		border:none;
		text-align: center;
	}
	.woocommerce-MyAccount-navigation li {
		display: inline-block;
		border-bottom: none!important;
	}
	.woocommerce-MyAccount-navigation li.is-active {
		font-weight: 700;
	}
	.woocommerce-MyAccount-content {
		float: none;
		width: inherit;
	}
}

/* registration form */
.wppb-send-credentials-checkbox {display: none;}

/* #############################
	Member Directory styles
############################# */
.cac-member-directory-table td {font-size: 14px;}
ul.cac-member-directory-profile > li > span {
	width: 100%;
	margin-bottom: 30px;
}



/* ##############################################
	Publications custom post type grid/archive
################################################## */
.tax-publication {
	max-width: 1200px;
	margin: 200px auto 20px;
	padding: 0 15px;
}
.tax-publication > div.journal-title {
	padding: 20px;
	border-bottom: 4px solid #CDB747;
	margin: 2em 0 2em;
}
div.journal-title h1 {
	font-size: 31px;
	margin-bottom: 0px;
	letter-spacing: 1px;
}
div.journal-title h1 .text-together {
	white-space: nowrap;
}
.article > h3.volume {
	font-size: 18px;
}
h4.article-title {
	font-weight: 700;
	margin-bottom: 0;
}
.tax-publication .contain-flex {
	display: flex;
}
.tax-publication .contain-flex > #content {
	width: 75%;
	padding: 0 20px;
}
.tax-publication .contain-flex > aside {
	width: 25%;
	padding: 20px;
}
aside.tag-search ul {
	margin: 0;
}
aside.tag-search ul li{
	list-style: none;
	cursor: pointer;
	margin-bottom: 10px;
}
aside.tag-search ul li a {
	color: #222222;
	padding: 5px;
	border-radius: 5px;
	border: 1px solid #4fa685;
}
aside.tag-search ul li a:hover,
aside.tag-search ul li a.active,
aside.tag-search .menu-journal-container li.current-menu-item a,
aside.tag-search .menu-journal-fr-container li.current-menu-item a
 {
	background-color: #4fa685;
	color: #ffffff;
}
aside.tag-search .journals {
	margin-bottom: 20px;
}
aside.tag-search.cac-sticky {
	position: fixed;
	top: 100px;
	right: 0;
	left: 0;
	width:320px;
}
.tax-publication .article {
	border-top: solid 4px #4fa685;
	padding: 20px 0;
}
.tax-publication .article:first-child {
	border-top: none;
}
.tax-publication .article a.doc-link, .tax-publication .article a.doc-link:hover {
	cursor: pointer !important;
}
/* Read more/ Read less */
.abstract .morecontent, .abstract .toggle {
	display: none;
}
.abstract .morelink {
	display: block;
	margin-bottom: 1em;
	margin-top: -20px;
	cursor: pointer;
}


@media all and (max-width: 767px){
	.tax-publication {
		margin-top: 0px;
	}
	.tax-publication > div.journal-title {
		margin: 0;
	}
	.tax-publication .contain-flex {
		flex-flow: column-reverse wrap;
	}
	.tax-publication .contain-flex > * {
		box-sizing: border-box;
	}
	.tax-publication .contain-flex > #content {
		width: 100%;
	}
	.tax-publication .contain-flex > aside{
		width: 100%;
		border-bottom: 4px solid #CDB747;
		margin-bottom: 2em;
	}
	.tag-search ul {
		display: flex;
		flex-flow: row wrap;
	}
}
@media all and (min-width: 768px) and (max-width: 1140px){
	.tax-publication {
		margin-top: 20px;
	}
	.tax-publication > div.journal-title {
		margin: 0 0 2em;
	}
	.tax-publication .contain-flex > #content {
		width: 70%;
	}
	.tax-publication .contain-flex > aside {
		width: 30%;
		padding: 20px;
	}

}

/* ##############################################
	Publications custom post type single page
################################################## */
#single-publication {
	max-width: 800px;
	margin: 200px auto;
	padding: 0 30px;
}
@media all and (max-width: 1140px){
	#single-publication {
		margin-top: 100px;
	}

}

/* ##############################################
	Image Caption
################################################## */

/* Override default image caption title to match custom image caption style throughout site*/
.mk-image.inside-image .mk-image-caption {
	padding: 5px;
}
.cac-image-caption, .cac-image-caption-250 {
	position: absolute;
  bottom: 0;
  left: 0;
  margin: 10px;
  padding: 5px;
  background-color: rgba(0,0,0,.4);
  color: #fff;
  border-radius: 4px;
}
.cac-image-caption > p, .cac-image-caption-250 > p, .mk-image.inside-image .mk-image-caption .mk-caption-title{
	color: #fff;
	margin: 0;
	font-weight: 400;
	font-size: 12px;
	line-height: 18px;
}

/* Adjust image caption for images set as background image with 250px padding top and bottom */
.cac-image-caption-250 {
	bottom: -250px;
}

/**
 * Following media query is applied to homepage slider images
 * to position the image caption for slides, but this exact same CSS style is also
 * added to the inline CSS for the Slider Revolution Slider CSS option panel.
 * Simply having styles in stylesheet had styles overritten by slider styles,
 * but keeping styles here for clarity and documentation
*/
@media (min-width: 768px) {
	.cac-slider-image-caption {
		left: 10px !important;
		top: 10px !important;
	}
}

div.cac-page-header-image-section > div.page-section-content.vc_row-fluid.mk-grid {
	height: 500px;
	width: 100%;
	max-width: 100%;
}

#theme-page .theme-page-wrapper.left-layout #mk-sidebar, #theme-page .theme-page-wrapper.left-layout.page-section-content #mk-sidebar {
	padding-top: 570px;
}
