/*

 Theme Name:   RBYC Theme

 Theme URI:    http://rbyc.org.au

 Description:  RBYC theme, child of astra

 Author:       Francesco Battaglini

 Author URI:   http://example.com

 Template:     astra

 Version:      2.0.25

 License:      GNU General Public License v2 or later

 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

 Tags:         light, responsive-layout, accessibility-ready

 Text Domain:  rbyc

*/

/* style headers */

.elementor-widget-heading h1.elementor-heading-title {
	line-height: 1.2;
}

.elementor-widget-heading h1.elementor-heading-title {
	color: black;
	letter-spacing: 2px;
	padding: 0;
	margin: 30px 0 0 0 !important;
}

.elementor-widget-heading h3.elementor-heading-title {
	margin: 20px 0 0 0 !important;
}

@media (max-width: 767px) {
	.elementor-widget-heading h1.elementor-heading-title {
		font-size: 2.5rem;
	}
}

@media (max-width: 425px) {
	.elementor-widget-heading h1.elementor-heading-title {
		font-size: 3.2rem;
	}
}

/* style elementor text editor paragraphs */
div.elementor-text-editor, .elementor-widget-theme-post-content p {
	font-size: 1.2rem;
	text-align: justify;
}

/* links in bold in post content */
.elementor-widget-theme-post-content a {
	font-weight: bold;
}

/* style rounded icons found in many of the "main" website pages */
div.elementor-icon-box-wrapper a.elementor-icon, div.elementor-icon-box-wrapper div.elementor-icon-box-icon {
	line-height: 0;
}

div.elementor-icon-box-wrapper div.elementor-icon-box-icon {
	margin: 10px;
}

div.elementor-icon-box-icon a.elementor-icon {
	background: black;
	padding: 21px;
	transition: background .3s ease-out;
}
div.elementor-icon-box-icon a.elementor-icon:hover {
	background: #002244;
}

div.elementor-icon-box-wrapper div.elementor-icon-box-title, div.elementor-icon-box-wrapper div.elementor-icon-box-title a {
	font-size: 1.3rem;
	text-transform: uppercase;
	font-weight: normal;
}

@media (max-width: 425px) {
	div.elementor-icon-box-wrapper div.elementor-icon-box-title, div.elementor-icon-box-wrapper div.elementor-icon-box-title a {
		font-size: 1.1rem;
	}
}

/* change text size in post excerpt */
article.post.type-post div.elementor-post__excerpt p {
	font-size: 1rem;
}

.elementor-menu-toggle {
	margin: 0;
}

/* Modify site branding on header */
.site-title {
	font-size: 1.4rem;
}

/* Remove padding from header */
.main-header-bar {
	padding: 0;
}

/* header in the home-page-header element */
#home-page-header h1.elementor-heading-title.elementor-size-default {
	color: white;
	text-align: center;
}

@media (max-width: 425px) {
	#home-page-header h1.elementor-heading-title.elementor-size-default {
		font-size: 3rem;
	}
}

/* Post featured image props */
.ast-page-builder-template .entry-header, .single.ast-page-builder-template .entry-header {
	padding: 0;
	margin-top: 0;
}
.single-post .entry-title, .single-post .entry-content {
	max-width: 768px;
	margin: 0 auto;
}
@media (max-width: 425px) {
	.single-post .entry-title, .single-post .entry-content {
		padding: 0 16px;
	}	
}
@media (max-width: 768px) {
	.single-post .entry-title, .single-post .entry-content {
		max-width: 640px;
	}
}
.single-post .post-thumb {
	height: 66vh;
	background-position: center;
	background-size: cover;
}

/* Events container and cards */
.rbyc-theme-card-flex-container {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-evenly; */
	align-content: space-around;
}

.rbyc-theme-event-card {
	background-color: white;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	flex: 0 0 250px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	margin: 12px;
}

.rbyc-theme-event-card .social-background-container {
	display: flex;
	flex-direction: row;
}

.rbyc-theme-event-card .social-background-container .social-icons-container {
	display: flex;
	flex-direction: column;
	flex: 0 0 42px;
	height: auto;
	justify-content: space-between;
}

.rbyc-theme-event-card .social-background-container .social-icons-container .elementor-share-btn {
	margin: 10px 6px;
	width: 32px;
	height: 32px;
}

.rbyc-theme-event-card-background {
	flex: 0 0 208px;
	height: 294px;
	width: 208px;
	background-color: #eee;
	background-size: cover;
	border-bottom: 1px solid #eaeaea;
	cursor: pointer;
	background-position: 50% 50%;
}

.rbyc-theme-event-card .main-container {
	display: flex;
	flex-direction: column;
	flex: 1;
	justify-content: space-between;
}

.rbyc-theme-event-card-info-container {
	padding: 16px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;	
}

.rbyc-theme-event-card-info-container h4.date-time {
	font-size: 1.1rem;
	font-weight: 600;
}

.rbyc-theme-event-card-action-buttons-container {
	padding: 12px 8px;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ddd;
	box-sizing: border-box;
}

.rbyc-theme-event-card-action-buttons-container a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
	color: white;
	margin: 0;
	padding: 12px 16px;
	font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
	border-radius: 5px;
	line-height: 16px;
	background-image: linear-gradient(to right, #002244, #981E32);
	margin: 5px;
	box-sizing: border-box;
	text-align: center;
}

@media (max-width: 425px) {
	.rbyc-theme-card-flex-container {
		flex-direction: column;
		flex-wrap: nowrap;
	}
	
	.rbyc-theme-event-card {
		display: flex;
		margin: 16px 0;
		flex-direction: row;
		box-sizing: border-box;
		width: 100%;
	}

	.rbyc-theme-event-card .social-background-container {
		display: flex;
		flex-direction: row;
		flex: 0 0 169px;
		width: 169px;
		align-items: center;
		min-height: 180px;
	}

	.rbyc-theme-event-card .social-background-container .social-icons-container {
		height: 100%;
		flex: 0 0 42px;
	}
	
	.rbyc-theme-event-card-background {
		flex: 0 0 127px;
		height: 180px;
		border: 0;
	}

	.rbyc-theme-event-card .main-container {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		height: auto;
	}
	
	.rbyc-theme-event-card-info-container {
		display: flex;
		width: 100%;
		flex-direction: column;
		padding: 10px;
	}

	.rbyc-theme-event-card-action-buttons-container {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		padding: 6px;
		justify-content: space-evenly;
	}

	.rbyc-theme-event-card-action-buttons-container a {
		font-size: 12px;
		line-height: 14px;
		padding: 10px;
	}
}

/* space the calendar page from the top so it doesn't interfere with the menu bar */
#tribe-events-pg-template, .tribe-events-pg-template {
	margin: 60px auto;
}

/* Fancy new buttons */
.elementor-button-wrapper {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

a.elementor-button, div.wp-block-button.is-style-outline {
	background-image: linear-gradient(to right, #002244, #981E32);
	border-radius: 30px;
  box-sizing: border-box;
	color: white;
	display: flex;
	font-size: 1.25rem;
	height: 60px;
	letter-spacing: 1px;
  text-decoration: none;
	text-transform: uppercase;
}
a.elementor-button.elementor-size-sm {
	height: 40px;
	border-radius: 20px;
	font-size: 1rem;
}
div.wp-block-button.is-style-outline a.wp-block-button__link {
	border: none;
}
a.elementor-button span.elementor-button-text, div.wp-block-button.is-style-outline a.wp-block-button__link {
  overflow-wrap: break-word;
	display: flex;
	align-items: center;
	font-weight: 500;
	justify-content: center;
}

/* style the coaching sessions cards */
div.rbyc-theme-coaching-session-card {
	box-sizing: border-box;
	padding: 16px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	display: grid;
	grid-template-columns: 3fr 1fr;
	align-items: center;
}

/* Small calendar icon used to display a set of dates for an event series */
.rbyc-calendar-icon {
	margin: 10px;
}

.rbyc-calendar-icon-header {
	padding: 4px 6px;
	font-size: 15px;
	letter-spacing: 2px;
	text-transform: uppercase;
	background: #002244;
	text-align: center;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	box-shadow: inset -10px 0px #002244;
}

.rbyc-calendar-icon-header a {
	color: white;
}

.rbyc-calendar-icon-body {
	background: #ebeef2;
	display: flex;
	align-items: center;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	box-shadow: inset -10px 0px #d5dadc;
	justify-content: center;
}

.rbyc-calendar-icon-body .today {
	padding: 8px 0;
	font-size: 30px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
}

.rbyc-calendar-icon-body .today a {
	color: black;
}
/* finish small calendar icon */

/* add some extra types of column to elementor */
@media (max-width: 767px) {
	.elementor-column.elementor-col-mobile-50 {
		width: 50%;
	}
}

@media (min-width: 375px) and (max-width: 767px) {
	.elementor-column.elementor-col-mobile-lg-33 {
		width: 33%;
	}
}

/* style forms */
nf-rows-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}