/*
Theme Name: fumcpa child theme
Theme URI: https://olliewp.com
Description: A child theme for Ollie.
Author: Small Actions Studio
Author URI: https://smallactionsstudio.com/
Template:     ollie
Version: 1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Text Domain: ollie-child
*/


/* SITE HEADER NAVIGATION */

.wp-block-navigation-item.current-menu-item {
	color: #313852;
	font-weight: 900;
}


.eventkoi-query-loop {
	padding: 50px !important;
	margin-bottom: 60px;
	background-color: #FFFFFF;
}

@media (max-width: 781px) {
	.eventkoi-query-loop {
		padding-top: 25px !important;
		padding-left: 10px !important;
		padding-right: 10px !important;
	}	
}

.eventkoi-query-loop ul {
	/*margin-left: 25px !important;
	margin-right: 25px !important;*/
}

.wp-block-navigation-item.give-cta-primary,
.wp-block-navigation__responsive-container.has-modal-open.is-menu-open .give-cta-primary {
	background-color: #FD7625 !important; 
	color: #FFFFFF !important;
	font-weight: 700;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 45px;
	padding-right: 45px;
	border-radius: 30px;
}

.wp-block-contact-form-7-contact-form-selector {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

/* WordPress Accordion Style Override */

/* Closed state */
.wp-block-accordion-panel {
  display: grid !important;          /* override core's display:none */
  grid-template-rows: 0fr;
  visibility: hidden;
  transition:
    grid-template-rows 0.35s ease,
    visibility 0s linear 0.35s;      /* hide only after closing finishes */
}

/* Single wrapper */
.wp-block-accordion-panel > * {
  min-height: 0;                     /* lets the row shrink to zero */
  overflow: hidden;
  margin-block: 0;                   /* stray margins would show when closed */
}

/* Open state */
.wp-block-accordion-item.is-open .wp-block-accordion-panel,
.wp-block-accordion-item:has(.wp-block-accordion-heading__toggle[aria-expanded="true"]) .wp-block-accordion-panel {
  grid-template-rows: 1fr;
  visibility: visible;
  transition:
    grid-template-rows 0.35s ease,
    visibility 0s;
}

@media (prefers-reduced-motion: reduce) {
  .wp-block-accordion-panel {
    transition: none !important;
  }
}

/* Latest Sermon Block Style Overrides */

.latest-sermon-container {

}

.latest-sermon-carousel {

}

.latest-sermon-carousel-slide {

}

.latest-sermon-rss-feed-item {
	padding-right: 10%;
}

.latest-sermon-rss-feed-item ul {
	padding-left: 0px;
}

.latest-sermon-rss-feed-item ul li.rss_item {
	list-style: none;
	position: relative;
	display: flex; flex-direction: column; gap: .75rem;
	/* padding-top: 1rem;
	padding-right: 1.75rem;
	padding-bottom: 1rem;
	padding-left: 1.75rem; */
	/* background-color: #faf4f2;  */
	/* border: 1px solid #dfe4e0; */
	border-radius: 15px;
	overflow: hidden;
	transition: transform .35s cubic-bezier(.2,.7,.2,1),
				box-shadow .35s cubic-bezier(.2,.7,.2,1),
				border-color .35s ease;
}

.latest-sermon-rss-feed-item ul li.rss_item:hover,
.latest-sermon-rss-feed-item ul li.rss_item:focus-visible {
  /* transform: translateY(-6px);
  border: 2px solid #FD7625;
  box-shadow: 0 18px 40px -18px rgb(31 42 36 / .35); */
}

.latest-sermon-rss-feed-item ul li.rss_item:hover::after,
.latest-sermon-rss-feed-item ul li.rss_item:focus-visible::after { transform: scaleX(1); }

.latest-sermon-rss-feed-item ul li::after {
	
}

.latest-sermon-rss-feed-item ul li .rss_image {
	width: 100% !important;
	height: 200px !important;
}

.latest-sermon-rss-feed-item ul li span.title {
	border-top: 3px solid #313851;
	margin-bottom: 10px;
	padding-top: 15px;
	font-size: 1.3rem;
}

.latest-sermon-rss-feed-item ul li span.title a {
	color: #313851;
	font-weight: 700;
	text-decoration-line: none;
}

.latest-sermon-rss-feed-item ul li span.title a:hover {
	text-decoration-line: underline;
}

.latest-sermon-rss-feed-item ul li div.rss_content {
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .latest-sermon-rss-feed-item, .latest-sermon-rss-feed-item::after,
  .latest-sermon-rss-feed-item:hover, .latest-sermon-rss-feed-item:focus-visible,
  .latest-sermon-rss-feed-item:hover,
  .latest-sermon-rss-feed-item:focus-visible { transform: none; }
}



/* Ollie Overrides */
.ollie-carousel-pagination--bars button.ollie-carousel-dot {
	width: 542px;
	height: 36px;
	border: 0;
	padding: 0;
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 542 36' fill='none'%3E%3Cpath d='M6 18H518' stroke='%231E1E26' stroke-width='12' stroke-linecap='round'/%3E%3Cpath d='M506 6L524 18L506 30' stroke='%231E1E26' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.ollie-carousel-pagination--bars button.ollie-carousel-dot {
	height: 25.5px !important;
	opacity: 1 !important;
}
.ollie-carousel-pagination--bars button.ollie-carousel-dot.is-active {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 542 36' fill='none'%3E%3Cpath d='M6 18H518' stroke='%23FD7625' stroke-width='12' stroke-linecap='round'/%3E%3Cpath d='M506 6L524 18L506 30' stroke='%23FD7625' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.ollie-carousel-pagination--bars button.ollie-carousel-dot:hover {
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 542 36' fill='none'%3E%3Cpath d='M6 18H518' stroke='%23FD7625' stroke-width='12' stroke-linecap='round'/%3E%3Cpath d='M506 6L524 18L506 30' stroke='%23FD7625' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.ollie-carousel-pagination--bars button.ollie-carousel-dot:hover::before,
.ollie-carousel-pagination--bars button.ollie-carousel-dot:hover::after {
	background: transparent !important;
	opacity: 1 !important;
}
.sas-youtube-pagination {
	display: flex;
	justify-content: center; /* Centers horizontally */
	align-items: center;     /* Centers vertically */
	width: 100%;
	height: 80px;            /* Give the parent some height to see vertical centering */
}



/* Worship Services Page Styling */
.sas-youtube-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sas-youtube-pagination li {
  margin: 0;
  padding: 0;
}

.sas-youtube-pagination li > .page-numbers:not(.dots):not(.next):not(.prev) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  border: 2px solid #313851;
  background-color: #313851;
  color: #fff;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.sas-youtube-pagination li > .page-numbers.current {
  background-color: #ffffff !important;
  color: #313851 !important;
  border: 2px solid #313851;
}

.sas-youtube-pagination li > a.page-numbers:not(.current):not(.next):not(.prev):hover,
.sas-youtube-pagination li > a.page-numbers:not(.current):not(.next):not(.prev):focus-visible {
  background-color: #ffffff;
  color: #313851;
  border: 2px solid #313851;
}

.sas-youtube-pagination .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sas-youtube-feed-block .feedzy-rss.sas-youtube-api ul li .rss_image {
	border-bottom: 5px solid #313851;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.sas-youtube-feed-block .feedzy-rss.sas-youtube-api ul li span a {
	font-weight: 700;
}

/* Event Koi Style Overrides */ 

.eventkoi-front {
	background-color: #FFFFFF !important;
	padding-left: 30px;
    padding-right: 30px;
	padding-bottom: 30px;
}

@media (max-width: 781px) {
	.worship-row-image > .wp-block-image,
	.worship-row-image > .wp-block-column:has(.wp-block-image) {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100%;
	}

	.worship-row-image .wp-block-image img {
		width: 100% !important;
		height: auto !important;
	}

}

@media (max-width: 781px) {
	.worship-stack-contant {
		padding-left: 0px !important;
		margin-top: 15px !important;
	}
}

@media (max-width: 781px) {
	.staff-row-profile {
		.staff-single-col-profile {
			margin-bottom: 30px;
		}
	}
}





/* General Mobile Breakpoint Settings */

@media (max-width: 781px) {
	.hide-on-mobile {
		display: none;
	}
}


[data-wp-bind--aria-selected="state.isActiveTab"][aria-selected="true"] {
  border-bottom-color: #EC7E44 !important;
}

/*a.wp-block-navigation-item__content [aria-current="page"] span {
  font-weight: 900 !important; 
}
*/



/* GRAVITY FORM STYLE OVERRIDE */
.gravity-form-container .gform_wrapper {
	margin-left: 0px !important;
	margin-right: 0px !important;
}




.wp-block-tabs.tabs-sticky-side {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); /* 40/60, same as the top section */
  gap: var(--wp--preset--spacing--x-large, 3rem);
  align-items: start; /* required, or the sticky column stretches and won't stick */
}
.wp-block-tabs.tabs-sticky-side > * {
  margin-block: 0 !important; /* removes flow-layout spacing between the tab list and the panels */
}
.wp-block-tabs.tabs-sticky-side > .wp-block-tab-list {
  flex-direction: column;
  align-items: flex-start;
  position: sticky;
  top: 52px; /* matches ollie-sticky-top */
}

.wp-block-tabs.tab-list {
	margin-top: 100px;
}


@media (max-width: 781px) {
  .wp-block-tabs.tabs-sticky-side { grid-template-columns: 1fr; }
  .wp-block-tabs.tabs-sticky-side > .wp-block-tab-list {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
  }
}







/* Worship/Music Tab Deeplink Controls */

/* Smooth scrolling for anchor jumps */
html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Keep the sticky header from covering the section.
   Change 120px to match your header height. */
[role="tablist"],
[role="tabpanel"],
.tab-deeplink-target {
  scroll-margin-top: 120px;
}