html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}@media (width>=960px) and (height>=700px){html:has(#home):not(.lenis){scroll-snap-type:y mandatory}html:not(.lenis) body>footer,html:not(.lenis) .hero[data-astro-cid-jgctki6q]{scroll-snap-align:end}html:not(.lenis) .services[data-astro-cid-jgctki6q],html:not(.lenis) .top-projects[data-astro-cid-jgctki6q]{scroll-snap-align:start}}html.lenis{scroll-behavior:auto!important}.hero[data-astro-cid-jgctki6q]{min-height:calc(100svh - var(--header-height));box-sizing:border-box;text-align:center;padding:var(--space-12) max(var(--space-6), calc((100% - 1200px) / 2 + var(--space-6)));color:#fff;background:linear-gradient(#0000008c,#0000008c),url(/qfs0ToWSyVE1SiI8pYmz.webp) 50%/cover no-repeat;flex-direction:column;justify-content:center;align-items:center;display:flex}.eyebrow[data-astro-cid-jgctki6q]{margin:0 0 var(--space-2);font-size:var(--fs-base);letter-spacing:.2em;text-transform:uppercase;font-weight:500}h1[data-astro-cid-jgctki6q].head{margin:0 0 var(--space-4);font-size:var(--fs-display);letter-spacing:.02em;font-weight:700;line-height:1.1}p[data-astro-cid-jgctki6q].content{margin:0 auto var(--space-8);text-shadow:0 1px 2px #0006;max-width:38ch;font-size:clamp(1.125rem,2.5vw,1.5rem);line-height:1.5}.services[data-astro-cid-jgctki6q],.top-projects[data-astro-cid-jgctki6q]{box-sizing:border-box;flex-direction:column;display:flex}.section-title[data-astro-cid-jgctki6q]{align-items:center;gap:var(--space-4);padding-top:0;display:flex}.section-title[data-astro-cid-jgctki6q]:before{flex:none;position:static}.services[data-astro-cid-jgctki6q]{gap:var(--space-8);margin-bottom:var(--space-12)}@media (width>=768px){.services[data-astro-cid-jgctki6q]{margin-bottom:var(--space-16)}}@media (width>=960px){.services[data-astro-cid-jgctki6q],.top-projects[data-astro-cid-jgctki6q]{min-height:calc(100svh - var(--header-height));justify-content:center}.services[data-astro-cid-jgctki6q]{align-items:center;gap:var(--space-12);flex-direction:row;margin-bottom:0}.services-intro[data-astro-cid-jgctki6q]{flex:5}.service-flow[data-astro-cid-jgctki6q]{flex:6}}.services-intro[data-astro-cid-jgctki6q]{max-width:60ch}.services-sub[data-astro-cid-jgctki6q]{margin:0 0 var(--space-3);font-size:var(--fs-h3);color:var(--color-brand-dark);font-weight:700}.lead[data-astro-cid-jgctki6q]{margin:0 0 var(--space-4);font-size:var(--fs-lg);line-height:1.6}.service-list-label[data-astro-cid-jgctki6q]{margin:0 0 var(--space-4);font-size:var(--fs-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.service-list[data-astro-cid-jgctki6q]{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid;position:relative}.service-list[data-astro-cid-jgctki6q]:before{content:"";background:var(--color-border-soft);width:2px;position:absolute;top:36px;bottom:0;left:39px}.service-item[data-astro-cid-jgctki6q]{padding:var(--space-4);box-sizing:border-box;background:var(--color-surface);box-shadow:var(--shadow-card);border-left:4px solid var(--color-brand);grid-template-columns:1fr;align-items:start;display:grid;position:relative}.service-item[data-astro-cid-jgctki6q] svg[data-astro-cid-jgctki6q]{top:var(--space-4);right:var(--space-4);fill:none;width:28px;height:28px;stroke:var(--color-brand);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;position:absolute}.service-body[data-astro-cid-jgctki6q] h3[data-astro-cid-jgctki6q]{margin:0 0 var(--space-1);font-size:var(--fs-h3);line-height:var(--lh-heading);padding-right:40px}.service-body[data-astro-cid-jgctki6q] p[data-astro-cid-jgctki6q]{max-width:52ch;font-size:var(--fs-base);line-height:var(--lh-body);color:var(--color-text-muted);margin:0}@media (width>=768px){.service-list[data-astro-cid-jgctki6q]{gap:var(--space-6);max-width:640px}.service-list[data-astro-cid-jgctki6q]:before{top:44px;left:47px}.service-item[data-astro-cid-jgctki6q]{padding:var(--space-6)}.service-item[data-astro-cid-jgctki6q] svg[data-astro-cid-jgctki6q]{top:var(--space-6);right:var(--space-6);width:32px;height:32px}.service-body[data-astro-cid-jgctki6q] h3[data-astro-cid-jgctki6q]{padding-right:48px}}@media (width>=960px){.service-list[data-astro-cid-jgctki6q]{max-width:none}}.top-projects[data-astro-cid-jgctki6q]{gap:var(--space-6);flex-direction:column;display:flex}.projects-head[data-astro-cid-jgctki6q]{align-items:center;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.projects-head[data-astro-cid-jgctki6q] .section-title[data-astro-cid-jgctki6q]{margin:0}.all-link[data-astro-cid-jgctki6q]:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.all-link[data-astro-cid-jgctki6q]{align-items:center;gap:var(--space-2);min-height:44px;color:var(--color-brand);font-weight:700;text-decoration:none;display:inline-flex}.all-link[data-astro-cid-jgctki6q]:hover{text-underline-offset:3px;text-decoration:underline}.mosaic[data-astro-cid-jgctki6q]{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mosaic[data-astro-cid-jgctki6q]>:first-child{grid-column:1/-1}@media (width<=479px){.mosaic[data-astro-cid-jgctki6q]{grid-template-columns:1fr}}.cta-band[data-astro-cid-jgctki6q]{gap:var(--space-4);padding:var(--space-6);background:var(--color-brand);color:#fff;flex-direction:column;display:flex}.cta-title[data-astro-cid-jgctki6q]{font-size:var(--fs-h3);margin:0;font-weight:700}.cta-text[data-astro-cid-jgctki6q]{margin:var(--space-1) 0 0;color:#ffffffe0}.cta-band[data-astro-cid-jgctki6q] .btn[data-astro-cid-jgctki6q]{flex:none}.cta-band[data-astro-cid-jgctki6q] .btn[data-astro-cid-jgctki6q]:focus-visible{outline-color:#fff}@media (width>=768px){.all-link[data-astro-cid-jgctki6q]{margin-left:auto}.cta-band[data-astro-cid-jgctki6q]{padding:var(--space-4) var(--space-6);flex-direction:row;justify-content:space-between;align-items:center}}@media (width>=960px){.top-projects[data-astro-cid-jgctki6q]{justify-content:center;padding-block:clamp(24px,4vh,48px)}.mosaic[data-astro-cid-jgctki6q]{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1.2fr 1fr 1fr;height:clamp(300px,48vh,460px)}.mosaic[data-astro-cid-jgctki6q]>:first-child{grid-area:1/auto/span 2}}@media (width>=960px) and (height<=780px){.cta-band[data-astro-cid-jgctki6q]{display:none}}.projects-empty[data-astro-cid-jgctki6q]{padding:var(--space-8) var(--space-6);text-align:center}.projects-empty[data-astro-cid-jgctki6q] h3[data-astro-cid-jgctki6q]{margin:0 0 var(--space-2);font-size:var(--fs-h3)}.projects-empty[data-astro-cid-jgctki6q] p[data-astro-cid-jgctki6q]{max-width:45ch;color:var(--color-text-muted);margin:0 auto}@media (width>=960px) and (height>=700px){.services[data-astro-cid-jgctki6q],.top-projects[data-astro-cid-jgctki6q]{padding-inline:max(0px,70px + -1*max(0px,50vw - 600px))}}.section-dots[data-astro-cid-jgctki6q]{z-index:20;flex-direction:column;gap:4px;display:none;position:fixed;top:50%;right:14px;transform:translateY(-50%)}@media (width>=960px) and (height>=700px){.section-dots[data-astro-cid-jgctki6q]{display:flex}}.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q]{justify-content:center;align-items:center;width:44px;height:44px;display:flex}.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q]:before{content:"";box-sizing:border-box;border:2px solid var(--color-brand);background:#ffffffe6;border-radius:6px;width:12px;height:12px;transition:height .25s cubic-bezier(.4,0,.2,1),background-color .25s,box-shadow .25s,transform .2s}.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q]:hover:before{transform:scale(1.25)}.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q][aria-current=location]:before{background:var(--color-brand);height:28px;transform:none;box-shadow:0 0 0 2px #ffffffe6}@media (prefers-reduced-motion:reduce){.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q]:before{transition:none}}.section-dots[data-astro-cid-jgctki6q] a[data-astro-cid-jgctki6q]:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:8px}
