/* Revised direction: brand navy, ice blue and small orange accents.
   The approved hero and header have no selectors in this stylesheet. */
.v2-solutions { background: #f0f5f9; padding-block: 68px; }
.v2-solutions__grid { margin-top: 32px; }
.v2-offer > .v2-copy { font-size: 14px; }
.gm-use-list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 18px 0 0; }
.gm-use-list li { font-size: 11px; line-height: 1.6; padding: 6px 10px; border-radius: 6px; background: #e0ebf2; color: #23465e; }
.v2-solutions__note { border-color: #d5e1e9; }
.v2-receivables-visual > img { mix-blend-mode: multiply; }
.v2-role { padding-block: 68px; background: #092739; color: #f3f8fb; }
.v2-role > .v2-wrap { border: 0; padding-top: 0; }
.v2-role .v2-eyebrow { color: #95c8e4; }
.v2-role .v2-copy,.v2-role .v2-role__identity,.v2-role .v2-role__flow p,.v2-role .v2-note { color: #c1d3df; }
.v2-role .v2-role__copy strong { color: #fff; }
.v2-role .v2-link { color: #aadcf5; }
.v2-role .v2-link img,.v2-role__arrow { filter: brightness(0) invert(1); opacity: .8; }
.v2-role__flow { border-color: #365062; margin-top: 32px; padding-block: 26px; }
.v2-role__flow-label { color: #95c8e4; }
.v2-role a:focus-visible { outline-color: #aadcf5; }
.v2-process { padding-block: 68px; }
.gm-rail { min-width: 0; }
.gm-rail__toolbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 26px 0 20px; }
.gm-rail__hint { font-size: 12px; color: #526273; }
.gm-rail__controls { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.gm-rail__controls[hidden] { display: none; }
.gm-rail__controls button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #c4d5e1; background: transparent; color: #173d54; cursor: pointer; font-size: 20px; }
.gm-rail__controls button:hover:not(:disabled) { background: #e3eef5; }
.gm-rail__controls button:disabled { opacity: .3; cursor: default; }
.gm-rail__position { min-width: 44px; text-align: center; font-size: 12px; font-variant-numeric: tabular-nums; }
.gm-rail__viewport { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #99b9cd transparent; }
.gm-rail__viewport.is-enhanced { overflow: hidden; cursor: grab; scroll-snap-type: none; }
.gm-rail__viewport.is-enhanced:active { cursor: grabbing; }
.gm-rail__track { display: flex; gap: 20px; padding: 0; margin: 0; list-style: none; touch-action: pan-y pinch-zoom; }
.gm-rail__track > li { flex: 0 0 43%; min-width: 0; scroll-snap-align: start; }
.v2-process__steps { display: flex; gap: 20px; margin: 0; }
.v2-process__steps li { display: block; padding: 28px; border: 0; border-radius: 14px; background: #edf4f8; min-height: 242px; }
.v2-process__steps li:nth-child(2) { background: #e1edf5; }
.v2-process__steps li:nth-child(3) { background: #f5f1eb; }
.v2-process__number { display: inline-flex; padding-bottom: 10px; border-bottom: 2px solid #ef883e; color: #174b6a; }
.v2-process__steps h3 { margin-top: 24px; }
.v2-process .v2-note { margin-top: 24px; }
.v2-contact { background: #edf4f8; padding-block: 54px; }
.v2-contact__layout { border: 0; padding-top: 0; }
.v2-faq { padding-block: 12px 68px; }
.v2-faq__layout { padding-top: 48px; }
/* Institutional page: a brand panel, compact product summaries, group carousel. */
.gm-about__identity { border: 0; padding: 32px; border-radius: 16px; background: #e8f1f7; }
.gm-about__opening { padding-bottom: 54px; }
.gm-about__offers { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.gm-about__offers article { background: #edf4f8; border-radius: 12px; padding: 24px; }
.gm-about__offers article + article { border: 0; margin: 0; padding: 24px; }
.gm-about__offers .v2-copy { font-size: 14px; }
.gm-about__split:has(.gm-about__offers) { grid-template-columns: 1fr; gap: 28px; }
.gm-about__split:has(.gm-about__offers) header { max-width: 620px; }
.gm-about__group { display: block; background: #092739; color: #f3f8fb; padding: 44px; border: 0; border-radius: 18px; margin: 12px 0 60px; }
.gm-about__group > header { display: grid; grid-template-columns: .9fr 1.1fr; column-gap: 64px; }
.gm-about__group > header .v2-eyebrow { grid-column: 1/-1; color: #95c8e4; }
.gm-about__group > header .v2-copy { margin: 0; color: #c1d3df; }
.gm-about__group .gm-rail__hint { color: #c1d3df; }
.gm-about__group .gm-rail__controls button { border-color: #567384; color: #fff; }
.gm-about__group .gm-rail__controls button:hover:not(:disabled) { background: #274759; }
.gm-about__group .gm-rail__viewport:focus-visible,.gm-about__group button:focus-visible { outline-color: #aadcf5; }
.gm-about__companies { display: flex; gap: 18px; }
.gm-about__companies li { flex: 0 0 38%; min-height: 195px; padding: 28px; border: 1px solid #3b586b; background: #14354a; border-radius: 12px; }
.gm-about__companies li:nth-child(even) { background: #204359; }
.gm-about__companies h3 { font-size: 18px; margin-top: 20px; }
.gm-about__companies p { color: #c1d3df; font-size: 13px; }
.gm-company-kind { display: inline-block; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; color: #96cbe7; border-bottom: 2px solid #ef883e; padding-bottom: 8px; }
.gm-about__approach article { padding: 24px 0; }
.gm-about__approach article h3 { display: flex; align-items: baseline; gap: 16px; }
.gm-about__approach article h3::before { content: '→'; color: #007eb9; font-size: 18px; }
.gm-about__contact { background: #edf4f8; padding: 36px; border: 0; border-radius: 14px; margin-bottom: 50px; }
@media(max-width:900px) { .gm-about__group { padding: 30px; } .gm-about__group > header { column-gap: 32px; } .gm-about__companies li { flex-basis: 55%; } .gm-rail__track > li { flex-basis: 60%; } }
@media(max-width:700px) {
  .v2-solutions,.v2-role,.v2-process { padding-block: 48px; }
  .v2-role > .v2-wrap { padding-top: 0; }
  .gm-rail__toolbar { gap: 10px; }
  .gm-rail__hint { font-size: 11px; max-width: 150px; }
  .gm-rail__controls { gap: 5px; }
  .gm-rail__controls button { width: 42px; height: 42px; }
  .gm-rail__track > li { flex-basis: 88%; }
  .v2-process__steps li { padding: 24px; min-height: 268px; }
  .v2-process__steps h3 { margin: 20px 0 12px; }
  .v2-contact__layout { padding-top: 0; }
  .gm-about__identity { padding: 24px; }
  .gm-about__offers { grid-template-columns: 1fr; }
  .gm-about__group { padding: 28px 20px; border-radius: 12px; margin-bottom: 44px; }
  .gm-about__group > header { grid-template-columns: 1fr; gap: 18px; }
  .gm-about__group > header .v2-eyebrow { margin: 0; }
  .gm-about__companies li { padding: 20px; min-height: 205px; }
  .gm-about__companies h3 { font-size: 16px; }
  .gm-about__contact { padding: 26px 20px; }
}
