:root{--ink:#173f47;--muted:#567075;--teal:#08756b;--teal-hover:#055c54;--mint:#46d6c0;--pale:#f0f7f6;--line:#dce8e5;--white:#fff;--radius:20px;font-family:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;color:var(--ink);font-synthesis:none;font-size:100%;background:var(--white)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}svg{flex-shrink:0}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #118779;outline-offset:5px}::selection{background:#baf1e8;color:var(--ink)}[hidden]{display:none!important}.container{width:min(1248px,calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.eyebrow{font-size:.8125rem;font-weight:650;line-height:1.6;letter-spacing:.13em;text-transform:uppercase;color:var(--teal)}.eyebrow-line{display:inline-block;width:26px;height:2px;vertical-align:middle;background:var(--teal);margin-right:12px}h2{font-size:clamp(2rem,3.1vw,2.875rem);line-height:1.18;font-weight:600;letter-spacing:-.045em}h3{font-size:1.1875rem;line-height:1.35;font-weight:650;letter-spacing:-.025em}p{font-size:1rem;line-height:1.8}a,button{transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.skip-link{position:fixed;left:20px;top:-100px;z-index:20;padding:12px 20px;background:var(--ink);color:white;border-radius:8px}.skip-link:focus{top:15px}.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.97);border-bottom:1px solid #edf2f1}.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{font-size:2.45rem;font-weight:650;letter-spacing:-.045em;line-height:1.1}.brand-dot{color:#079d8b;margin-left:2px}.main-nav{display:flex;align-items:center;gap:37px;font-size:.9375rem;font-weight:550}.main-nav>a:not(.button):hover,.footer-main nav a:hover{color:var(--teal)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:9px;min-height:54px;padding:15px 22px;font-size:.9375rem;line-height:1.5;font-weight:600;white-space:normal;text-align:center}.button:hover{background:var(--teal-hover);border-color:var(--teal-hover);transform:translateY(-2px)}.arrow-icon{display:inline-block;width:1.25rem;height:1.25rem;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.button-small{min-height:46px;padding:12px 19px;font-size:.875rem;gap:23px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:11px 12px;border-radius:8px;align-items:center;gap:8px;color:var(--ink)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:54px;align-items:center;padding-top:65px;padding-bottom:71px}.hero-copy{padding-block:16px}.hero h1{font-size:clamp(2.75rem,4.7vw,4.35rem);font-weight:600;line-height:1.12;letter-spacing:-.055em;margin-top:22px;margin-bottom:28px}.hero h1 span{color:var(--teal)}.hero-lead{font-size:1.125rem;line-height:1.65;font-weight:550;max-width:390px}.hero-description{max-width:420px;color:var(--muted);margin-top:12px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.text-link{display:inline-flex;align-items:center;gap:13px;font-weight:550;font-size:.875rem;min-height:44px}.text-link:hover{color:var(--teal)}.hero-values{display:flex;flex-wrap:wrap;gap:19px;margin-top:34px;color:var(--muted);font-size:.8125rem}.hero-values span{display:flex;gap:6px;align-items:center}.hero-values svg{width:19px;height:19px;fill:none;stroke:var(--teal);stroke-width:1.6}.hero-visual{position:relative;min-width:0}.hero-image{width:100%;height:475px;object-fit:cover;object-position:62% center;border-radius:var(--radius)}.photo-note{position:absolute;left:-23px;bottom:38px;display:flex;align-items:center;gap:15px;background:white;border:1px solid var(--line);box-shadow:0 10px 32px #173f4710;border-radius:12px;padding:20px 25px}.photo-note strong,.photo-note span:not(.note-icon){display:block}.photo-note strong{font-size:.9375rem;font-weight:650}.photo-note div>span{color:var(--muted);font-size:.8125rem;line-height:1.7;margin-top:1px}.note-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#e1f7ef;border-radius:50%;color:var(--teal)}.image-label{position:absolute;bottom:10px;right:12px;background:#153d45cf;color:white;font-size:.75rem;line-height:1.5;padding:3px 9px;border-radius:4px}.space-strip{background:var(--pale);border-top:1px solid #e4eeeb;border-bottom:1px solid #e4eeeb}.space-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:29px}.space-strip p{font-size:.8125rem;line-height:1.6;padding-right:34px;border-right:1px solid #ccded9}.space-strip strong{font-weight:600;font-size:.875rem}.space-strip-inner>span{font-size:.875rem;font-weight:550;color:#3d5b61}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:43px}.section-heading h2{margin-top:12px}.section-heading>p{max-width:345px;color:var(--muted);padding-bottom:5px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:30px 28px 23px;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;background:white;transition:box-shadow .2s ease,border-color .2s ease}.service-card:hover{border-color:#90beb4;box-shadow:0 8px 28px #173f4708}.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px}.service-icon{width:48px;height:48px;display:grid;place-items:center;background:#eaf6f2;border-radius:12px;color:var(--teal)}.service-icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;fill:none}.service-number{font-size:.8125rem;letter-spacing:.04em;color:#657e83}.service-card p{font-size:1rem;line-height:1.8;color:var(--muted);margin-top:13px;margin-bottom:25px}.service-link{margin-top:auto;border-top:1px solid #e6eeeb;padding-top:18px;display:flex;align-items:center;justify-content:space-between;color:var(--teal);font-size:.875rem;font-weight:600;min-height:42px}.service-link:hover{color:var(--ink)}.service-link{gap:12px}.service-invitation{background:var(--ink);color:white;padding:31px 29px;border-radius:14px;display:flex;flex-direction:column;align-items:flex-start}.service-invitation .eyebrow{color:#85e0cf;font-size:.75rem;letter-spacing:.08em}.service-invitation h3{font-size:2rem;line-height:1.2;letter-spacing:-.04em;margin-top:25px}.service-invitation p{color:#d2e3e1;font-size:1rem;line-height:1.75;margin-block:18px 25px}.button-light{color:var(--ink);background:white;border-color:white;font-size:.875rem;min-height:46px;padding:12px 16px;margin-top:auto;gap:17px}.button-light:hover{background:#c6f2e7;color:var(--ink);border-color:#c6f2e7}.about-section{background:var(--pale);padding-block:83px}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.about-photo{position:relative}.about-photo img{width:100%;height:410px;object-fit:cover;border-radius:18px}.about-copy h2{margin-top:15px;margin-bottom:26px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-top:16px}.about-signature{display:flex;align-items:center;gap:15px;font-weight:600;font-size:.9375rem;margin-top:31px}.signature-line{width:33px;height:2px;background:#329e8d}.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:104px;align-items:start}.contact-copy h2{margin-top:15px;margin-bottom:24px}.contact-copy>p:not(.eyebrow){color:var(--muted);max-width:360px}.contact-details{display:grid;gap:26px;margin-top:36px}.contact-details>div{display:flex;flex-direction:column;gap:5px}.contact-label{font-size:.8125rem;color:var(--muted)}.contact-details strong,.contact-value{font-size:1.0625rem;font-weight:550;overflow-wrap:anywhere}.contact-form{background:#f5f9f8;border:1px solid #e1ebe8;border-radius:18px;padding:33px}.contact-form h3{font-size:1.3125rem}.form-intro{font-size:.875rem;color:var(--muted);line-height:1.65;margin-top:9px;margin-bottom:26px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;margin-bottom:18px;min-width:0}.field label{font-size:.875rem;font-weight:550;line-height:1.5;margin-bottom:8px}.field label span{color:var(--teal)}input,textarea,select{width:100%;min-width:0;color:var(--ink);background:white;border:1px solid #cfded9;border-radius:7px;padding:12px 13px;font-size:1rem;line-height:1.5;min-height:48px;box-shadow:none}input::placeholder,textarea::placeholder{color:#718780;opacity:1;font-size:.875rem}select{padding-right:28px;font-size:.875rem}textarea{resize:vertical;min-height:120px;max-height:400px}input:focus,select:focus,textarea:focus{border-color:var(--teal)}[aria-invalid="true"]{border-color:#ac3535;background:#fffafa}.field-error{color:#a32929;font-size:.8125rem;line-height:1.6}.field-error:not(:empty){margin-top:6px}.required-note{font-size:.75rem;color:var(--muted);line-height:1.5;margin-top:-6px;margin-bottom:15px}.form-submit{width:100%;justify-content:space-between}.form-feedback{border:1px solid #b1d8ca;border-radius:8px;padding:15px;background:#e7f5ee;color:var(--ink);font-size:.875rem;line-height:1.7;margin-top:20px}.site-footer{background:var(--ink);color:white}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:49px}.footer-main .wordmark{font-size:2.25rem}.footer-main .brand-dot{color:var(--mint)}.footer-main p{font-size:.8125rem;color:#c3d7d8;margin-top:10px}.footer-main nav{display:flex;gap:29px;font-size:.875rem}.footer-main nav a:hover{color:#82e0cc}.footer-region{color:#c3d7d8;font-size:.8125rem;line-height:1.8}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:23px;font-size:.75rem;color:#c3d7d8;line-height:1.7}.footer-bottom a{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.text-link .arrow-icon,.footer-bottom .arrow-icon{width:1em;height:1em}.footer-bottom a:hover{color:white}
@media(min-width:1500px){.hero h1{font-size:4.4rem}.hero-image{height:510px}.hero{padding-block:79px}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.hero{gap:32px;padding-top:45px;padding-bottom:50px}.hero h1{font-size:clamp(2.75rem,4.8vw,3.75rem)}.hero-image{height:470px}.hero-actions{gap:12px}.hero-values{gap:10px}.photo-note{left:-10px;padding:17px}.space-strip-inner{gap:15px}.space-strip p{padding-right:18px}.space-strip-inner>span{font-size:.8125rem}.services-grid{gap:16px}.service-card{padding:24px 21px}.service-invitation{padding:26px 22px}.service-card h3{font-size:1.0625rem}.about-grid{gap:54px}.contact-section{gap:58px}.contact-form{padding:27px}.footer-main nav{gap:20px}}
@media(max-width:900px){.container{width:calc(100% - 48px)}.main-nav{gap:22px}.hero{gap:30px}.hero h1{font-size:2.9rem}.hero-image{height:450px}.hero-lead{font-size:1rem}.hero-description{font-size:.9375rem}.hero-values{font-size:.75rem;gap:8px}.hero-actions{margin-top:25px}.hero .eyebrow{font-size:.75rem;letter-spacing:.08em}.eyebrow-line{width:18px;margin-right:7px}.photo-note{padding:14px;gap:10px}.note-icon{width:34px;height:34px}.photo-note strong{font-size:.8125rem}.photo-note div>span{font-size:.75rem}.section{padding-block:78px}.space-strip-inner{flex-wrap:wrap;justify-content:flex-start;gap:17px 30px}.space-strip p{flex:1 0 100%;border:0}.space-strip p br{display:none}.space-strip p strong{margin-left:4px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card h3{font-size:1.1875rem}.section-heading{gap:25px}.section-heading>p{max-width:290px}.about-grid{gap:36px}.about-photo img{height:440px}.contact-section{gap:35px}.contact-form{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.footer-region{display:none}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:nth-child(2){order:3;flex-basis:100%}}
@media(max-width:700px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.header-inner{min-height:79px;gap:18px}.wordmark{font-size:2.2rem}.menu-toggle{display:flex;font-size:.875rem}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;padding:22px 20px 25px;background:white;border-bottom:1px solid var(--line);box-shadow:0 12px 15px #173f470a;flex-direction:column;align-items:stretch;gap:6px}.main-nav.is-open{display:flex}.main-nav>a:not(.button){padding:13px 3px}.main-nav .button{margin-top:8px}.hero{grid-template-columns:1fr;gap:32px;padding-top:38px;padding-bottom:35px}.hero-copy{padding:0}.hero .eyebrow{font-size:.75rem;letter-spacing:.095em}.hero h1{font-size:clamp(2.75rem,9.2vw,4rem);margin-top:21px;margin-bottom:22px}.hero-lead{font-size:1.0625rem;max-width:400px}.hero-description{max-width:460px;font-size:1rem;margin-top:12px}.hero-actions{gap:13px 21px;margin-top:27px}.hero-values{font-size:.8125rem;gap:16px;margin-top:24px}.hero-image{height:370px;object-position:center;border-radius:15px}.photo-note{left:15px;bottom:34px;padding:17px 18px;gap:13px}.photo-note strong{font-size:.9375rem}.photo-note div>span{font-size:.8125rem}.note-icon{width:40px;height:40px}.image-label{font-size:.75rem}.space-strip-inner{padding-block:25px;display:grid;grid-template-columns:1fr 1fr;gap:13px 20px}.space-strip p{grid-column:1/-1;margin-bottom:3px}.space-strip-inner>span{font-size:.8125rem;line-height:1.5}.section{padding-block:62px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:2.25rem}.section-heading>p{max-width:450px;margin-top:20px}.services-grid{gap:16px}.service-card{padding:23px 20px 19px}.service-card-top{margin-bottom:23px}.service-card h3{font-size:1.0625rem;overflow-wrap:break-word}.service-card p{font-size:.9375rem}.service-invitation{padding:26px 21px}.service-invitation h3{font-size:1.85rem}.service-invitation .button{font-size:.8125rem;gap:10px;padding-inline:12px}.about-section{padding-block:48px}.about-grid{grid-template-columns:1fr;gap:34px}.about-photo img{height:340px}.about-copy h2{font-size:2.25rem;margin-bottom:23px}.about-copy>p:not(.eyebrow){max-width:530px}.contact-section{grid-template-columns:1fr;gap:36px}.contact-copy h2{font-size:2.25rem}.contact-copy>p:not(.eyebrow){max-width:460px}.contact-details{grid-template-columns:1fr 1fr;gap:23px 18px;margin-top:29px}.contact-details>div:first-child{grid-column:1/-1}.contact-value{font-size:.9375rem}.contact-form{padding:27px 22px}.form-row{grid-template-columns:1fr 1fr;gap:14px}.footer-main{padding-block:36px;align-items:flex-start}.footer-main nav{flex-direction:column;gap:18px}.footer-main .wordmark{font-size:2rem}.footer-main p{font-size:.75rem;max-width:190px}.footer-bottom{gap:12px;font-size:.75rem}.footer-bottom>span:nth-child(2){font-size:.75rem}.contact-section{padding-bottom:60px}}
@media(max-width:420px){.container{width:calc(100% - 36px)}.hero h1{font-size:2.8rem}.hero-actions .button{font-size:.875rem;padding:14px 17px;gap:13px}.hero-actions{gap:10px 16px}.text-link{font-size:.8125rem;gap:9px}.hero-values{font-size:.75rem;gap:11px}.hero-values span{gap:3px}.hero-image{height:320px}.services-grid{grid-template-columns:1fr}.service-card{padding:25px}.service-card h3{font-size:1.1875rem}.service-card-top{margin-bottom:24px}.service-invitation{padding:28px}.service-invitation h3 br{display:none}.service-invitation h3{max-width:260px}.service-invitation .button{font-size:.875rem}.about-photo img{height:300px}.contact-details{grid-template-columns:1fr}.contact-details>div:first-child{grid-column:auto}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:25px 20px}.footer-main{gap:20px}.footer-main nav{font-size:.8125rem}.section-heading h2,.about-copy h2,.contact-copy h2{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Original logo supplied by Cleanyco. */
.brand-link{display:block;flex:0 0 auto;width:220px;line-height:0}
.brand-logo{display:block;width:100%;height:auto}
.footer-main .brand-link{width:220px;padding:12px;background:#fdfdfd;border-radius:6px}
@media(max-width:900px){.brand-link{width:180px}}
@media(max-width:700px){.footer-main .brand-link{width:200px}}
@media(max-width:420px){.brand-link{width:168px}.footer-main .brand-link{width:160px;padding:10px}}

/* Seven services with the contact invitation completing the final row. */
.service-invitation h3{max-width:420px}
.service-invitation p{max-width:460px}
@media(min-width:901px){.service-invitation{grid-column:span 2}}

/* Contact form delivery states. */
.form-trap{display:none}
.contact-details a:hover{text-decoration:underline;text-underline-offset:3px}
.button:disabled{cursor:wait;opacity:.7;transform:none}
.form-feedback[data-state="error"]{border-color:#e0b5b0;background:#fff3f1;color:#842d27}
