/* Shared additions for the revised client content. */
.fb-section,.fb-hero{font-family:Poppins,Arial,sans-serif;color:#202536;line-height:1.75;box-sizing:border-box}
.fb-section{padding:64px 24px;background:#fff}
.fb-inner{width:100%;max-width:1140px;margin:0 auto;min-width:0}
.fb-section h2{font-size:32px;line-height:1.3;font-weight:600;margin:0 0 24px;color:#202536}
.fb-section h3{font-size:21px;line-height:1.35;font-weight:600;margin:0 0 12px;color:inherit}
.fb-section p{margin:0 0 20px}.fb-section p:last-child{margin-bottom:0}
.fb-section a{color:#2521ac}.fb-section a:hover{text-decoration:underline}
.fb-section a:focus-visible,.fb-hero a:focus-visible{outline:3px solid #e55600;outline-offset:5px}
.fb-tinted{background:#f6f7f9}
.fb-hero{position:relative;display:flex;align-items:flex-start;min-height:max(calc(100vh - var(--hero-top,132px)),var(--hero-min-height,0px));min-height:max(calc(100dvh - var(--hero-top,132px)),var(--hero-min-height,0px));margin:0;border-radius:0;overflow:hidden;background:#151c30;isolation:isolate}
.fb-hero-photo{position:absolute;inset:0;z-index:0;container-type:size}
.fb-hero-photo img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:var(--hero-focus,50% 35%)}
.fb-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(13,19,39,.86) 0%,rgba(13,19,39,.66) 55%,rgba(13,19,39,.28) 100%);pointer-events:none}
.fb-hero-copy{position:relative;z-index:2;inset:auto;width:100%;max-width:1188px;margin-inline:auto;padding:clamp(64px,7vw,112px) 24px;color:#fff;box-sizing:border-box}
.fb-hero h1{font:600 clamp(30px,3.4vw,46px)/1.2 Poppins,Arial,sans-serif;max-width:850px;margin:0;color:#fff;overflow-wrap:break-word}
.fb-hero .elementor-widget-text-editor{margin:0;color:#fff}
.fb-hero p{margin:20px 0 0;font-family:Poppins,Arial,sans-serif;font-size:17px;font-weight:400;font-style:normal;letter-spacing:0;line-height:1.7;max-width:740px;color:#fff;opacity:1}
@media(min-width:1025px){.fb-hero .fb-desktop-line{display:block}}
.fb-balanced-copy h2,.fb-balanced-copy p{text-wrap:balance}
.fb-hero .fb-sentence-line{display:block}
.fb-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.fb-card{min-width:0;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 6px 22px rgba(20,37,48,.06);display:flex;flex-direction:column}
.fb-card>a{color:inherit;text-decoration:none}.fb-card img{display:block;width:100%;height:220px;object-fit:cover}
.fb-card-body{padding:24px;display:flex;flex-direction:column;flex:1;gap:12px}
.fb-card-body h3,.fb-card-body p{margin:0}.fb-card-body .elementor-widget-text-editor{margin-bottom:8px}
.fb-card-body>a,.fb-card-body>span{margin-top:auto;color:#2521ac;font-size:14px;font-weight:500}
.fb-card-photo{display:block}.fb-card-photo:focus-visible{outline-offset:-5px}
.fb-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:28px}
.fb-project-grid .fb-card img{height:220px}.fb-project-grid .fb-card h3{font-size:19px}
.fb-project-grid .fb-card p:empty{display:none}
.fb-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.fb-split>img{display:block;width:100%;height:auto;border-radius:12px}
.fb-story{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:start}
.fb-story>img{height:auto;width:100%}
.fb-welding{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.fb-welding>img{max-height:600px;object-fit:contain;object-position:left}
.fb-section a.fb-button,.fb-hero a.fb-button{display:inline-block;padding:13px 24px;border-radius:8px;background:#e55600;color:#fff;text-decoration:none;font-size:15px;font-weight:500;margin-top:24px}
.fb-section a.fb-button:hover,.fb-hero a.fb-button:hover{background:#bc4700}
.fb-hero a.fb-button:focus-visible{outline-color:#fff}
html:has(.fb-hero-discover){scroll-behavior:smooth}
section.fb-hero-target{scroll-margin-block-start:calc(var(--dm-header-height,132px) + 24px)}
@media(prefers-reduced-motion:reduce){html:has(.fb-hero-discover){scroll-behavior:auto}}
.fb-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.fb-gallery a{display:block;border-radius:12px;overflow:hidden;background:#f6f7f9}
.fb-gallery img{display:block;width:100%;height:auto}
.fb-quality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.fb-quality-grid h3{font-size:19px;color:#2521ac}.fb-quality-grid p{font-size:15px}
.fb-label{display:inline-block;border-radius:6px;background:#e55600;color:#fff;font-size:13px;font-weight:500;padding:4px 14px;margin-bottom:18px}
.fb-contact-list{list-style:none;margin:28px 0 0;padding:22px 0 0;border-top:1px solid #e7eaee}
.fb-contact-list li+li{margin-top:16px}.fb-contact-list a{color:#202536;overflow-wrap:anywhere}
.fb-contact-list a{display:inline-block;position:relative;padding-left:32px}
.fb-contact-list a::before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;background:center/contain no-repeat}
.fb-contact-list a[href^="mailto:"]::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23e55600%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%206%209%207%209-7%22%2F%3E%3C%2Fsvg%3E")}
.fb-contact-list a[href^="tel:"]::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23e55600%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.9v3a2%202%200%200%201-2.2%202%2019.8%2019.8%200%200%201-8.6-3.1%2019.5%2019.5%200%200%201-6-6%2019.8%2019.8%200%200%201-3.1-8.7A2%202%200%200%201%204.1%202h3a2%202%200%200%201%202%201.7c.1%201%20.4%201.9.7%202.8a2%202%200%200%201-.4%202.1L8.1%209.9a16%2016%200%200%200%206%206l1.3-1.3a2%202%200%200%201%202.1-.4c.9.3%201.8.6%202.8.7a2%202%200%200%201%201.7%202z%22%2F%3E%3C%2Fsvg%3E")}
.fb-contact-list a[href^="https://maps.google.com"]::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23e55600%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2010c0%207-9%2012-9%2012S3%2017%203%2010a9%209%200%201%201%2018%200Z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E")}
.fb-split iframe{width:100%;height:370px;border:0;border-radius:12px}
header img[src$="logo-header.svg"]{width:240px;height:auto}
footer.elementor-2761 .elementor-element.elementor-element-37affb28{width:240px;max-width:calc(100% - 16px);--container-widget-width:240px}
footer.elementor-2761 .elementor-element.elementor-element-37affb28 img{display:block;width:100%;max-width:100%;height:auto}
footer.elementor-2761 .elementor-element.elementor-element-6aa2a1c>.elementor-widget-wrap{display:flex;flex-direction:column;align-items:flex-start;align-content:flex-start;gap:16px}
footer.elementor-2761 .elementor-element.elementor-element-37affb28>.elementor-widget-container{margin:0}
footer.elementor-2761 .elementor-element.elementor-element-6b1e1d52{width:100%;max-width:100%;--icon-size:20px}
footer.elementor-2761 .elementor-element.elementor-element-6b1e1d52 .elementor-social-icons-wrapper{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}
footer.elementor-2761 .elementor-element.elementor-element-6b1e1d52 .elementor-social-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0}
/* Keep the original certificate frames (34px at 1182:1563 plus 22px padding). */
footer .dm-fc-logos img{width:calc(34px * 1182 / 1563 + 22px);height:48px;padding:2px;object-fit:contain;object-position:center;flex-shrink:0}
@media(max-width:1024px){.fb-hero-photo img{object-position:var(--hero-focus-mobile,var(--hero-focus,50% 35%))}.fb-hero::after{background:linear-gradient(90deg,rgba(13,19,39,.82),rgba(13,19,39,.66))}.fb-project-grid,.fb-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fb-split{gap:30px}.fb-story{grid-template-columns:minmax(0,1fr) minmax(0,.7fr)}.fb-service-grid{gap:20px}}
@media(max-width:767px){
.fb-section{padding:40px 20px}.fb-section h2{font-size:27px}.fb-section h3{font-size:21px}
.fb-hero-photo img{object-position:var(--hero-focus-mobile,var(--hero-focus,50% 35%))}
.fb-hero-copy{padding:40px 20px}.fb-hero h1{font-size:29px;line-height:1.25}.fb-hero p{font-size:15px;margin-top:16px}
.fb-service-grid{grid-template-columns:minmax(0,1fr)}.fb-card img{height:auto;aspect-ratio:16/10;object-fit:cover}
.fb-split,.fb-story,.fb-welding{grid-template-columns:minmax(0,1fr);gap:28px}.fb-story>img{max-width:440px}.fb-welding>img{max-height:480px;object-position:center}
.fb-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fb-project-grid .fb-card img{height:auto;aspect-ratio:4/3}.fb-project-grid .fb-card-body{padding:16px}.fb-project-grid .fb-card h3{font-size:17px}
.fb-gallery{grid-template-columns:minmax(0,1fr);gap:20px}.fb-quality-grid{grid-template-columns:minmax(0,1fr);gap:24px}
.fb-split iframe{height:300px}
}
@media(max-width:359px){.fb-hero h1{font-size:26px}.fb-project-grid{grid-template-columns:minmax(0,1fr)}}
.fb-card-body{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:767px){.fb-project-grid{grid-template-columns:minmax(0,1fr)}.fb-project-grid .fb-card h3{font-size:21px}.fb-project-grid .fb-card-body{padding:24px}}
.fb-story>img{height:520px;object-fit:cover;object-position:22% center}
@media(max-width:767px){.fb-story>img{height:480px}}
.fb-gallery a{justify-self:center;max-width:100%;width:fit-content}
.fb-gallery img{width:auto;max-width:100%}

@media(max-width:359px){.cky-modal .cky-preference-center{max-width:calc(100% - 32px)}header.elementor-2758 .elementor-element.elementor-element-626f2aa2 ul.elementor-icon-list-items.elementor-inline-items{margin-inline:0;width:100%}footer .elementor-element-7daf6b71 .elementor-icon-list-text{min-width:0;overflow-wrap:anywhere}}

/* Fill the first screen below the actual header, while allowing text to grow. */
.dm-home .fb-hero{min-height:calc(100vh - var(--hero-top,132px));min-height:calc(100dvh - var(--hero-top,132px))}
.dm-home .fb-hero-photo img{object-position:var(--hero-focus-home-mobile,var(--hero-focus,50% 35%))}
@container(min-aspect-ratio:5/6){.dm-home .fb-hero-photo img{object-position:var(--hero-focus,50% 35%)}}
.dm-home .fb-hero-copy{text-align:start}
.dm-home .fb-hero h1{max-width:760px;font-size:clamp(32px,3.8vw,52px)}
.dm-home .fb-hero p{max-width:620px}
.fb-hero p.fb-hero-eyebrow{margin:0 0 16px;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#ffab70;text-wrap:wrap}
@media(max-width:767px){.fb-hero-copy{padding-block:32px}.dm-home .fb-hero h1{font-size:29px}}
@media(max-width:359px){.dm-home .fb-hero h1{font-size:26px}.fb-hero p{font-size:14px}}
@media(max-height:520px){.fb-hero-copy{padding-block:12px}.fb-hero h1{font-size:26px;line-height:1.15}.fb-hero p{margin-top:12px;font-size:14px;line-height:1.5}.fb-hero p.fb-hero-eyebrow{margin:0 0 8px;font-size:10px}.fb-hero a.fb-button{margin-top:16px;padding:10px 20px;min-height:44px;box-sizing:border-box;line-height:24px}}

.fb-service-section .fb-service-content{min-width:0;max-width:780px;overflow-wrap:anywhere}
.fb-service-section .fb-service-prose{color:#444b59;overflow-wrap:anywhere}
.fb-service-section .fb-service-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
.fb-service-section .fb-service-photo{display:block;width:100%;max-width:480px;justify-self:center;border-radius:8px;overflow:hidden}
.fb-service-section .fb-service-photo img{display:block;width:100%;height:auto;max-height:480px;object-fit:cover;border-radius:8px}
.fb-service-section .fb-service-logo{display:block;width:240px;max-width:100%;height:auto;margin-bottom:24px}
.fb-service-section .fb-service-eyebrow{font-size:14px;font-weight:500;color:#2521ac;margin-bottom:14px}
.fb-service-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:18px}
.fb-service-list li{position:relative;padding-inline-start:24px;overflow-wrap:anywhere}
.fb-service-list li::before{content:"";position:absolute;inset-inline-start:0;top:.6em;width:8px;height:8px;border-radius:50%;background:#e55600}
.dm-service-page .fb-gallery a{border-radius:8px}
@media(max-width:1024px){.fb-service-section .fb-service-split{gap:32px}}
@media(max-width:767px){.fb-service-section .fb-service-split{grid-template-columns:minmax(0,1fr);gap:28px}.fb-service-section .fb-service-photo{max-width:480px}.fb-service-section .fb-service-photo img{max-height:440px}}

/* Orange masthead and blue contact strip, following the client's header reference. */
header.elementor-2758 .elementor-element.elementor-element-7d6ee42b:not(.elementor-motion-effects-element-type-background){background:#ff6b00;padding:32px 24px 20px;box-shadow:none}
header.elementor-2758 .elementor-element.elementor-element-7d6ee42b>.elementor-container{max-width:1140px;align-items:flex-end;gap:32px}
header.elementor-2758 .elementor-element.elementor-element-17199744{width:360px;flex:0 0 360px;min-width:0}
header.elementor-2758 .elementor-element.elementor-element-225662d0{max-width:360px;--container-widget-width:360px}
header.elementor-2758 .elementor-element.elementor-element-225662d0 img{width:100%;height:auto}
header.elementor-2758 .elementor-element.elementor-element-1c977e24{min-width:0}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main>.elementor-nav-menu{justify-content:flex-end;flex-wrap:nowrap}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item{color:#fff;font-size:15px;font-weight:400;padding:12px 14px 2px}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item.elementor-item-active,header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item:hover,header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item:focus{color:#fff}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .sub-arrow svg{fill:#fff}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item::after{background:#fff}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item.elementor-item-active::after{opacity:0}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--dropdown{background:#2521ac}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--dropdown a{color:#fff}
header.elementor-2758 .elementor-element.elementor-element-51ad0103:not(.elementor-motion-effects-element-type-background){padding-inline:24px;background:#2521ac}
header.elementor-2758 .elementor-element.elementor-element-51ad0103>.elementor-container{max-width:1140px}
header.elementor-2758 .elementor-element.elementor-element-70554642 .elementor-icon-list-item>a{min-height:40px;font-size:13px}
header.elementor-2758 .elementor-element.elementor-element-70554642 .elementor-icon-list-icon{font-size:16px;--e-icon-list-icon-size:16px}
header.elementor-2758 .elementor-element.elementor-element-70554642 .elementor-icon-list-icon i{color:#ff9d57}
header.elementor-2758 .elementor-element.elementor-element-70554642 .elementor-icon-list-icon svg{fill:#ff9d57}
header.elementor-2758 .elementor-element.elementor-element-6e302ceb .elementor-social-icon{width:40px;height:40px;padding:0;--icon-size:14px}
header.elementor-2758 a:focus-visible,header.elementor-2758 .elementor-menu-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:1199px) and (min-width:1025px){
header.elementor-2758 .elementor-element.elementor-element-17199744{width:300px;flex-basis:300px}
header.elementor-2758 .elementor-element.elementor-element-111fbc33 .elementor-nav-menu--main .elementor-item{font-size:14px;padding-inline:10px}
}
@media(max-width:1024px){
header.elementor-2758 .elementor-element.elementor-element-7d6ee42b:not(.elementor-motion-effects-element-type-background){padding:24px 20px}
header.elementor-2758 .elementor-element.elementor-element-7d6ee42b>.elementor-container{align-items:center;gap:16px;flex-wrap:nowrap}
header.elementor-2758 .elementor-element.elementor-element-17199744{width:300px;flex:0 1 300px}
header.elementor-2758 .elementor-element.elementor-element-5700106a .elementor-menu-toggle{color:#fff;fill:#fff;background:#2521ac;min-width:44px;min-height:44px;border-radius:8px}
header.elementor-2758 .elementor-element.elementor-element-5700106a .elementor-menu-toggle svg,header.elementor-2758 .elementor-element.elementor-element-5700106a .elementor-menu-toggle svg path{color:#fff;fill:#fff}
header.elementor-2758 .elementor-element.elementor-element-19e07e2f:not(.elementor-motion-effects-element-type-background){background:#2521ac}
header.elementor-2758 .elementor-element.elementor-element-626f2aa2{width:100%;max-width:100%;--container-widget-width:100%}
header.elementor-2758 .elementor-element.elementor-element-626f2aa2 .elementor-icon-list-items.elementor-inline-items{justify-content:center;margin-inline:0}
}
@media(max-width:767px){
header.elementor-2758 .elementor-element.elementor-element-7d6ee42b:not(.elementor-motion-effects-element-type-background){padding:16px}
header.elementor-2758 .elementor-element.elementor-element-17199744{width:240px;flex:0 1 240px}
}
