/* Brand-preserving presentation, shared by the primary marketing pages. */
.fc-v2 .hero{background:linear-gradient(116deg,#071426 0%,#0b1f3a 65%,#0d2a48 100%)}
.fc-v2 .hero-pattern{opacity:.28;mask-image:linear-gradient(90deg,transparent 35%,#000)}
.fc-v2 .hero::before{background:radial-gradient(ellipse 35% 55% at 78% 43%,#4fc4bc0a,transparent),radial-gradient(ellipse 25% 45% at 10% 0%,#2d7dd20c,transparent)}
.fc-v2 .hero-grid{grid-template-columns:1.05fr 1fr;gap:2rem;padding-block:2.8rem 2.6rem;align-items:center}
.fc-v2 .hero-copy{min-width:0;padding-bottom:16px}
.fc-v2 .hero-eyebrow{font-size:.7rem;padding:.4rem .7rem;max-width:100%;margin-bottom:1.4rem;gap:.5rem}.fc-v2 .hero-eyebrow .dot{flex-shrink:0;animation:none;width:5px;height:5px}
.fc-v2 .hero h1{font-size:clamp(2.2rem,3.75vw,2.95rem);line-height:1.18;letter-spacing:-.045em;margin-bottom:1.35rem;text-wrap:initial}
.fc-v2 .hero-subtitle{font-size:1.04rem;line-height:1.8;font-weight:400;color:#b6c5d9;margin-bottom:1.65rem;max-width:34rem}
.fc-v2 .hero-actions{gap:.65rem;margin:0 0 1.7rem}.fc-v2 .hero-actions .btn{font-size:.88rem;padding:1rem 1.5rem;border-radius:.65rem}
.fc-v2 .hero-badges{gap:.5rem}.fc-v2 .chip{font-size:.68rem;line-height:1.4;padding:.42rem .65rem;color:#b4c5d9;border-color:#ffffff14;background:#ffffff03}
.alignment-story{position:relative;min-width:0;padding:0;align-self:center}
.scene-topline{display:flex;align-items:center;justify-content:space-between;padding:0 18px;margin-bottom:-18px}.scene-kicker{color:var(--teal-light);font-size:.67rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600}.scene-index{font-size:.65rem;letter-spacing:.14em;color:#8ba0bc}
.brand-scene{position:relative;width:100%;max-width:490px;aspect-ratio:620/580;margin:0 auto}.brand-scene-svg{display:block;width:100%;height:100%;overflow:visible}
.service-node{position:absolute;left:var(--x);top:var(--y);width:112px;height:94px;transform:translate(-50%,-34px);border:0;border-radius:14px;padding:0;background:transparent;color:#a9bdd0;cursor:pointer;font:500 11px Inter,system-ui,sans-serif;transition:color .2s}
.service-node span{position:absolute;inset:70px -20px auto;text-align:center;white-space:nowrap}.service-node::before{content:'';position:absolute;top:7px;left:50%;transform:translateX(-50%);width:60px;height:60px;border:1px solid transparent;border-radius:16px;transition:border-color .2s,box-shadow .2s}.service-node:hover,.service-node.selected,.service-node:focus-visible{color:#c6dd8f}.service-node:hover::before,.service-node.selected::before{border-color:#a9c76677;box-shadow:0 0 22px #a9c76609}.service-node:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.service-detail{display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(100deg,#17364b99,#10294370);border:1px solid #8abcd22b;border-radius:14px;padding:19px 22px;box-shadow:0 18px 40px #03102024;min-height:104px;margin:0 13px}
.detail-kicker{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#8adcd6;margin-bottom:6px}.service-detail .detail-title{font:600 .84rem/1.4 var(--font-display);color:#e8eff8;margin:0 0 5px}.service-detail p{font:400 .74rem/1.5 var(--font-body);color:#9fb2cc;margin:0}.service-detail a{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;color:#c6dd8f;border:1px solid #a9c7663d;font-size:20px;transition:background .2s}.service-detail a:hover{background:#a9c76620}
.scene-footer{padding:12px 17px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#879eb7}.scene-footer button{background:none;border:0;padding:4px;color:#b1c6d8;font:inherit;cursor:pointer}.scene-footer button span{padding-left:4px}.scene-footer button:hover{color:#8adcd6}
.fc-v2 .hero-context{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:2rem;align-items:center;padding:1.9rem 0 2.8rem;border-top:1px solid #92b3cf26}
.fc-v2 .hero-context .hero-lede{display:block;font-size:.8rem;line-height:1.9;margin:0;max-width:32rem;color:#9fb2cc;padding-right:24px}
.fc-v2 .hero-context .hero-panel{padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;overflow:visible;border-radius:0;max-width:none}.fc-v2 .hero-context .hero-panel::before{display:none}.fc-v2 .hero-panel-brand{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);border:0;margin:0}.fc-v2 .hero-list-title{font-size:.65rem;margin-bottom:10px}.fc-v2 .hero-list li{font-size:.7rem;line-height:1.7;padding-inline-start:.8rem}.fc-v2 .hero-list li::before{width:3px;height:3px;top:.65em}.fc-v2 .hero-lists{gap:1.5rem}.fc-v2 .hero-panel-link{font-size:.7rem;margin-top:15px}
.fc-v2 .stats-band{background:#fff;border-bottom:1px solid #dfe7f0}.fc-v2 .stats-grid{background:#dfe7f0}.fc-v2 .stat{background:#fff;border-color:#dfe7f0;padding-block:1.8rem}.fc-v2 .stat-number{font-size:2.5rem;-webkit-text-fill-color:unset;background:none;color:#11243e}.fc-v2 .stat-label{color:#11243e}.fc-v2 .stat-desc{color:#607188}
.fc-v2 #services{background:linear-gradient(#f4f7fb,#fff)}.fc-v2 .service-card{box-shadow:0 6px 30px #0b1f3a04}.fc-v2 .service-card:hover{transform:translateY(-4px);box-shadow:0 15px 32px #0b1f3a09}
.motion-paused .brand-scene *,.brand-scene.scene-paused *{animation-play-state:paused!important}
.fc-brand:not(.fc-motion-ready) .brand-scene *{animation:none!important}
.fc-connectors path{transition:stroke .25s,stroke-width .25s}
.brand-scene[data-active="bookkeeping"] .fc-connectors path:nth-child(1),.brand-scene[data-active="advisory"] .fc-connectors path:nth-child(2),.brand-scene[data-active="assurance"] .fc-connectors path:nth-child(3),.brand-scene[data-active="tax"] .fc-connectors path:nth-child(4),.brand-scene[data-active="itin"] .fc-connectors path:nth-child(5),.brand-scene[data-active="controls"] .fc-connectors path:nth-child(6){stroke:#8adcd6;stroke-width:1.4}
@media(min-width:1200px){.fc-brand .main-nav a{padding-inline:.55rem;font-size:.77rem}.fc-brand .brand-name{font-size:1rem}.fc-brand .header-cta .btn{font-size:.75rem;padding:.65rem .9rem}.fc-brand .header-row{gap:.75rem}.fc-brand .brand{gap:.6rem}}
@media(max-width:1000px){.fc-v2 .hero-grid{gap:1.5rem;grid-template-columns:1fr 1fr}.fc-v2 .hero h1{font-size:2.4rem}.fc-v2 .hero-subtitle{font-size:.9rem}.fc-v2 .hero-eyebrow{font-size:.65rem}.service-node{width:85px;transform:translate(-50%,-27px);height:80px;font-size:10px}.service-node::before{width:45px;height:45px;border-radius:12px}.service-node span{inset:56px -15px auto}.service-detail{padding:16px}.fc-v2 .hero-context{gap:1.5rem}}
@media(max-width:760px){.design-bar{padding:8px 16px;gap:10px;font-size:10px}.design-bar-note,.design-status{display:none}.design-bar nav a{padding:4px 11px}.fc-v2 .hero-grid{grid-template-columns:1fr;gap:2rem;padding-block:2.7rem 2rem}.fc-v2 .hero-copy{padding:0}.fc-v2 .hero h1{font-size:clamp(2rem,7.6vw,3.5rem);max-width:600px}.fc-v2 .hero-subtitle{font-size:1rem;line-height:1.8}.fc-v2 .hero-eyebrow{font-size:.67rem;line-height:1.55}.fc-v2 .hero-badges{max-width:500px}.fc-v2 .hero-actions{margin-bottom:1.4rem}.alignment-story{width:100%;max-width:540px;margin:0 auto}.fc-v2 .hero-context{grid-template-columns:1fr;padding-bottom:2.5rem;gap:2rem}.fc-v2 .hero-context .hero-lede{max-width:none;padding:0;font-size:.84rem}.fc-v2 .hero-list li{font-size:.75rem}.fc-v2 .hero-list-title{font-size:.72rem}.fc-v2 .hero-panel-link{font-size:.8rem}.fc-v2 .hero-panel-brand{display:none}.fc-v2 .scene-topline{padding:0 10px}.fc-v2 .stats-grid{grid-template-columns:1fr}.fc-v2 .stat{padding:1.5rem}.fc-v2 .stat-number{font-size:2.4rem}.service-detail{margin:0;min-height:104px}.scene-footer{padding-inline:4px}}
@media(max-width:420px){.service-node{width:76px;height:76px;transform:translate(-50%,-22px);font-size:11px}.service-node::before{width:37px;height:37px;top:3px;border-radius:10px}.service-node span{inset:46px -12px auto}.fc-v2 .hero h1{font-size:2.16rem}.fc-v2 .hero-actions{flex-wrap:wrap;gap:.5rem}.fc-v2 .hero-actions .btn{padding:.9rem .9rem;font-size:.75rem}.fc-v2 .hero-badges .chip{font-size:.68rem;padding:.4rem .5rem}.service-detail .detail-title{font-size:.8rem}.service-detail p{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.fc-brand *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scene-footer button{display:none}}

/* Companion rules for service, industry and resource pages. */
.fc-brand .site-chrome{background:var(--navy-900)}
.fc-inner .page-hero{padding-block:2.75rem 3.25rem;background:linear-gradient(116deg,#071426,#0b1f3a 65%,#0d2a48);text-align:start}
.fc-inner .page-hero .breadcrumb{justify-content:flex-start}
.fc-inner .tool-directory-hero :is(h1,.lede){text-align:start;margin-inline:0}
.fc-inner .page-hero .hero-pattern{opacity:.25;mask-image:linear-gradient(90deg,transparent 25%,#000)}
.fc-page-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:3.5rem;align-items:center;min-height:350px}
.fc-page-copy{min-width:0}.fc-inner .page-hero h1{font-size:clamp(2rem,3.5vw,3rem);line-height:1.18;letter-spacing:-.035em;margin-bottom:1.4rem}
.fc-inner .page-hero .lede{font-size:1.05rem;line-height:1.8;color:#b1c3d9}.fc-inner .breadcrumb{font-size:.74rem;margin-bottom:2rem;line-height:1.6}
.fc-page-visual{min-width:0;position:relative;aspect-ratio:540/370;direction:ltr}
.fc-page-art{display:block;width:100%;height:auto;overflow:visible;aspect-ratio:540/370}
.fc-page-art .fc-draw{stroke-dasharray:1;stroke-dashoffset:0;animation:fc-line-reveal 2.6s ease-out both}
.fc-page-art .fc-piece{animation:fc-align-in 1.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes fc-line-reveal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes fc-align-in{from{opacity:.35;translate:0 10px}to{opacity:1;translate:0 0}}
.fc-page-nav{position:sticky;top:var(--site-chrome-h);z-index:80;border-bottom:1px solid var(--line);background:#ffffffef;backdrop-filter:blur(12px)}
.fc-page-nav .container{display:flex;align-items:center;gap:1.5rem;overflow-x:auto;scrollbar-width:none;padding-block:1rem;font-size:.76rem}
.fc-page-nav .container::-webkit-scrollbar{display:none}
.fc-page-nav span{font-size:.65rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0;color:#58752b;padding-inline-end:.5rem;border-inline-end:1px solid var(--line)}
.fc-page-nav a{flex-shrink:0;color:#4a5b73;font-weight:500;line-height:1.6;border-bottom:1px solid transparent}.fc-page-nav a:hover,.fc-page-nav a:focus-visible{color:#11243e;border-color:#4fc4bc}
.fc-inner .page-body{background:linear-gradient(#f4f7fb,#fff 800px);padding-block:4rem 5rem}
.fc-inner .page-body>.container{max-width:var(--container)}
.fc-inner .content-section{margin-bottom:4.5rem;scroll-margin-top:calc(var(--site-chrome-h) + 6rem)}
.fc-inner .content-section>h2{font-size:1.75rem;letter-spacing:-.025em;padding-bottom:1.1rem;scroll-margin-top:calc(var(--site-chrome-h) + 6rem)}
.fc-inner .content-section>p{max-width:57rem;line-height:1.85}
.fc-inner .detail-card{background:#fff;border-color:#dfe7f0;padding:1.8rem 2rem;box-shadow:0 6px 25px #0b1f3a03;position:relative;overflow:hidden}
.fc-inner .detail-card::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,#4fc4bc60,#a9c76645,transparent)}
.fc-inner .detail-card h3{font-size:1.09rem;line-height:1.45;color:#11243e;letter-spacing:-.01em}
.fc-inner .detail-card:hover{border-color:#4fc4bc66;box-shadow:0 12px 28px #0b1f3a07}
.fc-inner :is(.topic-card,.industry-card,.tool-category-card,.tool-card){transition:transform .22s,border-color .22s,box-shadow .22s;box-shadow:0 5px 26px #0b1f3a04}
.fc-inner :is(.topic-card,.industry-card,.tool-category-card,.tool-card):hover{transform:translateY(-3px);border-color:#4fc4bc80;box-shadow:0 12px 28px #0b1f3a08}
.fc-inner .solutions-domain-visual{display:flex;flex-wrap:wrap;padding:1.5rem 2rem 2rem;background:linear-gradient(130deg,#17364b66,#0b1f3a44);border-color:#8abcd22b}
.fc-inner .solutions-domain-visual .fc-page-art{flex:0 0 100%;max-height:260px;margin-bottom:.4rem}
.fc-inner .solutions-domain-label,.fc-inner .solutions-domain-coming{flex-basis:100%}
.fc-inner .solutions-domain-visual strong{font-size:1.55rem}.fc-inner .solutions-domain-plus{font-size:1.3rem;margin:.3rem 0}.fc-inner .solutions-domain-label{font-size:.68rem}
.fc-inner .solutions-hero-grid{gap:3rem}.fc-inner .solutions-hero h1{font-size:clamp(2.1rem,3.7vw,3.2rem)}
.fc-brand .brand-scene{direction:ltr}.fc-brand .service-detail .detail-title{font-weight:600}
html[dir="rtl"] .fc-brand .service-detail,html[dir="rtl"] .fc-brand .scene-topline,html[dir="rtl"] .fc-brand .scene-footer{direction:rtl}
html[dir="rtl"] .fc-brand .hero-context .hero-lede{padding-right:0;padding-left:24px}
html[dir="rtl"] .fc-brand .hero h1,html[dir="rtl"] .fc-inner .page-hero h1{letter-spacing:0;line-height:1.4}
html[lang="es"] .fc-v2 .hero h1{font-size:clamp(2rem,3.3vw,2.8rem)}
@media(min-width:1000px){.fc-inner .content-section:has(>.detail-card){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.35rem;align-items:stretch}.fc-inner .content-section:has(>.detail-card)>:not(.detail-card){grid-column:1/-1}.fc-inner .content-section .detail-card:only-of-type{grid-column:1/-1}.fc-inner .content-section>p{margin-bottom:1.5rem}}
@media(max-width:1000px){.fc-page-grid{gap:1.5rem;grid-template-columns:1.1fr 1fr;min-height:300px}.fc-inner .page-hero h1{font-size:2.2rem}.fc-inner .page-hero .lede{font-size:.95rem}.fc-inner .page-hero{padding-block:2.5rem}.fc-page-nav .container{gap:1.1rem}.fc-inner .solutions-domain-visual{padding:1rem 1.5rem 1.5rem}}
@media(max-width:760px){.fc-page-grid{grid-template-columns:1fr;gap:1.5rem;min-height:0}.fc-page-visual{width:min(100%,440px);margin:auto}.fc-inner .page-hero{padding-block:2rem 1.5rem}.fc-inner .page-hero h1{font-size:clamp(1.9rem,7.8vw,2.5rem);margin-bottom:1rem}.fc-inner .page-hero .lede{font-size:1rem;line-height:1.75}.fc-inner .breadcrumb{margin-bottom:1.5rem}.fc-page-nav{position:relative;top:auto}.fc-page-nav .container{padding-block:.9rem}.fc-inner .page-body{padding-block:2.5rem}.fc-inner .content-section>h2{font-size:1.45rem}.fc-inner .detail-card{padding:1.4rem}.fc-inner .content-section{margin-bottom:3rem}.fc-inner .solutions-domain-visual{max-width:440px;width:100%;margin:auto}.fc-inner .solutions-domain-visual .fc-page-art{max-height:230px}.fc-inner .solutions-hero-grid{gap:2rem}html[dir="rtl"] .fc-brand .hero-context .hero-lede{padding:0}}
@media(prefers-reduced-motion:reduce){.fc-brand *,.fc-brand *::before,.fc-brand *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
