/* HELPRITE GROUP / V19 — a fresh editorial design system.
   Public presentation only: database, forms, navigation contracts and CMS unchanged. */
:root {
  --paper:#fff;
  --bg:#fff;
  --ink:#10233f;
  --heading:#10233f;
  --body:#475c74;
  --mute:#5c7088;
  --blue:#1f5b98;
  --blue2:#174675;
  --line:#dde6ee;
  --hairline:#dde6ee;
  --section-alt:#f5f7f9;
  --footer:#10233f;
  --container:1570px;
  --display-font:'Plus Jakarta Sans',sans-serif;
  --body-font:'DM Sans',sans-serif;
}
*, *::before,*::after {box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{background:#fff;color:var(--ink);font:400 16px/1.65 var(--body-font)}
body,main,.on{max-width:100%;overflow-x:clip}
.w{max-width:var(--container);width:100%;padding-inline:clamp(24px,5vw,82px)!important;margin-inline:auto}
h1,h2,h3,h4{font-family:var(--display-font);font-weight:750;letter-spacing:-.048em;line-height:1.2;color:#10233f}
a:focus-visible,button:focus-visible{outline:3px solid #71a8df;outline-offset:3px}
.lab{font:800 .72rem/1.5 var(--body-font);letter-spacing:.17em;color:#2d689f}

/* New navigation: white brand navigation under a slender navy information strip. */
header.top,header.top.sc{background:#fff!important;color:#142b47!important;border:0!important;box-shadow:0 1px 0 rgba(18,47,77,.11)!important}
header.top .util{background:#112640!important;border:0!important;color:#d8e7f7!important}
header.top .util .w{justify-content:space-between!important;gap:12px 24px;padding-block:7px!important;min-height:36px}
header.top .util .w>*,header.top .util a,header.top .util .utility-info{color:#d8e7f7!important;font-size:.73rem}
header.top .utility-left,header.top .utility-right{gap:18px!important}
header.top .util .social-links{gap:5px}
header.top .util .social-link{border-color:rgba(255,255,255,.28)!important;color:#fff!important;width:28px;height:28px;background:none!important}
header.top .util .social-link:hover{background:#fff!important;color:#143359!important}
header.top .bar,header.top.sc .bar{min-height:88px!important;position:relative;display:grid!important;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;gap:20px;background:#fff!important}
header.top .logo{z-index:1}
header.top .logo img.lg-l,header.top.sc .logo img.lg-l{display:block!important;filter:none!important;width:185px!important;max-width:100%;height:auto}
header.top .logo img.lg-d,header.top.sc .logo img.lg-d{display:none!important}
header.top nav{grid-column:2;position:static}
header.top nav ul{display:flex;align-items:center;gap:clamp(16px,1.7vw,31px)!important;padding:0;margin:0}
header.top nav li a,header.top.sc nav li a{display:inline-flex;align-items:center;min-height:88px;color:#34485f!important;font:700 .84rem/1.4 var(--body-font)!important;letter-spacing:-.015em;text-decoration:none;white-space:nowrap;background:transparent!important;padding:0!important;position:relative}
header.top nav li a::after{content:""!important;display:block!important;position:absolute!important;width:0!important;height:2px!important;left:0!important;bottom:22px!important;background:#2e75b4!important;border:0!important;transition:width .2s ease}
header.top nav li a:hover,header.top nav li a[aria-current="page"]{color:#134c86!important}
header.top nav li a:hover::after,header.top nav li a[aria-current="page"]::after{width:100%!important}
header.top .portal-desktop,header.top.sc .portal-desktop{grid-column:3;justify-self:end;background:#1b558e!important;color:#fff!important;border:1px solid #1b558e!important;min-height:42px;border-radius:4px!important;font-weight:750;font-size:.78rem!important;padding:10px 17px!important;white-space:nowrap}
header.top .portal-desktop:hover{background:#0f3d6e!important;border-color:#0f3d6e!important}
header.top .menu,header.top.sc .menu{border:1px solid #d2dfe9!important;border-radius:5px!important;background:#fff!important;color:#193e64!important}
header.top nav .drawer-header,header.top nav .drawer-details,header.top nav .portal-mobile{display:none}

/* Rebuilt full-bleed, editorial home hero. Entirely new artboard, no reused monogram frame. */
.hero.hero-atelier.v19-hero{position:relative;background:#10243d!important;color:#fff!important;border:0!important;overflow:hidden;isolation:isolate}
.hero.hero-atelier.v19-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 53%,rgba(44,108,157,.13) 53.15%,rgba(44,108,157,.13) 53.25%,transparent 53.3%)!important;pointer-events:none}
.hero.hero-atelier.v19-hero:after{content:"";position:absolute;width:30vw;height:30vw;max-width:510px;max-height:510px;right:-14vw;top:-21vw;border:1px solid rgba(143,189,225,.13);border-radius:100%;pointer-events:none}
.v19-hero-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(40px,5vw,105px);padding-top:clamp(74px,8vw,125px);padding-bottom:clamp(74px,7vw,116px)}
.v19-hero-content{min-width:0;position:relative;z-index:2}
.v19-hero .hero-kicker{display:flex;align-items:center;gap:10px;color:#94bfdf!important;letter-spacing:.19em;font-size:.7rem;margin-bottom:28px}
.v19-hero .hero-kicker .kicker-line{height:2px;width:34px;background:#94bfdf;display:block}
.v19-hero h1{color:#fff!important;font-size:clamp(2.45rem,3.9vw,3.95rem)!important;line-height:1.145!important;letter-spacing:-.059em!important;font-weight:800;max-width:17.6ch;margin:0 0 29px}
.v19-hero h1 .hero-emphasis{color:#8bc7f1!important;white-space:normal}
.v19-hero h1 .hero-emphasis::after{display:none!important}
.v19-hero .hero-summary{max-width:48ch;color:#cbdbe8!important;font:400 clamp(1rem,1.13vw,1.15rem)/1.72 var(--body-font)!important;margin:0}
.v19-hero .hero-actions{display:flex;gap:14px 29px;align-items:center;flex-wrap:wrap;justify-content:flex-start!important;margin-top:38px}
.v19-hero .hero-primary,.v19-hero .hero-primary:visited{background:#eaf5ff!important;border:1px solid #eaf5ff!important;border-radius:4px!important;min-height:50px;color:#102b4a!important;padding:12px 22px;font-weight:800;box-shadow:none!important}
.v19-hero .hero-primary:hover{background:#fff!important;color:#102b4a!important;transform:translateY(-2px)}
.v19-hero .hero-secondary,.v19-hero .hero-secondary:visited{color:#fff!important;border-bottom-color:rgba(255,255,255,.6)!important;text-decoration:none}
.v19-hero .hero-secondary svg{fill:currentColor}
.v19-hero-showcase{position:relative;min-height:435px;display:flex;flex-direction:column;justify-content:space-between;padding:26px clamp(25px,3vw,43px) 28px;border:1px solid rgba(171,207,237,.28);background:linear-gradient(155deg,#183958,#142d4a 65%,#18375a);box-shadow:0 36px 62px -48px #0006;overflow:hidden}
.v19-showcase-rail{position:relative;z-index:2;display:flex;justify-content:space-between;gap:12px;color:#a2bdd5;font:700 .64rem var(--body-font);letter-spacing:.18em}
.v19-showcase-mark{pointer-events:none;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.v19-showcase-mark span{font:900 clamp(13rem,23vw,24rem)/1 var(--display-font);letter-spacing:-.22em;color:transparent;-webkit-text-stroke:1px rgba(201,228,250,.28);opacity:.83;transform:translate(-12px,18px)}
.v19-showcase-mark i{position:absolute;width:56%;aspect-ratio:1;right:2%;top:17%;border:1px solid rgba(178,217,247,.18);border-radius:50%}
.v19-showcase-mark i::before,.v19-showcase-mark i::after{content:"";position:absolute;border-radius:100%;border:1px solid rgba(178,217,247,.15);inset:15%}
.v19-showcase-mark i::after{inset:33%}
.v19-sector-strip{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(189,222,248,.3);padding-top:24px;gap:24px}
.v19-sector-cell{display:flex;flex-direction:column;gap:6px}
.v19-sector-cell+ .v19-sector-cell{border-left:1px solid rgba(189,222,248,.28);padding-left:24px}
.v19-sector-num{font:750 .59rem var(--body-font);letter-spacing:.11em;color:#96b5d1}
.v19-sector-cell strong{font:750 clamp(1.19rem,1.6vw,1.55rem)/1.3 var(--display-font);letter-spacing:-.035em;color:#fff}
.v19-sector-cell>span:last-child{font:400 .78rem/1.45 var(--body-font);color:#c0d3e3}

/* Credibility strip: four terse proof points instead of a heavy navy panel. */
.trust{background:#e9f0f5!important;border:0!important;color:#31516f!important}
.trust ul{padding-top:17px;padding-bottom:17px;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}
.trust li{color:#31516f!important;border-left:1px solid #becedb;font:700 .74rem/1.55 var(--body-font)!important;letter-spacing:0;padding-inline:22px}
.trust li:first-child{border:0;padding-left:0}

/* Section typography and spacing share one scale throughout every PHP page. */
section.s{background:#fff!important;padding:clamp(66px,6.15vw,110px) 0!important;border-top:1px solid #e6edf2!important}
section.s.section-soft{background:#f4f7f9!important}
.s h1{font-size:clamp(2.2rem,3.2vw,3.25rem)!important;letter-spacing:-.052em!important;line-height:1.15!important;max-width:23ch}
.s h2{font-size:clamp(1.65rem,2.45vw,2.65rem)!important;line-height:1.24!important;letter-spacing:-.047em!important;max-width:29ch}
.s h3{font-size:clamp(1.12rem,1.5vw,1.42rem)!important;letter-spacing:-.035em!important}
.s p{color:#50637b;font:400 clamp(.97rem,1.05vw,1.065rem)/1.76 var(--body-font)!important}
.s .w>h2:first-child{margin:0 0 25px!important}
.s .w>h2:first-child::before{content:none!important}
[data-p] > section:first-child:not(.hero){position:relative;background:#f1f5f8!important;border-top:0!important;border-bottom:1px solid #dfe7ee!important;padding:clamp(60px,6vw,104px) 0!important}
[data-p] > section:first-child:not(.hero)::before{content:"";width:3px;height:92px;position:absolute;left:0;top:0;background:#2f6da5}
[data-p] > section:first-child:not(.hero) .lab{color:#3b78ad}
[data-p] > section:first-child:not(.hero) h1{font-size:clamp(2.35rem,3.35vw,3.55rem)!important;letter-spacing:-.054em!important;margin:0 0 19px!important;max-width:24ch}
[data-p] > section:first-child:not(.hero) .w>h1+h2{font-size:clamp(1.19rem,1.6vw,1.54rem)!important;color:#58718b!important;letter-spacing:-.025em!important;font-weight:500!important;margin:0 0 22px!important}
[data-p] > section:first-child:not(.hero) p{max-width:76ch}
.intro,.two{gap:clamp(30px,5vw,82px)!important}
.intro{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important}
.two{grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr)!important}
.intro>h2:first-child::before,.two>h2:first-child::before{width:28px;height:3px;background:#3278b3;margin-bottom:22px}

/* Actions: editorial service directory rather than floating promotional cards. */
.route{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;border-top:1px solid #d3e0eb;margin-top:34px!important}
.route a,.route a:nth-child(n+4){grid-column:auto!important;min-height:190px!important;border:0!important;border-bottom:1px solid #d3e0eb!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:27px 32px 27px 0!important;display:grid!important;grid-template-columns:48px minmax(0,1fr);align-content:start;column-gap:14px;row-gap:3px;transition:background-color .2s ease!important}
.route a:nth-child(even){padding-left:30px!important;border-left:1px solid #d3e0eb!important}
.route a:hover{transform:none!important;background:#ebf2f7!important;box-shadow:none!important}
.route a::before{display:none!important}
.route a .route-icon{grid-column:1;grid-row:1/3;width:43px;height:43px;background:#e4edf5;border:1px solid #cbdcea;border-radius:4px;margin:0!important;color:#245d99}
.route a .route-icon svg{height:21px;width:21px}
.route a .route-number{display:none!important}
.route a b{grid-column:2;font:750 clamp(1.08rem,1.5vw,1.4rem)/1.36 var(--display-font)!important;letter-spacing:-.04em;color:#112a48!important;margin:0 0 4px}
.route a>span:not(.route-icon):not(.route-number){grid-column:2;font:400 .91rem/1.67 var(--body-font)!important;color:#536a82!important;margin:0!important}
.route a i{grid-column:2;font:750 .79rem var(--body-font)!important;margin-top:18px!important;padding:0;color:#15538b!important;align-self:end;min-height:22px}
.route a i svg{height:16px}

/* Brands become a compact two-column business index, not four tall cards. */
.dir{display:grid;grid-template-columns:1fr!important;gap:70px!important;margin-top:36px!important}
.sector{background:transparent!important;border:0!important;padding:0!important}
.sector>h3{display:block!important;width:auto!important;text-transform:uppercase;color:#236395!important;font:800 .7rem/1.5 var(--body-font)!important;letter-spacing:.17em;margin:0 0 8px!important}
.sector>h3::before{content:"";display:inline-block;height:7px;width:7px;vertical-align:2px;margin:0 13px 0 0;background:#236395;border:0;transform:rotate(45deg)}
.sector>p.sub{font-size:1rem!important;margin:0 0 25px!important;max-width:68ch}
.brand-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1px!important;background:#e2eaf1;border:1px solid #e2eaf1}
.brand-card{display:grid!important;grid-template-columns:140px minmax(0,1fr)!important;grid-template-rows:auto auto 1fr auto!important;gap:5px 25px!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:25px!important;min-height:230px!important;align-content:start;transition:background .2s ease!important}
.brand-card:hover{transform:none!important;background:#f9fbfc!important;box-shadow:none!important;border:0!important}
.brand-card .lt{grid-column:1!important;grid-row:1/5!important;align-self:stretch;display:grid!important;place-items:center;height:100%!important;min-height:135px!important;margin:0!important;padding:14px!important;background:#132d4e!important;border-radius:4px!important;position:relative;overflow:hidden}
.brand-card .lt::before{display:none!important}
.brand-card .lt img{max-width:100%;max-height:85px;object-fit:contain}
.brand-card h4{grid-column:2;font:760 1.14rem/1.35 var(--display-font)!important;color:#132b49!important;letter-spacing:-.04em!important;margin:0!important}
.brand-card small{grid-column:2;color:#47729a!important;font-size:.71rem!important;font-weight:800!important;letter-spacing:.01em}
.brand-card p{grid-column:2;font:.88rem/1.62 var(--body-font)!important;color:#5c6e83!important;margin:6px 0 10px!important}
.brand-card a{grid-column:2;align-self:end;display:flex;justify-content:space-between;align-items:center;margin-top:4px!important;min-height:37px!important;padding-top:10px!important;border-top:1px solid #e1e8ee!important;color:#1b5b98!important;font:.77rem var(--body-font)!important;font-weight:750!important}
.brand-arrow{height:30px!important;width:30px!important}
.care .card{display:grid!important;grid-template-columns:minmax(250px,.43fr) minmax(0,.57fr)!important;grid-template-rows:repeat(5,auto)!important;gap:9px 35px!important;background:#fff!important;border:1px solid #dfe7ee!important;border-radius:4px!important;padding:28px!important;min-height:270px!important}
.care .lt{grid-column:1!important;grid-row:1/6!important;min-height:225px!important;height:100%!important;border-radius:4px!important;display:grid;place-items:center;background:#132d4e!important}
.care .card h4{grid-column:2;grid-row:1;font-size:1.5rem!important}
.care .card small{grid-column:2;grid-row:2}
.care .card p{grid-column:2;grid-row:3}
.care .areas{grid-column:2;grid-row:4;grid-template-columns:repeat(2,minmax(0,1fr))}
.care .card a{grid-column:2;grid-row:5}

/* Page cards and process lists: typography + thin rules, not floating boxes. */
.three{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;margin-top:30px!important;border-top:1px solid #cbd9e5!important}
.three>div,.three>div:first-child{background:transparent!important;border:0!important;border-right:1px solid #dae3eb!important;border-radius:0!important;box-shadow:none!important;transform:none!important;min-height:0!important;padding:30px 30px 13px!important}
.three>div:first-child{padding-left:0!important}
.three>div:last-child{border-right:0!important}
.three>div::before{content:"";position:static;display:block;width:25px;height:3px;background:#3b7fb6;margin:0 0 25px}
.three h3{font-size:1.26rem!important;line-height:1.33!important;margin:0 0 12px!important}
.three p{font-size:.95rem!important;line-height:1.75!important}
.panel{background:#fff!important;border:1px solid #d8e4ee!important;border-left:4px solid #2c6eaa!important;border-radius:4px!important;box-shadow:none!important;padding:clamp(27px,3.4vw,48px)!important}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px!important;background:#d7e3ec;border:1px solid #d7e3ec;margin-top:30px}
.steps li{border:0!important;border-radius:0!important;background:#fff!important;min-height:195px;padding:25px 22px!important}
.steps li::before{color:#3777ae;font-size:1.13rem;margin-bottom:20px}
.pp{background:#fff;border:1px solid #e1e9f0;border-radius:3px!important;box-shadow:none!important;transform:none!important;padding:25px!important}
.av{background:#eaf1f7!important;color:#22578d!important}
blockquote.fm{border-left:3px solid #3c82bc;padding-left:clamp(18px,2.6vw,34px);color:#1f3956;font:500 clamp(1.18rem,1.9vw,1.62rem)/1.67 var(--display-font)}

/* Partner directory: structured lines, labels in a sticky-like rail. */
[data-p="partner"] .partner-index-section{background:#fff!important}
[data-p="partner"] .partner-index-category{border:1px solid #d9e4ed!important;border-radius:0!important}
[data-p="partner"] .partner-index-rail{background:#edf3f7!important;border-right:1px solid #d9e4ed!important}
[data-p="partner"] .partner-index-item{border-bottom:1px solid #d9e4ed}
[data-p="partner"] .partner-index-item:hover{background:#f6f9fb!important}
[data-p="partner"] .partner-index-proposal{background:#eaf1f6!important;border-left-color:#2d73ad!important;border-radius:0!important}
.partner-enquiry{background:#f4f7f9!important}
.partner-enquiry form{background:#fff!important;border:1px solid #dbe4ed;border-radius:4px!important;box-shadow:none!important}
input,select,textarea{border:1px solid #cfdae4!important;border-radius:3px!important;background:#fff!important;min-height:50px!important;font-size:.94rem!important}
input:focus,select:focus,textarea:focus{border-color:#2a6fa9!important;box-shadow:0 0 0 3px rgba(42,111,169,.12)!important}
.btn{border-radius:4px!important;box-shadow:none!important}

/* Closing invitation: navy edge-to-edge, unified with footer. */
section.s.cta{background:#15314e!important;color:#fff!important;border:0!important;padding:clamp(58px,6vw,96px) 0!important}
.cta .w{display:grid!important;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:12px 60px;border:0!important;padding-top:0!important}
.cta h2{color:#fff!important;font-size:clamp(1.75rem,2.5vw,2.67rem)!important;max-width:26ch}
.cta p,.cta a:not(.btn),.cta .lnk{color:#d1e1ef!important}
.cta .row{display:flex;grid-column:2!important;grid-row:1/span 2!important;justify-content:flex-start!important;align-items:center;flex-wrap:wrap}
.cta .btn{background:#eaf4fd!important;color:#102d4d!important;border-color:#eaf4fd!important;font-weight:800}
.cta .btn:hover{background:#fff!important}
.cta .cta-contact-line{grid-column:1 / -1;grid-row:auto;margin-top:10px!important;font-size:.9rem!important}
.cta .cta-contact-line a{color:#e4f2ff!important}

/* Footer: matching navy, restrained columns and elegant breathing room. */
footer{background:#0c2038!important;color:#fff!important;padding:73px 0 30px!important;border-top:0!important}
footer .g{display:grid!important;grid-template-columns:minmax(0,1.65fr) minmax(140px,.56fr) minmax(140px,.58fr)!important;gap:clamp(25px,4.5vw,78px)!important}
footer .logo img.lg-d{display:block!important;filter:none!important;width:190px;height:auto}
footer .logo img.lg-l{display:none!important}
footer h2{color:#f1f7ff!important;font-size:.72rem!important;letter-spacing:.15em!important;margin-bottom:21px!important}
footer p{color:#b9cee1!important;font:.9rem/1.88 var(--body-font)!important}
footer a{color:#d7e4ef!important}
footer a:hover{color:#fff!important}
footer li{margin-bottom:13px}
footer .social-links{gap:9px}
footer .social-link{border:1px solid rgba(206,225,239,.33);background:transparent;color:#fff}
footer .social-link:hover{background:#eaf4fd!important;color:#122d48!important}
footer .fine{color:#93abc0!important;border-top:1px solid rgba(206,225,239,.18)!important;margin-top:55px!important}

@media(max-width:1320px){
 header.top .bar,header.top.sc .bar{grid-template-columns:minmax(150px,.8fr) auto minmax(145px,.8fr);gap:12px}
 header.top nav ul{gap:clamp(11px,1.1vw,20px)!important}
 header.top nav li a{font-size:.78rem!important}
 header.top .logo img.lg-l{width:159px!important}
}
@media(max-width:1080px){
 header.top .portal-desktop{display:none!important}
 header.top .bar,header.top.sc .bar{grid-template-columns:1fr auto;gap:16px}
 header.top nav{grid-column:auto}
 .v19-hero-layout{gap:34px}
 .v19-hero-showcase{min-height:365px}
 .brand-card{grid-template-columns:115px minmax(0,1fr)!important;padding:21px!important;gap:4px 16px!important}
}
@media(max-width:980px){
 header.top .bar,header.top.sc .bar{min-height:77px!important;display:flex!important;justify-content:space-between!important;gap:20px}
 header.top .logo img.lg-l{width:166px!important}
 header.top .menu{display:inline-flex!important;align-items:center;justify-content:center;flex:none;z-index:12}
 header.top nav{grid-column:auto;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:min(90vw,390px)!important;height:100dvh!important;max-width:390px;overflow-y:auto;overscroll-behavior:contain;background:#10243f!important;border-left:1px solid rgba(255,255,255,.14);box-shadow:-20px 0 45px rgba(0,0,0,.15);padding:28px 26px 36px!important;transform:translateX(110%);transition:transform .25s ease;z-index:11!important;display:flex!important;flex-direction:column;align-items:stretch}
 header.top nav.open,header.top nav.active,header.top nav.is-open,body.nav-open header.top nav{transform:translateX(0)}
 header.top nav .drawer-header{display:flex!important;margin-bottom:22px!important;padding-bottom:16px!important;border-bottom:1px solid rgba(255,255,255,.15)!important}
 header.top nav .drawer-header .drawer-brand img{width:158px;max-width:100%}
 header.top nav ul{display:flex!important;flex-direction:column;align-items:stretch;gap:4px!important;margin:0!important;padding:0!important}
 header.top nav li{padding:0!important;border:0!important}
 header.top nav li a,header.top.sc nav li a{display:block!important;min-height:0!important;padding:15px 12px!important;font:700 .98rem/1.45 var(--body-font)!important;color:#dfeaf4!important;border-radius:3px!important;background:none!important;white-space:normal}
 header.top nav li a::after{display:none!important}
 header.top nav li a[aria-current="page"],header.top nav li a:hover{color:#fff!important;background:rgba(106,174,223,.13)!important}
 header.top nav .portal-mobile{display:flex!important;align-items:center;justify-content:center;margin-top:23px;background:#e7f3ff!important;color:#153a62!important;border-radius:4px!important}
 header.top nav .drawer-details{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:13px;padding-top:26px;margin-top:24px;border-top:1px solid rgba(255,255,255,.18);color:#bcd1e3}
 header.top nav .drawer-details-title{color:#9cbcd7;font:.72rem var(--body-font);font-weight:800;letter-spacing:.15em}
 header.top nav .drawer-detail{display:flex;align-items:center;gap:8px;justify-content:center;font-size:.81rem;color:#e2eef8}
 header.top nav .drawer-socials{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:10px}
 header.top nav .drawer-socials a{color:#fff}
 header.top nav .drawer-socials svg{width:16px;height:16px;fill:currentColor}
 .v19-hero-layout{grid-template-columns:1fr;gap:32px;padding-top:62px;padding-bottom:62px}
 .v19-hero h1{font-size:clamp(2.55rem,5vw,3.45rem)!important}
 .v19-hero-showcase{min-height:330px}
 .intro,.two{grid-template-columns:1fr!important;gap:25px!important}
 .brand-grid{grid-template-columns:1fr!important}
 .brand-card{grid-template-columns:155px minmax(0,1fr)!important}
 .care .card{grid-template-columns:minmax(190px,.42fr) minmax(0,.58fr)!important}
 .trust ul{grid-template-columns:repeat(2,minmax(0,1fr))}
 .trust li:nth-child(3){border-left:0;padding-left:0}
 .trust li{padding-block:5px}
}
@media(max-width:700px){
 .w{padding-inline:22px!important}
 header.top .util{display:none!important}
 header.top .bar,header.top.sc .bar{min-height:74px!important}
 .v19-hero-layout{padding-block:53px 48px!important;gap:27px}
 .v19-hero .hero-kicker{font-size:.64rem;margin-bottom:21px}
 .v19-hero h1{font-size:clamp(2.18rem,8.5vw,2.85rem)!important;max-width:18ch;margin-bottom:23px}
 .v19-hero .hero-summary{font-size:1rem!important;line-height:1.73!important}
 .v19-hero .hero-actions{flex-direction:column;align-items:stretch;justify-content:center!important;gap:17px;margin-top:29px}
 .v19-hero .hero-primary{width:100%;justify-content:center}
 .v19-hero .hero-secondary{align-self:center}
 .v19-hero-showcase{min-height:293px;padding:20px 23px}
 .v19-showcase-mark span{font-size:14rem}
 .v19-sector-strip{gap:12px;padding-top:17px}
 .v19-sector-cell+ .v19-sector-cell{padding-left:12px}
 .v19-sector-cell strong{font-size:1.1rem}
 .v19-sector-cell>span:last-child{font-size:.68rem}
 .trust ul{gap:9px 0;padding-top:14px;padding-bottom:14px}
 .trust li{font-size:.66rem!important;line-height:1.47!important;padding-inline:11px}
 .trust li:nth-child(2),.trust li:nth-child(4){border-left:1px solid #becedb}
 section.s{padding:54px 0!important}
 [data-p] > section:first-child:not(.hero){padding:57px 0!important}
 [data-p] > section:first-child:not(.hero) h1,.s h1{font-size:clamp(2.04rem,7.5vw,2.65rem)!important}
 .s h2{font-size:clamp(1.65rem,5.4vw,2rem)!important}
 .s h3{font-size:1.15rem!important}
 .route{grid-template-columns:1fr!important}
 .route a,.route a:nth-child(n+4){padding:24px 0!important;min-height:0!important;border-left:0!important;border-right:0!important}
 .route a:nth-child(even){padding-left:0!important;border-left:0!important}
 .route a b{font-size:1.17rem!important}
 .dir{gap:45px!important}
 .brand-card{grid-template-columns:115px minmax(0,1fr)!important;padding:18px!important;gap:4px 15px!important}
 .brand-card .lt{min-height:130px!important;padding:9px!important}
 .brand-card h4{font-size:1rem!important}
 .brand-card p{font-size:.83rem!important}
 .brand-card a{font-size:.71rem!important}
 .care .card{display:flex!important;flex-direction:column;gap:12px!important;padding:17px!important}
 .care .lt{height:170px!important;min-height:170px!important;width:100%}
 .care .areas{grid-template-columns:1fr 1fr}
 .three{grid-template-columns:1fr!important;margin-top:26px!important}
 .three>div,.three>div:first-child{border-right:0!important;border-bottom:1px solid #dae3eb!important;padding:24px 0!important}
 .three>div:last-child{border-bottom:0!important}
 .three>div::before{margin-bottom:18px}
 .panel{padding:25px 21px!important}
 .cta .w{display:flex!important;flex-direction:column;align-items:stretch;gap:17px;text-align:center!important}
 .cta .row{justify-content:center!important;display:flex!important;gap:18px}
 .cta .w p{max-width:100%;margin-inline:auto}
 footer{padding:49px 0 24px!important}
 footer .g{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 23px!important}
 footer .g > div:first-child{grid-column:1/-1}
 footer li{overflow-wrap:anywhere}
 footer .fine{margin-top:27px!important}
}
@media(max-width:395px){
 .brand-card{grid-template-columns:1fr!important;grid-template-rows:auto!important}
 .brand-card .lt{grid-column:1!important;grid-row:auto!important;height:140px!important;min-height:140px!important}
 .brand-card h4,.brand-card small,.brand-card p,.brand-card a{grid-column:1!important}
 .brand-card h4{margin-top:7px!important}
 .v19-hero-showcase{min-height:260px}
 .v19-sector-cell strong{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v19-hero *,.route a,.brand-card{animation:none!important;transition:none!important}}
/* Final contrast and control refinements. */
header.top .bar>a.portal.portal-desktop,
header.top.sc .bar>a.portal.portal-desktop,
header.top .bar>a.portal.portal-desktop:visited{color:#fff!important;background:#1b558e!important}
header.top .bar>a.portal.portal-desktop svg{fill:#fff!important;color:#fff!important}
@media(max-width:980px){
 header.top button.menu,header.top.sc button.menu{width:45px;height:45px;min-width:45px;min-height:45px;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:10px!important;color:#174b80!important;background:#fff!important;border-color:#cddce8!important;border-radius:5px!important}
 header.top .menu-glyph{width:22px;height:17px;display:flex!important;flex-direction:column;justify-content:space-between;align-items:stretch}
 header.top .menu-glyph>span{display:block!important;position:relative!important;width:100%!important;height:2px!important;min-height:2px;background:#174b80!important;border-radius:2px;opacity:1!important;transform:translateX(0);transition:transform .22s ease,opacity .22s ease}
 header.top .menu-glyph>span:nth-child(2){width:75%!important;align-self:flex-end}
 header.top button.menu[aria-expanded="true"] .menu-glyph>span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
 header.top button.menu[aria-expanded="true"] .menu-glyph>span:nth-child(2){opacity:0!important}
 header.top button.menu[aria-expanded="true"] .menu-glyph>span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
 header.top button.menu:hover,header.top button.menu[aria-expanded="true"]{background:#eaf2f9!important;border-color:#acc7df!important}
}
/* Preserve Site Settings → Header colour control without sacrificing legibility.
   Saved dark backgrounds use the white logo/navigation; light colours use the navy logo. */
header.top.header-custom .bar,header.top.header-custom.sc .bar{background:inherit!important}
header.top.header-contrast-dark nav li a,header.top.header-contrast-dark.sc nav li a{color:#e8f2ff!important}
header.top.header-contrast-dark nav li a[aria-current="page"],header.top.header-contrast-dark nav li a:hover{color:#a7d9fb!important}
header.top.header-contrast-dark .bar .logo img.lg-l,header.top.header-contrast-dark.sc .bar .logo img.lg-l{display:none!important}
header.top.header-contrast-dark .bar .logo img.lg-d,header.top.header-contrast-dark.sc .bar .logo img.lg-d{display:block!important;filter:none!important;width:185px;max-width:100%;height:auto}
header.top.header-contrast-dark .bar>a.portal.portal-desktop{background:#edf6ff!important;border-color:#edf6ff!important;color:#132c4b!important}
header.top.header-contrast-dark .bar>a.portal.portal-desktop svg{fill:#132c4b!important;color:#132c4b!important}
@media(max-width:980px){
 header.top.header-contrast-dark .menu,header.top.header-contrast-dark.sc .menu{border-color:rgba(255,255,255,.44)!important;background:rgba(255,255,255,.09)!important;color:#fff!important}
 header.top.header-contrast-dark .menu-glyph>span{background:#fff!important}
 header.top.header-contrast-dark nav li a{color:#dfeaf4!important}
 header.top.header-contrast-dark nav li a[aria-current="page"]{color:#fff!important}
}
