:root{--ink:#102b42;--muted:#536e82;--lime:#b9e9fb;--paper:#fff;--mist:#f0f6fa;--line:#d5e2eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #007bad;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.055em;line-height:1.04}h1{font-size:clamp(3rem,5.6vw,5.6rem)}h2{font-size:clamp(2.4rem,4vw,4rem)}h3{font-size:1.3rem;letter-spacing:-.025em;line-height:1.25}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em;margin-bottom:24px}.header{min-height:100px;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:1.05rem;font-weight:800;letter-spacing:.06em;line-height:1.2}.brand small{display:block;font-size:.72rem;letter-spacing:.22em;margin-top:5px}.brand-mark{font-size:.75rem;letter-spacing:-.03em;border:1px solid var(--ink);width:43px;height:43px;border-radius:50%;display:grid;place-content:center;text-align:center}.brand-mark span{line-height:.6;font-size:1.2rem}nav{display:flex;align-items:center;gap:28px;font-size:.875rem;font-weight:600}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.button{background:var(--lime);color:var(--ink);display:inline-flex;justify-content:center;align-items:center;padding:16px 25px;font-size:.95rem;font-weight:700;border:0;border-radius:5px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#97dbf5;transform:translateY(-2px)}.button.small{padding:12px 19px;font-size:.875rem}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px;padding:40px 5% 50px;gap:5%}.hero-copy{padding:45px 0 20px;align-self:center}.hero-description{font-size:1.1rem;color:var(--muted);max-width:430px;margin-top:28px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:32px}.text-link{font-size:.9rem;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:3px}.hero-image{position:relative;border-radius:8px;overflow:hidden;min-height:540px}.hero-image img{object-position:49% center}.photo-label{position:absolute;bottom:24px;left:24px;background:rgba(16,46,52,.85);color:white;font-size:.7rem;letter-spacing:.11em;padding:10px 14px;border-radius:3px}.hero-proof{display:flex;gap:32px;margin-top:48px;align-items:center}.hero-proof strong{font-size:2.5rem;line-height:1}.hero-proof strong span{display:block;font-size:.75rem;font-weight:400;margin-top:10px}.hero-proof>div{border-left:1px solid var(--line);padding-left:28px;font-size:.85rem;color:var(--muted)}.capabilities{display:flex;justify-content:space-between;gap:20px;padding:25px 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.75rem;font-weight:700;letter-spacing:.1em}.section{padding:95px 5%;scroll-margin-top:15px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-heading>p{max-width:360px;color:var(--muted);font-size:1rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service:hover{background:var(--mist)}.service-number{display:block;color:var(--muted);font-size:.8rem;margin-bottom:34px}.service p{font-size:.95rem;color:var(--muted);margin-top:14px;max-width:300px}.equipment{display:flex;align-items:center;gap:25px;background:var(--mist);padding:30px;margin-top:24px;border-radius:5px}.equipment-icon{font-size:3rem;color:#007bad}.equipment p{font-size:.9rem;color:var(--muted);max-width:650px;margin-top:6px}.equipment .text-link{margin-left:auto;flex-shrink:0}.work-section{background:var(--mist)}.gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:230px 230px;gap:16px}.gallery-item{border:0;position:relative;overflow:hidden;padding:0;border-radius:5px;cursor:zoom-in;background:var(--ink)}.gallery-wide{grid-row:span 2}.gallery-item:last-child{grid-column:span 2}.gallery-item img{transition:transform .4s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}.gallery-item span{position:absolute;bottom:20px;left:20px;color:#fff;z-index:1;font-size:.9rem}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about-photo{height:510px;border-radius:5px;overflow:hidden}.about-photo img{object-position:center 65%}.about-copy p:not(.eyebrow){color:var(--muted);margin-top:25px;max-width:440px}.about-copy .text-link{display:inline-block;margin-top:28px}.estimate-section{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:9%}.estimate-copy>.eyebrow{color:var(--lime)}.estimate-copy>p:not(.eyebrow){color:#bfcecf;max-width:420px;margin-top:26px}.steps{list-style:none;margin:40px 0 0;padding:0}.steps li{display:flex;gap:20px;margin:25px 0}.steps li>span{color:var(--lime);font-size:.8rem;line-height:26px}.steps strong{font-weight:500}.steps p{color:#bfcecf;font-size:.9rem;margin-top:3px}.contact-options{padding-top:25px;margin-top:30px;border-top:1px solid #446067}.contact-options p{font-size:.85rem;color:#bfcecf}.contact-options>a{font-size:1.8rem;letter-spacing:-.03em}.contact-options small{display:block;font-size:.9rem;margin-top:6px}.contact-options small a{text-decoration:underline}form{background:white;color:var(--ink);padding:35px;border-radius:8px;align-self:start}form h3{font-size:1.6rem}.form-intro{color:var(--muted);margin:8px 0 24px;font-size:.9rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}label{font-size:.875rem;font-weight:600;display:block}label span{color:#00699b}input,select,textarea{display:block;width:100%;min-width:0;background:#fff;border:1px solid #ccd7d6;border-radius:4px;padding:11px 12px;margin-top:7px;color:var(--ink);font-size:1rem}input:focus,select:focus,textarea:focus{outline:2px solid #007bad;outline-offset:2px}textarea{resize:vertical}.privacy-note{font-size:.75rem;color:var(--muted);margin:20px 0;line-height:1.6}.submit{width:100%}.sms-button{display:block;background:none;border:0;border-bottom:1px solid var(--ink);margin:18px auto 0;color:var(--ink);font-size:.875rem;padding:2px;cursor:pointer}.form-status{font-size:.85rem;color:var(--muted);margin-top:15px}.honeypot{position:absolute;left:-9999px;width:1px;height:1px}.skip{position:absolute;top:-100px;left:10px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:40px 5%;flex-wrap:wrap}footer p,footer>span{font-size:.75rem;color:var(--muted)}footer>a:not(.brand){font-size:.9rem}.mobile-contact{display:none}dialog{border:0;padding:18px;background:var(--ink);color:white;border-radius:8px;max-width:90vw;width:800px}dialog::backdrop{background:rgba(0,0,0,.8)}dialog img{max-height:75vh;height:auto;object-fit:contain}dialog p{margin-top:12px;font-size:.9rem}#close-photo{position:absolute;right:24px;top:24px;background:white;border:0;border-radius:50%;width:40px;height:40px;font-size:1.6rem;cursor:pointer;color:var(--ink)}
@media(min-width:1500px){.header,.hero,.capabilities,.section,footer{padding-left:max(5%,calc((100vw - 1360px)/2));padding-right:max(5%,calc((100vw - 1360px)/2))}}
@media(max-width:1000px){nav{gap:18px}.nav-call{display:none}.hero{gap:4%}.hero-image{min-height:500px}.hero-proof{gap:20px}.service{padding:25px}.equipment{flex-wrap:wrap}.equipment .text-link{margin-left:0}.estimate-section{gap:5%}form{padding:25px}}
@media(max-width:700px){html{scroll-padding-top:25px}.header{padding:20px 6%;min-height:80px}nav>a:not(.button){display:none}.brand{font-size:.9rem}.brand-mark{display:none}.button.small{font-size:.8rem;padding:11px 14px}.hero{grid-template-columns:1fr;padding:25px 6% 35px;gap:30px}.hero-copy{padding:15px 0 0}.hero h1{font-size:3.7rem}.eyebrow{margin-bottom:20px}.hero-description{font-size:1rem;margin-top:22px}.actions{gap:18px;margin-top:25px}.hero-proof{margin-top:30px}.hero-image{min-height:0;height:360px}.photo-label{font-size:.6rem;left:15px;bottom:15px}.capabilities{display:grid;grid-template-columns:1fr 1fr;padding:22px 6%;font-size:.65rem;gap:15px}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px}.services-grid{grid-template-columns:1fr 1fr}.service{padding:22px 18px}.service h3{font-size:1.15rem}.service p{font-size:.875rem}.service-number{margin-bottom:25px}.equipment{padding:22px;gap:15px}.equipment-icon{display:none}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:320px 220px 220px;gap:12px}.gallery-wide{grid-column:1/-1;grid-row:auto}.gallery-item:last-child{grid-column:span 2}.gallery-item span{font-size:.8rem;left:12px;bottom:12px}.about{grid-template-columns:1fr;gap:35px}.about-photo{height:360px}.estimate-section{grid-template-columns:1fr;gap:40px}.steps{margin-top:30px}form{padding:25px 20px}.form-grid{gap:16px}footer{padding:35px 6% 100px;align-items:start;gap:20px}footer>span{width:100%}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:var(--ink);padding:10px 12px max(10px,env(safe-area-inset-bottom));gap:10px;z-index:5;box-shadow:0 -3px 20px #0002}.mobile-contact a{text-align:center;font-size:.9rem;padding:12px;color:white;border:1px solid #5b777b;border-radius:4px}.mobile-contact a:last-child{background:var(--lime);color:var(--ink);border-color:var(--lime)}}
@media(max-width:380px){.hero h1{font-size:3.1rem}.services-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.hero-proof{gap:14px}.hero-proof>div{padding-left:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Supplied logo, kept intact with the company name alongside it. */
.company-logo{width:135px;height:58px;object-fit:contain;flex-shrink:0}.brand{gap:16px}@media(max-width:1000px){.company-logo{width:105px;height:48px}.brand{gap:10px}}@media(max-width:700px){.company-logo{width:80px;height:38px}.brand{font-size:.75rem;gap:8px}.brand small{font-size:.58rem;letter-spacing:.13em}.header{gap:12px}.button.small{font-size:.75rem;padding:10px 12px}}

/* Expanded family story, equipment and real-project gallery. */
.company-logo{width:220px;height:92px}.header .brand>span{font-size:.85rem}.guarantee-badge{display:inline-block;margin-top:24px;padding:9px 15px;border:1px solid #007bad;border-radius:30px;font-size:.85rem;font-weight:700}.recapture{background:#e8f4fa;display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.recapture p{margin-top:24px;max-width:650px;color:var(--muted)}.recapture .button{margin-top:28px}.recapture-card{background:white;border:1px solid var(--line);border-radius:12px;padding:40px}.recapture-card .eyebrow{display:block}.recapture-card hr{border:0;border-top:1px solid var(--line);margin:30px 0}.before-after{margin-top:50px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison .gallery-item{height:460px}.comparison .gallery-item:last-child{grid-column:auto}.more-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}.more-gallery .gallery-item{height:290px}.more-gallery .gallery-item:last-child{grid-column:auto}.guarantee{text-align:center}.guarantee p:not(.eyebrow){max-width:650px;margin:24px auto;color:var(--muted)}.guarantee .text-link{display:inline-block}.about-copy p:not(.eyebrow){max-width:600px}
@media(max-width:1100px){.header{flex-wrap:wrap}.header nav{flex-wrap:wrap}.more-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.company-logo{width:170px;height:72px}.header .brand>span{display:none}.recapture{grid-template-columns:1fr;gap:30px}.recapture-card{padding:25px}.comparison .gallery-item{height:300px}.more-gallery .gallery-item{height:240px}.hero h1{font-size:clamp(2.8rem,12vw,3.7rem)}}
@media(max-width:400px){.company-logo{width:145px;height:61px}.comparison{gap:10px}.comparison .gallery-item{height:230px}.more-gallery{grid-template-columns:1fr}.more-gallery .gallery-item{height:320px}}

/* Multipage navigation and company branding */
.header{padding-top:16px;padding-bottom:16px}.header .company-logo{width:270px;height:113px}nav a[aria-current=page]{color:#006d96;text-decoration:underline;text-underline-offset:7px}.hero-logo{width:min(100%,400px);height:auto;object-fit:contain;margin-bottom:26px}.hero-copy{padding-top:10px}.hero h1{font-size:clamp(3rem,5vw,4.6rem)}.page-intro{background:var(--mist);padding-top:70px;padding-bottom:70px}.page-intro h1{font-size:clamp(3rem,5.5vw,5rem)}.page-intro>p:last-child{max-width:700px;margin-top:25px;color:var(--muted);font-size:1.1rem}.home-links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;background:var(--mist)}.feature-card{background:white;padding:30px;border:1px solid var(--line);border-radius:10px}.feature-card h2{font-size:2rem;line-height:1.15}.feature-card p:not(.eyebrow){margin:20px 0;color:var(--muted)}.feature-card .text-link{display:inline-block}.system-feature{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.system-feature figure{margin:0}.system-feature figure img{height:auto;max-height:650px;object-fit:contain;border-radius:10px}.system-feature figcaption{margin-top:12px;color:var(--muted);font-size:.85rem}.system-feature p:not(.eyebrow){margin-top:24px;color:var(--muted)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.process-grid article{background:white;border:1px solid var(--line);padding:30px;border-radius:8px}.process-grid span{display:block;margin-bottom:25px;color:#007bad;font-weight:700}.process-grid p{margin-top:16px;color:var(--muted)}.project-pair{margin-top:38px}.project-pair h3{margin-bottom:20px}.before-after-section .comparison .gallery-item{height:auto;aspect-ratio:3/4}.before-after-section .comparison img{object-fit:contain;background:#102b42}.header nav{gap:22px}footer .company-logo{width:220px;height:92px}
@media(max-width:900px){.header{justify-content:center}.header nav{justify-content:center;width:100%}.home-links{grid-template-columns:1fr}.system-feature{grid-template-columns:1fr;gap:35px}.process-grid{grid-template-columns:1fr}}
@media(max-width:700px){.header .company-logo{width:230px;height:96px}.header nav>a:not(.button){display:inline-block}.header nav{gap:12px 18px;font-size:.85rem;flex-wrap:wrap}.header .button.small{padding:9px 12px}.hero-logo{width:min(100%,330px)}.page-intro{padding-top:45px;padding-bottom:45px}.comparison .gallery-item{height:300px}.process-grid{gap:16px}.system-feature figure img{max-height:480px}.home-links{gap:18px}}
