.hero-backdrop{contain:layout paint}.hero-grid-surface{background-image:linear-gradient(to right,hsl(var(--surface-grid-strong) / .15) 1px,transparent 1px),linear-gradient(to bottom,hsl(var(--surface-grid-strong) / .15) 1px,transparent 1px),radial-gradient(circle,hsl(var(--surface-grid-strong) / .24) 1px,transparent 1.5px);background-size:100px 100px;background-position:0 0,0 0,50px 50px}.hero-parallax-plane{transition:transform .18s ease-out}.hero-pointer-light{position:absolute;width:420px;height:420px;left:calc(50% - 210px);top:calc(32% - 210px);background:radial-gradient(circle,hsl(var(--primary) / .13),hsl(var(--accent) / .05) 35%,transparent 70%);transition:transform .18s ease-out}.hero-backdrop .hero-symbol-block{animation-name:light-symbol-wave}@keyframes light-symbol-wave{0%,to{opacity:0;transform:translate(-50%,-50%)}30%,65%{opacity:.5;transform:translate(-50%,-50%) translateY(-4px)}}.interactive-hero.section-ambient:after{content:none}@media (max-width: 767px),(pointer: coarse){.hero-pointer-light{display:none}.hero-backdrop .hero-energy-ring,.hero-backdrop .hero-symbol-block{animation:none}.hero-backdrop .hero-symbol-block{opacity:.25}}.interactive-hero{min-height:calc(100svh - 82px);display:flex;flex-direction:column}.hero-content{flex:1;display:grid;align-items:center;padding-block:clamp(2rem,5svh,4rem)}.interactive-hero>.trust-belt{flex-shrink:0}@media (min-width: 640px){.interactive-hero{min-height:calc(100svh - 86px)}}@media (min-width: 1024px){.hero-content{padding-block:clamp(1.5rem,4svh,3.5rem)}}@media (min-width: 1024px) and (max-height: 800px){.hero-content{padding-block:20px}.landing-hero-title{font-size:clamp(2.6rem,4.3vw,4.2rem)}}.project-section{background:hsl(var(--secondary) / .45);border-block:1px solid hsl(var(--border) / .6)}.project-card{display:block;overflow:hidden;min-width:0;border:1px solid hsl(var(--border) / .8);border-radius:20px;background:hsl(var(--card));box-shadow:0 8px 30px -20px hsl(var(--foreground) / .2);transition:box-shadow .2s,border-color .2s}.project-card:hover{border-color:hsl(var(--primary) / .4);box-shadow:0 18px 45px -25px hsl(var(--primary) / .25)}.project-preview{height:290px;overflow:hidden;border-bottom:1px solid hsl(var(--border) / .5);background:hsl(var(--muted))}.project-preview img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;transition:transform .3s ease}.project-card:hover .project-preview img{transform:scale(1.015)}.project-heading{max-width:72rem;margin:0 auto 3rem;text-align:center}.project-heading-copy{max-width:48rem;margin:1.25rem auto 0;color:hsl(var(--muted-foreground));font-size:1rem;line-height:1.7}.project-disclosure{margin-top:1rem;font-size:.75rem;line-height:1.6}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.5rem;max-width:72rem;margin:0 auto}.project-copy{min-width:0;padding:1.75rem}.project-kicker{display:flex;gap:.8rem;align-items:baseline;color:hsl(var(--muted-foreground));font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase}.project-copy h3{margin-top:1rem;font-size:1.875rem;font-weight:600;letter-spacing:-.04em}.project-description{margin-top:.75rem;font-size:.875rem;line-height:1.7;color:hsl(var(--muted-foreground))}.project-details{margin-top:1.25rem;border-top:1px solid hsl(var(--border));padding-top:1rem}.project-features{margin-top:.75rem;display:grid;gap:.65rem;list-style:disc;padding-left:1rem}.project-card.motion-reveal{transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1),border-color .2s,box-shadow .2s}.project-card.motion-reveal.reveal-priming{transition:none}.project-card.motion-reveal:focus-within{opacity:1;transform:none}@media (max-width: 767px){.project-heading{margin-bottom:2rem}.project-list{grid-template-columns:1fr}.project-preview{height:253px}.project-copy{padding:1.25rem}}.project-card{position:relative;isolation:isolate}.project-card>:not(.ripple){position:relative;z-index:1}#faq .section-title{text-wrap:balance}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;max-width:72rem;margin:0 auto 3rem}.services-heading>p{max-width:28rem;color:hsl(var(--muted-foreground));font-size:1rem;line-height:1.7;text-wrap:pretty}.service-list{max-width:72rem;margin:0 auto;border-bottom:1px solid hsl(var(--border))}.service-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;align-items:start;gap:2.5rem;border-top:1px solid hsl(var(--border));padding-block:2.25rem}.service-row h3{max-width:13ch;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:600;line-height:1.2;letter-spacing:-.035em;text-wrap:balance}.service-copy{font-size:1rem;line-height:1.65;text-wrap:pretty}.service-copy p+p{margin-top:.75rem;font-size:.875rem;color:hsl(var(--muted-foreground))}.service-link{display:inline-flex;align-items:center;gap:.6rem;padding-block:.3rem;font-size:.875rem;font-weight:500;color:hsl(var(--primary))}.service-link svg{flex-shrink:0;transition:transform .2s}.service-link:hover svg{transform:translate(2px,-2px)}@media (max-width: 1023px){.service-row{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:1.25rem 2rem}.service-link{grid-column:2}}@media (max-width: 639px){.services-heading{display:block;margin-bottom:2rem}.services-heading>p{margin-top:1.25rem}.service-row{grid-template-columns:1fr;gap:1rem;padding-block:1.75rem}.service-row h3{max-width:none}.service-link{grid-column:auto}}.workflow-panel{border:1px solid hsl(var(--border));border-radius:24px;background:hsl(var(--card));box-shadow:0 20px 44px -24px #13142633;overflow:hidden}.workflow-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 0}.workflow-play{display:grid;place-items:center;width:32px;height:32px;color:hsl(var(--muted-foreground));border-radius:50%}.workflow-play:hover{background:hsl(var(--primary) / .08);color:hsl(var(--primary))}.workflow-map{position:relative;aspect-ratio:600 / 350;margin:0 16px;color:hsl(var(--primary));background:radial-gradient(ellipse at 50% 45%,hsl(var(--primary) / .08),transparent 70%)}.workflow-map>svg{width:100%;height:100%}.workflow-line{stroke-dasharray:1;stroke-dashoffset:var(--route);transition:stroke-dashoffset 1.8s cubic-bezier(.37,0,.2,1)}.workflow-paper{fill:hsl(var(--card));stroke:hsl(var(--primary) / .4)}.workflow-object{opacity:.2;transform:translateY(7px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1)}.workflow-object[data-ready=true]{opacity:1;transform:none}.workflow-detail{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1s .28s ease}.workflow-object[data-ready=true] .workflow-detail{stroke-dashoffset:0}.workflow-stop{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;color:hsl(var(--muted-foreground))}.workflow-stop>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid hsl(var(--border));border-radius:50%;background:hsl(var(--card));font:10px monospace;transition:.32s}.workflow-stop strong{position:absolute;top:41px;font-size:.875rem;font-weight:500;white-space:nowrap}.workflow-stop[data-ready=true]>span{border-color:hsl(var(--primary));color:hsl(var(--primary))}.workflow-stop[data-active=true]>span{background:hsl(var(--primary));color:#fff;box-shadow:0 0 0 6px hsl(var(--primary) / .09)}.workflow-stop[data-active=true] strong{color:hsl(var(--foreground))}.workflow-stop:hover strong,.workflow-stop:focus-visible strong{color:hsl(var(--primary))}.workflow-stop:focus-visible{box-shadow:none}.workflow-stop:focus-visible strong{text-decoration:underline;text-underline-offset:4px}.workflow-captions{display:grid;border-top:1px solid hsl(var(--border) / .6)}.workflow-copy{grid-area:1 / 1;padding:24px 28px;opacity:0;transform:translateY(6px);visibility:hidden;transition:opacity .24s,transform .24s,visibility 0s .24s}.workflow-copy[data-active=true]{opacity:1;transform:none;visibility:visible;transition-duration:.48s,.48s,0s;transition-delay:.24s,.24s,0s}.workflow-copy h2{margin-top:.6rem;font-size:1.375rem;font-weight:600;letter-spacing:-.025em;line-height:1.3;text-wrap:balance}.workflow-copy>p{margin-top:.65rem;color:hsl(var(--muted-foreground));font-size:.875rem;line-height:1.65;text-wrap:pretty}@media (max-width: 639px){.workflow-header{padding:16px 20px 0}.workflow-map{margin:12px 6px 24px}.workflow-stop>span{width:25px;height:25px}.workflow-stop strong{top:32px;font-size:.75rem}.workflow-copy{padding:20px}.workflow-copy h2{font-size:1.25rem}}
