:root{--navy:#071a2f;--navy-2:#0b2948;--blue:#164f8c;--amber:#e5a31b;--amber-2:#ffc44d;--paper:#f4f1ea;--white:#fff;--ink:#122235;--muted:#66717c;--line:rgba(7,26,47,.14);--shadow:0 24px 70px rgba(7,26,47,.14);--radius:22px;--container:min(1180px,calc(100% - 48px));}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.container{width:var(--container);margin-inline:auto}.skip-link{position:fixed;left:16px;top:-100px;background:var(--amber);padding:12px 18px;z-index:1000;border-radius:0 0 8px 8px;font-weight:700}.skip-link:focus{top:0}.site-header{height:82px;position:fixed;inset:0 0 auto;z-index:100;background:rgba(7,26,47,.5);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px);transition:.35s ease}.site-header.scrolled{height:70px;background:rgba(7,26,47,.94);box-shadow:0 10px 35px rgba(0,0,0,.18)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:13px;color:#fff}.brand-mark{display:flex;align-items:center;font-family:Manrope,sans-serif;font-size:28px;letter-spacing:-5px;font-style:italic}.brand-mark b:nth-child(1){color:#2c70b4}.brand-mark b:nth-child(2){color:var(--amber)}.brand-mark b:nth-child(3){color:#fff}.brand-copy{display:flex;flex-direction:column;padding-left:3px}.brand-copy strong{font:700 13px/1 Manrope,sans-serif;letter-spacing:.04em}.brand-copy small{margin-top:5px;color:var(--amber-2);font:600 9px/1 Manrope,sans-serif;letter-spacing:.26em;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:32px;color:rgba(255,255,255,.82);font-size:14px;font-weight:600}.site-nav a:not(.nav-cta){position:relative}.site-nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--amber);transition:.3s}.site-nav a:hover::after,.site-nav a:focus-visible::after{right:0}.nav-cta{padding:11px 18px;border:1px solid rgba(255,255,255,.45);border-radius:99px;color:white;transition:.25s}.nav-cta:hover{background:var(--amber);border-color:var(--amber);color:var(--navy)}.menu-toggle{display:none}.hero{min-height:780px;height:100svh;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden;background:var(--navy)}.hero-media{position:absolute;inset:0;background:url("assets/images/cnc-hero.jpg") center/cover no-repeat;transform:scale(1.04);animation:hero-in 1.8s cubic-bezier(.2,.7,.2,1) forwards}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,17,31,.96) 0%,rgba(4,17,31,.83) 38%,rgba(4,17,31,.25) 73%,rgba(4,17,31,.1)),linear-gradient(0deg,rgba(4,17,31,.75),transparent 44%)}.hero::after{content:"";position:absolute;inset:auto -8% -52% 35%;height:65%;background:radial-gradient(circle,rgba(229,163,27,.25),transparent 62%);filter:blur(20px)}.hero-inner{position:relative;z-index:2;padding-top:90px}.hero-copy{max-width:790px}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 22px;text-transform:uppercase;font:700 12px/1 Manrope,sans-serif;letter-spacing:.18em;color:rgba(255,255,255,.72)}.eyebrow span{width:35px;height:2px;background:var(--amber)}.eyebrow.dark{color:var(--blue)}h1,h2,h3{font-family:Manrope,sans-serif;margin-top:0}h1{font-size:clamp(51px,6vw,88px);line-height:.98;letter-spacing:-.055em;margin-bottom:28px}h1 em,h2 em{color:var(--amber);font-style:normal}.hero-lead{max-width:650px;font-size:clamp(17px,1.5vw,20px);line-height:1.65;color:rgba(255,255,255,.76);margin:0 0 38px}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;padding:0 23px;border-radius:999px;font-weight:700;font-size:14px;transition:transform .25s,background .25s,border-color .25s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--amber);color:var(--navy);box-shadow:0 12px 35px rgba(229,163,27,.24)}.btn-primary:hover{background:var(--amber-2)}.btn-ghost{color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.05);backdrop-filter:blur(8px)}.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.12)}.hero-proof{position:absolute;right:0;bottom:7px;display:flex;background:rgba(7,26,47,.7);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(16px);border-radius:18px 18px 0 0}.hero-proof div{display:grid;gap:5px;padding:22px 28px;border-right:1px solid rgba(255,255,255,.13)}.hero-proof div:last-child{border:0}.hero-proof strong{font:700 24px/1 Manrope,sans-serif;color:var(--amber-2)}.hero-proof span{font-size:11px;color:rgba(255,255,255,.6);max-width:125px}.scroll-cue{position:absolute;z-index:3;left:max(24px,calc((100% - 1180px)/2));bottom:30px;display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.65);font-size:11px;text-transform:uppercase;letter-spacing:.16em}.scroll-cue span{width:2px;height:30px;background:linear-gradient(var(--amber) 50%,rgba(255,255,255,.2) 50%);background-size:100% 200%;animation:scroll 2s infinite}.section{padding:130px 0}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.section-heading h2,.solutions-head h2,.support-copy h2,.story-head h2,.contact-copy h2,.parts-content h2{font-size:clamp(40px,4.3vw,66px);line-height:1.05;letter-spacing:-.045em;margin-bottom:0}.intro-copy{padding-top:38px}.intro-copy .lead{font:600 clamp(21px,2vw,28px)/1.45 Manrope,sans-serif;letter-spacing:-.02em;color:var(--navy);margin:0 0 28px}.intro-copy>p:not(.lead){color:var(--muted);font-size:16px;line-height:1.8;max-width:620px}.text-link{display:inline-flex;gap:17px;margin-top:18px;color:var(--blue);font-weight:700;padding-bottom:5px;border-bottom:1px solid rgba(22,79,140,.35)}.solutions{background:#fff}.solutions-head{display:grid;grid-template-columns:1fr .55fr;gap:10%;align-items:end;margin-bottom:55px}.solutions-head>p{color:var(--muted);line-height:1.75;margin:0 0 7px}.service-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:repeat(2,290px);gap:18px}.service-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#faf9f6;overflow:hidden;display:flex;flex-direction:column;transition:transform .35s,border-color .35s,box-shadow .35s}.service-card:hover{transform:translateY(-6px);border-color:rgba(229,163,27,.55);box-shadow:var(--shadow)}.service-card.featured{grid-row:1/3;padding:0;color:#fff;border:0}.card-image{position:absolute;inset:0;background:url("assets/images/cnc-hero.jpg") 70% center/cover}.card-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,17,31,.94),rgba(4,17,31,.06) 70%)}.service-content{position:absolute;inset:auto 34px 34px;display:flex;gap:25px;align-items:flex-start}.service-number{font:700 11px/1 Manrope,sans-serif;color:var(--amber);letter-spacing:.12em}.service-card h3{font-size:21px;line-height:1.28;letter-spacing:-.025em;margin:20px 0 12px}.featured h3{font-size:29px;margin:0 0 13px}.service-card p{font-size:14px;line-height:1.65;color:var(--muted);margin:0}.featured p{color:rgba(255,255,255,.67);max-width:410px}.service-card>a{margin-top:auto;font-size:13px;font-weight:700;color:var(--blue);display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px}.service-icon{width:46px;height:46px;border-radius:14px;background:rgba(229,163,27,.12);display:grid;place-items:center;margin-bottom:auto}.service-icon svg{width:25px;fill:none;stroke:var(--amber);stroke-width:2}.service-card:not(.featured) .service-number{position:absolute;top:32px;right:28px}.support{background:var(--paper)}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.support-visual{position:relative}.support-visual img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.support-visual::before{content:"";position:absolute;width:58%;height:58%;left:-28px;bottom:-28px;border:2px solid var(--amber);border-radius:var(--radius);z-index:-1}.image-badge{position:absolute;right:-30px;bottom:45px;background:var(--navy);color:white;padding:20px 26px;border-left:4px solid var(--amber);box-shadow:0 20px 45px rgba(7,26,47,.25);display:grid;gap:4px}.image-badge span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.55)}.image-badge strong{font:700 16px Manrope,sans-serif}.support-copy>p:not(.eyebrow){font-size:16px;line-height:1.75;color:var(--muted);margin:26px 0 35px}.benefit-list{list-style:none;padding:0;margin:0}.benefit-list li{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:18px 0;border-top:1px solid var(--line)}.benefit-list li>span{color:var(--amber);font:700 11px Manrope,sans-serif}.benefit-list div{display:grid;gap:5px}.benefit-list strong{font:700 15px Manrope,sans-serif}.benefit-list small{color:var(--muted);line-height:1.45}.parts-banner{height:min(75vh,700px);min-height:560px;position:relative;overflow:hidden;color:#fff;display:flex;align-items:center}.parts-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.parts-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,17,31,.95),rgba(4,17,31,.66) 52%,rgba(4,17,31,.08))}.parts-content{position:relative;z-index:2}.parts-content h2{margin-bottom:35px}.story{background:#fff}.story-head{margin-bottom:70px}.timeline{position:relative}.timeline::before{content:"";position:absolute;left:104px;top:10px;bottom:10px;width:1px;background:var(--line)}.timeline-item{display:grid;grid-template-columns:78px 20px 1fr;gap:18px;padding:0 0 50px}.timeline-item:last-child{padding-bottom:0}.timeline-item time{font:800 15px Manrope,sans-serif;color:var(--blue);text-align:right}.timeline-item>span{width:11px;height:11px;margin:4px auto;background:var(--amber);border:3px solid #fff;outline:1px solid var(--amber);border-radius:50%;z-index:1}.timeline-item div{display:grid;grid-template-columns:minmax(220px,.55fr) 1fr;gap:7%;padding-left:18px}.timeline-item h3{font-size:19px;margin:0}.timeline-item p{color:var(--muted);line-height:1.65;margin:0;max-width:550px}.vision{background:var(--amber);color:var(--navy)}.vision-grid{display:grid;grid-template-columns:1.1fr .9fr}.vision article{padding:75px 8% 75px 0}.vision article+article{border-left:1px solid rgba(7,26,47,.25);padding-left:10%}.vision-label{text-transform:uppercase;letter-spacing:.16em;font:800 10px Manrope,sans-serif}.vision blockquote{font:700 clamp(25px,3vw,38px)/1.35 Manrope,sans-serif;letter-spacing:-.03em;margin:25px 0 0}.vision p{font-size:18px;line-height:1.7;margin:25px 0 0}.contact{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr .75fr;gap:10%;align-items:center}.contact-copy>p:not(.eyebrow){color:rgba(255,255,255,.65);line-height:1.7;max-width:570px;margin:26px 0 35px}.contact-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:12px 36px;font-style:normal;backdrop-filter:blur(10px)}.contact-card>div{display:grid;gap:6px;padding:23px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-card>div:last-child{border:0}.contact-card span{text-transform:uppercase;font:700 10px Manrope,sans-serif;letter-spacing:.15em;color:var(--amber)}.contact-card a,.contact-card p{font-size:15px;line-height:1.55;color:rgba(255,255,255,.82);margin:0}.contact-card a:hover{color:var(--amber-2)}.site-footer{background:#04111f;color:#fff;padding:70px 0 0}.footer-main{display:grid;grid-template-columns:1.5fr .5fr .5fr;gap:8%;padding-bottom:55px}.footer-main>div:first-child>p{color:rgba(255,255,255,.52);font-size:14px;line-height:1.7;margin:25px 0 0}.footer-links{display:flex;flex-direction:column;gap:11px}.footer-links span{color:var(--amber);font:700 10px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.17em;margin-bottom:7px}.footer-links a{font-size:14px;color:rgba(255,255,255,.65)}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);min-height:70px;display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.42);font-size:11px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}.reveal.visible{opacity:1;transform:none}@keyframes hero-in{to{transform:scale(1)}}@keyframes scroll{0%{background-position:0 100%}100%{background-position:0 -100%}}
@media (max-width:980px){:root{--container:min(100% - 36px,760px)}.site-nav{position:fixed;inset:70px 0 auto;background:rgba(7,26,47,.98);padding:35px 24px 45px;display:flex;flex-direction:column;align-items:flex-start;gap:26px;transform:translateY(-130%);opacity:0;pointer-events:none;transition:.35s}.site-nav.open{transform:none;opacity:1;pointer-events:auto}.menu-toggle{display:grid;width:42px;height:42px;border:0;background:transparent;place-content:center;gap:5px}.menu-toggle span{display:block;width:23px;height:2px;background:#fff;transition:.25s}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{min-height:760px}.hero-proof{position:relative;right:auto;bottom:auto;margin-top:70px;width:100%;justify-content:space-between}.hero-proof div{flex:1}.scroll-cue{display:none}.intro-grid,.support-grid,.contact-grid{grid-template-columns:1fr;gap:55px}.intro-copy{padding-top:0}.solutions-head{grid-template-columns:1fr;gap:26px}.solutions-head>p{max-width:560px}.service-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 290px 290px}.service-card.featured{grid-column:1/3;grid-row:auto}.support-visual{max-width:600px}.support-visual img{aspect-ratio:4/3}.image-badge{right:20px}.timeline-item div{grid-template-columns:1fr;gap:10px}.contact-card{max-width:600px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/3}.section{padding:100px 0}}
@media (max-width:620px){:root{--container:calc(100% - 30px);--radius:17px}.site-header{height:70px}.brand-copy strong{font-size:11px}.brand-copy small{font-size:8px}.hero{min-height:760px;height:auto;padding:150px 0 40px}.hero-media{background-position:63% center}.hero-overlay{background:linear-gradient(90deg,rgba(4,17,31,.96),rgba(4,17,31,.73)),linear-gradient(0deg,rgba(4,17,31,.85),transparent)}.hero-inner{padding-top:0}h1{font-size:48px}.hero-lead{font-size:16px}.hero-actions,.contact-actions{display:grid}.btn{width:100%}.hero-proof{margin-top:55px;display:grid;grid-template-columns:1fr 1fr;border-radius:15px}.hero-proof div{padding:17px;border-bottom:1px solid rgba(255,255,255,.13)}.hero-proof div:nth-child(2){border-right:0}.hero-proof div:last-child{grid-column:1/3}.section{padding:82px 0}.service-grid{display:grid;grid-template-columns:1fr;grid-template-rows:420px repeat(3,280px)}.service-card.featured{grid-column:auto}.service-content{inset:auto 22px 25px;gap:14px}.service-card{padding:25px}.support-grid{gap:72px}.support-visual img{aspect-ratio:4/5}.support-visual::before{left:-10px;bottom:-16px}.image-badge{right:-5px;bottom:18px}.parts-banner{min-height:580px}.parts-banner>img{object-position:65% center}.timeline::before{left:73px}.timeline-item{grid-template-columns:50px 14px 1fr;gap:12px}.timeline-item div{padding-left:7px}.timeline-item time{font-size:12px}.vision-grid{grid-template-columns:1fr}.vision article{padding:55px 0}.vision article+article{border-left:0;border-top:1px solid rgba(7,26,47,.25);padding-left:0}.contact-card{padding:10px 22px}.contact-card a{overflow-wrap:anywhere}.footer-main{grid-template-columns:1fr 1fr;gap:45px}.footer-main>div:first-child{grid-column:1/3}.footer-bottom{padding:22px 0;gap:20px;align-items:flex-start}.footer-bottom p{margin:0}.reveal{transform:translateY(18px)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Official supplied brand artwork */
.brand{gap:0}
.brand>img{display:block;width:auto;height:60px;border-radius:7px}
.site-header.scrolled .brand>img{height:52px}
.footer-brand>img{height:82px}
@media (max-width:620px){.brand>img{height:50px}.site-header.scrolled .brand>img{height:46px}.footer-brand>img{height:74px}}
