/*
Theme Name: Felt 2025 Child Starter
Theme URI: 
Author: 
Author URI: 
Description: 
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: felt-2025-child-starter
Tags: 
*/


:root {
	--primary-color: #fff;
	--secondary-color: #000000;
	--body-text-color: #5E5E5E;
	--link-color: #5e789e;
	--gray-dark-bg: #767676;
	--medium-gray: #EEEEEE;
	--light-gray: #F7F7F7;
}

/* This will fix older pre FSE color selection methods */

.has-theme-primary-color { color: var(--primary-color)}
.has-theme-primary-background-color { background-color: var(--primary-color) }
.has-theme-secondary-color { color: var(--secondary-color)}
.has-theme-secondary-background-color { background-color: var(--secondary-color) }


html {
  scroll-behavior: smooth;
}

/*
:where(.wp-site-blocks :focus) {
  outline-width: 1px!important;
  outline-style: solid;
  outline-color: #dadada;
  outline-offset: 10px!important;
}
*/
:focus {outline:none;}
:root :where(.wp-element-button:focus, .wp-block-button__link:focus),
:focus-visible {
  /*box-shadow: 0 0 8px 4px rgba(0, 150, 204, .5);*/
  outline-offset: 8px!important;
  outline-width: 1px!important;
  outline-style: solid;
  outline-color: var(--link-color)!important;
  border-radius:100px;
	z-index:99999;
}
:focus-visible {border-radius:8px;}

:root :where(.wp-block-search .wp-block-search__input) {
  border-color: var(--wp--preset--color--accent-3);
}
/*
:root :where(.wp-block-list li) {
  color: var(--body-text-color);
}
*/
:root :where(.wp-block-group.is-style-section-2--2) {
	background-color: unset!important;
	color: var(--body-text-color)!important;
}

/*******
 *
 *
 * Twenty Twenty-five Style Overrides
 * - Styles above can be used across multiple sites
 *
 *
********/

/* Change the breakpoint */
body .wp-block-navigation__responsive-container-open:not(.always-shown) {
display: block !important;
}
body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
display: none !important;
}

@media (min-width: 1024px) {
	body .wp-block-navigation__responsive-container-open:not(.always-shown) {
	display: none !important;
	}

	body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
	display: block !important;
	}
}

/*
body:not(.page-template-wp-custom-template-landing-page) main:not(.block-editor-block-list__block) {
  margin-top: 170px !important;
}
body.home main:not(.block-editor-block-list__block) {
 margin-top: 154px !important;
}
*/

/* Account for breadcrumbs */
/*
body:not(.home) main:not(.block-editor-block-list__block) {
 margin-top: 192px !important;
}
*/

/* Header */
header {
/*position: fixed;*/
position: sticky;
top: 0px;
z-index: 999;
width: 100vw;
background: #fff;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
}

header .wp-block-site-logo.is-default-size img {
  width: 220px;
  height: 94px;
}

/* Desktop Menu */
header .current-menu-item {color: var(--link-color)}

@media only screen and (min-width: 1024px) {

header .wp-block-site-logo.is-default-size img {
  width: 280px;
  height: 113px;
}

header .wp-block-navigation .has-child .wp-block-navigation__submenu-container {
	transition: opacity .25s linear;
}
/*
header .wp-block-navigation .wp-block-navigation-item:not(:last-child):hover a {
  	top: -1px;
	position: relative;
}
*/
header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:last-child a {
border: 2px solid var(--link-color);
    border-radius: 4px;
    /*padding: 16px 20px 14px 20px;*/
	padding: 12px 16px 10px 16px;
    color: var(--link-color);
	top: -2px;
    position: relative;
	border-radius: 40px;
}

header .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:last-child a:hover {
    border: 2px solid var(--link-color);
    background: var(--link-color);
    color: #ffffff;
	transition: background 0.3s ease;
}
/*
header .wp-block-navigation .wp-block-navigation-item.current-menu-item:last-child a {
	border-top: 1px solid var(--primary-color) !important;
    background: var(--primary-color);
    color: #ffffff;
}

header .wp-block-navigation > .wp-block-navigation-item:not(:last-child):hover {
    border-top: 2px solid var(--primary-color) !important;
    color: var(--primary-color);
}

header .wp-block-navigation .wp-block-navigation-item.current-menu-item:not(:last-child) {
    border-top: 2px solid var(--primary-color) !important;
    color: var(--primary-color);
  }

header .wp-block-navigation .wp-block-navigation-item.current-menu-item:not(:last-child) a {
  top: -1px;
  position: relative;
}
*/
header .wp-block-navigation .wp-block-navigation__submenu-icon svg	{margin-top: -1px !important;}
/*header .wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg {margin-top: -1px !important;}*/
header .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-icon svg {transform: rotate(-180deg);}

header .wp-block-navigation > .wp-block-navigation-item {
padding:10px 6px 10px 6px;
}
header .wp-block-navigation .wp-block-navigation-item a {
text-decoration: none;
font-size: 13px !important;
text-transform: uppercase;
letter-spacing: .1em;
}

header ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
  background: #fff!important;
  color: var(--secondary-color)!important;
}
header ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li {
  padding: 6px 8px;
	min-width: 250px;
}
header.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content.wp-block-navigation-item__content {
  text-transform: uppercase !important;
}
header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a {
  font-size: 16px !important;
  text-transform: none;
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
   left: 100%!important;
   right: auto!important;
}
/*
header .wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
  margin-bottom: 0px!important;
}
*/
header .wp-block-navigation .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container	{
	border: 1px solid var(--medium-gray);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
}

.hide-on-desktop {display: none !important;}
}

.fm-hero {
	position: absolute;
	top: 0;
}
.fm-hero-content h1, .fm-hero-content h2, .fm-hero-content h3, .fm-hero-content p {
	color: #fff!important;
}
@media only screen and (max-width: 1200px) {

	header .wp-block-site-logo img {
	  max-width: 200px;
	}
}

@media only screen and (max-width: 1024px) {
	.fm-hero {
		/*margin-bottom: 90px !important;*/
		padding-left: 40px !important;
		padding-right: 40px !important;
		background-position:79% 28.999999999999996%;
		
		margin-top: -170px !important;
    	position: relative;
   		min-height: 280px !important;
	}
	.fm-hero-content {
		/*top: 200px;
		position: relative;*/
	}
	.fm-hero-container {
		background: #fff;
		color: var(--wp--preset--color--accent-1) !important;		
		padding: 20px 40px !important;
		border-radius: 24px;		
	}
	.fm-hero-container h1, .fm-hero-container h2, .fm-hero-container h3 {
		/*color: var(--wp--preset--color--accent-1) !important;*/
		color: var(--wp--preset--color--custom-dark-blue) !important;
	}
	.fm-hero-container h1 {
		font-size: var(--wp--preset--font-size--x-large);		
	}
	.fm-hero-container p {
		color: var(--wp--preset--color--contrast) !important;
	}	
	/* De-center align desktop centered elements */
	.has-text-align-center:not(.wp-block-button__link) {
	  text-align: left!important;
	}
	.wp-block-buttons.is-content-justification-center {
		justify-content: left!important;
	}

	.hide-on-desktop {display: block !important;}
	.hide-on-mobile {display: none !important;}	
}
/* Override for top left image in media text block */
@media only screen and (max-width: 600px) {
	.wp-block-media-text.is-stacked-on-mobile.fm-mobile-left-img-on-bottom > .wp-block-media-text__content {
		grid-row: 1!important;
	}
	.wp-block-media-text.is-stacked-on-mobile.fm-mobile-left-img-on-bottom > .wp-block-media-text__media {
		grid-row: 2!important;		
	}

}	

@media only screen and (max-width: 800px) {
	.fm-hero {
		/*margin-bottom: 220px !important;*/
		padding-left: 20px !important;
		padding-right: 20px !important;
		background-position:79% 28.999999999999996%;
	}
	.fm-hero-content {
		/*top: 290px;*/
	}
	.fm-hero-container {
		background: #fff;
		/*color: var(--wp--preset--color--accent-1) !important;*/
		padding: 20px 40px !important;
	}
	
}

/* Breadcrumbs */
.home .site-breadcrumbs {
  display: none;
}
.site-breadcrumbs {
  background: var(--dark-gray);
  padding: 8px 30px 10px 30px;
  color: var(--medium-gray);
  margin-bottom: 0px !important;
  border-bottom: none;
  font-style: italic;
  font-size: 14px;
}
.site-breadcrumbs a {color:var(--medium-gray);}
/* Mobile Menu */
@keyframes overlay-menu__fade-in-animation {
  0% {
    opacity:0;
    transform:translateY(20px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}
.wp-block-navigation__responsive-container.is-menu-open {
  animation: overlay-menu__fade-in-animation .25s ease-out;
}

.wp-block-navigation__responsive-container-open svg, .wp-block-navigation__responsive-close svg {
width: 32px;
height: 32px;
}

.wp-block-navigation__responsive-container-close {
 top: 16px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
align-items: flex-start;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 80px !important;
}

.wp-block-navigation__responsive-container.is-menu-open {background: var(--primary-color)!important;}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	color: var(--secondary-color)!important;
}

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {fill: var(--secondary-color);}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
align-items: flex-start;
}
/*
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container li {
  font-size: 1.6rem;
}
*/

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content.wp-block-navigation-item__content {
  margin-top: 14px !important;
  /*font-size: var(--wp--preset--font-size--small);*/
  font-size: 18px;
  /*text-transform: none;*/
  letter-spacing: 0.02em;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	font-size: 22px;
	margin-bottom: 2px;
}

.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__container li {
width:100%}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container > li.has-child > a::after {
  content: ' ';
  position: absolute;
  right: 8px;
  top: 8px;
  display: inline-block;
  border-bottom: 1px solid;
  border-right: 1px solid;
  height: 10px;
  width: 10px;
  transform: rotate(45deg);
}

/* Sub-submenu */

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
	width:100%;
	padding-right: 0rem;
}

/*
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul:not(.wp-block-navigation__submenu-container) {width:100%;}
*/

/* Reset for teriary menu items with no children */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container li ul {width:auto!important;}
/*
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > ul.wp-block-navigation__submenu-container li.has-child.fm-submenu > ul {width:auto!important;}
*/

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container > li.has-child.fm-submenu > a::after {
  content: ' ';
  position: absolute;
  right: 40px;
  top: 18px;
  display: inline-block;
  border-bottom: 1px solid;
  border-right: 1px solid;
  height: 10px;
  width: 10px;
  transform: rotate(45deg);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container > li.has-child.fm-submenu.submenu-open > a::after {
  transform: rotate(-135deg);
  top: 24px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container > li.has-child.submenu-open > a::after {
  transform: rotate(-135deg);
  top: 14px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container > li.has-child > a::before {
  content: '';
  background-color: var(--medium-gray);
  position: absolute;
  border-radius: 100px;
  padding: 20px;
  right: -6px;
  top: -4px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container li.has-child a {width: 100%;}

.wp-block-navigation.items-justified-right .wp-block-navigation__responsive-container.is-menu-open li {
--navigation-layout-justification-setting: flex-start !important;
  --navigation-layout-justify: flex-start !important;
}

.wp-block-navigation a.wp-block-navigation-item__content:hover {
text-underline-offset: 0.3em;
color: var(--link-color);
}
footer .wp-block-navigation a.wp-block-navigation-item__content:hover {
color: var(--primary-color);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
padding-top: 0px !important;
}

/* Debug Overrides */
/* Fix for center aligned images not centering */
.wp-block-image.aligncenter {
  text-align: center;
  margin: 0 auto;
}
/* Overrides */

/* Fix for white on white text in cover bgs*/
/*
:root :where(.wp-block-cover h1:not(.has-text-color)), :root :where(.wp-block-cover h2:not(.has-text-color)), :root :where(.wp-block-cover h3:not(.has-text-color)), :root :where(.wp-block-cover h4:not(.has-text-color)), :root :where(.wp-block-cover h5:not(.has-text-color)), :root :where(.wp-block-cover h6:not(.has-text-color)), :root :where(.wp-block-cover p:not(.has-text-color)), :root :where(.wp-block-list li) {color: var(--wp--preset--color--contrast);}
*/
/*:root :where(.wp-block-cover h1:not(.has-text-color)) {color: var(--wp--preset--color--white);}*/

:root :where(.wp-block-list li) {
  margin-top: 0.25rem!important;
}

/* Narrow page condenses paragraph margins */
:root :where(.is-layout-constrained) > * {
  /*margin-block-start: 1rem;
  margin-block-end: 1rem;
  margin-block-start: revert!important;
  margin-block-end: revert!important;*/
}
:root :where(.is-layout-constrained) > h1, :root :where(.is-layout-constrained) > h2,
:root :where(.is-layout-constrained) > h3, :root :where(.is-layout-constrained) > h4,
:root :where(.is-layout-constrained) > h5, :root :where(.is-layout-constrained) > h6
{
  margin-block-start: 1rem!important;
  margin-block-end: 1rem!important;
}

/* Override to fix hover on other color buttons */
:root :where(.wp-element-button:hover, .wp-block-button__link:hover) {
  opacity: .85;
}

/* Jetpack small button override */
.wp-block-jetpack-contact-form .wp-block-jetpack-button .wp-block-button__link {
  padding-top: 1rem !important;
  padding-right: 2.25rem !important;
  padding-bottom: 1rem !important;
  padding-left: 2.25rem !important;		
}

/* Utilities */
.hide {display: none !important;}
