/*
Theme Name: TIA Block Theme
Theme URI: 
Author: Yoko Co
Author URI: 
Description: A modern, custom theme from the team at Yoko Co.
Requires at least: 7.0
Tested up to: 7.0
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-tia-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 default effects ***************/
/****************************************************/

/* Button block */

.wp-block-button .wp-block-button__link {
	transform: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.wp-block-button:not(.is-style-icon) .wp-block-button__link:hover {
	transform: translate(0, 2px);
}
.wp-block-button.is-style-alt-fill .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--core-tint);
	background-color: var(--wp--preset--color--core-tint);
}
.wp-block-button.is-style-reverse-outline .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--contrast-border);
	background-color: var(--wp--preset--color--contrast-border);
}

/* Loginout block */

.wp-block-loginout.is-style-outline-button {
	transform: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.wp-block-loginout.is-style-outline-button:hover {
	border-color: var(--wp--preset--color--core-border);
	background-color: var(--wp--preset--color--core-border);
	transform: translate(0, 2px);
}

/* Card */

:is(.is-style-card, .is-style-reverse-card, :is-style-simple-card),
:is(.is-style-card, .is-style-reverse-card) .wp-block-outermost-icon-block .icon-container,
:is(.is-style-card, .is-style-reverse-card) .wp-block-outermost-icon-block svg path,
:is(.is-style-card, .is-style-reverse-card) .is-style-icon.wp-block-button .wp-block-button__link,
:is(.is-style-card, .is-style-reverse-card) .is-style-icon.wp-block-read-more,
.is-style-simple-card .wp-block-image,
.is-style-simple-card .wp-block-image img {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.is-style-card.is-linked:hover {
	background-color: var(--wp--preset--color--core-tint);
}
.has-core-tint-background-color .is-style-card.is-linked:hover {
	background-color: var(--wp--preset--color--core);
}
.is-style-card.is-linked:hover .wp-block-outermost-icon-block .icon-container.has-icon-color {
	color: var(--wp--preset--color--brand) !important;
}
.is-style-card.is-linked:hover .wp-block-outermost-icon-block .icon-container svg path[fill] {
	fill: var(--wp--preset--color--brand) !important;	
}
.is-style-card.is-linked:hover .wp-block-outermost-icon-block .icon-container svg path[stroke] {
	stroke: var(--wp--preset--color--brand) !important;	
}
.is-style-card.is-linked:hover .is-style-icon.wp-block-button .wp-block-button__link,
.is-style-card.is-linked:hover .is-style-icon.wp-block-read-more {
	border-color: var(--wp--preset--color--brand);
	background-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--contrast-heading);
}
.is-style-card.is-linked:hover .is-style-icon.wp-block-read-more::after {
	background-image: url('/wp-content/uploads/2026/07/icon-contrast-chevron.png');
}

.is-style-reverse-card.is-linked:hover {
	background-color: var(--wp--preset--color--contrast-tint);
}
.is-style-reverse-card.is-linked:hover .wp-block-outermost-icon-block .icon-container.has-icon-color {
	color: var(--wp--preset--color--core) !important;	
}
.is-style-reverse-card.is-linked:hover .wp-block-outermost-icon-block .icon-container svg path[fill] {
	fill: var(--wp--preset--color--core) !important;	
}
.is-style-reverse-card.is-linked:hover .wp-block-outermost-icon-block .icon-container svg path[stroke] {
	stroke: var(--wp--preset--color--core) !important;	
}

.is-style-reverse-card.is-linked:hover .is-style-icon.wp-block-read-more,
.is-style-reverse-card.is-linked:hover .is-style-icon.wp-block-button .wp-block-button__link {
	border-color: var(--wp--preset--color--core-heading);
	background-color: var(--wp--preset--color--core-tint);
	color: var(--wp--preset--color--core-heading);
}
.is-style-reverse-card.is-linked:hover .is-style-icon.wp-block-read-more::after {
	background-image: url('/wp-content/uploads/2026/07/icon-core-chevron.png');
}

.is-style-simple-card.is-linked:hover .wp-block-image img {
	transform: scale(1.1);
}

/* List Block */

:is(.is-style-alt, .is-style-reverse-alt).wp-block-list,
:is(.is-style-alt, .is-style-reverse-alt).wp-block-list > li,
:is(.is-style-alt, .is-style-reverse-alt).wp-block-list > li a {
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.wp-block-list.is-style-alt > li:has(a):hover {
	border-color: var(--wp--preset--color--brand);
}
.wp-block-list.is-style-alt > li a:hover {
	background-image: url('/wp-content/uploads/2026/07/icon-brand-arrow.png');
	color: var(--wp--preset--color--brand);
}
.wp-block-list.is-style-reverse-alt > li:has(a):hover {
	border-color: var(--wp--preset--color--contrast-heading);
}
.wp-block-list.is-style-reverse-alt > li a:hover {
	background-image: url('/wp-content/uploads/2026/07/icon-white-arrow.png');
	color: var(--wp--preset--color--contrast-heading);
}

/* Carousel Block */

.alt-style.wp-block-cb-carousel-v2 :is(.cb-button-prev, .cb-button-next) {
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
.alt-style.wp-block-cb-carousel-v2 :is(.cb-button-prev, .cb-button-next):hover {
	border: 1px solid var(--wp--preset--color--brand);
	background-color: var(--wp--preset--color--brand);
	color: var(--wp--preset--color--contrast-heading);
}
.has-contrast-background-color .alt-style.wp-block-cb-carousel-v2 :is(.cb-button-prev, .cb-button-next):hover {
	border: 1px solid var(--wp--preset--color--core);
	background-color: var(--wp--preset--color--core);
	color: var(--wp--preset--color--core-heading);
}

/****************************************************/
/********************** Header **********************/
/****************************************************/

@media (min-width: 992px) and (max-width: 1175px) {
	header .wp-block-navigation .wp-block-navigation-item.has-child .wp-block-navigation-item__content,
	header .wp-block-button .wp-block-button__link,
	header .wp-block-loginout.is-style-outline-button a {
		font-size: var(--wp--preset--font-size--body-small);
	}
	header .wp-block-button .wp-block-button__link,
	header .wp-block-loginout.is-style-outline-button a {
		padding: 10px;
	}
}

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

:root .wp-block-navigation > .wp-block-navigation-item.has-child  > .wp-block-navigation-item__content {
	padding-right: 24px;
}
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation__submenu-icon {
	margin-left: -18px;
	width: 8px;
	height: 8px;
}

:root .wp-block-navigation__submenu-container {
	border: 0px !important;
}
:root .wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content {
	border-radius: inherit;
	padding: 16px !important;
	text-decoration: none;
}
:root .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation__submenu-icon {
	background-color: transparent;
	margin-left: calc(-1 * var(--wp--preset--spacing--30));
	z-index: 1;
}

@media screen and (min-width: 993px) {
	:root .wp-block-navigation__submenu-container {
		background: var(--wp--preset--color--core);
		box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.08);	
	}
	:root .wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content {
	
	}
}

:root .wp-block-navigation .wp-block-navigation-item,
:root .wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content,
:root .wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-icon {
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
:root .wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-expanded="true"],
:root .wp-block-navigation > .wp-block-navigation-item:hover > .wp-block-navigation-item__content {
	text-decoration: underline;
	text-underline-offset: 2px;
}
:root .wp-block-navigation__submenu-container > .wp-block-navigation-item.current-menu-item,
:root .wp-block-navigation__submenu-container > .wp-block-navigation-item:hover {
	background-color: var(--wp--preset--color--brand);
}
:root .wp-block-navigation__submenu-container > .wp-block-navigation-item.current-menu-item > :is(.wp-block-navigation-item__content, .wp-block-navigation__submenu-icon),
:root .wp-block-navigation__submenu-container > .wp-block-navigation-item:hover > :is(.wp-block-navigation-item__content, .wp-block-navigation__submenu-icon) {
	color: var(--wp--preset--color--contrast-heading);
}

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

.main-nav.wp-block-navigation > .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding-top: 14px;
	padding-bottom: 14px;
}
@media screen and (max-width: 992px) {
	.main-nav.wp-block-navigation .wp-block-navigation-item {
		width: 100%;
	}
	.main-nav.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-icon {
		display: none;
	}
	.main-nav.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
		padding-left: var(--wp--preset--spacing--40);
		padding-right: var(--wp--preset--spacing--40);
	}
	.main-nav.wp-block-navigation > .wp-block-navigation-item:not(:last-child) .wp-block-navigation-item__content {
		border-bottom: 1px solid var(--wp--preset--color--core-border);
	}
}

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

@media screen and (max-width: 992px) {
	.mobile-nav {
		z-index: 1;
	}
	.mobile-nav .wp-block-navigation .wp-block-navigation-item {
		flex-wrap: wrap;
	}
	.mobile-nav .wp-block-navigation > .wp-block-navigation-item:has(.wp-block-navigation-submenu__content[aria-expanded="true"]) {
		row-gap: 0px;
		column-gap: 0px;
	}
	.mobile-nav .wp-block-navigation .wp-block-navigation-item.has-child .wp-block-navigation__submenu-container {
		position: relative;
		top: 0;
		left: 0;
		width: 100% !important;
	}
	.mobile-nav .wp-block-navigation .wp-block-navigation-item.has-child > .wp-block-navigation-item__content {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;
		flex-basis: 100%;
	}
	.mobile-nav .wp-block-navigation .wp-block-navigation-item.has-child > .wp-block-navigation-item__content::after {
		content: '';
		display: block;
		width: 8px;
		height: 8px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M7.976 1.14L3.988 4.558L0 1.14L0.976 0L3.988 2.582L7 0.0010004L7.976 1.14Z' fill='%234C505E'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
	}
	.mobile-nav .wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
	.mobile-nav .wp-block-navigation__submenu-container .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after {
		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='M15.9897 10.889L12.0017 14.307L8.01367 10.889L8.98967 9.74902L12.0017 12.331L15.0137 9.75002L15.9897 10.889Z' fill='%23FFF'/%3E%3C/svg%3E");
	}
	.mobile-nav .wp-block-navigation .wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content[aria-expanded="true"]::after {
		transform: rotate(180deg);
	}

	.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='%23002B51' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
		background-position: center;
		background-repeat: no-repeat;
		background-size: 24px;
		list-style-type: none;
		width: 24px;
		height: 24px;
		font-size: 0px;
	}
	.mobile-nav[open] 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 fill-rule='evenodd' clip-rule='evenodd' d='M5.46967 5.46967C5.76256 5.17678 6.23744 5.17678 6.53033 5.46967L12 10.9393L17.4697 5.46967C17.7626 5.17678 18.2374 5.17678 18.5303 5.46967C18.8232 5.76256 18.8232 6.23744 18.5303 6.53033L13.0607 12L18.5303 17.4697C18.8232 17.7626 18.8232 18.2374 18.5303 18.5303C18.2374 18.8232 17.7626 18.8232 17.4697 18.5303L12 13.0607L6.53033 18.5303C6.23744 18.8232 5.76256 18.8232 5.46967 18.5303C5.17678 18.2374 5.17678 17.7626 5.46967 17.4697L10.9393 12L5.46967 6.53033C5.17678 6.23744 5.17678 5.76256 5.46967 5.46967Z' fill='%23002B51'/%3E%3C/svg%3E");
	}
	.has-contrast-heading-color.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");
	}
	.has-contrast-heading-color.mobile-nav[open] 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 fill-rule='evenodd' clip-rule='evenodd' d='M5.46967 5.46967C5.76256 5.17678 6.23744 5.17678 6.53033 5.46967L12 10.9393L17.4697 5.46967C17.7626 5.17678 18.2374 5.17678 18.5303 5.46967C18.8232 5.76256 18.8232 6.23744 18.5303 6.53033L13.0607 12L18.5303 17.4697C18.8232 17.7626 18.8232 18.2374 18.5303 18.5303C18.2374 18.8232 17.7626 18.8232 17.4697 18.5303L12 13.0607L6.53033 18.5303C6.23744 18.8232 5.76256 18.8232 5.46967 18.5303C5.17678 18.2374 5.17678 17.7626 5.46967 17.4697L10.9393 12L5.46967 6.53033C5.17678 6.23744 5.17678 5.76256 5.46967 5.46967Z' fill='%23FFF'/%3E%3C/svg%3E");
	}
	:root .mobile-nav summary::before,
	:root .mobile-nav summary::after {
		display: none;
	}
	.mobile-nav-col {
		position: absolute;
		left: 0;
		width: 100%;
	}
	.mobile-nav-col:has(.wp-block-navigation-submenu__toggle[aria-expanded="true"]) {
		overflow: scroll;
		height: 80vh;
	}
}	

/****************************************************/
/******************** Link (a) **********************/
/****************************************************/

a:where(:not(.wp-element-button)) {
	text-underline-offset: 2px;
}

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

/* Full height */

.full-height {
	height: 100%;
}