/*
Fuel Theme
Version: 6.3.7
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Shared Menu Styles
# Mobile Menu
# Desktop Menu
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Shared Menu Styles
--------------------------------------------------------------*/
.menu-notifications.wp-block-fuel-menu-item .notices-title, .sub-menu .wp-block-heading {margin: 0.2rem 0 1rem;padding-bottom: 0.6rem;/* font-weight: bold; *//* font-family: var(--content-font); */font-size: clamp(0.9rem, 4vw, 1rem);color: var(--white);}
.primary-menu .sub-menu nav { margin-top: 0; }
.primary-menu .sub-menu a.tab-link, .primary-menu .sub-menu .menu-item a {position: relative;display: block;padding: 0.3rem 0.8rem;margin-left: -0.8rem;font-size: clamp(0.9rem, 4vw, 1rem);}
.wp-block-fuel-menu-wrapper .sub-menu {/* overflow: visible; */background: var(--Forest-Green, #3E7986);}
.wp-block-fuel-menu-wrapper .sub-menu a.tab-link:not(:has(span)) {padding-right: 2.4rem;}
.wp-block-fuel-sub-menu-tab-link span:first-child { padding-right: 1.6rem; }
.wp-block-fuel-sub-menu-tab-link::after {content: "";background: var(--accent-color);clip-path: url(#menu_chevron);width: 0.6rem;height: 0.4rem;transform: rotate(270deg);margin: auto;position: absolute;inset: 0 1rem 0 auto;transition: transform 300ms;}
.wp-block-fuel-sub-menu-tab-panel { width: 100%; padding: 0 1rem; }
.entry-wrapper .entry-content:first-child:before, main>.entry-content:first-child:before { content: ''; position: fixed; inset: 0; width: 100%; height: 100%; margin: auto; background: rgba(0, 0, 0, 0); transition: background-color 0.3s; pointer-events: none; z-index: 99; }
body:has(.sub-menu-trigger[aria-expanded=true]) .entry-content:before { background: rgba(0, 0, 0, 0.5); pointer-events: unset; }

/* Locations */
.sub-menu .menu-location-container .wp-block-heading { font-size: clamp(1.2rem, 4vw, 1.6rem); border-bottom: 0; }
.sub-menu .menu-location-container a { width: fit-content; color: white; font-size: clamp(0.9rem, 2vw, 1rem); margin-left: 0 !important; }
.hours-block {max-width: none;color: var(--white);}
    
/* Notifications */
.menu-notifications.wp-block-fuel-menu-item {
    .tablist { padding: 0; }
    .notices-title { display: none; }
    li {border-bottom: 2px solid var(--white);margin-bottom: 0 !important; color: var(--white); }
    li:first-of-type {border-top: 2px solid var(--white);}
    li::before {content: '';width: 0.5rem;height: 100%;background: var(--noticeColor);border-radius: 0;border: none;position: absolute;top: 0;left: 0;}
    .notice {display: block;padding: 0.3rem 0.7rem 0.3rem 1.5rem;font-size: 0.9rem;}
    .notice:is(a):is(:hover, :focus-visible) { background: rgba(255,255,255,0.5); }
}









/*--------------------------------------------------------------
# Mobile Menu
--------------------------------------------------------------*/
@media (max-width: 68.49em) {
    body {
        /* Reverses menu colors from desktop */
        --wp--preset--color--sub-menu-background: var(--forest-green);
        --wp--preset--color--sub-menu-color: var(--white);
    }

    .primary-menu { position: static; inset: unset; box-shadow: unset; }
    .menu-styling-wrapper { position: fixed; inset: auto 0 0; box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2); }
    .wp-block-fuel-menu-wrapper .sub-menu { bottom: 3.2rem; box-shadow: none; max-height: calc(100dvh - 3.2rem); padding-bottom: 0; overscroll-behavior: contain;}
    .sub-menu:before {background: var(--wp--preset--color--sub-menu-background);display: inline-block;padding: 1.2rem 0.5rem;position: relative;z-index: 1;content: url('data:image/svg+xml,<svg width="101" height="21" viewBox="0 0 101 21" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.56784 21L30.3829 3.1132L58.7356 21H63.6071L58.8136 17.9777L74.3174 7.23959L96.1285 21H101L74.248 4.12206L56.4278 16.4709L30.3134 0L0 21H4.56784Z" fill="%23FFAA61"/></svg>');}
    .primary-menu .sub-menu a:is(.tab-link, .bio-box), .primary-menu .sub-menu .menu-item a { margin-right: -1rem; padding: 0.3rem 1rem; margin-left: -1rem; }
    .primary-menu .menu-label { min-width: 3.5rem; flex-direction: column; }
    .primary-menu .wp-block-fuel-menu-item .menu-label .menu-label-svg svg { width: 1rem; height: 1rem; }
    .sub-menu *:is(.tablist, .tabpanel) { padding: 0rem 1rem; margin: 0; }
    .sub-menu *:is(.tablist, .tabpanel) > * {display: block;}
    .sub-animate .wp-block-fuel-sub-menu { max-width: 100vw; }
    .wp-block-fuel-sub-menu .wp-block-columns { flex-wrap: wrap !important; }
    .wp-block-fuel-sub-menu .wp-block-column { flex-basis: 100% !important; }
    .sub-menu .wp-block-heading {background: rgba(255, 255, 255, 0.25);padding: 0.5rem 1rem 0.5rem 0.5rem;margin: 0 0 0 -1rem;width: calc(100% + 2rem);border-left: 0.5rem solid var(--accent-color);}
    .wp-block-fuel-sub-menu-tab-link:is(:hover, :focus-visible)::after { background-color: var(--wp--preset--color--sub-menu-background); }
    .back-to-tabs-btn {display: block;margin-bottom: 1rem;}
    .sub-menu .loc-title { margin-bottom: 0.5rem; }
    .primary-menu .menu-label:focus-visible, .primary-menu .menu-label:hover, .primary-menu .sub-menu-trigger[aria-expanded=true] { background: var(--accent-color); color: var(--primary-color); }
    .about-menu-bottom-quote { padding: 1.5rem 1rem 2rem; font-family: var(--title-font); }
    .mobile-home-link svg { color: var(--accent-color); }
    .primary-menu .sub-menu nav a { background: var(--white); color: var(--primary-color); }
    .wp-block-fuel-menu-wrapper .sub-menu a:is(:hover,:focus-visible), .wp-block-fuel-menu-wrapper .sub-menu a.tab-link:not(:has(span)):is(:hover,:focus-visible) {background: rgba(255,255,255,0.5);}

    .menu-end-quote {
        padding: 1.5rem 0 0 !important; border: none !important; text-align: center; font-family: var(--title-font);
        .wp-block-buttons .wp-element-button:is(:hover, :focus-visible), .wp-block-buttons .wp-block-button__link.wp-block-button__link:is(:hover, :focus-visible) {background-color: var(--wp--preset--color--accent);}
    }

    .mobile-btns-container.wp-block-buttons {
        .wp-block-button {text-align: center;width: 100%;}
        .wp-element-button.wp-block-button__link.wp-block-button__link {background: transparent;border-color: var(--white);text-align: left;max-width: 20rem;color: var(--white);}
        .wp-element-button.wp-block-button__link.wp-block-button__link:is(:hover, :focus-visible) { background: var(--white); color: var(--accent-color); }
        svg { vertical-align: -0.1rem; }
    }

    /* Locations */
    .menu-location-container {
        #fullwidth_location_section { border-top: none; }
        #fullwidth_location_section:before {display: none;}
        a:is(:hover,:focus-visible) {background: none !important;color: var(--white) !important;text-decoration: underline;}
        .wp-block-media-text__content {background: none;padding-top: 0;}
        .location-card svg { width: 1rem; }
        .fullwidth-location-section-title { display: none; }
        .wp-block-heading {background: none;padding: 0;margin: 0;width: auto;border-left: none;font-size: 1.2rem;font-family: var(--title-font);font-weight: 400;margin-left: 0 !important;}
        .location-section-box-3 { padding-top: 1.5rem; margin-top: 1.5rem !important; }
        .wp-block-media-text__media { display: none; }

        .menu-location-flex-wrapper { flex-direction: column; align-items: stretch; }
        .menu-location-flex-wrapper .address .mobile-only { color: var(--accent-color); font-weight: bold; }
        
        .bill-dept.icon-item {b;border: 3px solid var(--accent-color);padding: 0.25rem 1rem 0.25rem 1rem;mar;margin-left: 0.25rem !important;} 
        .bill-dept.icon-item svg { margin-left: -0.5rem; background: var(--forest-green); padding: 0.3rem 0rem; height: 1.8rem; }
    
        .locations-divider { max-width: none; }
        .hours.icon-item { margin-left: 0 !important; }
    }


    /* Call Dropdown */
    .menu-call {
        .sub-menu { padding-bottom: 2rem; } 
        .sub-menu .tablist { padding: 0 0; } 
        .menu-phone-wrap { border-top: 1px solid var(--white); padding: 1rem 1rem; margin: 0; }
        .menu-phone-wrap:last-of-type { border-bottom: 1px solid var(--white); }
        .menu-phone-wrap strong { font-size: 0.9rem; }
        .menu-phone-wrap .phone { font-size: 1.6rem; }
    }

    /* Services */
    .primary-menu .sub-menu a:is(.tab-link, .bio-box) { background: var(--white); color: var(--primary-color); }
    .primary-menu .sub-menu a:is(.tab-link, .bio-box):is(:hover, :focus-visible) { background: rgba(255, 255, 255, 0.5); }
}









/*--------------------------------------------------------------
# Desktop Menu
--------------------------------------------------------------*/

/**
* 
* Main Nav menu height needs to be 58px!
*
**/


@media (min-width: 68.5em) {
    .primary-menu {max-width: 46.5rem;margin: auto;}
    .primary-menu > .wp-block-fuel-menu-wrapper { background: var(--forest-green); }
    .primary-menu .menu-label {font-size: 1.2rem;font-family: 'Lora', serif;}
    .primary-menu .menu-label-text { z-index: 1; }
    li:not(.menu-notifications, .mobile-label) .sub-menu-trigger::after { content: ''; display: inline-block;background: var(--accent-color);transition: transform 0.3s;position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 0;transform: scale(0.206,0.16);transform-origin: bottom;}
    
    /* Hover/Active State */
    .primary-menu .menu-label:is(:hover, :focus-visible) {background: none;}
    .primary-menu .sub-menu-trigger[aria-expanded=true] {background: none;color: var(--primary-color);}
    .primary-menu .menu-label:is(:hover, :focus-visible):after {transform: scale(0.75,0.16);}
    .primary-menu .sub-menu-trigger[aria-expanded=true]:after { transform: scale(1,1); }

    /* Sticky Menu */
    .wp-block-template-part:has(> .primary-menu) {max-width: none;padding: 0 2.6rem;}
    .wp-block-template-part:has(> .primary-menu.is-pinned) { padding: 0; }
    .primary-menu.is-pinned {max-width: 54.8rem;padding: 0;}
    .primary-menu.is-pinned > .wp-block-fuel-menu-wrapper {background: var(--primary-color);}
    .primary-menu.is-pinned .sticky-menu-logo  {display: block;padding-right: 3rem;}
    .sticky-menu-logo .menu-label-svg { max-width: 10rem; }
    .sticky-menu-logo { display: none; }
    .primary-menu.is-pinned .sticky-menu-logo .menu-label-svg { display: block; }
    .primary-menu .sub-menu-trigger[aria-expanded=true]::after {}
    .primary-menu .wp-block-fuel-menu-item .menu-label .menu-label-svg svg { width: unset; height: unset; font-size: 1.4rem; }
    .sub-menu .wp-block-columns { gap: 3rem; }

    .wp-block-fuel-sub-menu.tablist { background: var(--Forest-Green, #3E7986); }
	.sub-animate > div:after {content: '';position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: -1;background-size: contain;background-repeat: no-repeat;background-position: bottom left;background-image: url('data:image/svg+xml,<svg width="1920" height="86" viewBox="0 0 1920 86" fill="none" xmlns="http://www.w3.org/2000/svg"><path opacity="0.2" d="M0 70L1920 0.5V86H0V70Z" fill="%23003E42"/></svg>');}
    .primary-menu .sub-menu a.tab-link, .primary-menu .sub-menu .menu-item a, .wp-block-fuel-sub-menu-tab-panel a.back-to-tabs-btn { color: var(--white); }
    .primary-menu .sub-menu a.tab-link:is(:hover, :focus-visible), 
    .primary-menu .sub-menu .menu-item a:is(:hover, :focus-visible),
    .wp-block-fuel-sub-menu-tab-panel a.back-to-tabs-btn:is(:hover, :focus-visible) {background: rgba(255, 255, 255, 0.5);color: var(--primary-color);}
    .primary-menu .sub-menu a.tab-link:is(:hover, :focus-visible):after, .primary-menu .sub-menu .menu-item a:is(:hover, :focus-visible):after { background: var(--primary-color); }
    .about-menu-bottom-quote { margin-top: 6rem !important; }
    .about-menu-bottom-quote p {color: var(--white);font-size: 1.2rem !important;font-family: var(--title-font);position: relative;}
    .about-menu-bottom-quote p:after {content: '';width: 5rem;height: 1rem;position: absolute;right: 0;bottom: -2.05rem;left: 0;margin: auto;background-size: contain;background-repeat: no-repeat;background-image: url('data:image/svg+xml,<svg width="83" height="17" viewBox="0 0 83 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.75377 17L24.9681 2.52021L48.2678 17H52.2711L48.332 14.5534L61.0727 5.86062L78.9967 17H83L61.0157 3.33691L46.3713 13.3336L24.9111 0L0 17H3.75377Z" fill="%23FFAA61"/></svg>');}
    .menu-end-quote, .menu-end-quote p { color: var(--white); font-family: var(--title-font); font-size: 1.2rem !important; }
    .menu-end-quote .wp-block-button__link.wp-element-button:is(:hover, :focus-visible) { background-color: var(--accent-color); }
    .wp-block-fuel-sub-menu-tab-panels-wrapper {/* background: var(--Forest-Green, #3E7986); */}
    .bio-list .bio-label { padding: 0.5rem 0 0; }
    .bio-list .bio-name {color: var(--white);}
    .bio-list .bio-cred { color: var(--white); padding: 0; }

    /* Locations */
    .wp-block-fuel-menu-wrapper {
        .location-section-box a {color: var(--white);}
        .location-section-box a:is(:hover, :focus-visible) { background: none; color: var(--white); text-decoration: underline; }
        #fullwidth_location_section:before { display: none; }
        .fullwidth-location-section-title {display: none;}
        .wp-block-media-text__content {padding-top: 2.5rem;padding-bottom: 2rem;}
        .location-section-container .wp-block-media-text__media { max-height: 30rem; overflow: hidden; }

        .bill-dept {b;border: 3px solid var(--accent-color);padding: 0.25rem 0.5rem 0.25rem 1rem;mar;margin-left: 0.5rem !important;} 
        .bill-dept.icon-item svg { margin-left: -0.5rem; background: var(--forest-green); padding: 0.3rem 0rem; height: 1.8rem; }

        .hours-block { margin-top: 2rem; }
        .locations-divider { display: none; }
    }



    /* Home, Search, & Notifications */
    .primary-menu .menu-home .menu-label, .primary-menu .menu-search .menu-label, .primary-menu .menu-notifications .menu-label { color: var(--accent-color); }
    .primary-menu .menu-home .menu-label:is(:hover, :focus-visible), .primary-menu .menu-search .menu-label:is(:hover, :focus-visible), .primary-menu .menu-search .sub-menu-trigger[aria-expanded=true], .primary-menu .menu-notifications .menu-label:is(:hover, :focus-visible), .primary-menu .menu-notifications .sub-menu-trigger[aria-expanded=true] { background: var(--accent-color); color: var(--primary-color);}
    .sub-menu .wp-block-search__inside-wrapper { background: var(--white); }
    .sub-menu .wp-block-search__button { border-left: 1px solid var(--forest-green); }

    /* Center columns for first level */ 
    .sub-menu .wp-block-columns:first-child { justify-content: center; }
    .sub-menu .wp-block-column { max-width: fit-content; }
    .sub-menu .wp-block-heading { border-bottom: 1px solid; }
    .back-to-tabs-btn {display: inline-block;margin-bottom: 0.5rem;padding: 0 0.2rem;}
    .wp-block-fuel-sub-menu-tab-link:hover::after { transform: translateX(0.3rem) rotate(270deg); }
    .sub-menu .wp-block-column:has(.has-h-3-font-size) { margin: auto; }
    
    /* menu-col-# Helper classes. Add menu-col-# to break navigation block into columns */ 
    .sub-menu .wp-block-navigation:is(.menu-col-2, .menu-col-3, .menu-col-4) .wp-block-navigation__container { display: block; column-gap: 2em; }
    .menu-col-2 { column-count: 2; }
    .menu-col-3 { column-count: 3; }
    .menu-col-4 { column-count: 4; }
	ul:is(.menu-col-2, .menu-col-3, .menu-col-4) li {break-inside: avoid;}

    /* Notifications */
    #menu-item-notices .wp-block-fuel-sub-menu.tablist:after { display: none; }
    #notification_content {background: var(--forest-green);inset: 99% calc(50% - 23.25rem) auto auto;min-width: 21rem;}
    .primary-menu.is-pinned #notification_content {inset: 99% calc(50% - 27.4rem) auto auto;}
    .menu-notifications li:last-of-type { border-bottom: 0; }
}






/* Makes sub-menu full height on computer when width is less than 18rem */
@media (max-width: 22.49em) {
    .sub-menu { height: 100% !important; }
}

@media (min-width: 75em) { /* 1200px */
    .header-logo svg { height: 6.7rem; }
}

@media (min-width: 100em) { /* 1600px */
    .primary-menu.is-pinned .sticky-menu-logo { padding-right: 6rem; }
    .wp-block-fuel-sub-menu.tablist > .wp-block-columns { padding-right: 0; padding-left: 0; }
}





