:root{--navy:#102b4c;--gold:#d6a34d;--muted:#63758a}*{box-sizing:border-box}body{margin:0;font:16px/1.65 system-ui,Arial;color:#1c2d40;background:#f6f8fb}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.wrap{max-width:1140px;margin:auto;padding:0 24px}.top{background:#091c32;color:#fff;padding:8px 0;font-size:13px}.top .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e0e6ef}header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:20px}.logo{text-decoration:none;color:var(--navy);font-weight:900;font-size:20px;line-height:1.1}.logo small{display:block;font-size:11px;letter-spacing:2px;font-weight:600;color:var(--muted)}header nav{display:flex;gap:25px;align-items:center}header nav a{text-decoration:none;font-weight:650;font-size:14px}header nav a[aria-current=page]{color:#95651c}.btn{display:inline-block;background:var(--gold);padding:13px 22px;border-radius:6px;text-decoration:none;color:#102b4c;font-weight:800;border:0;cursor:pointer}.btn.dark{background:var(--navy);color:#fff}.menu{display:none;background:var(--navy);color:white;border:0;border-radius:5px;padding:10px 14px}.hero{background:linear-gradient(120deg,#0c2441,#214b75);color:#fff;padding:105px 0}.hero .wrap{max-width:1140px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;color:var(--gold)}h1{font-size:clamp(39px,6vw,67px);line-height:1.13;letter-spacing:-2px;max-width:770px;margin:14px 0}h2{font-size:clamp(29px,4vw,43px);line-height:1.2;letter-spacing:-1px;color:var(--navy)}.hero p{max-width:620px;color:#e3eaf2;font-size:18px}.hero .btn{margin-top:20px}.section{padding:80px 0}.intro{max-width:700px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}.card{background:#fff;border:1px solid #e0e7f0;border-radius:12px;padding:30px;box-shadow:0 8px 28px #122b4b0a}.card .num{color:#95651c;font-weight:800;font-size:13px}.card h3{color:var(--navy);font-size:20px;margin:14px 0 6px}.card p{color:var(--muted);font-size:14px}.card a{color:#1d4f84;font-weight:800;font-size:13px}.band{background:#eaf0f6}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.feature{background:#fff;padding:40px;border-radius:15px;border-left:5px solid var(--gold)}.feature strong{font-size:28px;color:var(--navy)}.cta{background:var(--navy);color:white;padding:55px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.cta h2{color:white;margin:0}.pagehero{background:var(--navy);color:white;padding:60px 0}.pagehero h1{font-size:clamp(36px,5vw,55px)}.pagehero p{max-width:680px;color:#c9d8e8}.details{display:grid;grid-template-columns:1fr 1fr;gap:30px}.panel{background:#fff;padding:32px;border:1px solid #dce4ee;border-radius:12px}.panel h2{margin-top:0}.service{padding:26px 0;border-bottom:1px solid #d8e1ec;scroll-margin-top:100px}.service h2{font-size:27px}.service p{max-width:770px;color:var(--muted)}.field{margin:15px 0}.field label{display:block;font-weight:750;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #b9c8d9;border-radius:5px;background:white;font:inherit}.field textarea{min-height:140px}.notice{background:#fff5df;padding:15px;border-left:4px solid var(--gold);font-size:13px}.legal{max-width:800px}.legal p{color:var(--muted)}footer{background:#08192c;color:#bdccdb;padding:48px 0 20px}footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}footer h3{color:white}footer a{display:block;color:#bdccdb;margin:6px 0}footer .copyright{border-top:1px solid #334357;margin-top:30px;padding-top:18px;font-size:12px}.skip{position:absolute;top:-80px;left:12px;background:white;padding:10px}.skip:focus{top:12px}.status{margin-top:15px;font-size:14px}.status textarea{width:100%;min-height:150px}@media(max-width:760px){.menu{display:block}header nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:20px 24px;flex-direction:column;align-items:flex-start;box-shadow:0 12px 20px #0002}header nav.open{display:flex}.cards,.split,.details,footer .cols{grid-template-columns:1fr}.hero{padding:70px 0}.section{padding:55px 0}.cta .wrap{align-items:flex-start;flex-direction:column}.top .wrap{display:block}.top .wrap span{display:block}}

/* Footer social media and Apple-inspired sitemap */
.footer-social{border-top:1px solid #334357;margin-top:30px;padding-top:22px}
.footer-social h3{font-size:15px;margin:0 0 13px}
.social-icons{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid #54677e;border-radius:50%;color:#dce5ee;background:#122a46;opacity:.78}
.social-icon svg{width:19px;height:19px}
.social-help{font-size:12px;color:#a9b8c9;margin:12px 0 0}
.sitemap-section{background:#fff}
.sitemap-intro{margin-bottom:32px}
.sitemap-intro h2{margin:0 0 10px}
.sitemap-intro p{color:var(--muted);margin:0}
.sitemap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 65px}
.sitemap-group{border-top:1px solid #dfe5ed;padding-top:16px}
.sitemap-group h3{font-size:15px;color:var(--navy);margin:0 0 14px}
.sitemap-group a{display:block;width:fit-content;text-decoration:none;color:#4b6077;font-size:14px;margin:10px 0}
.sitemap-group a:hover{text-decoration:underline;color:var(--navy)}
@media(max-width:760px){.sitemap-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}
@media(max-width:470px){.sitemap-grid{grid-template-columns:1fr}}

/* Compact social links anchored at the very bottom of the footer */
.footer-social{margin-top:12px;padding-top:12px;border-top:1px solid #334357;text-align:center}
.footer-social h3{font-size:12px;font-weight:600;margin:0 0 8px}
.social-icons{justify-content:center;gap:8px}
.social-icon{width:29px;height:29px;border-radius:50%;border-color:#4c6178;background:transparent}
.social-icon svg{width:14px;height:14px}
.social-help{font-size:10px;margin:7px 0 0}

/* Footer copyright and social icons on a single row */
footer .footer-bottom{border-top:1px solid #334357;margin-top:30px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
footer .footer-bottom .copyright{border-top:0;margin:0;padding:0;font-size:12px}
footer .footer-bottom .footer-social{border-top:0;margin:0;padding:0;text-align:right;margin-left:auto}
footer .footer-bottom .social-icons{justify-content:flex-end;gap:8px}
footer .footer-bottom .social-icon{width:29px;height:29px}
footer .footer-bottom .social-icon svg{width:14px;height:14px}
@media(max-width:600px){footer .footer-bottom{align-items:flex-start}footer .footer-bottom .footer-social{margin-left:auto}}

/* Company story, mission, and vision */
.about-opening p,.about-feature p{color:var(--muted)}
.about-feature strong{display:block;margin:12px 0}
.history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}
.history-card,.value-panel{background:#fff;border:1px solid #dce4ee;border-radius:12px;padding:30px}
.history-year{display:block;font-size:29px;font-weight:850;color:var(--navy);letter-spacing:-1px}
.history-card h3,.value-panel h3{color:var(--navy);margin:10px 0;font-size:20px;line-height:1.35}
.history-card p,.value-panel p{color:var(--muted);font-size:15px}
.about-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}
.about-service-grid a{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid #dce4ee;border-radius:10px;padding:24px;text-decoration:none;transition:border-color .2s,transform .2s}
.about-service-grid a:hover{border-color:var(--gold);transform:translateY(-2px)}
.about-service-grid span,.value-label{font-size:12px;color:#a2712a;font-weight:800;letter-spacing:1px}
.about-service-grid strong{color:var(--navy);font-size:18px}
.about-service-grid small{color:var(--muted);font-size:14px}
.values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.value-panel{border-top:4px solid var(--gold)}
@media(max-width:760px){.history-grid,.values-grid,.about-service-grid{grid-template-columns:1fr}}

/* Lightweight parallax: background moves gently while content remains readable. */
.parallax-section{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(120deg,#0c2441,#214b75);background-position:center;background-size:cover}
.pagehero.parallax-section{background-image:linear-gradient(125deg,#102b4c,#1a416a)}
.cta.parallax-section{background-image:linear-gradient(125deg,#102b4c,#1d466e)}
.parallax-section::before{content:"";position:absolute;inset:-18% -5%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 20%,rgba(214,163,77,.16),transparent 45%),radial-gradient(ellipse at 12% 90%,rgba(120,178,230,.12),transparent 48%);transform:translate3d(0,var(--parallax-shift,0px),0);will-change:transform}
.parallax-content{position:relative;z-index:1}
footer .copyright a{display:inline;margin:0;text-decoration:underline;text-underline-offset:2px;color:#f0c87c}
footer .copyright a:hover{color:#fff}
@media(prefers-reduced-motion:reduce){.parallax-section::before{transform:none!important;will-change:auto}}

/* Organized services */
.services-intro{max-width:820px;margin-bottom:54px}.services-intro h2{margin:12px 0}.services-intro p,.service-category-description{color:var(--muted);max-width:760px}.service-jump{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.service-jump a{background:#fff;border:1px solid #d9e2ed;border-radius:999px;color:var(--navy);padding:9px 17px;text-decoration:none;font-weight:750;font-size:14px}.service-jump a:hover{border-color:var(--gold);background:#fff8ed}.service-category{margin:0 0 68px;scroll-margin-top:110px}.service-category>h2{margin:8px 0 12px}.service-grid{display:grid;gap:18px;margin-top:30px}.primary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.additional-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-tile{background:#fff;border:1px solid #dce4ee;border-radius:13px;padding:26px;display:flex;flex-direction:column;min-width:0;scroll-margin-top:115px;box-shadow:0 7px 25px rgba(16,43,76,.035);transition:transform .2s ease,border-color .2s ease}.service-tile:hover{transform:translateY(-3px);border-color:#d6a34d}.primary-tile{border-top:4px solid var(--gold);padding-top:23px}.service-tile h3{font-size:21px;line-height:1.3;color:var(--navy);margin:15px 0 9px}.service-tile p{font-size:14px;color:var(--muted);margin:0 0 22px;flex:1}.service-link{color:#1d4f84;text-decoration:none;font-size:14px;font-weight:800}.service-link:hover{text-decoration:underline}.legacy-service-anchor{display:block;position:relative;top:-115px;height:0;visibility:hidden}@media(max-width:900px){.primary-grid,.additional-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.primary-grid,.additional-grid{grid-template-columns:1fr}.services-intro{margin-bottom:40px}.service-category{margin-bottom:50px}}@media(prefers-reduced-motion:reduce){.service-tile{transition:none}.service-tile:hover{transform:none}}

/* Consistent services layout: legacy anchors must not become grid items. */
.service-grid{align-items:stretch;grid-auto-flow:row;gap:20px}
.service-grid>.service-tile{height:100%;box-sizing:border-box;position:relative;display:flex;flex-direction:column;padding:26px;border:1px solid #dce4ee;border-top:3px solid #caa05c;border-radius:12px;background:#fff}
.service-grid>.primary-tile{border-top-color:var(--gold);background:#fff}
.service-tile>.legacy-service-anchor{position:absolute;top:-115px;left:0;width:1px;height:1px;visibility:hidden;pointer-events:none}
.service-tile .eyebrow{min-height:18px;margin:0;font-size:11px;letter-spacing:1.25px}
.service-tile h3{font-size:20px;line-height:1.35;margin:16px 0 12px;min-height:54px}
.service-tile p{font-size:14px;line-height:1.7;margin:0 0 24px;flex:1}
.service-tile .service-link{margin-top:auto;display:inline-flex;align-items:center;min-height:24px}
@media(max-width:620px){.service-tile h3{min-height:0}}


/* Site-wide appearance control: light, dark and OS-following system mode */
.theme-picker{display:flex;align-items:center;gap:7px;margin-left:auto;white-space:nowrap}
.theme-picker label{font-size:12px;font-weight:750;color:var(--muted)}
.theme-picker select{appearance:auto;max-width:104px;padding:7px 5px;border:1px solid #b9c8d9;border-radius:7px;background:#fff;color:#102b4c;font:600 12px/1.4 system-ui,Arial;cursor:pointer}
@media(max-width:800px){header .wrap{flex-wrap:wrap}.theme-picker{margin-left:auto}.theme-picker label{font-size:11px}}
@media(max-width:440px){.theme-picker label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.theme-picker select{max-width:91px;font-size:11px}}

/* Overrides are scoped to the effective theme, preserving brand-colored hero and footer. */
:root[data-theme="dark"]{--navy:#dbe9fc;--muted:#b0c0d2;--gold:#f0c87c;color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
@media(prefers-color-scheme:dark){:root[data-theme="system"]{--navy:#dbe9fc;--muted:#b0c0d2;--gold:#f0c87c;color-scheme:dark}}
:root[data-theme="dark"] body,:root[data-theme="dark"] :root[data-theme="system"] body{transition:background-color .18s,color .18s}
:root[data-theme="dark"] body{background:#0d1726;color:#e6edf7}
:root[data-theme="dark"] header{background:#152438;border-color:#34485e}
:root[data-theme="dark"] nav a:not(.btn){color:#e7edf6}
:root[data-theme="dark"] header nav a[aria-current=page]{color:#f0c87c}
:root[data-theme="dark"] .card,:root[data-theme="dark"] .feature,:root[data-theme="dark"] .history-card,:root[data-theme="dark"] .value-panel,:root[data-theme="dark"] .about-service-grid a,:root[data-theme="dark"] .service-grid>.service-tile,:root[data-theme="dark"] .service-jump a{background:#192b40;border-color:#354b62;color:#e6edf7}
:root[data-theme="dark"] .band{background:#142235}
:root[data-theme="dark"] .service-jump a:hover{background:#25364b}
:root[data-theme="dark"] .card a,:root[data-theme="dark"] .service-link{color:#a9d2ff}
:root[data-theme="dark"] .field input,:root[data-theme="dark"] .field select,:root[data-theme="dark"] .field textarea{background:#192b40;color:#f1f5fb;border-color:#647890}
:root[data-theme="dark"] .theme-picker select{background:#192b40;color:#e6edf7;border-color:#647890}
:root[data-theme="dark"] .btn.dark,:root[data-theme="dark"] .menu{background:#294e75;color:#fff}
:root[data-theme="dark"] .hero,:root[data-theme="dark"] .pagehero,:root[data-theme="dark"] .cta{--navy:#102b4c}
:root[data-theme="dark"] .hero h1,:root[data-theme="dark"] .pagehero h1,:root[data-theme="dark"] .cta h2{color:#fff}
:root[data-theme="dark"] footer{--navy:#102b4c}
:root[data-theme="dark"] .parallax-section{background-image:linear-gradient(120deg,#071629,#123452)}
:root[data-theme="dark"] .pagehero.parallax-section,:root[data-theme="dark"] .cta.parallax-section{background-image:linear-gradient(125deg,#071629,#123452)}
@media(prefers-color-scheme:dark){
:root[data-theme="system"] body{background:#0d1726;color:#e6edf7}
:root[data-theme="system"] header{background:#152438;border-color:#34485e}
:root[data-theme="system"] nav a:not(.btn){color:#e7edf6}
:root[data-theme="system"] header nav a[aria-current=page]{color:#f0c87c}
:root[data-theme="system"] .card,:root[data-theme="system"] .feature,:root[data-theme="system"] .history-card,:root[data-theme="system"] .value-panel,:root[data-theme="system"] .about-service-grid a,:root[data-theme="system"] .service-grid>.service-tile,:root[data-theme="system"] .service-jump a{background:#192b40;border-color:#354b62;color:#e6edf7}
:root[data-theme="system"] .band{background:#142235}
:root[data-theme="system"] .service-jump a:hover{background:#25364b}
:root[data-theme="system"] .card a,:root[data-theme="system"] .service-link{color:#a9d2ff}
:root[data-theme="system"] .field input,:root[data-theme="system"] .field select,:root[data-theme="system"] .field textarea{background:#192b40;color:#f1f5fb;border-color:#647890}
:root[data-theme="system"] .theme-picker select{background:#192b40;color:#e6edf7;border-color:#647890}
:root[data-theme="system"] .btn.dark,:root[data-theme="system"] .menu{background:#294e75;color:#fff}
:root[data-theme="system"] .hero,:root[data-theme="system"] .pagehero,:root[data-theme="system"] .cta{--navy:#102b4c}
:root[data-theme="system"] .hero h1,:root[data-theme="system"] .pagehero h1,:root[data-theme="system"] .cta h2{color:#fff}
:root[data-theme="system"] footer{--navy:#102b4c}
:root[data-theme="system"] .parallax-section{background-image:linear-gradient(120deg,#071629,#123452)}
:root[data-theme="system"] .pagehero.parallax-section,:root[data-theme="system"] .cta.parallax-section{background-image:linear-gradient(125deg,#071629,#123452)}
}
@media(prefers-reduced-motion:reduce){:root[data-theme="dark"] body,:root[data-theme="dark"] :root[data-theme="system"] body{transition:none}}

/* Compact appearance controls beside the phone/address in the top information bar. */
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.theme-switch{display:inline-flex;align-items:center;gap:3px;border:1px solid rgba(255,255,255,.32);border-radius:8px;padding:3px;white-space:nowrap}
.theme-option{font:600 11px/1.25 system-ui,Arial,sans-serif;padding:5px 8px;border:0;border-radius:5px;color:inherit;background:transparent;cursor:pointer}
.theme-option:hover,.theme-option:focus-visible{background:rgba(255,255,255,.16)}
.theme-option[aria-pressed="true"]{background:#f0c87c;color:#102b4c}
.theme-option:focus-visible{outline:2px solid #f0c87c;outline-offset:2px}
@media(max-width:640px){.top .wrap{justify-content:center;text-align:center}.top-actions{justify-content:center;gap:7px}.theme-option{padding:5px 7px}}


/* Tax-season campaign homepage */
.tax-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 25%,#214c71 0%,transparent 37%),linear-gradient(125deg,#091c32,#143453 65%,#0c2743);color:#fff;padding:92px 0 100px;isolation:isolate}.tax-orb{position:absolute;border:1px solid #ffffff1a;border-radius:50%;pointer-events:none}.tax-orb-a{width:690px;height:690px;right:-220px;top:-250px}.tax-orb-b{width:450px;height:450px;right:15%;bottom:-340px}.tax-hero-grid{display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:65px}.tax-pill{display:inline-flex;align-items:center;gap:12px;border:1px solid #ffffff38;border-radius:50px;padding:8px 15px;font-size:11px;letter-spacing:2px;font-weight:750;color:#d6a34d}.tax-pulse{width:8px;height:8px;border-radius:50%;background:#d6a34d;box-shadow:0 0 0 5px #e5b65d25}.tax-hero h1{font-size:clamp(46px,5.4vw,80px);line-height:1.09;letter-spacing:-3px;margin:24px 0}.tax-hero h1 em{font-style:normal;color:#d6a34d}.tax-hero-copy>p{color:#d0dce8;max-width:570px;font-size:17px;line-height:1.8}.tax-actions{display:flex;gap:13px;flex-wrap:wrap;margin:30px 0}.tax-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;text-decoration:none;font-weight:750;font-size:14px;border-radius:6px;padding:15px 22px;transition:transform .2s,background .2s}.tax-button:hover{transform:translateY(-3px)}.tax-button-primary{background:#e6b85e;color:#0b233b}.tax-button-primary:hover{background:#f2cb82}.tax-button-outline{border:1px solid #ffffff70;color:#fff}.tax-button-outline:hover{background:#ffffff19}.tax-hero-facts{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;color:#c4d0de;margin-top:32px}.tax-visual{min-height:490px;position:relative;display:flex;align-items:center;justify-content:center}.tax-visual-label{position:absolute;top:15px;left:8px;letter-spacing:2.4px;font-size:10px;color:#d6a34d}.tax-document{width:min(100%,355px);min-height:408px;padding:32px;background:#f9fafc;color:#102b4c;border-radius:12px;box-shadow:0 35px 80px #0007;transform:rotate(4deg)}.tax-document-top{display:flex;justify-content:space-between;align-items:center}.tax-doc-symbol{font-weight:950;font-size:23px;letter-spacing:-1px}.tax-doc-year{text-align:right;color:#95651c;font-weight:900;font-size:24px;line-height:1}.tax-doc-year small{font-size:8px;letter-spacing:1px}.tax-doc-rule{height:3px;background:#d6a34d;margin:22px 0}.tax-doc-title{font-size:25px;font-weight:850;letter-spacing:-1px}.tax-doc-sub{font-size:12px;color:#67768b;margin-bottom:24px}.tax-doc-item{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e2e7ee;padding:11px 0;font-size:13px;font-weight:650}.tax-check{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e4efe8;color:#29754a}.tax-doc-foot{margin-top:30px;font-size:8px;font-weight:750;letter-spacing:1.3px;color:#758498}.tax-float{position:absolute;background:#fff;color:#12324d;padding:12px 17px;border-radius:9px;box-shadow:0 14px 32px #0003;font-size:12px;font-weight:800}.tax-float-one{top:100px;right:-10px;transform:rotate(-5deg)}.tax-float-two{bottom:62px;left:-24px;transform:rotate(-6deg)}.tax-trust{background:#d6a34d;color:#142a40;padding:17px 0}.tax-trust-grid{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;font-weight:850;letter-spacing:1.4px}.tax-section{padding:94px 0}.tax-kicker{font-size:11px;letter-spacing:2.2px;font-weight:850;color:#95651c;margin-bottom:13px}.tax-section h2,.tax-end-cta h2{font-size:clamp(34px,4.2vw,54px);line-height:1.15;letter-spacing:-1.7px;margin:0 0 24px}.tax-section-head{display:grid;grid-template-columns:1fr .75fr;gap:55px;align-items:end;margin-bottom:35px}.tax-section-head>p{color:var(--muted);max-width:460px}.tax-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tax-service-card{border:1px solid #dce3ed;background:#fff;border-radius:12px;padding:33px;display:flex;flex-direction:column;min-height:310px;transition:transform .2s,box-shadow .2s}.tax-service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #102b4c15}.tax-service-icon{width:50px;height:50px;border-radius:10px;display:grid;place-items:center;background:#f4ead7;color:#95651c;font-weight:850;margin-bottom:25px}.tax-service-card h3{font-size:21px;line-height:1.3;margin:0 0 12px}.tax-service-card p{color:#65768a;font-size:14px;line-height:1.75;margin:0 0 25px}.tax-service-card a{margin-top:auto;font-weight:800;font-size:13px;color:#95651c;text-decoration:none}.tax-prep-band{background:#102b4c;color:#fff}.tax-prep-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.tax-prep-band h2{color:#fff}.tax-prep-band p{color:#d1dce8;max-width:450px}.tax-prep-band .tax-button{margin-top:15px}.tax-checklist{background:#fff;color:#112a45;padding:35px;border-radius:12px;box-shadow:0 22px 50px #0002}.tax-checklist-heading{display:flex;justify-content:space-between;color:#95651c;font-size:11px;font-weight:900;letter-spacing:2px}.tax-checklist ul{list-style:none;margin:12px 0;padding:0}.tax-checklist li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #e4e9ee}.tax-checklist li>span{color:#d6a34d;font-weight:850;font-size:13px}.tax-checklist strong{display:block;font-size:14px}.tax-checklist small{display:block;color:#68798a;font-size:12px;margin-top:4px}.tax-checklist .tax-checklist-note{color:#7a8899;font-size:11px;margin-bottom:0}.tax-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:35px}.tax-reasons>div{border-top:2px solid #d6a34d;padding-top:23px}.tax-reason-number{font-size:42px;font-weight:900;color:#95651c;letter-spacing:-2px}.tax-reasons h3{font-size:19px;margin:10px 0}.tax-reasons p{font-size:14px;color:var(--muted)}.tax-faq-band{background:#eaf0f6}.tax-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.tax-faq-grid>div>p{color:#65768a}.tax-text-link{font-weight:850;color:#95651c}.tax-faqs details{border-bottom:1px solid #cdd8e3;padding:18px 0}.tax-faqs summary{cursor:pointer;font-size:16px;font-weight:800;padding-right:25px}.tax-faqs details p{font-size:14px;color:#586b80}.tax-end-cta{text-align:center;color:#fff;background:radial-gradient(circle at 50% 0%,#2b5375,#0b2038 65%);padding:95px 0}.tax-end-cta h2{color:#fff}.tax-end-cta p{color:#d0dce8}.tax-actions-center{justify-content:center}.tax-cta-address{font-size:12px;color:#bdc9d7;margin-top:26px}.tax-other-services{background:#d6a34d;color:#112a45;padding:26px 0}.tax-other-services .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.tax-other-services span{font-size:10px;font-weight:900;letter-spacing:1px}.tax-other-services p{margin:0;flex:1;font-size:13px}.tax-other-services a{font-weight:850;font-size:13px;text-decoration:none}
/* Dark appearance: keep intentional navy campaign panels while adapting light surfaces */
:root[data-theme="dark"] .tax-service-card{background:#1b2e43;border-color:#39516a}:root[data-theme="dark"] .tax-service-card p,:root[data-theme="dark"] .tax-reasons p,:root[data-theme="dark"] .tax-section-head>p{color:#b6c5d4}:root[data-theme="dark"] .tax-faq-band{background:#14273c}:root[data-theme="dark"] .tax-faq-grid>div>p,:root[data-theme="dark"] .tax-faqs details p{color:#b9c9d9}:root[data-theme="dark"] .tax-faqs details{border-color:#40556d}:root[data-theme="dark"] .tax-service-icon{background:#554224;color:#f0c87c}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .tax-service-card{background:#1b2e43;border-color:#39516a}:root[data-theme="system"] .tax-service-card p,:root[data-theme="system"] .tax-reasons p,:root[data-theme="system"] .tax-section-head>p{color:#b6c5d4}:root[data-theme="system"] .tax-faq-band{background:#14273c}:root[data-theme="system"] .tax-faq-grid>div>p,:root[data-theme="system"] .tax-faqs details p{color:#b9c9d9}:root[data-theme="system"] .tax-faqs details{border-color:#40556d}}
@media(max-width:850px){.tax-hero-grid,.tax-prep-grid,.tax-faq-grid{grid-template-columns:1fr;gap:38px}.tax-hero{padding:70px 0}.tax-visual{min-height:440px}.tax-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tax-section-head{grid-template-columns:1fr;gap:0}.tax-reasons{grid-template-columns:1fr;gap:15px}.tax-section{padding:65px 0}}
@media(max-width:560px){.tax-hero h1{font-size:43px;letter-spacing:-1.8px}.tax-service-grid{grid-template-columns:1fr}.tax-visual{min-height:400px}.tax-document{width:83%;min-height:365px;padding:23px}.tax-float-one{right:0;top:65px}.tax-float-two{left:0;bottom:25px}.tax-trust-grid{justify-content:center;text-align:center}.tax-actions{flex-direction:column}.tax-actions .tax-button{width:100%}.tax-checklist{padding:24px}.tax-section{padding:55px 0}}
@media(prefers-reduced-motion:reduce){.tax-button,.tax-service-card{transition:none}.tax-button:hover,.tax-service-card:hover{transform:none}}


/* Tax-season campaign homepage */
.tax-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 25%,#214c71 0%,transparent 37%),linear-gradient(125deg,#091c32,#143453 65%,#0c2743);color:#fff;padding:92px 0 100px;isolation:isolate}.tax-orb{position:absolute;border:1px solid #ffffff1a;border-radius:50%;pointer-events:none}.tax-orb-a{width:690px;height:690px;right:-220px;top:-250px}.tax-orb-b{width:450px;height:450px;right:15%;bottom:-340px}.tax-hero-grid{display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:65px}.tax-pill{display:inline-flex;align-items:center;gap:12px;border:1px solid #ffffff38;border-radius:50px;padding:8px 15px;font-size:11px;letter-spacing:2px;font-weight:750;color:#d6a34d}.tax-pulse{width:8px;height:8px;border-radius:50%;background:#d6a34d;box-shadow:0 0 0 5px #e5b65d25}.tax-hero h1{font-size:clamp(46px,5.4vw,80px);line-height:1.09;letter-spacing:-3px;margin:24px 0}.tax-hero h1 em{font-style:normal;color:#d6a34d}.tax-hero-copy>p{color:#d0dce8;max-width:570px;font-size:17px;line-height:1.8}.tax-actions{display:flex;gap:13px;flex-wrap:wrap;margin:30px 0}.tax-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;text-decoration:none;font-weight:750;font-size:14px;border-radius:6px;padding:15px 22px;transition:transform .2s,background .2s}.tax-button:hover{transform:translateY(-3px)}.tax-button-primary{background:#e6b85e;color:#0b233b}.tax-button-primary:hover{background:#f2cb82}.tax-button-outline{border:1px solid #ffffff70;color:#fff}.tax-button-outline:hover{background:#ffffff19}.tax-hero-facts{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;color:#c4d0de;margin-top:32px}.tax-visual{min-height:490px;position:relative;display:flex;align-items:center;justify-content:center}.tax-visual-label{position:absolute;top:15px;left:8px;letter-spacing:2.4px;font-size:10px;color:#d6a34d}.tax-document{width:min(100%,355px);min-height:408px;padding:32px;background:#f9fafc;color:#102b4c;border-radius:12px;box-shadow:0 35px 80px #0007;transform:rotate(4deg)}.tax-document-top{display:flex;justify-content:space-between;align-items:center}.tax-doc-symbol{font-weight:950;font-size:23px;letter-spacing:-1px}.tax-doc-year{text-align:right;color:#95651c;font-weight:900;font-size:24px;line-height:1}.tax-doc-year small{font-size:8px;letter-spacing:1px}.tax-doc-rule{height:3px;background:#d6a34d;margin:22px 0}.tax-doc-title{font-size:25px;font-weight:850;letter-spacing:-1px}.tax-doc-sub{font-size:12px;color:#67768b;margin-bottom:24px}.tax-doc-item{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e2e7ee;padding:11px 0;font-size:13px;font-weight:650}.tax-check{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e4efe8;color:#29754a}.tax-doc-foot{margin-top:30px;font-size:8px;font-weight:750;letter-spacing:1.3px;color:#758498}.tax-float{position:absolute;background:#fff;color:#12324d;padding:12px 17px;border-radius:9px;box-shadow:0 14px 32px #0003;font-size:12px;font-weight:800}.tax-float-one{top:100px;right:-10px;transform:rotate(-5deg)}.tax-float-two{bottom:62px;left:-24px;transform:rotate(-6deg)}.tax-trust{background:#d6a34d;color:#142a40;padding:17px 0}.tax-trust-grid{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;font-weight:850;letter-spacing:1.4px}.tax-section{padding:94px 0}.tax-kicker{font-size:11px;letter-spacing:2.2px;font-weight:850;color:#95651c;margin-bottom:13px}.tax-section h2,.tax-end-cta h2{font-size:clamp(34px,4.2vw,54px);line-height:1.15;letter-spacing:-1.7px;margin:0 0 24px}.tax-section-head{display:grid;grid-template-columns:1fr .75fr;gap:55px;align-items:end;margin-bottom:35px}.tax-section-head>p{color:var(--muted);max-width:460px}.tax-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tax-service-card{border:1px solid #dce3ed;background:#fff;border-radius:12px;padding:33px;display:flex;flex-direction:column;min-height:310px;transition:transform .2s,box-shadow .2s}.tax-service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #102b4c15}.tax-service-icon{width:50px;height:50px;border-radius:10px;display:grid;place-items:center;background:#f4ead7;color:#95651c;font-weight:850;margin-bottom:25px}.tax-service-card h3{font-size:21px;line-height:1.3;margin:0 0 12px}.tax-service-card p{color:#65768a;font-size:14px;line-height:1.75;margin:0 0 25px}.tax-service-card a{margin-top:auto;font-weight:800;font-size:13px;color:#95651c;text-decoration:none}.tax-prep-band{background:#102b4c;color:#fff}.tax-prep-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.tax-prep-band h2{color:#fff}.tax-prep-band p{color:#d1dce8;max-width:450px}.tax-prep-band .tax-button{margin-top:15px}.tax-checklist{background:#fff;color:#112a45;padding:35px;border-radius:12px;box-shadow:0 22px 50px #0002}.tax-checklist-heading{display:flex;justify-content:space-between;color:#95651c;font-size:11px;font-weight:900;letter-spacing:2px}.tax-checklist ul{list-style:none;margin:12px 0;padding:0}.tax-checklist li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #e4e9ee}.tax-checklist li>span{color:#d6a34d;font-weight:850;font-size:13px}.tax-checklist strong{display:block;font-size:14px}.tax-checklist small{display:block;color:#68798a;font-size:12px;margin-top:4px}.tax-checklist .tax-checklist-note{color:#7a8899;font-size:11px;margin-bottom:0}.tax-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:35px}.tax-reasons>div{border-top:2px solid #d6a34d;padding-top:23px}.tax-reason-number{font-size:42px;font-weight:900;color:#95651c;letter-spacing:-2px}.tax-reasons h3{font-size:19px;margin:10px 0}.tax-reasons p{font-size:14px;color:var(--muted)}.tax-faq-band{background:#eaf0f6}.tax-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.tax-faq-grid>div>p{color:#65768a}.tax-text-link{font-weight:850;color:#95651c}.tax-faqs details{border-bottom:1px solid #cdd8e3;padding:18px 0}.tax-faqs summary{cursor:pointer;font-size:16px;font-weight:800;padding-right:25px}.tax-faqs details p{font-size:14px;color:#586b80}.tax-end-cta{text-align:center;color:#fff;background:radial-gradient(circle at 50% 0%,#2b5375,#0b2038 65%);padding:95px 0}.tax-end-cta h2{color:#fff}.tax-end-cta p{color:#d0dce8}.tax-actions-center{justify-content:center}.tax-cta-address{font-size:12px;color:#bdc9d7;margin-top:26px}.tax-other-services{background:#d6a34d;color:#112a45;padding:26px 0}.tax-other-services .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.tax-other-services span{font-size:10px;font-weight:900;letter-spacing:1px}.tax-other-services p{margin:0;flex:1;font-size:13px}.tax-other-services a{font-weight:850;font-size:13px;text-decoration:none}
/* Dark appearance: keep intentional navy campaign panels while adapting light surfaces */
:root[data-theme="dark"] .tax-service-card{background:#1b2e43;border-color:#39516a}:root[data-theme="dark"] .tax-service-card p,:root[data-theme="dark"] .tax-reasons p,:root[data-theme="dark"] .tax-section-head>p{color:#b6c5d4}:root[data-theme="dark"] .tax-faq-band{background:#14273c}:root[data-theme="dark"] .tax-faq-grid>div>p,:root[data-theme="dark"] .tax-faqs details p{color:#b9c9d9}:root[data-theme="dark"] .tax-faqs details{border-color:#40556d}:root[data-theme="dark"] .tax-service-icon{background:#554224;color:#f0c87c}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .tax-service-card{background:#1b2e43;border-color:#39516a}:root[data-theme="system"] .tax-service-card p,:root[data-theme="system"] .tax-reasons p,:root[data-theme="system"] .tax-section-head>p{color:#b6c5d4}:root[data-theme="system"] .tax-faq-band{background:#14273c}:root[data-theme="system"] .tax-faq-grid>div>p,:root[data-theme="system"] .tax-faqs details p{color:#b9c9d9}:root[data-theme="system"] .tax-faqs details{border-color:#40556d}}
@media(max-width:850px){.tax-hero-grid,.tax-prep-grid,.tax-faq-grid{grid-template-columns:1fr;gap:38px}.tax-hero{padding:70px 0}.tax-visual{min-height:440px}.tax-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tax-section-head{grid-template-columns:1fr;gap:0}.tax-reasons{grid-template-columns:1fr;gap:15px}.tax-section{padding:65px 0}}
@media(max-width:560px){.tax-hero h1{font-size:43px;letter-spacing:-1.8px}.tax-service-grid{grid-template-columns:1fr}.tax-visual{min-height:400px}.tax-document{width:83%;min-height:365px;padding:23px}.tax-float-one{right:0;top:65px}.tax-float-two{left:0;bottom:25px}.tax-trust-grid{justify-content:center;text-align:center}.tax-actions{flex-direction:column}.tax-actions .tax-button{width:100%}.tax-checklist{padding:24px}.tax-section{padding:55px 0}}
@media(prefers-reduced-motion:reduce){.tax-button,.tax-service-card{transition:none}.tax-button:hover,.tax-service-card:hover{transform:none}}

/* Privacy and accessibility hardening */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #d6a34d!important;outline-offset:3px!important}
#main:focus{outline:none}
.form-privacy-note{padding:1rem 1.1rem;border-left:4px solid #b57b21;background:rgba(181,123,33,.09);border-radius:.35rem;line-height:1.6}
.legal{max-width:850px}.legal p,.legal li{line-height:1.8}.legal h3{margin-top:1.6rem}.legal a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.footer-bottom{flex-wrap:wrap;gap:1rem}.footer-social{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Accessible bilingual first-visit selector and compact top-bar language control */
.language-dialog[hidden]{display:none!important}.language-dialog{position:fixed;inset:0;z-index:9999;background:rgba(4,17,33,.82);display:grid;place-items:center;padding:1rem;overflow-y:auto}.language-open{overflow:hidden}.language-card{background:#fff;color:#102b4c;border-radius:22px;padding:clamp(1.4rem,4vw,2.8rem);width:min(100%,580px);box-shadow:0 22px 80px rgba(0,0,0,.38);text-align:center}.language-card h2{font-size:clamp(1.4rem,3.5vw,2.2rem);line-height:1.2;color:#102b4c;margin:.5rem 0 1rem}.language-card p{color:#41546b;margin-bottom:1.7rem}.language-eyebrow{color:#95651c;letter-spacing:.15em;font-weight:800;font-size:.78rem}.language-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.language-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.3rem .7rem;background:#f4f7fa;color:#102b4c;border:2px solid #d5dfe9;border-radius:14px;cursor:pointer;font:inherit;min-height:140px}.language-choices button:hover,.language-choices button:focus-visible{border-color:#95651c;background:#fffaf0}.language-choices svg{width:76px;height:48px;box-shadow:0 2px 9px rgba(0,0,0,.15);border-radius:3px}.language-choices strong{display:block;font-size:1.12rem}.language-choices small{display:block;color:#516276;font-size:.78rem}.language-top{display:inline-flex;gap:4px;align-items:center;border-left:1px solid rgba(255,255,255,.25);padding-left:10px}.language-top button{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1px solid rgba(255,255,255,.4);border-radius:5px;padding:4px 6px;color:#fff;cursor:pointer;font:inherit;font-size:.75rem}.language-top button[aria-pressed="true"]{background:#d6a34d;border-color:#d6a34d;color:#102b4c;font-weight:800}.language-top svg{width:22px;height:14px;border-radius:1px}.language-top button:focus-visible,.language-choices button:focus-visible{outline:3px solid #d6a34d;outline-offset:3px}.contact-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.4rem 0}.visit-list{padding-left:1.5rem;line-height:1.9}@media(max-width:550px){.language-choices{grid-template-columns:1fr}.language-choices button{min-height:90px;flex-direction:row}.language-choices svg{width:55px;height:35px}.language-top{border-left:0;padding-left:0}}

/* Accessible bilingual contact inquiry form */
.inquiry-panel{grid-column:1/-1;max-width:850px;width:100%;margin-inline:auto}
.inquiry-form{display:grid;gap:1.15rem;margin-top:1.25rem}
.form-row{display:grid;gap:.4rem}
.form-row label{font-weight:650}
.form-row input,.form-row select,.form-row textarea{width:100%;min-height:46px;border:1px solid var(--line,#9aa9b8);border-radius:10px;padding:.75rem .9rem;background:var(--surface,#fff);color:var(--ink,#18293b);font:inherit}
.form-row textarea{min-height:135px;resize:vertical}
.form-row input:focus-visible,.form-row select:focus-visible,.form-row textarea:focus-visible,.form-consent input:focus-visible{outline:3px solid #cfaa55;outline-offset:2px}
.form-consent{display:flex;align-items:flex-start;gap:.65rem;line-height:1.5;font-size:.95rem}
.form-consent input{flex:none;width:19px;height:19px;margin-top:.15rem;accent-color:#b38b36}
.form-small{font-size:.92rem;margin:0}
.form-feedback:empty{display:none}
.form-feedback:not(:empty){padding:.85rem 1rem;border:1px solid currentColor;border-radius:9px;margin:1rem 0}
.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* Keep office details and contact form aligned side by side. */
.details > .inquiry-panel{grid-column:auto;max-width:none;width:auto;margin:0}
@media(max-width:760px){.details > .inquiry-panel{grid-column:auto}}

/* Contact form: clean, spacious layout inspired by the supplied reference. */
.details:has(.contact-form-showcase){display:flex;flex-direction:column;gap:2.25rem;max-width:1080px;margin-inline:auto}
.details .contact-form-showcase{width:100%;max-width:none;margin:0;padding:clamp(1.25rem,4vw,3.25rem);background:var(--surface,#fff)}
.contact-form-showcase h2{color:#ec664f;font-size:clamp(2.1rem,4.5vw,3.5rem);line-height:1.12;margin:0 0 .6rem}
.contact-form-showcase>p{font-size:clamp(1.08rem,2.1vw,1.4rem);line-height:1.5;padding-bottom:1.65rem;border-bottom:1px solid var(--line,#d4d8dd);margin-bottom:1.75rem}
.inquiry-form-modern{gap:1.35rem;margin-top:0}
.inquiry-form-modern .name-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.inquiry-form-modern .form-row{gap:.5rem}
.inquiry-form-modern .form-row input,.inquiry-form-modern .form-row select,.inquiry-form-modern .form-row textarea{min-height:60px;padding:1rem 1.15rem;border-radius:5px;border:1.5px solid var(--line,#cbd3db);background:var(--surface,#fff);color:var(--ink,#1c2635);font-size:1.05rem}
.inquiry-form-modern .form-row input::placeholder,.inquiry-form-modern .form-row textarea::placeholder{color:var(--muted,#697483);opacity:1}
.inquiry-form-modern .form-row select{appearance:auto}
.inquiry-form-modern .form-row textarea{min-height:140px}
.inquiry-form-modern .form-row label:not(.visually-hidden){font-size:1.05rem;font-weight:550}
.inquiry-form-modern .required-star{color:#ec664f}
.inquiry-form-modern .form-consent{display:flex;align-items:flex-start;gap:.7rem;font-size:1rem;line-height:1.6}
.inquiry-form-modern .form-consent input{flex:0 0 auto;width:19px;height:19px;margin-top:.3rem;accent-color:#ec664f}
.inquiry-form-modern .form-consent a{color:#df614c;text-decoration:underline;text-underline-offset:3px}
.inquiry-form-modern .contact-submit{justify-self:start;background:#ed674f;color:white;border:0;border-radius:14px;padding:1rem 1.65rem;font-weight:650;min-height:54px}
.inquiry-form-modern .contact-submit:hover{background:#cf503c}
.inquiry-form-modern :is(input,select,textarea,button,a):focus-visible{outline:3px solid #c39a34;outline-offset:3px}
.details .office-info-after-form{width:100%;max-width:none}
@media(max-width:600px){.inquiry-form-modern .name-pair{grid-template-columns:1fr}.details .contact-form-showcase{padding:1.2rem}}


/* Branded contact form: retain spacious reference layout with W & E navy/gold palette. */
.details:has(.contact-form-showcase){max-width:1080px}
.details .contact-form-showcase{background:var(--surface,#fff);border:1px solid var(--line,#dce4ee);border-radius:14px;box-shadow:0 8px 28px rgba(16,43,76,.06)}
.contact-form-showcase h2{color:var(--navy,#102b4c);font-weight:800;letter-spacing:-.035em}
.contact-form-showcase>p{color:var(--muted,#63758a);border-bottom-color:var(--line,#dce4ee)}
.inquiry-form-modern .form-row input,.inquiry-form-modern .form-row select,.inquiry-form-modern .form-row textarea{border:1px solid var(--line,#b9c8d9);border-radius:9px;background:var(--surface,#fff);color:var(--ink,#1c2d40);transition:border-color .18s,box-shadow .18s}
.inquiry-form-modern .form-row input:focus,.inquiry-form-modern .form-row select:focus,.inquiry-form-modern .form-row textarea:focus{border-color:var(--gold,#d6a34d);box-shadow:0 0 0 3px rgba(214,163,77,.17)}
.inquiry-form-modern .required-star{color:#95651c}
.inquiry-form-modern .form-consent input{accent-color:var(--navy,#102b4c)}
.inquiry-form-modern .form-consent a{color:var(--link,#1d4f84);text-decoration:underline;text-underline-offset:3px}
.inquiry-form-modern .contact-submit{background:var(--gold,#d6a34d);color:#102b4c;border-radius:7px;font-weight:800;box-shadow:none}
.inquiry-form-modern .contact-submit:hover{background:#d6a34d;color:#102b4c}
.inquiry-form-modern .contact-submit:focus-visible{outline:3px solid var(--navy,#102b4c);outline-offset:3px}
:root[data-theme="dark"] .contact-form-showcase h2{color:#f1f5fb}
:root[data-theme="dark"] .inquiry-form-modern .contact-submit{color:#102b4c}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .contact-form-showcase h2{color:#f1f5fb}}

/* Contact page: restore branded two-column layout on desktop. */
@media (min-width: 900px) {
  .details:has(.contact-form-showcase) {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(290px, 1fr);
    align-items: start;
    gap: 1.75rem;
    max-width: 1200px;
    margin-inline: auto;
  }
  .details:has(.contact-form-showcase) > .contact-form-showcase,
  .details:has(.contact-form-showcase) > .office-info-after-form {
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    grid-column: auto;
  }
}
@media (max-width: 899px) {
  .details:has(.contact-form-showcase) {display:grid;grid-template-columns:minmax(0,1fr);max-width:760px;gap:1.5rem}
}

/* Privacy page: consistent centered content width and spacing */
.pagehero:has(+ .section .legal) .wrap{max-width:850px;margin-inline:auto;width:100%;}
.section:has(.legal) .wrap.legal{max-width:850px;margin-inline:auto;width:100%;padding-inline:24px;overflow-wrap:anywhere;}
.section:has(.legal) .legal h2{margin-top:0;}
.section:has(.legal) .legal p{margin-block:0 1.25rem;}
.section:has(.legal) .legal h3{line-height:1.35;}
@media(max-width:600px){.section:has(.legal){padding-block:42px}.pagehero:has(+ .section .legal){padding-block:45px}}

/* Contact page: centered single-column business information */
.contact-info-only{display:block;width:min(100% - 2rem,850px);margin-inline:auto;}
.contact-info-only .office-info-card{width:100%;max-width:none;margin:0;box-sizing:border-box;}
.contact-info-only .office-info-card p{line-height:1.7;}
@media(max-width:600px){.contact-info-only{width:min(100% - 1.5rem,850px);}}

/* Sitemap: theme-aware surface, text, separators and accessible links. */
.sitemap-section{background:#fff;color:#18314c}
.sitemap-group h3{color:#17375b}
.sitemap-group a{color:#38546e;text-decoration-thickness:1px;text-underline-offset:3px}
.sitemap-group a:hover,.sitemap-group a:focus-visible{color:#102b4c;text-decoration:underline}
.sitemap-group a:focus-visible{outline:3px solid #b98727;outline-offset:4px;border-radius:2px}
:root[data-theme="dark"] .sitemap-section{background:#0d1726;color:#e6edf7}
:root[data-theme="dark"] .sitemap-group{border-top-color:#40566f}
:root[data-theme="dark"] .sitemap-group h3{color:#f0c87c}
:root[data-theme="dark"] .sitemap-group a{color:#c8dcf3}
:root[data-theme="dark"] .sitemap-group a:hover,:root[data-theme="dark"] .sitemap-group a:focus-visible{color:#f0c87c}
@media(prefers-color-scheme:dark){
 :root[data-theme="system"] .sitemap-section{background:#0d1726;color:#e6edf7}
 :root[data-theme="system"] .sitemap-group{border-top-color:#40566f}
 :root[data-theme="system"] .sitemap-group h3{color:#f0c87c}
 :root[data-theme="system"] .sitemap-group a{color:#c8dcf3}
 :root[data-theme="system"] .sitemap-group a:hover,:root[data-theme="system"] .sitemap-group a:focus-visible{color:#f0c87c}
}

/* Comprehensive 2026-10 dark-theme pass: shared semantic colors and components. */
:root[data-theme="dark"]{--surface:#192b40;--ink:#e8eff8;--line:#40566e;--link:#b4d7ff;--navy:#e0ecfc;--muted:#b7c7d9;--gold:#f0c87c;color-scheme:dark}
:root[data-theme="dark"] body{background:#0d1726;color:#e8eff8}
:root[data-theme="dark"] header{background:#152438;border-color:#40566e}
:root[data-theme="dark"] header .logo{color:#eaf2ff}
:root[data-theme="dark"] header .logo small{color:#b7c7d9}
:root[data-theme="dark"] nav a:not(.btn){color:#e8eff8}
:root[data-theme="dark"] header nav a[aria-current="page"]{color:#f1c778}
:root[data-theme="dark"] header nav.open{background:#152438;box-shadow:0 14px 32px #0008}
:root[data-theme="dark"] h2{color:#e8eff8}
:root[data-theme="dark"] .intro,:root[data-theme="dark"] .sitemap-intro p,:root[data-theme="dark"] .services-intro p,:root[data-theme="dark"] .service-category-description{color:#b7c7d9}
:root[data-theme="dark"] .card,:root[data-theme="dark"] .feature,:root[data-theme="dark"] .panel,:root[data-theme="dark"] .history-card,:root[data-theme="dark"] .value-panel,:root[data-theme="dark"] .about-service-grid a,:root[data-theme="dark"] .service-grid>.service-tile,:root[data-theme="dark"] .tax-service-card,:root[data-theme="dark"] .contact-form-showcase{background:#192b40;border-color:#40566e;color:#e8eff8}
:root[data-theme="dark"] .card h3,:root[data-theme="dark"] .card .num,:root[data-theme="dark"] .history-year,:root[data-theme="dark"] .history-card h3,:root[data-theme="dark"] .value-panel h3,:root[data-theme="dark"] .about-service-grid strong,:root[data-theme="dark"] .feature strong,:root[data-theme="dark"] .panel h2,:root[data-theme="dark"] .service h2,:root[data-theme="dark"] .service-category h2,:root[data-theme="dark"] .tax-service-card h3{color:#edf4ff}
:root[data-theme="dark"] .card p,:root[data-theme="dark"] .history-card p,:root[data-theme="dark"] .value-panel p,:root[data-theme="dark"] .about-service-grid small,:root[data-theme="dark"] .about-opening p,:root[data-theme="dark"] .about-feature p,:root[data-theme="dark"] .service p,:root[data-theme="dark"] .legal p,:root[data-theme="dark"] .legal li,:root[data-theme="dark"] .tax-service-card p,:root[data-theme="dark"] .tax-reasons p{color:#b7c7d9}
:root[data-theme="dark"] .card a,:root[data-theme="dark"] .service-link,:root[data-theme="dark"] .legal a,:root[data-theme="dark"] .tax-service-card a,:root[data-theme="dark"] .tax-text-link{color:#f0c87c}
:root[data-theme="dark"] .band,:root[data-theme="dark"] .tax-faq-band{background:#142438}
:root[data-theme="dark"] .service-jump a{background:#1b2f46;border-color:#40566e;color:#e8eff8}
:root[data-theme="dark"] .service-jump a:hover{background:#28425b}
:root[data-theme="dark"] .service-category,:root[data-theme="dark"] .service,:root[data-theme="dark"] .tax-faqs details{border-color:#40566e}
:root[data-theme="dark"] .field input,:root[data-theme="dark"] .field select,:root[data-theme="dark"] .field textarea,:root[data-theme="dark"] .form-row input,:root[data-theme="dark"] .form-row select,:root[data-theme="dark"] .form-row textarea,:root[data-theme="dark"] .inquiry-form-modern .form-row input,:root[data-theme="dark"] .inquiry-form-modern .form-row select,:root[data-theme="dark"] .inquiry-form-modern .form-row textarea{background:#102238;color:#f2f6fc;border-color:#657a90}
:root[data-theme="dark"] .field input::placeholder,:root[data-theme="dark"] .form-row input::placeholder,:root[data-theme="dark"] .form-row textarea::placeholder{color:#afc0d3}
:root[data-theme="dark"] .notice,:root[data-theme="dark"] .form-privacy-note{background:#40341f;color:#f4e4c6;border-color:#d9ad5e}
:root[data-theme="dark"] .notice a,:root[data-theme="dark"] .form-privacy-note a{color:#ffe2a1}
:root[data-theme="dark"] .contact-form-showcase>p{color:#b7c7d9;border-color:#40566e}
:root[data-theme="dark"] .inquiry-form-modern .form-consent a{color:#b4d7ff}
:root[data-theme="dark"] .inquiry-form-modern .contact-submit,:root[data-theme="dark"] .btn{background:#f0c87c;color:#102b4c}
:root[data-theme="dark"] .btn.dark,:root[data-theme="dark"] .menu{background:#294e75;color:#fff}
:root[data-theme="dark"] .sitemap-section{background:#0d1726;color:#e8eff8}
:root[data-theme="dark"] .sitemap-group{border-color:#40566e}
:root[data-theme="dark"] .sitemap-group h3{color:#f0c87c}
:root[data-theme="dark"] .sitemap-group a{color:#c8dcf3}
:root[data-theme="dark"] .sitemap-group a:hover,:root[data-theme="dark"] .sitemap-group a:focus-visible{color:#f0c87c}
:root[data-theme="dark"] .tax-faq-grid>div>p,:root[data-theme="dark"] .tax-faqs details p,:root[data-theme="dark"] .tax-section-head>p{color:#b7c7d9}
:root[data-theme="dark"] .tax-service-icon{background:#554224;color:#f0c87c}
:root[data-theme="dark"] .tax-reasons>div{border-color:#cba357}
:root[data-theme="dark"] .tax-faqs summary{color:#e8eff8}
:root[data-theme="dark"] .tax-prep-band h2,:root[data-theme="dark"] .tax-end-cta h2,:root[data-theme="dark"] .cta h2,:root[data-theme="dark"] .pagehero h1,:root[data-theme="dark"] .hero h1{color:#fff}
:root[data-theme="dark"] .tax-prep-band p,:root[data-theme="dark"] .tax-end-cta p,:root[data-theme="dark"] .pagehero p,:root[data-theme="dark"] .hero p{color:#d1dce8}
:root[data-theme="dark"] .tax-checklist,:root[data-theme="dark"] .tax-document,:root[data-theme="dark"] .tax-float{background:#fff;color:#112a45}
:root[data-theme="dark"] .tax-checklist p,:root[data-theme="dark"] .tax-checklist small,:root[data-theme="dark"] .tax-document small{color:#586b80}
:root[data-theme="dark"] .tax-other-services,:root[data-theme="dark"] .tax-trust{background:#d6a34d;color:#142a40}
:root[data-theme="dark"] .language-card{background:#fff;color:#102b4c}
:root[data-theme="dark"] .language-card h2{color:#102b4c}
:root[data-theme="dark"] .language-card p{color:#41546b}
:root[data-theme="dark"] .language-choices button{background:#f4f7fa;color:#102b4c;border-color:#d5dfe9}
@media (prefers-color-scheme:dark){
:root[data-theme="system"]{--surface:#192b40;--ink:#e8eff8;--line:#40566e;--link:#b4d7ff;--navy:#e0ecfc;--muted:#b7c7d9;--gold:#f0c87c;color-scheme:dark}
:root[data-theme="system"] body{background:#0d1726;color:#e8eff8}
:root[data-theme="system"] header{background:#152438;border-color:#40566e}
:root[data-theme="system"] header .logo{color:#eaf2ff}
:root[data-theme="system"] header .logo small{color:#b7c7d9}
:root[data-theme="system"] nav a:not(.btn){color:#e8eff8}
:root[data-theme="system"] header nav a[aria-current="page"]{color:#f1c778}
:root[data-theme="system"] header nav.open{background:#152438;box-shadow:0 14px 32px #0008}
:root[data-theme="system"] h2{color:#e8eff8}
:root[data-theme="system"] .intro,:root[data-theme="system"] .sitemap-intro p,:root[data-theme="system"] .services-intro p,:root[data-theme="system"] .service-category-description{color:#b7c7d9}
:root[data-theme="system"] .card,:root[data-theme="system"] .feature,:root[data-theme="system"] .panel,:root[data-theme="system"] .history-card,:root[data-theme="system"] .value-panel,:root[data-theme="system"] .about-service-grid a,:root[data-theme="system"] .service-grid>.service-tile,:root[data-theme="system"] .tax-service-card,:root[data-theme="system"] .contact-form-showcase{background:#192b40;border-color:#40566e;color:#e8eff8}
:root[data-theme="system"] .card h3,:root[data-theme="system"] .card .num,:root[data-theme="system"] .history-year,:root[data-theme="system"] .history-card h3,:root[data-theme="system"] .value-panel h3,:root[data-theme="system"] .about-service-grid strong,:root[data-theme="system"] .feature strong,:root[data-theme="system"] .panel h2,:root[data-theme="system"] .service h2,:root[data-theme="system"] .service-category h2,:root[data-theme="system"] .tax-service-card h3{color:#edf4ff}
:root[data-theme="system"] .card p,:root[data-theme="system"] .history-card p,:root[data-theme="system"] .value-panel p,:root[data-theme="system"] .about-service-grid small,:root[data-theme="system"] .about-opening p,:root[data-theme="system"] .about-feature p,:root[data-theme="system"] .service p,:root[data-theme="system"] .legal p,:root[data-theme="system"] .legal li,:root[data-theme="system"] .tax-service-card p,:root[data-theme="system"] .tax-reasons p{color:#b7c7d9}
:root[data-theme="system"] .card a,:root[data-theme="system"] .service-link,:root[data-theme="system"] .legal a,:root[data-theme="system"] .tax-service-card a,:root[data-theme="system"] .tax-text-link{color:#f0c87c}
:root[data-theme="system"] .band,:root[data-theme="system"] .tax-faq-band{background:#142438}
:root[data-theme="system"] .service-jump a{background:#1b2f46;border-color:#40566e;color:#e8eff8}
:root[data-theme="system"] .service-jump a:hover{background:#28425b}
:root[data-theme="system"] .service-category,:root[data-theme="system"] .service,:root[data-theme="system"] .tax-faqs details{border-color:#40566e}
:root[data-theme="system"] .field input,:root[data-theme="system"] .field select,:root[data-theme="system"] .field textarea,:root[data-theme="system"] .form-row input,:root[data-theme="system"] .form-row select,:root[data-theme="system"] .form-row textarea,:root[data-theme="system"] .inquiry-form-modern .form-row input,:root[data-theme="system"] .inquiry-form-modern .form-row select,:root[data-theme="system"] .inquiry-form-modern .form-row textarea{background:#102238;color:#f2f6fc;border-color:#657a90}
:root[data-theme="system"] .field input::placeholder,:root[data-theme="system"] .form-row input::placeholder,:root[data-theme="system"] .form-row textarea::placeholder{color:#afc0d3}
:root[data-theme="system"] .notice,:root[data-theme="system"] .form-privacy-note{background:#40341f;color:#f4e4c6;border-color:#d9ad5e}
:root[data-theme="system"] .notice a,:root[data-theme="system"] .form-privacy-note a{color:#ffe2a1}
:root[data-theme="system"] .contact-form-showcase>p{color:#b7c7d9;border-color:#40566e}
:root[data-theme="system"] .inquiry-form-modern .form-consent a{color:#b4d7ff}
:root[data-theme="system"] .inquiry-form-modern .contact-submit,:root[data-theme="system"] .btn{background:#f0c87c;color:#102b4c}
:root[data-theme="system"] .btn.dark,:root[data-theme="system"] .menu{background:#294e75;color:#fff}
:root[data-theme="system"] .sitemap-section{background:#0d1726;color:#e8eff8}
:root[data-theme="system"] .sitemap-group{border-color:#40566e}
:root[data-theme="system"] .sitemap-group h3{color:#f0c87c}
:root[data-theme="system"] .sitemap-group a{color:#c8dcf3}
:root[data-theme="system"] .sitemap-group a:hover,:root[data-theme="system"] .sitemap-group a:focus-visible{color:#f0c87c}
:root[data-theme="system"] .tax-faq-grid>div>p,:root[data-theme="system"] .tax-faqs details p,:root[data-theme="system"] .tax-section-head>p{color:#b7c7d9}
:root[data-theme="system"] .tax-service-icon{background:#554224;color:#f0c87c}
:root[data-theme="system"] .tax-reasons>div{border-color:#cba357}
:root[data-theme="system"] .tax-faqs summary{color:#e8eff8}
:root[data-theme="system"] .tax-prep-band h2,:root[data-theme="system"] .tax-end-cta h2,:root[data-theme="system"] .cta h2,:root[data-theme="system"] .pagehero h1,:root[data-theme="system"] .hero h1{color:#fff}
:root[data-theme="system"] .tax-prep-band p,:root[data-theme="system"] .tax-end-cta p,:root[data-theme="system"] .pagehero p,:root[data-theme="system"] .hero p{color:#d1dce8}
:root[data-theme="system"] .tax-checklist,:root[data-theme="system"] .tax-document,:root[data-theme="system"] .tax-float{background:#fff;color:#112a45}
:root[data-theme="system"] .tax-checklist p,:root[data-theme="system"] .tax-checklist small,:root[data-theme="system"] .tax-document small{color:#586b80}
:root[data-theme="system"] .tax-other-services,:root[data-theme="system"] .tax-trust{background:#d6a34d;color:#142a40}
:root[data-theme="system"] .language-card{background:#fff;color:#102b4c}
:root[data-theme="system"] .language-card h2{color:#102b4c}
:root[data-theme="system"] .language-card p{color:#41546b}
:root[data-theme="system"] .language-choices button{background:#f4f7fa;color:#102b4c;border-color:#d5dfe9}
}

/* Light-theme consistency: explicit light choice and light-system defaults. */
:root[data-theme="light"]{--navy:#102b4c;--gold:#d6a34d;--muted:#596d83;--surface:#fff;--ink:#1c2d40;--line:#dce4ee;--link:#1d4f84;color-scheme:light}
:root[data-theme="light"] body{background:#f6f8fb;color:#1c2d40}
:root[data-theme="light"] header{background:#fff;border-color:#e0e6ef}
:root[data-theme="light"] header .logo,:root[data-theme="light"] nav a:not(.btn){color:#102b4c}
:root[data-theme="light"] header nav a[aria-current="page"]{color:#895712}
:root[data-theme="light"] .card,:root[data-theme="light"] .history-card,:root[data-theme="light"] .value-panel,:root[data-theme="light"] .about-service-grid a,:root[data-theme="light"] .service-grid>.service-tile,:root[data-theme="light"] .tax-service-card,:root[data-theme="light"] .contact-form-showcase{background:#fff;border-color:#dce4ee;color:#1c2d40}
:root[data-theme="light"] .sitemap-section{background:#fff;color:#1c2d40}
:root[data-theme="light"] .sitemap-group{border-color:#dfe5ed}
:root[data-theme="light"] .sitemap-group h3{color:#102b4c}
:root[data-theme="light"] .sitemap-group a{color:#365570}
:root[data-theme="light"] .sitemap-group a:hover,:root[data-theme="light"] .sitemap-group a:focus-visible{color:#102b4c}
:root[data-theme="light"] .field input,:root[data-theme="light"] .field select,:root[data-theme="light"] .field textarea,:root[data-theme="light"] .form-row input,:root[data-theme="light"] .form-row select,:root[data-theme="light"] .form-row textarea{background:#fff;color:#1c2d40;border-color:#9bacc0}
:root[data-theme="light"] .notice,:root[data-theme="light"] .form-privacy-note{background:#fff5df;color:#473516;border-color:#c39039}
:root[data-theme="light"] .btn{background:#d6a34d;color:#102b4c}
:root[data-theme="light"] .btn.dark,:root[data-theme="light"] .menu{background:#102b4c;color:#fff}
:root[data-theme="light"] .hero h1,:root[data-theme="light"] .pagehero h1,:root[data-theme="light"] .cta h2,:root[data-theme="light"] .tax-prep-band h2,:root[data-theme="light"] .tax-end-cta h2{color:#fff}
:root[data-theme="light"] .hero p,:root[data-theme="light"] .pagehero p,:root[data-theme="light"] .tax-prep-band p,:root[data-theme="light"] .tax-end-cta p{color:#e3eaf2}
:root[data-theme="light"] .tax-faq-band{background:#f0f4f8}
:root[data-theme="light"] .tax-faqs details{border-color:#dce4ee}
:root[data-theme="light"] .language-card{background:#fff;color:#102b4c}
:root[data-theme="light"] .language-card h2{color:#102b4c}
@media (prefers-color-scheme:light){:root[data-theme="system"]{color-scheme:light}}
@media(max-width:760px){:root[data-theme="light"] header nav.open{background:#fff}}


/* Theme palette repair: brand backgrounds stay navy; text uses separate ink tokens.
   Earlier rules changed --navy to pale blue in dark mode, turning navy banners pale
   while leaving their white text in place. These final rules fix that collision. */
:root{--brand-navy:#102b4c;--brand-gold:#d6a34d;--page-bg:#f6f8fb;--panel-bg:#fff;--body-ink:#1c2d40;--body-muted:#596d83;--border-color:#dce4ee;--heading-ink:#102b4c;--action-link:#1d4f84}
:root[data-theme="light"]{--navy:#102b4c;--page-bg:#f6f8fb;--panel-bg:#fff;--body-ink:#1c2d40;--body-muted:#596d83;--border-color:#dce4ee;--heading-ink:#102b4c;--action-link:#1d4f84}
:root[data-theme="dark"]{--navy:#102b4c;--page-bg:#0d1726;--panel-bg:#192b40;--body-ink:#e8eff8;--body-muted:#b7c7d9;--border-color:#40566e;--heading-ink:#e8eff8;--action-link:#f0c87c}
:root[data-theme="dark"] body{background:var(--page-bg);color:var(--body-ink)}
:root[data-theme="dark"] h2,:root[data-theme="dark"] .service-tile h3,:root[data-theme="dark"] .service-category h2,:root[data-theme="dark"] .tax-section h2,:root[data-theme="dark"] .tax-reasons h3{color:var(--heading-ink)}
:root[data-theme="dark"] .pagehero,:root[data-theme="dark"] .cta,:root[data-theme="dark"] .tax-prep-band{background:#102b4c;color:#fff}
:root[data-theme="dark"] .pagehero h1,:root[data-theme="dark"] .pagehero h2,:root[data-theme="dark"] .cta h2,:root[data-theme="dark"] .tax-prep-band h2{color:#fff}
:root[data-theme="dark"] .pagehero p,:root[data-theme="dark"] .cta p,:root[data-theme="dark"] .tax-prep-band p{color:#d1dce8}
:root[data-theme="dark"] .card,:root[data-theme="dark"] .panel,:root[data-theme="dark"] .feature,:root[data-theme="dark"] .history-card,:root[data-theme="dark"] .value-panel,:root[data-theme="dark"] .about-service-grid a,:root[data-theme="dark"] .service-grid>.service-tile,:root[data-theme="dark"] .tax-service-card,:root[data-theme="dark"] .office-info-card{background:var(--panel-bg);color:var(--body-ink);border-color:var(--border-color)}
:root[data-theme="dark"] .feature strong,:root[data-theme="dark"] .service-tile h3,:root[data-theme="dark"] .office-info-card h2,:root[data-theme="dark"] .panel h2{color:var(--heading-ink)}
:root[data-theme="dark"] .service-tile p,:root[data-theme="dark"] .office-info-card p,:root[data-theme="dark"] .legal p,:root[data-theme="dark"] .legal li,:root[data-theme="dark"] .tax-faqs details p{color:var(--body-muted)}
:root[data-theme="dark"] .band,:root[data-theme="dark"] .tax-faq-band{background:#142438}
:root[data-theme="dark"] .sitemap-section{background:var(--page-bg);color:var(--body-ink)}
:root[data-theme="dark"] .sitemap-group h3{color:#f0c87c}
:root[data-theme="dark"] .sitemap-group a{color:#c8dcf3}
:root[data-theme="dark"] .tax-checklist,:root[data-theme="dark"] .tax-document,:root[data-theme="dark"] .tax-float{background:#fff;color:#112a45}
:root[data-theme="dark"] .tax-checklist strong,:root[data-theme="dark"] .tax-document strong{color:#112a45}
:root[data-theme="dark"] .tax-checklist small,:root[data-theme="dark"] .tax-document small{color:#586b80}
:root[data-theme="dark"] .tax-other-services,:root[data-theme="dark"] .tax-trust{background:#d6a34d;color:#142a40}
:root[data-theme="dark"] .btn{background:#f0c87c;color:#102b4c}
:root[data-theme="dark"] .btn.dark,:root[data-theme="dark"] .menu{background:#294e75;color:#fff}
:root[data-theme="dark"] .language-card{background:#fff;color:#102b4c}
:root[data-theme="dark"] .language-card h2{color:#102b4c}
:root[data-theme="light"] body{background:var(--page-bg);color:var(--body-ink)}
:root[data-theme="light"] h2,:root[data-theme="light"] .service-tile h3,:root[data-theme="light"] .tax-section h2{color:var(--heading-ink)}
:root[data-theme="light"] .pagehero,:root[data-theme="light"] .cta,:root[data-theme="light"] .tax-prep-band{background:#102b4c;color:#fff}
:root[data-theme="light"] .pagehero h1,:root[data-theme="light"] .cta h2,:root[data-theme="light"] .tax-prep-band h2{color:#fff}
:root[data-theme="light"] .feature,:root[data-theme="light"] .panel,:root[data-theme="light"] .office-info-card{background:#fff;color:#1c2d40;border-color:#dce4ee}
:root[data-theme="light"] .band{background:#eaf0f6}
:root[data-theme="light"] .sitemap-section{background:#fff;color:#1c2d40}
:root[data-theme="light"] .tax-checklist,:root[data-theme="light"] .tax-document,:root[data-theme="light"] .tax-float{background:#fff;color:#112a45}
:root[data-theme="light"] .tax-faq-band{background:#eaf0f6}

@media (prefers-color-scheme:dark){
:root[data-theme="system"]{--navy:#102b4c;--page-bg:#0d1726;--panel-bg:#192b40;--body-ink:#e8eff8;--body-muted:#b7c7d9;--border-color:#40566e;--heading-ink:#e8eff8}
:root[data-theme="system"] .pagehero,:root[data-theme="system"] .cta,:root[data-theme="system"] .tax-prep-band{background:#102b4c;color:#fff}
:root[data-theme="system"] .feature,:root[data-theme="system"] .panel,:root[data-theme="system"] .office-info-card{background:#192b40;color:#e8eff8;border-color:#40566e}
:root[data-theme="system"] h2,:root[data-theme="system"] .service-tile h3,:root[data-theme="system"] .tax-section h2{color:#e8eff8}
:root[data-theme="system"] .pagehero h1,:root[data-theme="system"] .cta h2,:root[data-theme="system"] .tax-prep-band h2{color:#fff}
:root[data-theme="system"] .sitemap-section{background:#0d1726;color:#e8eff8}
:root[data-theme="system"] .tax-checklist,:root[data-theme="system"] .tax-document,:root[data-theme="system"] .tax-float{background:#fff;color:#112a45}
:root[data-theme="system"] .tax-checklist strong{color:#112a45}
:root[data-theme="system"] .tax-other-services,:root[data-theme="system"] .tax-trust{background:#d6a34d;color:#142a40}
}

/* About & Services: explicit light surfaces and legible typography.
   Kept separate from the dark/system rules to avoid cross-theme leakage. */
:root[data-theme="light"] .about-opening p,
:root[data-theme="light"] .about-feature p,
:root[data-theme="light"] .services-intro p,
:root[data-theme="light"] .service-category-description,
:root[data-theme="light"] .history-card p,
:root[data-theme="light"] .value-panel p,
:root[data-theme="light"] .about-service-grid small,
:root[data-theme="light"] .service-tile p{color:#53677e}
:root[data-theme="light"] .history-card,
:root[data-theme="light"] .value-panel,
:root[data-theme="light"] .about-service-grid a,
:root[data-theme="light"] .service-grid>.service-tile{background:#fff;color:#1c2d40;border-color:#dce4ee}
:root[data-theme="light"] .history-year,
:root[data-theme="light"] .history-card h3,
:root[data-theme="light"] .value-panel h3,
:root[data-theme="light"] .about-service-grid strong,
:root[data-theme="light"] .service-tile h3,
:root[data-theme="light"] .service-category h2{color:#102b4c}
:root[data-theme="light"] .service-link,
:root[data-theme="light"] .about-service-grid a .service-link{color:#1d4f84}
:root[data-theme="light"] .service-jump a{background:#fff;color:#102b4c;border-color:#d9e2ed}
:root[data-theme="light"] .service-jump a:hover{background:#fff8ed}
:root[data-theme="light"] .service-category{border-color:#dce4ee}


/* Policy pages: explicit, isolated light/dark surfaces and typography. */
:root[data-theme="light"] body.policy-page{background:#f6f8fb;color:#1c2d40}
:root[data-theme="light"] .policy-page .section:has(.legal){background:#f6f8fb;color:#1c2d40}
:root[data-theme="light"] .policy-page .legal{color:#1c2d40}
:root[data-theme="light"] .policy-page .legal h2,
:root[data-theme="light"] .policy-page .legal h3,
:root[data-theme="light"] .policy-page .legal h4{color:#102b4c}
:root[data-theme="light"] .policy-page .legal p,
:root[data-theme="light"] .policy-page .legal li{color:#42556c}
:root[data-theme="light"] .policy-page .legal strong{color:#1c2d40}
:root[data-theme="light"] .policy-page .legal a{color:#175487;text-decoration-color:#95651c;text-underline-offset:3px}
:root[data-theme="light"] .policy-page .legal hr{border:0;border-top:1px solid #dce4ee}
:root[data-theme="light"] .policy-page .legal :is(blockquote,table,pre){border-color:#dce4ee}
:root[data-theme="light"] .policy-page .pagehero,
:root[data-theme="light"] .policy-page .pagehero.parallax-section{background-image:linear-gradient(125deg,#102b4c,#1a416a);color:#fff}
:root[data-theme="light"] .policy-page .pagehero h1{color:#fff}
:root[data-theme="light"] .policy-page .pagehero p{color:#dce7f3}

:root[data-theme="dark"] body.policy-page{background:#0d1726;color:#e6edf7}
:root[data-theme="dark"] .policy-page .section:has(.legal){background:#0d1726;color:#e6edf7}
:root[data-theme="dark"] .policy-page .legal{color:#e6edf7}
:root[data-theme="dark"] .policy-page .legal h2,
:root[data-theme="dark"] .policy-page .legal h3,
:root[data-theme="dark"] .policy-page .legal h4{color:#f0f5fc}
:root[data-theme="dark"] .policy-page .legal p,
:root[data-theme="dark"] .policy-page .legal li{color:#b7c7d9}
:root[data-theme="dark"] .policy-page .legal strong{color:#edf3fb}
:root[data-theme="dark"] .policy-page .legal a{color:#f0c87c;text-decoration-color:#f0c87c}
:root[data-theme="dark"] .policy-page .legal hr{border:0;border-top:1px solid #354b62}
:root[data-theme="dark"] .policy-page .legal :is(blockquote,table,pre){border-color:#354b62}
:root[data-theme="dark"] .policy-page .pagehero,
:root[data-theme="dark"] .policy-page .pagehero.parallax-section{background-image:linear-gradient(125deg,#071629,#123452);color:#fff}
:root[data-theme="dark"] .policy-page .pagehero h1{color:#fff}
:root[data-theme="dark"] .policy-page .pagehero p{color:#d4e2f2}
@media(prefers-color-scheme:light){
 :root[data-theme="system"] .policy-page .section:has(.legal){background:#f6f8fb;color:#1c2d40}
 :root[data-theme="system"] .policy-page .legal :is(h2,h3,h4){color:#102b4c}
 :root[data-theme="system"] .policy-page .legal :is(p,li){color:#42556c}
 :root[data-theme="system"] .policy-page .legal strong{color:#1c2d40}
 :root[data-theme="system"] .policy-page .legal a{color:#175487}
}
@media(prefers-color-scheme:dark){
 :root[data-theme="system"] .policy-page .section:has(.legal){background:#0d1726;color:#e6edf7}
 :root[data-theme="system"] .policy-page .legal :is(h2,h3,h4){color:#f0f5fc}
 :root[data-theme="system"] .policy-page .legal :is(p,li){color:#b7c7d9}
 :root[data-theme="system"] .policy-page .legal strong{color:#edf3fb}
 :root[data-theme="system"] .policy-page .legal a{color:#f0c87c}
 :root[data-theme="system"] .policy-page .legal hr{border-color:#354b62}
}

/* Seasonal hero eyebrow, above the main headline */
.tax-hero-copy .tax-hero-eyebrow{display:block;margin:18px 0 -8px;color:#d6a34d;font-size:12px;font-weight:800;letter-spacing:2px;line-height:1.5;text-transform:uppercase;}

/* Tax season eyebrow belongs to the document illustration, not the left headline. */
.tax-visual .tax-visual-eyebrow{position:absolute;z-index:3;top:0;left:50%;transform:translateX(-50%);width:max-content;max-width:94%;text-align:center;color:#d6a34d;font-size:12px;font-weight:800;letter-spacing:1.7px;line-height:1.45;text-transform:uppercase;pointer-events:none;}
@media(max-width:600px){.tax-visual .tax-visual-eyebrow{font-size:10px;letter-spacing:1.1px;top:2px;}}

/* Unified W & E gold palette — all pages and languages.
   Gold is consistent in both themes; accent text adapts for legibility. */
:root,:root[data-theme="light"],:root[data-theme="dark"],:root[data-theme="system"]{
  --brand-gold:#d6a34d;--gold:#d6a34d;--gold-text-light:#95651c;--gold-text-dark:#f0c87c;
}
:root[data-theme="light"] header nav a[aria-current="page"],
:root[data-theme="light"] .tax-kicker,
:root[data-theme="light"] .tax-reason-number,
:root[data-theme="light"] .tax-service-card a,
:root[data-theme="light"] .card .num{color:var(--gold-text-light)}
:root[data-theme="dark"] header nav a[aria-current="page"],
:root[data-theme="dark"] .tax-kicker,
:root[data-theme="dark"] .tax-reason-number,
:root[data-theme="dark"] .tax-service-card a,
:root[data-theme="dark"] .card .num,
:root[data-theme="dark"] .sitemap-group h3,
:root[data-theme="dark"] .policy-page .legal a{color:var(--gold-text-dark)}
@media(prefers-color-scheme:dark){
:root[data-theme="system"] header nav a[aria-current="page"],
:root[data-theme="system"] .tax-kicker,
:root[data-theme="system"] .tax-reason-number,
:root[data-theme="system"] .tax-service-card a,
:root[data-theme="system"] .card .num,
:root[data-theme="system"] .sitemap-group h3,
:root[data-theme="system"] .policy-page .legal a{color:var(--gold-text-dark)}
}
.tax-trust,.tax-other-services{background:var(--brand-gold);color:#102b4c}
:root[data-theme="dark"] .tax-trust,:root[data-theme="dark"] .tax-other-services{background:var(--brand-gold);color:#102b4c}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .tax-trust,:root[data-theme="system"] .tax-other-services{background:var(--brand-gold);color:#102b4c}}
.tax-hero h1 em,.tax-pill,.tax-visual .tax-visual-eyebrow,.tax-visual-label{color:var(--gold-text-dark)}
.btn:not(.dark),.tax-button:not(.outline){background:var(--brand-gold);color:#102b4c}
:root[data-theme="dark"] .btn:not(.dark){background:var(--brand-gold);color:#102b4c}
:root[data-theme="light"] .btn:not(.dark){background:var(--brand-gold);color:#102b4c}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .btn:not(.dark){background:var(--brand-gold);color:#102b4c}}


/* Mobile header refresh — hide top utility strip while keeping essential controls in the menu. */
.mobile-nav-tools{display:none;}
@media (max-width:760px){
  .top{display:none !important;}
  header nav.open{max-height:calc(100dvh - 80px);overflow-y:auto;}
  .mobile-nav-tools{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px;width:100%;margin-top:4px;padding:14px;border-radius:10px;background:#102b4c;color:#fff;box-sizing:border-box;}
  .mobile-nav-group{display:flex;flex-direction:column;gap:7px;min-width:0;}
  .mobile-nav-caption{font-size:11px;font-weight:700;letter-spacing:.05em;color:#e0e9f4;}
  .mobile-nav-tools .theme-switch{border-color:rgba(255,255,255,.4);}
  .mobile-nav-tools .theme-option{color:#fff;}
  .mobile-nav-tools .theme-option[aria-pressed="true"]{background:#d6a34d;color:#102b4c;}
  .mobile-nav-languages{display:flex;gap:5px;}
  .mobile-nav-languages button{background:transparent;border:1px solid rgba(255,255,255,.45);color:#fff;border-radius:5px;padding:7px 10px;font:700 12px/1.25 system-ui,Arial,sans-serif;cursor:pointer;}
  .mobile-nav-languages button[aria-pressed="true"]{background:#d6a34d;color:#102b4c;border-color:#d6a34d;}
  .mobile-nav-languages button:focus-visible{outline:2px solid #d6a34d;outline-offset:2px;}
}


/* Services responsive layout: keep in-page service navigation separate from the site menu. */
.service-jump{
  position:static;
  inset:auto;
  width:auto;
  box-shadow:none;
  display:flex;
  flex-direction:row;
  align-items:center;
  flex-wrap:wrap;
  padding:0;
  background:transparent;
  gap:12px;
}
@media(max-width:620px){
  .services-intro{margin-bottom:36px;}
  .service-jump{gap:10px;margin-top:20px;}
  .service-jump a{max-width:100%;padding:10px 14px;text-align:center;line-height:1.4;}
  .service-category{margin-bottom:46px;}
  .service-category>h2{font-size:clamp(27px,8vw,34px);}
  .service-grid{gap:14px;margin-top:22px;}
  .service-grid>.service-tile{height:auto;padding:22px 20px;}
  .service-tile h3{min-height:0;margin:12px 0 10px;line-height:1.3;overflow-wrap:break-word;}
  .service-tile p{margin-bottom:18px;}
  .service-tile .service-link{align-self:flex-start;}
}
@media(max-width:360px){
  .service-jump a{width:100%;}
}

/* Center footer copyright and social icons on mobile only.
   Desktop retains the original side-by-side alignment. */
@media (max-width:760px){
  footer .footer-bottom{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    text-align:center;
  }
  footer .footer-bottom .copyright{
    width:100%;
    text-align:center;
    line-height:1.75;
  }
  footer .footer-bottom .footer-social{
    width:100%;
    margin:0;
    text-align:center;
  }
  footer .footer-bottom .social-icons{
    justify-content:center;
    align-items:center;
    margin-inline:auto;
  }
}


/* Frosted-glass (glassmorphism) site navigation. Applied after earlier
   header theme rules to keep the effect consistent in all appearances.
   The header remains sticky and legible if backdrop-filter is unsupported. */
header,
:root[data-theme="light"] header {
  background:rgba(250,252,255,.82);
  border-bottom:1px solid rgba(255,255,255,.58);
  box-shadow:0 7px 28px rgba(13,38,67,.09),inset 0 1px rgba(255,255,255,.42);
  -webkit-backdrop-filter:blur(20px) saturate(175%);
  backdrop-filter:blur(20px) saturate(175%);
}
:root[data-theme="dark"] header {
  background:rgba(15,32,52,.79);
  border-bottom-color:rgba(170,195,224,.20);
  box-shadow:0 10px 30px rgba(0,7,21,.30),inset 0 1px rgba(255,255,255,.07);
}
@media(prefers-color-scheme:light){
  :root[data-theme="system"] header {
    background:rgba(250,252,255,.82);
    border-bottom-color:rgba(255,255,255,.58);
    box-shadow:0 7px 28px rgba(13,38,67,.09),inset 0 1px rgba(255,255,255,.42);
  }
}
@media(prefers-color-scheme:dark){
  :root[data-theme="system"] header {
    background:rgba(15,32,52,.79);
    border-bottom-color:rgba(170,195,224,.20);
    box-shadow:0 10px 30px rgba(0,7,21,.30),inset 0 1px rgba(255,255,255,.07);
  }
}
/* Calm, touch-friendly navigation controls with a subtle glass hover sheen. */
header nav>a:not(.btn){
  border-radius:9px;
  padding:7px 6px;
  transition:background-color .2s ease,color .2s ease;
}
header nav>a:not(.btn):hover,
header nav>a:not(.btn):focus-visible{background:rgba(87,124,161,.11)}
:root[data-theme="dark"] header nav>a:not(.btn):hover,
:root[data-theme="dark"] header nav>a:not(.btn):focus-visible{background:rgba(219,234,255,.10)}
@media(prefers-color-scheme:dark){
  :root[data-theme="system"] header nav>a:not(.btn):hover,
  :root[data-theme="system"] header nav>a:not(.btn):focus-visible{background:rgba(219,234,255,.10)}
}
/* Give the additional Blog item room without affecting the desktop layout. */
@media(min-width:761px){
  header nav{gap:clamp(9px,1.3vw,20px)}
}
/* Expanded mobile menu uses a stronger glass surface for text readability. */
@media(max-width:760px){
  header nav.open,
  :root[data-theme="light"] header nav.open{
    background:rgba(250,252,255,.95);
    border-bottom:1px solid rgba(148,172,197,.30);
    -webkit-backdrop-filter:blur(24px) saturate(150%);
    backdrop-filter:blur(24px) saturate(150%);
    box-shadow:0 18px 40px rgba(15,36,60,.16);
  }
  :root[data-theme="dark"] header nav.open{
    background:rgba(15,32,52,.95);
    border-bottom-color:rgba(170,195,224,.18);
    box-shadow:0 18px 40px rgba(0,7,21,.38);
  }
}
@media(max-width:760px) and (prefers-color-scheme:dark){
  :root[data-theme="system"] header nav.open{
    background:rgba(15,32,52,.95);
    border-bottom-color:rgba(170,195,224,.18);
    box-shadow:0 18px 40px rgba(0,7,21,.38);
  }
}
@media(max-width:760px) and (prefers-color-scheme:light){
  :root[data-theme="system"] header nav.open{
    background:rgba(250,252,255,.95);
    border-bottom-color:rgba(148,172,197,.30);
    box-shadow:0 18px 40px rgba(15,36,60,.16);
  }
}
@media(prefers-reduced-motion:reduce){header nav>a:not(.btn){transition:none}}


/* ============================================================
   CLIENT TESTIMONIALS — Static, accessible 3/2/1-card carousel
   Applies only to the regular English and Spanish homepages.
   ============================================================ */
.testimonials-section{background:#f2f5fa;position:relative;overflow:hidden}
.testimonials-section::before{content:"";pointer-events:none;position:absolute;inset:0;background:radial-gradient(circle at 95% 5%,rgba(214,163,77,.12),transparent 35%)}
.testimonials-section>.wrap{position:relative}
.testimonials-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}
.testimonials-heading-copy{max-width:670px}
.testimonials-heading h2{margin:10px 0 12px}
.testimonials-heading .intro{margin:0}
.testimonials-rating{white-space:nowrap;display:flex;align-items:center;flex-direction:column;gap:2px;border:1px solid #dbe4ee;background:#fff;border-radius:14px;padding:13px 22px;box-shadow:0 8px 24px rgba(16,43,76,.05);font-weight:750;color:#334c66;font-size:13px}
.testimonials-rating>span:first-child{color:#bd8428;letter-spacing:3px;font-size:19px;line-height:1.4}
.testimonial-track{--testimonial-gap:20px;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * var(--testimonial-gap)) / 3);grid-template-rows:1fr;gap:var(--testimonial-gap);list-style:none;margin:0;padding:6px 3px 22px 3px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:3px;scrollbar-width:thin;scrollbar-color:#bbcadb transparent;-webkit-overflow-scrolling:touch}
.testimonial-card{display:flex;min-width:0;flex-direction:column;scroll-snap-align:start;border:1px solid #dce5ee;border-radius:17px;padding:26px 24px 22px;background:#fff;box-shadow:0 8px 25px rgba(16,43,76,.075)}
.testimonial-stars{color:#bd8428;letter-spacing:3px;line-height:1.3;font-size:19px;white-space:nowrap}
.testimonial-quote{margin:18px 0 28px;flex:1;min-width:0;color:#34495f}
.testimonial-quote p{margin:0;line-height:1.78;font-size:14px;overflow-wrap:anywhere}
.testimonial-author{display:flex;gap:12px;align-items:center;padding-top:16px;border-top:1px solid #e5eaf0}
.testimonial-avatar{width:39px;height:39px;flex:0 0 39px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ebf0f7;color:#23486b;font-size:13px;font-weight:800}
.testimonial-author strong,.testimonial-author span:last-child{display:block}
.testimonial-author strong{font-size:14px;color:#15375b;line-height:1.35}
.testimonial-author div>span{color:#6c7d90;font-size:12px;margin-top:2px}
.testimonial-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:10px}
.testimonial-counter{font-size:13px;font-weight:700;letter-spacing:.02em;color:#5c7086}
.testimonial-buttons{display:flex;align-items:center;gap:10px}
.testimonial-arrow{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;border:1px solid #cbd8e5;background:#fff;color:#183857;cursor:pointer;box-shadow:0 5px 15px rgba(16,43,76,.08);transition:background .18s ease,transform .18s ease,border-color .18s ease}
.testimonial-arrow svg{width:21px;height:21px}
.testimonial-arrow:not(:disabled):hover{background:#f7e9ce;border-color:#c89c51;transform:translateY(-1px)}
.testimonial-arrow:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
@media(max-width:900px){.testimonial-track{grid-auto-columns:calc((100% - var(--testimonial-gap)) / 2)}}
@media(max-width:600px){.testimonials-heading{align-items:flex-start;flex-direction:column;gap:16px}.testimonials-rating{align-items:flex-start;padding:9px 15px}.testimonial-track{grid-auto-columns:100%;gap:14px}.testimonial-card{padding:23px 20px 20px}.testimonial-quote{margin-bottom:25px}}
:root[data-theme="dark"] .testimonials-section{background:#101f32}
:root[data-theme="dark"] .testimonial-card,:root[data-theme="dark"] .testimonials-rating,:root[data-theme="dark"] .testimonial-arrow{background:#192b40;border-color:#354b62;box-shadow:none}
:root[data-theme="dark"] .testimonial-quote,:root[data-theme="dark"] .testimonial-author strong,:root[data-theme="dark"] .testimonial-arrow{color:#e6edf7}
:root[data-theme="dark"] .testimonials-rating,:root[data-theme="dark"] .testimonial-counter{color:#c4d3e4}
:root[data-theme="dark"] .testimonial-author{border-color:#354b62}
:root[data-theme="dark"] .testimonial-avatar{background:#2b4562;color:#e6edf7}
:root[data-theme="dark"] .testimonial-arrow:not(:disabled):hover{background:#2f4c6b}
@media(prefers-color-scheme:dark){
 :root[data-theme="system"] .testimonials-section{background:#101f32}
 :root[data-theme="system"] .testimonial-card,:root[data-theme="system"] .testimonials-rating,:root[data-theme="system"] .testimonial-arrow{background:#192b40;border-color:#354b62;box-shadow:none}
 :root[data-theme="system"] .testimonial-quote,:root[data-theme="system"] .testimonial-author strong,:root[data-theme="system"] .testimonial-arrow{color:#e6edf7}
 :root[data-theme="system"] .testimonials-rating,:root[data-theme="system"] .testimonial-counter{color:#c4d3e4}
 :root[data-theme="system"] .testimonial-author{border-color:#354b62}
 :root[data-theme="system"] .testimonial-avatar{background:#2b4562;color:#e6edf7}
 :root[data-theme="system"] .testimonial-arrow:not(:disabled):hover{background:#2f4c6b}
}
@media(prefers-reduced-motion:reduce){.testimonial-arrow{transition:none}.testimonial-arrow:not(:disabled):hover{transform:none}}


/* ------------------------------------------------------------
   Centered, image-free testimonials (regular homepages only).
   The existing track remains 3 / 2 / 1 cards and uses native
   swipe, keyboard scrolling, and previous/next controls.
   ------------------------------------------------------------ */
.testimonials-heading{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:16px;
}
.testimonials-heading-copy{max-width:740px;margin-inline:auto}
.testimonials-heading .intro{margin-inline:auto}
.testimonials-rating{align-items:center;margin-inline:auto}
.testimonial-card{
  position:relative;
  align-items:center;
  justify-content:space-between;
  text-align:center;
  padding:32px 25px 25px;
  isolation:isolate;
}
.testimonial-card::before{
  content:"\201C";
  position:absolute;
  top:13px;
  left:50%;
  transform:translateX(-50%);
  font-family:Georgia,serif;
  font-size:78px;
  line-height:1;
  color:rgba(214,163,77,.17);
  pointer-events:none;
  z-index:-1;
}
.testimonial-stars{margin-top:20px;text-align:center;letter-spacing:4px}
.testimonial-quote{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  text-align:center;
  margin:22px 0 28px;
}
.testimonial-quote p{font-size:15px;line-height:1.75;max-width:40ch;margin:0 auto}
.testimonial-author{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:0;
  width:100%;
  text-align:center;
  padding-top:18px;
}
.testimonial-author > div{width:100%}
.testimonial-author strong{font-size:15px}
.testimonial-author div>span{margin-top:4px}
.testimonial-controls{justify-content:center;gap:22px;flex-wrap:wrap}
@media(max-width:600px){
  .testimonials-heading{align-items:center;text-align:center}
  .testimonials-rating{align-items:center}
  .testimonial-card{padding:28px 22px 24px}
  .testimonial-quote{margin:22px 0 26px}
  .testimonial-quote p{max-width:42ch}
}


/* ============================================================
   Single-review carousel: one centered card at ALL viewport sizes.
   Overrides the earlier desktop/tablet 3/2-column definitions.
   ============================================================ */
.testimonials-section .testimonial-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:100%;
  grid-template-rows:1fr;
  gap:0;
  max-width:760px;
  margin-inline:auto;
  padding:8px 3px 20px;
  scroll-padding-inline:3px;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.testimonials-section .testimonial-track::-webkit-scrollbar{display:none}
.testimonials-section .testimonial-card{
  box-sizing:border-box;
  width:100%;
  min-height:305px;
  padding:45px 42px 30px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.testimonials-section .testimonial-quote p{
  max-width:60ch;
  font-size:clamp(15px,1.8vw,18px);
  line-height:1.75;
}
@media(max-width:600px){
  .testimonials-section .testimonial-track{grid-auto-columns:100%;gap:0}
  .testimonials-section .testimonial-card{min-height:285px;padding:38px 20px 25px}
}


/* =============================================================
  Center-focus testimonial slider inspired by Brixies Section 49
  Regular English and Spanish homepages only (scoped section).
  One primary testimonial, faded adjacent peeks, no review images.
  ============================================================= */
.testimonials-section{
  background:#f8f9fc;
  padding-block:clamp(70px,8vw,112px);
  overflow:hidden;
}
.testimonials-section::before{
  background:radial-gradient(ellipse at 50% 74%,rgba(214,163,77,.10),transparent 65%);
}
.testimonials-section .testimonials-heading{
  align-items:center;
  flex-direction:column;
  text-align:center;
  gap:15px;
  margin-bottom:44px;
}
.testimonials-section .testimonials-heading-copy{max-width:680px}
.testimonials-section .testimonials-heading .eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#a87423;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
  font-weight:800;
}
.testimonials-section .testimonials-heading h2{
  font-size:clamp(30px,4vw,46px);
  line-height:1.17;
  letter-spacing:-.035em;
  margin:14px 0;
}
.testimonials-section .testimonials-heading .intro{
  max-width:54ch;
  line-height:1.65;
}
.testimonials-section .testimonials-rating{
  flex-direction:row;
  gap:12px;
  font-size:12px;
  border-radius:100px;
  padding:10px 16px;
  border-color:#e6e7ed;
  box-shadow:0 8px 24px rgba(26,44,75,.04);
}
.testimonials-section .testimonials-rating>span:first-child{font-size:15px;letter-spacing:2px}
.testimonials-section .testimonial-carousel{position:relative;margin:0 auto;max-width:1160px}
/* Padding centers first and last item, and shows the neighboring cards. */
.testimonials-section .testimonial-track{
  --testimonial-focus-width:min(760px,72vw);
  --testimonial-focus-gap:24px;
  position:relative;
  box-sizing:border-box;
  display:flex;
  flex-flow:row nowrap;
  align-items:stretch;
  gap:var(--testimonial-focus-gap);
  width:100%;
  max-width:none;
  padding:12px max(0px,calc((100% - var(--testimonial-focus-width))/2)) 22px;
  margin:0;
  list-style:none;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:calc((100% - var(--testimonial-focus-width))/2);
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  -ms-overflow-style:none;
  -webkit-overflow-scrolling:touch;
}
.testimonials-section .testimonial-track::-webkit-scrollbar{display:none}
.testimonials-section .testimonial-card{
  box-sizing:border-box;
  flex:0 0 var(--testimonial-focus-width);
  width:var(--testimonial-focus-width);
  min-width:0;
  min-height:clamp(335px,29vw,405px);
  padding:46px clamp(26px,5vw,62px) 38px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  position:relative;
  border:1px solid #e3e5ec;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 38px rgba(17,35,61,.045);
  scroll-snap-align:center;
  scroll-snap-stop:always;
  opacity:.30;
  transform:scale(.94);
  transform-origin:center center;
  transition:opacity .32s ease,transform .32s ease,border-color .32s ease,box-shadow .32s ease;
}
.testimonials-section .testimonial-card.is-active{
  opacity:1;
  transform:scale(1);
  border-color:#dce3ec;
  box-shadow:0 20px 52px rgba(17,35,61,.105);
}
.testimonials-section .testimonial-card::before{
  content:'\201C';
  z-index:0;
  font-size:74px;
  top:16px;
  color:rgba(214,163,77,.18);
}
.testimonials-section .testimonial-stars{
  font-size:20px;
  letter-spacing:4px;
  margin:15px 0 3px;
  color:#c6943b;
}
.testimonials-section .testimonial-quote{
  width:100%;
  flex:0 1 auto;
  display:block;
  margin:22px 0 26px;
  color:#34465b;
}
.testimonials-section .testimonial-quote p{
  margin:0 auto;
  max-width:58ch;
  font-size:clamp(16px,1.6vw,19px);
  line-height:1.66;
  font-weight:450;
  overflow-wrap:anywhere;
}
.testimonials-section .testimonial-author{
  width:100%;
  margin-top:auto;
  padding-top:19px;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  border-top:1px solid #edf0f4;
}
.testimonials-section .testimonial-author strong{font-size:16px;color:#162f4d}
.testimonials-section .testimonial-author div>span{margin-top:5px;font-size:12px;color:#738094}
.testimonials-section .testimonial-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:22px;
  margin-top:20px;
}
.testimonials-section .testimonial-counter{
  font-weight:750;
  font-size:13px;
  color:#52667c;
  min-width:90px;
}
.testimonials-section .testimonial-progress{
  width:min(142px,26vw);
  height:3px;
  border-radius:100px;
  overflow:hidden;
  background:#dfe5ed;
}
.testimonials-section .testimonial-progress span{
  display:block;
  width:10%;
  height:100%;
  background:#c6943b;
  border-radius:inherit;
  transition:width .3s ease;
}
.testimonials-section .testimonial-buttons{display:flex;gap:10px}
.testimonials-section .testimonial-arrow{
  width:45px;
  height:45px;
  border:1px solid #d7dee8;
  box-shadow:none;
}
.testimonials-section .testimonial-track:focus-visible{
  outline:2px solid #c6943b;
  outline-offset:-2px;
  border-radius:12px;
}
@media (max-width:760px){
  .testimonials-section{padding-block:65px}
  .testimonials-section .testimonials-heading{margin-bottom:28px}
  .testimonials-section .testimonial-track{
    --testimonial-focus-width:calc(100vw - 64px);
    --testimonial-focus-gap:14px;
    padding-block:8px 18px;
  }
  .testimonials-section .testimonial-card{
    min-height:300px;
    padding:42px 24px 27px;
    border-radius:18px;
  }
  .testimonials-section .testimonial-quote p{font-size:16px;line-height:1.65}
  .testimonials-section .testimonial-controls{gap:14px}
  .testimonials-section .testimonial-progress{width:76px}
}
@media (max-width:390px){
  .testimonials-section .testimonial-track{--testimonial-focus-width:calc(100vw - 52px)}
  .testimonials-section .testimonial-card{padding:38px 18px 24px}
  .testimonials-section .testimonial-quote p{font-size:15px}
  .testimonials-section .testimonial-progress{display:none}
}
:root[data-theme="dark"] .testimonials-section{background:#0f1d2f}
:root[data-theme="dark"] .testimonials-section .testimonial-card{
  background:#192b40;
  border-color:#324660;
  box-shadow:none;
}
:root[data-theme="dark"] .testimonials-section .testimonial-card.is-active{
  border-color:#55677c;
  box-shadow:0 22px 44px rgba(0,0,0,.16);
}
:root[data-theme="dark"] .testimonials-section .testimonial-quote{color:#e6edf7}
:root[data-theme="dark"] .testimonials-section .testimonial-author strong{color:#f0f5ff}
:root[data-theme="dark"] .testimonials-section .testimonial-author{border-color:#354b62}
:root[data-theme="dark"] .testimonials-section .testimonial-author div>span{color:#b1c3d8}
:root[data-theme="dark"] .testimonials-section .testimonial-progress{background:#34465c}
@media(prefers-color-scheme:dark){
  :root[data-theme="system"] .testimonials-section{background:#0f1d2f}
  :root[data-theme="system"] .testimonials-section .testimonial-card{background:#192b40;border-color:#324660;box-shadow:none}
  :root[data-theme="system"] .testimonials-section .testimonial-card.is-active{border-color:#55677c;box-shadow:0 22px 44px rgba(0,0,0,.16)}
  :root[data-theme="system"] .testimonials-section .testimonial-quote{color:#e6edf7}
  :root[data-theme="system"] .testimonials-section .testimonial-author strong{color:#f0f5ff}
  :root[data-theme="system"] .testimonials-section .testimonial-author{border-color:#354b62}
  :root[data-theme="system"] .testimonials-section .testimonial-author div>span{color:#b1c3d8}
  :root[data-theme="system"] .testimonials-section .testimonial-progress{background:#34465c}
}
@media(prefers-reduced-motion:reduce){
 .testimonials-section .testimonial-card,
 .testimonials-section .testimonial-progress span{transition:none}
}

/* Testimonial card footer: reviewer's name left, stars right (Brixies-inspired). */
.testimonials-section .testimonial-author{
  display:flex;
  flex-direction:row;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  text-align:left;
}
.testimonials-section .testimonial-author > div{
  flex:1 1 auto;
  width:auto;
  min-width:0;
  text-align:left;
}
.testimonials-section .testimonial-author .testimonial-author-stars{
  flex:0 0 auto;
  display:inline-block;
  white-space:nowrap;
  margin:0;
  font-size:clamp(15px,2vw,20px);
  line-height:1;
  letter-spacing:2px;
  color:#c6943b;
  text-align:right;
}
@media (max-width:390px){
  .testimonials-section .testimonial-author{gap:8px}
  .testimonials-section .testimonial-author .testimonial-author-stars{font-size:15px;letter-spacing:1px}
}


/* Three dedicated primary-service pages — responsive + theme-aware. */
.service-detail-hero{padding:80px 0 85px}
.service-detail-hero h1{max-width:960px;font-size:clamp(36px,5.3vw,65px)}
.service-detail-hero p{color:#e1e9f1;max-width:810px;font-size:17px;line-height:1.85}
.service-detail-hero-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:30px}
.service-detail-text-link{color:#f2cf88;font-weight:750;text-decoration:none}
.service-detail-text-link:hover{text-decoration:underline}
.service-detail-main{padding-top:40px}
.service-detail-breadcrumb{display:flex;gap:11px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--muted);margin-bottom:55px}
.service-detail-breadcrumb a{color:inherit;text-underline-offset:3px}
.service-detail-intro{max-width:850px;margin-bottom:32px}
.service-detail-intro h2{margin:12px 0 14px}
.service-detail-intro>p{margin:0;color:var(--muted);font-size:17px}
.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-detail-card{background:#fff;border:1px solid #dbe5f0;border-radius:14px;border-top:3px solid #d6a34d;padding:28px 25px;min-width:0;box-shadow:0 12px 36px rgba(14,41,72,.055)}
.service-detail-card-icon{width:40px;height:40px;border-radius:10px;background:#f8eedc;display:flex;align-items:center;justify-content:center;color:#82591b;font-weight:900;font-size:13px}
.service-detail-card h3{font-size:20px;line-height:1.35;color:var(--navy);margin:22px 0 10px}
.service-detail-card p{font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 15px}
.service-detail-card ul{padding:16px 0 0 19px;margin:0;border-top:1px solid #e5eaf1}
.service-detail-card li{padding:0 0 12px 1px;font-size:14px;line-height:1.6}
.service-detail-card li::marker{color:#b78530}
.service-detail-notice{display:flex;gap:14px;background:#f7efdF;border:1px solid #ecd6ae;border-radius:12px;padding:18px 22px;margin-top:25px}
.service-detail-notice>span{font-size:24px;color:#805b28}
.service-detail-notice p{font-size:13px;color:#53462e;line-height:1.75;margin:0}
.service-detail-process h2{margin:10px 0 28px}
.service-detail-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-detail-step{display:flex;gap:14px;border-top:2px solid #d6a34d;padding-top:23px}
.service-detail-step>span{font-size:23px;font-weight:850;color:#a47329}
.service-detail-step h3{font-size:17px;color:var(--navy);margin:0 0 8px}
.service-detail-step p{font-size:14px;color:var(--muted);margin:0}
.service-detail-two-col{display:grid;grid-template-columns:1.5fr .8fr;gap:60px;align-items:start}
.service-detail-bottom h2{margin:10px 0 23px}
.service-detail-faq details{border-bottom:1px solid #dce4ec;padding:17px 0}
.service-detail-faq summary{font-weight:740;cursor:pointer;color:var(--navy);padding-right:15px}
.service-detail-faq details p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:0}
.service-detail-related{background:#fff;border:1px solid #dce4ec;border-radius:14px;padding:28px;box-shadow:0 12px 35px rgba(14,41,72,.05)}
.service-detail-related h3{font-size:21px;line-height:1.35;color:var(--navy);margin:12px 0 21px}
.service-detail-related-link{display:flex;gap:12px;justify-content:space-between;padding:13px 0;border-top:1px solid #e5eaf1;text-decoration:none;color:#1d4f84;font-weight:750;font-size:14px}
.service-detail-related-link:hover{text-decoration:underline}
.service-detail-contact-link{display:inline-block;margin-top:18px;color:#1d4f84;font-size:14px;font-weight:800}
.service-tile .service-detail-open{display:inline-flex;margin:0 0 12px;color:#80551c}
.service-tile .service-detail-open:hover{text-decoration:underline}
@media(max-width:970px){.service-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail-two-col{gap:28px}}
@media(max-width:700px){.service-detail-grid,.service-detail-steps,.service-detail-two-col{grid-template-columns:1fr}.service-detail-hero{padding:65px 0}.service-detail-hero p{font-size:16px}.service-detail-main{padding-top:25px}.service-detail-breadcrumb{margin-bottom:35px}.service-detail-card{padding:23px 20px}.service-detail-related{padding:24px}}
:root[data-theme="dark"] .service-detail-card,:root[data-theme="dark"] .service-detail-related{background:#192b40;border-color:#354b62}
:root[data-theme="dark"] .service-detail-card h3,:root[data-theme="dark"] .service-detail-step h3,:root[data-theme="dark"] .service-detail-faq summary,:root[data-theme="dark"] .service-detail-related h3{color:#f1f5fb}
:root[data-theme="dark"] .service-detail-card ul,:root[data-theme="dark"] .service-detail-faq details,:root[data-theme="dark"] .service-detail-related-link{border-color:#40546b}
:root[data-theme="dark"] .service-detail-notice{background:#352e23;border-color:#715b38}
:root[data-theme="dark"] .service-detail-notice p{color:#eedbc0}
:root[data-theme="dark"] .service-detail-related-link,:root[data-theme="dark"] .service-detail-contact-link{color:#a9d2ff}
@media(prefers-color-scheme:dark){
:root[data-theme="system"] .service-detail-card,:root[data-theme="system"] .service-detail-related{background:#192b40;border-color:#354b62}
:root[data-theme="system"] .service-detail-card h3,:root[data-theme="system"] .service-detail-step h3,:root[data-theme="system"] .service-detail-faq summary,:root[data-theme="system"] .service-detail-related h3{color:#f1f5fb}
:root[data-theme="system"] .service-detail-card ul,:root[data-theme="system"] .service-detail-faq details,:root[data-theme="system"] .service-detail-related-link{border-color:#40546b}
:root[data-theme="system"] .service-detail-notice{background:#352e23;border-color:#715b38}
:root[data-theme="system"] .service-detail-notice p{color:#eedbc0}
:root[data-theme="system"] .service-detail-related-link,:root[data-theme="system"] .service-detail-contact-link{color:#a9d2ff}
}


/* Bottom footer legal links: copyright | legal pages | social icons. */
footer .footer-bottom{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1.65fr) auto;
  align-items:center;
  column-gap:22px;
  row-gap:14px;
}
footer .footer-bottom .copyright{min-width:0;line-height:1.65}
footer .footer-bottom .footer-legal-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  column-gap:0;
  row-gap:8px;
  min-width:0;
  font-size:11px;
  line-height:1.4;
}
footer .footer-bottom .footer-legal-nav a{
  display:inline-block;
  margin:0;
  padding:1px 8px;
  color:#bdccdb;
  text-decoration:none;
  white-space:nowrap;
}
footer .footer-bottom .footer-legal-nav a:hover,
footer .footer-bottom .footer-legal-nav a:focus-visible{
  color:#f0c87c;
  text-decoration:underline;
  text-underline-offset:3px;
}
footer .footer-bottom .footer-legal-nav a + a{border-left:1px solid #718298}
footer .footer-bottom .footer-social{margin:0;min-width:0}
@media(max-width:1050px){
  footer .footer-bottom{grid-template-columns:minmax(0,1fr) auto;}
  footer .footer-bottom .copyright{grid-column:1;grid-row:1}
  footer .footer-bottom .footer-social{grid-column:2;grid-row:1}
  footer .footer-bottom .footer-legal-nav{
    grid-column:1 / -1;
    grid-row:2;
    justify-content:center;
  }
}
@media(max-width:760px){
  footer .footer-bottom{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    text-align:center;
  }
  footer .footer-bottom .copyright{width:100%}
  footer .footer-bottom .footer-legal-nav{width:100%;justify-content:center}
  footer .footer-bottom .footer-social{width:100%;margin:0}
  footer .footer-bottom .social-icons{justify-content:center}
}


/* ========================================================
   Footer refinement: company socials + right-aligned legal
   Shared by English and Spanish pages, light and dark modes.
   ======================================================== */
footer {
  background: #0c2137;
  color: #d6e2ef;
}
footer h3 { color: #ffffff; }
footer .cols p { color: #d2deeb; }
footer .cols a:not(.social-icon) {
  color: #dce7f2;
  text-decoration-color: transparent;
  text-underline-offset: 3px;
}
footer .cols a:not(.social-icon):hover,
footer .cols a:not(.social-icon):focus-visible {
  color: #f2cc84;
  text-decoration: underline;
}
/* The social row belongs to the company information column. */
footer .footer-company .company-social {
  margin-top: 18px;
  padding: 0;
  border: none;
  text-align: left;
}
footer .footer-company .company-social .social-icons {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 9px;
}
footer .footer-company .company-social .social-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  border: 1px solid #55718d;
  border-radius: 50%;
  background: #17334f;
  color: #e2edf8;
  opacity: 1;
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
footer .footer-company .company-social .social-icon svg {
  width: 17px;
  height: 17px;
}
footer .footer-company .company-social a.social-icon:hover,
footer .footer-company .company-social a.social-icon:focus-visible {
  color: #10263d;
  background: #f2c879;
  border-color: #f2c879;
  transform: translateY(-2px);
}
footer .footer-company .company-social span.social-icon {
  opacity: .55;
}
/* Copyright on left; legal pages flush right in the bottom bar. */
footer .footer-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
  align-items: center;
  gap: 14px 24px;
  padding-top: 22px;
  border-top: 1px solid #476078;
}
footer .footer-bottom .copyright {
  min-width: 0;
  margin: 0;
  padding: 0;
  color: #c2d1e1;
  line-height: 1.7;
}
footer .footer-bottom .copyright a {
  display: inline;
  color: #e0ebf6;
  margin: 0;
  text-decoration-color: #7892ad;
  text-underline-offset: 3px;
}
footer .footer-bottom .copyright a:hover,
footer .footer-bottom .copyright a:focus-visible { color: #f2cc84; }
footer .footer-bottom .footer-legal-nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 0;
  min-width: 0;
  margin-left: auto;
  font-size: 12px;
  line-height: 1.5;
  text-align: right;
}
footer .footer-bottom .footer-legal-nav a {
  display: inline-block;
  margin: 0;
  padding: 0 10px;
  color: #dbe7f3;
  white-space: nowrap;
  text-decoration: none;
}
footer .footer-bottom .footer-legal-nav a:last-child { padding-right: 0; }
footer .footer-bottom .footer-legal-nav a + a {
  border-left: 1px solid #71869b;
}
footer .footer-bottom .footer-legal-nav a:hover,
footer .footer-bottom .footer-legal-nav a:focus-visible {
  color: #f2cc84;
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 1050px) and (min-width: 761px) {
  footer .footer-bottom {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
  }
  footer .footer-bottom .copyright { grid-column: 1; grid-row: 1; }
  footer .footer-bottom .footer-legal-nav {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-end;
  }
}
@media (max-width: 760px) {
  footer .footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
  }
  footer .footer-bottom .copyright {
    width: 100%;
    text-align: center;
  }
  footer .footer-bottom .footer-legal-nav {
    width: 100%;
    margin: 0;
    justify-content: center;
    text-align: center;
  }
  footer .footer-bottom .footer-legal-nav a:last-child { padding-right: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  footer .footer-company .company-social .social-icon { transition: none; }
}


/* ===========================================================
   Footer legal-link visibility fix — October 2026
   The global theme selector `:root[data-theme="light"] nav a:not(.btn)`
   otherwise makes footer links navy on navy. These selectors
   are intentionally more specific for every appearance mode.
   =========================================================== */
:root footer .footer-bottom nav.footer-legal-nav a:not(.btn) {
  color: #f2f7ff;
  opacity: 1;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  text-shadow: none;
}
:root footer .footer-bottom nav.footer-legal-nav a:not(.btn):hover,
:root footer .footer-bottom nav.footer-legal-nav a:not(.btn):focus-visible {
  color: #ffdc91;
  text-decoration: underline;
  text-underline-offset: 3px;
}
:root footer .footer-bottom nav.footer-legal-nav a + a {
  border-left-color: #829bb3;
}
/* Keep linked Google icon as bright and interactive as other socials. */
:root footer .footer-company .company-social a.social-icon[data-social="google"] {
  opacity: 1;
  color: #eaf2fc;
}
:root footer .footer-company .company-social a.social-icon[data-social="google"]:hover,
:root footer .footer-company .company-social a.social-icon[data-social="google"]:focus-visible {
  color: #10263d;
}


/* Compact bottom legal navigation — single row beside copyright on desktop.
   Existing high-contrast link colors remain in force. */
@media (min-width: 981px) {
  footer .footer-bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content;
    gap: 12px;
    align-items: center;
  }
  footer .footer-bottom .footer-legal-nav {
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    justify-content: flex-end;
    margin-left: 0;
    gap: 0;
    line-height: 1.35;
  }
  :root footer .footer-bottom nav.footer-legal-nav a:not(.btn) {
    font-size: 11px;
    font-weight: 500;
    padding: 0 6px;
    white-space: nowrap;
  }
  :root footer .footer-bottom nav.footer-legal-nav a:first-child { padding-left: 0; }
  :root footer .footer-bottom nav.footer-legal-nav a:last-child { padding-right: 0; }
}
/* On narrower laptops/tablets, give links a full row rather than squeeze. */
@media (min-width: 761px) and (max-width: 980px) {
  footer .footer-bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  footer .footer-bottom .copyright { grid-column: 1; grid-row: 1; }
  footer .footer-bottom .footer-legal-nav {
    grid-column: 1;
    grid-row: 2;
    justify-content: flex-end;
    margin-left: 0;
    flex-wrap: nowrap;
    white-space: nowrap;
  }
  :root footer .footer-bottom nav.footer-legal-nav a:not(.btn) {
    font-size: 11px;
    font-weight: 500;
    padding: 0 6px;
  }
}
