@font-face{font-family:Outfit;src:url("/assets/outfit-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Outfit;src:url("/assets/outfit-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Outfit;src:url("/assets/outfit-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Outfit;src:url("/assets/outfit-700.woff2") format("woff2");font-weight:700;font-display:swap}
:root{--dark:#203039;--green:#4fc268;--green-dark:#35ad51;--ink:#0f1112;--muted:#686d70;--soft:#f4f4f4;--line:#e2e3e3;--radius:14px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:Outfit,Arial,sans-serif;font-size:16px;line-height:1.55}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.08;letter-spacing:-.025em}
h1{font-size:clamp(42px,6vw,72px)}
h2{font-size:clamp(30px,4vw,48px)}
h3{font-size:20px}
p{color:var(--muted)}
.shell{width:min(1280px,calc(100% - 48px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.button{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:46px;padding:12px 22px;border:0;border-radius:999px;font:600 15px/1 Outfit,Arial,sans-serif;cursor:pointer;transition:transform .38s cubic-bezier(.2,.8,.2,1),background .25s,opacity .25s,box-shadow .38s}
.button:hover{transform:translateY(-3px) scale(1.015);box-shadow:0 12px 30px #101b2024}
.button.green{background:var(--green);color:#fff}.button.green:hover{background:var(--green-dark)}
.button.white{background:#fff;color:#151719}.button:disabled{opacity:.55;cursor:wait}
.site-header{position:relative;z-index:10;color:#fff}
.header-inner{height:88px;display:grid;grid-template-columns:240px 1fr 240px;align-items:center}
.logo{width:210px}.logo img{width:100%;height:auto}
.main-nav{justify-self:center;display:flex;gap:48px}.main-nav a{font-size:15px}
.phone-button{justify-self:end}
.menu-button{display:none;border:0;background:transparent;padding:10px}.menu-button span:not(.sr-only){display:block;width:25px;height:2px;background:#fff;margin:5px}
.dark-hero{background:var(--dark);color:#fff;min-height:440px}
.hero-copy{text-align:center;padding:70px 20px 105px}.hero-copy h1{margin-bottom:22px}.hero-copy p{max-width:670px;margin:0 auto;color:#d5dadd;font-size:19px}
.home-hero{padding-top:24px;width:calc(100% - 48px);max-width:none}
.home-hero-bg{min-height:850px;border-radius:16px;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(8,16,18,.78),rgba(8,16,18,.10)),url('/assets/xLSr1rf5lg3BL2Gqcx5dQJ6CRPI.jpg') center/cover no-repeat}
.home-hero-bg .site-header{background:transparent}.home-hero-bg .header-inner{width:calc(100% - 136px)}
.home-hero-copy{max-width:700px;padding:85px 68px 52px}.home-hero-copy h1{max-width:630px;font-size:clamp(48px,5vw,72px);margin-bottom:24px}.home-hero-copy p{max-width:570px;color:#fff;font-size:18px}.actions{display:flex;gap:14px;margin:28px 0 152px}.google-rating{display:flex;align-items:center;gap:16px;font-size:14px}.reviewer-avatars{display:flex;align-items:center}.reviewer-avatars img{width:60px;height:60px;object-fit:cover;border:3px solid #fff;border-radius:50%;margin-left:-18px}.reviewer-avatars img:first-child{margin-left:0}.reviewer-avatars img:last-child{background:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:start;gap:24px;margin-top:78px;margin-bottom:120px}.trust-grid article{background:var(--soft);border-radius:12px;padding:30px;min-height:0}.trust-grid h3{margin-bottom:12px}.trust-grid p{margin:0;font-size:14px}
.trust-grid article:first-child h3{margin-bottom:0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:84px;align-items:center}.intro{margin-bottom:105px}.intro>img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px}.intro p{font-size:18px;max-width:530px}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;margin:28px 0 0;padding:0;list-style:none}.check-grid li{position:relative;padding-left:26px;color:#74797b}.check-grid li:before{content:'✓';position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;background:var(--green);color:#fff;font-size:11px;text-align:center;line-height:17px}
.stats{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px;align-items:stretch;margin-bottom:85px}.stats h2{padding:18px 0}.stats article{background:var(--soft);border-radius:12px;padding:30px}.stats strong{display:block;font-size:56px;line-height:1}.stats span{color:var(--muted)}
.dark-panel{display:grid;grid-template-columns:1fr 1fr;width:calc(100% - 48px);max-width:none;min-height:610px;gap:48px;align-items:center;background:var(--dark);color:#fff;border-radius:16px;padding:65px 10%;margin-bottom:90px;overflow:hidden}.dark-panel p,.dark-panel li{color:#cbd1d4}.dark-panel .button{margin-top:28px}.photo-stack{position:relative;height:440px}.photo-stack img{position:absolute;width:68%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;box-shadow:0 20px 45px #0004}.photo-stack img:nth-child(1){right:5%;top:0;transform:rotate(-6deg)}.photo-stack img:nth-child(2){left:0;top:22%;transform:rotate(5deg)}.photo-stack img:nth-child(3){right:0;bottom:-5%;width:42%;transform:rotate(3deg)}
.services-home{margin-bottom:110px}.services-home>h2{text-align:center;margin-bottom:46px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;display:flex;align-items:flex-end;min-height:290px;border-radius:14px;overflow:hidden;background:linear-gradient(0deg,#0008,#0000 70%),var(--card-image) center/cover no-repeat;background-size:auto 100%;transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s,background-size .8s cubic-bezier(.2,.8,.2,1)}.service-card span{display:block;width:calc(100% - 30px);margin:15px;padding:18px;border-radius:10px;background:#ffffffe8;backdrop-filter:blur(8px);transition:transform .55s cubic-bezier(.2,.8,.2,1),background .35s}.service-card strong,.service-card small{display:block}.service-card strong{font-size:20px;margin-bottom:5px}.service-card small{color:#6f7476}.service-card:hover{transform:translateY(-8px);box-shadow:0 24px 55px #17242a26;background-size:auto 108%}.service-card:hover span{transform:translateY(-3px);background:#fff}
.cta{position:relative;width:calc(100% - 48px);max-width:none;min-height:500px;margin-top:100px;margin-bottom:115px;border-radius:16px;overflow:hidden;background:var(--green)}.cta:before{content:'';position:absolute;inset:0;background:url('/assets/e1OEefWYyx3ghjzfUP5BTQtjUSY.png') left center/650px auto no-repeat;opacity:.08}.cta>div{position:relative;padding:92px 58px;color:#fff}.cta h2{font-size:48px;margin-bottom:45px}
.footer-grid{display:grid;grid-template-columns:1.25fr .65fr .8fr 1fr;gap:55px;padding-bottom:90px}.footer-logo{width:242px}.footer-grid h3{font-size:18px;margin-bottom:26px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-grid a,.footer-grid span{color:#555b5e;font-size:15px}.copyright{border-top:1px solid var(--line);padding:28px 0 38px;color:#7a7f81;font-size:14px}
.service-overview{padding:78px 0 245px}.service-overview .service-grid{grid-template-columns:repeat(3,1fr)}.service-overview .service-card{min-height:346px}.service-overview .service-card:last-child{grid-column:1}
.process{padding-bottom:130px;text-align:center}.process>h2{margin-bottom:58px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:82px;position:relative}.process-grid article{position:relative;z-index:1;border:1px solid var(--line);border-radius:12px;padding:36px 28px;background:#fff}.process-icon{width:48px;height:48px;margin:0 auto 20px}.process-arrow{position:absolute;z-index:0;pointer-events:none;opacity:.2}.arrow-one{width:201px;left:25%;top:-10px}.arrow-two{width:179px;left:59%;top:56%}.process-grid p{margin-bottom:0}.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:110px}.request-grid>article{background:var(--dark);color:#fff;border-radius:15px;padding:34px}.request-info img{width:100%;height:270px;object-fit:cover;border-radius:10px;margin-bottom:28px}.request-grid h2{font-size:30px}.request-grid p{color:#d0d6d8}.request-form>h2{font-size:32px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-weight:500}.contact-form label:first-child,.contact-form label:nth-last-of-type(1){grid-column:1/-1}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid #bdc3c5;border-radius:8px;background:#f4f4f4;padding:15px 16px;font:400 16px Outfit;color:#182126}.contact-form textarea{min-height:150px;resize:vertical}.contact-form .button,.form-status{grid-column:1/-1}.contact-form.compact{grid-template-columns:1fr}.contact-form.compact label,.contact-form.compact .button,.contact-form.compact .form-status{grid-column:1}.request-form .contact-form input,.request-form .contact-form select,.service-detail aside .contact-form input,.service-detail aside .contact-form textarea{background:transparent;color:#fff;border-color:#819097}.request-form .contact-form label,.service-detail aside label{font-size:14px}.honeypot{position:absolute!important;left:-10000px!important}.form-status{min-height:24px;margin:0;font-size:14px}.form-status.success{color:#1c8c3c}.form-status.error{color:#f27770}
.service-detail{padding-top:36px}.wide-photo{width:100%;height:480px;object-fit:cover;border-radius:14px}.detail-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:72px;padding:80px 0 20px;align-items:start}.detail-grid article h2{font-size:28px}.detail-grid article h3{margin-top:48px}.detail-grid article ul{padding-left:22px;color:#686d70}.detail-grid blockquote{margin:34px 0 0;border-left:2px solid #dedede;padding:4px 0 4px 24px;color:#9a9ea0;font-style:italic}.detail-grid aside{background:var(--dark);color:#fff;border-radius:14px;padding:38px}.detail-grid aside h2{font-size:38px}.detail-grid aside .contact-form{grid-template-columns:1fr}.detail-grid aside .contact-form label,.detail-grid aside .contact-form .button,.detail-grid aside .form-status{grid-column:1}
.contact-hero{min-height:625px;margin-bottom:295px}.contact-hero .hero-copy{padding:48px 20px 14px}.contact-card{position:relative;top:0;width:min(780px,calc(100% - 40px));background:#fff;color:#17191a;border-radius:14px;box-shadow:0 30px 70px #0002;padding:40px}.contact-card .contact-form textarea{min-height:160px}
.about-page{padding-top:36px}.about-hero-image{width:100%;height:620px;object-fit:cover;border-radius:14px}.about-split{padding:110px 0}.about-split>img{height:470px;width:100%;object-fit:cover;border-radius:14px}.about-values{margin:0 0 120px}.team{text-align:center}.team>div{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:60px}.team img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;background:#f6c4c1}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:85px 0 100px}.review-grid article{background:var(--soft);border-radius:14px;padding:28px;min-height:290px}.review-grid .quote-mark{font:700 80px/0.7 Georgia,serif;color:#e5271d}.review-grid h3{margin-top:26px}.review-grid strong{display:block;margin-top:18px}.not-found{padding:80px 0 160px;text-align:center}

/* Motion system — soft, layered movement matching the original Framer feel. */
body.motion-ready [data-reveal]{opacity:0;transform:translate3d(0,42px,0);filter:blur(7px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.16,1,.3,1),filter .8s ease;transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}
body.motion-ready [data-reveal="left"]{transform:translate3d(-52px,18px,0)}
body.motion-ready [data-reveal="right"]{transform:translate3d(52px,18px,0)}
body.motion-ready [data-reveal="scale"]{transform:translate3d(0,28px,0) scale(.94)}
body.motion-ready [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
body.motion-ready .site-header{animation:header-in .8s .05s both cubic-bezier(.16,1,.3,1)}
@keyframes header-in{from{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:none}}
.home-hero-bg{transform:translateZ(0);background-position:center calc(50% + var(--hero-shift,0px));transition:box-shadow .6s}
.home-hero-bg:hover{box-shadow:0 26px 70px #18252b20}
body.motion-ready .home-hero-copy>*{opacity:0;transform:translateY(34px);animation:hero-rise .9s var(--hero-delay,140ms) both cubic-bezier(.16,1,.3,1)}
.home-hero-copy h1{--hero-delay:120ms}.home-hero-copy>p{--hero-delay:230ms}.home-hero-copy .actions{--hero-delay:340ms}.home-hero-copy .google-rating{--hero-delay:470ms}
@keyframes hero-rise{to{opacity:1;transform:none}}
.photo-stack img{transition:transform .7s cubic-bezier(.16,1,.3,1),box-shadow .5s;will-change:transform}
.photo-stack:hover img:nth-child(1){transform:translate3d(9px,-10px,0) rotate(-8deg)}.photo-stack:hover img:nth-child(2){transform:translate3d(-10px,5px,0) rotate(7deg)}.photo-stack:hover img:nth-child(3){transform:translate3d(8px,8px,0) rotate(5deg)}
.trust-grid article,.stats article,.process-grid article,.review-grid article{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,background .35s}
.trust-grid article:hover,.stats article:hover,.process-grid article:hover,.review-grid article:hover{transform:translateY(-7px);box-shadow:0 20px 48px #18242a18;background:#fafafa}
.intro>img,.wide-photo,.about-hero-image,.about-split>img,.request-info img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .6s;transform-origin:center;will-change:transform}
.intro>img:hover,.wide-photo:hover,.about-hero-image:hover,.about-split>img:hover,.request-info img:hover{transform:scale(1.018);filter:saturate(1.04)}
.check-grid li:before{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.check-grid li:hover:before{transform:scale(1.22) rotate(-8deg)}
.cta:before{transform:translate3d(var(--cta-shift,0px),0,0);transition:transform .15s linear}
.cta .button:hover{transform:translateY(-4px) scale(1.025)}
.main-nav a,.footer-grid a{position:relative}.main-nav a:after,.footer-grid a:after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:currentColor;transition:right .35s cubic-bezier(.2,.8,.2,1)}.main-nav a:hover:after,.footer-grid a:hover:after{right:0}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.motion-ready [data-reveal],body.motion-ready .home-hero-copy>*,body.motion-ready .site-header{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}.home-hero-bg,.photo-stack img,.cta:before{transform:none!important}.service-card,.button,.trust-grid article,.stats article,.process-grid article,.review-grid article{transition:background .2s!important}}
@media (max-width:900px){
  .process-arrow{display:none}
  .shell{width:min(100% - 30px,760px)}.header-inner{grid-template-columns:1fr auto auto;height:76px}.logo{width:185px}.menu-button{display:block;grid-column:2}.main-nav{display:none;position:absolute;top:74px;left:15px;right:15px;flex-direction:column;gap:0;background:#fff;color:#151719;border-radius:12px;padding:10px;box-shadow:0 20px 50px #0003}.main-nav.is-open{display:flex}.main-nav a{padding:14px}.phone-button{grid-column:3;margin-left:4px;padding:11px 14px}.home-hero-bg .header-inner{width:calc(100% - 28px)}
  .home-hero-bg{min-height:710px}.home-hero-copy{padding:70px 26px 40px}.home-hero-copy h1{font-size:54px}.actions{margin-bottom:100px}.trust-grid,.service-grid,.service-overview .service-grid,.process-grid,.review-grid{grid-template-columns:1fr 1fr}.split{gap:38px}.stats{grid-template-columns:1fr 1fr}.stats h2{grid-column:1/-1}.dark-panel{grid-template-columns:1fr;padding:44px}.photo-stack{height:380px}.service-overview .service-card:last-child{grid-column:auto}.request-grid,.detail-grid{grid-template-columns:1fr}.detail-grid{gap:44px}.footer-grid{grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1}.about-hero-image{height:460px}.team>div{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  body{font-size:15px}.shell{width:calc(100% - 24px)}h1{font-size:38px}h2{font-size:30px}.phone-button{display:none}.header-inner{grid-template-columns:1fr auto}.menu-button{grid-column:2}.home-hero{padding-top:0;width:100%}.home-hero-bg{border-radius:0;min-height:680px}.home-hero-copy{padding:64px 20px 32px}.home-hero-copy h1{font-size:43px}.home-hero-copy p{font-size:16px}.actions{flex-direction:column;margin-bottom:80px}.trust-grid,.service-grid,.service-overview .service-grid,.process-grid,.review-grid{grid-template-columns:1fr}.trust-grid{margin-top:46px;margin-bottom:72px}.split{grid-template-columns:1fr}.intro{margin-bottom:70px}.check-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.stats h2{grid-column:auto}.dark-panel{padding:28px 22px}.photo-stack{height:320px}.services-home{margin-bottom:70px}.service-card{min-height:250px}.cta{min-height:370px;margin-top:60px;margin-bottom:75px}.cta>div{padding:65px 20px}.cta h2{font-size:34px}.footer-grid{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.footer-logo{grid-column:auto}.dark-hero{min-height:360px}.hero-copy{padding:50px 12px 75px}.hero-copy p{font-size:16px}.service-overview{padding:48px 0 80px}.process{padding-bottom:80px}.request-grid{margin-bottom:70px}.request-grid>article{padding:24px}.wide-photo{height:260px}.detail-grid{padding-top:52px}.detail-grid aside{padding:26px 20px}.contact-form{grid-template-columns:1fr}.contact-form label,.contact-form label:first-child,.contact-form label:nth-last-of-type(1){grid-column:1}.contact-hero{min-height:670px;margin-bottom:350px}.contact-card{padding:24px;width:calc(100% - 24px)}.about-hero-image{height:330px}.about-split{padding:70px 0}.about-split>img{height:350px}.team>div{grid-template-columns:1fr 1fr}.review-grid{padding-top:50px}.review-grid article{min-height:auto}
}

@media (min-width:901px){
  .process{padding-bottom:220px}
  .contact-hero{margin-bottom:120px}
}
