.hero-grain{position:absolute;inset:0;pointer-events:none;opacity:.35;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;content-visibility:auto;will-change:transform}.hero-desc strong{color:#ffffffe6;font-weight:600}.hero-highlight{position:relative;color:var(--color-accent)}.hero-highlight:after{content:"";position:absolute;left:0;bottom:.05em;width:100%;height:.08em;background:var(--color-accent);opacity:.2;border-radius:1px;transform:scaleX(0);transform-origin:left;animation:highlightDraw .8s cubic-bezier(.16,1,.3,1) 1s forwards}.hero-highlight-muted{position:relative}.hero-highlight-muted:after{content:"";position:absolute;left:0;bottom:.05em;width:100%;height:.08em;background:#fff;opacity:.1;border-radius:1px;transform:scaleX(0);transform-origin:left;animation:highlightDraw .8s cubic-bezier(.16,1,.3,1) 1.2s forwards}@keyframes highlightDraw{to{transform:scaleX(1)}}.hero-svg-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:.25;padding:1.5rem;content-visibility:auto;will-change:transform}.hero-svg{width:100%;height:auto;max-width:340px;color:#fff}@media(min-width:1024px){.hero-svg-wrap{inset:unset;position:absolute;top:50%;right:max(calc((100% - 64rem)/2 + 1.5rem),2rem);transform:translateY(-50%);width:34%;max-width:400px;opacity:1;padding:0}.hero-svg{max-width:100%}}.hero-text{opacity:0;transform:translateY(16px);animation:heroTextIn .7s cubic-bezier(.16,1,.3,1) var(--d, 0s) forwards}.hero-text-lcp{transform:none}@keyframes heroTextIn{to{opacity:1;transform:translateY(0)}}@keyframes heroTextLcp{to{transform:translateY(0)}}.anim-stroke{stroke-dasharray:1;stroke-dashoffset:1;animation:animStroke 2s cubic-bezier(.22,1,.36,1) var(--d, 0s) forwards}@keyframes animStroke{to{stroke-dashoffset:0}}.anim-scale{opacity:0;transform:scale(0);transform-origin:center;transform-box:fill-box;animation:animScale .55s cubic-bezier(.34,1.56,.64,1) var(--d, 0s) forwards}@keyframes animScale{to{opacity:var(--fo, 1);transform:scale(1)}}.anim-slide{opacity:0;transform:translate(-8px);transform-box:fill-box;animation:animSlide .65s cubic-bezier(.16,1,.3,1) var(--d, 0s) forwards}@keyframes animSlide{to{opacity:var(--fo, 1);transform:translate(0)}}.anim-fade{opacity:0;animation:animFade .8s ease-out var(--d, 0s) forwards}@keyframes animFade{to{opacity:var(--fo, 1)}}.anim-float-wrap{animation:animFloat 5s ease-in-out 3.5s infinite}@keyframes animFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.anim-cursor{opacity:0;animation:animCursorIn .4s ease-out 2.8s forwards}.anim-cursor path{animation:animCursorDrift 5s ease-in-out 3.5s infinite alternate}@keyframes animCursorIn{to{opacity:.5}}@keyframes animCursorDrift{0%{transform:translate(0)}33%{transform:translate(18px,-12px)}66%{transform:translate(-8px,6px)}to{transform:translate(12px,-4px)}}.anim-spin{transform-origin:22px 286px;animation:animSpin 20s linear infinite}@keyframes animSpin{to{transform:rotate(360deg)}}.anim-pulse{transform-origin:440px 260px;animation:animPulse 3s ease-in-out infinite}@keyframes animPulse{0%,to{transform:scale(1);opacity:.15}50%{transform:scale(1.4);opacity:.25}}.hero-logo-bar{mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent);padding:1rem 0}.hero-logo-track{display:flex;width:max-content;animation:heroLogoScroll 35s linear infinite}.hero-logo-set{display:flex;align-items:center;gap:2rem;flex-shrink:0;padding-right:2rem}@media(min-width:640px){.hero-logo-set{gap:2.5rem;padding-right:2.5rem}}@keyframes heroLogoScroll{0%{transform:translate(0)}to{transform:translate(-16.667%)}}.project-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1) var(--delay, 0s),transform .7s cubic-bezier(.16,1,.3,1) var(--delay, 0s)}.project-reveal.is-visible{opacity:1;transform:translateY(0)}.sc-marquee-wrap{mask-image:linear-gradient(to right,transparent,black 4%,black 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 4%,black 96%,transparent);overflow:hidden}.sc-track{display:flex;width:max-content;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;perspective:1000px}.sc-track--ltr{animation:scScrollLtr 60s linear infinite}.sc-track--rtl{animation:scScrollRtl 60s linear infinite}.sc-track:hover{animation-play-state:paused}.sc-set{display:flex;align-items:flex-start;gap:1rem;flex-shrink:0;padding-right:1rem}.sc-item{flex-shrink:0;width:340px;contain:layout style paint}@media(max-width:640px){.sc-item{width:240px}.sc-set{gap:.75rem;padding-right:.75rem}}@keyframes scScrollLtr{0%{transform:translateZ(0)}to{transform:translate3d(-16.6667%,0,0)}}@keyframes scScrollRtl{0%{transform:translate3d(-16.6667%,0,0)}to{transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.sc-track--ltr,.sc-track--rtl{animation:none}}.process-line{width:0}.process-dot .process-dot-ring{transition:border-color .5s ease,background-color .5s ease,box-shadow .5s ease}.process-dot .process-dot-fill{transition:background-color .4s ease .1s}.process-dot .process-dot-pulse{transition:border-color .5s ease,transform .6s ease,opacity .6s ease}.process-dot.is-active .process-dot-ring{border-color:var(--color-accent);background-color:transparent;box-shadow:0 0 12px #e85d2a40}.process-dot.is-active .process-dot-fill{background-color:var(--color-accent)}.process-dot.is-active .process-dot-pulse{border-color:#e85d2a33;animation:dotPulse 2s ease-in-out infinite .6s}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:0}}.process-card{opacity:0;transform:translateY(20px);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1)}.process-card.is-visible{opacity:1;transform:translateY(0)}.process-line-mobile{height:0}.process-dot-mobile .process-dot-ring{transition:border-color .5s ease,background-color .5s ease,box-shadow .5s ease}.process-dot-mobile .process-dot-fill{transition:background-color .4s ease .1s}.process-dot-mobile .process-dot-pulse{transition:border-color .5s ease,transform .6s ease,opacity .6s ease}.process-dot-mobile.is-active .process-dot-ring{border-color:var(--color-accent);box-shadow:0 0 10px #e85d2a33}.process-dot-mobile.is-active .process-dot-fill{background-color:var(--color-accent)}.process-dot-mobile.is-active .process-dot-pulse{border-color:#e85d2a26;animation:dotPulse 2s ease-in-out infinite .6s}.process-card-mobile{opacity:0;transform:translate(-16px);transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1)}.process-card-mobile.is-visible{opacity:1;transform:translate(0)}.testimonial-quote .tq-char{display:inline;opacity:0;transition:opacity .12s ease}.testimonial-quote.is-animating .tq-char.is-visible{opacity:1}.testimonial-attribution{opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease}.testimonial-attribution.is-visible{opacity:1;transform:translateY(0)}
