/*
Theme Name: FPA Advisory
Theme URI: https://fpandadvisors.com
Author: Financial Partners & Advisors
Description: A multi-page boutique financial advisory WordPress theme.
Version: 3.2.0
Requires PHP: 7.4
Text Domain: fpa-advisory
*/
:root{--ink:#172622;--muted:#58645e;--forest:#183f35;--gold:#b49a6b;--cream:#f7f6f1;--white:#fff;--line:#dcded6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.wrap{max-width:1160px;margin:auto;padding:0 34px}.site-header{background:rgba(247,246,241,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.header-inner{min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{display:grid;place-items:center;width:49px;height:49px;background:var(--forest);color:#f6f2e6;font-family:Georgia,serif;font-size:23px;letter-spacing:-2px}.brand-words{font-size:11px;line-height:1.45;letter-spacing:2px;text-transform:uppercase;font-weight:700}.nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.nav a:not(.button):hover{color:#527d6c}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--forest);color:#fff!important;padding:15px 23px;border:1px solid var(--forest);font-size:12px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;transition:background .2s}.button:hover{background:#2b5a4a}.button-outline{background:transparent;color:var(--forest)!important}.button-outline:hover{background:#e8ede7}.hero{padding:115px 0 120px;position:relative;overflow:hidden}.hero:after{content:'FP&A';position:absolute;right:-55px;bottom:-65px;color:#e7e9df;font:260px Georgia,serif;letter-spacing:-28px;pointer-events:none;z-index:0}.hero-inner{position:relative;z-index:1;max-width:900px}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:#557364}.eyebrow:before{content:'';display:inline-block;vertical-align:middle;width:27px;height:1px;background:var(--gold);margin-right:13px}.hero h1,h2,.quote{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.7px}.hero h1{font-size:clamp(55px,7vw,99px);line-height:1.07;margin:26px 0 27px}.hero h1 em{font-style:normal;color:#688073}.hero p{max-width:590px;color:var(--muted);font-size:19px;line-height:1.8;margin:0 0 38px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.subtle-link{font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:5px}.band{background:var(--forest);color:#f7f6f1}.band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:26px;padding-bottom:26px}.band span{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#b6c8bb}.band strong{font-size:13px;font-weight:400;letter-spacing:.4px}.section{padding:115px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:52px}.section-heading h2{font-size:clamp(39px,4.3vw,62px);line-height:1.13;max-width:700px;margin:19px 0 0}.section-heading p{max-width:325px;color:var(--muted);margin:0 0 7px}.services{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:44px 34px 46px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:355px}.service-num{font:13px Georgia,serif;color:#8b9e8c}.service-card h3{font:normal 30px/1.2 Georgia,serif;margin:43px 0 17px;letter-spacing:-.5px}.service-card p{color:var(--muted);font-size:14px;margin:0 0 20px}.service-card ul{padding:0;list-style:none;margin:0}.service-card li{font-size:13px;padding:6px 0;color:#344a40}.service-card li:before{content:'—';color:var(--gold);margin-right:9px}.capabilities{padding:27px 0;border-bottom:1px solid var(--line);background:#fff}.capabilities .wrap{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.capabilities strong{font-size:12px;text-transform:uppercase;letter-spacing:1px}.capabilities span{font-size:13px;color:var(--muted)}.about{background:var(--cream)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.about h2{font-size:clamp(41px,4vw,59px);line-height:1.18;margin:19px 0 0}.about-copy{padding-top:28px}.about-copy p{color:var(--muted);font-size:16px;line-height:1.9;margin:0 0 22px}.credential{border-top:1px solid var(--line);margin-top:29px;padding-top:23px;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#496255}.process{background:#e9ede6}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.process-step{border-top:1px solid #bfc9bc;padding-top:25px}.process-step b{color:#7a927f;font:18px Georgia,serif}.process-step h3{font:normal 28px Georgia,serif;margin:23px 0 10px}.process-step p{font-size:14px;color:var(--muted);margin:0}.contact{background:var(--forest);color:white}.contact .eyebrow{color:#bed2c4}.contact h2{font-size:clamp(43px,4.6vw,67px);line-height:1.12;margin:18px 0 22px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-intro p{color:#c5d3c9;max-width:400px}.contact-phone{margin-top:42px;border-top:1px solid #557265;padding-top:22px}.contact-phone small{display:block;text-transform:uppercase;letter-spacing:1.8px;color:#b6cabb;font-size:11px;margin-bottom:9px}.contact-phone a{font:24px Georgia,serif}.contact-form{background:#f7f6f1;color:var(--ink);padding:39px}.contact-form h3{font:normal 28px Georgia,serif;margin:0 0 9px}.contact-form p{font-size:13px;color:var(--muted);margin:0 0 23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{margin-bottom:15px}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:700;margin-bottom:7px}.field input,.field textarea{width:100%;border:1px solid #d7dbd2;background:white;padding:12px 13px;border-radius:0;color:var(--ink);outline-color:#789887}.field textarea{height:112px;resize:vertical}.form-note{font-size:12px!important;margin-top:14px!important}.form-alert{padding:12px;background:#e4efe5;color:#254d35;font-size:13px;margin-bottom:15px}.form-alert.error{background:#f7e8e5;color:#843c35}.site-footer{background:#102e26;color:#c0d1c6;padding:28px 0}.footer-inner{display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:12px}.footer-inner strong{color:white;font-size:13px;letter-spacing:1.2px}.honeypot{position:absolute!important;left:-9999px!important}#services,#about,#contact,#approach{scroll-margin-top:95px}@media(max-width:850px){.nav{gap:14px}.nav a:not(.button){display:none}.hero{padding:95px 0}.hero:after{font-size:160px;bottom:0}.section{padding:75px 0}.section-heading,.about-grid,.contact-grid{display:block}.section-heading p{margin-top:25px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.about-copy{padding-top:30px}.process-grid{grid-template-columns:1fr}.process-step{padding-bottom:20px}.contact-form{margin-top:42px}.band-inner{display:block}.band strong{display:block;margin-top:12px}}@media(max-width:520px){.wrap{padding:0 22px}.header-inner{min-height:76px}.brand-mark{width:43px;height:43px}.brand-words{font-size:9px}.nav .button{padding:11px;font-size:10px}.hero h1{font-size:54px}.hero p{font-size:16px}.hero:after{font-size:115px;right:-10px;bottom:10px;letter-spacing:-15px}.form-row{grid-template-columns:1fr}.contact-form{padding:25px}.footer-inner{display:block}.footer-inner span{display:block;margin-top:10px}}

/* V3 — editorial multi-page design */
.brand-mark{width:67px;height:50px;min-width:67px;white-space:nowrap;display:flex;align-items:center;justify-content:center;font:normal 19px/1 Georgia,serif;letter-spacing:-1.5px}
.hero{min-height:620px;display:flex;align-items:center}.hero:after{right:-170px;bottom:-110px;font-size:255px;letter-spacing:-22px;opacity:.9}
.hero-inner{width:100%}.hero h1{font-size:clamp(56px,7.2vw,98px)}
.offer{background:#fff}.offer h2 em,.about-preview h2 em,.page-hero h1 em,.industries-about h2 em{font-style:normal;color:#6d8576}
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.offer-item{min-height:270px;padding:31px 30px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}
.offer-item:hover{background:#f4f6f0}.offer-item>span{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#688071}
.offer-item h3{font:normal 29px/1.2 Georgia,serif;letter-spacing:-.5px;margin:35px 0 10px}.offer-item b{margin-top:auto;font-weight:400;color:#5d7969}
.support-row{display:grid;grid-template-columns:1fr 1.45fr;gap:40px;padding:43px 0;border-bottom:1px solid var(--line)}
.support-title span,.experience-line span,.leadership-grid span{display:block;text-transform:uppercase;letter-spacing:1.8px;font-size:11px;color:#668071;font-weight:700}
.support-title h3{font:normal 27px Georgia,serif;margin:12px 0}
.support-list{display:grid;gap:0}.support-list a{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;display:flex;justify-content:space-between;gap:10px}.support-list a b{font-weight:400;color:#5e7c68}
.offer-bottom{padding-top:30px;display:flex;justify-content:space-between;align-items:center;gap:20px}.offer-bottom strong{font:normal 23px Georgia,serif}
.difference{background:#193f34;color:#f7f6f1}.difference .eyebrow{color:#bed0c3}.difference h2{font-size:clamp(44px,5vw,68px);line-height:1.12;margin:18px 0}.difference h2 em{font-style:normal;color:#a7bcae}
.difference-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:end;margin-bottom:58px}
.difference-heading p{color:#d2ddd3;line-height:1.9;margin:0}.difference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.difference-grid article{border-top:1px solid #5d786b;padding-top:23px}.difference-grid span{font:16px Georgia,serif;color:#afc4b3}
.difference-grid h3{font:normal 27px Georgia,serif;margin:20px 0 12px}.difference-grid p{color:#c6d5ca;font-size:14px;line-height:1.8;margin:0}
.about-preview{background:var(--cream)}.about-preview-top{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}
.about-preview h2{font-size:clamp(42px,4.5vw,65px);line-height:1.15;margin:20px 0}
.about-preview-copy{padding-top:20px}.about-preview-copy p{color:var(--muted);line-height:1.9;margin:0 0 18px}.about-preview-copy .subtle-link{display:inline-block;margin-top:10px}
.experience-line{border-top:1px solid var(--line);margin-top:66px;padding-top:29px;display:grid;grid-template-columns:1fr 1.7fr;gap:50px}
.experience-line strong{display:block;font:normal 19px/1.5 Georgia,serif;margin-top:12px}
.page-hero{background:#f0f1ea;padding:100px 0 108px}.page-hero h1{font:normal clamp(52px,6.6vw,88px)/1.1 Georgia,serif;letter-spacing:-2px;margin:22px 0}.page-hero p{max-width:720px;font-size:19px;line-height:1.8;color:var(--muted);margin:0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px}.two-col h2{font-size:clamp(42px,4.2vw,60px);line-height:1.14;margin:20px 0}.two-col p{font-size:16px;line-height:1.95;color:var(--muted);margin:0 0 20px}
.page-intro{background:#fff}.detail-section{background:#fff;scroll-margin-top:95px;border-top:1px solid var(--line)}.detail-section.alternate{background:#f1f3ec}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.detail-grid h2{font-size:clamp(40px,4vw,57px);line-height:1.13;margin:20px 0}.detail-grid>div>p{color:var(--muted);line-height:1.85;max-width:470px}
.detail-panel{border-top:2px solid var(--forest);padding-top:20px}.detail-panel h3{font:normal 26px Georgia,serif;margin:0 0 20px}
.detail-panel ul{padding-left:20px;color:#40564a;line-height:2}.detail-panel li{padding-left:6px}.detail-outcome{border-top:1px solid var(--line);padding-top:18px;font-style:italic}
.additional{background:#fff}.additional h2,.industries-about h2,.philosophy h2{font-size:clamp(40px,4.3vw,62px);line-height:1.15;margin:20px 0 36px}
.additional-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.additional-grid>div{border-top:1px solid var(--line);padding-top:23px}
.additional-grid h3{font:normal 27px Georgia,serif}.additional-grid p{color:var(--muted);line-height:1.85}
.about-story{background:#fff}.about-name .difference-heading{margin-bottom:0}
.leadership-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.leadership-grid>div{padding:35px;background:#eff2ea}.leadership-grid h3{font:normal 33px/1.25 Georgia,serif;margin:25px 0}.leadership-grid p{color:var(--muted);line-height:1.8}
.industries-about{background:#f0f2eb}.industries-about>div>p{max-width:800px;color:var(--muted);line-height:1.85}
.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:36px}.industry-grid span{background:#fff;padding:22px;border:1px solid var(--line)}
.philosophy{background:#fff}.philosophy p{max-width:740px;color:var(--muted);font-size:17px;line-height:1.9}
@media(max-width:850px){.hero{min-height:unset}.hero:after{right:-100px;font-size:165px;bottom:-40px}
.offer-grid{grid-template-columns:1fr}.offer-item{min-height:180px}.offer-item h3{margin:20px 0}
.support-row,.difference-heading,.about-preview-top,.experience-line,.two-col,.detail-grid,.leadership-grid{grid-template-columns:1fr;gap:25px}
.difference-grid{grid-template-columns:1fr;gap:30px}.page-hero{padding:75px 0}.additional-grid{grid-template-columns:1fr}
.industry-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){.brand-mark{width:54px;min-width:54px;height:43px;font-size:16px}.brand-words{letter-spacing:1px}.nav{gap:8px}.nav .button{padding:10px 8px}
.hero:after{font-size:130px;right:-95px;bottom:-20px}.offer-bottom{display:block}.offer-bottom .subtle-link{display:inline-block;margin-top:18px}
.industry-grid{grid-template-columns:1fr}.page-hero h1{font-size:48px}
}

/* V3.1 navigation polish */
html{scroll-behavior:smooth}#contact,.anchor-target,.detail-section{scroll-margin-top:110px}.anchor-target:target{outline:2px solid #b9c9b8;outline-offset:12px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Deep-link targets remain clear of sticky navigation */
#cfo,#fpa,#controller,#technology,#bookkeeping,#specialized{scroll-margin-top:120px}
