
:root{--ink:#10251c;--navy:#101e2a;--green:#376c36;--orange:#ff6d20;--paper:#f6f5ef;--line:#dce0d6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.wrap{max-width:1200px;margin:auto;padding:0 30px}.top{background:var(--ink);color:#fff;text-align:center;font-size:12px;letter-spacing:1px;padding:8px}header{position:sticky;top:0;z-index:20;background:#f6f5eff5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}nav{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 0}.brand{line-height:1.05;font-weight:900;font-style:italic;font-size:24px;letter-spacing:-1px}.brand span{color:#c84600}.brand small{display:block;font-style:normal;font-size:10px;letter-spacing:2px;margin-top:7px}.links{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:bold}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:14px 24px;background:var(--orange);color:#151d17;border:0;border-radius:4px;font-weight:800;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#ff893f}.btn.light{background:white}.btn.outline{background:transparent;border:1px solid #ffffff70;color:#fff}.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:670px;align-items:center;gap:65px}.hero-copy{padding:70px 0}.eyebrow{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:var(--green);margin:0 0 15px}.hero .eyebrow{color:#abd39b}h1{font-size:clamp(48px,5.6vw,78px);line-height:1.02;letter-spacing:-3px;margin:0 0 25px;font-weight:900}h1 em{font-style:normal;color:#ff8a48}.hero p{color:#d0dad2;font-size:17px;max-width:480px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.hero-photo{position:relative;height:570px}.hero-photo img{width:100%;height:100%;object-fit:cover;border-radius:90px 4px 4px 4px;object-position:center 65%}.photo-tag{position:absolute;bottom:25px;left:-25px;background:var(--paper);color:var(--ink);padding:18px 25px;box-shadow:0 12px 30px #0002}.photo-tag strong{display:block;font-size:22px}.photo-tag small{color:#566250}.mini{font-size:12px!important;letter-spacing:.3px}.trust{display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-weight:bold;font-size:13px;border-bottom:1px solid var(--line)}.trust span:before{content:'✓';color:var(--green);margin-right:10px}section{padding:90px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}h2{font-size:clamp(32px,3.4vw,46px);line-height:1.15;letter-spacing:-1.5px;margin:0}h3{margin:0 0 10px;font-size:21px;line-height:1.3}.section-head p{max-width:390px;color:#5a665d;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{padding:30px;background:white;border:1px solid var(--line);border-radius:5px;display:flex;flex-direction:column;align-items:start}.service .num{font-size:12px;letter-spacing:2px;color:var(--green);margin-bottom:28px}.service p{color:#647065;font-size:14px;flex:1}.service a{font-weight:bold;font-size:13px;color:#ad3d00}.work{background:#e9ecdf}.work-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pair figure{margin:0;position:relative}.pair img{height:380px;width:100%;object-fit:cover;object-position:center 70%;border-radius:4px}.pair figcaption{position:absolute;left:12px;top:12px;background:white;padding:6px 12px;font-size:12px;font-weight:bold;border-radius:3px}.caption{margin-top:15px;font-size:14px}.videos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.videos video{width:100%;height:380px;object-fit:cover;background:var(--ink);border-radius:4px}.videos p{font-size:13px;margin:10px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.steps b{display:block;color:var(--green);font-size:38px;margin-bottom:16px}.steps p{color:#647065;font-size:15px}.quote{background:var(--navy);color:white}.quote-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.quote .eyebrow{color:#ff9e69}.quote-copy p{color:#c5cfca}.contact-row{display:block;padding:18px 0;border-bottom:1px solid #ffffff25;word-break:break-word}.contact-row small{display:block;color:#a8bbb0;font-size:12px;text-transform:uppercase;letter-spacing:1px}.contact-row strong{font-size:22px}.contact-row.email strong{font-size:16px}.form{background:#fff;color:var(--ink);padding:30px;border-radius:6px}.form h3{font-size:24px}.form>p{font-size:13px;color:#667366}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field.full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:800;margin-bottom:6px}input,select,textarea{width:100%;padding:12px;border:1px solid #ccd4c9;border-radius:3px;background:#fcfcf9;color:var(--ink);font-size:14px}textarea{resize:vertical;min-height:110px}.form .actions{margin:20px 0 10px}.form .btn.secondary{background:var(--ink);color:white}.note{font-size:11px!important;color:#687266!important}.status{font-size:13px;color:var(--green);margin-top:12px}.faq{max-width:800px;margin:0 auto}details{padding:20px 0;border-bottom:1px solid var(--line)}summary{font-weight:bold;cursor:pointer}details p{font-size:14px;color:#647065}.closing{background:#dce8cf;padding:45px 0}.closing .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.closing h2{font-size:30px}footer{background:var(--ink);color:#c1d1c6;padding:35px 0 90px;font-size:12px}.foot{display:flex;justify-content:space-between;gap:30px}.mobile-bar{display:none}.modal{border:0;border-radius:8px;max-width:850px;width:90%;padding:15px;background:var(--paper)}.modal::backdrop{background:#000b}.modal img{display:block;width:100%}.modal button{float:right;margin-bottom:10px}.view-flyer{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;font-size:12px}@media(max-width:850px){.links a:not(.btn){display:none}.hero-grid{gap:30px;min-height:auto}.hero-photo{height:500px}.hero-copy{padding:55px 0}.services{grid-template-columns:repeat(2,1fr)}.work-grid,.quote-grid{grid-template-columns:1fr;gap:35px}.section-head{display:block}.section-head p{margin-top:20px}.quote-copy{max-width:550px}section{padding:65px 0}}@media(max-width:600px){.wrap{padding:0 20px}.top{font-size:10px}nav{gap:10px}.brand{font-size:18px}.brand small{font-size:8px;letter-spacing:1.5px}.links .btn{font-size:11px;padding:10px 13px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:45px 0 25px}h1{font-size:54px}.hero-photo{height:330px;margin-bottom:30px}.hero-photo img{border-radius:40px 4px 4px 4px}.photo-tag{left:12px;bottom:12px;padding:12px 18px}.trust{font-size:11px;flex-wrap:wrap;gap:10px 20px}.services{grid-template-columns:1fr}.service{padding:24px}.service .num{margin-bottom:15px}.pair img,.videos video{height:270px}.steps{grid-template-columns:1fr;gap:25px}.steps b{font-size:25px;margin-bottom:5px}.steps p{margin:8px 0}.fields{grid-template-columns:1fr}.form{padding:22px}.form .btn{width:100%}.closing .wrap,.foot{display:block}.closing .btn{margin-top:20px}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;box-shadow:0 -4px 20px #0002;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:8px}.mobile-bar a{flex:1;text-align:center;padding:10px 5px;font-size:13px;font-weight:bold;background:#e9ecdf;border-radius:3px}.mobile-bar a:last-child{background:var(--orange);flex:1.5}.foot p{margin-top:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
.brand img{display:block;width:230px;height:103px;object-fit:contain}nav{padding:8px 0}footer .brand{background:#f6f5ef;border-radius:5px;padding:8px;width:246px}.equipment{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;margin-top:45px;padding-top:35px;border-top:1px solid #cbd4c4}.equipment img{width:100%;height:340px;object-fit:cover;object-position:center 65%;border-radius:5px}.equipment p{color:#5a665d}@media(max-width:600px){.brand img{width:165px;height:74px}.equipment{grid-template-columns:1fr}.equipment img{height:300px}footer .brand{width:181px}}

.links a[aria-current=page]{color:#b54208}.menu-toggle{display:none}.page-hero{background:var(--ink);color:white;padding:65px 0}.page-hero .eyebrow{color:#b7dba5}.page-hero h1{font-size:clamp(42px,5vw,65px);max-width:850px}.page-hero p{max-width:680px;color:#cbd8ce;font-size:18px}.page-hero .wrap{position:relative}.section-head .btn{flex-shrink:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.gallery-grid figure{margin:0;background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}.gallery-grid img{width:100%;height:300px;object-fit:cover}.gallery-grid figcaption{padding:20px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about-grid img{width:100%;height:480px;object-fit:cover;border-radius:6px}.about-grid p{color:#5a665d}.service .checklist{font-size:13px;color:#536254;padding-left:18px}.footer-nav{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px}.footer-credit{margin-top:25px;padding-top:20px;border-top:1px solid #ffffff26;color:#a2b6aa}.privacy{font-size:12px;color:#647065;max-width:700px}.service:target{outline:3px solid var(--orange);outline-offset:4px} .services{scroll-margin-top:130px}.hero-photo img{filter:brightness(.95)}
@media(max-width:1000px){.links{gap:14px;font-size:12px}.brand img{width:190px}.links a:not(.btn){display:block}}@media(max-width:760px){.menu-toggle{display:block;border:1px solid var(--line);background:white;padding:10px 14px;border-radius:4px;font-weight:bold}.links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;font-size:15px}.links.open{display:flex}.links a:not(.btn){display:block;padding:8px}.gallery-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr;gap:30px}.about-grid img{height:340px}.page-hero{padding:45px 0}.page-hero h1{letter-spacing:-1.5px}.footer-nav{gap:15px}.section-head .btn{margin-top:20px}}

/* Mobile readability and contact controls. */
header{background:var(--paper)}.hero-grid>*{min-width:0}.status{overflow-wrap:anywhere}.brand img{max-width:100%}.mobile-bar a{display:flex;align-items:center;justify-content:center;min-height:44px}.menu-toggle{min-height:44px}.skip-link{position:absolute;left:16px;top:-80px;z-index:50;background:white;padding:12px 18px;border-radius:4px;font-weight:bold}.skip-link:focus{top:12px}@media(max-width:600px){h1{font-size:clamp(39px,9vw,54px);letter-spacing:-1.8px}input,select,textarea{font-size:16px}.hero .actions .btn{min-height:48px}.videos{grid-template-columns:1fr}.videos video{height:auto;max-height:420px;object-fit:contain}.foot{padding-bottom:calc(25px + env(safe-area-inset-bottom))}footer{padding-bottom:110px}.photo-tag{max-width:calc(100% - 24px)}.photo-tag strong{font-size:clamp(17px,5vw,22px)}}

/* Standalone brand artwork with consistent responsive sizing. */
.brand{display:block;width:230px;flex-shrink:0;padding:0;background:transparent;line-height:0;border-radius:0}.brand img.clean-logo{display:block;width:100%;max-width:100%;height:auto;object-fit:contain}.foot .brand{width:250px;background:var(--paper);border-radius:6px;padding:12px;align-self:start}header nav{padding:12px 0}@media(max-width:1000px){.brand{width:190px}}@media(max-width:760px){.brand{width:175px}header nav{padding:10px 0}.foot .brand{width:220px}}

/* Latest horizontal orange and navy brand. */
.brand{width:290px;background:#fff;border-radius:4px;overflow:hidden}.brand img.clean-logo{width:100%;height:auto}.foot .brand{width:290px;background:#fff;padding:0}@media(max-width:1000px){.brand{width:240px}}@media(max-width:760px){.brand{width:210px;max-width:calc(100vw - 145px)}.foot .brand{width:260px;max-width:100%}}

/* Approved residential and commercial homepage. */
header{background:#f6f5ef}.brand{width:360px;background:transparent;overflow:visible}.brand img.clean-logo{width:100%;height:auto}.foot .brand{width:300px;background:var(--paper);padding:8px}.approved-hero{padding:0;position:relative;isolation:isolate}.hero-scene{position:absolute;inset:0;z-index:-2}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:center}.approved-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10251cf5 0%,#10251cdd 30%,#10251c60 50%,#10251c05 75%);z-index:-1}.approved-hero .hero-grid{display:block;min-height:590px}.approved-hero .hero-copy{width:48%;max-width:530px;padding:75px 0}.approved-hero h1{font-size:clamp(44px,5vw,68px);color:white;letter-spacing:-2px}.approved-hero .eyebrow{color:white;font-size:12px;letter-spacing:1.8px}.approved-hero p{color:#fff}.approved-hero .actions{margin-bottom:0}#services{padding:55px 0 70px}#services .section-head{display:block;text-align:center;margin-bottom:30px}#services .section-head h2{font-size:clamp(30px,3.2vw,42px)}#services .section-head p{max-width:740px;margin:16px auto 0}.service{position:relative;padding:25px 24px 25px 95px;border-radius:9px}.service h3{font-size:18px}.service p{margin:0 0 14px}.service-icon{position:absolute;left:20px;top:24px;display:grid;place-items:center;width:58px;height:58px;background:#173924;border-radius:50%;color:white}.service-icon svg{width:35px;height:35px}
@media(max-width:1100px){.brand{width:290px}.links{gap:12px}.links .btn{padding:12px 16px}.approved-hero .hero-copy{width:50%}.service{padding:25px}.service-icon{position:static;margin-bottom:15px}}
@media(max-width:760px){.brand{width:270px;max-width:calc(100vw - 145px)}.approved-hero{display:flex;flex-direction:column;background:#10251c}.approved-hero .hero-grid{order:0;min-height:0;width:100%}.approved-hero .hero-copy{width:100%;max-width:100%;padding:40px 0 32px}.approved-hero h1{font-size:clamp(39px,9vw,56px)}.approved-hero p{max-width:100%}.approved-hero:after{display:none}.hero-scene{position:static;order:1;z-index:auto}.hero-scene img{display:block;width:100%;height:auto;object-fit:contain}.approved-hero .actions{gap:10px}.approved-hero .actions .btn{width:100%}#services{padding:38px 0}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service{padding:18px 14px}.service h3{font-size:16px}.service p{font-size:13px}.service a{font-size:12px}.service-icon{width:46px;height:46px;margin-bottom:12px}.service-icon svg{width:29px;height:29px}.foot .brand{max-width:100%}}
@media(max-width:380px){.services{grid-template-columns:1fr}}

/* Review fixes: fit navigation, quote headings, and attachment controls. */
.quote-copy h1{font-size:clamp(32px,3.4vw,46px);line-height:1.15;letter-spacing:-1.5px;margin:0;color:white}.quote-grid>*,.fields>*{min-width:0}#fileList{padding-left:20px;overflow-wrap:anywhere;font-size:13px}#fileList li{margin:8px 0}.remove-file,.clear-files{border:1px solid #ccd4c9;border-radius:4px;background:#f6f5ef;color:var(--ink);padding:8px 12px;cursor:pointer;min-height:44px}.remove-file{margin-left:8px}.clear-files[hidden]{display:none}.btn:disabled{opacity:.65;cursor:wait;transform:none}.status a{text-decoration:underline}.field input[type=file]{max-width:100%}input[type=file]::file-selector-button{padding:10px;border:0;background:#e9ecdf;border-radius:3px;margin-right:8px;cursor:pointer}
@media(min-width:761px) and (max-width:900px){.menu-toggle{display:block;border:1px solid var(--line);background:white;padding:10px 14px;border-radius:4px;font-weight:bold}.links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;font-size:15px}.links.open{display:flex}.links a:not(.btn){display:block;padding:8px}}
@media(max-width:600px){.services{grid-template-columns:1fr}.quote-copy h1{font-size:36px}.form .actions{gap:12px}}

.project-story{padding:28px;margin-top:24px;border:1px solid var(--line);background:white;border-radius:10px}.project-story>h3{font-size:26px;margin:0 0 8px}.project-story>p{max-width:700px}.project-media-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.project-media-pair figure{margin:0;min-width:0}.project-media-pair img,.project-media-pair video{width:100%;height:420px;object-fit:contain;background:#10251c;border-radius:6px;display:block}.project-media-pair figcaption{font-size:13px;font-weight:700;margin-top:10px}.project-details{margin-top:20px}.project-details summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700}.project-clip{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center}.project-clip video{width:100%;height:420px;background:#10251c;object-fit:contain;border-radius:6px}@media(max-width:760px){.project-media-pair,.project-clip{grid-template-columns:1fr}.project-story{padding:20px}.project-media-pair img,.project-media-pair video,.project-clip video{height:360px}}

.sod-feature{max-width:540px;margin:24px auto}.sod-feature video{display:block;width:100%;max-height:650px;background:#10251c;border-radius:8px}.sod-feature .caption{text-align:center}

.work-categories{display:flex;flex-wrap:wrap;gap:12px;padding-top:24px;padding-bottom:12px}.project-story .btn{margin-top:18px}@media(max-width:760px){.work-categories .btn{width:100%}}

.work-categories a[aria-current=page]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Show complete project photos at their natural proportions. */
.project-media-pair{align-items:start}.project-media-pair>figure>img,.project-media-pair>figure>a>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:transparent}.project-media-pair>figure>video,.project-clip video{width:100%;height:auto;max-height:none;background:transparent}

.gallery-selector{padding:30px 0 8px}.gallery-selector h2{font-size:clamp(25px,4vw,36px);margin:0 0 8px;line-height:1.2}.gallery-selector .eyebrow{margin:0 0 8px}.gallery-selector-hint{margin:0 0 20px;max-width:650px}.gallery-choices{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;padding:0}.gallery-choice{display:flex;flex-direction:column;gap:10px;padding:24px;border:2px solid #c64d09;border-radius:12px;background:#fff;color:#10251c;box-shadow:0 5px 14px #10251c0b;transition:transform .18s,border-color .18s}.gallery-choice:hover{transform:translateY(-3px);border-color:#10251c}.gallery-choice strong{font-size:22px;line-height:1.25}.gallery-choice-status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:#934009}.gallery-choice-description{font-size:14px;font-weight:400;line-height:1.5}.gallery-choice-action{margin-top:auto;padding-top:10px;font-size:15px;font-weight:800;color:#a23b00}.gallery-choice[aria-current=page]{border-color:#10251c;background:#10251c;color:white}.gallery-choice[aria-current=page] .gallery-choice-status{color:#ffb47f}.gallery-choice[aria-current=page] .gallery-choice-action{color:white}@media(max-width:760px){.gallery-choices{grid-template-columns:1fr}.gallery-choice{padding:20px}.gallery-choice strong{font-size:21px}}@media(prefers-reduced-motion:reduce){.gallery-choice{transition:none}.gallery-choice:hover{transform:none}}
