@font-face{font-family:Manrope Variable;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2")}*{box-sizing:border-box}:root{font-family:Manrope Variable,system-ui,sans-serif;color:#132c43;background:#fff;--navy:#0d2339;--deep:#081b2c;--aqua:#66e5d4;--teal:#007568;--muted:#486176;--line:#dce6eb}body{margin:0}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto;object-fit:cover}svg{width:1.15em;height:1.15em;flex:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.65}p{line-height:1.65;margin:0 0 1em}h1,h2,h3{margin:0;line-height:1.08}h2{font-size:clamp(2.15rem,4.3vw,3.75rem);letter-spacing:-.057em;margin-bottom:1rem}h3{font-size:1.26rem;letter-spacing:-.025em}figure{margin:0}html{scroll-behavior:smooth}section[id]{scroll-margin-top:1.2rem}:focus-visible{outline:3px solid #008879;outline-offset:4px}.skip{position:absolute;top:10px;left:10px;z-index:5;background:#fff;color:var(--navy);padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}.wrap{width:min(1180px,calc(100% - 72px));margin-inline:auto}.section{padding-block:clamp(3.8rem,8vw,7.5rem)}.header{background:var(--deep);color:#fff}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:1.36rem;font-weight:850;line-height:1;letter-spacing:-.045em}.brand small{display:block;font-size:.57rem;letter-spacing:.17em;margin-top:5px}.brand-icon{width:40px;height:40px;border:1px solid #3e6874;border-radius:12px;color:var(--aqua);display:grid;place-items:center}.brand-icon svg{width:24px;height:24px}nav{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem);font-size:.88rem;font-weight:750}nav>a:not(.button):hover,.textlink:hover,footer a:hover{text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none;color:#fff;border:1px solid #7296a5;background:transparent;border-radius:8px;padding:10px 16px;min-height:44px}.button{display:inline-flex;align-items:center;justify-content:center;gap:.65em;padding:13px 17px;min-height:47px;border:1px solid transparent;border-radius:8px;background:var(--aqua);color:#092e33;font-weight:850;text-align:center;transition:background .2s,transform .2s}.button:hover{background:#a5f8ec;transform:translateY(-2px)}.nav-cta{min-height:43px;padding-block:10px}.hero{color:#fff;background:radial-gradient(ellipse at 88% 100%,#1b5363 0%,transparent 56%),var(--navy);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr .97fr;align-items:center;gap:clamp(1.5rem,4vw,4rem);padding-block:clamp(3rem,6.5vw,6.8rem)}.hero-copy{animation:rise .55s ease-out both}.eyebrow{display:flex;align-items:center;gap:.65em;color:var(--teal);font-size:.76rem;font-weight:850;letter-spacing:.135em;margin-bottom:1rem}.eyebrow span{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}.hero .eyebrow,.callout .eyebrow{color:var(--aqua)}h1{font-size:clamp(2.65rem,5.7vw,5.35rem);letter-spacing:-.068em;line-height:1.01;font-weight:850}h1 em{font-style:normal;color:var(--aqua)}.intro{max-width:47ch;color:#d2e0e8;font-size:clamp(1rem,1.55vw,1.15rem);margin:1.4rem 0 1.9rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.35rem}.textlink{display:inline-flex;min-height:44px;align-items:center;gap:.5rem;font-weight:750;font-size:.93rem}.textlink span{color:var(--aqua)}.hero-photo{position:relative;animation:rise .7s .1s ease-out both}.hero-photo img{aspect-ratio:1.12;border-radius:22px;object-position:54% center}.hero-photo figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:12px 15px;background:#092339f2;border-radius:10px;font-size:.85rem;color:#e5f4f6;display:flex;align-items:center;gap:.6em}.hero-photo svg{color:var(--aqua)}.process{background:#eef8f8;border-bottom:1px solid #daeaea}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);padding-block:1.25rem}.process-grid>div{display:flex;align-items:center;justify-content:center;gap:.8rem;font-weight:800;text-align:center}.process-grid>div+div{border-left:1px solid #cfdfdf}.process-grid span{font-size:.75rem;letter-spacing:.08em;color:var(--teal)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,2vw,1.5rem);margin-top:2rem}.service{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1rem,2.6vw,2rem);border:1px solid var(--line);border-radius:15px;transition:border-color .2s,box-shadow .2s}.service:hover{border-color:#77c4bb;box-shadow:0 10px 30px #1634500d}.service-icon{background:#e0f7f3;color:var(--teal);display:grid;place-items:center;width:52px;height:52px;border-radius:12px;margin-bottom:1.2rem}.service-icon svg{width:25px;height:25px}.service p,.projects>div>p:not(.eyebrow),.estimate p{color:var(--muted)}.service p{margin:.7rem 0 1rem}.service a{margin-top:auto;color:var(--teal);font-size:.86rem;font-weight:850;display:inline-flex;align-items:center;gap:.4em;min-height:44px}.service a:hover{text-decoration:underline}.projects{background:#f3f7fa}.project{background:#fff;border-radius:14px;overflow:hidden}.project img{aspect-ratio:1.43;transition:transform .4s}.project:hover img{transform:scale(1.025)}.project figcaption{padding:1rem 1.15rem 1.4rem}.project figcaption p{color:var(--teal);font-size:.76rem;font-weight:850;letter-spacing:.035em;margin-bottom:.5rem}.project figcaption span{color:var(--muted)}.callout{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.4rem,5vw,4rem);border-radius:18px;background:var(--navy);color:#fff}.callout p:last-child{max-width:58ch;color:#d1e1e9;margin-bottom:0}.callout .button{flex:none}.faq,.estimate-grid{display:grid;grid-template-columns:.85fr 1fr;gap:clamp(1rem,6vw,5rem)}.faq{padding-bottom:clamp(3.8rem,8vw,7.5rem)}details{border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-weight:800;min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0}summary::-webkit-details-marker{display:none}summary span:before{content:"+";font-size:1.4rem;color:var(--teal)}details[open] summary span:before{content:"−"}details p{color:var(--muted);padding-right:1rem}.estimate{background:#eaf5f7}.estimate form{display:grid;gap:.55rem;padding:clamp(1.15rem,3vw,2rem);background:#fff;border:1px solid var(--line);border-radius:15px}label{font-weight:800;font-size:.94rem}select,textarea{width:100%;border:1px solid #8296a3;border-radius:8px;padding:.75rem;color:var(--navy);background:#fff;margin-bottom:.65rem}textarea{resize:vertical}.estimate button{justify-self:start}.confirmation{padding:.85rem;margin:.5rem 0 0;background:#e3f7f3;border-radius:8px}footer{background:var(--deep);color:#deebf2;padding-block:1.5rem}.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.25rem}.foot p{margin:0;font-size:.84rem}.foot p a{text-decoration:underline}.foot>a:last-child{font-size:.85rem}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:850px){.wrap{width:calc(100% - 40px)}.nav{position:relative;min-height:68px}.menu-toggle{display:block}nav{display:none}nav.open{position:absolute;z-index:3;top:100%;left:0;right:0;display:grid;gap:.15rem;padding:.7rem;background:var(--deep);border:1px solid #527181;border-radius:0 0 12px 12px;box-shadow:0 12px 30px #081b2c55}nav a:not(.button){padding:.8rem;min-height:44px}.hero-grid{gap:1.6rem}.callout{align-items:flex-start;flex-direction:column}}@media(max-width:630px){.hero-grid,.faq,.estimate-grid,.cards{grid-template-columns:1fr}.hero-photo img{aspect-ratio:1.38}.hero-grid{padding-block:2.55rem}.process-grid{padding-block:.9rem}.process-grid>div{flex-direction:column;gap:.25rem;font-size:.75rem;padding-inline:.35rem}.desktop{display:none}.cards{margin-top:1.4rem}.project img{aspect-ratio:1.63}.foot{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
