:root{--magenta:#650c45;--magenta-dark:#430b30;--gold:#e9c474;--ink:#30262d;--muted:#594b54;--cream:#f7f4ee;--white:#fff;--line:#d9cfd2;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);font-size:1.1875rem;line-height:1.65}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}a{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.13}h1 em,h2 em{font-weight:400;color:var(--magenta)}h1{font-size:clamp(3.125rem,5.2vw,4.75rem)}h2{font-size:clamp(2.25rem,3.5vw,3.1875rem)}h3{font-size:1.4375rem;line-height:1.3;font-weight:600}h4{font-size:1.1875rem;line-height:1.5;font-weight:600}p{color:var(--muted)}p+p{margin-top:18px}.container{max-width:1280px;width:calc(100% - 112px);margin:auto}.icon{width:24px;height:24px;flex:none}.eyebrow{display:block;font-size:1.125rem;font-weight:700;line-height:1.6;letter-spacing:.13em;color:var(--magenta);margin-bottom:23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:12px 23px;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:1.125rem;font-weight:600;line-height:1.4;text-align:center;transition:background .18s,border-color .18s;cursor:pointer}.button.primary{background:var(--magenta);color:white}.button.primary:hover{background:var(--magenta-dark)}.button.outline{border-color:#997b8c;background:transparent;color:var(--magenta)}.button.outline:hover{background:#eee5ea}.button.gold{background:var(--gold);color:var(--magenta-dark)}.button.light-outline{border-color:#bc92aa;color:white}.button.light-outline:hover{background:#fff1}.button .icon{width:21px;height:21px}.full-width{width:100%}:focus-visible{outline:3px solid #ac5c0d;outline-offset:5px}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:14px 24px;background:white;color:var(--magenta);border:3px solid var(--magenta)}.skip-link:focus{top:16px}.utility{background:var(--magenta);color:#fff;font-size:1.125rem;line-height:1.5}.utility .container{display:flex;justify-content:space-between;align-items:center;min-height:38px}.utility a{display:flex;align-items:center;gap:9px;text-decoration:none;padding:4px 12px;border:1px solid #9d6688;border-radius:3px;font-weight:600}.utility .icon{width:15px;height:15px}.header{position:sticky;top:0;background:#fff;z-index:20;border-bottom:1px solid #eee8eb}.header-inner{display:flex;gap:30px;align-items:center;height:108px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;border-radius:5px}.brand img{width:64px;height:64px;border-radius:0;object-fit:contain}.brand>span{display:grid}.brand strong{font:1.875rem/1.1 var(--serif);letter-spacing:-1px;color:var(--magenta)}.brand>span>span{font-size:1.125rem;letter-spacing:.18em;line-height:1.8;color:var(--ink);font-weight:600}.header nav{display:flex;align-items:center;gap:8px;margin-left:auto}.header nav a{font-size:1.125rem;font-weight:600;text-decoration:none;padding:11px 12px;border:1px solid #e8dfe4;border-radius:4px;white-space:nowrap}.header nav a:hover,.header nav a[aria-current]{color:var(--magenta);background:#f6eef3;border-color:#cab1bf}.header-cta{white-space:nowrap}.menu-toggle{display:none}.home-hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:78px;padding-top:58px;padding-bottom:60px;align-items:center}.hero-copy .eyebrow{font-size:1.125rem;letter-spacing:.12em;display:flex;gap:12px;align-items:center;white-space:nowrap}.hero-copy h1{margin-bottom:26px}.hero-copy>p{max-width:540px;font-size:1.25rem;line-height:1.7}.hero-actions{margin-top:30px;display:flex;align-items:flex-start;flex-direction:column;gap:11px}.hero-actions>span{font-size:1.125rem;color:var(--muted)}.hero-photo{position:relative;padding:0 0 22px 0}.hero-photo>img{width:100%;height:548px;object-fit:cover;object-position:50% 23%;border-radius:100px 5px 5px 5px}.portrait-caption{position:absolute;left:-28px;right:26px;bottom:0;display:flex;align-items:center;gap:17px;background:white;padding:24px 25px;border-bottom:3px solid var(--gold);box-shadow:0 12px 30px #430b3010}.portrait-caption strong{font:1.5625rem/1.25 var(--serif);color:var(--magenta)}.portrait-caption div{display:grid;gap:4px}.portrait-caption div>span{font-size:1.125rem;line-height:1.5;color:var(--muted)}.caption-line{height:45px;width:2px;background:var(--gold)}.portrait-star{font-size:2.375rem;color:var(--magenta);margin-left:auto}.photo-corner{position:absolute;top:-15px;right:-15px;width:100px;height:100px;border-top:1px solid #b4945b;border-right:1px solid #b4945b;border-radius:0 4px 0 0}.trust-strip{border-bottom:1px solid var(--line);background:white}.trust-strip>.container{display:grid;grid-template-columns:repeat(3,1fr);padding-top:28px;padding-bottom:28px}.trust-strip .container>div{display:flex;align-items:center;gap:19px;padding:0 28px;border-right:1px solid var(--line)}.trust-strip .container>div:first-child{padding-left:0}.trust-strip .container>div:last-child{border:0}.trust-strip .icon{width:31px;height:31px;color:var(--magenta)}.trust-strip p{display:grid;font-size:1.125rem;line-height:1.6}.trust-strip strong{font-size:1.1875rem;font-weight:600;color:var(--ink)}.section{padding:92px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:40px}.section-heading>p{max-width:400px;font-size:1.125rem;margin-bottom:4px}.section-heading .eyebrow{margin-bottom:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{border:1px solid var(--line);padding:30px 28px 24px;border-radius:5px;border-top:3px solid var(--gold);background:white;display:flex;flex-direction:column}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.card-top .icon{width:36px;height:36px;color:var(--magenta)}.card-top>span{font-size:1.125rem;letter-spacing:.08em;color:var(--muted)}.service-card h3{font:1.6875rem/1.2 var(--serif);letter-spacing:-.03em;margin-bottom:20px}.service-card h4{font-size:1.125rem;margin-bottom:10px}.service-card>p{font-size:1.125rem;margin-bottom:24px}.service-card details{margin-top:0}details summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;min-height:50px;border:1px solid #a88a9b;border-radius:4px;padding:10px 13px;color:var(--magenta);font-size:1.125rem;font-weight:600;line-height:1.5}summary::-webkit-details-marker{display:none}summary>span{font-size:1.4375rem;font-weight:400;flex:none;line-height:1}details[open] summary>span{transform:rotate(45deg)}summary:hover{background:#f6eef3}details>p{font-size:1.125rem;margin-top:18px}.approach-band{background:var(--magenta);padding:86px 0;color:white;position:relative;overflow:hidden}.approach-split{display:grid;grid-template-columns:1.2fr .8fr;gap:110px;align-items:center}.approach-band .eyebrow{color:var(--gold)}.approach-band h2{font-size:3rem;line-height:1.17;margin-bottom:25px}.approach-band h2 em{color:var(--gold)}.approach-band p{color:#f3e7ee;font-size:1.1875rem}.approach-takeaway{display:block;margin-top:26px;border-left:2px solid var(--gold);padding-left:20px;font-size:1.125rem;color:#fff;font-weight:600}.approach-equation{border:1px solid #a56b91;padding:34px 32px;position:relative;background:#fff03a03;text-align:center}.approach-equation>div>span{display:block;font:4rem/1 var(--serif);color:var(--gold);margin-bottom:12px}.approach-equation strong{font-size:1.3125rem;font-weight:500}.approach-equation p{font-size:1.125rem;margin-top:4px}.equation-plus{font:2.1875rem/1 var(--serif);color:var(--gold);display:block;margin:17px 0}.approach-equation .equation-caption{font-family:var(--serif);font-size:1.4375rem;border-top:1px solid #a56b91;padding-top:22px;margin-top:25px;line-height:1.4;color:white}.image-story{display:grid;grid-template-columns:1fr 1.05fr;gap:76px;align-items:start}.landscape-frame{position:relative;height:565px}.landscape-frame>img{height:100%;width:100%;object-fit:cover;border-radius:5px 90px 5px 5px}.landscape-frame:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#271c21b0);border-radius:0 0 5px 5px;pointer-events:none}.landscape-frame>span{position:absolute;bottom:35px;left:32px;right:25px;z-index:1;color:white;font:italic 1.875rem/1.2 var(--serif)}.image-story h2{margin-bottom:25px}.image-story p{font-size:1.1875rem}.cfs-detail{margin:25px 0}.cfs-detail summary{font-size:1.125rem;padding:14px 15px}.image-story .button{font-size:1.125rem}.contact-section{background:var(--cream);border-top:1px solid #e1d9da}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:start}.contact-grid h2{margin-bottom:23px}.contact-advisor{display:flex;align-items:center;gap:20px;margin:30px 0}.contact-advisor img{width:72px;height:83px;object-fit:cover;object-position:50% 22%;border-radius:4px}.contact-advisor p{font-size:1.125rem}.contact-advisor strong{color:var(--ink);font-size:1.25rem}.phone-button{font-size:1.3125rem}.email-button{margin-left:8px}.email-address{font-size:1.125rem;overflow-wrap:anywhere;margin-top:13px}.address-card{display:flex;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin-top:32px}.address-card>.icon{color:var(--magenta);margin-top:4px}.address-card h3{font-size:1.3125rem;margin-bottom:8px}.address-card p{font-size:1.125rem}.address-card .button{margin-top:18px;min-height:46px;font-size:1.125rem}.address-card .small-copy{font-size:1.125rem;margin-top:8px}.first-conversation{margin-top:30px}.first-conversation h3{font-size:1.4375rem;font-family:var(--serif);font-weight:400}.first-conversation ul{padding-left:23px;margin-bottom:0}.first-conversation li{font-size:1.125rem;color:var(--muted);margin:8px 0;padding-left:5px}.first-conversation li::marker{color:var(--magenta)}.appointment-panel{padding:36px 36px 30px;background:white;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:5px;box-shadow:0 12px 35px #430b3006}.appointment-panel .eyebrow{margin-bottom:12px}.appointment-panel h2{font-family:var(--serif);font-size:2.125rem;letter-spacing:-.03em;margin-bottom:14px}.appointment-panel>p{font-size:1.125rem;line-height:1.6;margin-bottom:25px}.field{margin-top:20px}.field label,legend{display:block;font-size:1.125rem;font-weight:600;margin-bottom:7px;color:var(--ink)}.field label>span{font-weight:400}.field input{display:block;width:100%;background:#fff;border:1px solid #8f7a87;border-radius:4px;height:51px;padding:8px 12px;font-size:1.125rem;color:var(--ink)}.field-hint{display:block;color:var(--muted);font-size:1.125rem;line-height:1.5;margin-top:6px}fieldset{border:0;margin:23px 0 0;padding:0}legend{padding:0}.radio-choice{display:flex;align-items:center;gap:12px;border:1px solid #bba9b3;border-radius:4px;padding:12px;margin-top:8px;cursor:pointer;font-size:1.125rem;line-height:1.4}.radio-choice:has(input:checked){border-color:var(--magenta);background:#fbf6f9}.radio-choice input{width:21px;height:21px;margin:0;accent-color:var(--magenta);flex:none}.privacy-note{display:flex;gap:10px;padding:18px 0;margin:10px 0 0;align-items:start}.privacy-note>.icon{width:19px;height:19px;color:var(--magenta);margin-top:2px}.privacy-note p{font-size:1.125rem;line-height:1.5}.form-explanation{font-size:1.125rem;line-height:1.55;margin-top:12px;text-align:center}.request-review h3{color:var(--magenta);margin-bottom:12px}.request-review p{font-size:1.125rem}.request-review pre{font:1.125rem/1.6 var(--sans);background:var(--cream);padding:18px;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:4px}.review-actions{display:flex;gap:12px;margin:14px 0}.review-actions .button{font-size:1.125rem;flex:1}.request-review .small-copy{font-size:1.125rem;overflow-wrap:anywhere}.request-review [role=status]{margin:15px 0;color:var(--magenta);font-weight:600}.footer{background:var(--magenta-dark);color:white;padding-top:60px}.footer-grid{display:grid;grid-template-columns:1fr .75fr 1.2fr;gap:70px;padding-bottom:45px}.brand-footer strong{color:white}.brand-footer>span>span{color:#fff}.footer p{color:#eee1e8;font-size:1.125rem;margin-top:21px}.footer h2{font-family:var(--sans);font-size:1.125rem;letter-spacing:0;font-weight:600;line-height:1.4;margin-bottom:18px}.veteran-small{display:grid;margin-top:20px;color:var(--gold);letter-spacing:.12em;font-size:1.125rem}.veteran-small>span{font-size:1.125rem;letter-spacing:0;color:#f3e7ee}.footer-links{display:flex;flex-direction:column;align-items:start;gap:10px}.footer-links>a{display:inline-flex;gap:20px;align-items:center;border:1px solid #94647e;border-radius:4px;text-decoration:none;padding:6px 12px;font-size:1.125rem}.footer-links .icon{width:16px;height:16px}.footer-links a:hover,.footer-contact:hover{background:#fff1}.footer-contact{display:flex;align-items:center;gap:10px;font-size:1.125rem;margin-top:12px;text-decoration:none;border:1px solid #94647e;border-radius:4px;padding:7px 10px;width:fit-content;max-width:100%}.footer-contact.email{font-size:1.125rem;overflow-wrap:anywhere;word-break:break-word}.footer-contact .icon{width:18px;height:18px}.footer-bottom{border-top:1px solid #80516c;padding-top:23px;padding-bottom:28px}.footer-bottom p{font-size:1.125rem;color:#f3e7ee;margin:0 0 20px}.footer-bottom>div{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:1.125rem;color:#f3e7ee}.footer-bottom a{border:1px solid #94647e;padding:5px 9px;text-decoration:none;border-radius:3px}.page-hero{background:var(--cream);padding:70px 0;position:relative;overflow:hidden}.page-hero p{max-width:650px;margin-top:25px;font-size:1.3125rem}.page-hero h1{max-width:950px}.prose{max-width:850px}.prose h2{font-size:2.125rem;margin:36px 0 16px}.prose h2:first-child{margin-top:0}.prose .button{margin-top:25px}[hidden]{display:none!important}
@media(min-width:1500px){.hero-grid{gap:100px}.hero-photo>img{height:590px}.home-hero h1{font-size:4.9375rem}}
@media(max-width:1200px){.container{width:calc(100% - 72px)}.header-inner{gap:18px}.brand strong{font-size:1.6875rem}.brand img{width:56px;height:56px}.header nav a{font-size:1.125rem;padding:10px}.header-cta{padding:12px 17px;font-size:1.125rem}.hero-grid{gap:48px}.hero-copy .eyebrow{white-space:normal}.hero-photo>img{height:520px}.hero-copy>p{font-size:1.1875rem}.hero-copy h1{font-size:3.875rem}.approach-split{gap:65px}.contact-grid{gap:45px}.contact-advisor p{font-size:1.125rem}.phone-button{font-size:1.1875rem}.email-button{margin-left:0;margin-top:10px}.image-story{gap:50px}.footer-grid{gap:30px}}
@media(max-width:940px){.header-inner{height:91px;gap:20px}.header nav{gap:5px}.header nav a{font-size:1.125rem;padding:10px 7px}.brand strong{font-size:1.5625rem}.brand img{width:49px;height:49px}.brand>span>span{font-size:1.125rem}.header-cta{font-size:1.125rem;padding:11px 13px;min-height:46px}.header-cta .icon{display:none}.hero-grid{gap:36px;padding-top:42px;padding-bottom:45px}.hero-copy h1{font-size:3.125rem}.hero-photo>img{height:490px}.hero-copy>p{font-size:1.125rem}.portrait-caption{left:-13px;right:10px;padding:19px 15px}.portrait-caption strong{font-size:1.375rem}.portrait-caption div>span{font-size:1.125rem}.portrait-star{display:none}.trust-strip .container>div{padding:0 17px;gap:12px}.trust-strip strong{font-size:1.125rem}.trust-strip p{font-size:1.125rem}.trust-strip .icon{width:25px;height:25px}.section{padding:70px 0}.service-card{padding:25px 20px}.service-grid{gap:15px}.service-card h3{font-size:1.4375rem}.service-card h4,.service-card>p{font-size:1.125rem}.service-card summary{font-size:1.125rem}.section-heading{gap:30px}.section-heading>p{max-width:310px}.approach-band{padding:70px 0}.approach-split{gap:40px}.approach-band h2{font-size:2.4375rem}.approach-band p{font-size:1.125rem}.approach-equation{padding:30px 20px}.approach-equation p{font-size:1.125rem}.approach-equation strong{font-size:1.1875rem}.approach-equation .equation-caption{font-size:1.375rem}.image-story{gap:35px}.image-story h2{font-size:2.375rem}.image-story p{font-size:1.125rem}.landscape-frame{height:560px}.contact-grid{gap:30px}.appointment-panel{padding:28px 25px}.appointment-panel h2{font-size:1.875rem}.contact-grid h2{font-size:2.25rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:nth-child(2){display:none}.footer-bottom>div{flex-wrap:wrap;justify-content:start}}
@media(max-width:760px){html{scroll-padding-top:100px}.container{width:calc(100% - 40px)}.utility .container{min-height:37px}.utility .container>span{font-size:1.125rem}.utility a{font-size:1.125rem;padding:4px 6px}.utility .icon{display:none}.header-inner{height:82px;gap:14px;flex-wrap:wrap}.brand img{width:47px;height:47px}.brand strong{font-size:1.625rem}.brand>span>span{font-size:1.125rem}.menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;background:white;border:1px solid #b79baa;border-radius:4px;padding:8px 12px;color:var(--magenta);font-size:1.125rem;min-height:44px}.header-cta{display:none}.header nav{display:none;width:100%;flex-direction:column;align-items:stretch;margin:0;background:#fff;padding:0 0 20px}.header nav.is-open{display:flex}.header:has(.is-open) .header-inner{height:auto;padding-top:17px}.header nav a{font-size:1.125rem;padding:13px 16px}.hero-grid{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:35px}.hero-copy .eyebrow{font-size:1.125rem;letter-spacing:.1em;gap:8px;margin-bottom:22px}.hero-copy h1{font-size:clamp(2.75rem,10vw,4.0625rem);line-height:1.1;letter-spacing:-.045em;margin-bottom:23px}.hero-copy>p{font-size:1.1875rem;max-width:590px}.hero-actions{margin-top:25px}.hero-actions .button{font-size:1.125rem;min-height:55px}.hero-actions>span{font-size:1.125rem}.hero-photo{max-width:510px;width:100%;margin:auto;padding-bottom:25px}.hero-photo>img{height:430px;object-position:50% 27%;border-top-left-radius:70px}.portrait-caption{left:13px;right:13px;padding:19px}.portrait-caption strong{font-size:1.5rem}.portrait-caption div>span{font-size:1.125rem}.portrait-star{display:block;font-size:1.9375rem}.photo-corner{right:-8px;top:-8px;width:80px;height:80px}.trust-strip>.container{grid-template-columns:1fr;padding:8px 0}.trust-strip .container>div{border-right:0;border-bottom:1px solid #e8e1e4;padding:16px 9px!important;gap:20px}.trust-strip p{display:block;font-size:1.125rem}.trust-strip p>span{margin-left:10px}.trust-strip strong{font-size:1.125rem}.trust-strip .icon{width:27px;height:27px}.section{padding:60px 0}.eyebrow{font-size:1.125rem;letter-spacing:.11em;margin-bottom:15px}h2{font-size:2.375rem}.section-heading{display:block;margin-bottom:28px}.section-heading p{max-width:100%;margin-top:20px;font-size:1.125rem}.service-grid{grid-template-columns:1fr;gap:20px}.service-card{padding:26px}.card-top{margin-bottom:24px}.card-top .icon{width:34px;height:34px}.service-card h3{font-size:1.875rem;margin-bottom:13px}.service-card h4,.service-card>p{font-size:1.125rem}.service-card>p{margin-bottom:20px}.service-card summary{font-size:1.125rem;min-height:50px}.approach-band{padding:60px 0}.approach-split{grid-template-columns:1fr;gap:35px}.approach-band h2{font-size:2.375rem}.approach-band p{font-size:1.125rem}.approach-takeaway{font-size:1.125rem}.approach-equation{padding:25px;display:grid;grid-template-columns:1fr 30px 1fr;gap:8px;align-items:center}.approach-equation>div>span{font-size:2.875rem}.approach-equation strong{font-size:1.125rem;display:block;line-height:1.4}.approach-equation p{font-size:1.125rem}.equation-plus{margin:0;font-size:1.75rem}.approach-equation .equation-caption{grid-column:1/-1;margin-top:16px;font-size:1.375rem}.image-story{grid-template-columns:1fr;gap:32px}.landscape-frame{height:320px;order:2}.landscape-frame>span{font-size:1.6875rem;left:23px;bottom:27px}.image-story h2{font-size:2.375rem}.image-story p{font-size:1.125rem}.cfs-detail summary{font-size:1.125rem}.image-story .button{font-size:1.125rem;width:100%}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-grid h2{font-size:2.375rem}.contact-advisor p{font-size:1.125rem}.contact-advisor img{width:70px;height:80px}.phone-button{font-size:1.25rem}.email-button{margin:0 0 0 8px}.email-address{font-size:1.125rem}.appointment-panel{padding:26px 23px}.appointment-panel h2{font-size:2rem}.field label,legend{font-size:1.125rem}.field-hint{font-size:1.125rem}.radio-choice{font-size:1.125rem}.privacy-note p,.form-explanation{font-size:1.125rem}.footer{padding-top:45px}.footer-grid{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.brand-footer img{width:55px;height:55px}.brand-footer strong{font-size:1.8125rem}.footer p{font-size:1.125rem}.footer h2{font-size:1.25rem}.footer-contact{font-size:1.125rem}.footer-contact.email{font-size:1.125rem}.footer-bottom p{font-size:1.125rem}.footer-bottom>div{font-size:1.125rem;gap:14px}.footer-bottom>div>span{width:100%}.page-hero{padding:50px 0}.page-hero h1{font-size:2.9375rem}.page-hero p{font-size:1.1875rem}.prose h2{font-size:1.9375rem}.prose p{font-size:1.125rem}}
@media(max-width:380px){.brand strong{font-size:1.375rem}.brand{gap:9px}.brand img{width:42px;height:42px}.menu-toggle{padding:8px 9px}.utility .container>span{font-size:1.125rem}.utility a{font-size:1.125rem}.hero-copy h1{font-size:2.625rem}.trust-strip p>span{display:block;margin-left:0}.email-button{margin:10px 0 0}.appointment-panel{padding:25px 18px}.approach-band h2{font-size:2.125rem}.approach-equation{padding:20px 15px}.portrait-caption strong{font-size:1.3125rem}}
/* Keep supporting instructions and controls comfortable for an older audience. */
.hero-actions>span,.portrait-caption div>span,.trust-strip p,.service-card h4,.service-card>p,.service-card summary,.approach-equation p,.approach-takeaway,.cfs-detail summary,.contact-advisor p,.email-address,.address-card .small-copy,.field label,legend,.field-hint,.radio-choice,.privacy-note p,.form-explanation,.request-review p,.request-review pre,.request-review .small-copy,.footer p,.footer-contact.email,.footer-bottom p,.veteran-small>span,.image-story .button,.review-actions .button{font-size:1.125rem}
.header nav a{font-size:1.125rem}.footer-contact.email{display:block;overflow-wrap:anywhere}.footer-contact.email .icon{display:inline;vertical-align:middle;margin-right:8px}.footer-bottom>div{font-size:1.125rem}.utility a:focus-visible,.footer a:focus-visible,.approach-band :focus-visible{outline-color:var(--gold)}.booking-option>p{font-size:1.125rem;margin:15px 0}.booking-option .button{margin:8px 0 15px}.booking-alternative{margin-top:20px}
@media(max-width:1200px) and (min-width:761px){.header-inner{gap:15px}.header nav a{font-size:1.125rem;padding:10px 9px}.header-cta{padding:12px 15px}.brand strong{font-size:1.5625rem}}
@media(max-width:940px) and (min-width:761px){.brand{gap:8px}.brand strong{font-size:1.4375rem}.header-inner{gap:12px}.header nav a{font-size:1.125rem;padding:10px 7px}.header nav{gap:5px}}
@media(max-width:760px){.trust-strip p{display:grid}.trust-strip p>span{margin-left:0}.portrait-caption div>span{font-size:1.125rem}.hero-copy .eyebrow{font-size:1.125rem}.header nav a{font-size:1.125rem}.utility .container>span{max-width:48%}.utility a{font-size:1.125rem;min-height:34px}.review-actions{flex-wrap:wrap}.review-actions .button{min-width:130px}.approach-equation{grid-template-columns:1fr;gap:10px}.approach-equation>div>span{font-size:3rem}.approach-equation strong{font-size:1.25rem}.equation-plus{margin:5px 0}.footer-contact.email{font-size:1.125rem}.portrait-caption{gap:12px}.portrait-star{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.header nav .mobile-contact{display:none}@media(max-width:760px){.header nav.is-open .mobile-contact{display:block;background:var(--magenta);color:white;border-color:var(--magenta)}}
/* The live Google booking UI stays in a wide frame for clear day/time choices. */
.booking-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start;margin-bottom:40px}.booking-heading>div:last-child{max-width:50rem}.booking-heading h2{font-size:3.0625rem}.booking-heading p{font-size:1.1875rem}.booking-heading .button{margin-top:20px}.booking-steps{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.booking-steps li{display:flex;gap:16px;align-items:flex-start}.booking-steps li>span{display:flex;justify-content:center;align-items:center;background:var(--magenta);color:white;width:39px;height:39px;border-radius:50%;flex:none;font-size:1.125rem;font-weight:600}.booking-steps strong{font-size:1.25rem;font-weight:600}.booking-steps p{font-size:1.125rem;line-height:1.5}.booking-shell{background:white;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:6px;overflow:hidden}.booking-label{display:flex;align-items:center;gap:12px;padding:18px 25px;border-bottom:1px solid var(--line);font-size:1.125rem;font-weight:600;color:var(--magenta)}.booking-shell iframe{display:block;border:0;width:100%;height:820px;background:white}.booking-support{border-top:1px solid var(--line);padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fdfbf8}.booking-support p,.booking-privacy{font-size:1.125rem}.booking-support .button{font-size:1.125rem;flex:none}.booking-privacy{margin:22px 0 0;max-width:1000px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid var(--line);margin-top:55px;padding-top:45px}.contact-options h3{font:2rem/1.25 var(--serif);letter-spacing:-.025em}.contact-options p{font-size:1.125rem}.contact-options>div>p{margin-top:20px}.contact-options>div>.button{margin-top:23px}.direct-actions{display:flex;gap:12px;flex-wrap:wrap}.direct-actions .button{font-size:1.125rem}.contact-options .contact-advisor{margin:24px 0}.contact-options .email-address{overflow-wrap:anywhere}.contact-options .eyebrow{margin-bottom:13px}
@media(max-width:940px){.booking-heading{gap:24px}.booking-heading h2{font-size:2.5625rem}.booking-steps{gap:17px}.booking-steps li{gap:10px}.booking-steps strong{font-size:1.125rem}.booking-steps p{font-size:1.125rem}.booking-support{flex-direction:column;align-items:flex-start;gap:14px}.contact-options{gap:40px}}
@media(max-width:760px){.booking-heading{grid-template-columns:1fr;gap:23px;margin-bottom:32px}.booking-heading h2{font-size:2.4375rem}.booking-heading p{font-size:1.125rem}.booking-steps{grid-template-columns:1fr;gap:18px}.booking-steps li{gap:15px}.booking-steps strong{font-size:1.1875rem}.booking-shell{margin-left:-8px;margin-right:-8px}.booking-label{padding:17px 16px;font-size:1.125rem}.booking-label .icon{width:21px;height:21px}.booking-support{padding:22px 17px}.booking-support .button{font-size:1.125rem;width:100%}.booking-privacy{font-size:1.125rem}.contact-options{grid-template-columns:1fr;gap:35px;margin-top:38px;padding-top:35px}.contact-options>div+div{border-top:1px solid var(--line);padding-top:35px}.contact-options h3{font-size:1.9375rem}}
/* Compact calendar viewport; Google retains native scrolling for taller booking states. */
@media(max-width:640px){.booking-shell iframe{height:1200px}}
/* Prominent service cards: clear titles, strong brand color, generous reading space. */
.services-preview{background:var(--cream);padding-top:88px;padding-bottom:96px}
.services-preview .section-heading{margin-bottom:42px}
.services-preview .section-heading .eyebrow{font-size:1.125rem;letter-spacing:.12em}
.services-preview .section-heading h2{font-size:clamp(2.375rem,4.1vw,3.5rem)}
.services-preview .section-heading>p{font-size:1.25rem}
.service-grid{gap:26px;align-items:start}
.service-card{padding:0;border:1px solid #c8aebd;border-top:5px solid var(--gold);border-radius:7px;overflow:hidden;background:white;box-shadow:0 9px 25px #430b300d}
.service-card-heading{padding:28px 30px 30px;background:var(--magenta);color:white}
.service-card .card-top{margin-bottom:24px}
.service-card .card-top .icon{width:44px;height:44px;color:var(--gold)}
.service-card .card-top>span{color:var(--gold);font-size:1.125rem;letter-spacing:.08em}
.service-card h3{color:white;font:2.125rem/1.12 var(--serif);letter-spacing:-.025em;margin:0;min-height:77px}
.service-card-content{padding:27px 29px 29px;display:flex;flex-direction:column}
.service-card-content h4{font-size:1.3125rem;line-height:1.45;min-height:61px;color:var(--magenta);margin-bottom:13px;font-weight:650}
.service-card-content>p{font-size:1.1875rem;line-height:1.65;margin-bottom:26px}
.service-card details{margin-top:0}
.service-card summary{background:var(--magenta);border-color:var(--magenta);color:white;font-size:1.125rem;min-height:57px;padding:13px 15px;gap:12px}
.service-card summary:hover{background:var(--magenta-dark);border-color:var(--magenta-dark)}
.service-card summary:focus-visible{outline:3px solid var(--magenta);outline-offset:4px}
.service-card details>p{font-size:1.1875rem;line-height:1.65}
@media(max-width:1100px) and (min-width:1001px){.service-grid{gap:19px}.service-card-heading{padding:27px 25px}.service-card h3{font-size:1.9375rem;min-height:70px}.service-card-content{padding:25px 24px}.service-card-content h4{font-size:1.25rem}.service-card summary{font-size:1.125rem}}
@media(max-width:1000px) and (min-width:701px){.service-grid{grid-template-columns:1fr;gap:24px}.service-card{display:grid;grid-template-columns:240px minmax(0,1fr)}.service-card-heading{padding:31px 30px}.service-card h3{font-size:2.0625rem;min-height:0}.service-card-content{padding:30px}.service-card-content h4{min-height:0}.service-card-content>p{margin-bottom:23px}.service-card .card-top{margin-bottom:35px}}
@media(max-width:700px){.services-preview{padding-top:60px;padding-bottom:65px}.services-preview .section-heading{margin-bottom:30px}.services-preview .section-heading .eyebrow{font-size:1.125rem}.services-preview .section-heading>p{font-size:1.1875rem}.service-grid{grid-template-columns:1fr;gap:28px}.service-card-heading{padding:25px 26px 27px}.service-card h3{font-size:2.125rem;min-height:0}.service-card .card-top{margin-bottom:22px}.service-card-content{padding:25px 25px 27px}.service-card-content h4{font-size:1.3125rem;min-height:0}.service-card-content>p,.service-card details>p{font-size:1.1875rem}.service-card summary{font-size:1.125rem;min-height:57px}}

/* Readable at every breakpoint: 18px minimum, concise labels, natural wrapping. */
html{font-size:100%}
.eyebrow,.hero-copy .eyebrow,.services-preview .section-heading .eyebrow{font-size:1.125rem;font-weight:650;letter-spacing:.025em;line-height:1.5}
.hero-copy .eyebrow{white-space:normal;align-items:baseline;gap:10px}

.brand>span>span{font-size:1.125rem;letter-spacing:.015em;font-weight:500;line-height:1.4}
.brand>span{gap:3px}
.utility .container{min-height:48px;gap:24px}
.utility a{min-height:44px;flex:none}
.header nav a,.button,.menu-toggle{font-size:1.125rem}
.header nav a{padding:11px 12px}
.header-inner{height:auto;min-height:108px;padding-top:16px;padding-bottom:16px}
.hero-copy>p,.approach-band p,.image-story p,.booking-heading p,.service-card-content>p,.service-card details>p,.prose p{font-size:1.25rem;line-height:1.65}
.portrait-caption div{min-width:0}
.portrait-caption div>span,.trust-strip p,.footer-links a,.footer-bottom>div,.booking-label,.booking-support .button{font-size:1.125rem}
.service-card-content h4{min-height:0}
@media(min-width:1001px){.service-card-content h4{min-height:61px}}
.service-card summary{font-size:1.125rem;min-height:58px}
.footer-grid{gap:48px}
.footer-grid>div,.contact-options>div,.hero-copy,.hero-photo{min-width:0}
.prose p{overflow-wrap:anywhere}
.prose .button{max-width:100%}
@media(max-width:1100px){
  .header-inner{flex-wrap:wrap;gap:16px;min-height:92px}
  .header .brand strong{font-size:1.75rem}
  .header .brand img{width:55px;height:55px}
  .header-cta{display:none}
  .menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;background:white;border:1px solid #b79baa;border-radius:4px;padding:10px 14px;color:var(--magenta);min-height:48px}
  .header nav{display:none;width:100%;flex-direction:column;align-items:stretch;margin:0;gap:8px;background:#fff;padding:0 0 4px}
  .header nav.is-open{display:flex}
  .header nav a{font-size:1.125rem;padding:13px 16px}
  .header nav.is-open .mobile-contact{display:block;background:var(--magenta);color:white;border-color:var(--magenta)}
}
@media(max-width:760px){
  .utility .container{justify-content:center;min-height:48px}
  .utility .container>span{display:none}
  .utility a{font-size:1.125rem;padding:5px 12px}
  .utility .icon{display:block;width:18px;height:18px}
  .header-inner{gap:10px;padding-top:14px;padding-bottom:14px;min-height:88px}
  .header .brand{gap:9px}
  .header .brand img{width:45px;height:45px}
  .header .brand strong{font-size:1.5rem;letter-spacing:-.5px}
  .brand>span>span{letter-spacing:0}
  .menu-toggle{padding:9px 12px;gap:8px}
  .hero-copy .eyebrow{margin-bottom:20px}
  .portrait-caption{left:8px;right:8px;padding:17px 18px}
  .hero-photo{padding-bottom:38px}
  .trust-strip strong{font-size:1.1875rem}
  .approach-equation p{font-size:1.125rem}
  .contact-advisor{gap:15px}
  .contact-advisor img{flex:none}
  .booking-support .button{gap:8px;padding:12px}
}
@media(max-width:380px){
  .header .brand img{width:38px;height:38px}
  .header .brand{gap:7px}
  .header .brand strong{font-size:1.375rem}
  .header-inner{gap:7px}
  .menu-toggle{padding:9px;gap:6px}
  .menu-toggle>span{display:none}
  .hero-actions .button{gap:12px;padding:12px 16px}
  .service-card-heading{padding:25px 22px}
  .service-card-content{padding:24px 22px}
  .service-card summary{padding:13px 12px;gap:8px}
}

.veteran-small>.veteran-stars{color:var(--gold);letter-spacing:.12em;white-space:nowrap}
