:root{--red:#c71920;--dark:#18191b;--gray:#626467;--light:#f3f3f1;--line:#dededb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#fff;color:var(--dark);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(1180px,88%);margin:auto}p{font-size:15px;line-height:1.85;color:var(--gray);margin:0 0 20px}h1,h2,h3{margin:0 0 22px;line-height:1.09;letter-spacing:-1.7px}h1{font-size:clamp(44px,4.5vw,68px);font-weight:800}h2{font-size:clamp(32px,3.2vw,47px)}h3{font-size:24px;letter-spacing:-.7px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2985cf;outline-offset:4px}.skip{position:absolute;top:-60px;left:10px;background:white;padding:15px;z-index:20}.skip:focus{top:0}.utility{background:var(--dark);color:#fff}.utility>.wrap{display:flex;justify-content:space-between;padding:11px 0;font-size:9px;letter-spacing:1.2px;font-weight:bold}header{background:white}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:18px 0}.brand{display:flex;align-items:center;gap:12px}.brand img{height:67px;width:67px}.brand>span{font-size:34px;font-weight:900;letter-spacing:.3px;line-height:1}.brand small{display:block;font-size:9px;letter-spacing:1.5px;margin-top:7px}nav{display:flex;gap:29px}nav a{font-size:12px;font-weight:bold;padding:13px 0;position:relative}nav a[aria-current=page]:after{content:'';position:absolute;height:3px;bottom:1px;left:0;right:0;background:var(--red)}nav a:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--red);color:#fff;padding:19px 25px;border:0;border-radius:1px;font-weight:bold;font-size:12px}.button span{font-size:19px;line-height:1}.button:hover{background:#a90e15}.header-quote{padding:16px 20px;gap:20px}.menu-toggle{display:none}.hero{position:relative;min-height:590px;display:flex;align-items:center;background:var(--dark);isolation:isolate}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 31%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101214f2 0%,#101214c9 30%,#10121450 62%,#10121410 100%);z-index:-1}.hero-content{padding:60px 0 80px;color:#fff}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:1.8px;line-height:1.6;margin-bottom:21px;color:var(--red)}.hero .eyebrow{color:#fff}.hero h1{max-width:710px}.hero h1 span{color:#ff6469}.hero-content>p:not(.eyebrow){color:#e7e7e6;font-size:16px;max-width:435px;line-height:1.7;margin:24px 0 28px}.hero-actions{display:flex;gap:27px;align-items:center}.hero-call{font-size:12px;font-weight:bold;border-bottom:1px solid #ffffff70;padding-bottom:5px}.hero-caption{position:absolute;bottom:20px;right:6%;font-size:8px;letter-spacing:1.3px;color:#fff}.facts{background:var(--light);border-bottom:1px solid var(--line)}.facts>.wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:26px 0}.facts span{font-size:11px;color:var(--gray);padding:0 30px;border-right:1px solid #c9cbc6}.facts span:first-child{padding-left:0}.facts span:last-child{border:0}.facts b{display:block;font-size:19px;color:var(--dark);margin-bottom:6px;letter-spacing:-.4px}.section{padding:80px max(6%,calc((100vw - 1180px)/2))}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:36px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:430px;justify-self:end;margin:0;font-size:15px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.services-grid article{border:1px solid var(--line);padding:25px 22px 22px;position:relative;background:white}.service-no{display:block;color:#dbdcda;font-size:45px!important;font-weight:800;letter-spacing:-2px;margin-bottom:25px;line-height:1.1}.services-grid h3{font-size:26px;margin-bottom:15px}.services-grid article>p:last-of-type{font-size:13px;line-height:1.75;min-height:91px}.service-link{display:block;font-size:10px;font-weight:bold;border-top:1px solid var(--line);padding-top:17px;line-height:1.6}.service-link:hover{color:var(--red)}.about{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;background:var(--light)}.about-art{position:relative;padding:0 20px 20px 0}.about-art>img{display:block;width:100%;height:420px;object-fit:cover;object-position:42% center}.about-art>span{display:block;background:var(--red);color:#fff;padding:20px 24px;position:absolute;bottom:0;right:0;font-size:9px;font-weight:bold;letter-spacing:1.2px}.about-art>.company-logo{background:white;object-fit:contain;padding:40px}.inline-link{display:inline-block;font-size:12px;font-weight:bold;padding-bottom:6px;border-bottom:1px solid var(--dark);margin-top:10px}.inline-link:hover{color:var(--red)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.photo-button{padding:0;border:0;background:var(--light);text-align:left;overflow:hidden;color:var(--dark)}.photo-button img{display:block;width:100%;height:320px;object-fit:cover;object-position:center 56%;transition:transform .25s}.photo-button:hover img{transform:scale(1.025)}.photo-button>span{display:flex;justify-content:space-between;padding:19px 20px;font-size:12px;gap:15px}.photo-button b{font-size:10px;color:var(--red);white-space:nowrap}.area{display:grid;grid-template-columns:1fr 1fr;gap:75px;background:#efefec;border-top:1px solid var(--line)}.area-details{border-left:1px solid #d2d3ce;padding-left:55px}.location{display:block;font-size:40px;color:var(--red);margin-bottom:20px}.area-details h3{font-size:29px;line-height:1.2}.cta{background:var(--dark);padding:60px 0;color:white}.cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta .eyebrow{color:#ccc}.cta h2{font-size:30px;letter-spacing:-.8px;margin-bottom:0;line-height:1.3}.cta h2 span{color:#ff676c}footer{background:#101113;color:#fff;padding:46px 0 24px}.footer-main{display:grid;grid-template-columns:1.4fr .7fr 1.1fr;gap:40px}.footer-brand strong{font-size:15px}.footer-main p{color:#a6a7a8;font-size:12px;margin-top:13px;line-height:1.75}.footer-main h3{font-size:12px;letter-spacing:.5px;margin-bottom:17px}.footer-main a{display:block;color:#bcbec0;font-size:12px;margin-bottom:13px;overflow-wrap:anywhere}.footer-main a:hover{color:white}.copyright{border-top:1px solid #ffffff20;margin-top:35px;padding-top:22px;font-size:10px;color:#a6a7a8}.copyright a{float:right}.page-banner{background:var(--dark);color:#fff;padding:65px 0;background-image:linear-gradient(90deg,#121416ef,#121416bd),url('assets/blue-truck.webp');background-size:cover;background-position:center 50%}.page-banner h1{font-size:clamp(38px,4vw,58px);max-width:900px}.page-banner .eyebrow{color:#ff7479}.page-banner p:last-child{margin:0;color:#ddd;font-size:15px}.project-section,.values{background:var(--light)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:35px}.project-grid article{border-top:2px solid var(--red);padding-top:25px}.project-grid article>span{font-size:10px;color:var(--red);font-weight:bold;display:block;margin-bottom:18px}.project-grid h3{font-size:23px}.project-grid p{font-size:14px}.steps{list-style:none;padding:0;margin:35px 0 0;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps li{counter-increment:step;padding-top:25px;border-top:1px solid var(--line)}.steps li:before{content:'0'counter(step);font-size:12px;color:var(--red);font-weight:bold;display:block;margin-bottom:15px}.steps b{display:block;font-size:18px;margin-bottom:10px}.steps span{font-size:13px;color:var(--gray);line-height:1.7}.values h2{font-size:25px;letter-spacing:-.7px}.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.contact>div>p:not(.eyebrow){max-width:350px}.contact h2{font-size:49px}.contact h2>span{color:var(--red)}.contact-phone{display:block;font-weight:bold;font-size:26px;margin:30px 0 15px}.contact-email{display:inline-block;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:5px;overflow-wrap:anywhere}.contact-foot{display:block;font-size:9px;letter-spacing:1px;margin-top:40px;color:var(--gray)}form{padding:35px;background:var(--light);border-top:3px solid var(--red)}form h3{font-size:27px;letter-spacing:-1px;margin-bottom:28px}.row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:11px;font-weight:bold;margin-bottom:20px}label small{color:var(--gray);font-weight:normal}input,select,textarea{display:block;width:100%;border:1px solid #cfd1cc;background:#fff;color:var(--dark);padding:12px 11px;font-size:12px;margin-top:8px;border-radius:0}input{min-width:0}textarea{resize:vertical}form .button{width:100%}.form-note,#status{font-size:11px;line-height:1.6;margin:14px 0 0}#status:empty{display:none}dialog{border:0;background:#17191c;padding:52px 16px 16px;max-width:95vw;max-height:95vh;color:white}dialog::backdrop{background:#000c}dialog img{display:block;max-width:88vw;max-height:78vh;object-fit:contain}.close-photo{position:absolute;right:18px;top:15px;border:0;background:transparent;color:white;font-size:14px}@media(max-width:1000px){.wrap{width:90%}.header-inner{gap:17px}.brand img{width:55px;height:55px}.brand>span{font-size:28px}.brand small{font-size:8px}nav{gap:18px}.header-quote{font-size:11px;padding:14px}.hero{min-height:550px}.hero h1{font-size:54px}.section{padding:65px 5%}.services-grid{gap:13px}.services-grid article{padding:22px 15px}.services-grid h3{font-size:23px}.services-grid article>p:last-of-type{min-height:115px}.about{gap:40px}.about-art>img{height:380px}.contact{gap:35px}form{padding:25px}.footer-main{gap:30px}.gallery img{height:280px}.section-heading{gap:45px}.contact-phone{font-size:23px}.row{grid-template-columns:1fr;gap:0}}@media(max-width:700px){.utility>.wrap{padding:10px 0;justify-content:center;font-size:8px;letter-spacing:1px}.utility a{display:none}.header-inner{padding:13px 0;position:relative;flex-wrap:wrap}.brand img{width:49px;height:49px}.brand>span{font-size:27px}.brand small{font-size:7px;letter-spacing:1.2px}.header-quote{display:none}.menu-toggle{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:bold;background:white;border:1px solid var(--line);padding:11px 13px;margin-left:auto}.menu-toggle span{font-size:16px}nav{display:none;flex-basis:100%;border-top:1px solid var(--line);padding-top:10px;gap:0;flex-direction:column}nav.is-open{display:flex}nav a{padding:14px 8px}nav a[aria-current=page]:after{width:25px;left:8px;bottom:6px}.hero{min-height:580px;align-items:flex-start}.hero-image{object-position:63% 39%}.hero:after{background:linear-gradient(90deg,#0d1013e3,#0d1013b3 60%,#0d101355)}.hero-content{padding-top:52px;padding-bottom:65px}.hero h1{font-size:clamp(35px,8.2vw,56px);letter-spacing:-1.6px;line-height:1.13}.hero-content>p:not(.eyebrow){font-size:14px;max-width:300px}.hero .eyebrow{font-size:9px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-caption{font-size:7px;left:5%;right:auto;bottom:19px;letter-spacing:.7px}.button{padding:17px 20px;font-size:12px}.facts>.wrap{grid-template-columns:1fr;padding:5px 0}.facts span{border:0;border-bottom:1px solid #d7d8d4;padding:17px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px}.facts span:last-child{border:0}.facts b{font-size:15px;margin:0;white-space:nowrap}.section{padding:50px 5%}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px;max-width:none;font-size:14px}h2{font-size:35px;letter-spacing:-1.3px}.eyebrow{font-size:9px;margin-bottom:17px;letter-spacing:1.5px}.services-grid{grid-template-columns:1fr 1fr;gap:12px}.services-grid article{padding:22px 16px 19px}.service-no{font-size:37px!important;margin-bottom:22px}.services-grid h3{font-size:24px}.services-grid article>p:last-of-type{font-size:12px;min-height:110px}.service-link{font-size:9px;min-height:48px}.about{display:block}.about-art{margin-bottom:37px}.about-art>img{height:290px}.about-art>span{padding:18px 22px;font-size:8px}.about-copy p:not(.eyebrow){font-size:14px}.gallery{grid-template-columns:1fr;gap:23px}.gallery img{height:290px}.photo-button>span{font-size:11px;padding:17px 15px}.photo-button b{font-size:9px}.area{display:block}.area-details{border-left:0;border-top:1px solid var(--line);padding:25px 0 0;margin-top:28px}.area-details>p{font-size:14px}.cta{padding:45px 0}.cta>.wrap{display:block}.cta h2{font-size:25px;margin-bottom:25px}.cta h2 br{display:none}.footer-main{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.footer-main p{font-size:11px}.footer-main a{font-size:11px}.footer-brand strong{font-size:14px}.copyright{font-size:8px;line-height:1.8}.page-banner{padding:45px 0}.page-banner h1{font-size:36px;letter-spacing:-1.4px}.page-banner p:last-child{font-size:14px}.project-grid{display:block}.project-grid article{padding-top:20px;margin-top:27px}.project-grid h3{margin-bottom:15px}.project-grid p{margin-bottom:0;font-size:14px}.steps{grid-template-columns:1fr 1fr;gap:25px}.steps b{font-size:16px}.steps span{font-size:12px}.about-art>.company-logo{object-fit:contain;padding:30px}.values h2{margin-bottom:12px;font-size:25px}.contact{display:block}.contact>div{margin-bottom:35px}.contact h2{font-size:45px}.contact-phone{font-size:25px}.contact-foot{margin-top:25px}form{padding:26px 20px}form h3{font-size:25px}.row{grid-template-columns:1fr;gap:0}input,select,textarea{font-size:16px}dialog{padding:48px 10px 10px;max-width:98vw}dialog img{max-width:90vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-button img{transition:none}}

/* Larger branding and a continuous dark header. */
header{background:var(--dark);color:#fff}
.header-inner{padding:16px 0;gap:24px}
.brand{gap:16px;flex-shrink:0}
.brand img{width:96px;height:96px;object-fit:contain}
.brand>span{font-size:46px}
.brand small{font-size:12px;letter-spacing:1.6px;margin-top:9px}
.menu-toggle{background:transparent;color:#fff;border-color:#ffffff50}
@media(max-width:1000px){.header-inner{gap:16px}.brand{gap:12px}.brand img{width:78px;height:78px}.brand>span{font-size:36px}.brand small{font-size:9px}.header-quote{padding:14px 12px;gap:10px}nav{gap:16px}}
@media(max-width:700px){.header-inner{padding:14px 0;gap:12px}.brand{gap:10px}.brand img{width:68px;height:68px}.brand>span{font-size:34px}.brand small{font-size:8px;letter-spacing:1px;margin-top:7px}.menu-toggle{padding:10px;gap:8px}nav{border-top-color:#ffffff30}nav a:hover{color:#ff7479}}
@media(max-width:360px){.brand img{width:57px;height:57px}.brand>span{font-size:29px}.brand small{font-size:7px}.menu-toggle{gap:6px;padding:9px}}

/* Show the complete truck photograph beside the introduction. */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);min-height:0;align-items:center}
.hero:after{display:none}
.hero-image{position:static;inset:auto;grid-column:2;grid-row:1;width:100%;height:650px;max-height:75vh;object-fit:contain;object-position:center;z-index:auto}
.hero-content{grid-column:1;grid-row:1;width:auto;margin:0;padding:55px 7% 65px 12%;position:relative;z-index:1}
.hero h1{font-size:clamp(35px,3.7vw,60px);letter-spacing:-1.7px}
.hero-content>p:not(.eyebrow){max-width:410px}
.hero-actions{flex-wrap:wrap;gap:22px}
.hero-caption{right:3%;bottom:14px;font-size:7px}
@media(max-width:1000px) and (min-width:701px){.hero-content{padding:40px 6% 50px 10%}.hero h1{font-size:38px}.hero-image{height:590px;max-height:none}.hero-content>p:not(.eyebrow){font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.hero{display:flex;flex-direction:column;align-items:stretch}.hero-content{order:0;width:90%;margin:0 auto;padding:40px 0 30px}.hero h1{font-size:clamp(35px,8.2vw,56px)}.hero-image{order:1;display:block;width:100%;height:auto;max-height:none;object-fit:contain}.hero-caption{order:2;position:static;padding:17px 5%;background:var(--dark);font-size:7px}.hero-actions{flex-direction:row;align-items:center;gap:23px}.hero-content>p:not(.eyebrow){max-width:390px}}

/* Slightly larger header logo, aligned a little lower. */
.brand img{width:112px;height:112px;transform:translateY(6px)}
@media(max-width:1000px){.brand img{width:90px;height:90px}}
@media(max-width:700px){.brand img{width:78px;height:78px;transform:translateY(4px)}}
@media(max-width:380px){.brand img{width:66px;height:66px}}

/* Preserve the full composition of the uploaded gallery photos. */
.gallery .uploaded-photo img{object-fit:contain;background:#ededeb;height:320px}
@media(max-width:700px){.gallery .uploaded-photo img{height:300px}}

/* Upper-right navigation dropdown on every screen size. */
.header-inner{flex-wrap:nowrap}.header-quote{margin-left:auto}.navigation-dropdown{position:relative;margin-left:auto;flex-shrink:0;z-index:10}.header-quote+.navigation-dropdown{margin-left:0}
.menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border:1px solid #ffffff60;border-radius:2px;font-weight:bold;font-size:13px;background:transparent;color:white}.menu-toggle:hover,.menu-toggle[aria-expanded=true]{background:#ffffff14}.menu-toggle span{transition:transform .15s}.menu-toggle[aria-expanded=true] span{transform:rotate(180deg)}
#main-nav{position:absolute;right:0;top:calc(100% + 12px);display:flex;flex-direction:column;gap:0;width:250px;max-width:88vw;padding:8px;background:var(--dark);border:1px solid #ffffff35;box-shadow:0 14px 35px #0005;border-radius:3px;color:white}
#main-nav[hidden]{display:none}#main-nav a{padding:15px 14px;font-size:13px;border-radius:2px}#main-nav a:hover,#main-nav a:focus-visible{background:#ffffff12;color:#ff7479}#main-nav a[aria-current=page]:after{left:14px;bottom:7px;width:26px;right:auto}
@media(max-width:700px){.header-quote{display:none}.navigation-dropdown,.header-quote+.navigation-dropdown{margin-left:auto}.menu-toggle{padding:11px 12px;gap:10px}#main-nav{flex-basis:auto}}

/* A full-width truck photograph integrated into the homepage hero. */
.hero{display:flex;position:relative;isolation:isolate;min-height:clamp(700px,65vw,980px);align-items:flex-start;overflow:hidden}
.hero-image{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 42%;z-index:-2}
.hero:after{display:block;content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,18,20,.82),rgba(16,18,20,.38) 43%,rgba(16,18,20,0) 75%),linear-gradient(180deg,rgba(16,18,20,.28),transparent 65%,rgba(16,18,20,.35));z-index:-1}
.hero-content{width:min(1180px,88%);margin:0 auto;padding:55px 0 100px;grid-column:auto;grid-row:auto}
.hero h1{font-size:clamp(38px,4.2vw,62px);max-width:650px}
.hero-content>p:not(.eyebrow){max-width:400px}
.hero-caption{position:absolute;right:6%;left:auto;bottom:22px;padding:0;background:transparent;font-size:8px}
@media(max-width:1000px) and (min-width:701px){.hero{min-height:760px}.hero-content{padding:45px 0 90px}.hero h1{font-size:45px}.hero-image{height:100%;object-position:center 42%}}
@media(max-width:700px){.hero{display:flex;min-height:850px;align-items:stretch}.hero-image{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:42% center}.hero-content{width:90%;padding:40px 0 100px;margin:0 auto}.hero h1{font-size:clamp(35px,8.2vw,48px)}.hero-content>p:not(.eyebrow){max-width:330px}.hero:after{background:linear-gradient(180deg,rgba(16,18,20,.85),rgba(16,18,20,.65) 35%,rgba(16,18,20,.08) 70%,rgba(16,18,20,.4))}.hero-caption{position:absolute;left:5%;right:5%;bottom:20px;padding:0;background:transparent;font-size:7px}.hero-actions{flex-wrap:wrap}}

/* Direct homepage navigation, visible without opening the dropdown. */
.home-navigation{display:block;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;background:var(--dark);padding:0;flex-basis:auto}
.home-navigation>.wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.home-navigation a{display:block;padding:19px 14px;color:#fff;font-size:13px;font-weight:bold;white-space:nowrap}
.home-navigation a:hover,.home-navigation a:focus-visible{color:#ff7479;background:#ffffff09}
.home-navigation a[aria-current=page]:after{left:14px;right:14px;bottom:8px;width:auto}
@media(max-width:700px){.home-navigation{display:block;padding:9px 0}.home-navigation>.wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px}.home-navigation a{padding:13px 10px;font-size:12px;white-space:normal;line-height:1.4}.home-navigation a[aria-current=page]:after{left:10px;width:26px;bottom:5px}}

/* Allow the company slogan to wrap naturally at every screen size. */
.hero h1.brand-slogan{font-size:clamp(34px,3.5vw,52px);max-width:720px;line-height:1.15}.page-banner h1.brand-slogan{max-width:1000px;font-size:clamp(34px,4vw,58px);line-height:1.15}.about-art>span{max-width:calc(100% - 20px);line-height:1.7;letter-spacing:.5px}
@media(max-width:700px){.hero h1.brand-slogan{font-size:clamp(32px,7.8vw,45px);letter-spacing:-1px}.hero h1.brand-slogan br{display:none}.hero h1.brand-slogan span:before{content:" "}.hero h1.brand-slogan span:after{content:" "}.about-art>span{padding:14px 18px}}

/* Prominent, readable gallery photo titles. */
.gallery .photo-button>span{font-weight:700;font-size:14px;line-height:1.6;align-items:center}.gallery .photo-button>span b{font-weight:600;flex-shrink:0}
@media(max-width:700px){.gallery .photo-button>span{font-size:13px;flex-wrap:wrap;gap:8px 15px}}

/* Pull the truck back and give the headline a quiet foreground. */
.hero{min-height:clamp(740px,60vw,900px);background:#18191b}
.hero-image{left:auto;right:0;top:0;bottom:0;width:76%;height:100%;object-fit:cover;object-position:center 43%;mask-image:linear-gradient(90deg,transparent 0%,#000 28%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%)}
.hero:after{background:linear-gradient(90deg,#18191bf5 0%,#18191bd9 25%,#18191b70 43%,#18191b08 69%),linear-gradient(0deg,#18191b65,transparent 35%)}
.hero-content{padding-top:65px}.hero h1.brand-slogan{max-width:570px;font-size:clamp(34px,3.1vw,46px)}
@media(max-width:1000px) and (min-width:701px){.hero{min-height:800px}.hero-image{width:78%;height:100%}.hero h1.brand-slogan{max-width:460px;font-size:37px}}
@media(max-width:700px){.hero{min-height:1000px}.hero-image{inset:auto 0 0;width:100%;height:64%;object-position:center 44%;mask-image:linear-gradient(180deg,transparent,#000 24%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 24%)}.hero:after{background:linear-gradient(180deg,#18191b 0%,#18191bf5 27%,#18191b75 48%,transparent 72%,#18191b50)}.hero-content{padding-top:40px}.hero h1.brand-slogan{font-size:clamp(32px,7.8vw,45px);max-width:100%}}

/* Kansas City nighttime highway panorama for the About Us header. */
.about-night-banner{background-image:linear-gradient(90deg,rgba(9,15,25,.88),rgba(9,15,25,.48) 65%,rgba(9,15,25,.25)),url('assets/kansas-city-highways-night.webp');background-size:cover;background-position:center 58%;padding:85px 0}.about-night-banner h1{text-shadow:0 2px 16px #0006}.about-night-banner p:last-child{color:#fff}@media(max-width:700px){.about-night-banner{padding:55px 0;background-position:62% center}}

/* Illuminated Country Club Plaza fountain on the careers page. */
.careers-fountain-banner{background-image:linear-gradient(90deg,rgba(10,16,22,.82),rgba(10,16,22,.4) 65%,rgba(10,16,22,.2)),url('assets/plaza-fountain-night.webp');background-size:cover;background-position:center 57%;padding:105px 0}.careers-fountain-banner h1{text-shadow:0 2px 15px #0007}.careers-fountain-banner p:last-child{color:#fff}.photo-credit{font-size:10px;line-height:1.7;color:#aaa;margin-top:20px}.photo-credit a{text-decoration:underline}@media(max-width:700px){.careers-fountain-banner{padding:70px 0;background-position:60% center}}

/* Show the fountain water illuminated in blue and green. */
.careers-fountain-banner{background-image:linear-gradient(90deg,rgba(10,16,22,.77),rgba(10,16,22,.35) 60%,rgba(10,16,22,.12)),url('assets/plaza-fountain-colored-water.jpg');background-position:center 52%;padding:115px 0}@media(max-width:700px){.careers-fountain-banner{background-size:auto 160%;background-position:57% center;padding:75px 0}}

/* Prominent careers equal opportunity notice. */
.employer-notice{margin:26px 0;padding:22px 24px;border-left:5px solid var(--red);background:var(--light);color:var(--dark);font-size:clamp(18px,2vw,24px);line-height:1.5}.employer-notice strong{font-weight:800}

/* A distinct full-width Services section between the lighter page sections. */
.services.section{position:relative;background:#1b1d20;color:#fff;border-top:6px solid var(--red);border-bottom:1px solid #08090a;padding-top:100px;padding-bottom:105px}
.services.section .section-heading{margin-bottom:45px;gap:70px}
.services.section .section-heading h2{color:#fff}
.services.section .section-heading>.eyebrow,.services.section .eyebrow{color:#ff7479}
.services.section .section-heading>p{color:#c5c7ca}
.services.section .services-grid{gap:22px}
.services.section .services-grid article{background:#fff;color:var(--dark);border:0;border-top:4px solid var(--red);padding:30px 24px 25px;box-shadow:0 12px 28px #0003}
.services.section .service-no{color:#e8b8ba;margin-bottom:28px}
.services.section .service-link{color:#a90e15}
.services.section .service-link:hover{color:var(--dark)}
@media(max-width:1000px){.services.section{padding-top:80px;padding-bottom:85px}.services.section .services-grid{gap:16px}.services.section .services-grid article{padding:25px 18px}.services.section .section-heading{gap:40px}}
@media(max-width:700px){.services.section{padding-top:60px;padding-bottom:65px;border-top-width:5px}.services.section .section-heading{margin-bottom:30px}.services.section .services-grid{gap:14px}.services.section .services-grid article{padding:23px 16px}.services.section .service-no{margin-bottom:22px}}

.materials-list{margin:0 0 36px;padding:25px 0;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25}.materials-list h3{font-size:16px;letter-spacing:0;margin:0 0 17px;color:#fff}.materials-list ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}.materials-list li{border:1px solid #ffffff30;background:#ffffff08;color:#fff;padding:10px 16px;border-radius:3px;font-size:14px;font-weight:700;line-height:1.4}@media(max-width:700px){.materials-list{padding:22px 0;margin-bottom:28px}.materials-list li{font-size:12px;padding:9px 12px}}

/* Nighttime riverfront aerial for the Projects header. */
.projects-riverfront-banner{background-image:linear-gradient(90deg,rgba(8,15,25,.8),rgba(8,15,25,.4) 60%,rgba(8,15,25,.16)),url('assets/kansas-city-riverfront-night.webp');background-size:cover;background-position:center 57%;padding:100px 0}.projects-riverfront-banner h1{text-shadow:0 2px 15px #0006}.projects-riverfront-banner p:last-child{color:#fff}@media(max-width:700px){.projects-riverfront-banner{padding:65px 0;background-position:62% center}}

/* Union Station at night behind the homepage brand, above the tabs. */
.home-station-header{background-image:linear-gradient(90deg,rgba(10,14,22,.75),rgba(10,14,22,.22) 55%,rgba(10,14,22,.65)),url('assets/union-station-night.jpg');background-size:cover;background-position:center 54%}.home-station-header .header-inner{min-height:210px;padding-top:35px;padding-bottom:35px}.home-station-header .brand>span{text-shadow:0 2px 12px #0009}.home-station-header .menu-toggle{background:#11172399;border-color:#ffffff80}.home-station-header .home-navigation{background:#18191b;border-top:1px solid #ffffff40}@media(max-width:700px){.home-station-header{background-position:center 49%}.home-station-header .header-inner{min-height:175px;padding-top:30px;padding-bottom:30px}}

/* Elevated Union Station scene in Chiefs championship colors. */
.home-station-header{background-image:linear-gradient(90deg,rgba(10,14,22,.77),rgba(10,14,22,.15) 55%,rgba(10,14,22,.6)),url('assets/union-station-championship-night.webp');background-position:center 57%}.home-station-header .header-inner{min-height:230px}@media(max-width:700px){.home-station-header{background-position:58% center}.home-station-header .header-inner{min-height:185px}}

/* Unified layout: a compact masthead and one navigation pattern per screen. */
:root{--content-width:1180px}
.wrap{width:min(var(--content-width),88%)}
.home-station-header .header-inner,.header-inner{min-height:126px;padding:18px 0}
.brand img{width:78px;height:78px;transform:none}.brand>span{font-size:34px}.brand small{font-size:9px;letter-spacing:1.4px;margin-top:7px}.brand{gap:14px}
.header-quote{margin-left:auto;padding:16px 22px;white-space:nowrap}
.navigation-dropdown{display:none}
.desktop-navigation{display:block;background:#18191b;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;padding:0}
.desktop-navigation .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px}
.desktop-navigation a{display:block;padding:17px 8px;font-size:13px;color:#fff;font-weight:700}
.desktop-navigation a:hover{color:#ff7479}.desktop-navigation a[aria-current=page]:after{left:8px;right:8px;bottom:7px;width:auto}
.utility>.wrap{font-size:10px;letter-spacing:.7px;padding:10px 0}
.hero{min-height:570px;align-items:center}
.hero-content{padding:55px 0 65px}
.hero h1{font-size:clamp(38px,4.2vw,60px);line-height:1.08;letter-spacing:-1.6px;max-width:580px;margin-bottom:20px}
.hero .eyebrow{margin-bottom:18px;color:#fff}
.hero-content>p.hero-slogan{font-size:17px;line-height:1.6;color:#ff9397;font-weight:700;max-width:440px;margin:0 0 18px}
.hero-content>p.hero-summary{font-size:15px;line-height:1.75;color:#eceef0;max-width:410px;margin:0 0 25px}
.hero-image{width:68%;object-position:center 43%}
.hero:after{background:linear-gradient(90deg,#18191b 0%,#18191bf0 27%,#18191b6b 49%,transparent 75%)}
.hero-call{font-size:13px;line-height:1.5}.hero-actions{gap:22px}
.credentials{background:#fff;border-bottom:1px solid var(--line)}
.credentials .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:24px 0}
.credentials span{font-size:13px;color:#3e4145;font-weight:700;display:flex;align-items:center;gap:7px}
.credentials span:before{content:'✓';color:var(--red);font-weight:800}.credentials b{color:var(--dark)}
.section{padding-top:70px;padding-bottom:70px}
.services.section{padding-top:70px;padding-bottom:75px}.services.section .section-heading{margin-bottom:26px}
.materials-list{margin-bottom:28px;padding:18px 0}
.materials-list h3{font-size:14px;margin-bottom:12px}
.materials-list ul{display:flex;flex-wrap:wrap;gap:9px 0}
.materials-list li{background:none;border:0;border-radius:0;padding:0 15px;font-size:14px;font-weight:500;border-right:1px solid #ffffff40;line-height:1.7}
.materials-list li:first-child{padding-left:0}.materials-list li:last-child{border:0}
.services.section .services-grid article{padding:25px 22px 22px;box-shadow:none}
.services.section .service-no{font-size:30px!important;margin-bottom:20px}
.services.section .services-grid article>p:last-of-type{min-height:70px}
.about{gap:60px}.about-art>img{height:350px}.about-copy p{font-size:15px;line-height:1.8}.safety-statement{color:var(--dark);font-weight:700;border-left:3px solid var(--red);padding-left:16px}
.featured-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.featured-gallery .photo-button img,.featured-gallery .uploaded-photo img{height:235px;object-fit:cover;object-position:center}
.featured-gallery .photo-button>span{display:block;font-size:13px;padding:18px;line-height:1.6}
.featured-gallery .photo-button b{display:block;margin-top:9px}
.gallery-more{margin-top:28px}.area{align-items:center;gap:55px}.area h2{margin-bottom:0}.area-details{padding-left:40px}.area-details p{margin-bottom:10px}
.cta{padding:45px 0}.cta .eyebrow{margin-bottom:12px}.cta h2{font-size:28px}
.footer-main a{line-height:1.6}.photo-credit{max-width:1180px;color:#a6a7a8;font-size:10px}
@media(max-width:1000px) and (min-width:701px){.hero{min-height:560px}.hero h1{font-size:43px;max-width:440px}.hero-content{padding:45px 0 65px}.hero-content>p.hero-slogan{max-width:360px;font-size:16px}.hero-content>p.hero-summary{max-width:330px}.hero-image{width:70%;height:100%}.hero-actions{flex-direction:row}.header-inner{gap:16px}.about{gap:35px}.featured-gallery{gap:16px}.featured-gallery .photo-button img,.featured-gallery .uploaded-photo img{height:210px}}
@media(max-width:800px){.navigation-dropdown{display:block;margin-left:auto}.desktop-navigation{display:none}.header-quote{display:none}.home-station-header .header-inner,.header-inner{min-height:110px;padding:16px 0}.brand img{width:66px;height:66px}.brand>span{font-size:30px}.brand small{font-size:8px}.brand{gap:10px}.utility>.wrap{font-size:9px}.credentials .wrap{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:22px 0}.credentials span{font-size:12px}}
@media(max-width:700px){.wrap{width:90%}.hero{min-height:780px;display:flex;align-items:stretch}.hero-content{width:90%;padding:38px 0 60px;margin:0 auto}.hero h1{font-size:clamp(35px,9vw,48px);max-width:100%;letter-spacing:-1px}.hero-content>p.hero-slogan{font-size:15px;max-width:360px;margin-bottom:14px}.hero-content>p.hero-summary{font-size:14px;max-width:340px;margin-bottom:22px}.hero-image{inset:auto 0 0;width:100%;height:52%;object-position:center 43%;mask-image:linear-gradient(180deg,transparent,#000 20%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%)}.hero:after{background:linear-gradient(180deg,#18191b 0%,#18191bf7 35%,#18191b75 53%,transparent 76%,#18191b66)}.hero-actions{flex-direction:row;align-items:center;gap:16px}.hero-call{font-size:12px}.hero-caption{font-size:7px;bottom:16px}.section,.services.section{padding-top:50px;padding-bottom:50px}.section-heading>p{font-size:14px}.services.section .services-grid article{padding:20px 16px}.services.section .services-grid article>p:last-of-type{min-height:85px}.materials-list li{font-size:13px;padding:0 12px}.about-art>img{height:290px}.about-copy p{font-size:14px}.featured-gallery{grid-template-columns:1fr;gap:20px}.featured-gallery .photo-button img,.featured-gallery .uploaded-photo img{height:240px}.featured-gallery .photo-button>span{font-size:14px}.area h2{margin-bottom:20px}.area-details{padding-left:0}.cta h2{font-size:25px}.cta .button{margin-top:0}.menu-toggle{min-height:44px}.credentials .wrap{gap:14px}.brand small{font-size:7px}.header-inner{flex-wrap:nowrap}.hero-actions .button{padding:17px 18px;gap:18px}}
@media(max-width:360px){.brand img{width:54px;height:54px}.brand>span{font-size:27px}.brand small{font-size:6px}.menu-toggle{padding:10px;gap:7px}.hero{min-height:810px}.hero-actions{flex-wrap:wrap}.hero-content>p.hero-slogan{max-width:280px}}

.hero-slogan .slogan-end{white-space:nowrap}
