:root{--green:#228648;--ink:#30363a;--muted:#62696d;--line:#dfe3e1}html{scroll-behavior:smooth;scroll-padding-top:90px}body{color:var(--ink);background:#fff}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:5px}.header{padding:0 5vw;background:#fff;box-shadow:none;height:84px}.header .logo{min-width:230px}.header nav{gap:25px}.header nav a{font-size:13px;letter-spacing:0}.header .logo small{color:var(--muted)}.contact-pill{font-size:12px;text-transform:none;letter-spacing:0}.hero{height:calc(100svh - 84px);min-height:640px;margin-top:84px;max-height:850px}.hero-content{left:7vw;top:48%;max-width:650px}.hero h1{font-size:clamp(65px,6.5vw,100px);line-height:1.02;letter-spacing:-4px}.hero h1 strong{background:none;-webkit-text-fill-color:#58bb7d;color:#58bb7d;text-shadow:none}.hero-content>p{font-size:17px;line-height:1.7;max-width:440px}.hero-grid{display:none}.hero .btn.green,.btn.green{background:var(--green);box-shadow:none;border-color:var(--green)}.btn{border-radius:0;letter-spacing:0;text-transform:none;font-size:13px}.hero-tech{right:5vw;width:300px}.hero .hero-tech .tech-card{backdrop-filter:none;box-shadow:none;background:rgba(45,51,54,.9)}.hero-scroll{bottom:28px;left:7vw;letter-spacing:.15em}.overview,.complementary{padding:85px 7vw}.section-title{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end;margin-bottom:45px}.kicker{font-size:11px;letter-spacing:.12em;color:var(--green);font-weight:700;margin:0 0 20px}.home-page h2{font-family:Inter,Arial,sans-serif;font-weight:500;font-size:clamp(29px,3vw,43px);line-height:1.2;letter-spacing:-1.4px;margin:0 0 20px}.section-title>p,.field-copy>p:not(.kicker),.complementary p:not(.kicker),.contact-band p:not(.kicker){font-size:15px;line-height:1.75;color:var(--muted)}.capabilities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.capability{display:flex;flex-direction:column;padding:32px 25px;border-right:1px solid var(--line);transition:background .2s}.capability:first-child{padding-left:0}.capability:last-child{border:0}.capability:hover{background:#f5f7f6}.capability img{object-fit:contain;margin-bottom:25px}.capability h3{font-size:23px;margin:0 0 18px;font-weight:500}.capability .card-headline{color:var(--ink);font-size:15px;font-weight:600;line-height:1.5;min-height:48px}.capability p{color:var(--muted);font-size:13px;line-height:1.7}.text-link{font-size:13px;font-weight:600;color:var(--green);display:inline-flex;justify-content:space-between;gap:20px;margin-top:22px}.capability .text-link{margin-top:auto;padding-top:22px}.field-section{display:grid;grid-template-columns:1fr 1fr;background:#f3f5f4}.field-image{min-height:570px;overflow:hidden}.field-image img{width:100%;height:100%;object-fit:cover}.field-copy{padding:65px 7vw 65px 55px}.service-links{margin:28px 0 0}.service-links a{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #d5dad7;font-size:14px}.service-links a:hover{color:var(--green)}.complementary{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:45px;align-items:start}.complement-item{display:flex;gap:15px;border-top:1px solid var(--line);padding-top:22px}.item-number{font-size:12px;color:var(--green);padding-top:5px}.complement-item h3{font-size:19px;font-weight:500;margin:0 0 15px}.complement-item>span:last-child{margin-left:auto}.complementary .complement-item p{font-size:13px}.contact-band{background:#f3f5f4;padding:60px 7vw;display:flex;justify-content:space-between;gap:40px}.contact-actions{min-width:280px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:15px;font-size:15px}.contact-actions .btn{min-width:280px;justify-content:space-between}.contact-actions>span{color:var(--muted);font-size:13px}.site-footer{display:block;padding:60px 7vw 0;background:#fff;color:var(--ink);font-size:13px;letter-spacing:0;text-transform:none}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:80px;padding-bottom:45px}.footer-top h2{font:600 14px Inter,Arial,sans-serif;margin:0 0 25px;letter-spacing:0}.footer-top a{display:block;line-height:1.9;margin-bottom:8px}.footer-top a:hover{color:var(--green)}.footer-top p{color:var(--muted);font-size:13px;line-height:1.8}.footer-brand img{object-fit:contain}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:10px}.solution-page,.engineering-page,.products-page,.about-page{--green:#228648}.reveal{opacity:1;transform:none}.solution-page section,.engineering-page section{box-shadow:none} .home-page .hero-tech .tech-card:hover{transform:translateX(-3px)}
@media(max-width:1100px){.header .logo{min-width:180px}.header nav{gap:14px}.header .logo small{display:none}.section-title{gap:35px}.hero-tech{width:260px}.complementary{gap:24px}.footer-top{gap:35px}}
@media(max-width:1000px){.header nav.mobile-open{display:flex;position:absolute;top:84px;left:0;right:0;background:#fff;padding:25px 7vw;flex-direction:column;border-bottom:1px solid var(--line);gap:22px}.header nav.mobile-open a{font-size:16px}.header nav a.active:before{display:none}.hamburger{color:var(--ink)}.hero-tech{display:none}.capabilities{grid-template-columns:1fr 1fr}.capability:first-child{padding-left:25px}.capability:nth-child(2){border-right:0}.capability:nth-child(-n+2){border-bottom:1px solid var(--line)}.complementary{grid-template-columns:1fr 1fr}.complementary>div{grid-column:1/-1}.field-copy{padding:45px 6vw}.field-image{min-height:500px}}
@media(max-width:650px){.header{height:74px}.header nav.mobile-open{top:74px}.hero{margin-top:74px;min-height:620px;height:calc(100svh - 74px)}.hero-content{left:7vw;right:7vw;top:46%}.hero h1{font-size:62px;letter-spacing:-3px}.hero-content>p{font-size:15px}.hero-buttons{flex-direction:row;flex-wrap:wrap;gap:12px}.hero .btn{padding:15px}.hero-scroll{font-size:9px}.overview,.complementary{padding:55px 7vw}.section-title{grid-template-columns:1fr;gap:0;margin-bottom:28px}.capability{padding:25px 15px}.capability:first-child{padding-left:15px}.capability h3{font-size:20px}.capability .card-headline{font-size:14px;min-height:65px}.capability p{font-size:12px}.capability .text-link{font-size:12px}.field-section{grid-template-columns:1fr}.field-image{min-height:0;height:290px}.field-copy{padding:40px 7vw}.complementary{grid-template-columns:1fr;gap:25px}.contact-band{padding:45px 7vw;flex-direction:column;gap:15px}.footer-top{grid-template-columns:1fr;gap:30px}.site-footer{padding:40px 7vw 0}.footer-top h2{margin-bottom:15px}.footer-bottom{flex-direction:column;gap:12px}.home-page h2{font-size:31px}.contact-actions{min-width:0}.contact-actions .btn{min-width:250px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.hero .eyebrow{color:#d9ddda}.hero-tech{z-index:3}.hero .hero-tech .tech-card{display:grid}.contact-page{padding-top:84px}.contact-page .contact-section{padding-top:65px;padding-bottom:65px}.contact-page .contact-info h2{font-size:48px}.contact-page .contact-form-card{box-shadow:none;border:1px solid #dfe3e1;border-radius:0}.contact-page .contact-info h2 strong{color:#228648}@media(max-width:650px){.contact-page{padding-top:74px}.contact-page .contact-info h2{font-size:37px}}
.contact-page .contact-section{background:#f3f5f4;color:#30363a}.contact-page .contact-section:before,.contact-page .contact-section:after{display:none}.contact-page .contact-info h2{color:#30363a}.contact-page .contact-description,.contact-page .contact-eyebrow,.contact-page .contact-benefits b,.contact-page .contact-details a,.contact-page .contact-details div{color:#62696d}.contact-page .contact-label{color:#228648}
.hero .eyebrow{opacity:1;animation:none;transform:none}.master-addition{padding:60px 8vw;background:#f3f5f4}.master-addition h2{font-size:32px;letter-spacing:-1px}.master-addition>p:not(.kicker){max-width:820px;font-size:15px;line-height:1.8;color:#62696d}
/* Client revision: compact header, animated hero panels, graphite footer. */
.header{height:80px}.header nav a{font-size:14px}.hero{margin-top:80px;height:calc(100svh - 80px)}.contact-page{padding-top:80px}.header nav.mobile-open{top:80px}
.hero .hero-tech .tech-card{opacity:0;transform:translateY(60px);animation:subirCard .7s ease-out forwards}.hero .hero-tech .tech-card:nth-child(1){animation-delay:.5s}.hero .hero-tech .tech-card:nth-child(2){animation-delay:.8s}.hero .hero-tech .tech-card:nth-child(3){animation-delay:1.7s}
.site-footer{background:#2d3336;color:#f5f6f5;border-top:3px solid #228648}.site-footer .footer-top p{color:#bdc5c2}.site-footer .footer-top h2{color:#fff}.site-footer .footer-top a:hover{color:#83d49f}.site-footer .footer-bottom{border-color:#50585b;color:#bdc5c2}.footer-wordmark{font:700 43px/1 'Space Grotesk',Arial,sans-serif;letter-spacing:-2px;color:#fff}
.detail-page{background:#fff;color:#30363a}.detail-hero{margin-top:80px;position:relative;min-height:510px;background:#2d3336;display:flex;align-items:center;overflow:hidden;color:#fff}.detail-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.detail-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,51,54,.98),rgba(45,51,54,.83) 45%,rgba(45,51,54,.24))}.detail-hero-copy{position:relative;z-index:1;padding:70px 7vw;max-width:1050px}.detail-hero .kicker{color:#95d3a9}.detail-hero h1{font:500 clamp(36px,4.4vw,62px)/1.1 Inter,Arial,sans-serif;letter-spacing:-2px;margin:0 0 30px}.detail-intro{padding:50px 7vw;border-bottom:1px solid #dfe3e1;display:grid;grid-template-columns:1fr 1fr;gap:15px 55px}.detail-intro p{margin:0;font-size:17px;line-height:1.8;color:#62696d}.detail-layout{padding:0 7vw 65px;display:grid;grid-template-columns:235px minmax(0,1fr);gap:60px}.detail-layout aside{padding-top:55px;position:sticky;top:100px;align-self:start}.detail-layout aside a{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #dfe3e1;font-size:12px;line-height:1.5}.detail-layout aside a span{color:#228648}.detail-layout aside a:hover{color:#228648}.detail-article{padding:55px 0;border-bottom:1px solid #dfe3e1;scroll-margin-top:100px}.detail-article.with-media{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:35px}.detail-copy h2{font:500 29px/1.25 Inter,Arial,sans-serif;letter-spacing:-.8px;margin:0 0 24px}.detail-copy h3{font-size:14px;margin:22px 0 10px;font-weight:600}.detail-copy p,.detail-copy li{font-size:14px;line-height:1.85;color:#62696d}.detail-copy ul{padding-left:20px}.detail-copy p{margin:0 0 18px}.detail-article figure{margin:0;align-self:start;background:#f3f5f4}.detail-article figure img{width:100%;height:275px;object-fit:contain}.detail-cta{padding:55px 7vw;background:#f3f5f4;display:flex;justify-content:space-between;align-items:center;gap:30px}.detail-cta h2{font:500 32px/1.2 Inter,Arial,sans-serif;letter-spacing:-1px}.detail-cta p:not(.kicker){font-size:14px;line-height:1.7;color:#62696d}.detail-cta .btn{flex-shrink:0}
@media(max-width:1000px){.detail-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.detail-article.with-media{grid-template-columns:1fr}.detail-article figure img{height:260px}}
@media(max-width:650px){.header{height:70px}.header nav.mobile-open{top:70px}.header nav.mobile-open a{font-size:17px}.hero{margin-top:70px;height:calc(100svh - 70px)}.contact-page{padding-top:70px}.detail-hero{margin-top:70px;min-height:420px}.detail-hero-copy{padding:50px 7vw}.detail-hero h1{font-size:37px;letter-spacing:-1.3px}.detail-intro{grid-template-columns:1fr;gap:18px;padding:35px 7vw}.detail-intro p{font-size:15px}.detail-layout{display:block;padding-bottom:35px}.detail-layout aside{position:static;padding-top:30px}.detail-layout aside nav{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.detail-article{padding:35px 0}.detail-copy h2{font-size:26px}.detail-cta{flex-direction:column;align-items:flex-start;padding:40px 7vw}.detail-cta h2{font-size:29px}}
.detail-intro p:only-child{grid-column:1/-1;max-width:1050px}
.formats-open-content{display:block;min-width:0}.formats-open .formats-open-cta{display:inline-flex;align-items:center;gap:24px;margin-top:18px;padding:14px 20px;background:var(--green);color:#fff;font-size:13px;line-height:1.5;transition:background-color .2s ease}.formats-open:hover .formats-open-cta,.formats-open:focus-visible .formats-open-cta{background:#196b38}.formats-open-cta>span{transition:transform .2s ease}.formats-open:hover .formats-open-cta>span{transform:translate(2px,-2px)}
.detail-article figcaption{padding:8px 12px;font-size:11px;line-height:1.5;color:var(--muted)}
.formats-intro{grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);align-items:center}
.formats-open{display:flex;align-items:center;gap:18px;padding:25px;text-align:left;background:#f3f5f4;border:1px solid #dfe3e1;border-left:3px solid var(--green);font:inherit;color:var(--ink);cursor:pointer;transition:background-color .2s ease,border-color .2s ease}
.formats-open:hover{background:#eaf2ed;border-color:var(--green)}
.formats-open svg,.formats-download svg{width:26px;height:26px;flex-shrink:0;fill:none;stroke:var(--green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.formats-open strong{display:block;font-size:21px;font-weight:500;margin-bottom:9px}.formats-open small{display:block;font-size:13px;line-height:1.7;color:var(--muted)}.formats-open-arrow{margin-left:auto;color:var(--green)}
.formats-dialog{width:min(940px,calc(100% - 32px));max-height:85svh;padding:38px;border:0;background:#fff;color:var(--ink);overflow-y:auto;box-shadow:0 24px 90px #0004}
.formats-dialog::backdrop{background:rgba(25,31,34,.72)}.formats-dialog-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.formats-dialog-header .kicker{margin-bottom:15px}.formats-dialog h2{font:500 38px/1.2 Inter,Arial,sans-serif;letter-spacing:-1px;margin:0 0 22px}.formats-close{background:#f3f5f4;border:1px solid #dfe3e1;width:36px;height:36px;flex-shrink:0;font-size:26px;line-height:1;color:var(--ink);cursor:pointer}.formats-close:hover{background:#e5ebe7}
#formats-description{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 30px;max-width:820px}.formats-downloads{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.formats-download{display:flex;align-items:center;gap:16px;padding:22px 10px;border-top:1px solid #dfe3e1;font-size:14px;line-height:1.6;transition:background-color .2s ease,color .2s ease}.formats-download:hover{background:#f3f5f4;color:var(--green)}html.formats-modal-open{overflow:hidden}
@media(max-width:750px){.formats-intro{grid-template-columns:1fr}.formats-dialog{padding:25px}.formats-dialog h2{font-size:30px}.formats-downloads{grid-template-columns:1fr}.formats-download{padding:17px 0}}
.transport-detail-page .detail-hero-image{object-position:center 85%}
.transport-intro-lead{min-width:0}.transport-intro-lead>h3{margin:0;font-size:17px;line-height:1.6}
.transport-client-access{margin-top:26px;padding:22px 24px;border-left:3px solid var(--green);background:#f3f5f4;max-width:430px}
.transport-client-access h2{margin:0 0 8px;font-size:20px;font-weight:500;letter-spacing:-.4px}
.detail-intro .transport-client-access p{font-size:14px;line-height:1.7;margin:0 0 18px}
.transport-client-access .transport-request-button{background:var(--green);color:#fff;border:1px solid var(--green);max-width:100%;gap:24px;box-shadow:none;transition:background-color .2s ease,border-color .2s ease}
.transport-request-button:hover,.transport-request-button:focus-visible{background:#196b38;border-color:#196b38}
.transport-request-button[aria-disabled="true"]{cursor:default}
.header .logo img{width:112px;height:26px;object-fit:contain}
.site-footer .footer-brand img{width:112px;height:26px;filter:brightness(0) invert(1)}
.header .contact-pill{background:linear-gradient(var(--green),var(--green)) left center / 0% 100% no-repeat;transition:background-size .35s ease,color .35s ease}
.header .contact-pill b{color:inherit}
.header .contact-pill:hover,.header .contact-pill:focus-visible{background-size:100% 100%;color:#fff}
.hero h1 strong{color:var(--green);-webkit-text-fill-color:var(--green)}
.hero .hero-solutions{background:var(--green);border:1px solid var(--green);color:#fff;box-shadow:none;transition:background-color .2s ease,border-color .2s ease}
.hero .hero-solutions:hover,.hero .hero-solutions:focus-visible{background:#196b38;border-color:#196b38}
.hero .hero-solutions span{display:inline-block;transition:transform .2s ease}
.hero .hero-solutions:hover span,.hero .hero-solutions:focus-visible span{transform:translate(2px,-2px)}
@media(prefers-reduced-motion:reduce){.hero .hero-tech .tech-card{animation:none!important;opacity:1;transform:none}}
