@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2-variations")}:root{--blue:#0096ff;--blue-dark:#007bd4;--navy:#062033;--ink:#0b2536;--text:#294251;--muted:#687984;--white:#fff;--soft:#f4f7f8;--blue-soft:#eaf6ff;--line:#e1e8eb;--content-max:1240px;--page-gutter:clamp(22px, 4.5vw, 64px);--section-space:clamp(72px, 8vw, 108px);--radius:18px;--radius-pill:999px;--header-height:82px;--anchor-offset:calc(var(--header-height) + 24px);--shadow-soft:0 16px 45px #06203317}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--anchor-offset);background:var(--navy)}body{min-width:320px;color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Manrope Variable,Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(1rem,.97rem + .12vw,1.06rem);line-height:1.65;overflow-x:clip}body.menu-open{overflow:hidden}button,a{font:inherit}a{color:inherit;text-decoration:none}img,picture{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy);text-wrap:balance;line-height:1.12}p{text-wrap:pretty}::selection{color:var(--navy);background:#b5e2ff}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.skip-link{z-index:1000;color:var(--navy);background:var(--white);border-radius:var(--radius-pill);box-shadow:var(--shadow-soft);padding:11px 17px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(100%, calc(var(--content-max) + (var(--page-gutter) * 2)));padding-inline:var(--page-gutter);margin-inline:auto}.section{padding-block:var(--section-space)}.centered-heading{margin-inline:auto;text-align:center;width:min(100%,680px);margin-bottom:clamp(42px,5vw,64px)}.centered-heading h2,.service-area-content h2,.contact-content h2{letter-spacing:-.045em;margin-bottom:16px;font-size:clamp(2.15rem,4.1vw,3.7rem);font-weight:750}.centered-heading p,.service-area-content p,.contact-content p{color:var(--muted);margin-bottom:0;font-size:clamp(1rem,1.3vw,1.15rem)}.button{border-radius:var(--radius-pill);border:1px solid #0000;justify-content:center;align-items:center;min-height:50px;padding:12px 24px;font-weight:700;line-height:1.2;transition:color .18s,background-color .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:var(--white);background:var(--blue)}.button-primary:hover{background:var(--blue-dark)}.button-secondary{color:var(--white);background:#ffffff1a;border-color:#ffffffb3}.button-secondary:hover{color:var(--navy);background:var(--white);border-color:var(--white)}.button-small{min-height:44px;padding-inline:20px;font-size:.94rem}.site-header{z-index:100;height:var(--header-height);border-bottom:1px solid var(--line);background:#fffffff7;transition:box-shadow .18s;position:sticky;top:0}.site-header.is-scrolled{box-shadow:0 9px 30px #06203314}.header-inner{align-items:center;gap:clamp(22px,3vw,46px);height:100%;display:flex}.brand-link{flex:none;align-items:center;display:inline-flex}.brand-link img{filter:brightness(0);width:clamp(212px,18vw,258px);height:auto}.desktop-nav{margin-left:auto}.desktop-nav ul{align-items:center;gap:clamp(22px,2.4vw,36px);display:flex}.desktop-nav a{color:#2f4654;padding-block:10px;font-size:.95rem;font-weight:650;display:block;position:relative}.desktop-nav a:after{background:var(--blue);content:"";transform-origin:50%;height:2px;transition:transform .18s;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.is-active:after{transform:scaleX(1)}.header-actions{align-items:center;gap:18px;display:flex}.header-phone{color:var(--navy);align-items:center;gap:8px;font-size:.92rem;font-weight:700;display:inline-flex}.header-phone svg,.mobile-call svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px}.mobile-call,.menu-toggle,.mobile-navigation{display:none}.hero{min-height:clamp(570px,73vh,760px);color:var(--white);isolation:isolate;position:relative;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media picture{width:100%;height:100%}.hero-media img{object-fit:cover;object-position:center 54%;width:100%;height:100%}.hero-shade{z-index:1;background:linear-gradient(#03162347 0%,#0316236b 100%),linear-gradient(90deg,#03162333 0%,#0000 55%,#0316231f 100%)}.hero-content{z-index:2;min-height:inherit;place-items:center;padding-block:72px;display:grid;position:relative}.hero-copy{text-align:center;width:min(100%,960px)}.hero h1{color:var(--white);letter-spacing:-.055em;white-space:nowrap;margin-bottom:22px;font-size:clamp(3rem,5.4vw,5.25rem);font-weight:760}.hero-intro{color:#ffffffeb;width:min(100%,680px);margin:0 auto 34px;font-size:clamp(1.08rem,1.65vw,1.32rem);line-height:1.55}.hero-actions{flex-wrap:wrap;justify-content:center;gap:13px;display:flex}.services-section{background:var(--white)}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,4vw,54px);display:grid}.service-item{text-align:center;padding:clamp(6px,1vw,12px)}.service-icon{aspect-ratio:1;width:clamp(76px,6.5vw,90px);color:var(--blue-dark);background:var(--blue-soft);border-radius:50%;place-items:center;margin:0 auto 22px;display:grid;box-shadow:inset 0 0 0 1px #0620330a}.service-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.1px;width:58%;height:58%;overflow:visible}.service-orange .service-icon{color:#df6d25;background:#fff0e7}.service-green .service-icon{color:#317c52;background:#e9f6ee}.service-item h3{letter-spacing:-.025em;margin-bottom:13px;font-size:clamp(1.28rem,1.75vw,1.55rem);font-weight:730}.service-item p{color:var(--muted);margin:0}.services-note{color:#526875;text-align:center;margin:clamp(42px,5vw,62px) auto 0}.projects-section{background:var(--soft)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.5vw,34px);display:grid}.project-image{aspect-ratio:4/3;border-radius:var(--radius);box-shadow:var(--shadow-soft);background:#dce4e7;overflow:hidden}.project-image picture,.project-image img{width:100%;height:100%}.project-image img{object-fit:cover}.project-meta{padding:20px 4px 0}.project-meta h3{letter-spacing:-.02em;margin-bottom:5px;font-size:clamp(1.18rem,1.5vw,1.42rem);font-weight:720}.project-meta p{color:var(--muted);margin:0;font-size:.96rem}.process-section{background:var(--white)}.process-heading{margin-bottom:clamp(38px,4vw,54px)}.process-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(30px,5vw,72px);display:grid}.process-step{text-align:center}.process-number{color:var(--blue);letter-spacing:.14em;margin-bottom:17px;font-size:.86rem;font-weight:800;display:block}.process-step h3{margin-bottom:10px;font-size:clamp(1.35rem,1.8vw,1.6rem);font-weight:740}.process-step p{color:var(--muted);margin:0 auto}.service-area-section{background:var(--blue-soft);padding-block:clamp(46px,5vw,66px)}.service-area-content{grid-template-columns:minmax(0,1.45fr) minmax(250px,.75fr);align-items:center;gap:clamp(30px,6vw,90px);display:grid}.service-area-content h2{margin-bottom:11px;font-size:clamp(1.9rem,3.1vw,2.8rem)}.service-area-note{padding-left:clamp(0px,2vw,24px);font-weight:650;color:#39596c!important}.contact-section{min-height:clamp(390px,42vw,500px);color:var(--white);background:var(--blue);isolation:isolate;position:relative;overflow:hidden}.contact-mark{z-index:-1;color:#ffffff21;letter-spacing:-.12em;user-select:none;white-space:nowrap;font-size:clamp(13rem,36vw,34rem);font-weight:800;line-height:.72;position:absolute;top:50%;left:50%;transform:translate(-52%,-46%)}.contact-content{min-height:inherit;text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:900px;padding-block:72px;display:flex}.contact-content h2{color:var(--white);margin-bottom:17px;font-size:clamp(2.55rem,5vw,4.8rem)}.contact-content p{color:#ffffffe6;margin-bottom:31px}.contact-actions{flex-wrap:wrap;justify-content:center;gap:13px;display:flex}.contact-button{color:var(--blue-dark);background:var(--white)}.contact-button:hover{color:var(--navy);background:#f0f8ff}.contact-button-secondary{color:var(--white);background:0 0;border-color:#ffffffc7}.contact-button-secondary:hover{color:var(--blue-dark);background:var(--white)}.site-footer{color:#ffffffc2;background:var(--navy);padding-block:clamp(58px,6vw,82px) 28px}.footer-main{border-bottom:1px solid #ffffff1f;grid-template-columns:1fr auto;align-items:start;gap:46px;padding-bottom:42px;display:grid}.footer-brand img{width:clamp(220px,24vw,310px);height:auto}.footer-brand p{color:#ffffffad;margin:18px 0 0}.footer-connect{justify-items:end;gap:9px;display:grid}.footer-connect a{color:var(--white);font-weight:650}.footer-connect a:hover,.footer-nav a:hover{color:#7dcaff}.footer-bottom{grid-template-columns:auto 1fr;align-items:start;gap:36px 70px;padding-top:30px;display:grid}.footer-nav ul{flex-wrap:wrap;gap:12px 26px;display:flex}.footer-nav a{color:#ffffffe0;font-size:.93rem;font-weight:650}.footer-meta{text-align:right;justify-self:end}.footer-meta p{margin-bottom:5px;font-size:.82rem;line-height:1.5}.reveal-enabled [data-reveal]{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(12px)}.reveal-enabled [data-reveal].is-visible{opacity:1;transform:none}@media (width<=1060px){.header-phone{display:none}.project-grid{gap:22px}}@media (width<=899px){:root{--header-height:76px}.desktop-nav,.header-actions{display:none}.brand-link img{width:clamp(178px,32vw,224px)}.mobile-call,.menu-toggle{display:inline-flex}.mobile-call{width:42px;height:42px;color:var(--navy);border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;margin-left:auto}.menu-toggle{width:44px;height:44px;color:var(--navy);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:0}.menu-toggle span{background:currentColor;width:23px;height:2px;transition:transform .18s,opacity .18s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px)rotate(-45deg)}.mobile-navigation{top:var(--header-height);padding:34px var(--page-gutter) 48px;background:var(--white);border-top:1px solid var(--line);display:block;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.mobile-navigation[hidden]{display:none}.mobile-navigation nav{width:min(100%,560px);margin-inline:auto}.mobile-navigation li+li{border-top:1px solid var(--line)}.mobile-navigation li a{color:var(--navy);letter-spacing:-.025em;padding-block:19px;font-size:clamp(1.45rem,4.4vw,2rem);font-weight:720;display:block}.mobile-menu-phone{background:var(--soft);border-radius:14px;gap:2px;margin:30px 0 18px;padding:18px 20px;display:grid}.mobile-menu-phone span{color:var(--muted);font-size:.82rem}.mobile-menu-phone strong{color:var(--navy)}.mobile-quote{width:100%}.hero{min-height:650px}.project-grid{grid-template-columns:1fr;gap:42px}.project-card{width:min(100%,680px);margin-inline:auto}.service-area-content{text-align:center;grid-template-columns:1fr;gap:18px}.service-area-note{padding-left:0}.footer-bottom{grid-template-columns:1fr}.footer-meta{text-align:left;justify-self:start}}@media (width<=679px){:root{--header-height:72px;--page-gutter:20px;--section-space:72px}.header-inner{gap:10px}.brand-link img{width:min(49vw,184px)}.mobile-call{width:40px;height:40px}.hero{min-height:610px}.hero-media img{object-position:55% center}.hero-content{padding-block:60px}.hero h1{font-size:clamp(1.9rem,9.5vw,3.8rem)}.hero-actions{width:min(100%,320px);margin-inline:auto}.hero-actions .button{width:100%}.services-grid,.process-steps{grid-template-columns:1fr;gap:40px}.service-item{width:min(100%,430px);margin-inline:auto}.process-step{width:min(100%,410px);margin-inline:auto}.contact-actions{width:min(100%,330px)}.contact-button{width:100%}.footer-main{grid-template-columns:1fr;gap:32px}.footer-connect{justify-items:start}.footer-nav ul{gap:10px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-enabled [data-reveal]{opacity:1;transform:none}}
