/* =========================================================
   TABLE OF CONTENTS
   01. Global Resets & Theme Fixes
   02. Global Buttons & Icons
   03. Header & Desktop Navigation
   04. Footer Navigation
   05. Component Styles (Resources, Accordions)
   06. Post Grids (Query Loop & Page-List Plugin)
   07. Sticky Forms (CF7)
   08. Calculator Pages
   09. TABLET VIEW (783px to 1024px)
   10. Mobile Menu Overrides (Max-width: 782px)
   11. MOBILE & TABLET HEADER LAYOUT FIX (Absolute Precision)
========================================================= */

/* 01. Global Resets & Theme Fixes */
.wp-site-blocks>main+footer, .wp-site-blocks>main+.wp-block-template-part, .body-blank-page { margin-top: 0 !important; margin-bottom: 0 !important; }
.wp-site-blocks, .wp-block-template-part, html, body { overflow: visible !important; }
.wp-site-blocks>footer.wp-block-template-part, .wp-site-blocks>.entry-content+footer { margin-top: 0 !important; }
.fpc-resource-card .fpc-theme-title { display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.fpc-resource-card .fpc-excerpt p { display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; margin-bottom: 0 !important; }
h3.fpc-theme-title { font-size: clamp(1rem, 1rem + ((1vw - 0.2rem)* 0.6), 1.5rem); }
.fpc-resource-card.valign-bottom:hover { justify-content: flex-start !important; }
a:focus, button:focus, .wp-block-button__link:focus, .wp-block-navigation-item__content:focus { outline: none !important; box-shadow: none !important; }
p.ngt-parent-page-title { text-align: center !important; }
p strong, p b, li strong { font-weight: 700 !important; }
a.wp-block-button__link.has-text-align-center.wp-element-button { border-radius: 0 !important; border: 2px #91C13D solid !important; }
.fpc-arrow { font-family: Arial, Helvetica, sans-serif; }
main strong, main b, .entry-content strong, .entry-content b { color: #91C13D !important; font-weight: 700 !important; }
main mark, .entry-content mark { font-weight: bold; background-color: #91c13d; color: #91C13D !important; font-weight: 700 !important; }
.wp-block-columns.equal-height-cards { display: flex !important; align-items: stretch !important; }
.wp-block-columns.equal-height-cards > .wp-block-column { align-self: stretch !important; height: auto !important; display: flex !important; flex-direction: column !important; }
@media (max-width:1024px) { .desktop-header { display: none !important; } }
@media (max-width:1024px) { .mobile-header { display: block !important; } }
@media (min-width:1025px) { .mobile-header { display: none !important; } }
@media (min-width:1025px) { .desktop-header { display: block !important; } }

/* 02. Global Buttons & Icons */
a.wp-block-button__link.wp-element-button { text-transform: uppercase; font-weight: 500; }
.wp-block-button__link { transition: all .3s ease-in-out !important; }
.wp-block-button__link:hover { background-color: #91C13D !important; border-color: #91C13D !important; color: #fff !important; text-decoration: none !important; }
.service-button .wp-block-button__link:hover { background-color: #91C13D !important; border-color: #91C13D !important; color: #fff !important; text-decoration: none !important; }
.service-button .wp-block-button__link { border: 2px solid #fff !important; padding: 16px 40px !important; letter-spacing: 1px !important; }
.hover-green ul li a:hover { transition: all .3s ease-in-out !important; display: inline-block !important; color: #91c13d !important; transform: scale(1.03) !important; }
.hover-green a:hover { transition: all .3s ease-in-out !important; display: inline-block !important; color: #91c13d !important; transform: scale(1.03) !important; }
.is-style-logos-only svg:hover { transition: all .3s ease-in-out !important; display: inline-block !important; color: #91c13d !important; transform: scale(1.03) !important; }
.hover-green a { text-decoration: none; }
p.hover-green:has(img) { transition: all .3s ease-in-out !important; transform-origin: left center; }
p.hover-green.has-text-align-center:has(img) { transform-origin: center center; }
p.hover-green.has-text-align-right:has(img) { transform-origin: right center; }
p.hover-green:has(img) a { transition: all .3s ease-in-out !important; }
p.hover-green:has(img) img { transition: all .3s ease-in-out !important; }
p.hover-green:has(img):has(a:hover) { transform: scale(1.03) !important; }
p.hover-green:has(img):has(img:hover) { transform: scale(1.03) !important; }
p.hover-green:has(img):has(a:hover) a { color: #91c13d !important; text-decoration: none; }
p.hover-green:has(img):has(img:hover) a { color: #91c13d !important; text-decoration: none; }
p.hover-green:has(img) a:hover { transform: none !important; }
p.hover-green:has(img) img:hover { transform: none !important; }
.animated-post-row h3 { transition: all .3s cubic-bezier(.25,1,.5,1) !important; text-decoration: none !important; transform-origin: left center !important; }
.animated-post-row h3 a { transition: all .3s cubic-bezier(.25,1,.5,1) !important; text-decoration: none !important; transform-origin: left center !important; }
.animated-post-row img { transition: all .3s cubic-bezier(.25,1,.5,1) !important; text-decoration: none !important; transform-origin: right center !important; }
.animated-post-row .wp-block-image { transition: all .3s cubic-bezier(.25,1,.5,1) !important; text-decoration: none !important; transform-origin: right center !important; }
.animated-post-row .blog-icon { transition: all .3s cubic-bezier(.25,1,.5,1) !important; text-decoration: none !important; transform-origin: right center !important; }
.animated-post-row:hover h3 { transform: scale(1.04) !important; color: #91c13d !important; }
.animated-post-row:hover h3 a { transform: scale(1.04) !important; color: #91c13d !important; }
.animated-post-row:hover img { transform: scale(1.04) !important; }
.animated-post-row:hover .blog-icon { transform: scale(1.04) !important; background-color: #91c13d !important; border-color: #91c13d !important; color: #fff !important; }
.animated-post-row:hover .wp-block-image { transform: scale(1.04) !important; background-color: #91c13d !important; border-color: #91c13d !important; color: #fff !important; }
.animated-post-row:hover .wp-block-column a { background-color: #91c13d !important; border-color: #91c13d !important; color: #fff !important; }
.is-style-outline a { border-color: #91c13d !important; }
.is-style-outline a:hover { color: #fff !important; transform: scale(1.05) !important; }
.blog-icon { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 2px solid #fff; border-radius: 50%; color: rgba(255,255,255,.6); font-size: 18px; line-height: 1; cursor: pointer; box-sizing: border-box; flex-shrink: 0; }

/* 03. Header & Desktop Navigation */
@media (min-width:1020px) { header { position: sticky !important; top: 0 !important; z-index: 99999 !important; } }
@media (min-width:1020px) { .site-header { position: sticky !important; top: 0 !important; z-index: 99999 !important; } }
@media (min-width:1020px) { .wp-block-template-part.site-header { position: sticky !important; top: 0 !important; z-index: 99999 !important; } }
@media (min-width:1020px) { header .is-layout-flex { position: relative !important; width: 100% !important; align-items: center !important; justify-content: center !important; } }
@media (min-width:1020px) { .header-search { position: absolute !important; right: 20px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; } }
@media (min-width:1020px) { .header-search .wp-block-search__inside-wrapper { display: flex !important; align-items: center !important; justify-content: flex-end !important; } }
@media (min-width:1020px) { .header-search .wp-block-search__input { margin-left: 0 !important; margin-right: 0 !important; } }
@media (min-width:1020px) { .header-search button { background: transparent; color: #fff; font-size: 30px; position: static !important; margin-left: 8px !important; padding-top: 4px !important; } }
@media (min-width:1020px) { header .wp-block-navigation .wp-block-navigation-item>a.wp-block-navigation-item__content { position: relative !important; display: inline-block !important; padding-bottom: 4px !important; border-bottom: 2px solid transparent !important; text-decoration: none !important; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper>a { position: relative !important; display: inline-block !important; padding-bottom: 4px !important; border-bottom: 2px solid transparent !important; text-decoration: none !important; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper>span { position: relative !important; display: inline-block !important; padding-bottom: 4px !important; border-bottom: 2px solid transparent !important; text-decoration: none !important; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper>p { position: relative !important; display: inline-block !important; padding-bottom: 4px !important; border-bottom: 2px solid transparent !important; text-decoration: none !important; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; } }
@media (min-width:1020px) { header .wp-block-navigation>ul>.wp-block-navigation-item>a.wp-block-navigation-item__content:hover { transform: scale(1.08) !important; border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; color: #fff !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .wp-block-navigation>ul>.wp-block-navigation-item>a.wp-block-navigation-item__content:focus { transform: scale(1.08) !important; border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; color: #fff !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper:hover>a { transform: scale(1.08) !important; border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; color: #fff !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper:hover>span { transform: scale(1.08) !important; border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; color: #fff !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper:hover>p { transform: scale(1.08) !important; border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; color: #fff !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .wp-block-navigation .current-menu-item>a.wp-block-navigation-item__content { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .wp-block-navigation .current-menu-ancestor>a.wp-block-navigation-item__content { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .wp-block-navigation .is-active>a.wp-block-navigation-item__content { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper.current-menu-item>a { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper.current-menu-item>span { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .mark-mega-wrapper.current-menu-item>p { border-bottom: 1px solid var(--wp--preset--color--accent-green,#81b144) !important; font-weight: 600 !important; text-decoration: none !important; } }
@media (min-width:1020px) { header .wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content { border-bottom: 1px solid #81b144 !important; font-weight: 600 !important; display: inline-block !important; } }
@media (min-width:1020px) { header .wp-block-navigation .current-menu-parent > .wp-block-navigation-item__content { border-bottom: 1px solid #81b144 !important; font-weight: 600 !important; display: inline-block !important; } }
@media (min-width:1020px) { header .wp-block-navigation__submenu-container .current-menu-ancestor > .wp-block-navigation-item__content { border-bottom: 1px solid #81b144 !important; font-weight: 600 !important; display: inline-block !important; } }
@media (min-width:1020px) { header .wp-block-navigation__submenu-container .current-menu-parent > .wp-block-navigation-item__content { border-bottom: 1px solid #81b144 !important; font-weight: 600 !important; display: inline-block !important; } }
@media (min-width:1020px) { header .wp-block-navigation__submenu-container .current-menu-item > .wp-block-navigation-item__content { color: #ffffff !important; border-bottom: 1px solid #81b144 !important; font-weight: 700 !important; } }
@media (min-width:1020px) { header p a { color: var(--ngt-trigger-color,#fff) !important; text-transform: capitalize !important; text-decoration: none !important; cursor: pointer; padding: 0 0 0px 0 !important; margin: 0 !important; border: none !important; border-bottom: 0 solid transparent !important; display: inline-block; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; transform-origin: left center !important; } }
@media (min-width:1020px) { .wp-block-navigation-item__content { color: var(--ngt-trigger-color,#fff) !important; text-transform: capitalize !important; text-decoration: none !important; cursor: pointer; padding: 0 0 0px 0 !important; margin: 0 !important; border: none !important; border-bottom: 0 solid transparent !important; display: inline-block; transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease, color .25s ease !important; transform-origin: left center !important; } }
@media (min-width:1020px) { header p a:hover { color: #fff !important; border-bottom: 2px solid #81b144 !important; transform: scale(1.08) !important; } }
@media (min-width:1020px) { header .nav-left { margin-right: 100px !important; } }
@media (min-width:1020px) { header .nav-right { margin-left: 100px !important; } }
@media (min-width:1020px) { header .wp-block-site-logo { position: static !important; transform: none !important; margin: 0 !important; padding: 0 !important; } }
@media (min-width:1020px) { header>*:last-child { margin-right: 0 !important; } }
@media (min-width:1020px) { .site-header>*:last-child { margin-right: 0 !important; } }
@media (min-width:1020px) { .nav-right:last-child { margin-right: 0 !important; } }
@media (min-width:1020px) { header .main-nav-link a { text-transform: uppercase !important; } }
@media (min-width:1020px) { .main-nav-link.is-active a { border-bottom: 2px solid #81b144 !important; } }
@media (min-width:1020px) { .wp-block-ngt-mega-menu.is-active .ngt-mega-trigger { color: #fff !important; border-bottom: 2px solid #81b144 !important; } }
@media (min-width:1020px) { .wp-block-ngt-mega-menu.is-active .ngt-mega-trigger a { color: #fff !important; border-bottom: none !important; text-decoration: none !important; box-shadow: none !important; } }
@media (min-width:1020px) { .mega-menu-topnav a:hover { color: #fff !important; } }
@media (min-width:1020px) { .mega-menu-topnav a { text-decoration: none !important; } }

/* 04. Footer Navigation */
.privacy-policy .wp-block-navigation-item:not(:last-child) a:after { content: "|"; margin-left: 20px; margin-right: 20px; color: #fff; }
.footer-nav .wp-block-navigation-item__content { white-space: normal !important; line-height: 1.4 !important; word-wrap: break-word !important; }

/* 05. Component Styles (Resources, Accordions) */
.page-resource-bottom { background-color: #112937 !important; padding: 40px 3% !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; margin: 0 !important; border-radius: 0 !important; }
.page-resource-bottom h2 { color: #fff !important; font-size: 28px !important; display: inline-block !important; border-bottom: 2px solid #81b144 !important; padding-bottom: 8px !important; margin-bottom: 25px !important; width: fit-content !important; align-self: flex-start !important; }
.page-resource-bottom h3 { color: #fff !important; font-size: 28px !important; display: inline-block !important; border-bottom: 2px solid #81b144 !important; padding-bottom: 8px !important; margin-bottom: 25px !important; width: fit-content !important; align-self: flex-start !important; }
.page-resource-bottom h4 { color: #fff !important; font-size: 28px !important; display: inline-block !important; border-bottom: 2px solid #81b144 !important; padding-bottom: 8px !important; margin-bottom: 25px !important; width: fit-content !important; align-self: flex-start !important; }
.page-resource-bottom h5 { color: #fff !important; font-size: 28px !important; display: inline-block !important; border-bottom: 2px solid #81b144 !important; padding-bottom: 8px !important; margin-bottom: 25px !important; width: fit-content !important; align-self: flex-start !important; }
.page-resource-bottom h6 { color: #fff !important; font-size: 28px !important; display: inline-block !important; border-bottom: 2px solid #81b144 !important; padding-bottom: 8px !important; margin-bottom: 25px !important; width: fit-content !important; align-self: flex-start !important; }
.page-resource-bottom ul { list-style: none !important; padding-left: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
.page-resource-bottom li { background: transparent !important; border: none !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; min-height: auto !important; }
.page-resource-bottom a { color: #fff !important; text-decoration: underline !important; font-weight: 500 !important; font-size: 16px !important; display: inline-block !important; width: auto !important; transition: transform .25s cubic-bezier(.16,1,.3,1), color .2s ease !important; transform-origin: left center !important; }
.page-resource-bottom a:hover { color: #81b144 !important; text-decoration: none !important; transform: scale(1.03) !important; }
.page-resource-bottom p { color: rgba(255,255,255,.8) !important; font-size: 16px !important; margin-bottom: 20px !important; }
.page-resource-bottom p a { color: #81b144 !important; text-decoration: underline !important; }
.related-links { list-style: none !important; padding-left: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 5px !important; }
.related-links l1 { background: transparent !important; border: none !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; min-height: auto !important; }
.related-links a { color: #fff !important; text-decoration: underline !important; font-weight: 500 !important; font-size: 16px !important; display: inline-block !important; width: auto !important; transition: transform .25s cubic-bezier(.16,1,.3,1), color .2s ease !important; transform-origin: left center !important; }
.related-links a:hover { color: #81b144 !important; text-decoration: none !important; transform: scale(1.03) !important; }
.related-links p { color: rgba(255,255,255,.8) !important; font-size: 16px !important; margin-bottom: 20px !important; }
.related-links p a { color: #81b144 !important; text-decoration: underline !important; }
.wp-block-accordion-item { border: none !important; border-radius: 0 !important; background: transparent !important; margin-bottom: 20px !important; }
.wp-block-accordion-heading__toggle { display: flex !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; background: transparent !important; border: none !important; border-bottom: 2px solid #fff !important; padding: 12px 0 16px 0 !important; color: #fff !important; cursor: pointer !important; text-align: left !important; box-shadow: none !important; }
.wp-block-accordion-heading__toggle-icon { display: none !important; }
.wp-block-accordion-heading__toggle::after { content: "↑" !important; border: 1px solid rgba(255,255,255,.4) !important; border-radius: 50% !important; width: 36px !important; height: 36px !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 18px !important; font-weight: 400 !important; color: #fff !important; transition: transform .3s ease, background-color .2s ease !important; flex-shrink: 0 !important; margin-left: 15px !important; }
.wp-block-accordion-heading__toggle[aria-expanded="true"]::after { transform: rotate(180deg) !important; background-color: rgba(255,255,255,.05) !important; }
.wp-block-accordion-panel p { margin-bottom: 0 !important; }
.wp-block-accordion-heading__toggle-title { display: inline-block !important; transition: transform .25s cubic-bezier(.16,1,.3,1), color .2s ease !important; transform-origin: left center !important; text-decoration: none !important; box-shadow: none !important; }
.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title { color: #81b144 !important; transform: scale(1.03) !important; text-decoration: none !important; box-shadow: none !important; }
.wp-block-accordion-heading__toggle:focus .wp-block-accordion-heading__toggle-title { color: #81b144 !important; transform: scale(1.03) !important; text-decoration: none !important; box-shadow: none !important; }
.wp-block-accordion-heading__toggle:hover { text-decoration: none !important; outline: none !important; box-shadow: none !important; }
.wp-block-accordion-heading__toggle:focus { text-decoration: none !important; outline: none !important; box-shadow: none !important; }

/* 06. Post Grids (Query Loop & Page-List Plugin) */
ul.wp-block-post-template { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 30px !important; list-style: none !important; padding: 0 !important; margin: 0 !important; }
ul.wp-block-post-template li.wp-block-post { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; height: 100% !important; }
ul.wp-block-post-template .wp-block-group { background-color: #e0e8e8 !important; padding: 40px 30px 30px 30px !important; display: flex !important; flex-direction: column !important; justify-content: space-between !important; flex-grow: 1 !important; min-height: 220px !important; border: none !important; border-bottom: 4px solid #91C13D !important; border-radius: 0 !important; box-shadow: 0 4px 15px rgba(0,0,0,.1) !important; transition: transform .3s ease, background-color .3s ease !important; position: relative !important; }
ul.wp-block-post-template .wp-block-group:hover { transform: translateY(-5px) !important; background-color: #0c4160 !important; }
ul.wp-block-post-template .wp-block-group h2 a::after { content: '' !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; }
ul.wp-block-post-template .wp-block-group:hover h2 a { color: #ffffff !important; }
ul.wp-block-post-template .wp-block-group:hover .wp-block-post-excerpt p { color: #ffffff !important; }
ul.wp-block-post-template .wp-block-post-title { margin: 0 0 20px 0 !important; padding: 0 !important; text-align: center !important; color: #112937 !important; }
ul.wp-block-post-template .wp-block-post-title a { color: #112937 !important; text-decoration: none !important; font-size: 1.35rem !important; font-weight: 700 !important; line-height: 1.35 !important; transition: color .3s ease !important; }
ul.wp-block-post-template .wp-block-post-title a:hover { color: #91C13D !important; }
ul.wp-block-post-template .wp-block-post-excerpt { margin: 0 0 20px 0 !important; text-align: center !important; flex-grow: 1 !important; }
ul.wp-block-post-template .wp-block-post-excerpt p { color: #19313e !important; font-size: .95rem !important; line-height: 1.5 !important; margin: 0 !important; }
ul.wp-block-post-template .wp-block-post-date { margin-top: auto !important; text-align: center !important; }
ul.wp-block-post-template .wp-block-post-date time { color: #b0c4de !important; font-size: .85rem !important; font-weight: 500 !important; }
@media (max-width:992px) { ul.wp-block-post-template { grid-template-columns: repeat(2,1fr) !important; gap: 20px !important; } }
@media (max-width:600px) { ul.wp-block-post-template { grid-template-columns: 1fr !important; gap: 20px !important; } }

/* 07. Sticky Forms (CF7) */
.sticky-form .fm-form .fm-header-bg { display: none !important; }
.sticky-form .fm-form .wdform_row { margin-bottom: 20px !important; }
.sticky-form .fm-form input[type="text"] { width: 100% !important; padding: 12px 15px !important; border: 1px solid #dcdcdc !important; background-color: #fff !important; color: #333 !important; transition: all .3s ease !important; box-sizing: border-box !important; margin-bottom: 0 !important; border-radius: 0 !important; }
.sticky-form .fm-form input[type="email"] { width: 100% !important; padding: 12px 15px !important; border: 1px solid #dcdcdc !important; background-color: #fff !important; color: #333 !important; transition: all .3s ease !important; box-sizing: border-box !important; margin-bottom: 0 !important; border-radius: 0 !important; }
.sticky-form .fm-form input[type="tel"] { width: 100% !important; padding: 12px 15px !important; border: 1px solid #dcdcdc !important; background-color: #fff !important; color: #333 !important; transition: all .3s ease !important; box-sizing: border-box !important; margin-bottom: 0 !important; border-radius: 0 !important; }
.sticky-form .fm-form textarea { width: 100% !important; padding: 12px 15px !important; border: 1px solid #dcdcdc !important; background-color: #fff !important; color: #333 !important; transition: all .3s ease !important; box-sizing: border-box !important; margin-bottom: 0 !important; border-radius: 0 !important; min-height: 120px !important; resize: vertical !important; }
.sticky-form .fm-form input:focus { outline: none !important; border-color: #91C13D !important; box-shadow: 0 0 5px rgba(145,193,61,.4) !important; }
.sticky-form .fm-form textarea:focus { outline: none !important; border-color: #91C13D !important; box-shadow: 0 0 5px rgba(145,193,61,.4) !important; }
.sticky-form .fm-form .wdform-label { color: #fff !important; margin-bottom: 8px !important; display: inline-block !important; }
.sticky-form .fm-form .wdform-required { color: #91C13D !important; margin-left: 4px !important; }
.sticky-form .fm-form .fm-type_checkbox .checkbox-div label { display: flex !important; align-items: flex-start !important; gap: 12px !important; cursor: pointer !important; }
.sticky-form .fm-form input[type="checkbox"] { margin-top: 4px !important; width: 18px !important; height: 18px !important; flex-shrink: 0 !important; cursor: pointer !important; }
.sticky-form .fm-form .consent { color: #fff !important; }
.sticky-form .fm-form .consent a { color: #91C13D !important; text-decoration: underline !important; transition: color .3s ease !important; }
.sticky-form .fm-form .consent a:hover { color: #fff !important; }
.sticky-form .fm-form .button-submit { display: inline-block !important; width: 100% !important; background-color: transparent !important; border: 2px solid #91C13D !important; color: #fff !important; padding: 14px 30px !important; text-transform: uppercase !important; cursor: pointer !important; transition: all .3s ease-in-out !important; margin-top: 10px !important; border-radius: 0 !important; }
.sticky-form .fm-form .button-submit:hover { background-color: #91C13D !important; color: #fff !important; transform: translateY(-2px) !important; }
.sticky-form .fm-form .fm-ico-spinner { margin-right: 10px !important; }
@media (max-width:992px) { .sticky-form { position: static !important; transform: none !important; } }

/* 08. Calculator Pages */
.calculator-section .gloabl-navigate { max-width: 100% !important; }
.lo-section { max-width: 100% !important; }
.calculator-section .calculator__tab { width: 100% !important; }
.calculator-page .ngt-accordion-header { border-bottom: 1px solid #000 !important; }
.calculator-page .ngt-toggle-icon { border: 1px solid #000 !important; }
.calculator-page .ngt-toggle-icon::before { color: #000 !important; }
.calculator-section .after-text { color: #fff !important; float: left !important; text-align: left !important; padding: 20px 0px !important; max-width: 100% !important; font-family: 'Aileron', sans-serif !important; }
.calculator-section p { font-family: 'Aileron', sans-serif !important; }
.calculator-section h1 { font-family: 'League Spartan', sans-serif !important; }
.calculator-section h2 { font-family: 'League Spartan', sans-serif !important; }
.calculator-section .gloabl-navigate__item { flex: 0 0 25% !important; align-items: flex-start !important; }
.calculator-section .gloabl-navigate__item .active { border: none !important; border-color: transparent !important; }
.calculator-section .gloabl-navigate__item .inactive { border: none !important; border-color: transparent !important; }
.calculator-section .gloabl-navigate__item .active p { color: #91C13D !important; }
.calculator-section .gloabl-navigate__item div { border: none !important; border-bottom: 0px solid transparent !important; }
.calculator-section .gloabl-navigate__item div:hover { border: none !important; border-bottom: 0px solid transparent !important; }
.calculator-section .gloabl-navigate__item .inactive p { color: #fff !important; }
.calculator-section .gloabl-navigate__item div p:hover { color: #91C13D !important; transform: scale(1.08) !important; transition: all .3s ease-in-out !important; }
.calculator-section .gloabl-navigate__item svg { display: none !important; }
.calculator-section .gloabl-navigate__item p { color: #fff !important; font-family: 'Aileron', sans-serif !important; font-size: 16px !important; padding: 30px 0 0px !important; font-weight: 700 !important; }

/* 09. TABLET VIEW (783px to 1024px) */
@media (min-width: 1251px) and (max-width: 1331px) { .footer-nav { gap: 100px !important; } }
@media (min-width: 1025px) and (max-width: 1250px) { header .nav-left { margin-right: 30px !important; } }
@media (min-width: 1025px) and (max-width: 1250px) { header .nav-right { margin-left: 30px !important; } }
@media (min-width: 1025px) and (max-width: 1250px) { .wp-block-group:has(> .footer-nav) { gap: 20px !important; flex-wrap: wrap !important; } }
@media (min-width: 1025px) and (max-width: 1250px) { .footer-nav { gap: 38px !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .header-search button { background: transparent; color: #fff; font-size: 30px; position: static !important; margin-left: 8px !important; } }
@media (min-width: 783px) and (max-width: 1024px) { header .nav-left { margin-right: 15px !important; } }
@media (min-width: 783px) and (max-width: 1024px) { header .nav-right { margin-left: 15px !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-site-blocks { padding-left: 0px !important; padding-right: 0px !important; box-sizing: border-box !important; max-width: 100% !important; overflow-x: hidden !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-block-group:has(> .footer-nav) { gap: 20px !important; flex-wrap: wrap !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .footer-nav { flex: 0 0 calc(50% - 15px) !important; max-width: calc(50% - 15px) !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .mobile-header .wp-block-navigation__responsive-container-open { display: flex !important; visibility: visible !important; opacity: 1 !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-block-navigation__responsive-container-open { display: flex !important; visibility: visible !important; opacity: 1 !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-block-navigation__responsive-container .wp-block-navigation-item__content { border-bottom: none !important; border-left: 2px solid transparent !important; transition: all .2s ease-in-out !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-block-navigation__responsive-container .wp-block-navigation-item__content:hover { border-left: 2px solid #81b144 !important; padding-left: 12px !important; display: inline-block !important; } }
@media (min-width: 783px) and (max-width: 1024px) { .wp-block-navigation__responsive-container .current-menu-item>.wp-block-navigation-item__content { border-left: 2px solid #81b144 !important; padding-left: 12px !important; display: inline-block !important; } }

/* 10. Mobile Menu Overrides (Max-width: 782px) */
@media (max-width: 782px) { .title-content-section { padding: 0 !important; } }
@media (max-width: 782px) { .home-blog-posts { font-size: 13px !important; } }
@media (max-width: 782px) { .blog-icon { width: 24px; height: 24px; } }
@media (max-width: 782px) { .header-search button { background: transparent; color: #fff; font-size: 30px; position: static !important; margin-left: 8px !important; } }
@media (max-width: 782px) { .fpc-pagination { gap: 10px; } }

/* === 11. MOBILE & TABLET HEADER LAYOUT FIX (Absolute Precision) === */
@media (max-width: 1024px) {
    /* High Specificity Override for iPad Visibility */
    body .mobile-header,
    body header.mobile-header,
    .wp-site-blocks .mobile-header { display: block !important; visibility: visible !important; opacity: 1 !important; min-height: 80px !important; }
    
    .mobile-header > .wp-block-group.is-layout-flex.alignwide { display: block !important; position: relative !important; width: 100% !important; min-height: 80px !important; padding: 0 !important; box-sizing: border-box !important; }
    .mobile-header > .wp-block-group.is-layout-flex.alignwide > .wp-block-group:first-child { position: absolute !important; left: 20px !important; top: 0 !important; bottom: 0 !important; margin: auto 0 !important; display: flex !important; align-items: center !important; height: 40px !important; padding: 0 !important; z-index: 20 !important; }
    .mobile-header .wp-block-navigation__responsive-container-open { display: flex !important; }
    .mobile-header > .wp-block-group.is-layout-flex.alignwide > .wp-block-group:nth-child(2) { position: absolute !important; left: 50% !important; top: 50% !important; transform: translate(-50%, -50%) !important; margin: 0 !important; padding: 0 !important; z-index: 10 !important; width: auto !important; }
    .mobile-header .wp-block-site-logo img { max-width: 180px !important; height: auto !important; display: block !important; margin: 0 auto !important; }
    .mobile-header > .wp-block-group.is-layout-flex.alignwide > .wp-block-group:last-child { position: absolute !important; right: 20px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; padding: 0 !important; z-index: auto !important; }
    .mobile-header .header-search { position: static !important; transform: none !important; margin: 0 !important; }
    .mobile-header .header-search button { background: transparent !important; color: #fff !important; font-size: 30px !important; margin: 0 !important; padding: 10px 0 !important; }
    
    /* Menu Overlay Overrides with Syntax Correction */
    .wp-block-navigation__responsive-container.is-menu-open, 
    .wp-block-navigation__responsive-container.has-modal-open, 
    .wp-block-navigation__responsive-container[open] { display: flex !important; position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important; width: 100vw !important; height: 100vh !important; min-height: 100vh !important; background-color: #0b2937 !important; z-index: 999999 !important; overflow-y: auto !important; }
    .wp-block-navigation__responsive-container:not(.is-menu-open):not(.has-modal-open):not([open]) { display: none !important; }
    .wp-block-navigation__responsive-container .wp-block-navigation-overlay-close { position: absolute !important; top: 25px !important; right: 20px !important; z-index: 1000000 !important; cursor: pointer !important; }
}