:root{--navy:#071d41;--navy-2:#102b57;--red:#d71920;--paper:#f6f8fb;--white:#fff;--ink:#101828;--muted:#5d6879;--line:#dce2ea;--soft:#e9edf3;--shadow:0 24px 70px rgba(7,29,65,.12);--display:"Montserrat",sans-serif;--body:"Manrope",sans-serif;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.7;overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.section{padding:112px 0}.site-header{position:fixed;z-index:1000;top:0;left:0;width:100%;color:var(--white);transition:background .35s,box-shadow .35s,color .35s}.site-header.scrolled,.site-header.inner-page{background:rgba(7,29,65,.98);box-shadow:0 8px 30px rgba(0,0,0,.16)}.header-inner{width:min(calc(100% - 48px),1380px);height:88px;margin:auto;display:flex;align-items:center;gap:26px}.brand{display:inline-flex;align-items:center;gap:11px;flex:none}.brand img{width:43px;height:50px}.brand span{display:grid;line-height:1.05}.brand strong{font:800 17px var(--display);letter-spacing:.08em}.brand b{font:700 10px var(--display);letter-spacing:.2em;color:#f5c7c8;margin-top:3px}.brand small{font-size:8px;letter-spacing:.04em;margin-top:5px;opacity:.78}.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:25px;margin-left:auto}.desktop-nav a{font-size:13px;font-weight:600;position:relative;white-space:nowrap}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:2px;background:var(--red);transition:right .25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:0 24px;border:1px solid var(--red);border-radius:2px;background:var(--red);color:var(--white);font-weight:700;font-size:13px;letter-spacing:.02em;cursor:pointer;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}.button:hover{transform:translateY(-2px);background:#b91218;border-color:#b91218;box-shadow:0 10px 25px rgba(215,25,32,.25)}.button-sm{min-height:42px;padding:0 18px}.button-outline-light{background:transparent;border-color:rgba(255,255,255,.55)}.button-outline-light:hover{background:var(--white);border-color:var(--white);color:var(--navy);box-shadow:none}.button-light{background:var(--white);border-color:var(--white);color:var(--navy)}.button-light:hover{background:var(--paper);border-color:var(--paper);color:var(--navy);box-shadow:none}.button-dark{background:var(--navy);border-color:var(--navy)}.button-dark:hover{background:var(--navy-2);border-color:var(--navy-2);box-shadow:0 10px 25px rgba(7,29,65,.2)}.menu-toggle,.mobile-menu{display:none}.hero{position:relative;min-height:100svh;color:var(--white);display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,41,.98) 0%,rgba(4,18,41,.78) 42%,rgba(4,18,41,.18) 77%,rgba(4,18,41,.1) 100%),linear-gradient(0deg,rgba(4,18,41,.38),transparent 44%)}.scan-line{position:absolute;top:-20%;bottom:-20%;left:-10%;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.5),transparent);box-shadow:0 0 24px rgba(255,255,255,.2);animation:scan 9s ease-in-out infinite}@keyframes scan{0%,100%{transform:translateX(0);opacity:0}15%,85%{opacity:.5}50%{transform:translateX(75vw)}}.hero-content{position:relative;z-index:2;padding-top:110px;padding-bottom:95px}.hero-kicker{margin:0 0 12px;color:var(--white);font-size:13px;font-weight:800;letter-spacing:.2em}.hero-tagline{margin:0 0 28px;color:#d6deeb;font-size:14px}.hero h1,.inner-hero h1{font:800 clamp(42px,5.8vw,82px)/1.02 var(--display);letter-spacing:0;margin:0;max-width:900px}.hero h1 em{font-style:normal;color:var(--white);position:relative}.hero h1 em:after{content:"";position:absolute;left:0;bottom:-9px;width:84px;height:4px;background:var(--red)}.hero-copy{max-width:620px;color:#d6deeb;font-size:18px;line-height:1.75;margin:34px 0}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.hero-call{position:absolute;right:0;bottom:0;z-index:3;display:flex;gap:18px;align-items:center;background:var(--red);padding:22px 44px;color:var(--white)}.hero-call span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.hero-call strong{font-size:18px}.scroll-cue{position:absolute;z-index:3;bottom:28px;left:4vw;display:flex;align-items:center;gap:14px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.scroll-cue span{height:1px;width:44px;background:var(--red)}.eyebrow{display:flex;align-items:center;gap:13px;margin:0 0 20px;color:var(--red);font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.eyebrow span{width:34px;height:2px;background:var(--red)}.section-heading{max-width:700px;margin-bottom:54px}.section-heading h2,.content-block h2,.contact-copy h2,.cta-band h2{margin:0;font:800 clamp(35px,4.4vw,58px)/1.08 var(--display);letter-spacing:0;color:var(--navy)}.section-heading>p:last-child{max-width:600px;color:var(--muted);font-size:17px}.split{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:8vw;align-items:center}.split-reverse{grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr)}.image-frame{position:relative;overflow:hidden;background:var(--soft)}.image-frame:before{content:"";position:absolute;z-index:1;inset:0;border:1px solid rgba(255,255,255,.28);margin:16px;pointer-events:none}.image-frame img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .7s}.image-frame:hover img{transform:scale(1.025)}.image-label{position:absolute;left:0;bottom:0;z-index:2;background:var(--navy);color:var(--white);padding:14px 22px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.content-block .lead,.contact-copy .lead{font-size:19px;line-height:1.7;color:var(--navy);font-weight:600;margin:28px 0 16px}.content-block>p:not(.eyebrow):not(.lead),.contact-copy>p:not(.eyebrow):not(.lead){color:var(--muted)}.trust-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);margin:34px 0}.trust-grid div{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid}.trust-grid strong{font-family:var(--display);font-size:16px;color:var(--navy)}.trust-grid span{font-size:12px;color:var(--muted);margin-top:3px}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--navy);font-size:13px;font-weight:800;border-bottom:1px solid var(--navy);padding-bottom:4px;transition:color .2s,border-color .2s}.text-link:hover{color:var(--red);border-color:var(--red)}.services-section{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{background:var(--white);padding:34px 28px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:325px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s,border-top-color .25s;border-top:3px solid transparent}.service-card:hover{position:relative;z-index:1;transform:translateY(-6px);box-shadow:var(--shadow);border-top-color:var(--red)}.line-icon{width:48px;height:48px;color:var(--red);display:grid;place-items:center;margin-bottom:28px}.line-icon svg,.floating-actions svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.service-card h3,.feature h3,.sector-detail h3{font:700 18px/1.35 var(--display);letter-spacing:0;color:var(--navy);margin:0 0 14px}.service-card p,.feature p,.sector-detail p{color:var(--muted);font-size:14px;line-height:1.65;margin:0 0 24px}.service-card .text-link{margin-top:auto;align-self:flex-start}.section-link{text-align:center;margin-top:44px}.industries-dark{background:var(--navy);color:var(--white);position:relative;overflow:hidden}.industries-dark:after{content:"RSF";position:absolute;right:-35px;top:-55px;font:800 280px/1 var(--display);color:rgba(255,255,255,.025)}.section-heading.light{position:relative;z-index:1}.section-heading.light h2,.eyebrow.light,.cta-band .eyebrow{color:var(--white)}.section-heading.light>p:last-child{color:#b8c4d5}.industry-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}.industry-card{min-height:180px;padding:25px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);transition:background .25s}.industry-card:hover{background:var(--red)}.industry-card span{font-size:10px;color:#9aabc1;font-weight:700}.industry-card h3{font:600 16px/1.4 var(--display);margin:auto 0 0}.industry-card b{font-weight:400;font-size:18px;align-self:flex-end}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.feature{background:var(--white);padding:38px}.feature h3{font-size:14px;letter-spacing:.11em}.values-band{background:var(--paper)}.process{background:var(--paper)}.process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);position:relative}.process-list:before{content:"";position:absolute;left:0;right:0;top:30px;height:2px;background:var(--line)}.process-list:after{content:"";position:absolute;left:0;width:20%;top:30px;height:2px;background:var(--red)}.process-list li{position:relative;padding-right:28px}.process-list li span{position:relative;z-index:2;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--white);border:1px solid var(--line);color:var(--red);font:700 13px var(--display)}.process-list h3{font:700 15px/1.5 var(--display);color:var(--navy);margin:24px 0 0}.check-list{padding:0;margin:28px 0 36px;display:grid;grid-template-columns:1fr 1fr;gap:13px;list-style:none}.check-list li{position:relative;padding-left:25px;color:var(--navy);font-weight:600;font-size:14px}.check-list li:before{content:"";position:absolute;left:0;top:.6em;width:10px;height:6px;border-left:2px solid var(--red);border-bottom:2px solid var(--red);transform:rotate(-45deg)}.cta-band{padding:82px 0;color:var(--white);background:linear-gradient(100deg,var(--navy) 0%,var(--navy) 72%,var(--red) 72%,var(--red) 100%);position:relative}.cta-band:after{content:"";position:absolute;right:26%;top:0;height:100%;width:120px;background:var(--navy);clip-path:polygon(0 0,100% 0,0 100%)}.cta-band .container{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;position:relative;z-index:1}.cta-band h2{color:var(--white)}.cta-band p:not(.eyebrow){color:#bac5d5;max-width:640px}.cta-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.contact-preview{background:var(--paper)}.contact-layout{display:grid;grid-template-columns:minmax(0,.83fr) minmax(500px,1.17fr);gap:8vw;align-items:start}.contact-details{display:grid;grid-template-columns:1fr 1fr;margin-top:36px;border-top:1px solid var(--line)}.contact-details>div{padding:22px 18px 22px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column}.contact-details span{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin-bottom:7px}.contact-details a,.contact-details strong,.contact-details address{font-size:14px;font-style:normal;color:var(--navy);font-weight:600}.contact-details-large{grid-template-columns:1fr}.contact-details-large .text-link{align-self:flex-start;margin-top:12px}.form-panel{padding:48px;background:var(--white);box-shadow:var(--shadow);border-top:4px solid var(--red)}.form-panel h3{font:700 25px var(--display);color:var(--navy);margin:0}.form-panel>p{color:var(--muted);font-size:14px;margin:7px 0 30px}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field-full{grid-column:1/-1}.field label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--navy)}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:1px;background:var(--paper);color:var(--ink);padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s}.field input,.field select{height:48px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy-2);box-shadow:0 0 0 3px rgba(16,43,87,.1)}.field [aria-invalid="true"]{border-color:var(--red)}.honeypot{position:absolute!important;left:-9999px!important}.form-submit{display:flex;align-items:center;gap:18px}.form-status{font-size:13px;color:var(--muted);margin:0}.form-status.success{color:#167342}.form-status.error{color:var(--red)}.site-footer{background:#04142e;color:var(--white);padding:76px 0 0}.footer-main{display:grid;grid-template-columns:1.5fr .7fr 1fr 1.15fr;gap:54px;padding-bottom:56px}.footer-brand p{max-width:360px;color:#93a2b7;font-size:14px;margin-top:24px}.site-footer h3{font:700 12px var(--display);letter-spacing:.12em;text-transform:uppercase;color:#fff;margin:0 0 23px}.footer-main>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start}.site-footer .footer-main>div>a,.site-footer address{color:#aab7c8;font-size:13px;margin-bottom:10px;font-style:normal}.site-footer a:hover{color:var(--white)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 28px;display:flex;justify-content:space-between;color:#74859c;font-size:11px}.floating-actions{position:fixed;z-index:900;right:18px;bottom:20px;display:flex;flex-direction:column;gap:8px}.floating-actions a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--white);box-shadow:0 6px 22px rgba(0,0,0,.22);transition:transform .2s,background .2s}.floating-actions a:nth-child(2){background:#167342}.floating-actions a:nth-child(3){background:var(--red)}.floating-actions a:hover{transform:translateY(-3px)}.floating-actions svg{width:21px;height:21px}.floating-actions span{position:absolute;right:62px;background:var(--navy);padding:5px 9px;color:var(--white);font-size:10px;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transform:translateX(5px);transition:.2s}.floating-actions a:hover span{opacity:1;transform:none}.inner-hero{min-height:550px;position:relative;color:var(--white);display:flex;align-items:flex-end;padding:170px 0 85px;overflow:hidden}.inner-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.inner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,41,.96),rgba(4,18,41,.72) 50%,rgba(4,18,41,.35)),linear-gradient(0deg,rgba(4,18,41,.55),transparent)}.inner-hero .container{position:relative;z-index:1}.inner-hero h1{font-size:clamp(40px,5vw,68px);max-width:830px}.inner-hero .container>p:last-child{max-width:620px;color:#d3dce8;font-size:17px;margin:24px 0 0}.sector-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.sector-detail{padding:40px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.sector-detail>span{position:absolute;right:30px;top:30px;font:800 38px var(--display);color:var(--soft)}.sector-detail h3{font-size:20px}.sector-detail p{max-width:80%}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1120px){.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.header-cta{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.industry-grid{grid-template-columns:repeat(3,1fr)}.contact-layout{grid-template-columns:1fr 1.2fr;gap:5vw}.footer-main{grid-template-columns:1.2fr .7fr 1fr}.footer-main>div:last-child{grid-column:1/-1}}
@media(max-width:860px){.container,.header-inner{width:min(calc(100% - 32px),var(--max))}.section{padding:80px 0}.desktop-nav{display:none}.header-cta{display:inline-flex;margin-left:auto}.menu-toggle{display:flex;width:44px;height:44px;border:1px solid rgba(255,255,255,.35);background:transparent;flex-direction:column;justify-content:center;gap:5px;padding:0 11px}.menu-toggle span{display:block;height:2px;background:var(--white);transition:.2s}.menu-toggle.open span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:last-child{transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;top:88px;left:0;right:0;bottom:0;background:var(--navy);padding:30px 24px;flex-direction:column;align-items:stretch;overflow:auto}.mobile-menu.open{display:flex}.mobile-menu>a:not(.button){padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.12);font-weight:600}.mobile-menu .button{margin-top:24px}.hero-overlay{background:linear-gradient(90deg,rgba(4,18,41,.97),rgba(4,18,41,.72)),linear-gradient(0deg,rgba(4,18,41,.5),transparent)}.hero-call{display:none}.split,.split-reverse,.contact-layout{grid-template-columns:1fr;gap:55px}.split-reverse .content-block{order:2}.split-reverse .image-frame{order:1}.industry-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.process-list{grid-template-columns:1fr;gap:0}.process-list:before{left:29px;right:auto;top:0;bottom:0;height:auto;width:2px}.process-list:after{left:29px;top:0;width:2px;height:20%}.process-list li{display:flex;align-items:center;gap:20px;padding:0 0 24px}.process-list h3{margin:0}.cta-band{background:var(--navy)}.cta-band:after{display:none}.cta-band .container{align-items:flex-start;flex-direction:column}.cta-actions{justify-content:flex-start}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-main>div:last-child{grid-column:auto}.contact-layout{grid-template-columns:1fr}.inner-hero{min-height:500px}}@media(max-width:600px){body{font-size:15px;padding-bottom:64px}.container,.header-inner{width:min(calc(100% - 28px),var(--max))}.header-inner{height:76px}.brand img{width:37px;height:44px}.brand strong{font-size:14px}.brand b{font-size:8px}.brand small{display:none}.header-cta{display:none}.mobile-menu{top:76px}.hero{min-height:740px;align-items:flex-end}.hero-bg{object-position:62% center}.hero-content{padding-top:130px;padding-bottom:120px}.hero-kicker{font-size:11px}.hero h1{font-size:41px}.hero-copy{font-size:16px}.hero-actions{flex-direction:column;align-items:stretch}.scroll-cue{display:none}.section{padding:66px 0}.section-heading{margin-bottom:36px}.section-heading h2,.content-block h2,.contact-copy h2,.cta-band h2{font-size:34px}.service-grid,.industry-grid,.feature-grid,.sector-detail-grid{grid-template-columns:1fr}.service-card{min-height:280px}.industry-card{min-height:145px}.trust-grid{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr}.form-panel{padding:30px 22px}.enquiry-form{grid-template-columns:1fr}.field-full{grid-column:auto}.form-submit{align-items:stretch;flex-direction:column}.footer-main{grid-template-columns:1fr;gap:38px}.footer-brand,.footer-main>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:5px}.floating-actions{left:0;right:0;bottom:0;height:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--white);box-shadow:0 -5px 20px rgba(0,0,0,.14)}.floating-actions a,.floating-actions a:nth-child(2),.floating-actions a:nth-child(3){width:auto;height:64px;border-radius:0;box-shadow:none;display:flex;gap:7px;flex-direction:column;font-size:9px;font-weight:700}.floating-actions span{position:static;opacity:1;transform:none;background:transparent;padding:0}.floating-actions a:nth-child(2){border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2)}.floating-actions svg{width:18px;height:18px}.inner-hero{min-height:470px;padding:135px 0 65px}.inner-hero h1{font-size:38px}.sector-detail{padding:32px 26px}.sector-detail p{max-width:90%}.cta-band{padding:60px 0}.cta-actions{width:100%;flex-direction:column}.cta-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scan-line{display:none}.reveal{opacity:1;transform:none;transition:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
