
:root{--helprite-content-width:1120px;--bg:#fff;--card:#fff;--tint:#eef3fb;--line:#dce3ee;--ink:#14213d;--mute:#4b5a73;--blue:#1c4f9c;--blue2:#143a75;--navy:#0f2a57;--on:#fff;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}


html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth}*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.65 "Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3,h4{font-family:Newsreader,Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-.01em;line-height:1.15;margin:0 0 .6em}h1{font-size:clamp(2.2rem,5.2vw,3.7rem)}h2{font-size:clamp(1.6rem,3.2vw,2.25rem)}h3{font-size:1.3rem}
p{margin:0 0 1em;max-width:66ch;overflow-wrap:anywhere}a{color:var(--blue);overflow-wrap:anywhere}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;background:var(--blue);color:var(--on);padding:.6rem 1rem;z-index:99}.skip:focus{left:8px;top:8px}
.w{max-width:var(--helprite-content-width,1120px);margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}
section.s{padding:clamp(3rem,7vw,5.5rem) 0;border-top:1px solid var(--line)}[data-p] .s:nth-of-type(even):not(.cta):not(#brands-home){background:var(--tint)}
header.top{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.util{background:var(--navy);color:#dbe6fa;font-size:.84rem}.util .w{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;justify-content:flex-end;padding-top:.4rem;padding-bottom:.4rem}.util a{color:#dbe6fa;text-decoration:none}
.bar{display:flex;align-items:center;gap:1rem;min-height:70px}.logo{margin-right:auto;display:flex;align-items:center;position:relative}header .logo::before{content:"";position:absolute;right:calc(100% - 3px);top:38px;width:100vw;height:2px;background:var(--blue);pointer-events:none}.logo img{height:46px;width:auto;display:block}.lg-d{display:none!important}


nav ul{display:flex;gap:.2rem;list-style:none;margin:0;padding:0}nav a{display:block;padding:.55rem .8rem;color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem;border-radius:8px;overflow-wrap:normal}
nav a:hover,nav a[aria-current=page]{background:var(--tint);color:var(--blue2)}
.portal{border:1.5px solid var(--blue);color:var(--blue2);font-weight:600;padding:.5rem .95rem;border-radius:8px;text-decoration:none;font-size:.9rem;white-space:nowrap;overflow-wrap:normal}.portal:hover{background:var(--blue);color:var(--on)}
.menu{display:none;background:none;border:1.5px solid var(--line);color:var(--ink);border-radius:8px;padding:.5rem .8rem;font:inherit;cursor:pointer}
.btn{display:inline-block;background:var(--blue);color:var(--on);padding:.85rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;border:0;font-size:1rem;cursor:pointer;overflow-wrap:normal;transition:background .2s}.btn:hover{background:var(--blue2)}
.lnk{font-weight:600;text-decoration:underline;text-underline-offset:5px;overflow-wrap:normal}
.row{display:flex;flex-wrap:wrap;gap:1.2rem 1.6rem;align-items:center}.lab{font-size:.82rem;font-weight:700;color:var(--blue);margin:0 0 .9rem;letter-spacing:.12em}
.hero{position:relative;overflow:hidden;text-align:center;padding:clamp(4rem,10vw,7.5rem) 0 clamp(3.5rem,7vw,5.5rem);background:linear-gradient(180deg,var(--bg),var(--tint))}
.hero .w{position:relative}.hero h1{max-width:19ch;margin-inline:auto;color:var(--navy)}.hero p{margin-inline:auto;font-size:1.2rem;color:var(--mute)}.hero .row{justify-content:center;margin-top:1.8rem}
.sw{position:absolute;inset:-12% -6% auto auto;width:min(620px,80%);opacity:.08;pointer-events:none}.sw+.sw{inset:auto auto -28% -8%;width:min(400px,60%);transform:rotate(180deg)}
.rise{animation:rise .8s ease both}@keyframes rise{from{opacity:0;transform:translateY(14px)}}@media(prefers-reduced-motion:reduce){.rise{animation:none}html{scroll-behavior:auto}}
.trust{background:var(--navy);color:#e4edfb}.trust ul{list-style:none;margin:0 auto;padding:1rem clamp(1rem,4vw,2rem);display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 2.2rem;font-weight:500;font-size:.95rem;max-width:var(--helprite-content-width,1120px)}.trust li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#8fb4f0;margin-right:.55rem}
.intro{display:grid;grid-template-columns:1fr 1.3fr;gap:2.5rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
.three{display:grid;grid-template-columns:repeat(3,1fr)}.three>div{padding:0 1.6rem;border-left:1px solid var(--line)}.three>div:first-child{padding-left:0;border:0}
.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(1.4rem,3vw,2.4rem)}
dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:.5rem 1.5rem}dt{color:var(--mute)}dd{margin:0;font-weight:500}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}.steps li{counter-increment:s;border-top:3px solid var(--blue);padding-top:.9rem}
.steps li::before{content:counter(s);font:600 1.6rem Newsreader,serif;color:var(--blue)}.steps h3{font-size:1.1rem;margin-bottom:.3em}.steps p{color:var(--mute);font-size:.97rem}
.list{list-style:none;padding:0;margin:0}.list li{padding:.9rem 0;border-top:1px solid var(--line)}.list li:last-child{border-bottom:1px solid var(--line)}
form{display:grid;gap:1rem;max-width:620px}label{font-weight:600;display:block;margin-bottom:.3rem}
input,select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--card);border:1.5px solid #7f8da6;border-radius:8px;padding:.7rem .8rem}textarea{min-height:130px}.hint{font-size:.9rem;color:var(--mute);margin:.3rem 0 0}
.msg{border-radius:10px;padding:1rem 1.2rem;font-weight:500}.ok{background:#e3f4e8;color:#14532d}.er{background:#fde8e8;color:#7f1d1d}
.cta{text-align:center;color:#fff;background:linear-gradient(135deg,var(--navy),#143a75)}.cta h2,.cta p{color:#fff;margin-inline:auto}.cta .btn{background:#fff;color:var(--navy)}.cta .lnk{color:#fff}.cta .row{justify-content:center}
/* I'm here to… — 3 + 2 */
.route{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-top:1.6rem}.route a{grid-column:span 2;display:flex;flex-direction:column;gap:.4rem;background:var(--card);border:1px solid var(--line);border-top:1px solid var(--line);border-radius:14px;padding:1.3rem 1.3rem 1.2rem;text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.route a:nth-child(n/**/+4){grid-column:span 3}.route b{font:600 1.3rem Newsreader,Georgia,serif}.route span{color:var(--mute);font-size:.95rem}.route i{margin-top:auto;padding-top:.8rem;font-style:normal;font-weight:600;color:var(--rc,var(--blue))}.route i::after{content:" →"}
.route a:hover{transform:translateY(-3px);box-shadow:0 18px 30px -22px rgba(15,42,87,.6)}.route a:last-child{background:var(--navy);border-color:var(--navy);color:#fff}.route a:last-child span{color:#c7d6f0}.route a:last-child i{color:#8fb4f0}
@media(prefers-reduced-motion:reduce){.route a,.card{transition:none}.route a:hover{transform:none}}
/* brand directory */
.dir{display:grid;grid-template-columns:1.55fr 1fr;gap:1.1rem;margin-top:1.8rem}
.sector{border-radius:24px;padding:clamp(1.1rem,2.4vw,1.8rem)}.sector>h3{display:inline-block;font:700 .78rem "Instrument Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:.4rem .95rem;border-radius:999px;background:var(--navy);color:#fff;margin:0 0 .8rem}.sector>p.sub{margin:0 0 1.3rem;color:var(--mute);font-size:1.02rem}
.prop{background:linear-gradient(180deg,#eaf1fb,#dde8f6);border:1px solid #cbdaf0}.prop>p.sub{color:#3d4d69}
.grid4{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.card{background:#fff;border:1px solid #dce6f4;border-top:1px solid #dce6f4;border-radius:16px;padding:1rem 1rem 1rem;display:flex;flex-direction:column;gap:.45rem;color:#14213d;transition:box-shadow .2s,transform .2s}
.prop .card:hover{box-shadow:0 18px 30px -20px rgba(15,42,87,.55);transform:translateY(-3px)}
.lt{display:grid;place-items:center;min-height:98px;padding:1rem;border-radius:11px;background:var(--tn,#eef3fb);margin:0 0 .5rem}.lt img{max-height:56px;max-width:100%;width:auto}
.card h4{font-size:1.3rem;margin:.2rem 0 0}.card small{align-self:flex-start;background:var(--tn,#eef3fb);color:var(--ac,#1c4f9c);padding:.22rem .7rem;border-radius:999px;font-weight:700;font-size:.8rem}.card small i{display:none}
.card p{color:#4b5a73;font-size:.95rem;margin:.3rem 0 .6rem}
.card a{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:52px;border-top:1px solid #e3eaf5;padding-top:.7rem;font-weight:600;color:#14213d;text-decoration:none;overflow-wrap:normal}.card a::after{content:"→";flex:none;width:34px;height:34px;border-radius:50%;background:var(--ac,#1c4f9c);color:#fff;display:grid;place-items:center;font-size:1rem}.card a:hover{text-decoration:underline;text-underline-offset:4px}
.care{background:var(--navy);border:1px solid #1d3f78;color:#fff}.care>h3{background:#fff;color:var(--navy)}.care>p.sub{color:#c7d6f0}
.care .card{background:#14346a;border-color:#244a8a;border-top-color:#244a8a;color:#fff}.care .card h4{color:#fff}.care .card p{color:#c7d6f0}.care .card small{background:rgba(108,203,220,.16);color:#9be4f1}.care .card a{color:#fff;border-color:#2c5497}.care .card a::after{background:#6ccbdc;color:var(--navy)}
.care .lt{background:rgba(108,203,220,.1)}.care .lt img{max-height:64px}.big .lt{min-height:118px}
.dir .care{display:flex;flex-direction:column}.sector>h3{align-self:flex-start}.hero .lab{color:var(--blue);font-size:.82rem;margin-bottom:1rem}.dir .care .card{flex:1}
.areas{list-style:none;margin:.2rem 0 .8rem;padding:0;display:grid;gap:.6rem}.areas li{border-left:3px solid #6ccbdc;padding:.05rem 0 .05rem .9rem}.areas b{display:block;font-weight:600}.areas span{color:#c7d6f0;font-size:.95rem}
footer{background:var(--tint);padding:3rem 0 2rem;font-size:.95rem}footer .g{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2rem}footer h2{font:700 1rem "Instrument Sans",sans-serif;margin-bottom:.6rem}footer ul{list-style:none;margin:0;padding:0}footer li{margin:.35rem 0}footer a{color:var(--ink)}
.fine{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem;color:var(--mute);font-size:.88rem}
.vl{display:grid;gap:.8rem;margin-top:1.5rem}.vc{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:center;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;padding:1.1rem 1.3rem}.vc h3{margin:0 0 .2rem;font-size:1.2rem}.vc p{margin:0;color:var(--mute);font-size:.93rem}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.55rem}.chips span{background:var(--tint);border-radius:999px;padding:.15rem .7rem;font-size:.82rem;font-weight:500}
.ppl{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:1.5rem}.pp{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.3rem}.av{width:52px;height:52px;border-radius:50%;background:var(--blue);color:var(--on);display:grid;place-items:center;font-weight:600;margin-bottom:.8rem}.pp h3{font-size:1.15rem;margin:0}.pp p{color:var(--mute);margin:.2rem 0 0;font-size:.95rem}
blockquote.fm{margin:0;font:500 clamp(1.2rem,2.3vw,1.5rem)/1.5 Newsreader,Georgia,serif;max-width:62ch}.fm cite{display:block;margin-top:1rem;font:600 1rem "Instrument Sans",sans-serif;font-style:normal}
.back{display:inline-block;margin-bottom:1.2rem;font-weight:600}.jd h2{font-size:1.4rem;margin-top:2rem}.jd ul{padding-left:1.2rem;max-width:66ch}.jd li{margin:.4rem 0}
.lt{background:#000;min-height:0}.care .lt,.big .lt{background:transparent}.lt img{max-width:150px}.care .lt img{max-height:60px}
.card h4{font-size:1.2rem}.card p{margin:.2rem 0 .4rem}.card a{min-height:46px}
.card a{font-size:.92rem}.card a::after{width:30px;height:30px;font-size:.95rem}.lt img{max-width:126px}.grid4>*,.dir>*{min-width:0}
@media(max-width:1000px){.dir{grid-template-columns:1fr}}
@media(min-width:901px){.dir .card{padding:.8rem}.dir .card p{font-size:.92rem;line-height:1.5;margin:.1rem 0 .3rem}.dir .card h4{font-size:1.15rem;margin:0}.dir .card a{min-height:40px;padding-top:.5rem}.dir .card small{font-size:.78rem;padding:.15rem .6rem}.dir .big .areas{gap:.4rem}.dir .big .areas span{font-size:.9rem}}

@media(max-width:900px){.menu{display:block}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);padding:.5rem 1rem 1rem}nav.open{display:block}nav ul{flex-direction:column}.portal{display:none}nav .portal{display:inline-block;margin-top:.5rem}
.intro,.dir,.two,footer .g,.three{grid-template-columns:1fr}.three>div{padding:1rem 0;border:0;border-top:1px solid var(--line)}.grid4{grid-template-columns:1fr}.util .w{justify-content:flex-start}
.route{grid-template-columns:1fr 1fr}.route a,.route a:nth-child(n/**/+4){grid-column:span 1}.route a:last-child{grid-column:span 2}}
@media(max-width:560px){.route{grid-template-columns:1fr}.route a:last-child{grid-column:span 1}dl{grid-template-columns:1fr;gap:.1rem}dd{margin-bottom:.7rem}}
@media(min-width:901px){nav .portal{display:none}}@media(min-width:1180px){nav a{white-space:nowrap;padding:.55rem .65rem}}

/* Multi-page adaptation: no light/dark selector, and no SPA content hiding. */
:root{color-scheme:light;}

/* Keep the original responsive layout, with a readable mobile menu toggle. */
.menu{cursor:pointer;align-items:center;justify-content:center}.menu .icon-bars{display:inline-block;vertical-align:middle}.menu .icon-close{display:none}.menu[aria-expanded="true"] .icon-bars{display:none}.menu[aria-expanded="true"] .icon-close{display:inline-block;vertical-align:middle}
@media(max-width:900px){.top .bar{position:relative}nav.open{display:block}nav .portal{display:inline-block}.top .logo img{max-width:140px}}
/* Dedicated job page retains the HTML template's typography, spacing and cards. */
.jd{padding-top:clamp(3rem,7vw,5.5rem)}.jd .back{margin-bottom:1.5rem}.jd h1{max-width:24ch}.jd .chips{margin:.8rem 0 1.8rem}.jd .job-apply-top,.jd .job-apply-bottom{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin:1.5rem 0}
.jd .job-copy{max-width:76ch}.jd h2{font-size:clamp(1.6rem,3.2vw,2.25rem);margin-top:2rem}.jd .job-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:1.5rem 0}.jd .job-facts>div{background:var(--tint);border:1px solid var(--line);padding:.9rem 1rem;border-radius:12px;min-width:0;overflow-wrap:anywhere}.jd .job-facts small{display:block;color:var(--mute);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.jd .job-facts strong{display:block;font-size:.95rem;font-weight:600}
.vc .btn{white-space:nowrap}.vc .chips span{max-width:100%;overflow-wrap:anywhere}
.vacancy-filters{max-width:none;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end}
.vacancy-filters>div:first-child{grid-column:1/-1}
@media(max-width:900px){nav{z-index:30}.jd .job-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media(max-width:560px){.vacancy-filters{grid-template-columns:1fr}.vc{align-items:flex-start}.vc .btn{width:100%;text-align:center}.jd .job-facts{grid-template-columns:1fr}}
.social-links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid var(--line);border-radius:50%;color:var(--ink)}.social-links svg{height:14px;width:14px;fill:currentColor}.footer-social-wrap h2{margin-top:1rem}


/* V40: exact original template appearance, with the original 1120px
   content width adjustable through Admin > Site Settings > Design & Animation. */
html { color-scheme: light; }
body { background:#fff; color:#14213d; }
.w { width:100%; max-width:var(--helprite-content-width,1120px); margin-left:auto; margin-right:auto;
     padding-left:clamp(1rem,4vw,2rem); padding-right:clamp(1rem,4vw,2rem); }
header.top, header.top.sc, header.top.scrolled-deep {
 background:#fff !important; border-bottom:1px solid #dce3ee;
 box-shadow:none; color:#14213d;
}
header.top .bar { min-height:70px; }
header.top nav a { color:#14213d; font-family:'Instrument Sans',system-ui,sans-serif;
 font-size:.95rem; font-weight:500; }
header.top nav a:hover,header.top nav a[aria-current=page] {
 background:#eef3fb; color:#143a75;
}
header.top .portal { color:#143a75; border-color:#1c4f9c; background:transparent; }
header.top .portal:hover { background:#1c4f9c; color:#fff; }
header.top .logo img { height:46px; width:auto; max-width:none; }
header.top .util { background:#0f2a57; color:#dbe6fa; }
header.top .util a { color:#dbe6fa; }
footer { background:#eef3fb !important; color:#14213d; border:0; padding:3rem 0 2rem; }
footer a { color:#1c4f9c; }
footer .g { grid-template-columns:1.6fr 1fr 1fr; gap:2rem; }
footer h2 { font:700 1rem/1.3 'Instrument Sans',system-ui,sans-serif;
 color:#14213d; margin:0 0 .6rem; letter-spacing:normal; text-transform:none; }
footer li { margin:.35rem 0; }
footer .fine { border-color:#dce3ee; color:#4b5a73; }
.trust { background:#0f2a57; color:#e4edfb; }
.trust .w { max-width:var(--helprite-content-width,1120px); }
@media(max-width:900px){
 header.top nav { background:#fff; border-color:#dce3ee; }
 header.top .menu { color:#14213d; border-color:#dce3ee; }
 footer .g {grid-template-columns:1fr;}
}

/* V40: the homepage company facts belong immediately beneath the hero, never below the CTA.
   The dark blue spans the viewport; text aligns with the site-wide editable content width. */
.on[data-p="home"] > .trust[data-template-trust="home-hero"] {
  display:block !important;
  visibility:visible !important;
  position:relative;
  clear:both;
  width:100%;
  margin:0;
  background:var(--navy);
  color:#e4edfb;
}
.on[data-p="home"] > .trust[data-template-trust="home-hero"] > .w {
  width:100%;
  max-width:var(--helprite-content-width,1120px);
  margin-inline:auto;
}
/* Treat action links as buttons without losing accessible focus styling.
   Plain text links (including template .lnk and legal/footer links) retain their template style. */
a.btn, a.btn:link, a.btn:visited, a.btn:hover, a.btn:focus,
a.portal, a.portal:link, a.portal:visited, a.portal:hover, a.portal:focus,
a[role="button"], a[role="button"]:hover, a[role="button"]:focus,
.route a, .route a:hover, .route a:focus,
.card a, .card a:hover, .card a:focus {
  text-decoration:none !important;
  text-decoration-line:none !important;
}

/* V41: company information strip is a PART OF the hero itself, not a movable
   independent section. Keep original template's hero-to-strip spacing. */
.on[data-p="home"] > section.hero:has(> .trust[data-template-trust="home-hero"]) {
  padding-bottom:0 !important;
}
.on[data-p="home"] > section.hero > .w.rise {
  padding-bottom:clamp(3.5rem,7vw,5.5rem);
}
.on[data-p="home"] > section.hero > .trust[data-template-trust="home-hero"] {
  display:block !important;
  position:relative;
  width:100%;
  margin:0 !important;
  padding:0 !important;
  background:#0f2a57 !important;
  color:#e4edfb !important;
  text-align:center;
  visibility:visible !important;
}
.on[data-p="home"] > section.hero > .trust[data-template-trust="home-hero"] > ul.w {
  width:100%;max-width:var(--helprite-content-width,1120px);
  padding:1rem clamp(1rem,4vw,2rem);
  margin:0 auto;
}

/* V42 — homepage Standards and accountability: match reference template card.
   Scoped to this single section; no other section or button style is changed. */
.on[data-p="home"] > section[data-cms-layer-key="home-s06"] > .w > .panel.row {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start !important;
  gap:1.2rem;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:18px;
  padding:clamp(1.4rem,3vw,2.4rem);
}
.on[data-p="home"] > section[data-cms-layer-key="home-s06"] > .w > .panel.row > div:first-child {width:100%;}
.on[data-p="home"] > section[data-cms-layer-key="home-s06"] > .w > .panel.row > .row {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  align-items:center;
  gap:1.2rem 1.6rem;
}

/* V43 — clean, content-width-aware footer refinement. Scoped to the new footer only. */
footer.helprite-footer{background:#eef3fb!important;border-top:1px solid #dce5f2;padding:58px 0 0!important;color:#13294c;font-family:'Instrument Sans',system-ui,sans-serif}
footer.helprite-footer .w{max-width:var(--helprite-content-width,1120px);margin-inline:auto}
footer.helprite-footer .helprite-footer-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(150px,.8fr) minmax(175px,.8fr);gap:clamp(38px,6vw,100px);align-items:start}
footer.helprite-footer .helprite-footer-company{max-width:465px}
footer.helprite-footer .helprite-footer-logo{display:inline-flex;margin:0 0 19px;align-items:center}
footer.helprite-footer .helprite-footer-logo img{width:142px;height:auto;display:block;max-width:100%}
footer.helprite-footer .helprite-footer-intro{font-size:15px;line-height:1.75;color:#4a607b;max-width:450px;margin:0 0 22px}
footer.helprite-footer .helprite-footer-details{display:grid;gap:13px;padding-top:19px;border-top:1px solid #d7e0ed}
footer.helprite-footer .helprite-footer-details p{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;font-size:13.5px;line-height:1.65;color:#526681}
footer.helprite-footer .helprite-footer-detail-label{display:block;flex-basis:100%;font-size:12px;font-weight:700;letter-spacing:.025em;color:#153760}
footer.helprite-footer .helprite-footer-details a{color:#1d4d94;text-decoration:none;overflow-wrap:anywhere}
footer.helprite-footer h2{font-size:13px!important;line-height:1.4!important;font-weight:700!important;color:#12335f!important;margin:8px 0 21px!important;letter-spacing:.035em!important;text-transform:none!important}
footer.helprite-footer .helprite-footer-links ul{list-style:none;margin:0;padding:0}
footer.helprite-footer .helprite-footer-links li{margin:0 0 13px;padding:0;line-height:1.4}
footer.helprite-footer .helprite-footer-links li a{font-family:'Instrument Sans',system-ui,sans-serif;font-size:14px!important;line-height:1.5!important;font-weight:500!important;color:#4d617b!important;text-decoration:none!important;transition:color .15s ease}
footer.helprite-footer .helprite-footer-links li a:hover,footer.helprite-footer .helprite-footer-details a:hover{color:#1c4f9c!important;text-decoration:none!important}
footer.helprite-footer .footer-social-wrap{margin:26px 0 0;padding-top:20px;border-top:1px solid #d7e0ed}
footer.helprite-footer .footer-social-wrap h2{margin:0 0 14px!important}
footer.helprite-footer .social-links{display:flex;gap:9px;flex-wrap:wrap}
footer.helprite-footer .social-links .social-link{width:36px;height:36px;background:#fff;border:1px solid #d5e0ef;border-radius:9px;color:#214d87;text-decoration:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}
footer.helprite-footer .social-links .social-link:hover{background:#e1eafa;border-color:#90aed5;transform:translateY(-2px)}
footer.helprite-footer .social-links svg{width:16px;height:16px}
footer.helprite-footer .helprite-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;border-top:1px solid #d7e0ed;margin:42px 0 0!important;padding:19px 0 22px!important;color:#667891;font-size:12px;line-height:1.7}
footer.helprite-footer .helprite-footer-separator{padding:0 4px;color:#a4b3c8}
@media(max-width:900px){footer.helprite-footer .helprite-footer-grid{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr));gap:28px}footer.helprite-footer .helprite-footer-intro{font-size:14px}}
@media(max-width:700px){footer.helprite-footer{padding-top:40px!important}footer.helprite-footer .helprite-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}footer.helprite-footer .helprite-footer-company{grid-column:1/-1;max-width:100%}footer.helprite-footer .helprite-footer-intro{max-width:500px}footer.helprite-footer .helprite-footer-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}footer.helprite-footer .helprite-footer-bottom{margin-top:30px!important;align-items:flex-start;flex-direction:column;gap:3px}}
@media(max-width:420px){footer.helprite-footer .helprite-footer-details{grid-template-columns:1fr}footer.helprite-footer .helprite-footer-links li a{font-size:13.5px!important}footer.helprite-footer .helprite-footer-grid{gap:24px 14px}}

/* V44: Show company contact details only inside the expanded mobile menu. */
.mobile-nav-contact { display:none; }
@media (max-width:900px) {
 header.top .util { display:none !important; }
 header.top nav.open .mobile-nav-contact {
  display:grid;
  gap:.35rem;
  margin-top:1rem;
  padding:1rem .8rem .15rem;
  border-top:1px solid #dce3ee;
  color:#4b5a73;
  font:400 .875rem/1.5 'Instrument Sans',system-ui,sans-serif;
 }
 header.top nav .mobile-nav-contact a {
  display:block;
  width:fit-content;
  padding:0;
  border-radius:0;
  background:transparent;
  color:#1c4f9c;
  font-size:inherit;
  font-weight:500;
  text-decoration:none !important;
 }
 header.top nav .mobile-nav-contact a:hover { background:transparent; color:#143a75; text-decoration:none !important; }
}

/* V46: CMS-configured social profiles occupy the left side of the desktop utility bar. */
header.top .util .w{align-items:center;}
header.top .util .util-socials{margin-right:auto;display:flex;align-items:center;min-height:18px;}
header.top .util .util-socials:empty{display:none;}
header.top .util .util-socials .social-links{display:flex;gap:12px;align-items:center;flex-wrap:nowrap;}
header.top .util .util-socials .social-link{width:18px;height:18px;border:0;border-radius:0;color:#dbe6fa;background:transparent;transition:color .2s ease,transform .2s ease;}
header.top .util .util-socials .social-link svg{width:14px;height:14px;fill:currentColor;}
header.top .util .util-socials .social-link:hover,header.top .util .util-socials .social-link:focus-visible{color:#fff;transform:translateY(-2px);}
header.top .util .util-socials .social-link:focus-visible{outline:2px solid #fff;outline-offset:3px;}
@media(max-width:900px){header.top .util .util-socials{display:none!important;}}
header.top nav .mobile-nav-contact .drawer-socials{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 .65rem;}
header.top nav .mobile-nav-contact .drawer-socials a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d9e2ef;border-radius:8px;color:#214d87;text-decoration:none;}
header.top nav .mobile-nav-contact .drawer-socials svg{width:16px;height:16px;fill:currentColor;}
/* Gentle hover refinements with no layout shifts. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .portal, .btn, button[type=submit], .card, footer.helprite-footer .helprite-footer-links a{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .24s ease;}
  .portal:hover,.btn:hover,button[type=submit]:hover{transform:translateY(-2px);}
  footer.helprite-footer .helprite-footer-links a:hover{color:#1d55a4;}
}
@media(prefers-reduced-motion:reduce){header.top .util .util-socials .social-link{transition:none!important;transform:none!important;}}
/* Reveal only on browsers where JavaScript actively observes an element. */
@media(prefers-reduced-motion:no-preference){
 .motion-ready{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.75,.25,1);}
 .motion-ready.is-visible{opacity:1;transform:none;}
}
@media(prefers-reduced-motion:reduce){.motion-ready{opacity:1!important;transform:none!important;transition:none!important;}}

/* V47: top bar social-icon polish */
header.top .util .util-socials{margin-right:auto;display:flex;align-items:center;min-height:32px}
header.top .util .util-socials .social-links{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
header.top .util .util-socials .social-links .social-link{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px!important;height:30px!important;padding:0!important;border:1px solid rgba(215,230,252,.35)!important;border-radius:50%!important;background:rgba(255,255,255,.07)!important;color:#fff!important;text-decoration:none!important;box-shadow:none!important;transition:background-color .2s ease,border-color .2s ease,transform .2s ease!important}
header.top .util .util-socials .social-links .social-link svg{display:block;width:14px!important;height:14px!important;max-width:14px;max-height:14px;fill:currentColor}
header.top .util .util-socials .social-links .social-link:hover,header.top .util .util-socials .social-links .social-link:focus-visible{background:#fff!important;border-color:#fff!important;color:#142e59!important;transform:translateY(-2px)}
header.top .util .util-socials .social-links .social-link:focus-visible{outline:2px solid #a9ccff!important;outline-offset:3px}
@media(prefers-reduced-motion:reduce){header.top .util .util-socials .social-links .social-link{transition:none!important;transform:none!important}}

/* V48 policy pages and accessible cookie choices */
.helprite-policy-header{max-width:800px;margin-bottom:42px}.helprite-policy-header h1{margin:12px 0 16px}.helprite-policy-header>p{font-size:18px;line-height:1.7}.helprite-policy-eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700;color:#21569b}.helprite-policy-reviewed{font-size:13px!important;color:#64748b}.helprite-policy-layout{display:grid;grid-template-columns:minmax(190px,240px) minmax(0,1fr);gap:55px;align-items:start}.helprite-policy-toc{position:sticky;top:110px;background:#eef3fb;padding:24px;border-radius:12px}.helprite-policy-toc h2{font:700 15px 'Instrument Sans',sans-serif!important;margin:0 0 14px}.helprite-policy-toc ul{list-style:none;padding:0;margin:0}.helprite-policy-toc li{margin:0 0 10px}.helprite-policy-toc a{font-size:14px;text-decoration:none}.helprite-policy-toc a:hover{text-decoration:underline}.helprite-policy-content section{scroll-margin-top:110px;padding:0 0 27px;margin:0 0 27px;border-bottom:1px solid #dce4f0}.helprite-policy-content h2{margin:0 0 13px;font-size:29px}.helprite-policy-content p{line-height:1.8;max-width:760px}.helprite-policy-contact{background:#eef3fb;padding:18px 22px;border-radius:9px}.helprite-policy-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.helprite-policy-index a{background:#fff;border:1px solid #dce4f0;border-radius:10px;padding:24px;text-decoration:none;display:flex;justify-content:space-between;gap:12px;font-weight:600}.helprite-policy-index a:hover{border-color:#4b88c6}.helprite-cookie-footer{text-align:right;padding-top:8px}.helprite-cookie-footer button{border:0;background:transparent;color:#234d88;font:inherit;font-size:13px;cursor:pointer;text-decoration:underline}.helprite-cookie-banner[hidden]{display:none!important}.helprite-cookie-banner{position:fixed;inset:auto 0 0;z-index:9999;background:#fff;border-top:1px solid #d9e2ee;box-shadow:0 -8px 30px rgba(15,42,87,.12);padding:20px 24px;font-family:'Instrument Sans',sans-serif}.helprite-cookie-inner{max-width:var(--helprite-content-width,1120px);margin:auto;display:flex;gap:24px;align-items:center;justify-content:space-between}.helprite-cookie-inner strong{color:#102a55}.helprite-cookie-inner p{font-size:14px;line-height:1.6;margin:6px 0 0}.helprite-cookie-actions{display:flex;gap:10px;flex-shrink:0}.helprite-cookie-actions button{font:600 14px 'Instrument Sans',sans-serif;border:1px solid #1c4d94;border-radius:7px;padding:12px 16px;background:#fff;color:#153765;cursor:pointer}.helprite-cookie-actions button:last-child{background:#20559e;color:#fff}.helprite-cookie-actions button:hover{filter:brightness(.94)}@media(max-width:700px){.helprite-policy-layout{grid-template-columns:1fr;gap:20px}.helprite-policy-toc{position:static}.helprite-policy-index{grid-template-columns:1fr}.helprite-cookie-inner{display:block}.helprite-cookie-actions{margin-top:14px;flex-wrap:wrap}.helprite-cookie-actions button{flex:1}}

/* V49 — scope article navigation independently from the site's primary navigation. */
.helprite-policy-page .helprite-policy-layout {
  display: grid;
  grid-template-columns: minmax(210px, 245px) minmax(0, 1fr);
  align-items: start;
  gap: clamp(28px, 4vw, 56px);
}
.helprite-policy-page nav.helprite-policy-toc {
  position: sticky;
  top: 112px;
  left: auto;
  right: auto;
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 24px;
  margin: 0;
  background: #eef3fb;
  border: 1px solid #e0e8f4;
  border-radius: 12px;
  box-shadow: none;
}
.helprite-policy-page nav.helprite-policy-toc ul {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}
.helprite-policy-page nav.helprite-policy-toc li {
  display: block;
  margin: 0;
  padding: 0;
  min-width: 0;
}
.helprite-policy-page nav.helprite-policy-toc a {
  display: block;
  padding: 8px 10px;
  margin: 0;
  border-radius: 6px;
  background: transparent;
  color: #234d88;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
  white-space: normal;
  text-decoration: none;
}
.helprite-policy-page nav.helprite-policy-toc a:hover,
.helprite-policy-page nav.helprite-policy-toc a:focus-visible {
  color: #143d78;
  background: #dce9fa;
  text-decoration: none;
}
.helprite-policy-page .helprite-policy-content {
  min-width: 0;
  width: 100%;
}
.helprite-policy-page .helprite-policy-content section {
  min-width: 0;
}
.helprite-policy-page .helprite-policy-content p,
.helprite-policy-page .helprite-policy-content li {
  overflow-wrap: break-word;
}
@media (max-width: 900px) {
  .helprite-policy-page .helprite-policy-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  .helprite-policy-page nav.helprite-policy-toc {
    position: static;
    inset: auto;
    display: block;
    width: 100%;
    padding: 20px;
  }
  .helprite-policy-page nav.helprite-policy-toc ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px 10px;
  }
}
@media (max-width: 560px) {
  .helprite-policy-page nav.helprite-policy-toc ul {
    grid-template-columns: minmax(0, 1fr);
  }
  .helprite-policy-page .helprite-policy-header {
    margin-bottom: 28px;
  }
  .helprite-policy-page .helprite-policy-content h2 {
    font-size: clamp(23px, 6vw, 28px);
  }
}

/* V53: 10px left margin for desktop top-bar social icons. */
@media (min-width: 901px) {
  header.top .util .util-socials { margin-left: 10px; }
}
