/*
Theme Name: CCA Main Custom Theme
Theme URI: 
Author: Yoko Co
Author URI: 
Description: A modern, custom theme for CCA from the team at Yoko Co.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 5.7  
Version: 1.27  
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yoko-custom-core
Tags:  
*/ 
/*************************************************************/
/*************** Gutenberg and FSE quirk fixes ***************/
/*************************************************************/
/* Fixes default gaps between blocks when stacking groups or rows at the highest level */
:where(.wp-site-blocks) > * {margin-block-start: 0; margin-block-end: 0;}
/*************************************************************/
/************ Utility classes for responsive fixes ***********/
/*************************************************************/
/* Handles responsive left-right padding by default by target top level groups. Can be undone by using .esc-pad class on a top level group */
@media screen and (max-width: 1240px) {
	.wp-site-blocks > .wp-block-group:not(.esc-pad), 
	.wp-site-blocks > .wp-block-template-part > .wp-block-group:not(.esc-pad), 
	.wp-block-template-part > .wp-block-template-part > .wp-block-group:not(.esc-pad), 
	.wp-block-template-part > .wp-block-template-part > .wp-block-template-part > .wp-block-group:not(.esc-pad), .wp-site-blocks > .entry-content > .wp-block-group:not(.esc-pad) 
	{
		padding-left: 20px !important; 
		padding-right: 20px !important;
	}
}
 
/* utility classes for responsive layouts on medium devices */
@media screen and (max-width: 1024px) {
    body .is-layout-flex.md-reverse {flex-direction: row-reverse; justify-content: flex-end;} 
    body .is-layout-flex.md-stack {flex-direction: column;}  
    body .is-layout-flex.md-stack.md-reverse {flex-direction: column-reverse; justify-content: flex-end;} 
    body .is-layout-flex.md-stack  > :is(*, div) {display: block; width: 100%; margin-left: 0; margin-right: 0;} 
    body .wp-block-columns.is-layout-flex.md-reverse {flex-direction: column-reverse; justify-content: flex-end;}
}
/* utility classes for responsive layouts on small devices */
@media screen and (max-width: 781px) {
    body .is-layout-flex.mobile-reverse, body .is-layout-flex.sm-reverse {flex-direction: row-reverse; justify-content: flex-end;} 
    body .is-layout-flex.mobile-stack, body .is-layout-flex.sm-stack {flex-direction: column;} 
    body .is-layout-flex.mobile-stack.mobile-reverse, body .is-layout-flex.sm-stack.sm-reverse {flex-direction: column-reverse; justify-content: flex-end;} 
    body .is-layout-flex.mobile-stack  > :is(*, div), body .is-layout-flex.sm-stack  > :is(*, div) {display: block; width: 100%; margin-left: 0; margin-right: 0;} 
    body .wp-block-columns.is-layout-flex.mobile-reverse, body .wp-block-columns.is-layout-flex.sm-reverse {flex-direction: column-reverse; justify-content: flex-end;}
}

/****************************************************/
/********* Menu and Mega Menu Functionality *********/
/****************************************************/
/* Fixes grandchild menu behavior */
.wp-block-navigation .wp-block-navigation_container .has-child .wp-block-navigation_submenu-container {
    overflow: visible;
}
.wp-block-navigation-submenu .has-toggle::after, .wp-block-navigation-submenu .has-child .wp-block-navigation-submenu__toggle::after {
    right: 10px;
    top: calc(50% - 14px);
}
.wp-block-navigation-submenu__toggle[aria-expanded=true] {
    text-decoration: underline;
}
/* Restyles dropdown menu */
.wp-block-navigation.items-justified-right .wp-block-navigation_container .has-child .wp-block-navigation_submenu-container {
    right: auto;
    left: 0;
    margin-top: 8px;
    border: 0px;
    box-shadow: 0px 0px 24px rgba(0,0,0,0.05);
    border-radius: 4px;
}
.custom-alert-banner p {
    margin-block-start: 0;
    margin-block-end: 0;
}
/* Sets up mega menu */
.mega-menu-group {
    position: absolute;
    width: 100%;
    max-width: 100vw;
    left: 0;
    top: 98px;
}
.mega-menu-group {
    display: none;
}
.mega-menu-group.open {
    display: block;
    z-index: 99;
} 
/****** Standardizes appearance of dropdown arrow *******/ 
/* .has-toggle::after, .has-child .wp-block-navigation-submenu__toggle::after  {
    width: 12px; 
    content: '⌄';
    display: block;
    position: absolute;
    top: 0px;
    right: 0px; 
    font-size: 14px;  
}

.has-toggle .wp-block-navigation-item__content {
	padding-right: 12px; 
}

.has-child .wp-block-navigation__submenu-icon {
	display: none;
} */
/****** This allows the mega menu to be full width by removing the relative classes from the nav menu container *******/
header .wp-block-navigation__responsive-dialog {
    position: static;
}
header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    position: static;
}
header .wp-block-navigation{
    position: static!important;
}
header .wp-block-navigation .wp-block-navigation-item.full-drop {
    position: static;
}
header .wp-block-navigation .wp-block-navigation__container .full-drop .full-drop.wp-block-navigation__submenu-container {
    position: absolute;
    width: 100%;
}
.has-child.full-drop .wp-block-navigation-submenu__toggle::after { 
  position: relative;
  float: right;
}
.wp-block-navigation-item.open-on-click.full-drop .wp-block-navigation-submenu__toggle {
    padding-right: 0px;
}
.has-child.full-drop .wp-block-navigation-submenu__toggle .wp-block-navigation-item__label {
    padding-right: 6px;
}
/****************************************************/
/***** Fixing default mobile navigation issues ******/
/****************************************************/
/* The following rules address numerous spacing and positioning issues with the mobile navigation */
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open {
    max-width: 100vw; 
    overflow: hidden; 
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
    padding: 0px 10px; 
    background-color: rgba(0,0,0,0.1)!important;
    border-radius: 3px; 
    width: calc(100% - 20px);
}
 
.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    padding: 10px 24px; 
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    padding: 10px 20px;   
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    gap: 0px; 
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    padding-top: 24px!important; 
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list {
    width: 100%; 
}
/****************************************************/
/**************** Misc adjustments ******************/
/****************************************************/
 
/* Fixes default gaps when using prefixes on MFBPro */
.wp-block-mfb-meta-field-block.is-display-inline-block .prefix {
    margin-inline-end: var(--mfb--gap, 0);
}