/*
Theme Name: RISE IDOC Block Theme
Theme URI: 
Author: Yoko Co
Author URI: 
Description: A modern, custom theme from the team at Yoko Co.
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yoko-rise-idoc-main
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; 
    padding-right: 20px;
}
}
 
/* 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;}
}


/****************************************************/
/****************** Hover effects *******************/
/****************************************************/

.wp-block-button .wp-block-button__link {
	position: relative;
}
.wp-block-button .wp-block-button__link::before {
	content: '';	
	display: none;
	width: 100%;
	height: 100%;
	background-color: #D9D9D9;
	opacity: 0.5;
	mix-blend-mode: overlay;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
}
.wp-block-button .wp-block-button__link:hover::before {	
	display: block;
}

.is-style-card-title a {
	text-decoration: none;
	color: inherit;
}
.is-style-card.is-linked:hover .is-style-card-title a {
	text-decoration: underline;
}

/****************************************************/
/******************** Navigation ********************/
/****************************************************/

.wp-block-navigation .wp-block-navigation-item__content {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
:root .wp-block-navigation .wp-block-navigation__submenu-icon {
	margin-bottom: 3px;
	color: var(--wp--preset--color--brand);
}
:root .wp-block-navigation.has-contrast-heading-color .wp-block-navigation__submenu-icon {
	color: var(--wp--preset--color--accent);
}
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle {
	padding-right: 1em;
}

:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content {
	border: none;
}
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	content: '';
	display: block;
	width: 0;
	border-bottom: 2px solid var(--wp--preset--color--accent);
	position: absolute;
	left: 0px;
	bottom: 0px;
	transition: width 0.3s ease;
}
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content:hover::after,
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-expanded="true"]::after {
	width: 100%;
}

/****************************************************/
/***************** Main Navigation *****************/
/****************************************************/

.main-nav.wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding-top: var(--wp--preset--spacing--30);
	padding-bottom: var(--wp--preset--spacing--30);
}
@media screen and (max-width: 992px) {
	.main-nav.wp-block-navigation .wp-block-navigation-item {
		width: 100%;
		flex-wrap: wrap;
	}

	.main-nav.wp-block-navigation .wp-block-navigation__submenu-container {
		position: relative;
		top: 0;
		flex-basis: 100%;
	}
	.main-nav.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
		left: 0px;
		top: 0px;
		margin: 0px var(--wp--preset--spacing--40);
	}

	.main-nav.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
		flex-basis: 100%;
	}
	.main-nav.wp-block-navigation .wp-block-navigation-item:has(.wp-block-navigation-submenu__toggle) > .wp-block-navigation-item__content {
		flex-basis: 80%;
	}
	.main-nav.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-submenu__toggle {
		flex-basis: 20%;
		text-align: right;
	}

	.main-nav.wp-block-navigation .wp-block-navigation__submenu-icon {
		width: 14px;
		height: 14px;
		margin-left: 0px;
	}

	.main-nav.wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content {
		padding: 20px;
	}
	.main-nav.wp-block-navigation > .wp-block-navigation-item:has(.wp-block-navigation-submenu__toggle) > .wp-block-navigation-item__content {
		padding-top: 20px;
		padding-left: 20px;
		padding-bottom: 20px;
	}
	.main-nav.wp-block-navigation .wp-block-navigation-submenu__toggle {
		padding-right: 20px;
	}
}

/****************************************************/
/********* Mobile Navigation Functionality **********/
/****************************************************/

@media screen and (max-width: 992px) {
	header .mobile-nav summary {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3.75 6.75H20.25M3.75 12H20.25M3.75 17.25H20.25' stroke='%23FFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
		background-position: center;
		background-repeat: no-repeat;
		background-size: 27px;
		list-style-type: none;
		width: 27px;
		height: 27px;
		font-size: 0px;
	}
	header .mobile-nav[open] summary {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 27 27' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6.15338 6.15338C6.48288 5.82387 7.01712 5.82387 7.34662 6.15338L13.5 12.3068L19.6534 6.15338C19.9829 5.82387 20.5171 5.82387 20.8466 6.15338C21.1761 6.48288 21.1761 7.01712 20.8466 7.34662L14.6932 13.5L20.8466 19.6534C21.1761 19.9829 21.1761 20.5171 20.8466 20.8466C20.5171 21.1761 19.9829 21.1761 19.6534 20.8466L13.5 14.6932L7.34662 20.8466C7.01712 21.1761 6.48288 21.1761 6.15338 20.8466C5.82387 20.5171 5.82387 19.9829 6.15338 19.6534L12.3068 13.5L6.15338 7.34662C5.82387 7.01712 5.82387 6.48288 6.15338 6.15338Z' fill='%23FFF'/%3E%3C/svg%3E");
	}
	header .mobile-nav summary::before {
		display: none;
	}
	header .mobile-nav-col {
		position: absolute;
		left: 0;
		width: 100%;
	}
	header .mobile-nav-col:has(.wp-block-navigation-submenu__toggle[aria-expanded="true"]) {
		overflow: scroll;
		height: 80vh;
	}
}

/****************************************************/
/**************** 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);
}

.wp-block-separator {
	border-color: transparent !important;
}
