.variant-a{--ink:#15283d;--paper:#fff;--action:#315ec1;--hover:#25499a;--contact:#eef2f6;font-family:"Archivo",sans-serif}.a-opening{background:#122137;color:white;position:relative}.a-opening .site-header{border-bottom:1px solid #ffffff2e}.a-opening .logo img{filter:brightness(0) invert(1)}.a-opening .nav-cta{background:#fff;color:#15283d}.a-hero{position:relative;min-height:655px;display:flex;flex-direction:column;justify-content:center}.a-photo{position:absolute;inset:-104px 0 0;overflow:hidden}.a-photo img{width:100%;height:100%;object-fit:cover;object-position:center 60%}.a-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a192aed 0%,#0a192aae 38%,#0a192a20 75%),linear-gradient(0deg,#0a192aeb,transparent 35%)}.a-hero-content{position:relative;padding:85px 0 70px}.a-hero h1{font-size:clamp(45px,5.4vw,76px);font-weight:500;line-height:1.05;letter-spacing:-.04em}.hero-description{margin:28px 0 30px;color:#e3eaf3;font-size:18px;line-height:1.6}.hero-note{font-size:13px;color:#bccbdc;margin-top:24px}.a-hero-bottom{position:relative;display:flex;gap:70px;border-top:1px solid #ffffff33;padding:24px 0 30px}.a-hero-bottom span{display:block;color:#aabbd1;font-size:12px;margin-bottom:7px}.a-hero-bottom strong{font-size:16px;font-weight:400}.a-hero-bottom small{margin-left:auto;align-self:end;font-size:11px;color:#aebed2}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:15px 110px;align-items:end;margin-bottom:38px}.section-intro .label{grid-column:1/-1;margin:0 0 8px}.section-intro>p:last-child{font-size:17px;max-width:430px;color:#596777}.a-use-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.a-use-grid>a{text-decoration:none;display:block}.a-use-grid img{width:100%;height:245px;object-fit:cover}.a-use-grid>a>div{border-bottom:1px solid #c6ced8;padding:20px 0 23px}.a-use-grid span{font-size:12px;color:#627285}.a-use-grid h3{margin-top:9px;font-size:23px}.a-use-grid a:hover h3{text-decoration:underline;text-underline-offset:6px}.a-package{display:grid;grid-template-columns:1fr 1fr;background:#14273e;color:#fff}.a-package-photo{min-height:650px}.a-package-photo img{width:100%;height:100%;object-fit:cover}.a-package-copy{padding:65px clamp(35px,5vw,85px)}.a-package-copy>p:not(.label){font-size:17px;color:#c5d0df;margin-top:25px}.a-package-copy dl{margin:28px 0 0}.a-package-copy dl div{border-top:1px solid #ffffff29;padding:17px 0}.a-package-copy dt{font-size:17px}.a-package-copy dd{margin:5px 0 0;font-size:14px;color:#acbed4}.a-designer{display:grid;grid-template-columns:1fr 1.2fr;gap:75px;align-items:center}.a-designer p:not(.label){margin-top:25px;color:#526175}.a-designer .btn{margin-top:30px}.designer-image{background:#edf1f6;padding:20px;border:1px solid #d2dce7}.a-local{background:#e8eef4}.a-local-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:110px}.a-local-intro{font-size:17px;color:#526175;align-self:end}.variant-a .contact{border-top:1px solid #dbe1e9}
@media(max-width:760px){.a-hero{min-height:0}.a-photo{inset:-86px 0 0}.a-photo img{object-position:65% 50%}.a-photo:after{background:linear-gradient(90deg,#0a192ae8,#0a192a66),linear-gradient(0deg,#0a192a,transparent 70%)}.a-hero-content{padding:70px 0 48px}.a-hero h1{font-size:48px}.hero-description{font-size:17px}.hero-description br{display:none}.a-hero-bottom{gap:20px;padding:24px 0;flex-wrap:wrap}.a-hero-bottom>div{flex:1;min-width:130px}.a-hero-bottom small{display:none}.a-hero-bottom strong{font-size:14px}.section-intro,.a-designer,.a-local-grid{grid-template-columns:1fr;gap:25px}.section-intro .label{margin:0}.a-use-grid{grid-template-columns:1fr;gap:26px}.a-use-grid img{height:240px}.a-use-grid>a>div{padding:17px 0}.a-package{grid-template-columns:1fr}.a-package-photo{min-height:0;height:300px}.a-package-copy{padding:45px 25px}.a-designer .btn{margin-top:22px}.a-local-grid{gap:30px}.a-use-grid h3{font-size:25px}.variant-a .site-header nav{background:#14273e;color:#fff}}

/* Selected direction: compact location and policy footer. */
.variant-a{padding-bottom:0}
.variant-a footer{padding:52px 0 24px}
.variant-a .footer-grid{grid-template-columns:1fr .8fr 1.55fr;gap:48px;align-items:start}
.variant-a .footer-brand> a:first-child{width:fit-content}
.variant-a .footer-phone{font-size:19px;margin-top:22px;margin-bottom:4px;color:#fff}
.variant-a .footer-hours{font-size:13px}
.variant-a .footer-next a{padding:3px 0;color:#d0d9e5}
.variant-a .footer-map-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}
.variant-a .footer-map-heading strong{margin-bottom:5px}
.variant-a .footer-map-heading address{font-size:13px;line-height:1.5}
.variant-a .footer-directions{font-size:13px;white-space:nowrap;margin:0;padding:2px 0;border-bottom:1px solid #7689a4}
.variant-a .footer-directions span{margin-left:4px}
.variant-a .footer-map{border:1px solid #45546b;border-radius:3px;overflow:hidden;background:#e3e9ee}
.variant-a .footer-map iframe{display:block;width:100%;height:210px;border:0}
.variant-a .footer-bottom{display:block;margin-top:34px;padding-top:22px}
.variant-a .footer-company{display:flex;justify-content:space-between;gap:12px 30px;flex-wrap:wrap;font-size:12px}
.variant-a .footer-legal{display:flex;gap:10px 26px;flex-wrap:wrap;margin-top:16px}
.variant-a .footer-legal a{font-size:13px;color:#d0d9e5;margin:0;padding:5px 0}
.variant-a .form-policies{font-size:12px;line-height:1.7;margin-top:12px;color:#526175}
@media(max-width:1050px){.variant-a .footer-grid{grid-template-columns:1fr 1fr;gap:34px}.variant-a .footer-location{grid-column:1/-1}.variant-a .footer-map iframe{height:210px}.variant-a .footer-map-heading{align-items:center}}
@media(max-width:760px){.variant-a .footer-grid>div:first-child{grid-column:auto}.variant-a footer{padding-top:40px}.variant-a .footer-grid{gap:30px 24px}.variant-a .footer-logo{width:170px}.variant-a .footer-brand p{font-size:13px}.variant-a .footer-next{font-size:14px}.variant-a .footer-phone{font-size:17px}.variant-a .footer-company{flex-direction:column;gap:8px}.variant-a .footer-legal{gap:6px 22px}.variant-a .footer-bottom{margin-top:28px}}
@media(max-width:520px){.variant-a .footer-grid{grid-template-columns:1fr}.variant-a .footer-location{grid-column:auto}.variant-a .footer-next{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.variant-a .footer-next strong{grid-column:1/-1;margin-bottom:6px}.variant-a .footer-map-heading{align-items:flex-start}.variant-a .footer-map-heading address{max-width:230px}.variant-a .footer-map iframe{height:200px}}

/* Project software: individual vendor vector assets with preserved proportions. */
.a-software{padding:48px 0 38px;background:#fff;border-bottom:1px solid #dbe1e9}
.software-intro{display:flex;align-items:baseline;justify-content:space-between;gap:24px}
.software-intro h2{font-size:28px;letter-spacing:-.025em;line-height:1.2}
.software-intro p{font-size:15px;color:#596777;max-width:480px;line-height:1.6}
.software-logos{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:center}
.software-logos li{display:flex;align-items:center;justify-content:center;min-height:96px}
.software-mark{width:100%;max-width:182px;min-height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.software-mark img{display:block;position:static;width:100%;height:64px;object-fit:contain;max-width:100%}.software-mark span{font-size:14px;line-height:1.2;color:#252a2e}.software-mark--tekla img{height:52px}
@media(max-width:1050px){.software-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.software-intro{align-items:flex-start}.software-intro p{max-width:390px}}
@media(max-width:760px){.a-software{padding:38px 0 28px}.software-intro{display:block}.software-intro h2{font-size:27px}.software-intro p{margin-top:13px;font-size:16px;max-width:none}.software-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:20px}.software-logos li:last-child{grid-column:1/-1}.software-logos li{min-height:86px}}
@media(max-width:380px){.software-logos{grid-template-columns:1fr}.software-logos li:last-child{grid-column:auto}}

.software-mark--autodesk{flex-direction:row;gap:12px}.software-mark--autodesk img{width:48px;height:48px;flex:none}.software-product{display:flex;flex-direction:column;gap:4px;white-space:nowrap}.software-product span{font-size:12px;letter-spacing:.04em;line-height:1.1}.software-product strong{font-size:21px;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:#252a2e}

/* High-resolution supplied photo; color treatment remains non-destructive CSS. */
.a-photo img{filter:saturate(.55) brightness(.78)}


/* Houston location follows the navy split-panel and photo treatment used above. */
.a-location-panel{display:grid;grid-template-columns:1.7fr 1fr;margin-top:40px;background:#14273e;color:#fff}
.a-location-photo{position:relative;overflow:hidden;margin:0;min-height:400px;aspect-ratio:16/9;background:#14273e}
.a-location-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;filter:saturate(.55) brightness(.78)}
.a-location-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#0a192acc,transparent 38%),linear-gradient(#14273e12,#14273e12)}
.a-location-photo figcaption{position:absolute;z-index:1;left:28px;right:28px;bottom:24px;display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;color:#fff}
.a-location-details{display:flex;flex-direction:column;justify-content:center;gap:40px;padding:42px clamp(28px,3.3vw,48px)}
.a-location-details .label{color:#acbed4;font-size:13px;margin-bottom:22px}
.a-location-details address{font-style:normal;font-size:clamp(22px,2.1vw,28px);line-height:1.4;letter-spacing:-.02em}
.a-location-details .btn{margin-top:28px}
@media(max-width:1000px) and (min-width:761px){.a-local-grid{gap:45px}.a-location-panel{grid-template-columns:1.4fr 1fr}.a-location-photo{aspect-ratio:auto}.a-location-details{padding:34px 28px}}
@media(max-width:760px){.a-location-panel{grid-template-columns:1fr;margin-top:30px}.a-location-photo{min-height:0;aspect-ratio:16/10}.a-location-photo figcaption{left:20px;right:20px;bottom:18px;font-size:14px}.a-location-details{padding:30px 24px;gap:30px}.a-location-details address{font-size:25px}.a-location-details .label{margin-bottom:16px}.a-local-intro{font-size:17px}}

.variant-a .footer-accreditation{display:flex;align-items:center;flex-wrap:wrap;gap:12px;width:fit-content;margin:22px 0 0;color:#d0d9e5;font-size:14px;line-height:1.5}.footer-accreditation img{background:#fff;padding:5px;width:100px;height:48px}.footer-accreditation:hover span{text-decoration:underline;text-underline-offset:4px}

/* Compact finished-building photo carousel. */
.a-buildings{padding:76px 0}
.building-carousel-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.building-carousel-heading .label{margin-bottom:16px}.building-carousel-heading h2{font-size:clamp(32px,3vw,44px)}
.building-carousel-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}
.building-carousel-controls p{font-size:14px;color:#526175;margin-right:14px;font-variant-numeric:tabular-nums;min-width:35px}
.building-carousel-controls button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #bac6d3;background:#fff;color:#15283d;cursor:pointer;border-radius:0;transition:background .15s,color .15s}
.building-carousel-controls button:hover:not(:disabled){background:#14273e;border-color:#14273e;color:#fff}.building-carousel-controls button:disabled{opacity:.35;cursor:default}
.building-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;background:#edf1f5}
.building-track::-webkit-scrollbar{display:none}
.building-slide{flex:0 0 100%;min-width:0;display:grid;grid-template-columns:1.8fr 1fr;scroll-snap-align:start;scroll-snap-stop:always}
.building-slide-photo{position:relative;margin:0;min-width:0;height:390px;overflow:hidden;background:#e1e7ed}
.building-slide-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.72)}
.building-slide-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 20px 10px;background:linear-gradient(transparent,#101e30a6);font-size:12px;line-height:1.5;color:#fff}
.building-slide-copy{display:flex;flex-direction:column;justify-content:center;align-items:start;padding:32px 38px}
.building-slide-copy .label{font-size:12px;color:#627285;margin-bottom:16px}
.building-slide-copy h3{font-size:32px;line-height:1.1}
.building-slide-copy>p:not(.label){font-size:16px;line-height:1.65;color:#526175;margin-top:20px}
.building-slide-link{font-size:15px;font-weight:600;color:#25499a;margin-top:28px;text-underline-offset:5px}
.building-carousel-meta{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.building-photo-credits{font-size:13px;color:#627285;max-width:480px;margin-top:14px}.building-photo-credits summary{cursor:pointer;white-space:nowrap}.building-photo-credits p{font-size:14px;margin-top:12px}.building-carousel-note{font-size:13px;line-height:1.5;color:#627285;margin-top:14px}
@media(max-width:1000px){.building-slide{grid-template-columns:1.45fr 1fr}.building-slide-copy{padding:28px}.building-slide-copy h3{font-size:28px}.building-slide-photo{height:360px}}
@media(max-width:760px){.a-buildings{padding:52px 0}.building-carousel-heading{align-items:start;gap:20px;margin-bottom:22px}.building-carousel-heading h2{font-size:32px}.building-carousel-heading .label{font-size:12px;margin-bottom:12px}.building-carousel-controls{gap:6px;flex-wrap:wrap;width:90px;justify-content:flex-end}.building-carousel-controls p{flex-basis:100%;text-align:right;margin:0 0 2px}.building-carousel-controls button{width:42px;height:44px}.building-slide{grid-template-columns:1fr;grid-template-rows:auto 1fr}.building-slide-photo{height:auto;aspect-ratio:3/2}.building-slide-copy{padding:24px;min-height:235px;justify-content:start}.building-slide-copy .label{margin-bottom:10px}.building-slide-copy h3{font-size:28px}.building-slide-copy>p:not(.label){margin-top:14px}.building-slide-link{margin-top:20px}.building-carousel-note{font-size:13px}.building-carousel-meta{display:block}.building-photo-credits{margin-top:8px}}

/* Shared technology: one restrained monochrome row with subtle hover color. */
.a-software{padding:30px 0 22px}
.software-intro h2{font-size:26px}
.software-logos{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 0;padding:10px 4px 14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#c6ced8 transparent}
.software-logos li{flex:1 0 0;min-width:0;min-height:68px;scroll-snap-align:start}
.software-mark{width:100%;min-height:60px;max-width:150px;filter:grayscale(1);opacity:.82;transform:rotate(0);transform-origin:center;transition:filter .22s ease,opacity .22s ease,transform .22s ease}
.software-mark img{height:42px}
.software-mark--tekla img{height:34px}
.software-mark span{font-size:12px}
.software-mark--autodesk{gap:7px}
.software-mark--autodesk img{width:30px;height:36px}
.software-product strong{font-size:17px}
.software-product span{font-size:12px}
.technology-mark img{height:34px}
@media(hover:hover) and (pointer:fine){.software-logos li:hover .software-mark{filter:grayscale(0);opacity:1;transform:rotate(-3deg) scale(1.03)}}
@media(max-width:1100px){.software-logos{justify-content:flex-start;gap:24px}.software-logos li{flex:0 0 140px}.software-mark--autodesk img{width:36px;height:40px}.software-product strong{font-size:19px}.software-product span{font-size:12px}}
@media(max-width:760px){.a-software{padding:26px 0 18px}.software-intro h2{font-size:24px}.software-logos{gap:22px;margin-top:12px;padding-bottom:12px}.software-logos li{flex:0 0 140px;min-height:62px}.software-mark{min-height:60px}.software-mark img{height:44px}.software-mark--tekla img{height:34px}.software-mark--autodesk img{width:34px;height:38px}.technology-mark img{height:34px}}
@media(prefers-reduced-motion:reduce){.software-mark{transition:none}.software-logos li:hover .software-mark{transform:none}}

/* Keep the photograph within its grid track at every viewport width. */
.a-location-panel{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}
.a-location-photo{min-width:0;width:100%;aspect-ratio:auto}
.a-location-photo img{position:absolute;inset:0;width:100%;height:100%}
.a-location-details{min-width:0;overflow-wrap:break-word}
.a-location-details .btn{max-width:100%;white-space:normal;text-align:center}
@media(max-width:1000px) and (min-width:901px){.a-location-panel{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}
@media(max-width:900px){.a-location-panel{grid-template-columns:minmax(0,1fr)}.a-location-photo{min-height:0;aspect-ratio:16/9}.a-location-details{padding:32px 28px}}
@media(max-width:760px){.a-location-details{padding:30px 24px}}

/* Local manufacturing signature, kept compact below the policy links. */
.variant-a .footer-origin{display:flex;align-items:center;gap:12px;margin-top:22px;color:#d0d9e5;font-size:14px;line-height:1.5}
.variant-a .footer-origin img{display:block;flex:0 0 32px;width:32px;height:auto;margin:0;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.variant-a .footer-origin span{max-width:100%;text-wrap:balance}
