/*
Theme Name: Yoko NMFTA FFPH
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-nmfta-ffph
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 {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.wp-block-button .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--contrast);
	background-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--contrast-heading);
	padding-top: calc(var(--wp--preset--spacing--30) - 2px);
	padding-bottom: calc(var(--wp--preset--spacing--30) + 2px);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-reverse-outline .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--brand);
	background-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--contrast-heading);
}

.wp-block-list.is-style-alt > li:hover a {
	text-decoration: underline;
}

.wp-block-group.is-style-card,
.wp-block-group.is-simple-card,
.wp-block-group.is-style-card .wp-block-outermost-icon-block,
.wp-block-cover.is-style-photo-card .wp-block-cover__image-background,
.wp-block-cover.is-style-photo-card .wp-block-cover__background,
.wp-block-group.is-style-simple-card .is-style-card-title,
.wp-block-group.is-style-simple-card img,
.wp-block-group.is-style-outline-card,
.wp-block-group.is-style-outline-card .is-style-card-title,
.wp-block-group.is-style-outline-card p,
.wp-block-group.is-style-outline-card .wp-block-outermost-icon-block {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.wp-block-group.is-style-card.is-linked:hover {
	padding-top: var(--wp--preset--spacing--50);
	background-color: var(--wp--preset--color--brand) !important;
	gap: calc(var(--wp--preset--spacing--60) + (var(--wp--preset--spacing--60) - var(--wp--preset--spacing--50)));
}
.wp-block-group.is-style-card.is-linked:hover > .wp-block-outermost-icon-block:last-child {
	margin-right: -10px;
}
.wp-block-group.is-style-card.is-linked:hover :is(.is-style-card-title, p, ul, .wp-block-list, .wp-block-outermost-icon-block .icon-container:not(.has-no-icon-fill-color) svg) {
	color: var(--wp--preset--color--core-tint);
}
body .wp-block-group.is-style-card.is-linked:hover .wp-block-yuky-block-icons-google .material-symbols-outlined {
	color: var(--wp--preset--color--core-tint) !important;
}
.wp-block-group.is-style-card.is-linked:hover .wp-block-outermost-icon-block .icon-container.has-no-icon-fill-color path {
	stroke: var(--wp--preset--color--core-tint);
}
.wp-block-cover.is-style-photo-card:has(.is-linked):hover .wp-block-cover__image-background {
	transform: scale(1.2);
}
.wp-block-cover.is-style-photo-card:has(.is-linked):hover .wp-block-cover__background {
	opacity: 0.9;
}
.wp-block-group.is-style-simple-card.is-linked:hover .is-style-card-title {
	color: var(--wp--preset--color--accent);
}
.wp-block-group.is-style-simple-card.is-linked:hover img {
	transform: scale(1.1);
}
.wp-block-group.is-style-outline-card.is-linked:hover {
	border-color: var(--wp--preset--color--accent);
	background-color: var(--wp--preset--color--brand);
}
.wp-block-group.is-style-outline-card.is-linked:hover .is-style-card-title {
	color: var(--wp--preset--color--contrast-heading);
}
.wp-block-group.is-style-outline-card.is-linked:hover :is(p, ul) {
	color: var(--wp--preset--color--contrast-text);
}
.wp-block-group.is-style-outline-card.is-linked:hover :is(.wp-block-list, .wp-block-outermost-icon-block .icon-container:not(.has-no-icon-fill-color) svg) {
	color: var(--wp--preset--color--core);
}

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

.wp-block-navigation > .wp-block-navigation-item::before {
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
}
@media screen and (min-width: 993px) {
	.wp-block-navigation > .wp-block-navigation-item:hover:not(.is-highlighted),
	.wp-block-navigation > .wp-block-navigation-item.has-mega-menu-focused:not(.is-highlighted) {
		color: var(--wp--preset--color--contrast-heading) !important;
	}
	.wp-block-navigation > .wp-block-navigation-item:hover:not(.is-highlighted)::before,
 	.wp-block-navigation > .wp-block-navigation-item.has-mega-menu-focused:not(.is-highlighted)::before {
		opacity: 1;
	}
}
@media (max-width: 1400px) and (min-width: 993px) {
	.wp-block-navigation.items-justified-space-between > li.has-child:nth-last-child(2) .wp-block-navigation__submenu-container {
		left: auto;
		right: 0;
	}
	.wp-block-navigation.items-justified-space-between > li.has-child:nth-last-child(2) > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
		right: 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);
}