
:root{--ink:#161d25;--ink2:#27333e;--red:#b5212d;--red2:#8f1721;--cream:#f6f4f0;--line:#dddfe1;--text:#303943;--muted:#58626d;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}img{max-width:100%;height:auto}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip-link:focus{clip:auto;clip-path:none;width:auto;height:auto;top:8px;right:8px;z-index:9999;padding:12px;background:#fff;color:var(--ink)}:focus-visible{outline:3px solid #f2ad4b;outline-offset:3px}.topbar{background:#0d141b;color:#e5e8eb;font-size:13px}.topbar-inner{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.topbar-inner>div{display:flex;gap:22px}.topbar a{text-decoration:none}.site-header{background:var(--ink);color:#fff;position:relative;z-index:10}.header-inner{min-height:88px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;flex:none}.brand img{width:132px;height:80px;object-fit:contain}.site-nav{display:flex;align-items:center;gap:23px;margin-inline:auto}.site-nav a{text-decoration:none;font-size:15px;font-weight:600;transition:color .2s}.site-nav a:hover,.site-nav a[aria-current=page]{color:#f4777f}.header-call{border:1px solid #72808d;padding:10px 16px;text-decoration:none;white-space:nowrap;font-size:13px}.header-call b{display:block;font-size:16px}.menu-toggle{display:none;background:transparent;border:0;padding:8px}.menu-toggle span{display:block;width:25px;height:2px;background:#fff;margin:5px}.hero{min-height:590px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(270deg,rgba(10,18,25,.94) 0%,rgba(10,18,25,.76) 43%,rgba(10,18,25,.2) 100%)}.hero-inner{position:relative;z-index:1;padding:78px 0 96px}.hero h1{font-size:clamp(46px,6vw,86px);line-height:1.1;margin:10px 0 22px;font-weight:900;max-width:780px}.hero p{max-width:610px;font-size:18px;line-height:1.7;margin:0 0 16px}.hero .hero-lead{font-size:25px;font-weight:700}.eyebrow{display:inline-block;color:var(--red);font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.eyebrow.light{color:#ffafb4}.hero-actions{display:flex;gap:12px;margin-top:31px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:11px 25px;text-decoration:none;font-weight:800;border:2px solid transparent;transition:transform .2s,background .2s;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-red{background:var(--red);color:#fff}.button-red:hover{background:var(--red2)}.button-outline{border-color:#fff;color:#fff;background:transparent}.button-dark{background:var(--ink);color:#fff}.hero-rail{position:absolute;left:30px;bottom:22px;z-index:1;font-size:13px;letter-spacing:.08em}.hero-rail i{display:inline-block;width:20px;height:1px;background:#fff;vertical-align:middle;margin:0 9px}.stats{background:var(--red);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid>div{padding:24px 10px;text-align:center;border-left:1px solid rgba(255,255,255,.2)}.stats-grid strong{display:block;font-size:30px;line-height:1.1}.stats-grid span{font-size:14px}.section{padding:90px 0}.section-heading{max-width:720px;margin-bottom:36px}.section-heading h2,.feature h2,.contact-band h2{font-size:clamp(32px,4vw,48px);line-height:1.2;color:var(--ink);margin:10px 0 14px}.section-heading p{font-size:18px;color:var(--muted);margin:0}.services{background:var(--cream)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{background:#fff;border-top:4px solid var(--red);padding:30px;min-height:205px;box-shadow:0 12px 35px rgba(0,0,0,.04)}.service-number{color:#4c5864;font-size:13px;font-weight:800}.service-card h3{color:var(--ink);font-size:22px;margin:12px 0}.service-card p{line-height:1.7;margin:0}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature-copy p{font-size:18px;line-height:1.9}.feature-photo{position:relative}.feature-photo:before{content:'';position:absolute;inset:20px -18px -18px 18px;background:var(--red)}.feature-photo img{position:relative;width:100%;height:430px;object-fit:cover}.text-link{color:var(--red2);font-weight:800;text-decoration:none}.text-link:hover{text-decoration:underline}.clients{background:#f7f8f9}.client-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.client-list span{display:grid;place-items:center;text-align:center;background:#fff;border:1px solid var(--line);min-height:94px;padding:18px;font-weight:800;color:var(--ink)}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.photo-grid img{width:100%;height:210px;object-fit:cover}.contact-band{background:var(--ink);color:#fff}.contact-band-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-band h2{color:#fff}.contact-band p{font-size:18px;line-height:1.7}.phone-big{display:block;font-size:38px;font-weight:900;direction:ltr;text-align:right;text-decoration:none;margin-top:26px}.email-big{display:block;font-size:19px;text-decoration:none;direction:ltr;text-align:right}.form-card{background:#fff;color:var(--ink);padding:32px;box-shadow:0 16px 45px rgba(0,0,0,.16)}.form-card h3,.form-card h2{margin:0 0 22px;color:var(--ink);font-size:25px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:14px}.contact-form .wide{grid-column:1/-1}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;padding:11px 13px;border:1px solid #bbc4cd;background:#fff;color:var(--ink);border-radius:0}.contact-form .consent{flex-direction:row;align-items:flex-start;font-weight:400;line-height:1.5}.contact-form .consent input{margin-top:5px}.contact-form .consent a{color:var(--red2)}.contact-form button{grid-column:1/-1}.site-footer{background:#0d141b;color:#d9dfe4;padding:62px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.site-footer h2{font-size:19px;color:#fff;margin:0 0 16px}.site-footer p{max-width:350px;line-height:1.8}.site-footer a{display:block;text-decoration:none;margin:7px 0}.site-footer a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #42505c;margin-top:50px;padding-top:17px;font-size:13px}.footer-bottom div{display:flex;gap:24px}.fab-wrap{position:fixed;left:20px;bottom:22px;z-index:40;display:flex;flex-direction:column;gap:8px}.fab{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;text-decoration:none;color:#fff;font-weight:900;box-shadow:0 7px 22px #0004}.fab.wa{background:#167f46}.fab.call{background:var(--red)}.page-hero{background:linear-gradient(110deg,#111c27,#283847);color:#fff;padding:70px 0}.page-hero h1{font-size:clamp(35px,5vw,58px);line-height:1.2;margin:10px 0}.page-hero p{font-size:20px;margin:0}.breadcrumb{font-size:13px;color:var(--muted);display:flex;gap:12px;padding:20px 0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:55px}.article-content{font-size:18px;line-height:1.9;min-width:0}.article-content h2{color:var(--ink);font-size:29px;line-height:1.3;margin:35px 0 12px}.article-content h3{color:var(--ink);font-size:23px}.article-content p{margin:0 0 20px}.article-content li{margin-bottom:8px}.page-visual{margin:0 0 30px}.page-visual img{display:block;width:100%;max-height:470px;object-fit:cover}.sidebar-card{position:sticky;top:20px;background:var(--cream);padding:27px;border-top:4px solid var(--red)}.sidebar-card h2{font-size:24px;margin:0}.sidebar-card p{line-height:1.7}.sidebar-card .button{width:100%;margin-bottom:15px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card{border:1px solid var(--line);box-shadow:0 6px 24px #0000000a}.post-card a{text-decoration:none}.post-card img{width:100%;height:210px;object-fit:cover}.post-card a>div{padding:23px}.post-card h2{font-size:21px;color:var(--ink);line-height:1.35;margin:8px 0}.post-card p{font-size:15px;line-height:1.7}.post-date{font-size:12px;color:var(--muted)}.contact-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.contact-page-grid h2{font-size:33px;margin-top:0}.contact-detail{display:block;font-size:20px;margin:9px 0;color:var(--ink)}iframe{border:0;width:100%;height:290px;margin-top:25px}.legal-container{max-width:780px;margin:auto}.a11y-btn{font-size:16px}@media(max-width:900px){.header-call{display:none}.site-nav{gap:15px}.service-grid,.post-grid{grid-template-columns:repeat(2,1fr)}.client-list,.photo-grid{grid-template-columns:repeat(2,1fr)}.feature-grid,.contact-band-grid,.contact-page-grid{gap:30px}.article-layout{grid-template-columns:1fr}.sidebar{display:none}}@media(max-width:680px){.container{width:min(100% - 30px,1180px)}.topbar-inner{justify-content:center}.topbar-inner>span{display:none}.topbar-inner>div{gap:15px;font-size:11px}.header-inner{min-height:70px;justify-content:space-between}.brand img{width:102px;height:62px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;right:0;left:0;top:100%;background:var(--ink);padding:20px 16px;flex-direction:column;align-items:stretch;box-shadow:0 15px 25px #0004}.site-nav.open{display:flex}.site-nav a{padding:10px}.hero{min-height:600px}.hero-image{object-position:40% center}.hero-shade{background:linear-gradient(270deg,rgba(10,18,25,.9),rgba(10,18,25,.66))}.hero-inner{padding:80px 0}.hero h1{font-size:48px}.hero .hero-lead{font-size:21px}.hero p{font-size:16px}.hero-rail{display:none}.hero-actions{flex-wrap:wrap}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid>div{border-bottom:1px solid #fff4}.section{padding:60px 0}.service-grid,.post-grid,.feature-grid,.contact-band-grid,.contact-page-grid{grid-template-columns:1fr}.feature-photo:before{display:none}.feature-photo img{height:300px}.client-list,.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-grid img{height:150px}.form-card{padding:22px}.contact-form{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;margin-top:35px}.page-hero{padding:55px 0}.article-content{font-size:16px}.phone-big{font-size:30px}}@media(max-width:390px){.hero h1{font-size:41px}.topbar-inner>div{flex-wrap:wrap;justify-content:center}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}
/* Mobile scroll containment and separate vendor-prefixed compatibility rules. */
html,body{max-width:100%;overflow-x:clip}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
.menu-toggle{-webkit-appearance:none;appearance:none}
.post-card p{font-size:16px}
@media(max-width:680px){.hero h1{line-height:1.25}}

.article-navigation{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.article-navigation a{display:block;flex:1 1 220px;padding:14px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.article-navigation a:hover{border-color:var(--red)}.contact-band h2{font-size:clamp(24px,3vw,36px);line-height:1.35}.contact-band h3{margin-bottom:8px}

.service-areas{padding:18px 0 24px;font-size:13px;color:var(--muted)}.service-areas summary{cursor:pointer;font-size:14px;font-weight:700;color:var(--ink)}.service-areas p{line-height:1.8;margin:12px 0 0}

/* The source homepage's first screen: welder, large title, and a compact introduction. */
.site-header,.topbar{background:#050505}
.site-header{position:relative}
.header-inner{min-height:198px}
.brand{position:absolute;right:0;top:30px}
.brand img{width:225px;height:125px;object-fit:contain}
.site-nav{position:absolute;right:245px;top:60px;gap:34px}
.site-nav a{font-size:18px}
.header-call{position:absolute;left:0;top:18px;background:#650500;border:2px solid #a3291d;padding:12px 20px}
.header-call b{font-size:20px;letter-spacing:3px}
.topbar{position:absolute;z-index:3;top:122px;left:max(20px,calc((100vw - 1180px)/2));width:auto}
.topbar-inner{width:auto}
.topbar-inner>span,.topbar-inner a[href^="tel:"]{display:none}
.topbar-inner a[href^="mailto:"]{letter-spacing:3px;font-weight:700}
.hero{min-height:675px}
.hero-image{object-position:center 49%}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.25))}
.hero-inner{min-height:675px;display:flex;align-items:center;justify-content:center;padding:0;text-align:center}
.hero h1{font-size:clamp(48px,8.5vw,122px);line-height:1.1;max-width:none;margin:0;color:#fff;text-shadow:0 3px 12px #0008}
.source-intro{background:#fff;padding:42px 0 30px}
.source-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}
.source-intro-copy{text-align:center;font-size:18px;line-height:1.7}
.source-intro-copy p{margin:8px 0}
.short-rule{display:block;width:46px;height:2px;background:#b83d30;margin:0 auto 15px}
.source-intro-media img{display:block;width:100%;height:236px;object-fit:cover}
.services{background:#fff;padding-top:24px}
.services .section-heading{text-align:center}
.services .section-heading .eyebrow,.services .section-heading p{display:none}
.services .section-heading h2{font-size:30px;color:#b63f31}
@media(max-width:680px){
  .header-inner{min-height:306px}
  .brand{right:6px;top:22px}
  .brand img{width:200px;height:105px}
  .menu-toggle{position:absolute;left:54px;top:64px;background:#b13c2c;padding:8px}
  .header-call{display:block;left:45px;right:0;top:176px;text-align:center;font-size:0;height:61px}
  .header-call b{font-size:18px;line-height:34px}
  .topbar{top:260px;left:0;right:0;width:100%}
  .topbar-inner{justify-content:center}
  .topbar-inner>div{font-size:15px}
  .hero,.hero-inner{min-height:294px}
  .hero-image{object-position:center 48%}
  .hero h1{font-size:42px;line-height:1.25;max-width:300px}
  .source-intro{padding:20px 0 22px}
  .source-intro-grid{grid-template-columns:1fr;gap:18px}
  .source-intro-copy{font-size:17px;line-height:1.5}
  .source-intro-copy p{margin:5px 0}
  .source-intro-media img{height:170px}
  .services{padding-top:12px}
  .services .section-heading h2{font-size:27px}
}

.email-big{min-height:28px;padding-block:3px}
