/*
Theme Name:   HarpColumnMagazine2021
Description:  Write here a brief description about your child-theme
Author:       kimharp
Author URL:   Write here the author's blog or website url
Template:     Divi
Version:      1.0.1
Text Domain:  HarpColumnMagazine2021
*/

/* 
_____________
Bug fixes
_____________

*/




/* Change Gutenberg button text color using Divi layout */

.et_pb_post_content_0_tb_body.et_pb_post_content a.has-white-color {
	color: #fff !important;
	}


/* 
_____________
Plugin fixes
_____________

*/

/* Fix Divi Machine ACF Item module not displaying content correctly */

body .dmach-acf-item-container .dmach-acf-item-content {
	display: block;
}

/* fix width issue with Kadence masonry gallery type*/

.wp-block-kadence-advancedgallery .kb-gallery-ul.kb-gallery-type-masonry {
	padding-left: 0 !important;
}

.eventnews article {
	margin-bottom: 15px;
}

/* 
_____________
Temporary fixes
_____________

*/



/* style text on practice challenge page.*/

.day-heading {
	color: #d2d2d2;
	font-size: 50px;
}

.challenge-sub-heading {
	color: #878787;
	font-size: 24px;
	margin-top: 50px;
}

.challenge-text cite {
	color: #cd0076;
	font-weight:  600;
	text-transform: uppercase;
	line-height: 2em;
}

.challenge-button .et_pb_post_content_0_tb_body.et_pb_post_content a {
	color: #fff !important;
}

.harp-icon:before {
	content: url('https://harpcolumn.com/wp-content/uploads/2021/12/Harp-Pictogram.png');
}

.harp-icon:before {
	display: flex;
}

/* 
_____________
30 Day Practice Challenge PAGE (2022)
_____________

*/



.challenge-text blockquote
 {
	background: #F7F7F7;
	padding: 25px 35px;
	border-radius: 10px;
}

.challenge-text blockquote
 {
	position: relative;
}

.challenge-text
blockquote:before {
	content: '“';
	position: absolute;
	font-family: source serif;
	font-size: 6em;
	color: #D2D2D2;
	top: .10em;
	left: .1em;
}

.challenge-text
blockquote:after {
	content: '”';
	position: absolute;
	font-family: source-serif;
	font-size: 6em;
	bottom: -0.40em;
	right: 0.15em;
	color: #D2D2D2;
}

.challenge-text  h4 {
	padding-top: 10px;
}


/* 
_____________
Footer
_____________

*/

/* 
_____________
Header 
_____________

*/

/* Add "practical news" after element *
.header-text:after {
	content: "practical news for practical harpists";
	font-size: 10px;
	color: #4c4c4c;
	font-style: italic;
}*/

/* HC, HCM, and HCA image icons */

/* These are no longer used */

/* .hc-banner-nav {
	height: 40px !important;
	margin: 0 30px -7px 0;
	padding: 5px 10px 5px 10px;
}

.hc-banner-nav {
	display: inline-block;
	vertical-align: middle;
}
*/
	
.hc-banner {		       
	height: 40px !important;
	margin: 0 30px -7px 0;
	padding: 5px 10px 5px 10px;
}
.hc-selected {
	background-color: #f2f2f2;
}

/* PMPro login details in header */


/* align shopping cart and PMPro widget */

.cart-menu {
	display: flex;
	justify-content: flex-end;
}

/* style new search field in header*/
input#searchsubmit {
	display: none;
}

input#s {
	border: 1px solid #e7e7e7;
	border-radius: 3px;
	background: #FAFAFA;
}

.header-search:before {
	content: "\55";
	padding-right: 5px;
	padding-top: 15px;
	font-family: 'ETmodules';
	color: #606060;
}

.header-search {
	display: flex;
	justify-content: flex-end;
}


/* style mobile menu in header*/

.header-mobile .et_mobile_menu {
	border-top:none;
	width: 100vw;
	left: -70vw;
}

.header-mobile .et_mobile_menu li a {
	border-bottom:none;
}

.header-mobile .opened .mobile_menu_bar:before {
	content:'\4d';
}

.header-mobile .et_mobile_menu .menu-item-has-children > a {
	background:none;
	font-weight: 500;
}

li.subscribe-button a {
	background:#cd0076;
	color:#fff !important;
	display:inline-block !important;
	margin-left:5%;
	margin-top:10px;
	text-transform: uppercase;
	font-weight:700;
	letter-spacing: 1px;
	border-radius:4px;
}

li.challenge-menu-button a {
	background:#cdb200;
	color:#fff;
	display:inline-block;
	margin-left:5%;
	margin-top:10px;
	text-transform: uppercase;
	font-weight:700;
	letter-spacing: 1px;
	border-radius:4px;
}



/* remove right border on search widget

.et_pb_module.et_pb_sidebar_0_tb_header.et_pb_widget_area.clearfix.et_pb_widget_area_left.et_pb_bg_layout_light {
	border-right:  none;
}

.et_pb_module.et_pb_sidebar_0_tb_header.menu-search.et_pb_widget_area.clearfix.et_pb_widget_area_left.et_pb_bg_layout_light {
	border-right:  none !important;
}

/* style search widget
.advgb-search-bar-wrapper.is-style-classic .advgb-search-bar-inner .advgb-search-bar {
	border: none !important;
} 

.advgb-search-bar-wrapper .advgb-search-bar-inner .advgb-search-bar input.advgb-search-bar-input {
	border: none;
	outline: none;
	box-shadow: none;
	width: 60% !important;
	padding: 0 5px;
	margin: 0;
	background-color: #f7f7f7 !important;
	color: inherit;
}
*/

/* align hamburger menu, Harp Column main header, text, and PMPro shortcode in main menu columns */

.hc-menu {
margin: auto;
}


/* Make menus vertical in mega menu */

.vertical-menu .et_pb_menu_inner_container,
.vertical-menu .et_pb_menu__wrap,
.vertical-menu .et_pb_menu__menu,
.vertical-menu.et_pb_menu .et_pb_menu__menu>nav,
.vertical-menu.et_pb_menu .et_pb_menu__menu>nav>ul {
	display: block;
}

.vertical-menu .et_mobile_nav_menu {
	display: none;
}

/* Vertical menu hover effect */

.vertical-menu a:before {
	content: '';
	background: #07A8B6;
	display: block;
	position: absolute;
	width: 10px;
	height: 2px;
	top: .6em;
	left: -20px;
	opacity: 0;
	transition: all .3s ease-in-out;
}

.vertical-menu a:hover:before {
	left: -10px;
	opacity: 1;
}

.vertical-menu a:hover {
	padding-left: 5px;
}

.magazine-menu a:before {
	content: '';
	background: #cd0076;
	display: block;
	position: absolute;
	width: 10px;
	height: 2px;
	top: .6em;
	left: -20px;
	opacity: 0;
	transition: all .3s ease-in-out;
}

.magazine-menu a:hover:before {
	left: -10px;
	opacity: 1;
}

.magazine-menu a:hover {
	padding-left: 5px;
}

/* "all news" CTA butoon in mega menu*/


/*mobile menu styling*/


/* 
_____________
Mobile
_____________

*/

/* 
_____________
General text
_____________

*/


/*display content inline or flex*/

.inline-text {
	display: inline-block;
}

.flex-column {
	display: flex;
}

/*separator between categories (not working)*/
.first-cat:before {
	display: inline-block;
	width: 2px;
	height: 12px;
	content: '';
	position: absolute;
	background: #E7e7e7;
	right: -11px;
	top: 11px;
	border-radius: 4px;
}

/*news post image caption (works with  code snippet) */
.news-image-caption {
	font-style: italic;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5em;
	color: #6f6f6f;
}

/*news post image caption for news update posts with acf gallery */

.acf-caption {
	font-style: italic!important;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5em;
	color: #6f6f6f;
}

/*event post caption for MEC events*/

.mec-featured-image-caption {
	font-style: italic;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5em;
	color: #6f6f6f;
	background: #f7f7f7;
	display: inherit;
	padding: 10px 20px 10px 20px;
}

/*article post featured image caption (works with featured image code snippet)*/
.article-image-caption {
	font-style: italic;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5em;
	color: #6f6f6f;
	}


/* regular image caption (not featured image) for old posts and articles using default editor*/

.wp-caption {
	background: none;
	text-align: left;
	border: none;
	margin: 25px;
}

.wp-caption p.wp-caption-text {
	font-family: montserrat;
font-weight: 500;
font-size: 14px;
line-height: 1.8em;
color: #878787;
	}
	
/* Gutenberg gallery caption-old	
figcaption.blocks-gallery-caption {
	font-family: 'Montserrat';
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8em;
	color:  #878787;
	padding-left: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
}

*/

/*Gutenberg gallery caption larger with background*/
figcaption.blocks-gallery-caption {
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 2em;
	color: #878787;
	background: #f7f7f7;
	padding: 20px;
}

/* Add margins to Gutenberg inline images in articles*/

.article-text .wp-block-image.alignleft {
	margin: 0 30px 20px 0;
	}
	.article-text .wp-block-image.alignleft figcaption {
	text-align:left;
	}
	
.article-text .wp-block-image.alignright {
	margin-left: 20px;
	}
	
/*Add margins to Gutenberg inline images in news posts */

.news-post-content .wp-block-image.alignright {
	margin-left: 20px;
}

.news-post-content .wp-block-image.alignleft {
	margin-right: 20px;
}

/* Gutenberg gallery single image caption*/	

figcaption.blocks-gallery-item__caption {
	font-family: 'Montserrat';
	line-height: 1.8em;
	text-align: left !important;
	padding-left: 1em !important;
}

/* remove space between gallery and gallery caption*/	
ul.blocks-gallery-grid {
	padding-bottom: 0px;
}
	
/*regular image caption (not featured image) for articles using Gutenberg editor */

.article-text .wp-block-image figcaption {
	font-family: montserrat;
font-weight: 500;
font-size: 14px;
line-height: 1.8em;
color: #878787;
margin-top: 10px;
	}
	
/*Kadence block gallery caption*/
.slbCaption {
	line-height: 2em;
	padding-top: 20px;
}

/*Style Headshot + Quote reusable Gutenberg block*/

.image-quote {
	width: 30%;
	float: right;
	margin-left: 25px;
}

.image-quote blockquote {
	padding: 20px!important;
}

@media all and (max-width: 705px) {
	.image-quote {
		width: 50%;
		float: right;
		margin-left: 25px;
	}
	}

@media all and (max-width: 910px) {
.image-quote blockquote {
	font-size: 14px!important;
}	
} 

@media all and (max-width: 426px) {
	.image-quote blockquote {
		font-size: 12px!important;
		padding: 15px!important;
	}	
	} 
	
.image-quote cite {
	text-transform: uppercase;
}

.image-quote .wp-block-image {
	box-shadow: 0 3px 10px rgb(0 0 0 / 0.2);
}

/* Style Headshot + text reusable Gutenberg block */

.image-text {
	width: 30%;
	float: right;
	margin-left: 25px;
}

.image-text {
	padding: 20px!important;
}

@media all and (max-width: 705px) {
	.image-text {
		width: 50%;
		float: right;
		margin-left: 25px;
	}
	}

@media all and (max-width: 910px) {
.image-text p {
	font-size: 14px!important;
}	
} 

@media all and (max-width: 426px) {
	.image-text p {
		font-size: 12px!important;
		padding: 15px!important;
	}	
	} 

.image-quote .wp-block-image {
	box-shadow: 0 3px 10px rgb(0 0 0 / 0.2);
} 

/*display text in right inset sidebar (for captions and pull quotes, ect.)*/

@media all and (min-width: 1200px) {
	.third-right {
		width: 30%;
		float: right;
		margin-left: 25px;
	}
}

@media all and (min-width: 1200px) {
	.half-right {
		width: 50%;
		float: right;
		margin-left: 25px;
	}
}

/*grey background sans serif*/

.text-1 {
	font-family: montserrat;
	font-size: 16px;
	line-height: 1.3em;
	color: #4c4c4c;
	background: #f7f7f7;
	padding: 15px !important;
	margin-top: 15px;
	margin-bottom: 15px;
}


/*dark pink border four sides, sans serif*/

.text-2 {
	border: solid 4px #990059;
	padding: 15px;
	font-family: montserrat;
	font-size: 16px;
	margin-top: 10px;
	margin-bottom: 10px;
	}
/*dark pink heavy border top and bottom, sans serif*/

.text-3 {
border-top: solid 8px #990059;
border-bottom: solid 8px #990059;
padding: 15px;
font-family: montserrat;
font-size: 16px;
margin-top: 10px;
margin-bottom: 10px;
}

/*Montserrat regular text 20px*/
.text-4 {
	font-family: montserrat;
	font-size: 20px;
}

/*Montserrat regular text 16px with padding (add a background color in Gutenberg editor)*/
.text-5 {
	font-family: montserrat;
	font-size: 16px;
	line-height: 1.3em;
	color: #4c4c4c;
	padding: 15px !important;
	margin-top: 10px;
	margin-bottom: 15px;
}

/*Montserrat regular text 16px without padding (add a background color in Gutenberg editor)*/
.text-6 {
	font-family: montserrat;
	font-size: 16px;
	line-height: 1.3em;
	color: #4c4c4c;
}

/*Montserrat regular text 16px with no left/right padding (add a top and bottom border color in Gutenberg editor)*/
.text-6 {
	font-family: montserrat;
	font-size: 16px;
	line-height: 1.3em;
	padding-top: 15px;
	padding-bottom: 15px;
	color: #4c4c4c;
	margin-top: 10px;
	margin-bottom: 15px;
}
	
/*grey background sans serif; same as text-1 but smaller font size; use for editor's notes*/

.text-7 {
	font-family: montserrat;
	font-size: 14px;
	line-height: 1.3em;
	color: #4c4c4c;
	background: #f7f7f7;
	padding: 15px !important;
	margin-top: 15px;
	margin-bottom: 15px;

}

/*Brush Script MT font for h4 heading*/
.text-8 h4 {
	font-family: "Brush Script MT";
	font-size: 20px!important;
	line-height: 1.2em!important;
}


/* add a box shadow to an item */

.item-shadow {
	box-shadow: 0 3px 10px rgb(0 0 0 / 0.2);
}

/* add a border shadow to an item */

.item-border {
	border: solid 1px, #e7e7e7;
	border-radius: 3px;
}




/* Quotes*/

.quote {
	padding: 25px 35px;
}

.quote {
	position: relative;
}

.quote:before {
	content: '“';
	position: absolute;
	font-family: source serif;
	font-size: 6em;
	color: #D2D2D2;
	top: .1em;
	left: .1em;
}

.quote:after {
	content: '”';
	position: absolute;
	font-family: source-serif;
	font-size: 6em;
	bottom: -0.40em;
	right: 0.15em;
	color: #D2D2D2;
}

/* Style numbered list in articles*/

.list-1 {
	margin-left: 1.5em;
}

.list-1 li {
	padding-bottom: 1em;
}

/* Article drop-cap (manually assign to paragraph in Gutenberg */
	
.article-dc:first-letter {
	font-family: source-serif-pro;
	float: left;
	color: #cd0076;
	font-size: 7rem;
	line-height: 0.65;
	margin: 0.1em 0.1em 0 0;
} 

.article-dc-2:first-letter {
	font-family: montserrat;
	float: left;
	color: #cd0076;
	font-size: 5rem;
	line-height: 0.65;
	margin: 0.1em 0.1em 0 0;
} 

/*style Gutengerg buttons*/

/* Align icon with title in email blurb*/

.email-icon-position span.et-waypoint.et_pb_animation_off.et_pb_animation_off_tablet.et_pb_animation_off_phone.et-pb-icon.et-animated {
	position: relative;
	top: -7px;
}

/* Break long urls that overflow the container */

.break-url {
	word-wrap: break-word;
}

/* 
_____________
Home page
_____________

*/
/*align sidebar ad to top of column*/
.sidebar-ad p {
	padding-bottom: 0px!important
}

/*homepage magazine grid on mobile*/

@media all and (max-width: 981px) {
.mag-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.mag1 {
	grid-column:1/3;
}

.mag2 {
	grid-column:1/2;
	grid-row:2/4;
}

.mag3 {
	grid-column:2/3;
	grid-row:2/3;
	margin-bottom: 0px!important;
}

.mag4 {
	grid-column:2/3;
	grid-row:3/4
}

}

/*remove grid gap on homepage magazine grid*/

.mag3 .grid-posts.loop-grid {
	grid-gap: 0;
	}


/*align classifieds listing type and price on homepage*/

.classifieds-home {
	display: inline-block;
	align-items: baseline;
}

/*remove bottom border on last item in loop for left featured posts at top of homepage*/

.featured-2-border .et_pb_with_border.et_pb_row.pac_drh_phone_col_one.pac_drh_tab_col_one.pac_drh_stack_row.pac_drh_stack_tab_mob.et_pb_dmach_row_13 {
	border-bottom: none;
	}

/*remove right border on forum topics*/

.et_pb_module.et_pb_sidebar_0.et_pb_widget_area.clearfix.et_pb_widget_area_left.et_pb_bg_layout_light {
	border-right: 0px;
}

/*style homepage forum topics text*/
.et_pb_widget_area ul {
	font-size: 14px;
	line-height: 1em;
}
#bbp_topics_widget-6 .et_pb_bg_layout_light .et_pb_widget li a {
	color: #4c4c4c;
}

#bbp_topics_widget-6 h4.widgettitle {
	color:  #444444;
	font-weight: 600;
	font-size: 18px;
}


/*remove bottom border on last podcast in loop*/

.podcast-loop .et_pb_with_border.et_pb_.et_pb_dmach__11.et__regular {
	border-bottom: none;
}

/*show podcast loop in two columns on mobile

@media all and (max-width: 981px) {
	.two-column-mobile {
	columns: 2;
	}
	
	
@media all and (max-width: 981px) {
	.pod-grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 15px;
	}
	
	.pod1 {
		grid-column:1/3;
	}
	
	.pod2 {
		grid-column:1/2;
	}
	
	.pod3 {
		grid-column:2/3;
	}
}

*/	

/*style event list on home page*/

h4.mec-event-title {
	font-weight: 500!important;
}


/* 
_____________
Search results, category, and archive pages
_____________

*/

/*Make Divi blog module images the same ratio as featured images in news post archive layouts*/
.image-ratio .entry-featured-image-url {
  padding-top: 47%;
  display: block;
}
.image-ratio .entry-featured-image-url img {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
}

/*remove podcast player from sidebar loop*/

.podcast-sidebar .powerpress_player {
	display: none;
}

/* style wp-pagenavi pagination on blog module*/

/*style the wp-pagenavi pagination links*/

.wp-pagenavi a,
.wp-pagenavi span {
	color: #606060;
	background: #f7f7f7;
	font-size: 1em !important;
	line-height: 1em;
	font-weight: bold !important;
	padding: 0.45em 0.8em !important;
	border-radius: 10%;
	transition: all .5s;
}

/*style the Divi Machine archive loop pagination*/

span.page-numbers.current {
	color: #fff !important;
	background:  #07A8B6 !important;
	border-radius:  10%;
	border: none !important;
	font-size: 1em;
	font-weight: bold !important;
}

a.page-numbers {
	background: #f7f7f7;
	color: #6f6f6f;
	font-weight: bold!important;
	font-size: 1em;
	border-radius: 10%;
}

.page-numbers a:hover {
color: #ffffff!important;
background: #07A8B6!important;	
}

.divi-filter-pagination ul.page-numbers li a, .divi-filter-pagination ul.page-numbers li span {
	margin: 10px !important;
}

.page-numbers li {
	border: none !important;
}

/*style the wp-pagenavi current page number*/

.wp-pagenavi span.current {
	color: #ffffff !important;
	background: #07A8B6 !important;
	border-radius: 10%;
}


/*style the wp-pagenavi pagination links on hover*/

.wp-pagenavi a:hover {
	color: #ffffff!important;
	background: #07A8B6!important;
}


/*style the wp-pagenavi pages text*/

.wp-pagenavi .pages {
	background: none;
	color: #606060;
}


/*remove border and add padding the wp-pagenavi links*/

.wp-pagenavi {
	padding-top: 50px;
	border-top: none;
}

/*search results category*/

.search-blog .post-meta a {
	color: #07A8B6 !important;
	text-transform: uppercase;
	font-weight: 600;
}

.writer-1-cat:before {
	content:'—by';
	padding-right: 5px;
	font-size: 18px;
	font-family: source-serif-pro;
	font-style: italic;
	position: relative;
	top: -2px;	
}
.writer-1-cat {
	display: flex;
}

/*display related posts in two columns on mobile*/

@media all and (max-width: 981px) {
	.news-related {
	columns: 2;
	}
	}

/*change sidebar lastest post blog module image to 16:9 ratio NOT WORKING*/

.sidebar-latest-16-9 .entry-featured-image-url {
	  padding-top: 56.25%;
	  display: block;
	}
	
.sidebar-latest-16-9 .entry-featured-image-url img {
	  position: absolute;
	  height: 100%;
	  width: 100%;
	  top: 0;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  object-fit: cover;
	}
	
/* 
_____________
Post author and article writer archive pages
_____________

*/

.author-before:before {
	content: 'by';
	margin-right: 5px;
	color: #A5A5A5;
	text-shadow: none;
	text-transform: lowercase;
}

.author-before {
	display: flex;
}

/*round writer image with box shadow using Divi Machine Thumbnail module*/

.writer-image img.featured-image.wp-post-image {
	border-radius: 100%;
	box-shadow: 0px 12px 18px -6px rgba(0,0,0,0.3)
}

/*mobile responsiveness for news pages sidebar (order set in Divi modules)*/

@media all and (max-width: 981px) {
	.author-sidebar {
	display: flex;
	flex-wrap: wrap;
	}
	}

/* 
_____________
News posts 
_____________

*/
	
.post-author:before {
	content: "By";
	color: #a5a5a5;
	padding-right: 4px;
	font-weight: bold;
}
.post-author {
	display: flex;
}

/*news post drop cap*/

.news-post-content p:first-child:first-letter {
	font-size: 80px;
	color: #057781;
	position: relative;
	float: left;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-right: 10px;
	}
	
	/*mobile responsiveness for news pages sidebar (order set in Divi modules)*/
		
@media all and (max-width: 981px) {
	.news-sidebar {
	display: flex;
	flex-wrap: wrap;
	}
	}
	
/*add space below podcast player */
.powerpress_player {
	margin-bottom: 20px;
}

/*add margin between ACF repeater items in news posts with updates */

.news-repeater .acf-item {
	margin-bottom: 24px;
}

/*style arrows and dots in ACF gallery for news posts with updates */

/* Arrow buttons */
.swiper-button-prev,
.swiper-button-next {
  color: #047881!important;
}

/* Pagination dots */
.swiper-pagination-bullet {
  background-color: #047881!important;
  opacity: 0.5;
}
.swiper-pagination-bullet-active {
  background-color: #047881!important;
  opacity: 1;
}
	
	/* 
	_____________
	Q and A posts
	_____________
	
	*/

/*add and align "by" in sidebar author name

.qa-by:before {
	content: 'by';
	margin-right: 3px;
	color: #878787;
	font-style: italic;
}

.qa-by {
	display: flex;
}

*/

	
	/* 
	_____________
	issue pages
	_____________

*/


	/* 
	_____________
	article posts 
	_____________

*/

/*add margin to bottom of Kadence Advanced Gallery*/

.wp-block-kadence-advancedgallery {
	margin-bottom: 20px;
}

/* writer names under post title: align names and "by" before text*/	

.writer-names-col {
	display: flex;
	}
	
.writer-1:before {
	content:'—by';
	padding-right: 6px;
	font-size: 18px;
	font-family: source-serif-pro;
	font-style: italic;
	position: relative;
	top: 3px;
	
	}

.writer-1 {
	display: inline-flex;
}

.writer-2:before {
	content: 'and';
	position: relative;
	font-style: italic;
	font-size: 18px;
	font-family: source-serif-pro;
	top: 3px;
	padding-left: 6px;
	padding-right: 6px;
}
.writer-2 {
	display: inline-flex;
}

/* border  divider between writer name and post content*/

.border-divider {
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #cd0076;
	width: 100px;
}
/* before text for article author in sidebar*/

@media all and (min-width: 981px) {
	.about-author:before {
		content: 'About the author';
		font-size: 18px;	
		color: #444444;
		font-weight: 600;
		text-transform: uppercase;
	}
	}

@media all and (max-width: 981px) {
	.about-author-mobile:before {
		content: 'About the author';
		font-size: 18px;	
		color: #444444;
		font-weight: 600;
		text-transform: uppercase;
		margin-bottom: 15px;
	}
	}

/* before text for feature article author below post content*/

.about-author-feature:before {
	content: 'About the author';
	font-size: 18px;	
	color: #444444;
	font-weight: 600;
	text-transform: uppercase;
	line-height: 2em;
}

/* Article text style blockquote*/
.article-text blockquote
 {
	background: #F7F7F7;
	padding: 25px 35px;
}

.article-text blockquote
 {
	position: relative;
}

.article-text blockquote:before {
	content: '“';
	position: absolute;
	font-family: source serif;
	font-size: 6em;
	color: #D2D2D2;
	top: .15em;
	left: .1em;
}

.article-text blockquote:after {
	content: '”';
	position: absolute;
	font-family: source-serif;
	font-size: 6em;
	bottom: -0.30em;
	right: 0.15em;
	color: #D2D2D2;
}


/* Advice articles: before text "question" and "coming up"*/
.question:before {
	content: 'Question:';
	font-size: 30px;
	text-transform: uppercase;
	color: #d2d2d2;
	letter-spacing: 3px;
	font-weight: bold;
	padding-right: 5px;
}
.coming-up:before {
	content: 'Coming up:';
	font-size: 30px;
	text-transform: uppercase;
	color: #d2d2d2;
	letter-spacing: 3px;
	font-weight: bold;
	padding-right: 5px;
}
.advice-caption {
	color: #878787;
	font-family: montserrat;
	font-size: 14px;
	line-height: 1.8;
	margin-left: 100px;
}

/* issue date on article pages */

.issue-text-color a {
	color: #cd0076;
}

.issue-text-color a:hover {
	color: #990059;
}

/*mobile responsiveness for article pages sidebar*/

		
	@media all and (max-width: 981px) {
			.article-sidebar {
			columns: 2;
			}
			}


/*

________________
General Directory fixes
________________

*/

/*adjust the column widths and layout on main directory page and program details on individual pages*/

@media (min-width:768px) and (max-width:1300px) {
.directory-mobile {
	display: flex;
}	
	
}

@media (max-width:767px) {
	.directory-mobile {
		display: flex;
	}
	
	.directory-mobile .et_pb_column:nth-child(1) {
		flex-basis: 30%;
		
	}
	.directory-mobile .et_pb_column:nth-child(2) {
		flex-basis: 65%;
		
	}
}

@media (min-width:500px) and (max-width:980px){
	.directory-mobile-single {
		display: flex;
	}
	
	.directory-mobile-single .et_pb_column:nth-child(1) {
		flex-basis: 40%;
		margin-right: 12px;
	}
	
	.directory-mobile .et_pb_column:nth-child(2) {
		flex-basis: 55%;
	}
}

/*adjust stacking order and layout of modules in directory sidebar*/


@media (max-width:980px) {
	.directory-mobile-sidebar {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		margin-top: 24px;
	}
	.side-1 {
		order: 4;
	}
	
}

.dir-mob-grid {
	display: grid;
}


/* 
_____________
Harp Teacher Directory
_____________

*/
/*image aspect ratio square 1:1*/

.directory-image-1-1 .et_pb_image_wrap {
padding-top: 100%;
display: block;
}

.directory-image-1-1 .et_pb_image_wrap img {
position: absolute;
height: 100%;
width: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
object-fit: cover;
}

/* Harp Teacher directory listing "before" text*/
.teacher-background:before {
	content: "more about ";
	padding-right: 5px;
}

@media all and (min-width: 618px) {
	.teacher-background {
		display: flex;
		justify-content: flex-start;
	}
	}
	

/*Align teacher name and "return" button in header*/

.directory-header {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

/*Different link color in directory edit links*/
.link-color p a:nth-of-type(2n+1) {
	color: #057781;
	text-transform: uppercase;
	font-weight: 600;
}

.link-color p a:hover {
	color: #A5A5A5;
}
/* 
_____________
Summer Harp Camp Directory
_____________

*/

.more-about:before {
	content: "more about ";
	padding-right: 5px;
} 

@media all and (min-width: 1070px) {
.more-about {
	display: flex;
	justify-content: flex-start;
}
}
/* 
_____________
Classified ads
_____________

*/

/*image aspect ratio portrait 3:4*/

.classified-featured-3-4 .et_pb_image_wrap {
padding-top: 133.33%;
display: block;
}

.classified-featured-3-4 .et_pb_image_wrap img {
position: absolute;
height: 100%;
width: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
object-fit: cover;
}

/*
_____________
issue page
_____________

*/

/*hero  mobile design*/

@media all and (max-width: 981px) {
	.issue-hero {
	columns: 2;
	padding-bottom: 100px;
	}
}
	
@media all and (max-width: 981px) {
	.issue-cover
	{ width: 90%;
	}
		}
		
@media all and (max-width: 540px) {
	.issue-hero {
		columns: 1;
		padding-bottom: 100px;
	}
}
	@media all and (max-width: 540px) {
		 .issue-cover {
			width: 90%;
		}
		}
		
		

/* 
_____________
Event pages
_____________

*/

/*force featured image to be full width*/

.single-mec-events .mec-wrap .mec-events-event-image img {
	width: 100% !important;
	height: auto !important;
}

/*remove bottom border in event sidebar loop*/
.featured-events-sidebar .et_pb_with_border.et_pb_row.et_pb_dmach_row_16 {
	border-bottom: none;
}

.featured-events-sidebar .et_pb_with_border.et_pb_row.et_pb_dmach_row_11_tb_body {
	border-bottom: none;
}

/*add space to MEC event category pages*/

#main-content.mec-container {
	margin-top: 100px!important;
	margin-bottom: 100px;
}

/*hide comment section*/

#comment-wrap {
	display: none;
}

/*style singe event text*/

.mec-events-content p {
	font-size: 16px !important;
	font-weight: normal !important;
}

/* 
_____________
Forums
_____________

*/


/*remove bbpress breadcrumbs*/

.bbp-breadcrumb {
	display: none;
}

/*style main forum page*/

/*style individual forum pages*/

a.bbp-topic-permalink {
	font-size: 14px;
}

/*style topic pages*/

#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-footer {
	background: #e7e7e7;
}

#bbpress-forums div.bbp-reply-header {
	background-color: #f0f0f0;
}

#bbpress-forums div.even,
#bbpress-forums ul.even {
 background-color: #fff;
 border: none;
}
 
#bbpress-forums div.odd,
#bbpress-forums ul.odd {
 background-color: #F7F7F7;
}

#bbpress-forums .bbp-topic-content,
#bbpress-forums .bbp-reply-content {
	font-size: 14px;
	font-weight: 400;
}

h1.entry-title.main_title {
	border-bottom: 1px solid #e7e7e7;
}


.bbp-template-notice.info {
	background-color: #F0FDFE!important;
	margin-bottom: 25px;
}


/*style forum author name and remove avatar*/
img.avatar.avatar-80.photo {
	display: none!important;
}

span.bbp-author-name {
	text-transform: uppercase;
	font-weight: 600;
	color: #03494F;
}

/*style forum breadcrumbs, favorite, and subscribe links*/
#bbpress-forums div.bbp-breadcrumb p{
	font-size: 14px;
	margin-bottom: 25px;
}

a.favorite-toggle {
	font-size: 14px;
}

a.subscription-toggle {
	font-size: 14px;
}

/* 
_____________
Woocommerce pages
Note: See Divi custom CSS for more styling. 
_____________

*/

/*hide woocommerce product breadcrumbs*/

nav.woocommerce-breadcrumb {
	display: none;
}

/*style pay your price plugin*/
input.payyourprice_contribution {
	margin-bottom: 20px;
}

/*style PMPpro "my subscription" box on account page*/

.pmpro-myaccount #pmpro_account .pmpro_box {
	border-top: none!important;
	margin: 0px!important;
}

.pmpro-myaccount h2 {
	padding-bottom: 25px;
}

/*style My Account page*/

/*disable product image zoom*/

/***** POPUP TEASER (works with JQuery on page *****/
	
	/* Show/hide the popup overlay wrapper when "is-visible" class changes, apply the CSS to frontend only */
body:not(.et-fb) .dl-popup-wrapper {
	position:fixed;
	z-index:990;
	top:0;
	right:0;
	bottom:0;
	left:0;
	transition: all .5s cubic-bezier(.14,.06,.41,1.39);
	opacity:0;
	visibility:hidden;
	}
body:not(.et-fb) .dl-popup-wrapper.popup-is-visible {
	opacity:1;
	visibility:visible;
	}
	
/* Allow the content inside the popup wrapper to scroll */
.dl-popup-inside {
	height:100%;
	overflow-y: scroll;
	}
	
/* Prevent Body from Scrolling when Popup is visible */
body.dl-noscroll {
	overflow: hidden;
	}

/* Center Align Popup Content inside the Section */
.dl-popup-content {
	display:flex;
	flex-direction:column;
	justify-content: center;
	}
.dl-popup-content .et_pb_row {
	margin-top:0;
	margin-bottom:0;
	}
	
/* Adjust the position of the popup overlay for admin bar */
@media (min-width:600px) and (max-width:782px) {
body:not(.et-fb).admin-bar .dl-popup-wrapper {
	top:46px;
    }
	}
@media (min-width:783px) {
body:not(.et-fb).admin-bar .dl-popup-wrapper {
	top:32px;
    }
}
	
/* Move the popup on top of other elements */
.et_builder_inner_content.popup-is-visible {
	z-index:99999;
	}
	
/* Add a hand cursor to the close trigger element */
.dl-popup-close {
	cursor:pointer;
	}
	
/* Add Row animation when popup is triggered */
	.dl-popup-wrapper.popup-is-visible .et_pb_row:not(.dl-popup-close) {animation:scale-in .5s cubic-bezier(.14,.06,.41,1.39) both; animation-delay: .5s; }
	@keyframes scale-in{0%{transform:scale(0.3);opacity:0}100%{transform:scale(1);opacity:1}}
	

/* 
_____________
30 Day Practice Challenge 2023
_____________

*/

.challenge-buttons .et_pb_button_module_wrapper {
	display: inline-block;
}

.challenge-buttons {
	text-align: center !important;
}

.challenge-23 blockquote {
	margin-top: 10px;
}

.day-heading-23 {
	color: #d2d2d2;
	font-size: 50px;
	margin-top: 20px;
}

.live-session {
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 20px!important;
	border-radius: 20px;
	border: solid 3px #5ADCF6;
}

.challenge-section-23 {
	border-top: 5px solid #cd0076!important;
	margin-top: 50px!important;
	margin-bottom: 20px;
	padding-top: 30px!important;
}

.challenge-23 span.kt-btn-inner-text {
	color:  #fff;
}

.hca-group {
	padding-top: 20px!important;
}

.challenge-23-check ul li:before {
	content: "\52";
	font-family: 'ETModules';
	margin-left: -40px;
	position: absolute;
	color: #cd0076;
	font-size: 30px;
}

.challenge-23-check ul li {
	margin-bottom: 20px;
}

/* 
_____________
30 Day Practice Challenge 2024
_____________

*/

/* style checkmark on challege page */

.challenge-24-check ul li:before {
	content: "\52";
	font-family: 'ETModules';
	margin-left: -40px;
	position: absolute;
	color: #f63646;
	font-size: 30px;
}

.challenge-24-check ul li {
	margin-bottom: 20px;
}

/* style blockquote */

.challenge-text-24 blockquote
 {
	background: #F7F7F7;
	padding: 25px 35px;
	border-radius: 10px;
}

.challenge-text-24 blockquote
 {
	position: relative;
}

.challenge-text-24
blockquote:before {
	content: '“';
	position: absolute;
	font-family: source serif;
	font-size: 6em;
	color: #D2D2D2;
	top: .10em;
	left: .1em;
}

.challenge-text-24
blockquote:after {
	content: '”';
	position: absolute;
	font-family: source-serif;
	font-size: 6em;
	bottom: -0.40em;
	right: 0.15em;
	color: #D2D2D2;
}

/*style "read now" text */

.challenge-text-24-read {
	text-transform: uppercase;
	font-weight: 600;
}

/* set image aspect ratio of blog module on challenge page */

.challenge-24 .entry-featured-image-url {
  padding-top: 75%;
  display: block;
}
.challenge-24 .entry-featured-image-url img {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
}

/*show list of entries in sidebar */

/*add media query so changes only affect tablet and desktop*/
@media (min-width: 767px) {
/*set the image width*/
.challenge-24-featured .entry-featured-image-url  {
width: 50%;
float: left;
margin-bottom: 0!important;
}
/*set the details width*/
.challenge-24-featured .entry-title,
.challenge-24-featured.post-meta,
.challenge-24-featured .post-content {
width: 50%;
float: left;
padding-left: 30px;
}
}

/*style live event group in Gutenburg */
.challenge-24-events {
	border: solid 3px #f63646;
	margin: 20px;
	padding: 30px;
	border-radius: 20px;
}

/*style content button in Gutenburg */

.content-btn-24 a.kb-button.kt-button.button.kb-btn307085_26c048-f2.kt-btn-size-standard.kt-btn-width-type-auto.kb-btn-global-fill.kt-btn-has-text-true.kt-btn-has-svg-false.wp-block-kadence-singlebtn {
	color: #fff!important;
}

/* 
_____________
30 Day Practice Challenge 2025
_____________

*/

/*style live event group in Gutenburg */
.challenge-25-events {
	border: solid 3px #800d4f;
	margin: 20px;
	padding: 30px;
	border-radius: 20px;
}


/*GIFT PAGE*/

/*style gift page hero section 

.gift-hero ul li:before {
	content: '\e008' !important;
	font-family: 'ETMODULES'!important;
	color: #cd0076;
	margin-right: 10px;
	font-size: 1.5em !important;
}

.gift-hero ul {
	padding-left: 0px !important;
	line-height: 2em !important;
	margin-top: 5%;
}

*/

/*remove product addons validation message */
#required_addons_validation_message {
	display: none;
}

/* recreate button effect on toggle using before element (to prevent background color from showing throughout whole toggle on opening) */

.gift-toggle.et_pb_module.et_pb_toggle::before {
	background: #058894;
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 60px;
	transition: all .3s;
}
.et_pb_module.et_pb_toggle.et_pb_toggle_open::before {
	background: #fff;
}

