:root{font-family:Arial,Helvetica,sans-serif;color:#24323e;background:#fff;font-synthesis:none;--blue: #4081c3;--grey: #a19394;--red: #e92123;--ink: #122a3c;--soft: #f3f5f6}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}p{font-size:16px;line-height:1.75;color:#57636c}h1,h2,h3{color:var(--ink);margin:0 0 22px;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(42px,5.5vw,76px)}h2{font-size:clamp(31px,3.4vw,46px)}h3{font-size:23px;letter-spacing:-.025em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}main:focus{outline:none}.container{width:min(1200px,calc(100% - 80px));margin-inline:auto}.topbar{background:var(--ink);color:#fff;font-size:12px;letter-spacing:.04em}.topbar .container{display:flex;justify-content:space-between;padding-block:11px}header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #e7e8ea}.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:100px;gap:24px}.logo{width:220px;height:64px;object-fit:contain}nav{display:flex;align-items:center;gap:27px}nav>a{font-size:14px;font-weight:600;padding-block:10px}nav>a.active{color:#2c659f;border-bottom:2px solid var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;background:var(--red);color:#fff;padding:19px 24px;font-weight:700;font-size:14px;border:1px solid transparent;line-height:1.3;transition:background .2s,transform .2s}.button:hover{background:#bf1719;transform:translateY(-2px)}.button.small{padding:15px 18px;font-size:13px;gap:15px}.button.outline{background:transparent;color:var(--ink);border-color:#cbd2d8}.button.light{background:#fff;color:var(--ink)}.button:disabled{opacity:.6;cursor:wait;transform:none}.menu-toggle{display:none}.skip{position:absolute;top:-80px;left:20px;z-index:100;background:#fff;padding:15px}.skip:focus{top:10px}.hero{height:650px;min-height:550px;position:relative;background:var(--ink);color:#fff}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center 60%}.hero-shade{background:linear-gradient(90deg,#091c2ceb,#091c2c99 50%,#091c2c14)}.hero-content{position:relative;padding-top:100px}.hero h1{color:#fff;max-width:830px}.hero .eyebrow{color:#d3e7f9}.hero p:not(.eyebrow){color:#e2e7eb;font-size:23px;margin-bottom:34px}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.17em;color:#2b659f;margin:0 0 20px}.hero-caption{position:absolute;bottom:0;left:0;right:0;padding:23px max(40px,calc((100% - 1200px)/2));border-top:1px solid #ffffff35;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.04em}.hero-caption span{color:#c0ccd5}.section{padding-block:90px}.intro,.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px}.lead{font-size:20px;line-height:1.6;color:#3e4f5c;margin-top:0}.text-link{display:inline-flex;align-items:center;gap:6px;color:#245f98;font-size:14px;font-weight:700;padding-block:12px;border-bottom:1px solid #b6c9da}.text-link:hover{color:#b3191b}.capability-strip{display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:65px}.capability-strip div{padding-left:30px;border-left:2px solid var(--grey)}.capability-strip strong{font-size:27px;display:block;color:var(--ink);margin-bottom:9px}.capability-strip span{font-size:13px;color:#5d6971}.soft{background:var(--soft)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{background:#fff;display:block;box-shadow:0 4px 22px #102c4210;border-bottom:3px solid var(--blue)}.image-wrap{overflow:hidden}.service-card img{width:100%;height:235px;object-fit:cover;transition:transform .3s}.service-card:hover img{transform:scale(1.04)}.card-content{padding:28px}.number{display:inline-block;font-size:12px;color:#8a7678;font-weight:700;letter-spacing:.1em;margin-bottom:18px}.service-card h3{min-height:52px}.service-card p{font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.feature-image{width:100%;height:450px;object-fit:cover}.partner-section{overflow:hidden;padding-block:70px 80px}.partner-intro{max-width:800px;margin:0 auto 38px;text-align:center}.partner-intro .eyebrow{margin-bottom:14px;text-transform:none;letter-spacing:.08em}.partner-intro h2{margin-bottom:16px;font-size:clamp(30px,3.4vw,44px)}.partner-intro h2 span{color:var(--red)}.partner-intro>p:last-child{max-width:620px;margin:0 auto}.partner-marquee{overflow:hidden;padding:6px 0 10px}.partner-marquee__track{display:flex;width:max-content;animation:partner-marquee-scroll 35s linear infinite;will-change:transform}.partner-marquee:hover .partner-marquee__track,.partner-marquee:focus-within .partner-marquee__track{animation-play-state:paused}.partner-marquee__set{display:flex;flex:0 0 auto;gap:22px;margin:0;padding:0 22px 0 0;list-style:none}.partner-marquee__item{flex:0 0 auto}.partner-marquee__card{display:grid;width:220px;height:132px;place-items:center;background:#fff;border:1px solid #e5e9ed;transition:border-color .2s ease,box-shadow .2s ease}.partner-marquee__card img{width:155px;height:105px;object-fit:contain;filter:grayscale(1);opacity:.75;transition:filter .2s ease,opacity .2s ease}.partner-marquee__card:hover,.partner-marquee__card:focus-visible{border-color:var(--blue);box-shadow:0 4px 18px #122a3c12}.partner-marquee__card:hover img,.partner-marquee__card:focus-visible img{filter:grayscale(0);opacity:1}.partner-empty{margin:0;padding:30px;border:1px dashed #cbd2d8;text-align:center}@keyframes partner-marquee-scroll{to{transform:translate3d(-50%,0,0)}}@media(prefers-reduced-motion:reduce){.partner-marquee__track{width:100%;animation:none;transform:none;will-change:auto}.partner-marquee__set{width:100%;flex-wrap:wrap;justify-content:center;padding:0}.partner-marquee__set--duplicate,.partner-marquee__item--duplicate{display:none}}.cta{background:var(--blue);padding-block:70px}.cta>.container{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta h2,.cta p,.cta .eyebrow{color:#fff}.cta p{max-width:600px}.cta .button{flex-shrink:0}footer{background:var(--ink);color:#fff;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:70px}.footer-logo{width:225px;padding:10px;background:#fff}.footer-grid h3{color:#fff;font-size:17px}.footer-grid p{color:#bbc7d0;font-size:14px}.footer-grid a{display:block;font-size:14px;color:#d8e0e6;margin-bottom:15px;overflow-wrap:anywhere}.footer-bottom{border-top:1px solid #ffffff25;margin-top:35px;padding-block:25px;display:flex;justify-content:space-between;font-size:12px;color:#bac8d3}.footer-preferences{display:flex;flex-wrap:wrap;gap:22px}.footer-preferences a,.cookie-settings-link{color:#d8e0e6}.cookie-settings-link{padding:0;border:0;background:none;font-size:inherit}.cookie-settings-link:hover,.footer-preferences a:hover{text-decoration:underline}.cookie-consent{position:fixed;z-index:100;inset:auto 20px 20px;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1100px;margin-inline:auto;padding:22px 24px;border:1px solid #d7dfe5;background:#fff;box-shadow:0 8px 32px #122a3c2b}.cookie-consent__content{max-width:640px}.cookie-consent h2{margin:0 0 8px;font-size:20px}.cookie-consent p{margin:0 0 8px;font-size:14px;line-height:1.5}.cookie-consent__content>a{color:#245f98;font-size:13px;text-decoration:underline}.cookie-consent .cookie-consent__error{margin-top:8px;color:#a3181a}.cookie-consent__actions{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:10px}.cookie-consent__actions .button{padding:13px 16px;gap:8px}.cookie-consent__actions .button:hover{transform:none}.page-hero{background:#edf2f6;padding-block:65px}.page-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.page-hero img{height:350px;width:100%;object-fit:cover}.page-hero h1{font-size:clamp(40px,4.5vw,62px)}.page-hero .lead{margin-bottom:0}.vision{border-left:3px solid var(--blue);padding-left:35px}.vision h3{font-size:29px;line-height:1.4}.value-list{display:flex;gap:12px;flex-wrap:wrap}.value-list span{font-size:13px;border:1px solid #cdd4d9;padding:10px 13px;background:#fff}.three-column{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.three-column article{border-top:3px solid var(--grey);padding-top:25px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.team-grid article{background:#fff;padding:35px}.role{color:#28619a;font-size:14px;font-weight:700}.service-index{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:30px}.service-index a{display:inline-flex;align-items:center;gap:6px;padding:12px 15px;background:var(--soft);font-size:12px;font-weight:700}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-block:65px;border-bottom:1px solid #dce1e5;scroll-margin-top:25px}.service-detail.reverse img{order:2}.service-detail img{width:100%;height:390px;object-fit:cover}.service-detail ul{padding-left:20px;color:#57636c;line-height:1.8}.service-detail h2{font-size:36px}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}.pillars article{background:#fff;padding:28px;border-top:3px solid var(--blue)}.pillars p{font-size:14px}.contact-heading{padding-block:65px 45px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;padding-bottom:90px}.contact-grid aside{padding-top:30px}.contact-grid aside h2{font-size:36px}.contact-link{display:block;color:#245f98;margin-bottom:15px;overflow-wrap:anywhere}.contact-location{margin-top:35px;padding-top:30px;border-top:1px solid #d5dce2}.contact-location p:not(.eyebrow){margin-bottom:14px}.contact-grid aside img{width:100%;height:230px;object-fit:cover;margin-top:35px}hr{border:0;border-top:1px solid #d5dce2;margin-block:35px}.enquiry-form{padding:40px;background:var(--soft);border-top:4px solid var(--blue)}.enquiry-form h2{font-size:30px}.enquiry-form label{display:block;font-size:13px;font-weight:700;margin-block:18px 9px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,textarea,select{width:100%;border:1px solid #bac5ce;background:#fff;border-radius:0;padding:14px;color:var(--ink);min-height:48px}textarea{resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--red)}small{display:block;font-size:12px;color:#596a77;margin-top:7px}.enquiry-form .checkbox{display:flex;align-items:flex-start;gap:10px;margin-block:25px;font-weight:400;line-height:1.7}.checkbox input{width:18px;min-height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--blue)}.checkbox a{text-decoration:underline}.honeypot{position:absolute;left:-9999px}.field-error{color:#ac1517;font-size:13px;margin:6px 0}.form-message{margin-top:20px;font-size:14px;line-height:1.6}.form-message.success{color:#175a3d}.form-message.error{color:#a01416}.reading{max-width:850px;min-height:60vh}.reading h1{font-size:50px}.reading h2{font-size:27px;margin-top:35px}.reading p a{text-decoration:underline}.contact-grid .eyebrow{margin-bottom:15px}@media(min-width:1600px){.hero{height:730px}.hero-content{padding-top:130px}}@media(max-width:1050px){.container{width:calc(100% - 48px)}nav{gap:16px}.logo{width:180px}nav .small{display:none}.intro,.two-column,.split{gap:40px}.service-grid{gap:15px}.card-content{padding:22px}.service-card img{height:200px}.contact-grid{gap:35px}.pillars{grid-template-columns:1fr 1fr}.footer-grid{gap:35px}.hero-content{padding-top:90px}.service-detail{gap:35px}}@media(max-width:700px){.container{width:calc(100% - 36px)}.topbar .container{justify-content:center}.topbar span{display:none}.header-inner{min-height:82px}.logo{width:170px;height:54px}.menu-toggle{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid #ccd5dd;padding:10px;color:var(--ink);font-size:13px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:25px;z-index:20;box-shadow:0 10px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:stretch}nav .small{display:flex}.hero{height:590px;min-height:0}.hero-content{padding-top:85px}.hero h1{font-size:49px}.hero p:not(.eyebrow){font-size:20px}.hero-shade{background:linear-gradient(90deg,#091c2ceb,#091c2c60)}.hero-caption{padding:20px 18px;font-size:11px}.hero-caption span{display:none}.section{padding-block:58px}.intro,.two-column,.split,.page-hero-grid,.contact-grid,.service-detail{grid-template-columns:1fr;gap:30px}.capability-strip{grid-template-columns:1fr;gap:24px;padding-bottom:50px}.capability-strip strong{font-size:23px}.section-heading{align-items:flex-start;flex-direction:column;gap:15px}.service-grid,.three-column,.team-grid{grid-template-columns:1fr}.service-card h3{min-height:0}.service-card img{height:250px}.feature-image{height:330px}.partner-section{padding-block:52px 58px}.partner-intro{margin-bottom:26px}.partner-marquee__set{gap:14px;padding-right:14px}.partner-marquee__card{width:158px;height:104px}.partner-marquee__card img{width:118px;height:82px}.cta{padding-block:50px}.cta>.container{align-items:flex-start;flex-direction:column;gap:20px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{gap:20px;flex-direction:column}.footer-preferences{gap:16px}.cookie-consent{inset:auto 10px 10px;align-items:stretch;flex-direction:column;gap:16px;padding:18px}.cookie-consent__actions{justify-content:stretch}.cookie-consent__actions .button{flex:1 1 170px}.page-hero{padding-block:45px}.page-hero img{height:260px}.page-hero h1{font-size:44px}.vision{padding-left:23px}.three-column{gap:25px;margin-top:30px}.team-grid article{padding:28px}.service-detail.reverse img{order:0}.service-detail{padding-block:40px}.service-detail img{height:280px}.service-detail h2{font-size:31px}.pillars{gap:15px}.pillars article{padding:22px}.contact-heading{padding-block:45px 20px}.contact-grid{padding-bottom:55px}.contact-grid aside{padding-top:0}.enquiry-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.reading h1{font-size:39px}.lead{font-size:18px}}@media(max-width:380px){.hero h1{font-size:42px}.pillars{grid-template-columns:1fr}.button{gap:15px;padding:17px}.hero .eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
