
:root{--navy:#303030;--ink:#303030;--orange:#b92732;--cream:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--cream)}a{color:inherit}header{background:var(--cream);padding:22px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dddddd;gap:25px}.brand{text-decoration:none;font-weight:900;font-size:25px;letter-spacing:-1px}.brand span{color:var(--orange)}.brand small{display:block;font-size:9px;letter-spacing:2.7px;margin-top:5px}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:13px;font-weight:bold}.button{background:var(--orange);color:white;padding:17px 23px;text-decoration:none;display:inline-flex;align-items:center;gap:24px;font-size:13px;font-weight:bold;border:0}.button:hover{background:#941e28}.hero{background:var(--navy);color:white;display:grid;grid-template-columns:1.1fr 1fr;min-height:640px}.hero-copy{padding:80px 0 70px 11%;max-width:680px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:25px;height:2px;background:var(--orange)}h1{font-size:clamp(48px,5.4vw,80px);line-height:1.02;letter-spacing:-3px;margin:30px 0}h1 em{font-style:normal;color:#f07c85}.hero p{font-size:17px;line-height:1.75;max-width:440px;color:#e2e2e2;margin-bottom:30px}.hero-art{position:relative;overflow:hidden;background:#3b3b3b;min-height:420px}.hero-art svg{width:100%;height:100%;position:absolute;inset:0}.art-label{position:absolute;bottom:40px;left:38px;border-left:2px solid var(--orange);padding-left:15px;line-height:1.6;font-size:11px;letter-spacing:2px}.strip{display:grid;grid-template-columns:repeat(3,1fr);padding:28px 6%;background:#f0f0f0;gap:25px}.strip div{font-size:13px}.strip strong{display:block;font-size:18px;margin-bottom:7px}.section{padding:90px 6%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:45px}h2{font-size:clamp(32px,3.5vw,50px);line-height:1.12;letter-spacing:-1.6px;margin:20px 0}p{line-height:1.75}.muted{color:#606060}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d0d0d0}.service{padding:32px 25px 20px 0;border-bottom:1px solid #d0d0d0}.number{font-size:12px;color:var(--orange);font-weight:bold}h3{font-size:21px;margin:18px 0 12px}.service p{font-size:14px;color:#606060;max-width:310px}.fabrication{background:#ededed;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.fabrication .big{font-size:clamp(85px,12vw,165px);font-weight:900;letter-spacing:-9px;color:var(--navy);line-height:.9}.big small{font-size:13px;letter-spacing:3px;display:block;margin-top:25px}.fabrication p{max-width:480px}.audience{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.audience span{border:1px solid #b5b5b5;padding:12px 16px;font-size:12px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.process p{font-size:14px;color:#606060}.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1.3fr 1fr;gap:60px}.contact p{color:#e2e2e2;max-width:480px}.contact-card{border:1px solid #777777;padding:30px}.contact-card a.phone{font-size:clamp(24px,3vw,36px);display:block;margin:15px 0 25px;text-decoration:none}.contact-card p{font-size:14px}.contact-card .button{width:100%;justify-content:space-between}footer{padding:30px 6%;display:flex;justify-content:space-between;gap:20px;font-size:12px}.mobile-phone{display:none}a:focus-visible{outline:3px solid #b92732;outline-offset:5px}@media(max-width:800px){header{padding:20px 6%}nav a:not(.button){display:none}nav .button{padding:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 6% 45px}h1{letter-spacing:-2px}.hero-art{min-height:320px}.strip{grid-template-columns:1fr;gap:22px}.intro,.fabrication,.contact{grid-template-columns:1fr;gap:30px}.section{padding:60px 6%}.services{grid-template-columns:1fr 1fr}.fabrication .big{font-size:110px}.process{grid-template-columns:1fr;gap:12px}footer{flex-direction:column}}@media(max-width:450px){.services{grid-template-columns:1fr}.brand{font-size:22px}nav .button{font-size:11px;gap:10px}}
.reviews{background:#f0f0f0}.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.review-empty{border:1px solid #c8c8c8;padding:35px;background:var(--cream)}.review-empty .quote-mark{font-size:70px;line-height:1;color:var(--orange);font-family:Georgia,serif}.review-empty h3{margin-top:0}.review-empty p{color:#606060;font-size:15px}.review-empty a{font-weight:bold;text-underline-offset:5px}@media(max-width:800px){.reviews-layout{grid-template-columns:1fr;gap:25px}}
header{position:relative}nav{gap:23px}nav a[aria-current="page"]{color:var(--orange)}.menu-toggle{display:none;background:transparent;border:1px solid #bbbbbb;padding:10px;font:inherit}.photo{margin:0;position:relative;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;display:block}.photo figcaption{position:absolute;bottom:0;left:0;background:#303030d9;color:#eeeeee;font-size:10px;padding:8px 12px;letter-spacing:.3px}.hero-art .photo{height:100%}.page-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:white;min-height:400px}.page-hero>div{padding:65px 12%}.page-hero h1{font-size:clamp(40px,4.8vw,68px)}.page-hero p{color:#e2e2e2;max-width:470px}.page-hero .photo{min-height:360px}.feature-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.feature-link{padding:30px;border:1px solid #d0d0d0;text-decoration:none}.feature-link h3{margin:0 0 15px}.feature-link p{font-size:14px}.feature-link span{font-size:13px;font-weight:bold;color:var(--orange)}.editorial-photo{height:380px;margin-top:35px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact-light{background:var(--navy);color:white}.contact-light p{color:#e2e2e2}.details-list{padding:0;list-style:none}.details-list li{padding:18px 0;border-bottom:1px solid #d0d0d0;line-height:1.6}.details-list strong{display:block}.inner-note{font-size:12px;color:#606060}.reviews .review-empty{max-width:660px;margin:35px auto}.reviews{text-align:center}.reviews .eyebrow{justify-content:center}footer a:not(.brand){text-underline-offset:4px}@media(max-width:900px){.brand{font-size:21px}nav{gap:15px}nav a{font-size:12px}}@media(max-width:800px){.menu-toggle{display:block}header{flex-wrap:wrap}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a:not(.button){display:block;padding:14px 0;border-top:1px solid #dddddd}nav .button{padding:15px;margin-top:10px}.page-hero,.contact-layout{grid-template-columns:1fr}.page-hero>div{padding:50px 6%}.page-hero .photo{height:280px;min-height:0}.hero-art .photo{height:320px}.feature-links{grid-template-columns:1fr}.editorial-photo{height:280px}}

.project-preview,.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-preview .photo{height:320px}.project-heading{background:var(--navy);color:white;padding-bottom:60px}.project-heading p{max-width:600px;color:#e2e2e2}.project-section{padding-top:45px}.project-card{margin:0}.project-card>figcaption{padding:16px 0;font-weight:bold;font-size:14px}.photo-open{padding:0;border:0;width:100%;height:330px;cursor:zoom-in;background:var(--navy);text-align:left}.photo-open img{transition:transform .25s}.photo-open:hover img{transform:scale(1.04)}.enlarge{position:absolute;bottom:12px;right:12px;padding:8px 12px;background:var(--navy);color:white;font-size:12px}.photo-dialog{border:0;padding:50px 20px 16px;background:var(--navy);color:white;max-width:94vw;max-height:94vh;width:1000px}.photo-dialog::backdrop{background:#202020df}.photo-dialog img{display:block;width:100%;max-height:75vh;object-fit:contain}.photo-dialog p{text-align:center;margin:12px 0 0}.photo-close{position:absolute;top:10px;right:15px;background:transparent;color:white;border:1px solid #aaaaaa;padding:8px 12px;cursor:pointer}button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}@media(max-width:1000px){nav{gap:14px}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.project-preview{grid-template-columns:1fr}.project-preview .photo{height:300px}}@media(max-width:550px){.project-gallery{grid-template-columns:1fr}.photo-open{height:330px}}

.brand-logo{display:block;width:220px;height:auto;max-width:100%}.brand small{font-family:Arial,Helvetica,sans-serif;color:#555;font-size:8px;letter-spacing:1.8px}.fabrication-photo{height:390px}.hero .eyebrow{line-height:1.6;letter-spacing:1.3px}footer .brand-logo{width:180px}@media(max-width:900px){header .brand-logo{width:190px}}@media(max-width:450px){header .brand-logo{width:170px}.brand small{font-size:7px;letter-spacing:1.2px}}
/* Consistent image frames with subject-aware focal points. */
.photo{min-width:0;background:#ededed}.photo img{object-position:50% 50%}.hero-art,.page-hero>.photo{min-width:0}.hero-art>.photo{position:absolute;inset:0;height:100%}.hero-art>.photo img,.page-hero>.photo img{position:absolute;inset:0;width:100%;height:100%}.photo img[src$="free-flow-truck.jpg"]{object-position:50% 19%}.photo img[src$="sheet-metal-shop.jpg"]{object-position:50% 52%}.photo img[src$="ductwork-detail.jpg"],.photo img[src$="interior-mechanical.jpg"]{object-position:50% 28%}.photo img[src$="rooftop-equipment.jpg"]{object-position:50% 27%}.photo img[src$="commercial-ductwork.jpg"]{object-position:50% 38%}.photo img[src$="overhead-ductwork.jpg"]{object-position:50% 36%}.project-preview .photo{height:auto;aspect-ratio:4/3}.project-gallery .photo-open{height:auto;aspect-ratio:4/3;display:block;background:#ededed}.project-gallery .photo-open img{object-fit:contain;object-position:50% 50%}.project-gallery .photo-open img[src$="free-flow-truck.jpg"]{object-fit:cover;object-position:50% 19%}.project-gallery .photo-open:hover img{transform:none}.enlarge{background:#303030e6}.photo-dialog img{height:auto;object-fit:contain;object-position:center}.fabrication-photo{height:auto;aspect-ratio:4/3}.photo figcaption{max-width:100%;line-height:1.5}.editorial-photo img{object-position:50% 38%}@media(max-width:800px){.hero-art>.photo{height:100%}.page-hero>.photo{height:auto;aspect-ratio:4/3;min-height:0}.hero-art{min-height:0;height:auto;aspect-ratio:4/3}.project-preview .photo{height:auto;aspect-ratio:4/3}.fabrication-photo{height:auto;aspect-ratio:4/3}}@media(max-width:550px){.project-gallery .photo-open{height:auto;aspect-ratio:4/3}}

.about-hero .photo img[src$="free-flow-truck.jpg"]{object-position:50% 9%}@media(max-width:800px){.about-hero .photo img[src$="free-flow-truck.jpg"]{object-position:50% 0%}}

.text-hero{grid-template-columns:1fr;min-height:0}.text-hero>div{padding:65px 6%}.fabrication-photo img[src$="fabricated-ductwork-installation.jpg"]{object-position:center}

.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:550px){.project-gallery{grid-template-columns:1fr}}

/* Restore the original company-name lettering in red. */
.brand{color:var(--orange)}
