/* Approved portfolio and contact improvements, using the established palette. */
.brand{min-width:150px}.brand img{width:110px;height:86px;object-fit:contain}.topline .contact-links{display:flex;flex-wrap:wrap;gap:18px;font-size:11px}.topline .contact-links a{color:inherit}.contact-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-block:12px;overflow-wrap:anywhere}.contact-links a{border-bottom:1px solid currentColor;font-size:14px}.contact-links a:hover{color:#6e7d11}address{font-style:normal;max-width:560px;line-height:1.9;font-size:14px}.footer-main{gap:35px}.footer-main>div{max-width:650px}.footer-main address{color:#c4c9bb;font-size:12px;margin-top:18px}.footer-main .contact-links a{font-size:12px}.footer-main .text-link{font-size:12px}.profile-download{margin-block:14px;gap:14px}.profile-download svg{width:20px;height:20px}.hero-actions .profile-download{font-size:12px;min-height:48px;padding:12px 18px;margin:0}.portfolio-intro{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:35px}.portfolio-intro>p{max-width:720px;font-size:14px}.portfolio-intro .button{flex-shrink:0}.portfolio-filters{display:flex;flex-wrap:wrap;gap:9px;padding-bottom:25px;border-bottom:1px solid var(--line)}.portfolio-filters button{background:white;border:1px solid var(--line);padding:10px 17px;color:var(--ink);font-size:13px;min-height:44px}.portfolio-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.portfolio-filters button:hover{border-color:#889b31}#project-result-count{font-size:12px;margin-block:18px 30px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:start}.portfolio-card{background:white;border:1px solid var(--line);transition:box-shadow .2s,border-color .2s;overflow:hidden}.portfolio-card:hover{border-color:#aab78d;box-shadow:0 10px 25px #252d2808}.portfolio-card[hidden]{display:none}.portfolio-image{background:#eaede6;padding:16px;height:315px}.portfolio-image>a{display:block;height:100%}.portfolio-image img{width:100%;height:100%;object-fit:contain}.portfolio-content{padding:28px}.portfolio-content>.eyebrow{font-size:11px;margin-bottom:12px}.portfolio-content h2{font-size:26px;line-height:1.5;margin-bottom:14px}.portfolio-content>p{font-size:14px;margin-bottom:18px}.portfolio-content>.text-link{margin-top:22px}.project-location{display:flex;align-items:center;gap:7px}.project-location svg{width:17px;height:17px}.project-references{border-top:1px solid var(--line);padding-top:15px}.project-gallery summary{padding-block:12px;cursor:pointer;font-size:13px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gallery-grid img{object-fit:contain;background:var(--paper);width:100%;height:115px}.brands-section{background:#eeefe8}.brands-section h2{max-width:850px}.brands-section>.container>p{max-width:850px;margin-top:18px;font-size:13px}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:32px}.brand-grid figure{background:white;border:1px solid var(--line);padding:20px;display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:160px}.brand-grid img{width:145px;height:85px;object-fit:contain}.brand-grid figcaption{font-size:10px;letter-spacing:.3px;text-align:center;margin-top:10px}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-block:32px}.capability-grid article{background:white;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column}.capability-grid h3{font-size:21px;margin-block:18px 12px}.capability-grid p{font-size:14px;margin-bottom:22px}.capability-grid .text-link{align-self:start;margin-top:auto}.capability-grid svg{color:#71842a}.related-business{border-top:1px solid var(--line);background:#eeefe8}.related-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.related-inner>div{max-width:850px}.related-inner h2{font-size:30px;line-height:1.5}.related-inner p:not(.eyebrow){font-size:14px;margin-top:20px}.related-inner>.text-link{flex-shrink:0}.rfq-unavailable{display:grid;grid-template-columns:1.5fr 1fr;gap:60px}.rfq-unavailable h2{font-size:34px;margin-bottom:22px}.rfq-unavailable p{margin-block:18px}.rfq-unavailable aside{background:#eeefe8;border:1px solid var(--line);padding:30px}.rfq-unavailable ul{padding-inline-start:20px;color:var(--muted)}.rfq-unavailable li{margin-bottom:12px}.button:disabled{background:#e6e8df;border-color:#d4d8c8;color:#62695c;cursor:not-allowed}.service-aside>.text-link{margin-top:25px}.service-card-content{display:flex;flex-direction:column;flex:1}.service-card.with-service-image .service-top{margin-bottom:25px}.location-panel address{margin-block:20px}.contact-grid h2+.contact-links{margin-block:25px}.portfolio-section{padding-top:55px}.inline-link{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.header-inner{gap:18px}.brand{min-width:115px}.portfolio-intro,.related-inner{align-items:start;flex-direction:column;gap:18px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topline .contact-links{gap:10px}.portfolio-content{padding:22px}}
@media(max-width:650px){.brand img{width:88px;height:69px}.brand{min-width:88px}.topline .container{gap:8px;flex-wrap:wrap;padding-block:6px}.topline .contact-links{margin-block:0;font-size:10px;gap:12px}.topline .contact-links a{font-size:10px}.topline .contact-links a[href^=mailto]{display:none}.portfolio-grid,.rfq-unavailable,.capability-grid{grid-template-columns:1fr}.portfolio-image{height:250px}.portfolio-content h2{font-size:24px}.portfolio-content>p{font-size:13px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.brand-grid figure{padding:16px 10px;min-height:140px}.brand-grid img{width:110px;height:70px}.portfolio-intro .button{width:100%;justify-content:center}.portfolio-filters{gap:7px}.portfolio-filters button{font-size:11px;padding-inline:12px}.related-inner h2{font-size:26px}.related-inner p:not(.eyebrow){font-size:13px}.footer-main address{font-size:11px}.rfq-unavailable{gap:30px}.rfq-unavailable h2{font-size:28px}.profile-download{font-size:11px}.service-grid .service-card{height:100%}.gallery-grid img{height:95px}}
@media(prefers-reduced-motion:reduce){.portfolio-card{transition:none}}
