/*
Theme Name: FinBizTools
Author: FinBizTools
Description: A lightweight, responsive companion theme for FinBizTools Phase 1–10.
Version: 10.0.3
Requires at least: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: finbiztools
*/
:root{--ink:#172e2a;--muted:#536762;--green:#12654e;--light:#eef5ef;--line:#dce6df;--paper:#fffefb;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}a{color:var(--green);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:48px;padding:12px 22px;background:var(--green);color:#fff;border:1px solid var(--green);border-radius:8px;font-weight:650;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#0b4938}.secondary{background:transparent;color:var(--ink);border-color:#b5c8bc}.secondary:hover{background:var(--light)}:focus-visible{outline:3px solid #bb5a14;outline-offset:4px}h1,h2,h3{line-height:1.18;letter-spacing:-.035em}h1{font-size:clamp(2.35rem,5vw,4.25rem);font-weight:700;margin:18px 0 24px}h2{font-size:clamp(1.65rem,3vw,2.2rem);margin:12px 0 22px}h3{font-size:1.25rem;margin:22px 0 12px}p{margin:0 0 20px;color:var(--muted)}.container{max-width:1240px;margin:auto;padding:0 32px}.site-header{border-bottom:1px solid var(--line);background:#fffefb}.header-inner{max-width:1380px;min-height:96px;padding:20px 32px;margin:auto;display:flex;gap:28px;align-items:center}.brand{display:inline-flex;align-items:center;font-size:25px;font-weight:800;letter-spacing:-1px;white-space:nowrap;text-decoration:none;color:var(--ink)}.brand>span:not(.brand-mark){color:var(--green)}.brand-mark{display:inline-grid;place-items:center;margin-right:10px;width:39px;height:39px;border-radius:11px;background:var(--green);color:white;font-size:29px}#site-nav{margin-left:auto}#site-nav ul{display:flex;gap:4px;align-items:center;list-style:none;margin:0;padding:5px 6px;background:rgba(238,245,239,.7);border:1px solid rgba(220,230,223,.95);border-radius:9999px;box-shadow:inset 0 1px 2px rgba(23,46,42,.03)}#site-nav a{font-size:14.5px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:9999px;position:relative;transition:color .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);line-height:1.2}#site-nav a:not([aria-current=page]):not(.is-active):hover{background:#fff;color:var(--green);transform:translateY(-1.5px);box-shadow:0 3px 10px rgba(23,46,42,.08)}#site-nav a[aria-current=page],#site-nav a.is-active,#site-nav .current-menu-item>a{background:var(--green);color:#fff!important;font-weight:650;text-decoration:none!important;box-shadow:0 3px 12px rgba(18,101,78,.32),0 1px 3px rgba(18,101,78,.18);transform:translateY(0);animation:fbtNavPop .25s cubic-bezier(.34,1.56,.64,1)}#site-nav a[aria-current=page]:hover,#site-nav a.is-active:hover{background:#0d513e;color:#fff!important;transform:translateY(-1px);box-shadow:0 5px 16px rgba(18,101,78,.4)}@keyframes fbtNavPop{0%{transform:scale(.96)}100%{transform:scale(1)}}#site-nav .nav-link-finance:not([aria-current=page]):not(.is-active):hover{color:#0d5c47;background:#e5f4eb}#site-nav .nav-link-business:not([aria-current=page]):not(.is-active):hover{color:#1e3d59;background:#eaf2f9}#site-nav .nav-link-documents:not([aria-current=page]):not(.is-active):hover{color:#095764;background:#e4f4f7}#site-nav .nav-link-templates:not([aria-current=page]):not(.is-active):hover{color:#805510;background:#fef5e7}#site-nav .nav-link-guides:not([aria-current=page]):not(.is-active):hover{color:#3a4163;background:#f0f1f8}#site-nav .nav-link-about:not([aria-current=page]):not(.is-active):hover{color:var(--ink);background:#fff}#site-nav .nav-link-contact{border:1px solid #c2d6ca;background:rgba(255,255,255,.65)}#site-nav .nav-link-contact:not([aria-current=page]):not(.is-active):hover{border-color:var(--green);background:#fff;color:var(--green)}#site-nav .nav-link-contact[aria-current=page],#site-nav .nav-link-contact.is-active{border-color:var(--green)}html:not([dir]) .nav-badge-ai,.nav-badge-ai{font-size:9.5px;font-weight:800;letter-spacing:.06em;padding:2px 6px;border-radius:6px;background:linear-gradient(135deg,#12654e,#249673);color:#fff;box-shadow:0 1px 4px rgba(18,101,78,.25);transition:all .2s ease}#site-nav a[aria-current=page] .nav-badge-ai,#site-nav a.is-active .nav-badge-ai{background:rgba(255,255,255,.28);color:#fff;box-shadow:none}.header-search{position:relative;border:0}.header-search>summary{list-style:none;padding:10px;min-width:44px;min-height:44px;display:grid;place-items:center}.header-search>summary::-webkit-details-marker{display:none}.header-search .search-form{position:absolute;z-index:3;right:0;top:52px;background:white;padding:18px;border:1px solid var(--line);box-shadow:0 8px 30px #172e2a14;width:340px;border-radius:12px}.search-form{display:flex;gap:8px;max-width:580px}.search-form input{min-width:0;width:100%;border:1px solid #849e91;border-radius:7px;padding:10px}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:64px;align-items:center;padding:76px 0 64px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--green);margin-bottom:16px}.hero h1 span{color:var(--green)}.hero-copy{font-size:18px;max-width:540px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.hero-note{font-size:12px}.hero-note span{margin:0 9px}.hero-panel{padding:34px;background:var(--light);border:1px solid #d5e5d6;border-radius:24px;transform:rotate(1deg);position:relative;overflow:hidden}.hero-panel h2{font-size:29px}.hero-panel p{font-size:14px}.visual-bars{height:135px;display:flex;align-items:end;gap:12px;margin:22px 0 28px;border-bottom:1px solid #b8cfc0}.visual-bars i{flex:1;background:#99bfa5;border-radius:7px 7px 0 0;height:25%}.visual-bars i:nth-child(2){height:39%}.visual-bars i:nth-child(3){height:49%}.visual-bars i:nth-child(4){height:67%}.visual-bars i:nth-child(5){height:82%;background:#428869}.visual-bars i:nth-child(6){height:100%;background:var(--green)}.pill{font-size:12px;border:1px solid #b5cbbb;border-radius:30px;padding:8px 12px;color:#285642}section{padding:44px 0;scroll-margin-top:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{margin-bottom:0}.section-heading a{font-size:13px;font-weight:650;white-space:nowrap}.section-heading p:not(.eyebrow){margin-top:14px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tool-card{display:block;padding:27px;border:1px solid var(--line);border-radius:var(--radius);background:white;text-decoration:none;color:var(--ink)}a.tool-card:hover{border-color:var(--green);box-shadow:0 5px 20px #172e2a0a}.tool-card p{font-size:14px}.card-icon{display:inline-grid;place-items:center;width:44px;height:44px;background:var(--light);border-radius:12px;font-size:24px;color:var(--green);margin-right:12px}.badge{font-size:9px;letter-spacing:.09em;color:#4b6258;font-weight:750}.card-link{font-size:13px;font-weight:750;color:var(--green);display:flex;justify-content:space-between}.muted{background:#f7f8f4}.muted h3{margin-top:20px}.why{background:var(--light);padding:40px;border-radius:var(--radius);margin:44px 0}.benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.benefits h3{font-size:16px;letter-spacing:-.02em}.benefits p{font-size:13px;margin:0}.faq{max-width:830px;margin:auto}details:not(.header-search){border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:650;min-height:32px}details p{margin:14px 0 0}.final-cta{text-align:center;background:#173e32;color:white;padding:48px 24px;border-radius:20px;margin:36px 0 72px}.final-cta p{color:#d0e0d5}.final-cta .button{background:#e3f0c6;color:#1e422e;border-color:#e3f0c6}.site-footer{background:#f1f5ef;border-top:1px solid var(--line);padding:52px 0 0}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr 1.3fr;gap:32px}.footer-grid h2{font-size:13px;letter-spacing:0;margin-top:8px}.footer-grid p,.footer-grid a:not(.brand){font-size:13px}.footer-grid ul{padding:0;list-style:none}.footer-grid li{margin-bottom:10px}.footer-grid li a{color:var(--muted);text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);padding-top:24px;padding-bottom:24px;margin-top:40px;border-top:1px solid var(--line)}.breadcrumbs{font-size:12px;padding-top:26px}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0}.breadcrumbs li+li:before{content:' / ';margin-right:10px;color:var(--muted)}.page-content{padding:30px 0 70px;max-width:1000px;margin:auto}.page-heading h1{font-size:clamp(2.3rem,5vw,3.3rem)}.page-content>h2{font-size:25px;margin-top:40px}.page-content>p{max-width:850px}.page-content>.card-grid{margin:30px 0}.search-result{border-bottom:1px solid var(--line);padding:20px 0}.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:8px;left:8px;z-index:100;background:white;padding:12px}.menu-toggle[hidden],[hidden]{display:none!important}img{max-width:100%;height:auto}#main:focus{outline:none}@media(max-width:1100px){.header-inner{flex-wrap:wrap;gap:16px;min-height:82px}.menu-toggle{margin-left:auto}#site-nav{width:100%;order:4;margin:12px 0 0}.js #site-nav:not(.is-open){display:none}#site-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:6px;border-radius:var(--radius);padding:12px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(23,46,42,.1)}#site-nav a{width:100%;justify-content:space-between;padding:11px 16px;font-size:15px;border-radius:12px}#site-nav a[aria-current=page],#site-nav a.is-active{border-radius:12px}.hero{gap:30px}.hero h1{font-size:48px}.benefits{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1101px){.menu-toggle{display:none}}@media(max-width:700px){.container{padding-left:20px;padding-right:20px}.header-inner{padding:16px 20px}.brand{font-size:22px}.brand-mark{width:32px;height:32px}.hero{grid-template-columns:1fr;padding:44px 0 28px;gap:24px}.hero h1{font-size:43px}.hero-panel{transform:none;padding:25px}.hero-panel .visual-bars{height:90px}.card-grid{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column;gap:8px}.section-heading h2{font-size:28px}section{padding:30px 0}.benefits{grid-template-columns:1fr 1fr}.why{padding:25px;margin:30px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-grid>div{grid-column:1/-1}.footer-bottom{flex-direction:column}.header-search .search-form{width:min(340px,calc(100vw - 40px))}.actions .button{flex:1;white-space:nowrap;font-size:13px}.hero-note{font-size:11px}.hero-note span{margin:0 4px}.page-content{padding-top:22px}.search-form button{padding:10px 12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}#site-nav a{transition:none!important;transform:none!important;animation:none!important}}
/* Phase 7 Hardening & Accessibility */
.fbt-404-page{padding:30px 0 70px;max-width:1000px;margin:auto}
.fbt-404-search{margin:28px 0 36px;background:var(--light);padding:24px 28px;border-radius:var(--radius);border:1px solid var(--line)}
.fbt-404-search h2{margin-top:0;font-size:18px}
.fbt-404-directory{margin:36px 0}
.fbt-404-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;margin-top:20px}
.fbt-404-category{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px}
.fbt-404-category h3{margin-top:0;font-size:16px;color:var(--ink)}
.fbt-404-category ul{list-style:none;padding:0;margin:12px 0 0}
.fbt-404-category li{margin-bottom:8px;font-size:14px}
.fbt-404-category li a{text-decoration:none;color:var(--muted)}
.fbt-404-category li a:hover{color:var(--green);text-decoration:underline}
.fbt-404-actions{display:flex;gap:16px;flex-wrap:wrap;margin:36px 0 20px}
.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:20px 0}
table{width:100%;border-collapse:collapse;margin:16px 0}
th,td{padding:10px 14px;border:1px solid var(--line);text-align:left;font-size:14px}
th{background:var(--light);font-weight:650}
.fbt-sitemap{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;margin:32px 0 50px}
.fbt-sitemap-section{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px}
.fbt-sitemap-section h2{font-size:18px;margin-top:0;margin-bottom:14px;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:10px}
.fbt-sitemap-list{list-style:none;padding:0;margin:0}
.fbt-sitemap-list li{margin-bottom:10px;font-size:14px}
.fbt-sitemap-list li a{text-decoration:none;color:var(--muted)}
.fbt-sitemap-list li a:hover{color:var(--green);text-decoration:underline}

/* Keep the responsive header in its final first-paint state to prevent CLS. */
.menu-toggle{display:none}
@media(max-width:1100px){.js .menu-toggle{display:inline-flex;margin-left:auto}}
