/* PST website: edit colours and spacing here. No external fonts or libraries. */
:root{--ink:#1b2d42;--muted:#566577;--paper:#f8f9fb;--teal:#b6d4ff;--line:#d6dfdd;--blue:#0667ed;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:var(--paper)}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}h2{font-size:clamp(2rem,3.6vw,3rem)}h3{font-size:1.45rem;letter-spacing:-.025em}p+p{margin-top:22px}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #087ee0;outline-offset:5px}.container{width:calc(100% - 96px);max-width:var(--max);margin-inline:auto}.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e2e7e6}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:51px;height:auto}.brand strong{font-size:28px;line-height:1;letter-spacing:.08em;display:block;font-weight:700}.brand>span>span{display:block;font-size:10px;font-weight:700;letter-spacing:.085em;margin-top:6px}nav{display:flex;align-items:center;gap:30px}nav a{font-size:14px;font-weight:600;transition:color .2s}nav a:hover{color:#065ccb}.nav-contact{border:1px solid var(--ink);padding:11px 21px}.nav-contact:hover{background:var(--ink);color:white}.menu-toggle{display:none}.hero{background:#142538;color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;padding-block:70px 55px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.15em;color:#b4c7de;margin-bottom:26px}.eyebrow.dark{color:#3d608c}h1{font-size:clamp(3.3rem,5.9vw,5.25rem);line-height:1.04;letter-spacing:-.055em}h1 em{color:var(--teal);font-style:normal}.hero-intro{font-size:23px;line-height:1.5;margin-top:28px;color:#e1eae9;letter-spacing:-.015em}.hero-description{max-width:435px;color:#b6c7ca;margin-top:18px;font-size:16px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{min-height:49px;padding:12px 26px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;transition:background .2s,color .2s,transform .2s;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--teal);color:#152c4e}.button-primary:hover{background:#d3e4ff}.button-outline{border-color:#698188;color:white}.button-outline:hover{background:#28424a}.engineering-visual{align-self:center;min-width:0}.engineering-visual img{width:100%;height:auto}.engineering-visual figcaption{border-top:1px solid #3a5158;padding-top:16px;display:flex;justify-content:space-between;gap:10px;color:#b0c6c9;font-size:11px;letter-spacing:.08em}.engineering-visual figcaption span:last-child{letter-spacing:0;color:#96b0b6}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #3b5056;padding-block:22px;font-size:11px;letter-spacing:.08em;color:#a6bfc3}.hero-bottom a{font-size:13px;letter-spacing:0;color:#dbe6e6}.hero-bottom a span{margin-left:20px}.industries{border-bottom:1px solid var(--line);background:#edf1f5}.industry-row{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:27px}.industry-row>span:not(:first-child){font-size:17px;letter-spacing:-.02em}.industry-label{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:700}.section{padding-block:100px}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-copy .lead{font-size:20px;line-height:1.6;color:var(--ink)}.about-copy{color:var(--muted)}.about-note{border-top:1px solid var(--line);margin-top:32px;padding-top:25px;display:flex;gap:22px;align-items:flex-start;font-size:14px}.cross{font-size:28px;line-height:1;color:#3264a0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:42px}.section-heading>p{max-width:375px;color:var(--muted)}.services{background:#edf1f5;border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #cbd6d3;border-top:1px solid #cbd6d3}.service-card{background:#f8fafc;padding:28px 26px 32px;border-right:1px solid #cbd6d3;border-bottom:1px solid #cbd6d3;transition:background .25s}.service-card:hover{background:#fff}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}.card-top svg{width:43px;height:43px;stroke:#3264a0;stroke-width:1.35;fill:none}.card-top span{font-size:12px;font-family:monospace;color:#617d80}.service-card h3{min-height:80px;font-size:23px}.service-card>p{font-size:14px;color:var(--muted);margin-top:16px;min-height:94px}.service-card ul{list-style:none;padding:20px 0 0;margin:20px 0 0;border-top:1px solid var(--line);font-size:14px;line-height:1.5}.service-card li{position:relative;padding-left:15px;margin-top:11px}.service-card li:before{content:'+';position:absolute;left:0;color:#3264a0}.services-bottom{display:flex;gap:20px;justify-content:space-between;margin-top:30px;font-size:14px;color:var(--muted)}.text-link{display:inline-block;color:#245692;font-weight:700;border-bottom:1px solid #5b868b;padding-bottom:2px}.text-link:hover{color:#065ccb;border-color:currentColor}.commitment{background:#192f49;color:#fff;position:relative}.commitment-heading{max-width:860px}.commitment-heading h2{font-size:clamp(2rem,3.7vw,3.2rem)}.commitment-heading>p:last-child{max-width:690px;color:#b8cbd0;margin-top:26px}.commitment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:52px}.commitment-grid>div{border-top:1px solid #56717a;padding-top:25px}.commitment-grid span{font-size:12px;color:#98c6c5;font-family:monospace}.commitment-grid h3{font-size:21px;margin-top:18px}.commitment-grid p{font-size:15px;color:#b8cbd0;margin-top:13px;max-width:280px}.contact-intro{color:var(--muted);max-width:390px;margin-block:28px}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#2c535c}.contact-details{border-top:1px solid var(--ink)}.contact-row{padding:23px 0;border-bottom:1px solid var(--line)}.contact-row>span{display:block;font-size:11px;letter-spacing:.12em;color:var(--muted);margin-bottom:10px}.contact-row>a:not(.map-link){font-size:clamp(1.2rem,2.1vw,1.65rem);letter-spacing:-.025em;overflow-wrap:anywhere}.contact-row>a:hover{color:#065ccb}address{font-style:normal;font-size:17px;line-height:1.7}.map-link{font-size:14px;margin-top:15px}.registration{font-size:12px;color:var(--muted);margin-top:21px}footer{background:#e9eef4;border-top:1px solid #cbd7d3}.footer-main{padding-block:35px;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-main strong{font-size:15px}.footer-main p{font-size:12px;color:var(--muted);margin-top:8px}.back-top{font-size:13px}.back-top span{margin-left:15px}.footer-bottom{border-top:1px solid #c8d5d0;padding-block:19px;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--muted)}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:white;color:var(--ink);padding:12px 20px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal.is-pending{opacity:0;transform:translateY(16px)}.reveal{transition:opacity .55s ease,transform .55s ease}
@media(min-width:1450px){.hero-grid{padding-block:86px 65px}}
@media(max-width:1050px){.container{width:calc(100% - 64px)}nav{gap:18px}.brand>span>span{font-size:9px}.section-grid{gap:45px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card h3,.service-card>p{min-height:0}.service-card{padding:30px}.service-card h3{max-width:250px}.hero-grid{gap:15px}.hero-intro{font-size:21px}.industry-row{gap:20px;flex-wrap:wrap}.industry-label{width:100%}}
@media(max-width:760px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{min-height:80px;gap:10px;flex-wrap:wrap}.brand img{width:39px}.brand{gap:8px}.brand strong{font-size:24px}.brand>span>span{font-size:8px;letter-spacing:.04em}.menu-toggle{display:none;border:1px solid #c5d1cc;background:white;color:var(--ink);padding:9px 11px;font-size:12px;min-height:44px;align-items:center;gap:8px}.js .menu-toggle{display:flex}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:18px}nav a{padding:12px}.nav-contact{margin-top:8px;text-align:center}.js nav:not(.is-open){display:none}.hero-grid{grid-template-columns:1fr;padding-block:48px 30px;gap:32px}h1{font-size:clamp(3.1rem,12vw,4.8rem)}.eyebrow{font-size:10px;margin-bottom:22px}.hero-intro{font-size:21px;margin-top:25px}.hero-description{font-size:15px;max-width:450px}.engineering-visual{max-width:510px;width:100%;margin-inline:auto}.engineering-visual img{max-height:360px}.engineering-visual figcaption{font-size:9px}.hero-bottom{padding-block:20px;align-items:flex-start}.hero-bottom>span{font-size:9px;max-width:190px}.hero-bottom a{font-size:12px;white-space:nowrap}.hero-bottom a span{margin-left:5px}.industry-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-block:25px}.industry-label{grid-column:1/-1}.industry-row>span:not(:first-child){font-size:16px}.section{padding-block:64px}.section-grid{grid-template-columns:1fr;gap:30px}.about-copy .lead{font-size:18px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px}.service-grid{grid-template-columns:1fr}.card-top{margin-bottom:24px}.service-card{padding:26px}.service-card h3{max-width:100%;font-size:24px}.service-card>p{font-size:15px}.service-card ul{font-size:14px}.services-bottom{display:block}.services-bottom a{margin-top:12px}.commitment-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.commitment-grid>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px;padding-top:20px}.commitment-grid h3{margin-top:0}.commitment-grid p{grid-column:2;max-width:none}.contact-details{margin-top:10px}.contact-row>a:not(.map-link){font-size:22px}.footer-main{align-items:flex-start;flex-direction:column;padding-block:30px}.footer-bottom{flex-direction:column;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal.is-pending{opacity:1;transform:none}}

/* Original company artwork: preserve its lettering; use a compact lockup on phones. */
.brand{flex:none;gap:14px;min-height:58px}
.brand .brand-symbol{width:68px;height:auto}
.brand-lettering{display:flex;align-items:center;gap:11px}
.brand .brand-pst{width:45px;height:auto}
.brand .brand-company{width:315px;height:auto}
.header-inner{min-height:104px}
.header{border-bottom:3px solid #0667ed}
nav{gap:24px}
.nav-contact{border-color:#0667ed;color:#0757ba}
.nav-contact:hover{background:#0667ed;color:#fff}
@media(max-width:1150px) and (min-width:761px){
 .brand{gap:10px}.brand .brand-symbol{width:48px}
 .brand-lettering{gap:8px}.brand .brand-pst{width:32px}.brand .brand-company{width:224px}
 nav{gap:16px}nav a{font-size:13px}.nav-contact{padding:10px 13px}
}
@media(max-width:900px) and (min-width:761px){
 .header-inner{gap:12px}.brand-lettering{display:grid;gap:5px}.brand .brand-pst{width:33px}
 .brand .brand-company{width:205px}.brand .brand-symbol{width:44px}nav{gap:12px}
}
@media(max-width:760px){
 .header-inner{min-height:83px}.brand{gap:9px;min-height:60px}
 .brand .brand-symbol{width:45px}.brand-lettering{display:grid;gap:6px}
 .brand .brand-pst{width:34px}.brand .brand-company{width:210px}
 .menu-toggle{padding:9px;min-width:58px}.header-inner{column-gap:8px}
}
@media(max-width:374px){
 .brand .brand-symbol{width:35px}.brand .brand-company{width:169px}
 .brand .brand-pst{width:30px}.brand{gap:6px}.menu-toggle{min-width:54px;padding:8px 6px}
}
