body.onewap-page {
  --solution-accent: #127c8a;
  --solution-accent-strong: #0c6270;
  --solution-tint: #edf9f8;
  --solution-line: #cae7e4;
  --solution-contact-background: radial-gradient(ellipse at 85% 100%, #1b9c9150, transparent 58%), linear-gradient(120deg, #071e2c, #0b414b);
  --floating-header-bg: rgba(7, 35, 43, .93);
  --floating-header-accent: #98e4d7;
  --floating-header-cta-bg: #eefbf8;
  --floating-header-cta-ink: #0d414b;
  --floating-header-cta-accent: #127c8a;
}
.solution-page-navigation--1wap {
  --solution-nav-accent: #127c8a; --solution-nav-tint: #effbf8; --solution-nav-border: #c8e5e0;
  --solution-nav-text: #315660; --solution-nav-surface: #fbfffeF5; --solution-nav-shadow: #104c5520;
}
.ow-hero { background: radial-gradient(ellipse at 82% 15%, #159e8840, transparent 50%), linear-gradient(120deg, #071e2c, #0b3542 67%, #0e5057); }
.ow-hero .dg-hero__layout { gap: clamp(30px, 4vw, 58px); }
.ow-hero .dg-hero__copy h1 { font-size: clamp(36px, 4.1vw, 59px); }
.ow-hero .dg-hero__copy h1 span, .ow-hero .dg-eyebrow { color: #99e8d8; }
.ow-hero .status-dot { background: #77dec7; box-shadow: 0 0 15px #77dec755; }
.ow-logo { display: block; width: min(100%, 310px); padding: 0; margin-bottom: 25px; background: transparent; }
.ow-logo img { display: block; width: 100%; height: auto; }

.ow-logo--white img, .ow-hub img { filter: brightness(0) invert(1); }
.ow-network { margin: 0; padding: 26px; border: 1px solid #a3e7d933; border-radius: 26px; background: linear-gradient(145deg, #18566580, #07242dd9); box-shadow: 0 35px 65px #020f2340; }
.ow-network > span { color: #a9dfd9; font-size: 8px; letter-spacing: 1.3px; font-weight: 600; }
.ow-network-stage { position: relative; height: 410px; margin-top: 13px; }
.ow-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.ow-lines path { fill: none; stroke: #80d6c5; stroke-width: 1.5; stroke-dasharray: 5 9; opacity: .5; }
.ow-hub { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 140px; height: 140px; border: 1px solid #a3e7d933; border-radius: 50%; display: grid; place-content: center; justify-items: center; gap: 12px; background: transparent; box-shadow: 0 0 0 13px #76ddc70b, 0 0 0 28px #76ddc706, 0 0 55px #66dec029; }
.ow-hub img { width: 57px; height: 62px; object-fit: contain; }
.ow-hub strong { color: #d8f5ed; font-size: 10px; }
.ow-node { position: absolute; width: 138px; min-height: 121px; display: grid; justify-items: center; gap: 9px; padding: 16px 9px; border-radius: 18px; border: 1px solid #a3e7d944; background: #123f4c; text-decoration: none; text-align: center; transition: background .2s, transform .2s; }
.ow-node .icon { width: 26px; height: 26px; color: #98e5d5; }
.ow-node strong { font-size: 12px; color: #f4fffc; font-weight: 500; }
.ow-node small { color: #abcad0; font-size: 8px; line-height: 1.6; }
.ow-node--1 { top: 0; left: 0; }.ow-node--2 { top: 0; right: 0; }.ow-node--3 { bottom: 0; left: 0; }.ow-node--4 { bottom: 0; right: 0; }
.ow-node:hover { background: #1b5560; transform: translateY(-3px); }.ow-node:focus-visible { outline: 3px solid #b2f4e4; outline-offset: 4px; }
.ow-network figcaption { margin-top: 18px; padding-top: 14px; border-top: 1px solid #a3e7d920; color: #accbd1; font-size: 9px; line-height: 1.8; }
.ow-scope { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 25px; padding-block: 30px; border-bottom: 1px solid #dcebea; }
.ow-scope strong,.ow-scope span { display: block; }.ow-scope strong { font-size: 12px; color: #164854; }.ow-scope span { margin-top: 8px; color: #71818e; font-size: 10px; line-height: 1.7; }
.ow-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; list-style: none; padding: 0; margin: 0; }
.ow-steps li { border: 1px solid #d2e8e3; border-radius: 18px; padding: 26px 22px; background: #fff; }
.ow-steps li > span { display: block; color: #117d82; font-size: 9px; font-weight: 600; letter-spacing: 1px; }
.ow-steps h3 { margin-top: 26px; font-size: 18px; line-height: 1.5; letter-spacing: -.4px; }.ow-steps p { margin-top: 14px; color: #65798a; font-size: 11px; line-height: 1.9; }
.ow-note { margin-top: 30px; padding: 23px 26px; border-radius: 16px; border: 1px solid #cce7e1; background: #effaf6; font-size: 11px; line-height: 1.9; color: #56717b; }.ow-note strong { color: #125361; }
.ow-split { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
.ow-split article { padding: 31px; border: 1px solid #d2e6e4; border-radius: 20px; background: #fff; }
.ow-split h3 { font-size: 22px; letter-spacing: -.6px; line-height: 1.5; }.ow-split p { margin-top: 17px; font-size: 12px; line-height: 1.9; color: #63788b; }
.onewap-page .dg-screens-section { background: #eff8f6; }
.onewap-page .dg-gallery-tabs button[aria-selected="true"] { background: #127c8a; color: #fff; }
.onewap-page .dg-screen-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.onewap-page .dg-screen-visual { height: auto; aspect-ratio: 16 / 10; padding: 10px; background: #e5eeed; }
.onewap-page .dg-screen-visual img { width: 100%; height: 100%; object-fit: contain; object-position: top; }
.onewap-page .dg-screen-card:hover .dg-screen-visual img { transform: none; }
.onewap-page .dg-screen-card figcaption strong,.onewap-page .dg-screen-card figcaption span { display: block; }
.onewap-page .dg-screen-card figcaption strong { margin-bottom: 7px; color: #153f4b; font-size: 12px; }.onewap-page .dg-screen-card figcaption span { color: #677c88; font-size: 10px; line-height: 1.8; }
.onewap-page .dg-platform-section { background: linear-gradient(120deg, #071e2c, #0b414b); }
.onewap-page .dg-section-heading--light h2 span,.onewap-page .dg-panel-kicker { color: #93e0d2; }
.ow-platform-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }.ow-platform-grid article { padding: 27px; border: 1px solid #a5e1d82c; border-radius: 18px; background: #ffffff06; }.ow-platform-grid h3 { color: #effffc; font-size: 20px; line-height: 1.5; }.ow-platform-grid p { margin-top: 16px; color: #b4cbd1; font-size: 11px; line-height: 1.9; }
.ow-platform-note { margin-top: 28px; color: #9ab9c3; font-size: 10px; line-height: 1.9; }
.ow-faq details { border-top: 1px solid #d5e4e5; padding: 22px 0; }.ow-faq summary { cursor: pointer; color: #163d4c; font-size: 16px; font-weight: 500; }.ow-faq details p { margin-top: 16px; color: #65798a; font-size: 12px; line-height: 1.9; max-width: 830px; }
@media(max-width:900px) { .ow-steps,.ow-scope { grid-template-columns: repeat(2,minmax(0,1fr)); }.ow-platform-grid { grid-template-columns: 1fr; }.ow-network-stage { max-width: 480px; margin-inline: auto; } }
@media(max-width:600px) { .ow-split,.onewap-page .dg-screen-grid { grid-template-columns: 1fr; }.ow-steps { grid-template-columns: 1fr; }.ow-network { padding: 20px 14px; }.ow-network-stage { height: 390px; }.ow-node { width: 116px; min-height: 112px; }.ow-hub { width: 112px; height: 112px; }.ow-hub img { width: 45px; height: 49px; }.ow-hub strong { font-size: 8px; }.ow-split article { padding: 25px; } }
@media(prefers-reduced-motion:reduce) { .ow-node { transition: none; }.ow-node:hover { transform: none; } }

@media(max-width:420px) {
  .ow-network-stage { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; height: auto; }
  .ow-lines { display: none; }
  .ow-node { position: static; width: auto; min-width: 0; min-height: 114px; padding: 15px 7px; }
  .ow-node--1 { grid-column: 1; grid-row: 1; }
  .ow-node--2 { grid-column: 2; grid-row: 1; }
  .ow-node--3 { grid-column: 1; grid-row: 3; }
  .ow-node--4 { grid-column: 2; grid-row: 3; }
  .ow-hub { position: static; grid-column: 1 / -1; grid-row: 2; justify-self: center; transform: none; margin-block: 10px; }
}
