/*
Theme Name: Fuel6
Theme URI: https://fuelmedical.com
Author: Fuel Medical
Description: A Fuel Medical block theme (2024)
Requires at least: 6.5
Tested up to: 6.8.1
Requires PHP: 8.0
Version: 6.4.0
Text Domain: fuel6
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Fuel Normalize
# Helper Classes
# WordPress Blocks
# Header
# Content
# Footer
# Interactive Map
# Contact Section
# Animations
# Print
# Safari 15.3 fallbacks
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Custom Properties
  Note: WordPress declares its variables in the body, so do the same to avoid scope issues.
--------------------------------------------------------------*/

body {
	/* Structure - 1100px - for use outside of contain class */
	--contain-padding: clamp(1rem, calc(50vw - 29.93rem), 19rem);

	/* Design - Change in theme.json */
	--primary-color: var(--wp--preset--color--primary);
	--accent-color: var(--wp--preset--color--accent);
	--white: var(--wp--preset--color--white);
	--grey: var(--wp--preset--color--grey);
	--ltgrey: var(--wp--preset--color--ltgrey);
	--black: var(--wp--preset--color--black);
	--ninety-pct-white: var(--wp--preset--color--ninety-pct-white);
	--primary-transparent: var(--wp--preset--color--primary-transparent);
	--primary-transparent-2: var(--wp--preset--color--primary-transparent-2);

	/* Top Level Primary Menu Colors - now managed on the block level */
	--wp--preset--color--menu-background: inherit;
	--wp--preset--color--menu-color: var(--white);
	--wp--preset--color--menu-hover-color: var(--white);
	--wp--preset--color--menu-hover-bg: var(--wp--preset--color--color-2);

	/* Sub Menu Colors */
	--wp--preset--color--sub-menu-background: var(--white);
	--wp--preset--color--sub-menu-color: var(--primary-color);
	--wp--preset--color--sub-menu-hover-color: var(--primary-color);
	--wp--preset--color--sub-menu-hover-bg: var(--wp--preset--color--color-3);

	/* Text */
	--title-font: var(--wp--preset--font-family--title);
	--title-color: var(--primary-color);

	--content-font: var(--wp--preset--font-family--content), sans-serif;
	--content-color: var(--wp--preset--color--content);
}


/*--------------------------------------------------------------
# Fuel Normalize
--------------------------------------------------------------*/
*, *::before, *::after { box-sizing: border-box; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html { font-size: clamp(125%, 1vw, 240%); line-height: 1.5; -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scrollbar-gutter: stable; min-width: 15rem; }
iframe, img, svg, audio, video, embed {vertical-align: middle;max-width: 100%;}
img {/* object-fit: cover; */}
img:not([src*=".png"], [src*=".gif"], [src*=".svg"]) { background: var(--grey); }
a, button {text-decoration: none;color: var(--accent-color);transition: color 300ms ease, background-color 300ms ease;}
a[href^="tel:"] { white-space: nowrap; }
a:hover { color: var(--primary-color); }
[hidden] { display: none; }

@media only screen and (min-width: 68.5em) {
	*[id] { scroll-margin-top: 3rem; }
}


/*--------------------------------------------------------------
# Helper Classes
--------------------------------------------------------------*/
.contain { --contain-padding: clamp(var(--mobile-padding, 1rem), calc(50vw - 29.93rem), var(--desktop-padding, 19rem)); display: block; position: relative; margin: auto; padding-right: var(--contain-padding); padding-left: var(--contain-padding); width: 100%; }
.icon-item { display: block; position: relative; margin: 1em 0; padding: 0 0 0 1.8em; }
.icon-item svg {position: absolute;top: 0.15em;left: 0;width: 1.2em;height: 1.2em;}

@media (min-width: 68.5em) { 
	.mobile-only { display: none !important; }
}

@media (max-width: 68.49em) { 
	.desktop-only { display: none !important; }
	body { --center-on-mobile: center; }
	.text-center-on-mobile { text-align: var(--center-on-mobile); }
	.center-on-mobile { justify-content: var(--center-on-mobile); }
}

.zebra > *:not(tbody):nth-child(odd) { background-color: var(--zebra, var(--grey)); }

/* Use on query loops to help change the order every other column */ 
.stagger > :nth-child(odd) .wp-block-columns { flex-direction: row-reverse; }

/* Use to make link fill entire block - use when you can't wrap blocks with anchor tag */ 
.cover-link {position: absolute !important;inset: 0;width: 100%;z-index: 1;background: none !important;transition: 1200ms ease;}
:has(> .cover-link) { position: relative; }


/*--------------------------------------------------------------
# WordPress Blocks
--------------------------------------------------------------*/
@media (min-width: 37.5em) {
	:where(.alignleft, .alignright):not(.wp-block-query .wp-block-post-featured-image) { max-width: 48%; }
}

@media (min-width: 68.5em) {
	.is-position-sticky { top: 4rem; }
}

/* Button hover/focus styles */
.wp-element-button, .wp-block-button__link { position: relative; }
.wp-element-button:before, .wp-block-button__link:before {content: '';width: 0.3rem;height: 0.55rem;position: absolute;inset: 0 1.1rem 0 auto;z-index: 1;margin: auto;background-image: url('data:image/svg+xml,<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 5.5L-3.98811e-09 11L4.76837e-07 -2.62268e-07L6 5.5Z" fill="%234A4A4A"/></svg>');}
:root :where(.wp-element-button, .wp-block-button__link):is(:hover, :focus-visible) {background-color: var(--white);color: var(--content-color);}

/* Button, is Outline */
.wp-block-button.is-style-outline .wp-element-button {background: none;color: var(--accent-color);border-width: 1px;padding-top: 0.75rem;padding-right: 1.9rem;padding-bottom: 0.75rem;padding-left: 1.2rem;}
.wp-block-button.is-style-outline .wp-element-button:before {transition: 300ms ease;background-image: url('data:image/svg+xml,<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 5.5L-3.98811e-09 11L4.76837e-07 -2.62268e-07L6 5.5Z" fill="%23efe6c7"/></svg>');}
.wp-block-button.is-style-outline .wp-element-button:is(:hover, :focus-visible) { background: var(--accent-color); color: var(--primary-color); }
.wp-block-button.is-style-outline .wp-element-button:is(:hover, :focus-visible):before { background-image: url('data:image/svg+xml,<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 5.5L-3.98811e-09 11L4.76837e-07 -2.62268e-07L6 5.5Z" fill="%23204c6e"/></svg>'); }

@media (max-width: 68.49em) {
	.entry-content .wp-block-buttons {justify-content: var(--center-on-mobile); /* Center buttons on mobile but not in menu */}
}

/* Search block */
@media (max-width: 68.49em) {
	.wp-block-search {--search-white: var(--white);--search-button-bg: var(--primary-color);}
}

.wp-block-search__input {padding-left: 1rem;border-color: var(--search-white, currentColor);color: var(--search-white, currentColor);background: none;outline: 0;}
.wp-block-search__button {margin-left: -0.1rem;border-top-left-radius: 0 !important;border-bottom-left-radius: 0 !important;background: var(--search-white, var(--accent-color));color: var(--search-button-bg, white);border-color: var(--search-white, var(--accent-color));}
.wp-block-search__button:is(:hover, :focus-visible) {background: var(--search-button-bg, var(--white));color: var(--search-white, var(--accent-color));}


/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
@media (max-width: 68.49em) {
	.header {position: relative;z-index: 998;}
	.hdr-top-menu-container { display: none; }
	.hdr-columns { padding-top: 0; padding-bottom: 0; }
}

@media (min-width: 68.5em) {
	.header:not(.block-editor-block-list__block) {position: relative;top: 0;z-index: 1;border-bottom: 1px solid var(--primary-color);}
	.hdr-columns { padding-top: 0.3rem; padding-bottom: 0.3rem; }
}

.header-logo svg, .footer-logo svg {transition: transform 0.3s ease;}
.header-logo a:is(:hover, :focus-visible) svg, .footer-logo:is(:hover, :focus-visible) svg {transform: scale(1.05);}
.header-quicklinks a {color: var(--white);position: relative;}
.header-quicklinks a:is(:hover, :focus-visible) {color: var(--primary-color);}
.header-quicklinks a:before {content: '';background: var(--accent-color);position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 0;transform: scale(1, 0);transform-origin: bottom;transition: 300ms ease;}
.header-quicklinks a:is(:hover, :focus-visible):before { transform: scale(1,1); }
.header-quicklinks a svg, .header-quicklinks a p { z-index: 1; } 
.header-quicklinks a svg path { transition: 300ms ease; }
.header-quicklinks a:is(:hover, :focus-visible) svg path { fill: var(--primary-color); }

/* Phone Drop Down */
@media (max-width: 68.49em) {
	.dialog-content-wrapper {
		background: var(--primary-color);	
		.phone-tree {display: flex;flex-wrap: wrap; gap: 0.8rem 1.7rem;}
		.phone-tree-number {
			background: rgba(0,0,0,0.1);padding: 0.5rem 1rem;width: 100%;max-width: calc((100% / 3) - 1.15rem);
			strong {font-size: 1rem;display: block;color: var(--white);}
			.phone-number { color: var(--accent-color); font-size: 0.9rem;}
		}
	}
}

@media (min-width: 68.5em) {
	.dialog-content-wrapper { 
		background: var(--primary-color);max-width: 60rem;
		.close-dialog:is(:hover, :focus-visible) {border-bottom: 2px solid var(--white);border-left: 2px solid var(--white);background-color: red;color: var(--white);}
		.phone-tree {display: flex;flex-wrap: wrap; gap: 0.8rem 1.7rem;}
		.phone-tree-number {
			background: rgba(0,0,0,0.1);padding: 0.5rem 1rem;width: 100%;max-width: calc((100% / 3) - 1.15rem);
			strong {font-size: 1rem;display: block;color: var(--white);}
			.phone-number { color: var(--accent-color); font-size: 0.9rem;}
		}
	}
}


/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.wp-block-template-part {margin: 0;}
#main {margin: 0;font-size: var(--wp--preset--font-size--content);}
.entry-content .wp-block-list li {margin: 1em 0 0 0;}
.entry-content .wp-block-list li::marker {color: var(--wp--preset--color--primary);}

/* Titles, Underlined */
.underlined-title {color: var(--primary-color);margin-bottom: clamp(1.6rem, 4.8vw, 2.6rem);position: relative;}
.underlined-title:after {content: '';height: 1px;width: 1.5rem;background: var(--primary-color);position: absolute;right: 0;bottom: -0.45rem;left: 0;margin: auto;} 
.underlined-title.underlined-title-left:after { right: auto; }

@media (min-width: 68.5em) {
	.underlined-title:after { width: 2rem; bottom: -0.65rem; }
}

/* Location card loop - Used in content, and menu */
/* If a grid has only one column, make it full width */
.location-cta .wp-block-post-template.is-layout-grid:not(:has(li:nth-child(2))) {grid-template-columns: 1fr;}

/* If a grid has three columns, make it flex */
.location-cta .wp-block-post-template.is-layout-grid:has(li:nth-child(3)) {
	display: flex;flex-wrap: wrap;
	& .wp-block-post {flex: 1 1 15rem;}
}

.location-card svg {vertical-align: bottom;}

.sub-menu .location-card {
	background: none !important;padding-top: 0 !important;
	& .wp-block-post-title {padding-bottom: 0.5rem;font-size: var(--wp--preset--font-size--content);font-family: var(--content-font);font-weight: bold;}
	& > .wp-block-group:first-of-type {margin-top: 1.3rem;}
}

@media (max-width: 68.49em) {
	.sub-menu { 
		& .location-cta svg {color: var(--white);}
		& .location h3 {margin-left: -1rem !important;width: calc(100% + 2rem);}
	}
}

/* Bio grid custom loop */
.bio-list-container .wp-block-heading { margin-bottom: 2.6rem; }
.bio-list-container .wp-block-heading:not(:first-of-type) { margin-top: 3.2rem; }
.bio-list { display: flex; flex-wrap: wrap; gap: 1rem; }
.bio-list .bio-box {display: grid;grid-template-areas:"img label";justify-content: start;}
.bio-list .bio-image {grid-area: img;width: 5rem;height: 5rem;margin-right: 0.75rem;overflow: hidden;}
.bio-list img {width: 100%;height: 100%; transition: 300ms ease;}
.bio-list .bio-label {grid-area: label;line-height: normal;display: flex;flex-wrap: wrap;align-content: center;color: var(--primary-color);gap: 0.8rem;}
.bio-list .bio-label span {flex: 1 1 100%;}
.bio-list .bio-name {font-size: 0.9rem;}
.bio-list .bio-cred {font-size: 0.7rem;}
.bio-label-svg {background: var(--primary-transparent-2);position: absolute;inset: 0 0 0 auto;width: 1.1rem;display: flex;justify-content: center;align-items: center;margin: 0;transition: 300ms ease;}
.bio-label-svg svg path {transition: 300ms ease;}
#main .bio-list .bio-box {padding: 0 1.2rem 0 0;width: calc(100% + 2rem);background: rgba(0, 0, 0, 0.1);}
.sub-menu .bio-list .bio-box:not(:hover, :focus-visible):nth-child(even) {background: rgba(255, 255, 255, 0.1);}
.sub-menu .bio-list .bio-box.bio-box {padding: 0.2rem 1rem;}

/* Hover State */
.bio-box:is(:hover, :focus-visible) {
	.bio-image img { transform: scale(1.2); }
	.bio-label-svg { background: var(--primary-color); }
	.bio-label-svg svg path { stroke: var(--accent-color); }
}

@media (min-width: 50em) { /* 800px */
	.bio-list {justify-content: flex-start;gap: 1.5rem 1.5rem;}
	#main .bio-list .bio-box {}
}

@media (min-width: 68.5em) {
	.bio-list {justify-content: flex-start;gap: 1.5rem;}
	#main .bio-list .bio-box {max-width: calc((100% / 3) - 1rem);}
	.bio-list .bio-name {font-size: 1rem;position: relative;}
	.bio-list .bio-name:after {content: '';width: 1.6rem;height: 1px;position: absolute;inset: auto 0 -0.35rem -0.4rem;background-color: var(--primary-color);}
	.bio-list .bio-cred {font-size: 0.8rem;}
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer-background {padding-top: 1.2rem !important;position: relative;}
.foot-content-container {padding-right: 1rem;padding-left: 1rem;margin-top: 0;}
.footer a {display: block;width: fit-content;background: linear-gradient(0deg, var(--white), var(--white)) no-repeat 0 bottom / 0 2px;transition: background-size 350ms;}
.footer a.icon-item {background-position-x: 1.6rem;}
.footer a:not(.footer-logo):is(:hover, :focus-visible) {background-size: 100% 2px;color: var(--white);}
.footer-socials a {transition: transform 0.3s ease;font-size: 1.2rem;}
.footer-socials a:is(:hover, :focus) {background: none;transform: scale(1.2);}
.footer-col-title { margin-bottom: 2rem; position: relative; }
.footer-col-title:after {content: '';height: 1px;width: 2rem;background: var(--white);position: absolute;right: auto;bottom: -0.8rem;left: 0;margin: auto;}
.footer .location-list-names a {position: relative;margin-bottom: 0.5rem;margin-left: 1rem;}
.footer .location-list-names a:before {content: '';width: 0.3rem;height: 0.3rem;background: var(--accent-color);position: absolute;inset: 0 auto 0 -1rem;margin: auto;}
.bg-footer-logo {position: absolute;bottom: 0;left: 0;z-index: 0;width: 60%;max-width: 28.4rem;height: fit-content;}

@media (min-width: 37.5em) { /* 600px */
	.footer .location-list-names { column-count: 2; }
}

@media (min-width: 68.5em) {
	.footer-background { padding-top: 3.2rem !important; }
	#foot_content { gap: 0 3rem; }
	#menu-footer li a {margin-bottom: 0.5rem;}
}

@media (min-width: 82.5em) {
	#foot_content { max-width: 60rem; gap: 0 5.6rem; }
	.foot-content-container { padding-right: 0; padding-left: 0; } 
}


/* 850px - Mobile breakpoint for copyright section */
@media only screen and (max-width: 53.125em) {
	.copyright-wrapper {flex-direction: column;text-align: center;}
	.policy-menu {justify-content: center;}
}

/* Policy menu */
.policy-menu li:nth-child(n+1):not(:last-child)::before {content: '|';position: absolute;right: -0.6rem;}

@media (min-width: 82.5em) {
	.copyright-wrapper { max-width: 60rem; }
}


/*--------------------------------------------------------------
# Interactive Map
--------------------------------------------------------------*/
.wp-block-fuel-interactive-map {height: 33.2rem;border: 1px solid var(--primary-color);position: relative;}
.wp-block-fuel-interactive-map:before {content: '';width: 1.2rem;height: 1.2rem;position: absolute;top: -0.45rem;left: -0.45rem;border-top: 2px solid var(--primary-color);border-left: 2px solid var(--primary-color);}
.wp-block-fuel-interactive-map:after {content: '';width: 1.2rem;height: 1.2rem;position: absolute;right: -0.45rem;bottom: -0.45rem;border-right: 2px solid var(--primary-color);border-bottom: 2px solid var(--primary-color);}
.wp-block-fuel-interactive-map details { border: none !important; }
.map-nav-item {height: calc(100% / 14);display: flex;border: none;}
.map-nav-item:nth-child(odd) { background: linear-gradient(90deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.00) 100%); }
.map-nav-item-btn { padding: 0rem 1.5rem; }
.map-filter-panel summary:after {clip-path: unset;width: 1.2rem;height: 1.2rem;background-color: transparent;background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="%23EFE6C7"/><path d="M7 12H17" stroke="%23204C6E" stroke-width="1.5" stroke-linecap="square" stroke-linejoin="round"/><path d="M12 7V17" stroke="%23204C6E" stroke-width="1.5" stroke-linecap="square" stroke-linejoin="round"/></svg>');transition: 300ms ease;}
.map-filter-panel summary:is(:hover, :focus-visible):after, 
.map-filter-panel[open] summary:after {background-color: transparent !important;clip-path: unset;background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="white"/><path d="M7 12H17" stroke="%23204C6E" stroke-width="1.5" stroke-linecap="square" stroke-linejoin="round"/></svg>');}

.map-back {
    color: var(--primary-color);
    svg path { fill: var(--primary-color); transition: 300ms ease; }

    &:is(:hover,:focus-visible) { 
        color: var(--accent-color);
    	svg path { fill: var(--accent-color); }
    }
}

.map-mobile-view-bar {
    color: var(--primary-color);
    &:is(:hover,:focus-visible) { 
        color: var(--accent-color);
    }
}

.map-quick-links {
	background: rgba(255,255,255,0.1);
	a:is(:hover,:focus-visible) svg {color: var(--white);}
}

.map-loc-info .provider-list {
	&>a:is(:hover,:focus-visible) {
		background: var(--accent-color); text-decoration: none;	 
		.bio-label { color: var(--primary-color) !important; text-decoration: none; }
	}
}

.map-loc-footer {
	margin-bottom: 2rem;
	.button { background-color: var(--wp--preset--color--accent); border-radius: 0px; margin-bottom: 10rem; border-color: var(--wp--preset--color--accent); border-width: 1px; border-style: solid; color: var(--wp--preset--color--content); font-family: inherit; font-size: inherit; font-weight: 700; line-height: normal; padding-top: 0.75rem; padding-right: 1.9rem; padding-bottom: 0.75rem; padding-left: 1.2rem; text-decoration: none; position: relative; }
	.button:before { content: '';width: 0.3rem;height: 0.55rem;position: absolute;inset: 0 1.1rem 0 auto;z-index: 1;margin: auto;background-image: url('data:image/svg+xml,<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 5.5L-3.98811e-09 11L4.76837e-07 -2.62268e-07L6 5.5Z" fill="%234A4A4A"/></svg>'); }
	.button:is(:hover, :focus-visible) { background-color: var(--white);color: var(--content-color); }
}

@media (min-width: 68.5em) {
	.wp-block-fuel-interactive-map:before {width: 2rem;height: 2rem;top: -1.25rem;left: -1.25rem;}
	.wp-block-fuel-interactive-map:after {width: 2rem;height: 2rem;right: -1.25rem;bottom: -1.25rem;}
}


/*--------------------------------------------------------------
# Contact Section
--------------------------------------------------------------*/
#contact_section { padding-top: 3.2rem; padding-bottom: 3.6rem; }
.contact-section-columns {max-width: none;gap: 3.9rem 0;}
.contact-section-col-left, .contact-section-col-right {max-width: 20rem;position: relative;font-size: clamp(0.9rem, 1.9vw, 1rem);margin: 0 auto !important;}
.contact-section-col-left:before {content: '';height: 1px;width: 50vw;background: var(--primary-color);position: absolute;right: calc(50vw - 5rem);bottom: -1.5rem;}
.contact-section-col-left:after {content: '';height: 0.35rem;width: 0.35rem;background: var(--primary-color);position: absolute;right: calc(50vw - 5.3rem);bottom: -1.65rem;}

@media (min-width: 48.875em) { /* 782px */
	#contact_section {padding-top: 8.7rem;padding-bottom: 8.7rem;}
	#contact_section:before {content: '';width: 0.35rem;height: 0.35rem;background: var(--primary-color);position: absolute;top: 6.8rem;right: 0;left: 0;z-index: 1;margin: auto;}
	#contact_section:after {content: '';width: 1px;background: var(--primary-color);position: absolute;top: 6.8rem;bottom: 6.8rem;right: 0;left: 0;margin: auto;}
	.contact-section-columns {gap: 0 3rem;max-width: 52rem;}
	.contact-section-col-left, .contact-section-col-right {margin: 0 !important;}
	.contact-section-col-left:before, .contact-section-col-left:after { display: none;}	
	.contact-section-col-right .gform_wrapper.gravity-theme .gform_footer {padding: 1.6rem 0 0;margin: 0;}
	.contact-section-col-right .gform_wrapper.gravity-theme .gform_footer button { margin: 0; }
}

@media (min-width: 58.5em) {
	.contact-section-columns {gap: 0; justify-content: space-between;}
}

@media (min-width: 68.5em) {
	.contact-section-columns {/* gap: 0 5.6rem; */}
	.contact-section-col-left, .contact-section-col-right { padding: 0; }
}


/*--------------------------------------------------------------
# Animations
--------------------------------------------------------------*/
@keyframes spin {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(var(--spin-rotation, 360deg));}
}

@keyframes fadein {
	0% {opacity: var(--o1, 0);transform: translate(var(--x1, 0), var(--y1, 5rem));}
	100% {opacity: var(--o2, 1);transform: translate(var(--x2, 0), var(--y2, 0));}
}

@keyframes fadeout {
	0% {opacity: var(--o2, 1);transform: translate(var(--x2, 0), var(--y2, 0));}
	100% {opacity: var(--o1, 0);transform: translate(var(--x1, 0), var(--y1, 5rem));}
}

@keyframes point {
	0% {transform: translate(0, 0);}
	50% {transform: translate(var(--x, 1rem), var(--y, 0));}
	100% {transform: translate(0, 0);}
}

/* popAnimation Example: https://jsfiddle.net/KTC_88/8xkLv520/ */
@keyframes popAnimation {
	0% {transform: scale(0.5);opacity: 0;}
	80% {transform: scale(1.1);}
	100% {transform: scale(1);opacity: 1;}
}


/**
* Animation helper classes.
*/

@media (prefers-reduced-motion:no-preference) {

	/* Add to wrappers to animate children */
	.popin>* {transform: scale(0.5);opacity: 0;}
	body:not(.js-active) .js-intersect.popin>*, /* NO JS */ .popin.js-intersected>* {--delay: calc(var(--i, 0) * 200ms);animation: popAnimation 400ms ease var(--delay) forwards; }
	.fadein-items>* {opacity: 0;transform: translateY(0);}
	body:not(.js-active) .js-intersect.fadein-items>*, /* NO JS */.fadein-items.js-intersected>* {--delay: calc(var(--i, 0) * 200ms);animation: fadein var(--time, 400ms) ease var(--delay) forwards;}

	/* Add directly to element that will be affected */
	.fadein {opacity: 0;transform: translateY(0);--y1: 0;}
	.fadeup {opacity: 0;transform: translateY(5rem);}
	.fadedown {opacity: 0;transform: translateY(-5rem);--y1: -5rem;}
	.fadeleft {opacity: 0;transform: translateX(-5rem);--x1: -5rem;--y1: 0;}
	.faderight {opacity: 0;transform: translateX(5rem);--x1: 5rem;--y1: 0;}
	body:not(.js-active) .js-intersect:is(.fadein, .fadeup, .fadedown, .fadeleft, .faderight), /* NO JS */.js-intersected:is(.fadein, .fadeup, .fadedown, .fadeleft, .faderight) {animation: fadein var(--time, 300ms) var(--easing, ease) var(--delay, 0s) forwards}
}

/* Used to make images in links grow when link is hovered - simply add .hover-img-grow to link or image block */
figure.hover-img-grow, .hover-img-grow figure {overflow: hidden; }
.hover-img-grow img {transition: transform var(--time, 0.3s);}
a:has(+ .hover-img-grow):is(:hover, :focus-visible)+figure img, a:has(.hover-img-grow):is(:hover, :focus-visible) img, a.hover-img-grow:is(:hover, :focus-visible) img {transform: scale(var(--scale, 1.1));}


/*--------------------------------------------------------------
# Print
--------------------------------------------------------------*/
@media print {
	* {
	background: transparent !important;color: initial !important;--wp--preset--color--white: initial !important;}
	.main-header {all: unset;}
	.main-title {margin: 1rem auto !important;padding-bottom: 1rem;border-bottom: 2px solid #000;}
	nav, #sidebar, .header, .footer, .pagination, .wp-prev-next, .main-header img, .wp-block-cover__image-background, .wp-block-cover__background, main + * {display: none !important;}
}


/*--------------------------------------------------------------
# Safari 15.3 fallbacks
  Safari 15.3 and under bug fixes - welcome to the new IE
--------------------------------------------------------------*/
@media not all and (min-resolution: 0.001dpcm) {
	@supports (-webkit-appearance: none) {
		
		/* Hide Dialog (not supported) */
		dialog { display: none;background-color: var(--white);z-index: 9999;}
		dialog[open] {display: block;}

		/* menu fixes */
		.js-active .sub-menu-trigger[aria-expanded=true]+.sub-menu .sub-animate>* {background: var(--white);}
		.primary-menu .menu-label:hover {color: var(--white);}
	}
}

/* 
* iPhone bug fix for buttons
* https://www.notion.so/fueldigital/iPhone-button-contrast-fix-47918141a741472fbc1fba3aa5919ca4 
*/

@supports (-webkit-touch-callout: none) {
	.entry-content a.wp-block-button__link { transition: none;}
}













