:root{--fd-ease:cubic-bezier(.2, .7, .2, 1);--fd-dur:700ms;--fd-hh:89px;--fd-hs:.8652}html.js-motion:not(.fd-ready) :is(.hero .eyebrow,.hero h1,.hero .hero-lede,.hero .hero-tags,.hero .offer-card,.hero-photo img,.hero-photo .hero-badge,.page-hero .breadcrumb,.page-hero .eyebrow,.page-hero h1,.page-hero .container>p,.page-hero-copy>p,.page-hero .hero-actions,.page-hero .page-actions,.page-hero .hero-scene,.section-head .eyebrow,.section-head h2,.section-head>p,:is(.grid-2,.grid-3,.grid-4,.trust-list,.stats-band,.footer-grid,.badge-icon-list,.step-list,.filter-bar,.contact-info-card,.sector-row)>*,.two-col>*:not(.img-card),.team-card>.team-visual,.team-visual .float-chip-a,.team-visual .float-chip-b,.cta-band,.callout-band,.img-card img,.team-photo img,.portfolio-thumb),html.js-motion:not(.fd-ready) .hero-photo::before{opacity:0}html.js-motion [data-reveal]:not([data-reveal="frame"]):not(.is-in),html.js-motion [data-stagger]>:not([data-reveal]):not(.is-in){opacity:0}html.js-motion [data-reveal].is-in,html.js-motion [data-stagger]>.is-in:not([data-reveal]){animation:fd-up var(--fd-dur) var(--fd-ease) backwards;animation-delay:calc(var(--d, 0ms) + var(--i, 0) * var(--step, 70ms))}html.js-motion [data-reveal="fade"].is-in,html.js-motion [data-stagger="fade"]>.is-in:not([data-reveal]){animation-name:fd-fade;animation-duration:600ms}html.js-motion [data-reveal="left"].is-in,html.js-motion [data-stagger="left"]>.is-in:not([data-reveal]){animation-name:fd-left}html.js-motion [data-reveal="right"].is-in,html.js-motion [data-stagger="right"]>.is-in:not([data-reveal]){animation-name:fd-right}html.js-motion [data-reveal="scale"].is-in,html.js-motion [data-stagger="scale"]>.is-in:not([data-reveal]){animation-name:fd-scale;animation-duration:800ms}html.js-motion [data-reveal="pop"].is-in,html.js-motion [data-stagger="pop"]>.is-in:not([data-reveal]){animation-name:fd-pop;animation-duration:560ms}html.js-motion [data-reveal="wipe"].is-in{animation-name:fd-wipe;animation-duration:900ms}html.js-motion .hero-scene[data-reveal="fade"].is-in{animation-duration:420ms}html.js-motion .scene[data-scene]:not(.is-in) svg{visibility:hidden}html.js-motion .is-instant,html.js-motion .is-instant::before,html.js-motion .is-instant::after,html.js-motion .is-instant .fd-wi,html.js-motion .is-instant .fd-path{animation:none!important}@keyframes fd-up{from{opacity:0;transform:translateY(24px)}}@keyframes fd-fade{from{opacity:0}}@keyframes fd-left{from{opacity:0;transform:translateX(-28px)}}@keyframes fd-right{from{opacity:0;transform:translateX(28px)}}@keyframes fd-scale{from{opacity:0;transform:scale(.96)}}@keyframes fd-pop{from{opacity:0;transform:scale(.82)}}@keyframes fd-wipe{from{clip-path:inset(-100px 100% -100px -100px)}to{clip-path:inset(-100px -100px -100px -100px)}}html.js-motion .hero-photo[data-reveal="frame"]:not(.is-in)::before{opacity:0}html.js-motion .hero-photo[data-reveal="frame"].is-in::before{animation:fd-frame 900ms var(--fd-ease) backwards;animation-delay:calc(var(--d, 0ms) + 120ms)}@keyframes fd-frame{from{opacity:0;transform:translate(-26px,-26px)}}html.js-motion .hero-photo[data-parallax]::before{translate:0 var(--py,0)}html.js-motion [data-parallax]:not(.hero-photo){translate:0 var(--py,0)}.fd-w{display:inline-block;white-space:nowrap;clip-path:inset(-.15em -.12em -.25em -.12em)}.fd-wi{display:inline-block;padding:.04em .02em .14em;margin:-.04em -.02em -.14em}html.js-motion [data-split]:not(.is-in) .fd-wi{transform:translateY(125%)}html.js-motion [data-split]:not(.fd-split){visibility:hidden}html.js-motion [data-split].is-in .fd-wi{animation:fd-rise 760ms var(--fd-ease) backwards;animation-delay:calc(var(--d, 0ms) + var(--wi, 0) * var(--ws, 50ms))}@keyframes fd-rise{from{transform:translateY(125%)}}.fd-split .grad-text{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:inherit}.fd-split .grad-text .fd-wi{background-image:var(--brand-gradient);background-repeat:no-repeat;background-size:var(--gw,100%) 100%;background-position:calc(var(--gl, 0px) * -1) 0;-webkit-background-clip:text;background-clip:text;color:#fff0;-webkit-text-fill-color:#fff0}html.js-motion [data-draw]:not(.is-in) .fd-path,html.js-motion .fd-path[data-draw]:not(.is-in){stroke-dasharray:1 2;stroke-dashoffset:1;opacity:0}html.js-motion [data-draw].is-in .fd-path,html.js-motion .fd-path[data-draw].is-in{animation:fd-draw var(--dd,900ms) var(--fd-ease) backwards;animation-delay:calc(var(--d, 0ms) + var(--pi, 0) * 120ms)}@keyframes fd-draw{from{stroke-dasharray:1 2;stroke-dashoffset:1;opacity:0}1%{stroke-dasharray:1 2;stroke-dashoffset:1;opacity:1}to{stroke-dasharray:1 2;stroke-dashoffset:0;opacity:1}}.stats-band::before{transform-origin:left center}html.js-motion .stats-band:not(.is-in)::before{transform:scaleX(0)}html.js-motion .stats-band.is-in::before{animation:fd-bar 1000ms var(--fd-ease) backwards}@keyframes fd-bar{from{transform:scaleX(0)}}html.js-motion .process-card:not(:last-child):not(.is-in)::after{clip-path:inset(0 100% 100% 0)}html.js-motion .process-card:not(:last-child).is-in::after{animation:fd-chevron 560ms var(--fd-ease) backwards;animation-delay:calc(var(--d, 0ms) + var(--i, 0) * var(--step, 70ms) + 520ms)}@keyframes fd-chevron{from{clip-path:inset(0 100% 100% 0)}50%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}.step-list .step:not(:last-child)::after{content:"";position:absolute;left:26px;top:56px;width:2px;height:calc(100% - 20px);background:linear-gradient(180deg,var(--color-accent),var(--color-accent-3));transform:scaleY(var(--p,1));transform-origin:top center;z-index:0;pointer-events:none}html.js-motion .step-list .step:not(.is-reached) .step-num{opacity:0;transform:scale(.6)}html.js-motion .step-list .step.is-reached .step-num{animation:fd-num 560ms var(--fd-ease) backwards}@keyframes fd-num{from{opacity:0;transform:scale(.6)}65%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes fd-float{0%,100%{translate:0 0}50%{translate:0 -6px}}html.js-motion .is-live .hero-badge:not(.hero-badge-top).is-in,html.js-motion .is-live .float-chip-b.is-in{animation:fd-pop 560ms var(--fd-ease) var(--d,0ms) backwards,fd-float 8s ease-in-out calc(var(--d, 0ms) + 1s) infinite}.fd-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:1200;pointer-events:none}.fd-progress i{display:block;height:100%;background:var(--brand-gradient);transform:scaleX(0);transform-origin:left center}.site-header::before,.site-header::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;transform-origin:50% 0;transition:transform 380ms var(--fd-ease),opacity 300ms ease}.site-header::before{background:#fff;border-bottom:1px solid var(--color-border)}.site-header::after{z-index:-2;opacity:0;box-shadow:0 12px 24px -16px rgb(11 18 32 / .3)}.site-header.is-scrolled::before,.site-header.is-scrolled::after{transform:scaleY(var(--fd-hs))}.site-header.is-scrolled::after{opacity:1}.logo,.nav-toggle{transition:transform 380ms var(--fd-ease)}.logo img{transform-origin:left center;transition:transform 380ms var(--fd-ease)}.site-header.is-scrolled .logo,.site-header.is-scrolled .nav-toggle{transform:translateY(-6px)}.site-header.is-scrolled .logo img{transform:scale(.7857)}@media (min-width:769px){.nav-links,.header-cta{transition:transform 380ms var(--fd-ease)}.site-header.is-scrolled .nav-links,.site-header.is-scrolled .header-cta{transform:translateY(-6px)}}@media (min-width:769px){.nav-links>li>a::before{content:"";position:absolute;left:4px;right:4px;bottom:2px;height:2px;border-radius:2px;background:var(--color-accent);transform:scaleX(0);transform-origin:right center;transition:transform 340ms var(--fd-ease)}.nav-links>li.nav-dropdown>a::before{right:16px}.nav-links>li>a:hover::before,.nav-links>li>a:focus-visible::before,.nav-links>li:focus-within>a::before,.nav-links>li>a[aria-current="page"]::before{transform:scaleX(1);transform-origin:left center}}html.js-motion .fd-burger .fd-bar{transform-box:fill-box;transform-origin:center;transition:transform 420ms var(--fd-ease),opacity 200ms ease}html.js-motion .fd-burger[aria-expanded="true"] .fd-bar-1{transform:translateY(5px) rotate(45deg)}html.js-motion .fd-burger[aria-expanded="true"] .fd-bar-2{opacity:0;transform:scaleX(.2)}html.js-motion .fd-burger[aria-expanded="true"] .fd-bar-3{transform:translateY(-5px) rotate(-45deg)}@media (max-width:768px){.main-nav.open .nav-links>li,.main-nav.open .header-cta{animation:fd-link-in 520ms var(--fd-ease) backwards;animation-delay:calc(140ms + var(--n, 0) * 55ms)}.main-nav.open .nav-links>li:nth-child(2){--n:1}.main-nav.open .nav-links>li:nth-child(3){--n:2}.main-nav.open .nav-links>li:nth-child(4){--n:3}.main-nav.open .nav-links>li:nth-child(5){--n:4}.main-nav.open .header-cta{--n:5}}@keyframes fd-link-in{from{opacity:0;transform:translateX(22px)}}.btn .chip svg{transition:transform 300ms var(--fd-ease)}.btn:hover .chip svg,.btn:focus-visible .chip svg{transform:translate(2px,-2px)}.btn:active{transform:translateY(1px) scale(.985);transition-duration:90ms}.filter-btn:active,.hero-tags a:active{transform:scale(.97)}.field{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;align-content:start}.field>input,.field>select,.field>textarea{grid-row:2;grid-column:1}.field::after{content:"";grid-row:2;grid-column:1;pointer-events:none;border-radius:var(--radius-sm);border:2px solid var(--color-accent);box-shadow:0 0 0 4px rgb(25 123 255 / .14);opacity:0;transform:scale(1.02,1.08);transition:opacity 220ms ease,transform 360ms var(--fd-ease)}.field:focus-within::after{opacity:1;transform:none}.field>label{transition:color 200ms ease,transform 320ms var(--fd-ease)}.field:focus-within>label{color:var(--color-accent-light);transform:translateX(3px)}.fd-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}html.js-motion #form-status{animation:fd-status-in 560ms var(--fd-ease) backwards}@keyframes fd-status-in{from{opacity:0;transform:translateY(-8px)}}@view-transition{navigation:auto}@media (min-width:769px){.site-header{view-transition-name:site-header}}::view-transition-old(root){animation:fd-vt-out 220ms ease both}::view-transition-new(root){animation:fd-vt-in 360ms var(--fd-ease) both}::view-transition-group(site-header){animation-duration:0s}@keyframes fd-vt-out{to{opacity:0}}@keyframes fd-vt-in{from{opacity:0}}.page-hero--scene{text-align:left;padding:var(--space-xl) 0}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);align-items:center}.page-hero--scene .page-hero-copy{max-width:580px}.page-hero--scene .eyebrow{display:block}.page-hero--scene h1{margin-bottom:var(--space-md);text-wrap:balance}.page-hero--scene .page-hero-copy>p{font-size:1.12rem;max-width:54ch}.page-hero--scene .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-md);margin-top:var(--space-md)}.hero-scene{position:relative;background:linear-gradient(180deg,#fff 0%,#F3F7FC 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 30px 60px -38px rgb(15 23 42 / .32);padding:clamp(10px, 2vw, 22px)}.scene{display:block;width:100%}.scene svg,.hero-scene svg{display:block;width:100%;height:auto}@media (max-width:899px){.hero-scene{width:100%;max-width:560px;margin-inline:auto}}@media (min-width:900px){.page-hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:var(--space-xl)}.page-hero--scene h1{font-size:clamp(2.2rem, 3.7vw, 3.3rem)}}.marquee{position:relative;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:6px 0 14px}.marquee-track{display:flex;width:max-content}.marquee-item{display:block;flex:0 0 auto;width:clamp(200px, 24vw, 280px);margin-right:var(--mq-gap,20px);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:#fff;scroll-snap-align:start;transition:transform 260ms var(--fd-ease)}.marquee-item:hover,.marquee-item:focus-visible{transform:translateY(-4px)}.marquee-item,.marquee-toggle{scroll-margin:calc(var(--fd-hh, 89px) + 16px) 0 24px}.marquee-item img{width:100%;height:auto;display:block}.marquee-toggle{display:none}html.js-motion .marquee.is-marquee{overflow:visible;padding:0;scroll-snap-type:none}html.js-motion .marquee.is-marquee .marquee-viewport{overflow:hidden;padding:10px 0 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}html.js-motion .marquee.is-marquee .marquee-track{animation:fd-marquee var(--mq-dur,60s) linear infinite}html.js-motion .marquee.is-marquee.is-reverse .marquee-track{animation-direction:reverse}html.js-motion .marquee.is-marquee.is-paused .marquee-track,html.js-motion .marquee.is-marquee.is-offscreen .marquee-track,html.js-motion.is-tab-hidden .marquee-track{animation-play-state:paused}@media (hover:hover) and (pointer:fine){html.js-motion .marquee.is-marquee .marquee-viewport:hover .marquee-track{animation-play-state:paused}}html.js-motion .marquee.is-marquee .marquee-viewport:has(:focus-visible) .marquee-track{animation:none;transform:translateX(max(6vw, 24px))}@keyframes fd-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}html.js-motion .marquee.is-marquee .marquee-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:6px max(var(--space-md), calc((100vw - var(--container, 1180px)) / 2 + var(--space-md))) 0 auto;border-radius:50%;border:1.5px solid var(--color-border-strong);background:#fff;color:var(--color-text);cursor:pointer;transition:transform 200ms var(--fd-ease),color 180ms ease,border-color 180ms ease}.marquee-toggle:hover{color:var(--color-accent-light);border-color:var(--color-accent)}.marquee-toggle:active{transform:scale(.94)}.marquee-toggle svg{width:18px;height:18px}.marquee-toggle .mq-i-play{display:none}.marquee.is-paused .marquee-toggle .mq-i-play{display:block}.marquee.is-paused .marquee-toggle .mq-i-pause{display:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal],[data-stagger]>*,[data-split] .fd-wi,[data-scene],[data-scene] *,[data-draw] *,.fd-path,.hero-badge,.float-chip,.marquee-track,.stats-band::before,.process-card::after,.step-list .step::after,.step-num,.hero-photo::before,.fd-burger .fd-bar,.main-nav li,.header-cta{animation:none!important;transition:none!important}.site-header::before,.site-header::after,.logo,.logo img,.nav-toggle,.nav-links,.header-cta,.nav-links>li>a::before,.btn,.btn .chip svg,.card,.portfolio-card,.portfolio-thumb img,.marquee-item,.field::after,.field>label,.filter-btn,.hero-tags a,.treatment-card .icon,.treatment-card::before,.footer-grid ul a,.service-card .card-link svg,.treatment-card h3 svg{transition:none!important}.btn:active,.filter-btn:active,.hero-tags a:active{transform:none}::view-transition-old(*),::view-transition-new(*),::view-transition-group(*){animation:none!important}.marquee{overflow-x:auto}}