.xw-solutions-hero { position: relative; overflow: hidden; min-height: 690px; display: flex; align-items: center; background: #f7f7f4 !important; }
.xw-solutions-hero__grid { position: absolute; inset: 0; opacity: .55; background-image: linear-gradient(rgba(36,116,216,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(36,116,216,.1) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg, #000 10%, transparent 82%); animation: xwSolutionsGrid 22s linear infinite; }
.xw-solutions-hero::after { content: ''; position: absolute; right: -170px; bottom: -250px; width: 660px; height: 660px; border-radius: 50%; background: radial-gradient(circle, rgba(74,145,239,.22), transparent 67%); }
.xw-solutions-hero__content { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 52px; align-items: center; }
.xw-solutions-hero h1 { max-width: 760px; margin: 16px 0 22px; color: #20251f; font-size: clamp(50px, 6.7vw, 91px); letter-spacing: -.07em; }
.xw-solutions-hero p { max-width: 675px; color: #59635a; font-size: 19px; line-height: 1.65; }
.xw-solutions-hero__secondary { color: #20251f; border: 1px solid #bac1b8; background: rgba(255,255,255,.64); }
.xw-solution-orbit { position: relative; min-height: 405px; }
.xw-solution-orbit__ring { position: absolute; top: 50%; left: 50%; border: 1px solid rgba(36,116,216,.36); border-radius: 50%; transform: translate(-50%, -50%); }
.xw-solution-orbit__ring--one { width: 235px; height: 235px; animation: xwOrbitSpin 19s linear infinite; }.xw-solution-orbit__ring--two { width: 375px; height: 375px; border-style: dashed; animation: xwOrbitSpin 29s linear infinite reverse; }
.xw-solution-orbit__core, .xw-solution-orbit__node { position: absolute; display: grid; place-items: center; border: 1px solid rgba(36,116,216,.3); color: #2474d8; box-shadow: 0 18px 35px rgba(34,73,112,.14); }
.xw-solution-orbit__core { top: 50%; left: 50%; width: 92px; height: 92px; border-radius: 50%; background: #2474d8; color: #fff; font-size: 31px; transform: translate(-50%, -50%); box-shadow: 0 0 0 14px rgba(36,116,216,.1), 0 20px 42px rgba(36,116,216,.25); animation: xwCorePulse 4s ease-in-out infinite; }
.xw-solution-orbit__node { width: 60px; height: 60px; border-radius: 16px; background: #fff; font-size: 21px; }.xw-solution-orbit__node--one { left: 5%; top: 16%; animation: xwNodeFloat 4.2s ease-in-out infinite; }.xw-solution-orbit__node--two { right: 1%; top: 42%; animation: xwNodeFloat 4.8s ease-in-out -1.4s infinite; }.xw-solution-orbit__node--three { bottom: 5%; left: 27%; animation: xwNodeFloat 4.5s ease-in-out -2.2s infinite; }
.xw-solutions-intro { padding: 58px 0; border-bottom: 1px solid var(--tech-line); background: #fff; }.xw-solutions-intro__layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 54px; align-items: center; }.xw-solutions-intro p { margin: 0; color: #20251f; font-size: clamp(22px, 2.4vw, 33px); font-weight: 500; letter-spacing: -.035em; line-height: 1.24; }
.xw-solutions-list { background: #f7f7f4; }.xw-solutions-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }.xw-solution-card { position: relative; min-height: 390px; padding: 29px; border: 1px solid #d6ddd2; background: #fff; overflow: hidden; transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease, border-color .4s ease; }.xw-solution-card::after { content: ''; position: absolute; right: -70px; bottom: -70px; width: 180px; height: 180px; border-radius: 50%; background: rgba(36,116,216,.06); transition: transform .55s ease, background .55s ease; }.xw-solution-card:hover { z-index: 1; border-color: #80aee8; box-shadow: 0 22px 45px rgba(31,62,38,.12); transform: translateY(-7px); }.xw-solution-card:hover::after { background: rgba(36,116,216,.12); transform: scale(1.45); }.xw-solution-card__top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 48px; }.xw-solution-card__number { color: #8d978a; font-size: 12px; font-weight: 900; letter-spacing: .12em; }.xw-solution-card .tech-service-icon { position: relative; z-index: 1; width: 52px; height: 52px; border-radius: 50%; }.xw-solution-card__label { display: inline-block; margin-bottom: 8px; color: #2474d8; font-size: 12px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }.xw-solution-card h2 { max-width: 500px; margin: 0 0 13px; color: #20251f; font-size: clamp(27px, 2.5vw, 37px); font-weight: 600; letter-spacing: -.05em; line-height: 1.02; }.xw-solution-card p { max-width: 600px; margin: 0; color: #667064; line-height: 1.62; }.xw-solution-card ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 16px; margin: 22px 0 0; padding: 0; list-style: none; }.xw-solution-card li { position: relative; z-index: 1; color: #3e493e; font-size: 13px; font-weight: 700; line-height: 1.35; }.xw-solution-card li i { margin-right: 7px; color: #2474d8; }
.xw-solutions-approach { background: #20251f !important; }.xw-solutions-approach .tech-section-head h2 { max-width: 740px; }.xw-solutions-approach .tech-timeline div { min-height: 142px; border-radius: 0; }.xw-solutions-booking { background: #fff; }.xw-solutions-booking__card { display: flex; justify-content: space-between; gap: 38px; align-items: center; padding: 56px; border: 1px solid #cfd8cc; background: linear-gradient(120deg, #eff6ff, #fff 58%, #f3faef); }.xw-solutions-booking__card h2 { max-width: 720px; margin: 12px 0; color: #20251f; font-size: clamp(36px, 4.4vw, 61px); font-weight: 600; letter-spacing: -.065em; line-height: 1; }.xw-solutions-booking__card p { max-width: 660px; margin: 0; color: #667064; font-size: 17px; line-height: 1.65; }.xw-solutions-booking__card .tech-button { flex: 0 0 auto; }
@keyframes xwSolutionsGrid { to { background-position: 54px 54px; } } @keyframes xwOrbitSpin { to { transform: translate(-50%, -50%) rotate(360deg); } } @keyframes xwCorePulse { 50% { transform: translate(-50%, -50%) scale(1.07); } } @keyframes xwNodeFloat { 50% { margin-top: -12px; } }
@media (max-width: 800px) { .xw-solutions-hero { min-height: auto; padding: 150px 0 80px; }.xw-solutions-hero__content, .xw-solutions-intro__layout { grid-template-columns: 1fr; }.xw-solution-orbit { display: none; }.xw-solutions-grid { grid-template-columns: 1fr; }.xw-solutions-booking__card { align-items: flex-start; flex-direction: column; padding: 34px; }.xw-solution-card ul { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .xw-solutions-hero { padding-top: 132px; }.xw-solutions-hero h1 { font-size: clamp(44px, 13vw, 62px); }.xw-solutions-hero .tech-actions .tech-button { width: 100%; }.xw-solutions-intro { padding: 42px 0; }.xw-solutions-intro__layout { gap: 18px; }.xw-solution-card { min-height: 0; padding: 24px; }.xw-solution-card__top { margin-bottom: 34px; }.xw-solutions-booking__card { padding: 27px; } }
@media (prefers-reduced-motion: reduce) { .xw-solutions-hero__grid, .xw-solution-orbit__ring, .xw-solution-orbit__core, .xw-solution-orbit__node { animation: none; }.xw-solution-card { transition: none; } }

/* Solutions follows the Careers page's editorial blue theme. */
.xw-solutions-hero.xw-careers-hero { min-height: 620px; background: linear-gradient(130deg, #06263e 0%, #0a557b 55%, #3d9fca 100%) !important; }
.xw-solutions-hero .xw-solutions-hero__grid { display: none; }.xw-solutions-hero h1 { color: #fff !important; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: -.06em; line-height: .93; }.xw-solutions-hero p { color: rgba(230,248,255,.84) !important; }.xw-solutions-hero .tech-kicker { color: #a5e8ff !important; }.xw-solutions-hero__content { grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr); }.xw-solutions-hero__secondary { color: #fff; border-color: rgba(211,246,255,.35); background: rgba(255,255,255,.08); }.xw-solutions-hero .tech-button-primary { background: #fff; color: #0d5f83; box-shadow: 0 14px 28px rgba(4,28,43,.2); }.xw-solutions-hero .tech-button-primary:hover { color: #0d5f83; }.xw-solution-orbit__ring { border-color: rgba(200,246,255,.45); }.xw-solution-orbit__ring--two { border-color: rgba(200,246,255,.35); }.xw-solution-orbit__core { background: #e7faff; color: #0d5f83; border-color: rgba(216,247,255,.84); box-shadow: 0 0 0 14px rgba(231,250,255,.12), 0 0 42px rgba(167,232,255,.4); }.xw-solution-orbit__node { border-color: rgba(216,247,255,.72); color: #0d5f83; box-shadow: 0 16px 28px rgba(4,28,43,.18); }
.xw-solutions-intro, .xw-solutions-list { background: #f5fafc; }.xw-solutions-intro { border-bottom-color: #d6e8ef; }.xw-solutions-intro p { color: #103952; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; }.xw-solutions-list .tech-section-head h2 { color: #0b2f47; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: -.055em; }.xw-solutions-list .tech-kicker, .xw-solutions-intro .tech-kicker { color: #1688bd !important; }
.xw-solution-card { border-color: #d6e8ef; border-radius: 13px; box-shadow: 0 8px 22px rgba(13,68,96,.05); }.xw-solution-card::after { background: rgba(22,136,189,.06); }.xw-solution-card:hover { border-color: #74c6e5; box-shadow: 0 18px 35px rgba(13,87,123,.13); }.xw-solution-card:hover::after { background: rgba(22,136,189,.11); }.xw-solution-card__number { color: #6d8493; }.xw-solution-card .tech-service-icon { background: #e7f6fc; color: #147ead; }.xw-solution-card__label { color: #1688bd; }.xw-solution-card h2 { color: #103952; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: -.045em; }.xw-solution-card p { color: #64798a; }.xw-solution-card li { color: #435b6b; }.xw-solution-card li i { color: #1688bd; }
.xw-solutions-approach { background: #0d3d5b !important; }.xw-solutions-approach .tech-kicker, .xw-solutions-approach .tech-timeline strong { color: #9ce5ff !important; }.xw-solutions-approach .tech-section-head h2 { color: #fff !important; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: -.055em; }.xw-solutions-approach .tech-timeline div { border-color: rgba(181,234,255,.2); background: rgba(255,255,255,.06); }
.xw-solutions-booking { background: #eaf5f9; }.xw-solutions-booking__card { border-color: #cde2eb; border-radius: 13px; background: #fff; box-shadow: 0 10px 25px rgba(16,84,111,.06); }.xw-solutions-booking__card .tech-kicker { color: #1688bd !important; }.xw-solutions-booking__card h2 { color: #103952; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: -.055em; }.xw-solutions-booking__card p { color: #64798a; }.xw-solutions-booking__card .tech-button-primary { background: #147ead; box-shadow: 0 14px 26px rgba(20,126,173,.24); }.xw-solutions-booking__card .tech-button-primary:hover { background: #0d5f83; }
