:root {
  --red: #d5414e;
  --teal: #67d6db;
  --ink: #0f1720;
  --ink-soft: #5b6978;
  --line: rgba(15, 23, 32, .10);
  --surface: rgba(255, 255, 255, .74);
  --surface-2: rgba(255, 255, 255, .56);
  --bg: #eef3f7;
  --bg-deep: #0e1624;
  --shadow-1: 0 18px 50px rgba(8, 15, 28, .08);
  --shadow-2: 0 32px 90px rgba(8, 15, 28, .16);
  --radius-xl: 32px;
  --radius-lg: 24px;
  --radius-md: 18px;
  --max: 1240px;
  --industry-card: #ffffff;
  --industry-line: rgba(32, 38, 48, .12);
  --industry-soft: #f6f8fb;
  --industry-deep: #151923;
}

* {
  box-sizing: border-box
}

html {
  scroll-behavior: smooth
}

body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(1200px 720px at 0% -5%, rgba(103, 214, 219, .24), transparent 58%),
    radial-gradient(980px 600px at 100% 4%, rgba(213, 65, 78, .16), transparent 54%),
    linear-gradient(180deg, #f7fbfd 0%, #f1f5f9 45%, #edf2f7 100%);
  line-height: 1.55;
}

img {
  max-width: 100%;
  display: block
}

a {
  text-decoration: none;
  color: inherit
}

button,
input,
select {
  font: inherit
}

.container {
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 28px
}

.page-shell {
  position: relative;
  overflow: hidden
}

.page-shell:before,
.page-shell:after {
  content: "";
  position: fixed;
  z-index: -1;
  border-radius: 999px;
  filter: blur(40px);
  opacity: .55;
  pointer-events: none
}

.page-shell:before {
  width: 340px;
  height: 340px;
  top: 110px;
  right: -70px;
  background: rgba(103, 214, 219, .20)
}

.page-shell:after {
  width: 280px;
  height: 280px;
  top: 420px;
  left: -60px;
  background: rgba(213, 65, 78, .14)
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 90;
  backdrop-filter: blur(18px);
  background: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .74));
  border-bottom: 1px solid rgba(255, 255, 255, .68);
  box-shadow: 0 10px 35px rgba(15, 23, 32, .05)
}

.header.scrolled {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.header-inner {
  min-height: 84px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 20px
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 160px
}

.brand img {
  height: 34px;
  width: auto
}

.brand-logo {
  height: 34px;
  width: auto;
  display: block
}

.footer-logo {
  height: 34px;
  width: auto;
  display: block;
  margin-bottom: 12px
}

.footer-brand strong {
  display: block
}

.hero-video-wrap {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: 30px
}

.hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1.02) contrast(1.02)
}

.hero-video-overlay {
  display: none
}

.hero-media-card> :not(.hero-video-wrap) {
  position: relative;
  z-index: 1
}

.hero-grid-lines,
.hero-orbit,
.hero-node,
.hero-connection {
  display: none !important
}

.main-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px
}

.nav-item {
  position: relative
}

.nav-item:after {
  display: none
}

.nav-link,
.subnav-link {
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--ink);
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 16px;
  border-radius: 14px;
  transition: .2s ease;
  white-space: nowrap
}

.nav-link:hover,
.nav-item:focus-within>.nav-link,
.nav-item[data-open="true"]>.nav-link,
.nav-link.active {
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 14px 30px rgba(15, 23, 32, .06);
  color: var(--red)
}

.chev {
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  margin-top: -3px;
  opacity: .7
}

.utility-nav {
  display: flex;
  align-items: center;
  gap: 8px
}

.chip,
.icon-btn,
.chat-btn,
.menu-btn {
  border: 1px solid rgba(15, 23, 32, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .58));
  box-shadow: 0 12px 26px rgba(15, 23, 32, .04);
  color: var(--ink);
  border-radius: 14px
}

.chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 700
}

.chip select {
  border: 0;
  background: transparent;
  color: var(--ink);
  font-weight: 700;
  outline: none
}

.icon-btn,
.menu-btn,
.chat-btn {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  cursor: pointer;
  padding: 0
}

.chat-btn {
  font-size: 0
}

#regionButton {
  color: var(--ink)
}

#regionButton:hover,
#regionButton:focus-visible,
#chatButton:hover,
#chatButton:focus-visible,
#searchButton:hover,
#searchButton:focus-visible {
  color: var(--ink);
  background: linear-gradient(180deg, rgba(255, 255, 255, .86), rgba(255, 255, 255, .64));
}

.menu-btn {
  display: none
}

.icon {
  width: 18px;
  height: 18px;
  position: relative;
  display: inline-block
}

.icon-search:before {
  content: "";
  position: absolute;
  inset: 1px 5px 5px 1px;
  border: 2px solid currentColor;
  border-radius: 999px
}

.icon-search:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 2px;
  background: currentColor;
  right: 0;
  bottom: 1px;
  transform: rotate(45deg);
  border-radius: 2px
}

.icon-globe:before {
  content: "";
  position: absolute;
  inset: 1px;
  border: 2px solid currentColor;
  border-radius: 50%
}

.icon-globe:after {
  content: "";
  position: absolute;
  left: 4px;
  right: 4px;
  top: 8px;
  height: 2px;
  background: currentColor;
  box-shadow: 0 -5px 0 currentColor, 0 5px 0 currentColor;
  border-radius: 2px
}

.icon-chat:before {
  content: "";
  position: absolute;
  inset: 2px 1px 4px 1px;
  border: 2px solid currentColor;
  border-radius: 7px
}

.icon-chat:after {
  content: "";
  position: absolute;
  left: 4px;
  bottom: 0;
  width: 7px;
  height: 7px;
  background: currentColor;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  opacity: .88
}

.icon-menu:before,
.icon-menu:after,
.icon-menu span {
  content: "";
  position: absolute;
  left: 2px;
  right: 2px;
  height: 2px;
  background: currentColor;
  border-radius: 999px
}

.icon-menu:before {
  top: 4px
}

.icon-menu span {
  top: 8px
}

.icon-menu:after {
  top: 12px
}

.mega {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  width: min(760px, calc(100vw - 40px));
  padding: 16px;
  border-radius: 22px;
  display: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, .97), rgba(248, 251, 255, .93));
  border: 1px solid rgba(255, 255, 255, .82);
  box-shadow: 0 30px 80px rgba(8, 15, 28, .16);
  backdrop-filter: blur(18px)
}

.nav-item[data-open="true"] .mega,
.nav-item:focus-within .mega {
  display: block;
  animation: fadeUp .18s ease
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(8px)
  }

  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0)
  }
}

.mega-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch
}

.mega-col {
  padding: 0;
  display: grid;
  grid-auto-rows: 1fr;
  gap: 8px
}

.mega-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #788695;
  font-weight: 800;
  margin: 8px 0 14px
}

.mega-item {
  display: block;
  padding: 14px 14px 13px;
  border-radius: 18px;
  border: 1px solid transparent;
  transition: .2s ease;
  min-height: 68px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, .46))
}

.mega-item:hover {
  background: rgba(255, 255, 255, .92);
  border-color: rgba(15, 23, 32, .08);
  transform: translateY(-1px)
}

.mega-item strong {
  display: block;
  font-size: 14px;
  margin-bottom: 4px
}

.mega-item span {
  display: block;
  font-size: 12px;
  color: var(--ink-soft);
  line-height: 1.4
}

.mega-panel {
  padding: 18px;
  border-radius: 20px;
  color: #eef5fb;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  min-height: 100%;
  background: radial-gradient(320px 180px at 0% 0%, rgba(103, 214, 219, .26), transparent 62%), radial-gradient(280px 180px at 100% 100%, rgba(213, 65, 78, .18), transparent 58%), linear-gradient(180deg, rgba(10, 23, 35, .96), rgba(17, 30, 46, .9));
  position: relative;
  overflow: hidden
}

.mega-panel:before {
  content: "";
  position: absolute;
  right: -52px;
  bottom: -52px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .06)
}

.panel-kicker {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 800;
  color: rgba(255, 255, 255, .62)
}

.panel-head {
  font-family: "Maven Pro", Inter, sans-serif;
  font-size: 22px;
  line-height: 1.05;
  font-weight: 700;
  margin: 10px 0
}

.panel-text {
  font-size: 13px;
  color: rgba(236, 244, 255, .74);
  max-width: 25ch;
  margin: 0
}

.panel-action {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .12);
  font-weight: 700;
  font-size: 13px
}

.mobile-drawer {
  position: fixed;
  inset: 84px 18px auto 18px;
  z-index: 85;
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(252, 253, 255, .88));
  box-shadow: var(--shadow-2);
  border: 1px solid rgba(255, 255, 255, .85);
  display: none
}

.mobile-drawer.open {
  display: block
}

.drawer-group+.drawer-group {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(15, 23, 32, .08)
}

.drawer-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 800;
  color: #788695;
  margin: 0 0 8px
}

.drawer-links {
  display: grid;
  gap: 6px
}

.drawer-links a {
  padding: 12px;
  border-radius: 14px;
  font-weight: 700;
  background: rgba(255, 255, 255, .72)
}

main {
  padding-top: 28px
}

.page {
  display: none;
  padding: 28px 0 80px;
  min-height: calc(100vh - 84px)
}

.page.active {
  display: block;
  animation: pageIn .22s ease
}

@keyframes pageIn {
  from {
    opacity: 0;
    transform: translateY(10px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.hero {
  padding-top: 10px
}

.hero-shell,
.section-shell,
.cta-shell,
.content-shell,
.split-shell,
.resource-card,
.career-band,
.contact-card {
  border-radius: var(--radius-xl);
  border: 1px solid rgba(255, 255, 255, .76);
  background: linear-gradient(180deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .54));
  box-shadow: var(--shadow-1);
  backdrop-filter: blur(18px)
}

.hero-shell {
  padding: 28px;
  overflow: hidden;
  position: relative;
  background: radial-gradient(620px 360px at 8% 12%, rgba(103, 214, 219, .34), transparent 56%), radial-gradient(500px 300px at 94% 18%, rgba(213, 65, 78, .18), transparent 50%), linear-gradient(145deg, rgba(255, 255, 255, .94), rgba(255, 255, 255, .60));
}

.hero-shell:after {
  content: "";
  position: absolute;
  right: -50px;
  bottom: -50px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle at center, rgba(213, 65, 78, .14), transparent 62%)
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  gap: 28px;
  align-items: stretch
}

h1,
h2,
h3,
h4 {
  font-family: "Maven Pro", Inter, sans-serif;
  line-height: 1.02;
  letter-spacing: -.03em;
  margin: 0
}

h1 {
  font-size: 60px;
  max-width: 10.6ch;
  margin: 18px 0 18px
}

.lead {
  font-size: 18px;
  color: var(--ink-soft);
  max-width: 58ch;
  margin: 0 0 26px
}

.hero-actions,
.button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 16px;
  border-radius: 16px;
  border: 1px solid rgba(15, 23, 32, .08);
  font-size: 14px;
  font-weight: 800;
  transition: .2s ease
}

.btn:hover {
  transform: translateY(-1px)
}

.btn-primary {
  background: linear-gradient(135deg, var(--red), #ea6a75);
  color: #fff;
  box-shadow: 0 18px 35px rgba(213, 65, 78, .22)
}

.btn-secondary {
  background: rgba(255, 255, 255, .72)
}

.hero-side {
  display: grid;
  gap: 14px
}

.media-card {
  height: 100%
}

.media-frame {
  position: relative;
  min-height: 420px;
  height: 100%;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .18);
  background:
    radial-gradient(220px 220px at 18% 22%, rgba(103, 214, 219, .34), transparent 60%),
    radial-gradient(260px 260px at 82% 78%, rgba(213, 65, 78, .30), transparent 62%),
    linear-gradient(145deg, rgba(13, 24, 37, .92), rgba(28, 40, 58, .82));
  backdrop-filter: blur(18px);
  display: flex;
  align-items: flex-end;
  padding: 22px;
  box-shadow: 0 26px 70px rgba(7, 13, 24, .26)
}

.media-frame:before {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .01));
  border: 1px solid rgba(255, 255, 255, .10)
}

.media-badge {
  position: absolute;
  top: 22px;
  left: 22px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(15, 17, 21, .7);
  border: 1px solid rgba(255, 255, 255, .12);
  font-size: 12px;
  color: var(--muted);
  letter-spacing: .04em;
  text-transform: uppercase
}

.media-copy {
  position: relative;
  z-index: 1;
  max-width: 320px
}

.media-copy h3 {
  margin: 0 0 8px;
  font-size: 24px
}

.media-copy p {
  margin: 0;
  color: var(--muted)
}

.section-stats {
  margin: 0 0 18px
}

.stats-card,
.spotlight-card,
.mini-card {
  border-radius: 24px;
  padding: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .74), rgba(255, 255, 255, .5));
  border: 1px solid rgba(255, 255, 255, .8)
}

.stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px
}

.stat {
  padding: 14px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .58));
  border: 1px solid rgba(15, 23, 32, .06)
}

.stat b {
  display: block;
  font-size: 24px;
  margin-bottom: 6px
}

.stat span {
  display: block;
  font-size: 12.5px;
  color: var(--ink-soft)
}

.spotlight-card h3 {
  font-size: 21px;
  margin: 0 0 8px
}

.spotlight-card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 13.5px;
  max-width: 30ch
}

.section {
  padding: 24px 0
}

.section-shell {
  padding: 28px;
  position: relative;
  overflow: hidden
}

.section-top {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  align-items: end;
  gap: 22px;
  margin-bottom: 22px
}

.section-top h2 {
  font-size: 38px
}

.section-top p {
  margin: 0;
  color: var(--ink-soft);
  max-width: 58ch;
  font-size: 14px;
  justify-self: end;
  text-align: left
}

.grid-1 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px
}

.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px
}

.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px
}

.grid-5 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px
}

.card {
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .62));
  border: 1px solid rgba(15, 23, 32, .06);
  box-shadow: 0 18px 36px rgba(15, 23, 32, .05);
  position: relative;
  overflow: hidden
}

.card h3,
.card h4 {
  font-size: 22px;
  margin-bottom: 10px
}

.card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 14px;
}

.card:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--red), var(--teal));
  opacity: .9
}

.accent-red {
  box-shadow: inset 0 0 0 1px rgba(213, 65, 78, .18), 0 18px 32px rgba(15, 23, 32, .04);
  background: linear-gradient(180deg, rgba(255, 250, 250, .9), rgba(255, 255, 255, .62))
}

.accent-teal {
  box-shadow: inset 0 0 0 1px rgba(103, 214, 219, .26), 0 18px 32px rgba(15, 23, 32, .04);
  background: linear-gradient(180deg, rgba(247, 255, 255, .92), rgba(255, 255, 255, .6))
}

.logo-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px
}

.logo-box,
.asset-,
.image- {
  min-height: 78px;
  display: grid;
  place-items: center;
  text-align: center;
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 32, .06);
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 253, .74));
  color: #728190;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  box-shadow: 0 12px 24px rgba(15, 23, 32, .04)
}

.image- {
  min-height: 240px
}

.pillars .card {
  min-height: 210px
}

.offer-card {
  min-height: 220px
}

.industry-card {
  min-height: 190px
}

.case-card {
  min-height: 250px
}

.insight-card {
  min-height: 220px
}

.list {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px
}

.list li {
  position: relative;
  padding-left: 18px;
  color: var(--ink-soft);
  font-size: 14px
}

.list li:before {
  content: "";
  position: absolute;
  left: 0;
  top: .62em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--red), var(--teal))
}

.timeline {
  display: grid;
  gap: 14px
}

.timeline-item {
  padding: 20px 20px 20px 24px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .90), rgba(255, 255, 255, .66));
  border: 1px solid rgba(15, 23, 32, .06);
  position: relative;
  box-shadow: 0 16px 28px rgba(15, 23, 32, .05)
}

.timeline-item:before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  bottom: 16px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--red), var(--teal))
}

.cta-shell {
  padding: 28px 30px;
  background: radial-gradient(420px 240px at 12% 16%, rgba(103, 214, 219, .24), transparent 58%), radial-gradient(360px 220px at 90% 85%, rgba(213, 65, 78, .16), transparent 54%), linear-gradient(180deg, rgba(255, 255, 255, .86), rgba(255, 255, 255, .62))
}

.cta-shell h2 {
  font-size: 42px;
  margin-bottom: 10px
}

.cta-shell p {
  margin: 14px 0 20px;
  color: var(--ink-soft);
  max-width: 100% !important;
  font-size: 18px;
}

.footer {
  padding: 32px 0 46px;
  color: #6a7886
}

.footer-shell {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 28px !important;
  padding: 32px 0 0 !important;
  border-top: 1px solid rgba(15, 23, 32, .08) !important;
}

.footer img {
  height: 30px
}

.footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  justify-content: center !important;
}

.overlay {
  position: fixed;
  inset: 0;
  background: rgba(8, 14, 24, .36);
  backdrop-filter: blur(5px);
  display: none;
  z-index: 95
}

.overlay.open {
  display: block
}

.modal,
.chat-panel {
  position: fixed;
  z-index: 100;
  background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(250, 252, 255, .9));
  border: 1px solid rgba(255, 255, 255, .82);
  box-shadow: var(--shadow-2)
}

.modal {
  left: 50%;
  top: 96px;
  transform: translateX(-50%);
  width: min(720px, calc(100vw - 40px));
  max-height: min(70vh, 760px);
  overflow: auto;
  border-radius: 28px;
  padding: 22px;
  display: none
}

.modal.open {
  display: block
}

.search-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, .84);
  border: 1px solid rgba(15, 23, 32, .08)
}

.search-bar input {
  border: 0;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 16px
}

.search-results {
  margin-top: 16px;
  display: grid;
  gap: 10px
}

.search-result {
  padding: 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .82);
  border: 1px solid rgba(15, 23, 32, .06);
  cursor: pointer
}

.search-result b {
  display: block;
  margin-bottom: 4px
}

.search-result span {
  color: var(--ink-soft);
  font-size: 13px
}

.chat-panel {
  top: 96px;
  right: 18px;
  width: min(400px, calc(100vw - 30px));
  border-radius: 28px;
  padding: 20px;
  display: none
}

.chat-panel.open {
  display: block
}

.chat-panel h3 {
  font-size: 28px;
  margin-bottom: 10px
}

.chat-panel p {
  margin: 0 0 14px;
  color: var(--ink-soft)
}

.chat-actions {
  display: grid;
  gap: 10px
}

.chat-action {
  padding: 14px 16px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .86), rgba(255, 255, 255, .62));
  border: 1px solid rgba(15, 23, 32, .06);
  font-weight: 700
}

@media (max-width:1180px) {
  .mega {
    width: min(700px, calc(100vw - 32px))
  }

  .mega-grid {
    grid-template-columns: minmax(0, 1.05fr) repeat(2, minmax(0, 1fr))
  }
}

@media (max-width:1080px) {
  .grid-5 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .logo-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .hero-grid {
    grid-template-columns: 1fr
  }

  .mega-grid {
    grid-template-columns: 1fr 1fr
  }

  .mega-panel {
    grid-column: 1/-1
  }
}

@media (max-width:920px) {
  .header-inner {
    grid-template-columns: auto auto;
    justify-content: space-between
  }

  .main-nav,
  .utility-nav .chip,
  .utility-nav .chat-btn,
  .utility-nav .icon-btn {
    display: none
  }

  .menu-btn {
    display: grid
  }

  .hero-grid,
  .grid-4,
  .grid-3,
  .grid-2,
  .logo-grid,
  .grid-5 {
    grid-template-columns: 1fr
  }

  h1 {
    font-size: 46px
  }

  .section-top {
    grid-template-columns: 1fr
  }

  .section-top p {
    justify-self: start
  }

  .footer-shell {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 28px !important;
    padding: 32px 0 0 !important;
    border-top: 1px solid rgba(15, 23, 32, .08) !important;
  }

  .modal,
  .chat-panel {
    left: 16px;
    right: 16px;
    top: 88px;
    width: auto;
    transform: none
  }
}

.hero-shell,
.section-shell,
.cta-shell {
  width: 100%
}

.container.hero,
.container.section {
  max-width: var(--max)
}

.region-dialog {
  max-width: 420px
}

.region-list {
  display: grid;
  gap: 10px;
  margin-top: 8px
}

.region-option {
  border: 1px solid rgba(15, 23, 32, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 253, .78));
  color: var(--ink);
  border-radius: 14px;
  padding: 14px 16px;
  text-align: left;
  font-weight: 700;
  cursor: pointer;
}

.region-option.active,
.region-option:hover {
  border-color: rgba(213, 65, 78, .28);
  box-shadow: 0 10px 22px rgba(15, 23, 32, .05)
}

.search-modal {
  padding: 20px
}

.search-dialog {
  width: min(760px, calc(100vw - 32px));
  max-width: 760px
}

.icon-btn svg {
  display: block
}

.hero-shell,
.page-hero-shell {
  max-width: var(--container);
  margin: 0 auto
}




/* home hero + trust strip upgrade */
.home-hero.hero-shell {
  padding: 34px;
  background:
    radial-gradient(640px 360px at 8% 10%, rgba(103, 214, 219, .22), transparent 58%),
    radial-gradient(520px 280px at 92% 8%, rgba(213, 65, 78, .14), transparent 48%),
    linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(247, 250, 253, .82));
}

.home-hero .hero-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
  gap: 34px;
  align-items: center
}

.hero-copy {
  padding: 8px 2px 8px 4px
}

.hero-copy h1 {
  font-size: 50px;
  max-width: 13.8ch;
  margin: 0 0 12px;
  letter-spacing: -.045em
}

/* .hero-copy h1 {
      font-size: 62px;
      max-width: 10.8ch;
      margin: 0 0 18px;
      letter-spacing: -.045em
    } */

.hero-copy .lead {
  font-size: 18px;
  line-height: 1.72;
  max-width: 58ch;
  margin: 0 0 28px
}

.home-hero .hero-actions {
  gap: 14px
}

.home-hero .btn {
  min-height: 48px;
  padding: 13px 18px
}

.hero-media-card {
  position: relative;
  min-height: 500px;
  border-radius: 30px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .28);
  box-shadow: 0 28px 72px rgba(7, 13, 24, .12);
  background: #000
}

.hero-media-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(280px 280px at 18% 24%, rgba(103, 214, 219, .30), transparent 58%),
    radial-gradient(340px 340px at 84% 76%, rgba(213, 65, 78, .28), transparent 64%),
    linear-gradient(130deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01));
}

.hero-grid-lines,
.hero-grid-lines:before,
.hero-grid-lines:after {
  position: absolute;
  inset: auto;
  content: "";
  pointer-events: none
}

.hero-grid-lines {
  left: 40px;
  right: 40px;
  top: 42px;
  bottom: 42px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, .08);
  background:
    linear-gradient(rgba(255, 255, 255, .03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .03) 1px, transparent 1px);
  background-size: 70px 70px;
}

.hero-grid-lines:before {
  left: 10%;
  top: 18%;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  border: 1px solid rgba(103, 214, 219, .18);
  box-shadow: 0 0 0 22px rgba(103, 214, 219, .04), 0 0 0 48px rgba(103, 214, 219, .025)
}

.hero-grid-lines:after {
  right: 10%;
  bottom: 12%;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 0 0 22px rgba(255, 255, 255, .025), 0 0 0 54px rgba(255, 255, 255, .016)
}

.hero-orbit {
  position: absolute;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .16)
}

.hero-orbit.orbit-1 {
  width: 310px;
  height: 310px;
  right: -80px;
  top: 58px
}

.hero-orbit.orbit-2 {
  width: 210px;
  height: 210px;
  left: 38px;
  bottom: 44px;
  border-color: rgba(103, 214, 219, .24)
}

.hero-node {
  position: absolute;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .95), rgba(255, 255, 255, .72));
  box-shadow: 0 14px 32px rgba(8, 15, 28, .18)
}

.hero-node:before {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--teal), rgba(255, 255, 255, .2));
  opacity: .9
}

.hero-node.node-a {
  width: 14px;
  height: 14px;
  left: 23%;
  top: 22%
}

.hero-node.node-b {
  width: 12px;
  height: 12px;
  right: 21%;
  top: 34%
}

.hero-node.node-c {
  width: 16px;
  height: 16px;
  left: 38%;
  bottom: 23%
}

.hero-node.node-d {
  width: 12px;
  height: 12px;
  right: 30%;
  bottom: 20%
}

.hero-connection {
  position: absolute;
  height: 1px;
  background: linear-gradient(90deg, rgba(103, 214, 219, .0), rgba(103, 214, 219, .45), rgba(255, 255, 255, .18));
  transform-origin: left center
}

.hero-connection.line-1 {
  left: 25%;
  top: 24%;
  width: 34%;
  transform: rotate(10deg)
}

.hero-connection.line-2 {
  left: 38%;
  top: 61%;
  width: 26%;
  transform: rotate(-12deg)
}

.hero-connection.line-3 {
  left: 20%;
  top: 68%;
  width: 24%;
  transform: rotate(-32deg)
}

.home-trust.section-shell {
  padding: 34px 34px 0;
  overflow: hidden;
  background:
    radial-gradient(520px 220px at 100% 0%, rgba(103, 214, 219, .12), transparent 56%),
    radial-gradient(420px 220px at 0% 100%, rgba(213, 65, 78, .10), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .7));
}

.trust-top {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: 34px;
  align-items: start;
  margin-bottom: 22px
}

.trust-intro {
  padding-top: 4px
}

.trust-intro h2 {
  font-size: 40px;
  line-height: 1.02;
  margin: 0 0 12px
}

.trust-intro p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 18px;
  line-height: 1.7;
  max-width: 42ch
}

.trust-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-content: start
}

.trust-metric {
  min-height: 176px;
  padding: 24px 24px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(246, 250, 253, .86));
  border: 1px solid rgba(15, 23, 32, .06);
  box-shadow: 0 18px 36px rgba(15, 23, 32, .05);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px
}

.trust-metric strong {
  display: block;
  font-size: 28px;
  line-height: 1.02;
  margin: 0;
  letter-spacing: -.035em;
  color: #152130
}

.trust-metric p {
  margin: 0;
  color: #465362;
  font-size: 16px;
  line-height: 1.5;
  max-width: 30ch
}

.trust-metric.metric-tight {
  justify-content: flex-start;
  gap: 8px;
  min-height: 152px
}

.trust-metric.metric-tight p {
  line-height: 1.42
}

.trust-metric.metric-wide strong {
  max-width: 12ch
}

.metric-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: auto
}

.flag-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  line-height: 0
}

.flag-chip img {
  display: block;
  width: 42px;
  height: 28px;
  object-fit: cover;
  border-radius: 2px
}

.trust-carousel-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 0;
  padding: 8px 0;
  background: transparent;
  border: 0;
  margin-bottom: 18px
}

.trust-carousel-wrap:before,
.trust-carousel-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 72px;
  z-index: 2;
  pointer-events: none
}

.trust-carousel-wrap:before {
  left: 0;
  background: linear-gradient(90deg, rgba(247, 249, 252, .98), rgba(247, 249, 252, 0))
}

.trust-carousel-wrap:after {
  right: 0;
  background: linear-gradient(270deg, rgba(250, 252, 255, .98), rgba(250, 252, 255, 0))
}

.trust-carousel-track {
  display: flex;
  gap: 14px;
  min-width: max-content;
  animation: trustMarquee 32s linear infinite
}

.trust-carousel-wrap:hover .trust-carousel-track {
  animation-play-state: paused
}

@keyframes trustMarquee {
  from {
    transform: translateX(0)
  }

  to {
    transform: translateX(-50%)
  }
}

.logo-pill {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  height: 72px;
  padding: 0 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(247, 250, 253, .76));
  border: 1px solid rgba(15, 23, 32, .06);
  box-shadow: 0 14px 30px rgba(15, 23, 32, .045);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  color: #6c7988;
  text-transform: uppercase;
  text-align: center
}

.trust-footer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 34px;
  padding: 28px 40px 30px;
  margin: 18px -34px -26px;
  border-radius: 0 0 28px 28px;
  background: linear-gradient(180deg, rgba(13, 24, 37, .98), rgba(24, 36, 53, .95));
  box-shadow: none
}

.trust-footer-copy strong {
  display: block;
  font-size: 18px;
  color: #f2f7fc;
  line-height: 1.2;
  margin-bottom: 8px
}

.trust-footer-copy p {
  margin: 0;
  color: rgba(226, 236, 246, .78);
  font-size: 18px;
  line-height: 1.6;
  max-width: 70ch
}

.technopro-lockup {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0
}

.technopro-logo {
  display: block;
  width: auto;
  height: 64px;
  object-fit: contain
}

@media (max-width:1080px) {

  .home-hero .hero-grid,
  .trust-top {
    grid-template-columns: 1fr
  }

  .trust-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
}

@media (max-width:920px) {
  .home-hero {
    padding: 22px
  }

  .hero-copy h1 {
    font-size: 48px
  }

  .hero-media-card {
    min-height: 440px
  }

  .home-trust.section-shell {
    padding: 22px 22px 0
  }

  .trust-metrics {
    grid-template-columns: 1fr
  }

  .trust-footer {
    grid-template-columns: 1fr;
    padding: 20px 22px 24px;
    margin: 18px -22px -26px;
    border-radius: 0 0 24px 24px
  }
}

/* modal fixes */
.overlay {
  position: fixed;
  inset: 0;
  background: rgba(10, 16, 28, .42) !important;
  backdrop-filter: blur(6px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
  display: block !important;
  z-index: 120
}

.overlay.open {
  opacity: 1;
  pointer-events: auto
}

.modal {
  position: fixed !important;
  inset: 0 !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: auto !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 96px 20px 20px !important;
  display: grid !important;
  place-items: start center !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
  z-index: 130;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important
}

.modal.open {
  opacity: 1;
  pointer-events: auto
}

.search-dialog {
  position: relative !important;
  width: min(760px, calc(100vw - 32px));
  max-width: 760px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .94));
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 24px;
  box-shadow: 0 30px 80px rgba(8, 15, 28, .18);
  padding: 26px
}

.region-dialog {
  max-width: 440px
}

.modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 32, .08);
  background: rgba(255, 255, 255, .82);
  display: grid;
  place-items: center;
  cursor: pointer;
  font-size: 26px;
  line-height: 1;
  color: var(--ink);
  z-index: 2
}

.search-head {
  padding-right: 56px
}

.search-head h3 {
  margin: 0 0 6px;
  font-size: 24px
}

.search-head p {
  margin: 0 0 18px;
  color: var(--ink-soft);
  font-size: 14px
}

.search-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(15, 23, 32, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 253, .78));
  border-radius: 16px;
  padding: 14px 16px
}

.search-bar input {
  border: 0;
  outline: none;
  background: transparent;
  width: 100%;
  font: inherit;
  color: var(--ink)
}

.search-results {
  display: grid;
  gap: 8px;
  margin-top: 14px
}

.search-results a,
.region-option {
  display: block;
  border: 1px solid rgba(15, 23, 32, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 253, .78));
  border-radius: 14px;
  padding: 14px 16px;
  color: var(--ink);
  font-weight: 700;
  text-align: left
}

.search-results a:hover,
.region-option:hover,
.region-option.active {
  border-color: rgba(213, 65, 78, .28);
  box-shadow: 0 10px 22px rgba(15, 23, 32, .05)
}

.region-list {
  display: grid;
  gap: 10px
}

@media (max-width:920px) {
  .modal {
    padding: 88px 16px 16px !important
  }

  .search-dialog,
  .region-dialog {
    width: min(100%, calc(100vw - 32px));
    max-width: none
  }
}


/* alignment + footer + policy popup updates */
.hero-wrap {
  max-width: var(--container);
  margin: 0 auto;
  padding-inline: 20px
}

.hero-shell,
.page-hero-shell {
  width: 100%;
  max-width: none;
  margin: 0
}

@media (max-width:920px) {
  .hero-wrap {
    padding-inline: 16px
  }
}

.site-footer {
  margin-top: 48px
}

.footer-shell {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 28px !important;
  padding: 32px 0 0 !important;
  border-top: 1px solid rgba(15, 23, 32, .08) !important;
}

.footer-brand {
  max-width: 560px;
  text-align: center;
}

.footer-brand p {
  margin: 10px 0 0;
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.6;
}

.footer-meta {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

.footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  justify-content: center !important;
}

.footer-links a {
  color: #666666 !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  line-height: 1.6 !important;
}

.footer-links a:hover {
  color: #d5414e !important;
}

.footer-copy {
  color: #999999;
  font-size: 12px;
  text-align: center;
  width: 100%;
}

@media (max-width:920px) {
  .footer-meta {
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: center;
  }

  .footer-bottom .footer-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 18px !important;
    justify-content: center !important;
  }

  .footer-bottom .footer-copy {
    color: #999999;
    font-size: 12px;
    text-align: center;
    width: 100%;
  }

  .footer-social {
    justify-content: center;
  }
}

.cookie-banner {
  position: fixed;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 140;
  display: none;
}

.cookie-banner.open {
  display: block
}

.cookie-card {
  max-width: 980px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .94));
  border: 1px solid rgba(255, 255, 255, .82);
  border-radius: 24px;
  box-shadow: 0 30px 80px rgba(8, 15, 28, .18);
  padding: 18px 18px 18px 20px;
  display: flex;
  gap: 18px;
  align-items: flex-start;
  justify-content: space-between;
}

.cookie-copy h4 {
  margin: 0 0 6px;
  font-size: 18px;
}

.cookie-copy p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.6;
}

.cookie-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
  min-width: 260px;
}

.cookie-btn {
  height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 32, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(247, 250, 253, .78));
  color: var(--ink);
  font-weight: 800;
  cursor: pointer;
}

.cookie-btn.primary {
  background: linear-gradient(135deg, var(--red), var(--teal));
  color: #fff;
  border-color: transparent;
}

@media (max-width:920px) {
  .cookie-banner {
    left: 16px;
    right: 16px;
    bottom: 16px
  }

  .cookie-card {
    flex-direction: column
  }

  .cookie-actions {
    justify-content: flex-start;
    min-width: auto
  }
}


/* final layout fixes */
:root {
  --container: 1240px
}

.container {
  max-width: var(--container)
}

.container.hero,
.hero-wrap,
.page>.container.hero {
  max-width: var(--container) !important;
  margin: 0 auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
}

.hero,
.hero-section {
  width: 100%;
}

.hero-shell,
.page-hero-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

@media (max-width:920px) {

  .container.hero,
  .hero-wrap,
  .page>.container.hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* footer rebuild */
.footer {
  padding: 36px 0 52px !important;
  color: #6a7886;
}

.footer-shell {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 28px !important;
  padding: 32px 0 0 !important;
  border-top: 1px solid rgba(15, 23, 32, .08) !important;
}

.footer-brand {
  max-width: 560px;
  text-align: center;
}

.footer-brand strong {
  display: block;
  font-size: 16px;
  color: var(--ink);
  margin-bottom: 10px;
}

.footer-brand p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.65;
}

.footer-meta {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

.footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  justify-content: center !important;
}

.footer-links a {
  color: #666666 !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  line-height: 1.6 !important;
}

.footer-links a:hover {
  color: #d5414e !important;
}

.footer-copy {
  color: #999999;
  font-size: 12px;
  text-align: center;
  width: 100%;
}

@media (max-width:920px) {
  .footer-shell {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 28px !important;
    padding: 32px 0 0 !important;
    border-top: 1px solid rgba(15, 23, 32, .08) !important;
  }

  .footer-meta {
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: center;
  }

  .footer-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 18px !important;
    justify-content: center !important;
  }

  .footer-copy {
    color: #999999;
    font-size: 12px;
    text-align: center;
    width: 100%;
  }
}

/* modal + cookie fixes */
.overlay {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(10, 16, 28, .42) !important;
  backdrop-filter: blur(6px) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .2s ease !important;
  display: block !important;
  z-index: 120 !important;
}

.overlay.open {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.modal {
  position: fixed !important;
  inset: 0 !important;
  padding: 96px 20px 20px !important;
  display: grid !important;
  place-items: start center !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .2s ease !important;
  z-index: 130 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  max-height: none !important;
  overflow: visible !important;
  transform: none !important;
}

.modal.open {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.search-dialog {
  position: relative !important;
  width: min(760px, calc(100vw - 32px)) !important;
  max-width: 760px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .94)) !important;
  border: 1px solid rgba(255, 255, 255, .82) !important;
  border-radius: 24px !important;
  box-shadow: 0 30px 80px rgba(8, 15, 28, .18) !important;
  padding: 26px !important;
}

.region-dialog {
  max-width: 440px !important
}

.modal-close {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(15, 23, 32, .08) !important;
  background: rgba(255, 255, 255, .82) !important;
  display: grid !important;
  place-items: center !important;
  cursor: pointer !important;
  font-size: 26px !important;
  line-height: 1 !important;
  color: var(--ink) !important;
  z-index: 2 !important;
}

.search-head {
  padding-right: 56px !important
}

.cookie-banner {
  position: fixed !important;
  left: 20px !important;
  right: 20px !important;
  bottom: 20px !important;
  z-index: 140 !important;
  display: none !important;
}

.cookie-banner.open {
  display: block !important
}

.cookie-card {
  max-width: 980px !important;
  margin: 0 auto !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .94)) !important;
  border: 1px solid rgba(255, 255, 255, .82) !important;
  border-radius: 24px !important;
  box-shadow: 0 30px 80px rgba(8, 15, 28, .18) !important;
  padding: 18px 20px !important;
  display: flex !important;
  gap: 18px !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
}

.cookie-copy h4 {
  margin: 0 0 6px !important;
  font-size: 18px !important
}

.cookie-copy p {
  margin: 0 !important;
  color: var(--ink-soft) !important;
  font-size: 14px !important;
  line-height: 1.6 !important
}

.cookie-actions {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  min-width: 260px !important;
}

.cookie-btn {
  height: 42px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(15, 23, 32, .08) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(247, 250, 253, .78)) !important;
  color: var(--ink) !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}

.cookie-btn.primary {
  background: linear-gradient(135deg, var(--red), var(--teal)) !important;
  color: #fff !important;
  border-color: transparent !important;
}

@media (max-width:920px) {
  .modal {
    padding: 88px 16px 16px !important
  }

  .search-dialog,
  .region-dialog {
    width: min(100%, calc(100vw - 32px)) !important;
    max-width: none !important
  }

  .cookie-banner {
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important
  }

  .cookie-card {
    flex-direction: column !important
  }

  .cookie-actions {
    justify-content: flex-start !important;
    min-width: auto !important
  }
}


/* final floating header + banner alignment fixes */
.header {
  position: fixed !important;
  width: 100%;
  top: 12px !important;
  z-index: 95 !important;
  background: transparent !important;
  backdrop-filter: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  padding: 0 28px !important;
}

.header-inner {
  max-width: 1240px !important;
  margin: 0 auto !important;
  min-height: 76px !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .66)) !important;
  border: 1px solid rgba(255, 255, 255, .78) !important;
  box-shadow: 0 20px 48px rgba(8, 15, 28, .10) !important;
  backdrop-filter: blur(18px) !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.container,
.container.hero,
.container.section {
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  box-sizing: border-box !important;
}

.hero-shell,
.section-shell,
.cta-shell,
.content-shell,
.split-shell,
.resource-card,
.career-band,
.contact-card,
.page-hero-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 920px) {
  .header {
    top: 10px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .header-inner {
    min-height: 68px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .container,
  .container.hero,
  .container.section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}


/* auto-hide fixed floating header on scroll down, show on scroll up */
.header {
  position: fixed !important;
  top: 14px !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 120 !important;
  transition: transform .28s ease, opacity .22s ease, box-shadow .28s ease !important;
  will-change: transform;
  pointer-events: none;
}

.header .header-inner {
  pointer-events: auto;
}

.header.header-hidden {
  transform: translateY(-140%);
  opacity: .96;
}


/* section variation + spacing improvements */
.section-alt {
  position: relative;
}

.section-alt:before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(420px 180px at 15% 20%, rgba(103, 214, 219, .10), transparent 60%),
    radial-gradient(360px 160px at 85% 70%, rgba(213, 65, 78, .08), transparent 62%);
  pointer-events: none;
}

.section-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(250, 252, 255, .84));
  border: 1px solid rgba(15, 23, 32, .06);
  border-radius: 30px;
  box-shadow: 0 18px 42px rgba(15, 23, 32, .05);
  padding: 30px;
}

.section-split {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: 26px;
  align-items: stretch;
}

.media-placeholder {
  position: relative;
  height: 280px;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .14);

}



.media-placeholder .media-label {
  position: absolute;
  left: 22px;
  bottom: 22px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  color: #eef5fb;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .12);
  backdrop-filter: blur(10px);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
}

.media-placeholder .play {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--red), var(--teal));
  color: #fff;
  box-shadow: 0 10px 24px rgba(8, 15, 28, .24);
}

.section-band {
  padding: 34px;
  border-radius: 30px;
  background:
    radial-gradient(360px 180px at 0% 0%, rgba(103, 214, 219, .16), transparent 60%),
    linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(248, 251, 255, .88));
  border: 1px solid rgba(15, 23, 32, .06);
  box-shadow: 0 20px 44px rgba(15, 23, 32, .05);
}

.case-study-card {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(240px, .85fr);
  gap: 18px;
  align-items: stretch;
}

.case-study-card .mini-media {
  min-height: 170px;
  border-radius: 22px;
  background:
    radial-gradient(160px 160px at 30% 20%, rgba(103, 214, 219, .22), transparent 58%),
    linear-gradient(145deg, rgba(20, 31, 48, .94), rgba(38, 52, 76, .84));
  border: 1px solid rgba(255, 255, 255, .12);
  box-shadow: 0 16px 34px rgba(8, 15, 28, .12);
}

.card h3,
.card h4 {
  margin-bottom: 14px !important;
}

.card p {
  line-height: 1.7 !important;
}

.card>*+* {
  margin-top: 10px;
}

.card {
  padding: 26px !important;
}

.card:before {
  height: 5px !important;
}

.section-top {
  margin-bottom: 28px !important;
}

.section-top h2 {
  margin-bottom: 14px !important;
}

.section-top p {
  line-height: 1.6 !important;
  font-size: 18px;
}

.offer-card,
.industry-card,
.insight-card {
  min-height: 240px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.offer-card p,
.industry-card p {
  margin-top: 8px !important;
}

.logo-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

.logo-tile {
  min-height: 86px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(15, 23, 32, .06);
  background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(247, 250, 253, .74));
  color: #728190;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  box-shadow: 0 12px 24px rgba(15, 23, 32, .04);
}

@media (max-width:1080px) {

  .section-split,
  .case-study-card {
    grid-template-columns: 1fr;
  }

  .logo-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:920px) {

  .section-panel,
  .section-band {
    padding: 22px;
    border-radius: 24px;
  }

  .logo-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* visible hero placeholder */
.media-card {
  height: 100%
}

.media-frame {
  position: relative;
  min-height: 420px;
}

.media-frame .placeholder-chip {
  position: absolute;
  left: 22px;
  bottom: 22px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  color: #eef5fb;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .14);
  backdrop-filter: blur(10px);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  z-index: 2;
}

.media-frame .placeholder-chip .dot {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--red), var(--teal));
  color: #fff;
  box-shadow: 0 10px 24px rgba(8, 15, 28, .24);
}

/* align left heading and right paragraph */
.section-top {
  align-items: start !important;
}

.section-top>div,
.section-top>p {
  align-self: start !important;
}

.section-top p {
  padding-top: 10px;
}

/* section variation */
.section-shell.alt-shell {
  background:
    radial-gradient(420px 180px at 10% 10%, rgba(103, 214, 219, .10), transparent 60%),
    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 251, 255, .86));
  border: 1px solid rgba(15, 23, 32, .06);
  box-shadow: 0 20px 46px rgba(15, 23, 32, .05);
}

.section-split-variation {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: 24px;
  align-items: stretch;
}

.section-split-variation .content-side {
  min-width: 0;
}

.section-split-variation .visual-side {
  min-width: 0;
}

.visual-placeholder {
  position: relative;
  min-height: 100%;
  border-radius: 28px;
  overflow: hidden;
  background:
    radial-gradient(220px 220px at 20% 22%, rgba(103, 214, 219, .30), transparent 60%),
    radial-gradient(260px 260px at 82% 78%, rgba(213, 65, 78, .24), transparent 62%),
    linear-gradient(145deg, rgba(13, 24, 37, .92), rgba(28, 40, 58, .82));
  border: 1px solid rgba(255, 255, 255, .14);
  box-shadow: 0 24px 64px rgba(7, 13, 24, .22);
  min-height: 320px;
}

.visual-placeholder:before {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01));
}

.visual-placeholder .chip {
  position: absolute;
  left: 20px;
  bottom: 20px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  color: #eef5fb;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .14);
  backdrop-filter: blur(10px);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
}

.visual-placeholder .chip .play {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--red), var(--teal));
  color: #fff;
}

.section-shell.dark-band {
  background:
    radial-gradient(260px 180px at 15% 15%, rgba(103, 214, 219, .12), transparent 60%),
    linear-gradient(145deg, rgba(18, 28, 42, .98), rgba(27, 39, 58, .92));
  color: #eef5fb;
  border: 1px solid rgba(255, 255, 255, .10);
  box-shadow: 0 24px 60px rgba(7, 13, 24, .20);
}

.section-shell.dark-band h2,
.section-shell.dark-band h3,
.section-shell.dark-band strong {
  color: #fff;
}

.section-shell.dark-band p {
  color: rgba(238, 245, 251, .80);
}

.section-shell.dark-band .timeline-item {
  background: linear-gradient(180deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .06));
  border: 1px solid rgba(255, 255, 255, .10);
  box-shadow: none;
}

@media (max-width:1080px) {
  .section-split-variation {
    grid-template-columns: 1fr;
  }
}


/* HCL-inspired refinements */
.hero-shell,
.section-shell,
.section-band {
  border-radius: 22px !important;
}

.section-shell.alt-shell {
  background:
    linear-gradient(135deg, rgba(245, 248, 252, .98), rgba(255, 255, 255, .92)) !important;
  border: 1px solid rgba(15, 23, 32, .06) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 32, .05) !important;
}

.section-split-variation {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

.section-split-variation .content-side {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.section-split-variation .visual-side {
  display: flex;
  min-width: 0;
}

.section-split-variation .visual-placeholder {
  width: 100%;
  min-height: 100%;
  height: auto;
}

.section-split-variation .grid-5 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.section-split-variation .card {
  min-height: 210px;
}

.visual-placeholder {
  border-radius: 22px !important;
  background:
    radial-gradient(220px 220px at 20% 22%, rgba(103, 214, 219, .22), transparent 60%),
    radial-gradient(260px 260px at 82% 78%, rgba(213, 65, 78, .18), transparent 62%),
    linear-gradient(145deg, rgba(20, 31, 48, .96), rgba(35, 49, 72, .90)) !important;
  box-shadow: 0 22px 56px rgba(7, 13, 24, .18) !important;
}

.visual-placeholder:before {
  border-radius: 18px !important;
}

.section-top.no-side-copy {
  display: block !important;
}

.section-top.no-side-copy p {
  display: none !important;
}

.section-top.no-side-copy h2 {
  margin-bottom: 0 !important;
}

.section-shell.dark-band,
.section-shell.resources-band {
  border-radius: 22px !important;
  padding: 30px !important;
}

.section-shell.resources-band {
  background:
    linear-gradient(135deg, rgba(245, 248, 252, .98), rgba(255, 255, 255, .92)) !important;
  border: 1px solid rgba(15, 23, 32, .06) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 32, .05) !important;
}

@media (max-width:1080px) {
  .section-split-variation {
    grid-template-columns: 1fr !important;
  }

  .section-split-variation .grid-5 {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width:920px) {
  .section-split-variation .grid-5 {
    grid-template-columns: 1fr !important;
  }
}


/* insights card height + spacing refinements */
.section-shell.resources-band .section-top.no-side-copy {
  margin-bottom: 34px !important;
}

.section-shell.resources-band .section-top.no-side-copy h2 {
  margin-bottom: 0 !important;
}

.section-shell.resources-band .grid-3 {
  gap: 22px !important;
  align-items: start !important;
}

.section-shell.resources-band .insight-card {
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
  padding: 24px !important;
}

.section-shell.resources-band .insight-card h3,
.section-shell.resources-band .insight-card h4 {
  margin-bottom: 16px !important;
}

.section-shell.resources-band .insight-card p {
  margin-top: 0 !important;
}


.red-stop,
.red-dot {
  color: var(--red) !important
}

/* requested refinement overrides */
main {
  padding-top: 24px !important
}

.page {
  padding: 80px 0 80px !important
}

.page.active {
  display: block !important
}

.container.hero {
  margin-top: 0 !important
}

.home-hero.hero-shell {
  margin-top: 0 !important;
  padding: 34px !important
}

.container.section {
  margin-top: 24px !important
}

.container.section:first-of-type {
  margin-top: 0 !important
}

.hero-shell,
.page-hero-shell {
  position: relative !important;
  z-index: 1
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 90;
  width: 100%;
}

.trust-carousel-wrap {
  position: relative !important;
  display: grid !important;
  gap: 14px !important;
  overflow: hidden !important;
  padding: 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 18px !important
}

.logo-marquee {
  display: flex !important;
  gap: 22px !important;
  min-width: max-content !important;
  align-items: center !important;
  width: max-content !important;
  animation: logoMarquee 42s linear infinite
}

.logo-marquee.reverse {
  animation-direction: reverse !important
}

.logo-row {
  display: flex !important;
  gap: 22px !important;
  min-width: max-content !important;
  align-items: center !important
}

.logo-tile {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  opacity: .88;
  transition: opacity .2s ease, transform .2s ease
}

.logo-tile img {
  height: 28px !important;
  width: auto !important;
  display: block !important
}

.logo-tile:hover {
  opacity: 1;
  transform: translateY(-1px)
}

@keyframes logoMarquee {
  from {
    transform: translateX(0)
  }

  to {
    transform: translateX(-50%)
  }
}

.trust-carousel-wrap:hover .logo-marquee {
  animation-play-state: paused
}

.trust-carousel-wrap:before,
.trust-carousel-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 72px;
  z-index: 2;
  pointer-events: none
}

.trust-carousel-wrap:before {
  left: 0;
  background: linear-gradient(90deg, rgba(247, 249, 252, .98), rgba(247, 249, 252, 0))
}

.trust-carousel-wrap:after {
  right: 0;
  background: linear-gradient(270deg, rgba(250, 252, 255, .98), rgba(250, 252, 255, 0))
}

.footer-shell {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 28px !important;
  padding: 32px 0 0 !important;
  border-top: 1px solid rgba(15, 23, 32, .08) !important;
}

.footer-meta {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

.footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  justify-content: center !important;
}

.footer-links a {
  color: #666666 !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  line-height: 1.6 !important;
}

.footer-links a:hover {
  color: #d5414e !important;
}

.footer-copy {
  color: #999999;
  font-size: 12px;
  text-align: center;
  width: 100%;
}

.btn-primary,
.cookie-btn.primary {
  transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease !important
}

.btn-primary:hover,
.btn-primary:focus-visible {
  background: linear-gradient(135deg, var(--teal), #8be5e8) !important;
  box-shadow: 0 18px 35px rgba(103, 214, 219, .24) !important;
  color: #0f1720 !important
}

.cookie-btn.primary:hover,
.cookie-btn.primary:focus-visible {
  background: linear-gradient(135deg, var(--teal), #8be5e8) !important;
  border-color: rgba(103, 214, 219, .45) !important;
  box-shadow: 0 16px 30px rgba(103, 214, 219, .22) !important;
  color: #0f1720 !important
}

.red-stop,
.red-dot {
  color: var(--red) !important
}


/* final requested refinements */
body {
  padding-top: 0 !important;
}

.header {
  position: fixed !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  width: 100%;
}

.header.header-hidden {
  transform: none !important;
  opacity: 1 !important;
}

main {
  padding-top: 0 !important;
}

.page {
  padding: 14px 0 80px !important;
}

.hero {
  padding-top: 0 !important;
}

.container.hero,
.container.section,
.home-hero.hero-shell,
.home-trust {
  margin-top: 0 !important;
}

.red-stop,
.red-dot {
  color: #d5414e !important;
}

.logo-tile {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 168px !important;
  height: 66px !important;
  padding: 10px 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(248, 251, 254, .84)) !important;
  border: 1px solid rgba(15, 23, 32, .05) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 32, .05) !important;
  opacity: 1 !important;
  transition: opacity .2s ease, transform .2s ease !important;
}

.logo-tile img {
  height: 110px !important;
  max-width: 150px !important;
  width: auto !important;
  display: block !important;
  object-fit: contain !important;
}

.technopro-logo {
  height: 48px !important;
  width: auto !important;
}



/* april 2026 stability patch: menu + section gap fixes */
.header {
  position: fixed !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  padding: 10px 28px 0 !important;
  background: transparent !important;
  z-index: 120 !important;
}

.header.header-hidden {
  transform: none !important;
  opacity: 1 !important;
}

.header-inner {
  min-height: 74px !important;
  border-radius: 20px !important;
}

/* main {
  padding-top: 16px !important;
} */

.page {
  padding: 80px 0 72px !important;
}

.hero,
.hero-section,
.container.hero,
.home-hero.hero-shell,
.home-trust,
.container.section:first-of-type {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.container.section {
  margin-top: 0 !important;
  padding: 28px !important;
}

.home-hero.hero-shell {
  padding: 30px !important;
  margin: 30px 0 !important;
}

.home-trust.section-shell,
.section-shell,
.cta-shell {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.trust-top,
.section-top {
  margin-bottom: 18px !important;
}

.trust-metrics,
.grid-1,
.grid-2,
.grid-3,
.grid-4,
.grid-5 {
  gap: 14px !important;
}

.nav-item {
  position: relative;
  padding: 4px 0 10px;
}

.nav-item::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 14px;
}

.mega {
  top: calc(100% + 2px) !important;
  z-index: 140 !important;
}

.mobile-drawer {
  inset: 86px 16px auto 16px !important;
  z-index: 130 !important;
}

@media (max-width:920px) {
  .header {
    padding: 10px 16px 0 !important;
  }

  .header-inner {
    min-height: 68px !important;
  }

  /* main {
    padding-top: 12px !important;
  } */

  .container.section {
    margin-top: 14px !important;
  }

  .home-hero.hero-shell,
  .home-trust.section-shell,
  .section-shell,
  .cta-shell {
    padding: 22px !important;
  }

  .container.hero+.container.section {
    margin-top: 0 !important;
  }
}

.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.card {
  position: relative;
  padding: 30px 25px;
  border-radius: 20px;
  background: #fff;
  transition: all 0.4s ease;
  overflow: hidden;
  border: 1px solid #eee;
}



/* Image */
.card-img {
  width: 100px;
  height: 100px;
  margin-bottom: 15px;
}

.card-img img {
  width: 100%;
  transition: 0.4s;
  object-fit: cover;
}

/* Title */
.card h3 {
  font-size: 18px;
  margin-bottom: 10px;
  font-weight: 600;
}

/* Text */
.card p {
  font-size: 14px;
  color: #555;
  line-height: 1.6;
}

/* Hover Effect 🔥 */
.card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

/* Hover Image Animation */
.card:hover .card-img img {
  transform: scale(1.15);
}

.execution-block .card-img {
  width: 100%;
  height: 100%;
}

.execution-block .card {
  padding: 0 !important;
  min-height: auto !important;
}

.execution-block .card:before {
  display: none;
}

.execution-block .card-img img {
  width: 100%;
  transition: 0.4s;
  height: 200px;
  object-fit: cover;
}

.execution-block .execution-cont {
  padding: 0 20px;
}

.grid-4-block {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* GRID */


/* CARD BASE */
.execution-card {
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  transition: all 0.4s ease;
  border: 1px solid #eee;
  position: relative;
}

/* IMAGE */
.execution-img {
  overflow: hidden;
  height: 220px;
}

.execution-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s ease;
}

/* CONTENT */
.execution-content {
  padding: 20px;
}

.execution-content h3 {
  font-size: 18px;
  margin-bottom: 14px;
  font-weight: 600;
}

.execution-content p {
  margin-top: 0;
  ;
  font-size: 14px;
  color: #555;
  line-height: 1.6;
}

/* 🔥 HOVER EFFECT */
.execution-card:hover {
  transform: translateY(-12px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
}

/* Image Zoom */
.execution-card:hover .execution-img img {
  transform: scale(1.1);
}

/* Gradient Overlay on Hover */
.execution-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, rgba(255, 77, 77, 0.1), rgba(0, 188, 212, 0.1));
  opacity: 0;
  transition: 0.4s;
}

.execution-card:hover::after {
  opacity: 1;
}

/* Highlight Card (Last one special) */
.highlight-card {
  border: 1px solid transparent;
  background: linear-gradient(#fff, #fff) padding-box,
    linear-gradient(120deg, #ff4d4d, #00bcd4) border-box;
}

.execution-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}

@media (max-width: 1200px) {
  .execution-grid {
    grid-template-columns: repeat(3, 1fr);
  }

}

@media (max-width: 1024px) {
  .grid-4-block {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .execution-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .execution-grid {
    grid-template-columns: 1fr;
  }

  .grid-4-block {
    grid-template-columns: 1fr;
  }
}

.section-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 800;
  color: #7a8795;
}

.section-label:before {
  content: "";
  width: 36px;
  height: 1px;
  background: linear-gradient(90deg, var(--red), rgba(103, 214, 219, .45));
}

.execution-bridge {
  margin: 34px 0 8px;
}

.bridge-line {
  height: 1px;
  margin: 0 0 24px;
  background: linear-gradient(90deg, transparent, rgba(15, 23, 32, 0.08), transparent);
}

.bridge-content {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  align-items: end;
  gap: 22px;
  padding: 0;
  text-align: left;
}

.bridge-content h3 {
  font-size: 38px;
  line-height: 1.02;
  letter-spacing: -.03em;
  margin: 0;
}

.bridge-content p {
  margin: 0;
  font-size: 18px;
  color: var(--ink-soft);
  line-height: 1.6;
  max-width: 58ch;
  justify-self: end;
  text-align: left;
}

.execution-cta-row {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-start;
}

@media (max-width: 900px) {
  .bridge-line {
    margin-bottom: 18px;
  }

  .bridge-content {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .bridge-content p {
    justify-self: start;
    max-width: none;
  }
}

.pillars .card,
.constraint-part .card {
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pillars .card:hover,
.constraint-part .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 40px rgba(15, 23, 32, .08);
}

.constraint-part {
  margin-top: 20px;

}

.constraint-part .card {
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(247, 250, 253, .76));
}

.constraint-part .card:before {
  height: 3px;
  opacity: .72;
}

.service-block {
  border-radius: 20px;
  padding: 30px 0 !important;
  background: radial-gradient(260px 180px at 15% 15%, rgba(103, 214, 219, .12), transparent 60%), linear-gradient(145deg, rgba(18, 28, 42, .98), rgba(27, 39, 58, .92));
  color: #eef5fb;
  border: 1px solid rgba(255, 255, 255, .10);
  box-shadow: 0 24px 60px rgba(7, 13, 24, .20);
  overflow: hidden;
}

/* Header */
.service-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 50px;
  padding: 0 20px;
}

.service-title h2 {
  font-size: 40px;
  font-weight: 700;
  color: #fff;
}

.service-subtitle {
  color: #8be5e8;
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}

/* Nav */
.service-nav {
  display: flex;
  gap: 15px;
}

.service-arrow {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.3s;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

#servicePrev {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

#serviceNext {
  background: #fff;
  color: #053BAD;
}

#servicePrev:hover,
#serviceNext:hover {
  background: linear-gradient(135deg, var(--teal), #8be5e8);
  color: #000;
}

.service-arrow:hover {
  background: #f8e306;
  color: #000;
}

/* Slider */
.service-slider {
  height: 440px;
  padding: 0 20px;
  overflow: visible !important;
}

.service-slider .swiper-slide {
  width: 220px !important;
  transition: width 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  cursor: pointer;
}

/* Expand effect */
.service-slider .swiper-slide.is-expanded,
.service-slider .swiper-slide:hover {
  width: 400px !important;
}

/* Card */
.service-card {
  position: relative;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.3);
}

.service-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Overlay */
.service-content {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 30px;

  background: linear-gradient(to top,
      rgba(0, 0, 0, 0.9) 0%,
      rgba(0, 0, 0, 0.7) 50%,
      rgba(0, 0, 0, 0.4) 75%,
      rgba(0, 0, 0, 0.1) 85%,
      rgba(0, 0, 0, 0) 100%);

  opacity: 0;
  transform: translateY(20px);
  transition: 0.4s;
}

.service-slider .swiper-slide.is-expanded .service-content,
.service-slider .swiper-slide:hover .service-content {
  opacity: 1;
  transform: translateY(0);
}

.service-slider .swiper-slide {
  width: auto;
}

.service-slider {
  overflow: visible;
  padding-left: 20px;
  padding-right: 20px;
}

/* Text */
.service-content h3 {
  font-size: 18px;
  color: #fff;
}

.service-content p {
  font-size: 14px;
  margin: 10px 0 20px;
}

/* .service-content a {
      background: linear-gradient(135deg, var(--red), #ea6a75);
      color: #fff;
      padding: 10px 20px;
      border-radius: 25px;
      text-decoration: none;
    }

    .service-content a:hover {
      background: linear-gradient(135deg, var(--teal), #8be5e8) !important;
      box-shadow: 0 18px 35px rgba(103, 214, 219, .24) !important;
      color: #0f1720 !important;
    } */


@media (max-width: 992px) {

  .service-title h2 {
    font-size: 32px;
  }

  .service-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .service-nav {
    align-self: flex-end;
  }

  /* Slider */
  .service-slider {
    height: 400px;
  }

  .service-slider .swiper-slide {
    width: 180px !important;
  }

  .service-slider .swiper-slide.is-expanded,
  .service-slider .swiper-slide:hover {
    width: 300px !important;
  }

  .service-content h3 {
    font-size: 20px;
  }

}


/* =========================
   ✅ 640px (Mobile)
========================= */
@media (max-width: 640px) {

  .service-block {
    padding: 20px 0 !important;
  }

  .service-header {
    padding: 0 15px;
  }

  .service-title h2 {
    font-size: 26px;
    line-height: 1.3;
  }

  .service-nav {
    justify-content: flex-end;
  }

  .service-arrow {
    width: 45px;
    height: 45px;
  }

  .service-slider {
    height: auto;
  }

  .service-slider .swiper-slide {
    width: 85% !important;
    /* full card feel */
  }

  .service-slider .swiper-slide:hover,
  .service-slider .swiper-slide.is-expanded {
    width: 85% !important;
  }

  /* Card */
  .service-card {
    border-radius: 15px;
  }

  .service-content {
    opacity: 1;
    /* always visible */
    transform: translateY(0);
    padding: 20px;
  }

  .service-content h3 {
    font-size: 18px;
  }

  .service-content p {
    font-size: 13px;
  }

}

.career-section {
  background: linear-gradient(135deg, #e8edf5, #d6dde7);
  padding: 56px 20px 60px;
}

/* ========================= */
/* WRAPPER */
/* ========================= */
.career-wrapper {
  max-width: 1200px;
  margin: auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ========================= */
/* SIDE IMAGES */
/* ========================= */
.side-img {
  position: absolute;
  width: 260px;
  height: 360px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);

  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.side-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

/* LEFT */
.side-img.left {
  left: 0;
}

/* RIGHT */
.side-img.right {
  right: 0;
}

/* HOVER IMAGE */
.side-img:hover {
  transform: scale(1.05);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.25);
}

.side-img:hover img {
  transform: scale(1.1);
}

/* ========================= */
/* CONTENT */
/* ========================= */
.career-content {
  text-align: center;
  max-width: 600px;
  z-index: 2;
}

.career-content h2 {
  font-size: 40px;
  font-weight: 600;
  line-height: 1.02;
  margin-bottom: 12px;
  color: #111;
  text-align: center;
  transition: 0.3s ease;
}

.career-content p {
  font-size: 18px;
  color: #555;
  line-height: 1.6;
  transition: 0.3s ease;
}

/* TEXT HOVER */
.career-content:hover h1 {
  letter-spacing: 0.5px;
}

.career-content:hover p {
  color: #222;
}

/* ========================= */
/* CTA SECTION */
/* ========================= */
.career-cta {
  margin-top: 70px;
}

.cta-box {
  max-width: 1200px;
  margin: auto;

  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 30px 40px;
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(12px);

  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);

  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* CTA HOVER */
.cta-box:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
}

/* CTA TEXT */
.cta-box h2 {
  font-size: 32px;
  font-weight: 500;
  color: #111;
}

/* ========================= */
/* BUTTON */
/* ========================= */
.cta-btn {
  padding: 14px 26px;
  background: #111;
  color: #fff;
  border-radius: 8px;
  text-decoration: none;
  font-size: 14px;

  position: relative;
  overflow: hidden;

  transition: 0.3s;
}

/* BUTTON SHINE EFFECT */
.cta-btn::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  transition: 0.4s;
}

.cta-btn:hover::before {
  left: 100%;
}

.cta-btn:hover {
  background: #333;
  transform: translateY(-2px) scale(1.03);
}

/* ========================= */
/* RESPONSIVE */
/* ========================= */
@media (max-width: 992px) {
  .side-img {
    display: none;
  }
}

@media (max-width: 768px) {
  .career-content h1 {
    font-size: 28px;
  }

  .cta-box {
    flex-direction: column;
    gap: 20px;
    text-align: center;
  }

  .cta-box h2 {
    font-size: 22px;
  }
}

/*cta section*/
.footer {
  overflow: hidden;
  position: relative;
}

.mega-footer {
  background: linear-gradient(180deg, #d6dde7 0%, #e5e9ef 48%, #eef1f5 100%);
  padding: 82px 20px 34px;
  color: #333333;
}

.container {
  max-width: 1300px;
  margin: auto;
}

/* GRID */
.footer-top {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 28px;
  align-items: start;
}

/* HEADINGS */
.footer-col h4 {
  font-size: 15px;
  line-height: 1.3;
  margin-bottom: 18px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: #24272b;
}

/* LIST */
.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-col ul li {
  transition: 0.25s ease;
}

.footer-col ul li a {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1.55;
  cursor: pointer;
  transition: 0.25s ease;
  color: #5d636b;
  text-decoration: none;
}

.footer-col ul li:hover {
  transform: translateX(2px);
}

.footer-col ul li a:hover {
  transform: translateX(2px);
  color: var(--red) !important;
}

/* Divider */
.footer-divider {
  height: 1px;
  background: linear-gradient(90deg, rgba(51, 51, 51, 0), rgba(51, 51, 51, 0.14), rgba(51, 51, 51, 0));
  margin: 46px 0 26px;
}

/* Bottom */
.footer-bottom {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 22px;
  align-items: center;
}

/* Social */
.footer-social {
  display: flex;
  gap: 12px;
}

.footer-social a {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(51, 51, 51, 0.16);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #34383d;
  font-size: 13px;
  font-weight: 600;
  transition: 0.25s ease;
  background: rgba(255, 255, 255, 0.35);
}

.footer-social a:hover {
  background: #ffffff;
  border-color: rgba(213, 65, 78, 0.35);
  color: var(--red);
}

/* Copy */
.footer-copy {
  color: #999999;
  font-size: 12px;
  text-align: center;
  width: 100%;
}

/* Links */
.footer-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  justify-content: center !important;
}

.footer-links a {
  color: #666666 !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  line-height: 1.6 !important;
}

.footer-links a:hover {
  color: #d5414e !important;
}


/* ================= */
/*  Responsive */
/* ================= */
@media (min-width: 1025px) {
  .footer-top {
    display: grid;
    grid-template-columns: 1.35fr 1.45fr 1fr 1fr 0.8fr;
    gap: 52px;
  }
}


@media (max-width: 992px) {

  .footer-bottom {
    grid-template-columns: 1fr;
    gap: 16px;
    text-align: center;
  }

  .footer-social,
  .footer-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 18px !important;
    justify-content: center !important;
  }
}

@media (max-width: 767px) {
  .footer-top {
    grid-template-columns: 1fr;
  }

  .footer-col {
    text-align: center;
  }

}

.feature-section {
  padding: 30px 0;
  position: relative;
}

.feature-wrapper {
  display: flex;
  gap: 70px;
  align-items: flex-start;
}

/* LEFT SIDE - Sticky Content */
.feature-left {
  width: 40%;
  position: sticky;
  top: 120px;
  align-self: flex-start;
  height: fit-content;
}

.feature-left h2 {
  font-size: 40px;
  margin-bottom: 12px;
  line-height: 1.02;
  color: #111;
}

.feature-left p {
  font-size: 18px;
  color: #555;
  line-height: 1.6;
}

/* RIGHT SIDE - Scrollable Cards */
.feature-right {
  width: 60%;
}

.feature-right-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

/* CARD STYLING */
.feature-card {
  display: flex;
  align-items: center;
  gap: 25px;
  padding: 40px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 1px solid #eee;
  opacity: 0.5;
  /* Initial opacity for scroll effect */
  transform: translateY(20px);
}

/* Active class when in viewport */
.feature-card.active {
  opacity: 1;
  transform: translateY(0);
  border-color: #67d6db;
  box-shadow: 0 20px 50px rgba(43, 89, 255, 0.1);
}

.feature-card:hover {
  transform: translateY(-8px);
  border-color: #67d6db;
}

/* ICON & CONTENT */
.feature-icon {
  font-size: 32px;
  color: #67d6db;
  background: transparent;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  overflow: visible;
  flex: 0 0 70px;
}

.feature-icon img {
  width: 64px;
  height: 64px;
  object-fit: contain;
  display: block;
  transition: transform 0.3s ease, filter 0.3s ease;
}

.feature-card:hover .feature-icon img {
  transform: scale(1.12);
}

.feature-content {
  flex: 1;
}

.feature-content h3 {
  font-size: 24px;
  margin-bottom: 10px;
  color: #222;
}

.feature-content p {
  margin-top: 0;
  font-size: 16px;
  color: #666;
  line-height: 1.5;
}

.feature-arrow a {
  font-size: 20px;
  color: #67d6db;
  transition: 0.3s;
}

.feature-card:hover .feature-arrow a {
  transform: translateX(5px);
  display: inline-block;
}

/* =========================
           RESPONSIVE (Responsive kore deya holo)
        ========================= */

@media (max-width: 1024px) {
  .feature-wrapper {
    flex-direction: column;
    gap: 40px;
  }

  .feature-left {
    position: relative;
    width: 100%;
    top: 0;
  }

  .feature-right {
    width: 100%;
  }

  .feature-card {
    opacity: 1;
    transform: none;
  }

  .career-content {

    max-width: 430px;

  }
}

@media (max-width: 640px) {
  .feature-left h2 {
    font-size: 32px;
  }

  .feature-card {
    flex-direction: column;
    align-items: flex-start;
    padding: 30px;
  }

  .feature-icon {
    width: 66px;
    height: 66px;
    flex-basis: 66px;
    font-size: 26px;
    margin-bottom: 15px;
  }

  .feature-icon img {
    width: 60px;
    height: 60px;
  }
}

.page-shell {
  position: relative;
  overflow: visible;
  /* Eta 'hidden' chilo, 'visible' korun */
}

/* 2. Page active holeo jate scroll smooth hoy */
.page.active {
  display: block !important;
  overflow: visible !important;
  /* Overflow hidden thaka cholbe na */
}

@media (min-width: 1024px) {
  .footer-col ul {
    display: block !important;
  }

  .footer-col h4 {
    cursor: default;
  }
}

/* Mobile (1023px and below) */
@media (max-width: 1023px) {
  .footer-top {
    display: block;
  }

  .footer-col {
    border-bottom: 1px solid rgba(51, 51, 51, 0.12);
    padding: 22px 0;
  }

  .footer-col h4 {
    position: relative;
    cursor: pointer;
    font-size: 16px;
    margin-bottom: 0;
  }

  /* arrow icon */
  .footer-col h4::after {
    content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 0;
    transition: 0.3s;
    font-size: 14px;
    top: 2px;
  }

  .footer-col.active h4::after {
    content: "\f077";
  }

  .footer-col ul {
    display: none;
    padding-top: 10px;
  }

  .footer-col.active ul {
    display: block;
  }
}

/* === PRO FOOTER ALIGNMENT FIX === */

/* Top columns container centered */
.footer-columns,
.footer-grid {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 40px;
  text-align: left;
}

/* Ensure footer wraps content centrally */
.footer>.container {
  max-width: 1240px;
  margin: 0 auto;
}

/* Bottom strip: perfectly centered copyright */
.footer-bottom {
  max-width: 1240px;
  margin: 24px auto 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

/* Left (social/icon) */
.footer-bottom .footer-social {
  justify-self: start;
}

/* Center (copyright) */
.footer-bottom .footer-copy {
  justify-self: center;
  text-align: center;
  font-size: 12px;
  color: #999;
}

/* Right (links) */
.footer-bottom .footer-links {
  justify-self: end;
  display: flex;
  gap: 18px;
}

/* Footer links styling */
.footer-bottom .footer-links a {
  font-size: 13.5px;
  color: #666;
  font-weight: 400;
}

.footer-bottom .footer-links a:hover {
  color: #d5414e;
}

/* Responsive */
@media (max-width: 920px) {

  .footer-columns,
  .footer-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .footer-bottom {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .footer-bottom .footer-social,
  .footer-bottom .footer-links,
  .footer-bottom .footer-copy {
    justify-self: center;
  }
}

/* mannage section */

.ms-hero {
  min-height: 720px !important;
  display: block !important;
  padding: 140px 0 58px !important;
  overflow: hidden !important;
}

.ms-hero-wrap {
  position: relative;
  z-index: 2;
}

.ms-hero-grid {
  display: block !important;
}

.ms-hero-main {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr);
  gap: 48px;
  align-items: center;
}

.ms-hero-copy {
  max-width: 560px;
}

.container.section.manage-case-block {
  padding-top: 60px !important;
}

.ms-hero h1 {
  font-size: 50px;
  line-height: 1.02 !important;
  letter-spacing: -.048em !important;
  max-width: 560px !important;
  margin: 20px 0 18px !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.ms-hero p {
  font-size: 17px !important;
  line-height: 1.68 !important;
  max-width: 520px !important;
  margin: 0 0 24px !important;
}

.ms-hero .button-row {
  gap: 12px;
}

.ms-hero .btn {
  padding: 13px 18px;
  min-height: 48px;
  border-radius: 16px;
}

.ms-hero-visual {
  position: relative;
  min-height: 430px;
  border-radius: 34px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .18);
  background: radial-gradient(360px 260px at 18% 20%, rgba(103, 214, 219, .28), transparent 62%), radial-gradient(420px 300px at 82% 82%, rgba(213, 65, 78, .22), transparent 64%), linear-gradient(135deg, rgba(10, 20, 34, .92), rgba(18, 27, 44, .72));
  box-shadow: 0 28px 80px rgba(0, 0, 0, .26);
}

.ms-hero-visual:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px);
  background-size: 54px 54px;
  opacity: .72;
}

.ms-visual-frame {
  position: absolute;
  inset: 54px;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, .12);
  background: linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .01));
  overflow: hidden;
}

.ms-line {
  position: absolute;
  height: 4px;
  border-radius: 999px;
  transform-origin: left center;
  opacity: .55;
}

.ms-line-one {
  width: 72%;
  left: 8%;
  top: 34%;
  background: linear-gradient(90deg, rgba(103, 214, 219, .78), rgba(255, 255, 255, .28));
  transform: rotate(-34deg);
}

.ms-line-two {
  width: 86%;
  left: 4%;
  top: 70%;
  background: linear-gradient(90deg, rgba(103, 214, 219, .85), rgba(213, 65, 78, .55));
  transform: rotate(22deg);
}

.ms-line-three {
  width: 92%;
  left: 18%;
  top: 92%;
  background: linear-gradient(90deg, rgba(213, 65, 78, .72), rgba(255, 255, 255, .16));
  transform: rotate(-62deg);
}

.ms-dot {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 0 0 7px rgba(255, 255, 255, .06);
}

.ms-dot-a {
  left: 24%;
  top: 36%;
  background: #67d6db;
}

.ms-dot-b {
  left: 55%;
  top: 25%;
}

.ms-dot-c {
  left: 76%;
  top: 64%;
  background: #d5414e;
}

.ms-dot-d {
  left: 39%;
  top: 75%;
}

.ms-hero-identifiers {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 34px !important;
  padding: 14px !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, .08) !important;
  border: 1px solid rgba(255, 255, 255, .13) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .18) !important;
  backdrop-filter: blur(18px) !important;
}

.ms-identifier-card {
  position: relative !important;
  padding: 22px 22px 22px 26px !important;
  min-height: 134px !important;
  border-radius: 20px !important;
  background: rgba(13, 19, 32, .64) !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  text-align: left !important;
  overflow: hidden !important;
}

.ms-identifier-card:before {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--teal), var(--red));
}

.ms-identifier-card h3 {
  display: block !important;
  margin: 0 0 8px !important;
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.16 !important;
  letter-spacing: -.02em !important;
  color: #fff !important;
  white-space: normal !important;
}

.ms-identifier-card p {
  display: block !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: rgba(255, 255, 255, .68) !important;
  max-width: none !important;
}

.managed-page {
  background: #f6f8fb;
  color: #111827;
  overflow: hidden;
  padding-top: 84px
}

.managed-page .container {
  max-width: 1240px
}

.ms-hero {
  position: relative;
  min-height: 760px;
  display: flex;
  align-items: center;
  padding: 88px 0 70px;
  background: radial-gradient(900px 460px at 12% 6%, rgba(103, 214, 219, .28), transparent 64%), radial-gradient(700px 420px at 92% 14%, rgba(213, 65, 78, .22), transparent 62%), linear-gradient(135deg, #101826 0%, #182235 50%, #0d1320 100%);
  color: #fff
}

.ms-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, .35) 78%, transparent 100%)
}

.ms-orb {
  position: absolute;
  border-radius: 999px;
  filter: blur(18px);
  opacity: .55
}

.ms-orb-one {
  width: 280px;
  height: 280px;
  right: 12%;
  top: 110px;
  background: rgba(103, 214, 219, .24)
}

.ms-orb-two {
  width: 220px;
  height: 220px;
  left: 8%;
  bottom: 90px;
  background: rgba(213, 65, 78, .18)
}

.ms-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 64px;
  align-items: center
}

.ms-eyebrow,
.ms-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--red)
}

.ms-eyebrow:before,
.ms-kicker:before {
  content: "";
  width: 32px;
  height: 1px;
  background: var(--teal)
}

.ms-hero h1 {
  font-family: "Maven Pro", Inter, sans-serif;
  font-size: clamp(48px, 6vw, 82px);
  line-height: .94;
  letter-spacing: -.055em;
  margin: 22px 0 24px;
  max-width: 760px
}

.ms-hero p {
  font-size: 19px;
  line-height: 1.72;
  color: rgba(255, 255, 255, .76);
  max-width: 650px
}

.ms-hero .btn-secondary {
  color: #fff;
  border-color: rgba(255, 255, 255, .28);
  background: rgba(255, 255, 255, .08)
}

.ms-system-card {
  position: relative;
  min-height: 520px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 34px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .11), rgba(255, 255, 255, .045));
  box-shadow: 0 30px 90px rgba(0, 0, 0, .32);
  backdrop-filter: blur(20px);
  padding: 28px;
  overflow: hidden
}

.ms-system-card:before {
  content: "";
  position: absolute;
  inset: -1px;
  background: radial-gradient(360px 190px at 50% 45%, rgba(103, 214, 219, .22), transparent 72%);
  pointer-events: none
}

.ms-system-topline {
  display: flex;
  justify-content: space-between;
  color: rgba(255, 255, 255, .62);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em
}

.ms-node {
  position: absolute;
  width: 210px;
  min-height: 148px;
  padding: 22px;
  border-radius: 24px;
  background: rgba(13, 19, 32, .78);
  border: 1px solid rgba(255, 255, 255, .14);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .26)
}

.ms-node i {
  color: var(--teal);
  font-size: 24px;
  margin-bottom: 14px
}

.ms-node strong {
  display: block;
  font-size: 18px;
  line-height: 1.2
}

.ms-node small {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, .55);
  line-height: 1.45
}

.ms-node-left {
  left: 32px;
  top: 185px
}

.ms-node-center {
  left: 50%;
  top: 115px;
  transform: translateX(-50%);
  background: linear-gradient(145deg, rgba(213, 65, 78, .25), rgba(13, 19, 32, .84));
  border-color: rgba(213, 65, 78, .35)
}

.ms-node-right {
  right: 32px;
  top: 250px
}

.ms-rail {
  position: absolute;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--teal), var(--red), transparent);
  opacity: .62;
  transform-origin: left
}

.ms-rail-one {
  width: 205px;
  left: 230px;
  top: 250px;
  transform: rotate(-20deg)
}

.ms-rail-two {
  width: 205px;
  right: 215px;
  top: 275px;
  transform: rotate(24deg)
}

.ms-pulse-dot {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #67d6db;
  box-shadow: 0 0 0 10px rgba(103, 214, 219, .12);
  animation: pulseMove 4s ease-in-out infinite
}

.dot-one {
  left: 310px;
  top: 210px
}

.dot-two {
  right: 300px;
  top: 305px;
  animation-delay: 1.3s
}

.ms-mini-grid {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 28px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px
}

.ms-mini-grid span {
  padding: 15px 12px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .1);
  font-size: 12px;
  color: rgba(255, 255, 255, .75);
  text-align: center
}

.ms-proof-row {
  background: #fff;
  border-bottom: 1px solid rgba(15, 23, 32, .08)
}

.ms-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px
}

.ms-proof-grid div {
  padding: 30px 24px;
  border-left: 1px solid rgba(15, 23, 32, .08)
}

.ms-proof-grid div:last-child {
  border-right: 1px solid rgba(15, 23, 32, .08)
}

.ms-proof-grid strong {
  display: block;
  font-family: "Maven Pro";
  font-size: 34px;
  letter-spacing: -.04em;
  color: #111827
}

.ms-proof-grid span {
  display: block;
  color: #667085;
  font-size: 14px;
  line-height: 1.45
}

.ms-section {
  padding: 80px 0;
  position: relative
}

.ms-two-col {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 80px;
  align-items: start
}

.ms-logo-proof .centered-header h2 {
  color: #000;
}

.ms-section h2 {
  font-family: "Maven Pro", Inter, sans-serif;
  font-size: 42px;
  line-height: 1.02;
  letter-spacing: -.045em;
  margin: 18px 0 0
}

.ms-copy-stack p,
.ms-model-head p,
.ms-governance p,
.ms-centered p {
  font-size: 18px;
  line-height: 1.78;
  color: #536171;
  margin: 0 0 18px
}

.ms-failure-section {
  padding-top: 20px
}

.ms-split-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-radius: 38px;
  overflow: hidden;
  background: #111827;
  color: #fff;
  box-shadow: 0 30px 90px rgba(16, 24, 40, .18)
}

.ms-split-left {
  padding: 64px;
  background: radial-gradient(560px 360px at 10% 0%, rgba(213, 65, 78, .22), transparent 70%), #111827
}

.ms-split-left h2 {
  margin-bottom: 34px
}

.ms-friction-list {
  display: grid;
  gap: 18px
}

.ms-friction-list div {
  padding: 22px;
  border-radius: 22px;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .09)
}

.ms-friction-list span {
  color: var(--teal);
  font-weight: 800;
  font-size: 12px
}

.ms-friction-list strong {
  display: block;
  font-size: 19px;
  margin: 8px 0 6px
}

.ms-friction-list p {
  margin: 0;
  color: rgba(255, 255, 255, .62);
  line-height: 1.55
}

.ms-split-right {
  padding: 64px;
  background: linear-gradient(145deg, #f8fafc, #eef4f7);
  color: #111827;
  display: grid;
  gap: 18px
}

.ms-response-card {
  padding: 26px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid rgba(15, 23, 32, .08);
  box-shadow: 0 12px 40px rgba(16, 24, 40, .06)
}

.ms-response-card i {
  color: var(--red);
  font-size: 24px
}

.ms-response-card h3 {
  font-size: 24px;
  letter-spacing: -.03em;
  margin: 14px 0 8px
}

.ms-response-card p {
  margin: 0;
  color: #667085;
  line-height: 1.6
}

.ms-operating {
  background: #fff
}

.ms-centered {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 44px
}

.ms-centered .ms-kicker:before {
  display: none
}

.ms-centered p {
  margin-top: 20px
}

.ms-flow {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  position: relative
}

.ms-flow:before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 70px;
  height: 2px;
  background: linear-gradient(90deg, var(--teal), var(--red));
  opacity: .28
}

.ms-flow-step {
  position: relative;
  padding: 28px;
  border-radius: 28px;
  background: #f7fafc;
  border: 1px solid rgba(15, 23, 32, .08);
  box-shadow: 0 18px 45px rgba(16, 24, 40, .06)
}

.ms-flow-step span {
  font-size: 12px;
  font-weight: 800;
  color: var(--red)
}

.ms-flow-step i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  margin: 18px 0;
  background: #fff;
  color: var(--teal);
  box-shadow: 0 12px 30px rgba(16, 24, 40, .08)
}

.ms-flow-step strong {
  display: block;
  font-size: 24px;
  letter-spacing: -.03em
}

.ms-flow-step p {
  color: #667085;
  line-height: 1.58;
  margin: 10px 0 0
}

.ms-models {
  background: linear-gradient(180deg, #f6f8fb, #eef3f7)
}

.ms-model-head {
  margin-bottom: 38px
}

.ms-model-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr;
  gap: 20px
}

.ms-model-card {
  min-height: 260px;
  padding: 30px;
  border-radius: 30px;
  background: #fff;
  border: 1px solid rgba(15, 23, 32, .08);
  box-shadow: 0 18px 55px rgba(16, 24, 40, .07);
  transition: transform .25s ease, box-shadow .25s ease
}

.ms-model-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 26px 70px rgba(16, 24, 40, .12)
}

.ms-model-card.large {
  grid-row: span 2;
  background: linear-gradient(145deg, #111827, #1c2638);
  color: #fff
}

.ms-model-card.accent {
  background: linear-gradient(145deg, rgba(103, 214, 219, .18), #fff)
}

.ms-card-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: rgba(103, 214, 219, .15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--red);
  font-size: 22px
}

.large .ms-card-icon {
  background: rgba(255, 255, 255, .12);
  color: var(--teal)
}

.ms-model-card h3 {
  font-size: 26px;
  line-height: 1.12;
  letter-spacing: -.035em;
  margin: 28px 0 12px
}

.ms-model-card p {
  color: #667085;
  line-height: 1.65
}

.ms-model-card.large p {
  color: rgba(255, 255, 255, .68);
  font-size: 17px
}

.ms-governance {
  background: #101826;
  color: #fff
}

.ms-governance:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 20% 0%, rgba(103, 214, 219, .16), transparent 34%), radial-gradient(circle at 90% 20%, rgba(213, 65, 78, .14), transparent 30%)
}

.ms-governance-grid {
  position: relative;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 80px;
  align-items: center
}

.ms-governance p {
  color: rgba(255, 255, 255, .66);
  margin-top: 22px
}

.ms-governance-stack {
  display: grid;
  gap: 18px
}

.ms-governance-stack div {
  padding: 28px;
  border-radius: 26px;
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .11)
}

.ms-governance-stack span {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: var(--teal)
}

.ms-governance-stack strong {
  display: block;
  font-size: 24px;
  margin: 9px 0 8px
}

.ms-governance-stack p {
  margin: 0;
  color: rgba(255, 255, 255, .58)
}

.ms-final-cta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 34px;
  align-items: center;
  padding: 58px;
  border-radius: 36px;
  background: linear-gradient(135deg, #fff, #f3f8fa);
  border: 1px solid rgba(15, 23, 32, .08);
  box-shadow: 0 24px 70px rgba(16, 24, 40, .1)
}

.ms-final-cta h2 {
  margin-top: 16px;
  max-width: 760px
}

.ms-final-cta p {
  font-size: 18px;
  color: #667085
}

.reveal {
  animation: msFadeUp .8s ease both
}

.ms-eyebrow {
  color: var(--teal);
}

@keyframes msFadeUp {
  from {
    opacity: 0;
    transform: translateY(24px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

@keyframes pulseMove {

  0%,
  100% {
    transform: scale(.82);
    opacity: .45
  }

  50% {
    transform: scale(1.25);
    opacity: 1
  }
}

@media(max-width:980px) {
  .managed-page {
    padding-top: 76px
  }

  .ms-hero {
    min-height: auto;
    padding: 70px 0
  }

  .ms-hero-grid,
  .ms-two-col,
  .ms-split-panel,
  .ms-governance-grid,
  .ms-final-cta {
    grid-template-columns: 1fr
  }

  .ms-system-card {
    min-height: 520px
  }

  .ms-proof-grid,
  .ms-flow {
    grid-template-columns: repeat(2, 1fr)
  }

  .ms-model-grid {
    grid-template-columns: 1fr 1fr
  }

  .ms-model-card.large {
    grid-row: auto;
    grid-column: span 2
  }

  .ms-section {
    padding: 78px 0
  }
}

@media(max-width:680px) {
  .ms-hero h1 {
    font-size: 44px
  }

  .ms-system-card {
    display: none
  }

  .ms-proof-grid,
  .ms-flow,
  .ms-model-grid {
    grid-template-columns: 1fr
  }

  .ms-model-card.large {
    grid-column: auto
  }

  .ms-split-left,
  .ms-split-right,
  .ms-final-cta {
    padding: 32px
  }

  .ms-section h2 {
    font-size: 36px
  }
}

@media(max-width:1080px) {
  .ms-hero-main {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .ms-hero-copy {
    max-width: 720px;
  }

  .ms-hero h1 {
    max-width: 680px !important;
  }

  .ms-hero-identifiers {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:680px) {
  .ms-hero {
    padding: 96px 0 42px !important;
  }

  .ms-hero h1 {
    font-size: 42px !important;
  }

  .ms-hero-visual {
    min-height: 300px;
  }

  .ms-visual-frame {
    inset: 34px;
  }

  .ms-hero-identifiers {
    grid-template-columns: 1fr !important;
  }
}


.ms-eyebrow,
.ms-kicker,
.ms-usecase-kicker {
  font-family: var(--helius-font-body) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
}

.content-section {
  padding: 100px 0;
}

.centered-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 60px;
}

.centered-header h2 {
  font-family: 'Maven Pro';
  font-size: 42px;
  margin-bottom: 20px;
  color: #ffffff;
}

.content-section .centered-header h2 {
  color: #000000;
}

.content-section .centered-header p {
  font-size: 18px;
}

.overview-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.info-card {
  background: #ffffff;
  padding: 40px;
  border-radius: 24px;
  border: 1px solid #edf2f7;
  transition: 0.3s
}

.info-card:hover {
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.06);
  transform: translateY(-5px);
}

.info-card h3 {
  color: #000;
  font-size: 24px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.info-card ul {
  padding: 0;
  list-style: none;
}

.info-card li {
  margin-bottom: 0;
  position: relative;
  font-size: 15px;
  color: #000;
  padding: 12px 0 12px 0 !important;
  border-top: 1px solid rgba(15, 23, 32, .10);
}


/* Dark Section */
.offers-dark-bg {
  background: #0f1720;
  color: #ffffff;
  padding: 100px 0;
  border-radius: 40px 40px 0 0;
}

.light-text p {
  color: #a0aec0;
  font-size: 18px;
}

.offers-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  grid-auto-rows: 1fr;
  margin-top: 50px;
}

.card-tall {
  grid-row: span 2;
  justify-content: center;
}

.offer-card {
  background: rgba(255, 255, 255, 0.05);
  padding: 40px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: 0.3s;
}

.offer-card:hover {
  border-color: #d5414e;
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.06);
  transform: translateY(-5px);
}

.offer-card h3 {
  color: #67d6db;
  margin-top: 0;
  font-size: 20px;
  margin-bottom: 15px;
}

.offer-card p {
  color: #cbd5e1;
  font-size: 15px;
  margin-bottom: 0;
  line-height: 1.6;
}

.cta-section {
  padding: 40px 0;
  text-align: center;
}

.cta-section .button-row {
  justify-content: center;
}

/* Responsive */
@media (max-width: 1024px) {
  .features-strip {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 20px;
  }

  .hero-grid,
  .overview-grid {
    grid-template-columns: 1fr;
  }

  .hero-content {
    text-align: center;
  }

  .btn-group {
    justify-content: center;
  }

  .hero-content h1 {
    font-size: 40px;
  }
}

@media (max-width: 600px) {
  .features-strip {
    grid-template-columns: 1fr;
  }

  .content-section {
    padding: 60px 0;
  }

  .centered-header h2 {
    font-size: 32px;
  }
}

.ms-proof-heading {
  max-width: 820px;
  margin: 0 auto 34px;
  text-align: center;
}

.ms-logo-marquee-wrap {
  position: relative !important;
  display: grid !important;
  gap: 14px !important;
  overflow: hidden !important;
  padding: 10px 0 !important;
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 18px !important;
}

.ms-logo-marquee-wrap {
  position: relative;
  display: grid;
  gap: 16px
}

.ms-logo-marquee-wrap:before,
.ms-logo-marquee-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none
}

.ms-logo-marquee-wrap:before {
  left: 0;
  background: linear-gradient(90deg, #fff, rgba(255, 255, 255, 0))
}

.ms-logo-marquee-wrap:after {
  right: 0;
  background: linear-gradient(270deg, #fff, rgba(255, 255, 255, 0))
}

.ms-logo-marquee {
  display: flex;
  gap: 22px;
  min-width: max-content;
  align-items: center;
  width: max-content;
  animation: msLogoMove 42s linear infinite;
}


.ms-logo-marquee.reverse {
  animation-direction: reverse;
  animation-duration: 48s
}

.ms-logo-row {
  display: flex !important;
  gap: 22px !important;
  min-width: max-content !important;
  align-items: center !important;
  padding: 0 !important;
}

.ms-logo-tile {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 168px !important;
  height: 66px !important;
  padding: 10px 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(248, 251, 254, .84)) !important;
  border: 1px solid rgba(15, 23, 32, .05) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 32, .05) !important;
  filter: none !important;
  opacity: 1 !important;
  transition: opacity .2s ease, transform .2s ease !important;
}

.ms-logo-tile:hover {
  filter: grayscale(0);
  opacity: 1;
  transform: translateY(-3px)
}

.ms-logo-tile img {
  max-width: 100%;
  max-height: 48px;
  object-fit: contain
}

@keyframes msLogoMove {
  from {
    transform: translateX(0)
  }

  to {
    transform: translateX(-50%)
  }
}

@media (max-width: 991px) {
  .offers-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .offers-grid {
    grid-template-columns: 1fr;
  }

  .card-tall {
    grid-row: 1;
    justify-content: center;
  }

  .cta-shell h2 {
    font-size: 26px;
    margin-bottom: 10px;
  }

  .offer-card {
    min-height: auto;
  }
}

/* Banking Section Specific Style Variation */
.banking-wrapper {
  padding: 60px 0;
  background-color: transparent;
}

/* Industry Context - Split Design */
.context-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: center;
  margin-bottom: 80px;
  padding-top: 100px;
}

.structured-block .centered-header h2 {
  color: #000;
}

.context-text h2 {
  font-family: 'Maven Pro', sans-serif;
  font-size: 42px;
  line-height: 1.1;
  margin-bottom: 20px;
}

.context-text p {
  font-size: 18px;
  color: var(--ink-soft);
}

/* Challenges - 3D Card Hover Effect */
.challenges-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 25px;
  margin-bottom: 100px;
}

.challenge-card {
  background: var(--surface);
  padding: 35px;
  border-radius: var(--radius-lg);
  border-left: 5px solid var(--red);
  transition: all 0.4s ease;
  box-shadow: var(--shadow-1);
}

.challenge-card:hover {
  transform: scale(1.03);
  background: #fff;
  box-shadow: var(--shadow-2);
}

.challenge-card h4 {
  font-size: 20px;
  margin-bottom: 12px;
  color: var(--ink);
}

/* Key Offers - Alternating Row Design */
.offers-list {
  margin-top: 50px;
}

.offer-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px;
  background: rgba(255, 255, 255, 0.4);
  border-radius: var(--radius-xl);
  margin-bottom: 20px;
  border: 1px solid var(--line);
  transition: 0.3s;
}

.offer-row:hover {
  background: var(--surface);
  border-color: var(--teal);
}

.offer-info {
  flex: 1;
}

.offer-type {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  color: var(--red);
  letter-spacing: 1px;
  margin-bottom: 8px;
  display: block;
}

.offer-info h3 {
  margin-bottom: 10px;
  font-size: 24px;
}

/* Impact Section - Modern Grid with Glassmorphism */
.impact-section {
  background: var(--bg-deep);
  padding: 80px 40px;
  border-radius: var(--radius-xl);
  color: #fff;
}

.impact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin-top: 40px;
}

.impact-item {
  padding: 30px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-md);
  position: relative;
}

.impact-item i {
  font-size: 30px;
  color: var(--teal);
  margin-bottom: 20px;
  display: block;
}

.impact-item h4 {
  color: #fff;
  font-size: 20px;
  margin-bottom: 10px;
}

.impact-item p {
  color: rgba(255, 255, 255, 0.7);
  font-size: 15px;
  margin: 0;
}

@media (max-width: 920px) {
  .context-box {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .offer-row {
    flex-direction: column;
    text-align: center;
  }
}

/* Premium Impact Section Design */
.impact-redefined {
  padding: 100px 0;
  background: radial-gradient(circle at 0% 0%, rgba(103, 214, 219, 0.05) 0%, transparent 50%);
  position: relative;
}

.impact-flex {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 60px;
  align-items: start;
}

/* Left Side Sticky Header */
.impact-sticky-header {
  position: sticky;
  top: 120px;
}

.impact-sticky-header h2 {
  font-family: 'Maven Pro', sans-serif;
  font-size: 48px;
  line-height: 1.1;
  margin-bottom: 24px;
  color: var(--ink);
}

.impact-sticky-header p {
  font-size: 18px;
  color: var(--ink-soft);
  max-width: 400px;
}

/* Right Side Impact List */
.impact-list-v2 {
  display: grid;
  gap: 20px;
}

.impact-item-v2 {
  background: #ffffff;
  padding: 40px;
  border-radius: var(--radius-xl);
  border: 1px solid var(--line);
  display: flex;
  gap: 30px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
  overflow: hidden;
}

/* Step Number Indicator */
.impact-item-v2::after {
  content: attr(data-index);
  position: absolute;
  right: -10px;
  bottom: -20px;
  font-size: 120px;
  font-weight: 900;
  color: rgba(15, 23, 32, 0.03);
  font-family: 'Maven Pro';
  z-index: 0;
}

.impact-icon-box {
  width: 70px;
  height: 70px;
  background: var(--bg);
  border-radius: 20px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  z-index: 1;
  transition: 0.3s;
}

.impact-icon-box i {
  font-size: 28px;
  color: var(--teal);
}

.impact-content-v2 {
  z-index: 1;
}

.impact-content-v2 h4 {
  font-size: 22px;
  margin-bottom: 12px;
  color: var(--ink);
  font-weight: 700;
}

.impact-content-v2 p {
  font-size: 16px;
  color: var(--ink-soft);
  margin: 0;
  line-height: 1.6;
}

/* Hover State */
.impact-item-v2:hover {
  transform: translateX(15px);
  border-color: var(--teal);
  box-shadow: var(--shadow-2);
  background: linear-gradient(90deg, #ffffff 0%, #f7fdfd 100%);
}

.impact-item-v2:hover .impact-icon-box {
  background: var(--teal);
}

.impact-item-v2:hover .impact-icon-box i {
  color: #fff;
}

/* Responsive */
@media (max-width: 1024px) {
  .impact-flex {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .impact-sticky-header {
    position: static;
    text-align: center;
  }

  .impact-sticky-header p {
    margin: 0 auto;
  }

  .impact-item-v2:hover {
    transform: translateY(-5px);
  }
}

@media (max-width: 640px) {
  .impact-item-v2 {
    flex-direction: column;
    gap: 20px;
    padding: 30px;
  }
}

/* Enterprise-grade service page refinements - May 2026 */
:root {
  --enterprise-ink: #111827;
  --enterprise-muted: #64748b;
  --enterprise-line: rgba(15, 23, 42, .10);
  --enterprise-soft: #f5f7fb;
  --enterprise-panel: #ffffff;
  --enterprise-navy: #0d1320;
}

.ms-hero {
  padding-top: 132px !important;
  padding-bottom: 64px !important;
  min-height: 680px !important;
  background: radial-gradient(900px 520px at 7% 0%, rgba(103, 214, 219, .22), transparent 62%), radial-gradient(760px 480px at 94% 12%, rgba(213, 65, 78, .20), transparent 64%), linear-gradient(135deg, #0b1220 0%, #151f31 48%, #0d1320 100%) !important;
}

.ms-hero-main {
  grid-template-columns: minmax(0, .98fr) minmax(380px, .92fr) !important;
  gap: 54px !important;
}

.ms-hero h1 {
  font-weight: 600 !important;
  font-size: 50px !important;
  line-height: 1.06 !important;
  letter-spacing: -.042em !important;
}

.ms-hero p {
  font-size: 16.5px !important;
  line-height: 1.72 !important;
  color: rgba(255, 255, 255, .74) !important;
}

.ms-eyebrow {
  color: var(--teal) !important;
  letter-spacing: .18em !important;
}

.ms-hero-visual {
  height: 398px !important;
  border-radius: 30px !important;
  background: radial-gradient(340px 220px at 20% 18%, rgba(103, 214, 219, .24), transparent 62%), radial-gradient(390px 260px at 80% 78%, rgba(213, 65, 78, .20), transparent 64%), linear-gradient(135deg, rgba(14, 23, 39, .96), rgba(20, 30, 47, .78)) !important;
}

.ms-hero-identifiers {
  margin-top: 28px !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, .075) !important;
}

.ms-identifier-card {
  min-height: 122px !important;
  border-radius: 18px !important;
  background: rgba(9, 17, 30, .62) !important;
}

.ms-identifier-card h3 {
  font-weight: 600 !important;
  font-size: 17px !important;
}

.content-section {
  position: relative;
  padding: 60px 0 !important;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.content-section:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(15, 23, 42, .04) 1px, transparent 1px), linear-gradient(rgba(15, 23, 42, .03) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, .72), transparent 72%);
  pointer-events: none;
}

.content-section .container {
  position: relative;
  z-index: 1;
}

.centered-header {
  max-width: 850px !important;
  margin-bottom: 48px !important;
}

.centered-header h2 {
  font-weight: 600 !important;
  letter-spacing: -.035em !important;
  font-size: clamp(34px, 3.2vw, 46px) !important;
  line-height: 1.08 !important;
}

.centered-header p {
  line-height: 1.75 !important;
}

.overview-grid {
  gap: 0 !important;
  background: #fff;
  border: 1px solid var(--enterprise-line);
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.info-card {
  border: 0 !important;
  border-right: 1px solid var(--enterprise-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 36px 34px !important;
  background: linear-gradient(180deg, #fff, #fbfdff) !important;
}

.info-card:last-child {
  border-right: 0 !important;
}

.info-card:hover {
  transform: none !important;
  background: #fff !important;
  box-shadow: inset 0 3px 0 var(--teal) !important;
}

.info-card h3 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-weight: 600 !important;
  font-size: 23px !important;
  letter-spacing: -.025em !important;
  margin-bottom: 14px !important;
}

.info-card h3:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--red);
  box-shadow: 0 0 0 6px rgba(213, 65, 78, .10);
}

.info-card li {
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  color: #4b5563 !important;
  border-top: 1px solid rgba(15, 23, 42, .08) !important;
}

.offers-dark-bg {
  position: relative;
  padding: 60px 0 !important;
  border-radius: 0 !important;
  background: radial-gradient(660px 360px at 8% 0%, rgba(103, 214, 219, .17), transparent 68%), radial-gradient(580px 320px at 92% 12%, rgba(213, 65, 78, .15), transparent 65%), linear-gradient(145deg, #0b1220, #111827 55%, #0e1726) !important;
  overflow: hidden;
}

.offers-dark-bg:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, .8), transparent 78%);
}

.offers-dark-bg .container {
  position: relative;
  z-index: 1;
}

.offers-grid {
  grid-template-columns: 1.12fr 1fr 1fr !important;
  gap: 18px !important;
  margin-top: 46px !important;
}

.offer-card {
  position: relative;
  border-radius: 24px !important;
  padding: 32px !important;
  background: rgba(255, 255, 255, .055) !important;
  border: 1px solid rgba(255, 255, 255, .11) !important;
  box-shadow: none !important;
  overflow: hidden;
}

.offer-card:before {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--teal), var(--red));
  opacity: .65;
}

.offer-card:hover {
  transform: translateY(-4px) !important;
  background: rgba(255, 255, 255, .075) !important;
  border-color: rgba(103, 214, 219, .35) !important;
}

.offer-card h3 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-weight: 600 !important;
  font-size: 21px !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
  color: #fff !important;
}

.offer-card p {
  color: rgba(255, 255, 255, .66) !important;
}

.ms-logo-proof {
  padding: 30px 0 !important;
}

.ms-logo-marquee-wrap {
  margin-top: 18px !important;
}

.ms-logo-row {
  gap: 18px !important;
}

.ms-logo-marquee.reverse {
  margin-top: 20px !important;
}

.ms-logo-tile {
  height: 92px !important;
  min-width: 168px !important;
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 12px 34px rgba(15, 23, 42, .055) !important;
}

/* .service-block{border:1px solid rgba(15,23,42,.08);border-radius:32px;padding:34px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 22px 64px rgba(15,23,42,.07);} */
/* .service-title .service-subtitle{color:var(--red)!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-size:12px!important;} */
.cta-shell {
  border-radius: 32px !important;
  background: radial-gradient(520px 240px at 15% 0%, rgba(103, 214, 219, .20), transparent 62%), linear-gradient(135deg, #101827, #172133) !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
  color: #fff !important;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .16) !important;
}

.cta-shell p {
  color: rgba(255, 255, 255, .72) !important;
}

.cta-section {
  margin-bottom: 30px;
}

.card-tall-img img {
  height: 200px;
  width: 100%;
  margin-bottom: 20px;
  border-radius: 20px;
  object-fit: cover;
}

@media(max-width:1080px) {
  .ms-hero-main {
    grid-template-columns: 1fr !important
  }

  .overview-grid {
    grid-template-columns: 1fr !important
  }

  .info-card {
    border-right: 0 !important;
    border-bottom: 1px solid var(--enterprise-line) !important
  }

  .info-card:last-child {
    border-bottom: 0 !important
  }
}

.home-cta.cta-shell {
  margin: -100px 0 170px;
}

.offers-grid .offer-card {
  min-height: auto !important;
}

.button-row .btn-secondary {
  color: #fff;
  border-color: rgba(255, 255, 255, .28);
  background: rgba(255, 255, 255, .08);
}

.offers-grid .card-long {
  grid-column: 2 / -1;
}

@media(max-width:991px) {
  .offers-grid {
    display: block !important;
  }

  .offers-grid .offer-card {
    margin-bottom: 20px;
  }

  .card-tall-img img {
    height: 200px;
    width: 300px;
    border-radius: 20px;
    object-fit: cover;
    margin: 0 auto 20px;
  }

  .offer-card h3 {
    text-align: center;
  }

  .offer-card p {
    text-align: center;
  }
}

@media (max-width: 680px) {
  .ms-hero h1 {
    font-size: 40px !important;
  }
}

.industry-hero {
  position: relative;
  overflow: hidden;
  padding: 150px 0 88px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

/* .industry-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .78) 45%, rgba(255, 255, 255, .2) 100%), url('../images/Banking.jpg') center right/cover no-repeat;
  opacity: .95;
} */
.industry-hero:before {
  content: "";
  position: absolute;
  inset: 0;

  background:
    linear-gradient(90deg,
      rgba(10, 15, 30, 0.88) 0%,
      rgba(10, 15, 30, 0.78) 35%,
      rgba(10, 15, 30, 0.68) 65%,
      rgba(10, 15, 30, 0.05) 100%);

  z-index: 1;
}

.industry-hero .container {
  position: relative;
  z-index: 2
}

.industry-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) 420px;
  gap: 52px;
  align-items: end
}

.industry-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--red);
  margin-bottom: 22px
}

.industry-kicker:before {
  content: "";
  width: 34px;
  height: 1px;
  background: var(--red)
}

.industry-hero h1 {
  max-width: 800px;
  font-family: Maven Pro, Inter, sans-serif;
  font-size: 50px;
  line-height: 1.3;
  margin: 0 0 24px;
  color: #fff;
  font-weight: 700
}

.industry-hero p {
  max-width: 690px;
  font-size: 18px;
  line-height: 1.72;
  color: #fff;
  margin: 0 0 30px
}

.industry-hero-panel {
  background: rgba(255, 255, 255, .74);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: 0 28px 80px rgba(24, 32, 42, .13);
  border-radius: 24px;
  padding: 28px
}

.industry-panel-title {
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 800;
  color: #657080;
  margin-bottom: 18px
}

.industry-signal {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 14px;
  padding: 18px 0;
  border-top: 1px solid var(--industry-line)
}

.industry-signal:first-of-type {
  border-top: 0
}

.industry-signal strong {
  display: block;
  color: #222a36;
  font-size: 15px;
  margin-bottom: 5px
}

.industry-signal span {
  display: block;
  color: #667080;
  font-size: 13.5px;
  line-height: 1.55
}

.signal-no {
  font-family: var(--display);
  font-weight: 700;
  color: var(--red);
  font-size: 15px
}

.industry-section {
  padding: 50px 0
}

.industry-section.alt {
  background: #f6f8fb
}

.industry-intro-grid {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 72px;
  align-items: start
}

.industry-section-label {
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--red);
  margin-bottom: 18px
}

.industry-lead h2 {
  font-family: var(--display);
  font-size: clamp(34px, 3.2vw, 56px);
  line-height: 1.03;
  letter-spacing: -.04em;
  font-weight: 650;
  color: #222a36;
  margin: 0 0 18px
}

.industry-intro-copy {
  display: grid;
  gap: 18px;
  padding-left: 36px;
  border-left: 1px solid var(--industry-line)
}

.industry-intro-copy p {
  font-size: 17px;
  line-height: 1.8;
  color: #5d6877;
  margin: 0
}

.challenge-board {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: 42px
}

.industry-challenge {
  position: relative;
  padding: 26px;
  background: #fff;
  border: 1px solid var(--industry-line);
  border-radius: 24px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease
}

.industry-challenge:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, .92) 72%, #fff 100%);
  z-index: 1
}

.industry-challenge:after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--bg) center/cover no-repeat;
  opacity: .24;
  filter: saturate(.65);
  transition: opacity .35s ease, transform .5s ease
}

.industry-challenge:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 70px rgba(27, 35, 48, .11);
  border-color: rgba(213, 65, 78, .24)
}

.industry-challenge:hover:after {
  opacity: .34;
  transform: scale(1.04)
}

.industry-challenge>* {
  position: relative;
  z-index: 2
}

.industry-challenge .num {
  font-family: var(--display);
  font-size: 20px;
  letter-spacing: .14em;
  color: var(--red);
  font-weight: 800;
  margin-bottom: 20px;
}

.industry-challenge h3 {
  font-size: 21px;
  letter-spacing: -.02em;
  margin: 0 0 10px;
  color: #202632
}

.industry-challenge p {
  font-size: 14.5px;
  line-height: 1.65;
  color: #5f6978;
  margin: 0
}

.capability-shell {
  background: #151923;
  color: #fff;
  padding: 58px;
  border-radius: 28px;
  position: relative;
  overflow: hidden
}

.capability-shell:before {
  content: "";
  position: absolute;
  right: -150px;
  top: -180px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(103, 214, 219, .28), transparent 68%)
}

.capability-head {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr .78fr;
  gap: 50px;
  margin-bottom: 38px
}

.capability-head h2 {
  font-family: var(--display);
  font-size: clamp(34px, 3.2vw, 54px);
  line-height: 1.05;
  letter-spacing: -.04em;
  margin: 0;
  color: #fff
}

.capability-head p {
  margin: 0;
  color: rgba(255, 255, 255, .72);
  font-size: 16px;
  line-height: 1.75
}

.capability-list {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(255, 255, 255, .14)
}

.capability-row {
  display: grid;
  grid-template-columns: 250px 1fr 34px;
  gap: 28px;
  align-items: center;
  padding: 25px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .14);
  text-decoration: none;
  color: #fff
}

.capability-row .service-tag {
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #67d6db;
  font-weight: 800
}

.capability-row h3 {
  font-size: 24px;
  margin: 0 0 7px;
  letter-spacing: -.02em;
  color: #fff
}

.capability-row p {
  margin: 0;
  color: rgba(255, 255, 255, .68);
  line-height: 1.58
}

.capability-row .arrow {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 50%;
  display: grid;
  place-items: center;
  transition: .28s ease
}

.capability-row:hover .arrow {
  background: var(--red);
  border-color: var(--red);
  transform: translateX(4px)
}

.impact-grid {
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 26px;
  align-items: stretch
}

.impact-copy {
  position: relative;
  align-self: stretch;
  background: linear-gradient(145deg, #151923 0%, #202632 62%, #2b313d 100%);
  border-radius: 30px;
  padding: 48px;
  overflow: hidden;
  color: #fff;
  min-height: 520px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 26px 80px rgba(21, 25, 35, .16)
}

.impact-copy:before {
  content: "";
  position: absolute;
  right: -120px;
  top: -130px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(103, 214, 219, .28), transparent 68%)
}

.impact-copy:after {
  content: "";
  position: absolute;
  left: 46px;
  right: 46px;
  bottom: 38px;
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 255, 255, .45), rgba(255, 255, 255, 0))
}

.impact-copy h2 {
  position: relative;
  z-index: 2;
  font-family: var(--display);
  font-size: clamp(38px, 3.8vw, 62px);
  line-height: 1.02;
  letter-spacing: -.05em;
  margin: 0;
  color: #fff;
  font-weight: 650
}

.impact-copy p {
  position: relative;
  z-index: 2;
  max-width: 390px;
  font-size: 17px;
  line-height: 1.75;
  color: rgba(255, 255, 255, .72);
  margin: 22px 0 0
}

.impact-copy .impact-anchor {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 16px;
  align-items: center;
  margin-top: 40px;
  color: rgba(255, 255, 255, .78);
  font-size: 13px;
  line-height: 1.55
}

.impact-anchor span {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .16);
  color: #67d6db;
  font-weight: 800
}

.impact-stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px
}

.impact-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 34px;
  background: #fff;
  border: 1px solid var(--industry-line);
  border-radius: 28px;
  padding: 30px;
  min-height: 250px;
  overflow: hidden;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease
}

.impact-card:before {
  content: "";
  position: absolute;
  right: -58px;
  top: -58px;
  width: 156px;
  height: 156px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(213, 65, 78, .12), rgba(213, 65, 78, 0) 68%);
  transition: transform .42s ease, opacity .35s ease
}

.impact-card:after {
  content: "";
  position: absolute;
  left: 30px;
  right: 30px;
  bottom: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--red), rgba(103, 214, 219, .65));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .35s ease
}

.impact-card:hover {
  border-color: rgba(213, 65, 78, .25);
  transform: translateY(-7px);
  box-shadow: 0 24px 70px rgba(27, 35, 48, .10)
}

.impact-card:hover:before {
  transform: scale(1.22);
  opacity: .9
}

.impact-card:hover:after {
  transform: scaleX(1)
}

.impact-card .impact-no {
  position: relative;
  z-index: 2;
  width: auto;
  height: auto;
  border-radius: 0;
  background: transparent;
  display: block;
  font-family: var(--display);
  font-weight: 800;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .16em
}

.impact-card h3 {
  position: relative;
  z-index: 2;
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.12;
  letter-spacing: -.025em;
  color: #202632
}

.impact-card p {
  position: relative;
  z-index: 2;
  margin: 0;
  color: #657080;
  line-height: 1.68;
  font-size: 15px
}

.impact-card.featured {
  grid-column: 1 / -1;
  min-height: 210px;
  display: grid;
  grid-template-columns: 160px 1fr;
  align-items: end;
  background: linear-gradient(135deg, #fff, #f8fafc)
}

.impact-card.featured .impact-no {
  font-size: 40px;
  letter-spacing: -.04em;
  line-height: 1;
  color: rgba(213, 65, 78, .78)
}

.impact-card.featured h3 {
  font-size: 30px;
  max-width: 640px
}

.impact-card.featured p {
  max-width: 720px
}

.industry-proof-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 28px auto 0;
  max-width: 920px
}

.proof-pill {
  border: 1px solid var(--industry-line);
  background: rgba(255, 255, 255, .72);
  border-radius: 16px;
  padding: 18px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  color: #394251
}

.industry-cta {
  background: linear-gradient(135deg, #151923, #252b36);
  color: #fff;
  border-radius: 28px;
  padding: 66px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  position: relative;
  overflow: hidden
}

.industry-cta:before {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -120px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(213, 65, 78, .32), transparent 70%)
}

.industry-cta h2 {
  position: relative;
  margin: 0;
  font-family: var(--display);
  font-size: clamp(32px, 3.2vw, 56px);
  letter-spacing: -.04em;
  color: #fff
}

.industry-cta p {
  position: relative;
  margin: 12px 0 0;
  color: rgba(255, 255, 255, .72);
  font-size: 16px
}

.industry-cta .button-row {
  position: relative;
  margin: 0
}

/* .industry-hero-copy .btn-secondary{
  color: #000;
  border-color: rgba(0,0,0,.28);
} */
@media(max-width:980px) {

  .industry-hero-grid,
  .industry-intro-grid,
  .capability-head,
  .impact-grid,
  .industry-cta {
    grid-template-columns: 1fr
  }

  .impact-copy {
    min-height: auto
  }

  .impact-card.featured {
    grid-template-columns: 1fr
  }

  .impact-stack {
    grid-template-columns: 1fr
  }

  .industry-hero {
    padding-top: 130px
  }

  .challenge-board {
    grid-template-columns: repeat(2, 1fr)
  }

  .industry-intro-copy {
    padding-left: 0;
    border-left: 0
  }

  .capability-shell,
  .industry-cta {
    padding: 34px
  }

  .capability-row {
    grid-template-columns: 1fr
  }

  .industry-proof-points {
    grid-template-columns: 1fr
  }

  .impact-copy {
    position: relative;
    top: auto
  }
}

@media(max-width:620px) {
  .challenge-board {
    grid-template-columns: 1fr
  }

  .industry-section {
    padding: 68px 0
  }

  .industry-hero-panel {
    padding: 22px
  }

  .industry-hero h1 {
    font-size: 42px
  }

  .capability-row h3 {
    font-size: 21px
  }
}

/* Alternate impact section: aligned rail with image-ready left card */
.impact-alt-wrap {
  position: relative;
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 34px;
  align-items: stretch
}

.impact-alt-intro {
  position: relative;
  background: #fff;
  border: 1px solid var(--industry-line);
  border-radius: 30px;
  padding: 42px;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(27, 35, 48, .06);
  display: flex;
  flex-direction: column;
  min-height: 560px
}

.impact-alt-intro:before {
  content: "";
  position: absolute;
  inset: auto -110px -120px auto;
  width: 310px;
  height: 310px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(103, 214, 219, .18), transparent 70%)
}

.impact-alt-intro h2 {
  position: relative;
  margin: 0;
  font-family: var(--display);
  font-size: clamp(36px, 3.2vw, 58px);
  line-height: 1.02;
  letter-spacing: -.05em;
  font-weight: 650;
  color: #202632
}

.impact-alt-intro p {
  position: relative;
  margin: 22px 0 0;
  max-width: 390px;
  color: #657080;
  font-size: 17px;
  line-height: 1.78
}

/* .impact-alt-media {
  position: relative;
  margin-top: 30px;
  border-radius: 24px;
  min-height: 210px;
  border: 1px solid rgba(226, 230, 236, .9);
  background: linear-gradient(135deg, rgba(246, 248, 251, .95), rgba(234, 250, 251, .72));
  overflow: hidden;
  display: grid;
  place-items: center
}

.impact-alt-media:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(140deg, rgba(255, 255, 255, .25), rgba(255, 255, 255, 0)), radial-gradient(circle at 78% 22%, rgba(213, 65, 78, .13), transparent 34%)
} */
.impact-alt-media {
  margin: 20px 0;
}

.impact-alt-media img {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.impact-alt-media .media-placeholder {
  position: relative;
  z-index: 2;
  text-align: center;
  color: #657080;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 800
}

.impact-alt-note {
  position: relative;
  margin-top: auto;
  padding-top: 24px;
  border-top: 1px solid var(--industry-line);
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 15px;
  align-items: start;
  color: #5f6978;
  font-size: 14px;
  line-height: 1.6
}

.impact-alt-note span {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: #151923;
  color: #67d6db;
  display: grid;
  place-items: center;
  font-weight: 800;
  box-shadow: 0 16px 34px rgba(21, 25, 35, .16)
}

.impact-alt-board {
  position: relative;
  display: grid;
  gap: 16px;
  padding: 12px 0
}

.impact-alt-board:before {
  content: "";
  position: absolute;
  left: 34px;
  top: 40px;
  bottom: 40px;
  width: 1px;
  background: linear-gradient(180deg, rgba(213, 65, 78, .28), rgba(103, 214, 219, .42), rgba(213, 65, 78, .16))
}

.impact-alt-item {
  position: relative;
  display: grid;
  grid-template-columns: 68px 1fr;
  gap: 22px;
  align-items: center;
  background: #fff;
  border: 1px solid var(--industry-line);
  border-radius: 26px;
  padding: 24px 30px 24px 0;
  min-height: 104px;
  overflow: hidden;
  transition: transform .32s ease, box-shadow .32s ease, border-color .32s ease
}

.impact-alt-item:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(213, 65, 78, .06), transparent 42%);
  opacity: 0;
  transition: opacity .32s ease
}

.impact-alt-item:hover {
  transform: translateX(5px);
  border-color: rgba(213, 65, 78, .24);
  box-shadow: 0 22px 64px rgba(27, 35, 48, .09)
}

.impact-alt-item:hover:after {
  opacity: 1
}

.impact-alt-no {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--display);
  font-size: 13px;
  letter-spacing: .14em;
  font-weight: 800;
  color: var(--red)
}

.impact-alt-dot {
  position: absolute;
  left: 27px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  border: 4px solid var(--red);
  box-shadow: 0 0 0 8px #fff;
  z-index: 3
}

.impact-alt-content {
  position: relative;
  z-index: 2;
  padding: 2px 0
}

.impact-alt-content h3 {
  margin: 0 0 8px;
  color: #202632;
  font-size: 23px;
  letter-spacing: -.025em;
  line-height: 1.15
}

.impact-alt-content p {
  margin: 0;
  color: #657080;
  font-size: 15px;
  line-height: 1.68;
  max-width: 760px
}

@media(max-width:980px) {
  .impact-alt-wrap {
    grid-template-columns: 1fr
  }

  .impact-alt-board:before {
    left: 34px
  }

  .impact-alt-intro {
    padding: 34px;
    min-height: auto
  }

  .impact-alt-media {
    min-height: 190px
  }

  .impact-alt-note {
    margin-top: 34px
  }
}

@media(max-width:620px) {
  .impact-alt-item {
    grid-template-columns: 58px 1fr;
    padding-right: 20px
  }

  .impact-alt-dot {
    left: 23px
  }

  .impact-alt-board:before {
    left: 30px
  }

  .impact-alt-content h3 {
    font-size: 20px
  }

  .impact-alt-media {
    min-height: 160px
  }
}


/* Fine-tune: remove challenge-card imagery and unify page background */
/* body{
  background:
    radial-gradient(1200px 720px at 0% -5%, rgba(103,214,219,.24), transparent 58%),
    radial-gradient(980px 600px at 100% 4%, rgba(213,65,78,.16), transparent 54%),
    linear-gradient(180deg,#f7fbfd 0%,#f1f5f9 45%,#edf2f7 100%) !important;
} */
.industry-section,
.industry-section.alt {
  background: transparent !important;
}

/* .centered-header h2 {
  color: #202632 !important;
} */
.industry-challenges h2 {
  color: #202632 !important;
}

.industry-challenge {
  background: rgba(255, 255, 255, .82) !important;
  border-color: rgba(32, 38, 48, .12) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 48px rgba(27, 35, 48, .045);
}

.industry-challenge:after {
  display: none !important;
}

.industry-challenge:before {
  background: radial-gradient(circle at 82% 12%, rgba(103, 214, 219, .12), transparent 32%), linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(255, 255, 255, .82)) !important;
}

.industry-challenge h3 {
  color: #202632 !important;
}

.industry-challenge p {
  color: #5f6978 !important;
}

.industry-challenge:hover {
  box-shadow: 0 24px 70px rgba(27, 35, 48, .10);
}

.impact-alt-item {
  align-items: center !important;
}

.impact-alt-content h3 {
  color: #202632 !important;
}

@media(max-width:767px) {
  .impact-alt-media img {
    width: 100%;
    height: 340px;
  }

  .industry-lead h2 {
    text-align: center;
  }

  .industry-intro-copy p {
    text-align: center;
    font-size: 16px;
  }
}


.story-page main {
  padding-top: 0
}

.story-hero {
  position: relative;
  padding: 138px 0 68px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(244, 248, 251, .74));
}

.story-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(700px 420px at 82% 18%, rgba(103, 214, 219, .22), transparent 62%), radial-gradient(520px 340px at 12% 42%, rgba(213, 65, 78, .11), transparent 66%);
  pointer-events: none
}

.story-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .74fr);
  gap: 40px;
  align-items: stretch
}

.story-eyebrow {
  color: var(--red);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 16px
}

.story-hero h1,
.story-title {
  font-family: "Maven Pro", Inter, sans-serif;
  color: var(--ink);
  letter-spacing: -.052em
}

.story-hero h1 {
  font-size: clamp(44px, 5.4vw, 68px);
  line-height: 1;
  margin: 0 0 20px;
  font-weight: 800
}

.story-hero p {
  max-width: 770px;
  font-size: 17px;
  line-height: 1.72;
  color: var(--ink-soft);
  margin: 0 0 14px
}

.story-dot {
  color: var(--red)
}

.story-visual {
  position: relative;
  min-height: 390px;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--shadow-2);
  background: #111923
}

.story-visual:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(13, 18, 27, .86), rgba(13, 18, 27, .32)),
   url('../images/manufacturing.jpg')
  center/cover no-repeat;
}

/* .story-visual-card {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 2;
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 20px;
  background: rgba(9, 14, 22, .58);
  backdrop-filter: blur(14px);
  color: #fff;
} */
 .story-section-strip{
    padding: 30px 0 0 0;
 }
.story-visual-card {
  
padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 20px;
  backdrop-filter: blur(14px);
  color: #fff;
  background: linear-gradient(180deg, rgba(13, 24, 37, .98), rgba(24, 36, 53, .95));

  
}
.external-icon {
    width: 20px;
    height: 20px;
    display: inline-block;
    fill: none;
    stroke: #000;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex: 0 0 auto;
    transform: translateY(-1px);
}
.story-visual-card strong {
  display: block;
  font-size: 18px;
  margin-bottom: 7px;
}

.story-visual-card span {
  display: block;
  font-size: 16px;
  line-height: 1.55
}

.story-section {
  position: relative;
  padding: 74px 0
}

/* .story-section.white {
  background: rgba(255, 255, 255, .84)
} */

.story-section.dark {
  background: #181c24;
  color: #fff;
  overflow: hidden
}

.story-section.dark:before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(620px 400px at 18% 20%, rgba(213, 65, 78, .22), transparent 60%), radial-gradient(660px 420px at 88% 72%, rgba(103, 214, 219, .15), transparent 58%);
  pointer-events: none
}

.story-section.dark .container {
  position: relative
}

.story-head {
  display: grid;
  grid-template-columns: .7fr 1fr;
  gap: 50px;
  margin-bottom: 34px
}

.story-title {
  font-size: clamp(34px, 3.2vw, 52px);
  line-height: 1.06;
  margin: 0;
  font-weight: 800
}

.story-section.dark .story-title {
  color: #fff
}

.story-head p,
.story-copy {
  font-size: 15.5px;
  line-height: 1.74;
  color: var(--ink-soft);
  margin: 0
}

.story-section.dark .story-head p,
.story-section.dark .story-copy {
  color: rgba(255, 255, 255, .72)
}

.proof-grid {
  display: grid;
  grid-template-columns: 1.12fr repeat(3, 1fr);
  gap: 14px
}

.proof-card {
  background: rgba(255, 255, 255, .82);
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 22px;
  padding: 22px;
  box-shadow: var(--shadow-1);
  min-height: 136px
}

.proof-card:first-child {
  background: linear-gradient(135deg, #171b24, #262b36);
  color: #fff
}

.proof-card .metric {
  font-family: "Maven Pro", Inter, sans-serif;
  font-size: 38px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -.04em;
  margin-bottom: 11px;
}
.metric-first{color: #67d6db;}

.proof-card p {
  font-size: 14px;
  line-height: 1.56;
  color: var(--ink-soft);
  margin: 0
}

.proof-card:first-child p {
  color: rgba(255, 255, 255, .70)
}

.timeline {
  display: grid;
  gap: 12px
}

.timeline-row {
  display: grid;
  grid-template-columns: 106px 1fr;
  gap: 18px;
  align-items: stretch
}

.timeline-year {
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: #171b24;
  color: #fff;
  font-family: "Maven Pro";
  font-size: 21px;
  font-weight: 800;
  letter-spacing: -.04em;
  min-height: 86px
}

.timeline-row:nth-child(even) .timeline-year {
  background: var(--red)
}

.timeline-copy {
  padding: 20px 24px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-1)
}

.timeline-copy h3 {
  font-family: "Maven Pro";
  font-size: 23px;
  line-height: 1.16;
  letter-spacing: -.035em;
  margin: 0 0 7px;
  color: var(--ink)
}

.timeline-copy p {
  font-size: 14.5px;
  line-height: 1.66;
  color: var(--ink-soft);
  margin: 0
}

.advantage-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px
}

.advantage-card {
  padding: 24px;
  border-radius: 22px;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .12);
  min-height: 218px
}

.advantage-card h3 {
  font-family: "Maven Pro";
  font-size: 23px;
  line-height: 1.13;
  letter-spacing: -.035em;
  margin: 0 0 12px;
  color: #fff
}

.advantage-card p {
  font-size: 14px;
  line-height: 1.66;
  color: rgba(255, 255, 255, .68);
  margin: 0
}

.split-panel {
  display: grid;
  grid-template-columns: .86fr 1fr;
  gap: 32px;
  align-items: stretch
}

.image-panel {
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--shadow-2);
  position: relative;
  background-repeat: no-repeat;
    background-size: cover;
}

.image-panel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.content-panel {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-1);
  border-radius: 28px;
  padding: 34px
}

.content-panel h2 {
  font-family: "Maven Pro";
  font-size: clamp(34px, 3.2vw, 42px);
  line-height: 1.08;
  letter-spacing: -.045em;
  margin: 0 0 16px;
  color: var(--ink)
}

.content-panel p {
  font-size: 15.5px;
  line-height: 1.74;
  color: var(--ink-soft);
  margin: 0 0 15px
}

.line-list {
  border-top: 1px solid var(--line);
  margin-top: 22px
}

.line-item {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 18px;
  padding: 16px 0;
  border-bottom: 1px solid var(--line)
}

.line-item b {
  color: var(--red);
  font-size: 14px
}

.line-item span {
  color: var(--ink-soft);
  line-height: 1.6;
  font-size: 14px;
}

.pathway-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

.pathway-card {
  background: #fff;
  border-radius: 22px;
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-1);
  display: flex;
  flex-direction: column;
  min-height: 235px
}

.pathway-card h3 {
  font-family: "Maven Pro";
  font-size: 25px;
  line-height: 1.12;
  letter-spacing: -.035em;
  margin: 0 0 10px;
  color: var(--ink)
}

.pathway-card p {
  font-size: 14px;
  line-height: 1.65;
  color: var(--ink-soft);
  margin: 0 0 20px
}

.pathway-card .btn {
  margin-top: auto;
  align-self: flex-start
}

.story-cta {
  padding: 70px 0;
  background: #1f232b
}

.story-cta-box {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: center;
  color: #fff
}

.story-cta h2 {
  font-family: "Maven Pro";
  font-size: clamp(34px, 3.5vw, 42px);
  line-height: 1.08;
  letter-spacing: -.04em;
  margin: 0 0 13px
}

.story-cta p {
  margin: 0;
  color: rgba(255, 255, 255, .7);
  max-width: 760px;
  line-height: 1.68
}

.people-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px
}

.leader-card {
  display: grid;
  grid-template-columns: .42fr .58fr;
  border-radius: 26px;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .76);
  box-shadow: var(--shadow-1);
  min-height: 395px
}

.leader-photo {
  background: #eef2f5;
  overflow: hidden
}

.leader-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.leader-copy {
  padding: 30px
}

.leader-copy h3 {
  font-family: "Maven Pro";
  font-size: 30px;
  line-height: 1.05;
  letter-spacing: -.04em;
  margin: 0 0 8px
}

.leader-role {
  color: var(--red);
  font-size: 12.5px;
  font-weight: 800;
  margin-bottom: 18px;
  text-transform: uppercase;
  letter-spacing: .08em
}

.leader-copy p {
  font-size: 14.5px;
  line-height: 1.68;
  color: var(--ink-soft);
  margin: 0
}

.regional-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px
}

.region-card {
  border-radius: 22px;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-1);
  padding: 23px;
  min-height: 158px
}

.region-card h3 {
  font-family: "Maven Pro";
  font-size: 23px;
  line-height: 1.1;
  margin: 0 0 8px
}

.region-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0
}

.model-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px
}

.model-card {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .78);
  box-shadow: var(--shadow-1);
  border-radius: 22px;
  padding: 26px
}

.model-card h3 {
  font-family: "Maven Pro";
  font-size: 25px;
  line-height: 1.1;
  letter-spacing: -.035em;
  margin: 0 0 11px
}

.model-card p {
  font-size: 14.5px;
  line-height: 1.66;
  color: var(--ink-soft);
  margin: 0
}

.model-card small {
  display: inline-block;
  color: var(--red);
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: 11px;
  margin-bottom: 11px
}

.dark-card {
  background: #171b24;
  color: #fff
}

.dark-card h3 {
  color: #fff
}

.dark-card p {
  color: rgba(255, 255, 255, .7)
}

.regional-leader-grid {
  grid-template-columns: repeat(4, 1fr)
}

.regional-leader-card {
  min-height: 210px
}

@media(max-width:1100px) {

  .story-hero-grid,
  .story-head,
  .split-panel,
  .story-cta-box {
    grid-template-columns: 1fr
  }

  .advantage-grid,
  .pathway-grid,
  .people-grid,
  .regional-grid,
  .model-grid,
  .proof-grid,
  .regional-leader-grid {
    grid-template-columns: 1fr 1fr
  }

  .leader-card {
    grid-template-columns: 1fr
  }

  .leader-photo {
    min-height: 340px
  }

  .story-hero {
    padding-top: 122px
  }

  .story-visual {
    min-height: 340px
  }
}

@media(max-width:720px) {

  .advantage-grid,
  .pathway-grid,
  .people-grid,
  .regional-grid,
  .model-grid,
  .proof-grid,
  .regional-leader-grid {
    grid-template-columns: 1fr
  }

  .story-section {
    padding: 58px 0
  }

  .story-hero {
    padding: 118px 0 54px
  }

  .story-hero h1 {
    font-size: 42px
  }

  .story-hero p {
    font-size: 16px
  }

  .story-head {
    gap: 18px;
    margin-bottom: 26px
  }

  .timeline-row {
    grid-template-columns: 1fr;
    gap: 8px
  }

  .timeline-year {
    min-height: 58px;
    place-items: start;
    padding: 17px
  }

  .line-item {
    grid-template-columns: 1fr;
    gap: 6px
  }

  .story-cta h2 {
    font-size: 32px
  }

  .content-panel {
    padding: 28px
  }

  .image-panel {
    min-height: 300px
  }
}

/* --- Who We Are section polish pass: typography, hover states, timeline and leadership photos --- */
.story-hero {
  padding-top: 132px !important;
  padding-bottom: 64px !important;
}

.story-hero h1 {
  font-size: clamp(42px, 5vw, 50px) !important;
  max-width: 100% !important;
  line-height: 1.06 !important;
  font-weight: 600 !important;
  letter-spacing: -.042em !important;
}

.story-hero p {
  font-size: 16.5px !important;
  line-height: 1.72 !important;
  max-width: 820px !important;
}

.story-title {
  font-size: 40px;
  margin-bottom: 12px;
  line-height: 1.02;
  color: #111;
}

.story-head p,
.story-copy,
.content-panel p {
  font-size: 17px !important;
  line-height: 1.72 !important;
}

.story-section {
  padding: 50px 0 !important;
}

.story-eyebrow {
  font-size: 11.5px !important;
  letter-spacing: .15em !important;
}

.proof-card,
.advantage-card,
.pathway-card,
.leader-card,
.region-card,
.model-card,
.content-panel,
.timeline-copy,
.regional-profile-card {
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
}

.proof-card:hover,
.pathway-card:hover,
.leader-card:hover,
.region-card:hover,
.model-card:hover,
.content-panel:hover,
.timeline-copy:hover,
.regional-profile-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 26px 72px rgba(8, 15, 28, .14);
  border-color: rgba(103, 214, 219, .45);
}

.advantage-card:hover {
  transform: translateY(-6px);
  background: rgba(255, 255, 255, .095);
  border-color: rgba(103, 214, 219, .45);
  box-shadow: 0 24px 70px rgba(0, 0, 0, .22);
}

.btn:hover {
  transform: translateY(-2px) !important;
}

.pathway-card h3,
.model-card h3,
.region-card h3,
.advantage-card h3 {
  font-weight: 600 !important;
}

/* True timeline treatment for Our Story */
.timeline {
  position: relative;
  display: block !important;
  margin-top: 8px;
  padding: 8px 0 4px;
}

.timeline:before {
  content: "";
  position: absolute;
  left: 135px;
  top: 21px;
  bottom: 18px;
  width: 2px;
  background: linear-gradient(180deg, var(--red), var(--teal));
  opacity: .75;
}

.timeline-row {
  position: relative;
  display: grid !important;
  grid-template-columns: 96px 1fr !important;
  gap: 72px !important;
  align-items: start !important;
  padding: 0 0 30px !important;
}

.timeline-row:last-child {
  padding-bottom: 0 !important;
}

.timeline-row:before {
  content: "";
  position: absolute;
  left: 121px;
  top: 12px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  border: 5px solid var(--red);
  box-shadow: 0 0 0 8px rgba(213, 65, 78, .10);
  z-index: 2;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.timeline-row:nth-child(even):before {
  border-color: var(--teal);
  box-shadow: 0 0 0 8px rgba(103, 214, 219, .12);
}

.timeline-row:hover:before {
  transform: scale(1.12);
  box-shadow: 0 0 0 11px rgba(103, 214, 219, .14);
}

.timeline-year {
  background: transparent !important;
  color: var(--red) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  min-height: auto !important;
  display: block !important;
  text-align: right !important;
  padding-top: 8px !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

.timeline-row:nth-child(even) .timeline-year {
  background: transparent !important;
  color: var(--ink) !important;
}

.timeline-copy {
  padding: 22px 26px !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .88) !important;
}

.timeline-copy h3 {
  font-size: 22px !important;
  font-weight: 600 !important;
  letter-spacing: -.026em !important;
}

.timeline-copy p {
  font-size: 14.8px !important;
  line-height: 1.68 !important;
}

/* Leadership profile cards */
.leader-card {
  min-height: 420px !important;
}

.leader-photo img {
  transition: transform .45s ease, filter .35s ease;
}

.leader-card:hover .leader-photo img {
  transform: scale(1.045);
  filter: saturate(1.02) contrast(1.04);
}

.regional-profile-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.regional-profile-card {
  overflow: hidden;
  border-radius: 24px;
  background: rgba(255, 255, 255, .075);
  border: 1px solid rgba(255, 255, 255, .13);
  box-shadow: 0 18px 60px rgba(0, 0, 0, .16);
}

.regional-profile-photo {
  height: 292px;
  background: #eef2f5;
  overflow: hidden;
}

.regional-profile-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
  transition: transform .45s ease, filter .35s ease;
}

.regional-profile-card:hover .regional-profile-photo img {
  transform: scale(1.05);
  filter: saturate(1.04) contrast(1.04);
}

.regional-profile-body {
  padding: 22px 22px 24px;
  background: linear-gradient(180deg, rgba(7, 10, 16, .88), rgba(7, 10, 16, .98));
  min-height: 142px;
}

.regional-profile-body span {
  display: block;
  color: var(--teal);
  font-size: 11.5px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 800;
  margin-bottom: 10px;
}

.regional-profile-body h3 {
  font-family: "Maven Pro", Inter, sans-serif;
  color: #fff;
  font-size: 23px;
  line-height: 1.08;
  letter-spacing: -.03em;
  font-weight: 600;
  margin: 0 0 8px;
}

.regional-profile-body p {
  margin: 0;
  color: rgba(255, 255, 255, .72);
  font-size: 14px;
  line-height: 1.55;
}

.regional-profile-body strong {
  color: #fff;
  font-weight: 700;
}

.ms-hero-visual img {
  width: 100%;
  object-fit: cover;
  height: auto
}

.page-gcc .ms-hero-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  z-index: 0;
}

.page-gcc .ms-hero-visual::before {
  z-index: 1;
  pointer-events: none;
  opacity: .22;
}

@media(max-width:1100px) {
  .regional-profile-grid {
    grid-template-columns: repeat(2, 1fr)
  }

  .regional-profile-photo {
    height: 340px
  }

  .timeline:before {
    left: 114px
  }

  .timeline-row {
    grid-template-columns: 82px 1fr !important;
    gap: 66px !important
  }

  .timeline-row:before {
    left: 103px
  }

  .story-hero-grid,
  .story-head,
  .split-panel,
  .story-cta-box {
    text-align: center !important;
  }

  .story-hero p {
    max-width: 100% !important;
  }
}

@media(max-width:992px) {
  .story-visual-card {
    left: auto;
    right: auto;
    top: -96px;
    z-index: 2;
    padding: 13px 20px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 20px;
    backdrop-filter: blur(14px);
    color: #fff;
    background: linear-gradient(135deg, var(--red), #ea6a75);
    text-align: center;
    max-width: 100%;
  }
}

@media(max-width:720px) {
  .story-hero h1 {
    font-size: 38px !important
  }

  .story-section {
    padding: 58px 0 !important
  }

  .story-title {
    font-size: 32px !important
  }

  .timeline {
    padding-left: 0
  }

  .timeline:before {
    left: 15px
  }

  .timeline-row {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding-left: 44px !important
  }

  .timeline-row:before {
    left: 4px;
    top: 4px
  }

  .timeline-year {
    text-align: left !important;
    padding-top: 0 !important
  }

  .timeline-copy {
    padding: 20px !important
  }

  .regional-profile-grid {
    grid-template-columns: 1fr
  }

  .regional-profile-photo {
    height: 360px
  }

  .pathway-card {
    background: #fff;
    border-radius: 22px;
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, .78);
    box-shadow: var(--shadow-1);
    display: flex;
    flex-direction: column;
    min-height: auto;
    text-align: center;
  }

  .pathway-card .btn {
    margin: 0 auto;
  }

  .pathway-card {
    min-height: auto;
    text-align: center;
  }

  .story-cta .btn-primary,
  .cookie-btn.primary {
    text-align: center;
    display: block;
  }

  .advantage-card {
    min-height: auto;
    text-align: center;
  }

  .proof-card {
    min-height: auto;
    text-align: center;
  }
}

.insights-hero {
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 14% 20%, rgba(213, 65, 78, .22), transparent 32%), linear-gradient(135deg, #111827 0%, #0c1119 52%, #151a22 100%);
  padding: 132px 0 86px;
  color: #fff;
}

.insights-hero:after {
  content: "";
  position: absolute;
  inset: auto -18% -40% auto;
  width: 680px;
  height: 680px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(103, 214, 219, .18), transparent 65%);
  pointer-events: none;
}

.insights-hero .container {
  position: relative;
  z-index: 2;
}

.insights-eyebrow {
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #67d6db;
  font-weight: 700;
  margin-bottom: 18px;
}

.insights-hero h1 {
  font-family: var(--font-heading, Inter, sans-serif);
  font-size: clamp(44px, 5.3vw, 72px);
  line-height: .98;
  letter-spacing: -.055em;
  font-weight: 600;
  max-width: 900px;
  margin: 0 0 24px;
}

.insights-hero p {
  font-size: clamp(16px, 1.35vw, 20px);
  line-height: 1.75;
  color: rgba(255, 255, 255, .74);
  max-width: 800px;
  margin: 0;
}

.insights-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}

.insights-pill {
  border: 1px solid rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .06);
  color: rgba(255, 255, 255, .78);
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 13px;
  backdrop-filter: blur(10px);
}

.insights-section {
  padding: 70px 0;
}

.insights-section.dark {
  background: #101722;
  color: #fff;
}

/* .insights-section.soft {
  background: #f6f7f9;
} */

.insights-header {
  max-width: 760px;
  margin-bottom: 42px;
}

.insights-header.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.insights-kicker {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: #d5414e;
  font-weight: 800;
  margin-bottom: 14px;
}

.insights-header h2 {
  font-size: clamp(32px, 3.4vw, 50px);
  line-height: 1.08;
  letter-spacing: -.045em;
  font-weight: 600;
  margin: 0 0 16px;
  color: inherit;
}

.insights-header p {
  font-size: 18px;
  line-height: 1.75;
  color: #606b77;
  margin: 0;
}

.dark .insights-header p {
  color: rgba(255, 255, 255, .68);
}

.case-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
}

.case-card {
  background: #fff;
  border: 1px solid rgba(16, 24, 36, .08);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(11, 20, 34, .08);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.case-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 26px 72px rgba(11, 20, 34, .13);
  border-color: rgba(213, 65, 78, .28);
}

.case-media {
  height: 180px;
  background: #111827;
  position: relative;
  overflow: hidden;
}

.case-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.95) contrast(1.02);
  transition: transform .4s ease;
}

.case-card:hover .case-media img {
  transform: scale(1.05);
}

.case-media:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(0, 0, 0, .46));
}

.case-tag {
  position: absolute;
  left: 18px;
  bottom: 16px;
  z-index: 2;
  background: rgba(213, 65, 78, .92);
  color: #fff;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.case-body {
  padding: 26px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.case-body h3 {
  font-size: 22px;
  line-height: 1.22;
  letter-spacing: -.02em;
  font-weight: 600;
  margin: 0 0 14px;
  color: #141a22;
}

.case-body p {
  font-size: 14.5px;
  line-height: 1.7;
  color: #5e6874;
  margin: 0 0 18px;
}

.case-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 4px 0 22px;
}

.case-stat {
  border-top: 1px solid rgba(16, 24, 36, .1);
  padding-top: 10px;
}

.case-stat strong {
  display: block;
  color: #141a22;
  font-size: 15px;
  line-height: 1.2;
}

.case-stat span {
  display: block;
  color: #7a8490;
  font-size: 12px;
  margin-top: 4px;
}

.read-more {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #d5414e;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.read-more:after {
  content: "→";
  transition: transform .2s ease;
}

.read-more:hover:after {
  transform: translateX(4px);
}

.feature-panel {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 28px;
  align-items: stretch;
}

.feature-copy {
  background: #fff;
  border-radius: 28px;
  padding: 42px;
  border: 1px solid rgba(16, 24, 36, .08);
  box-shadow: 0 18px 50px rgba(11, 20, 34, .08);
}

.feature-copy h3 {
  font-size: 30px;
  line-height: 1.16;
  letter-spacing: -.03em;
  margin: 0 0 14px;
}

.feature-copy p {
  color: #5d6874;
  line-height: 1.8;
  margin: 0 0 20px;
}

.feature-list {
  display: grid;
  gap: 12px;
  margin-top: 22px;
}

.feature-list div {
  padding: 14px 0;
  border-top: 1px solid rgba(16, 24, 36, .1);
  font-size: 14px;
  color: #3c4652;
}

.feature-image {
  border-radius: 28px;
  overflow: hidden;
  min-height: 360px;
  box-shadow: 0 18px 50px rgba(11, 20, 34, .12);
}

.feature-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.news-card {
  background: #fff;
  border: 1px solid rgba(16, 24, 36, .08);
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 18px 48px rgba(11, 20, 34, .08);
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.news-card.dark-card {
  background: linear-gradient(180deg, #151e2b, #101722);
  border-color: rgba(255, 255, 255, .09);
  box-shadow: none;
}

.news-source {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: #d5414e;
  font-weight: 800;
  margin-bottom: 14px;
}

.dark-card .news-source {
  color: #67d6db;
}

.news-card h3 {
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: -.02em;
  margin: 0 0 14px;
  color: #141a22;
}

.news-card.dark-card h3 {
  color: #fff;
}

.news-card p {
  color: #5f6a76;
  line-height: 1.72;
  font-size: 14.5px;
  margin: 0 0 20px;
}

.news-card.dark-card p {
  color: rgba(255, 255, 255, .68);
}

.news-card a {
  margin-top: auto;
  color: #d5414e;
  text-decoration: none;
  font-weight: 800;
  font-size: 14px;
}

.news-card.dark-card a {
  color: #67d6db;
}

.faq-layout {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 42px;
  align-items: start;
}

.faq-nav {
  position: sticky;
  top: 110px;
  background: #fff;
  border: 1px solid rgba(16, 24, 36, .08);
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 14px 42px rgba(11, 20, 34, .07);
}

.faq-nav a {
  display: block;
  padding: 13px 14px;
  border-radius: 14px;
  text-decoration: none;
  color: #3d4752;
  font-size: 14px;
  font-weight: 700;
}

.faq-nav a:hover {
  background: #f4f6f8;
  color: #d5414e;
}

.faq-group {
  margin-bottom: 42px;
  scroll-margin-top: 120px;
}

.faq-group h2 {
  font-size: 30px;
  letter-spacing: -.03em;
  margin: 0 0 18px;
  color: #141a22;
}

.accordion-item {
  background: #fff;
  border: 1px solid rgba(16, 24, 36, .1);
  border-radius: 18px;
  margin-bottom: 14px;
  overflow: hidden;
  box-shadow: 0 10px 34px rgba(11, 20, 34, .055);
}

.accordion-button {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: center;
  border: 0;
  background: transparent;
  text-align: left;
  padding: 22px 24px;
  font-size: 17px;
  line-height: 1.4;
  font-weight: 700;
  color: #17202a;
  cursor: pointer;
}

.accordion-button .plus {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #f1f3f5;
  color: #d5414e;
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 600;
  transition: transform .2s ease, background .2s ease;
  color: .2s ease;
}

.accordion-item.active .accordion-button .plus {
  transform: rotate(45deg);
  background: #d5414e;
  color: #fff;
}

.accordion-panel {
  display: none;
  padding: 0 24px 24px;
  color: #5d6874;
  font-size: 15px;
  line-height: 1.78;
}

.accordion-item.active .accordion-panel {
  display: block;
}

.accordion-panel p {
  margin: 0 0 12px;
}

.accordion-panel ul {
  margin: 10px 0 0 18px;
  padding: 0;
}

.accordion-panel li {
  margin: 6px 0;
}

.insights-cta {
  background: linear-gradient(135deg, #111827, #202938);
  border-radius: 32px;
  padding: 48px;
  color: #fff;
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: center;
  overflow: hidden;
  position: relative;
}

.insights-cta:after {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -130px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: rgba(103, 214, 219, .14);
}

.insights-cta>* {
  position: relative;
  z-index: 2;
}

.insights-cta h2 {
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: -.035em;
  margin: 0 0 12px;
}

.insights-cta p {
  color: rgba(255, 255, 255, .68);
  line-height: 1.7;
  margin: 0;
  max-width: 680px;
}
@media(max-width:1100px) {

  .case-grid,
  .news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .feature-panel,
  .faq-layout {
    grid-template-columns: 1fr
  }

  .faq-nav {
    position: relative;
    top: auto;
  }

  .insights-cta {
    display: block
  }

  .insights-cta a {
    display: inline-flex;
    margin-top: 24px
  }
}

@media(max-width:700px) {

  .case-grid,
  .news-grid {
    grid-template-columns: 1fr
  }

  .case-media {
    height: 210px
  }

  .insights-section {
    padding: 72px 0
  }

  .insights-meta-row {
    display: none
  }

  .insights-cta {
    padding: 32px
  }

  .feature-copy {
    padding: 30px
  }

  .accordion-button {
    font-size: 16px;
    padding: 20px
  }

  .accordion-panel {
    padding: 0 20px 20px
  }
}

.globe-box{
 position: relative;
 height: 400px;
 margin: 0 auto;
}
.rotating-globe {
    animation: globeRotate 20s linear infinite;
    transform-origin: center center;
    height: 600px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 26%;
    margin: 0 auto;
  
}

@keyframes globeRotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.cuntry-flaghead .flag-chip img{height:100%;width:100%;object-fit:cover;}
.view-btn{text-align: center; display: block; margin-top: 20px;}
.industry-intro-copy p a{text-decoration: underline; font-weight: 600;}
.industry-intro-copy p a:hover{color: #ea6a75;}
.ms-hero-visual{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Video sizing is controlled in the consolidated responsive video block below. */

/* Center logo/text */
.ms-hero-visual .brand{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
    display: flex;
    align-items: center;
    gap: 10px;

    z-index: 2;
    text-decoration: none;
    background: #fff;
    padding: 12px;
    border-radius: 12px;
}
.ms-hero-visual .brand img {
    height: 37px !important;
    width: 146px !important;
    object-fit: contain !important;
  
}

.flag-headimg{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.flag-headimg .flag-chip{width:64px;height:42px;border-radius:10px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(32,35,45,.10);box-shadow:0 10px 24px rgba(17,19,27,.10);background:#fff;flex:0 0 auto;}
.flag-headimg .flag-chip img{width:100%;height:100%;object-fit:cover;display:block;}
.region-card{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,250,251,.92));border:1px solid rgba(23,24,33,.08);box-shadow:0 18px 54px rgba(17,19,27,.08);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;}
.region-card:hover{transform:translateY(-4px);border-color:rgba(103,214,219,.34);box-shadow:0 26px 72px rgba(17,19,27,.13);}


/* Consolidated from helius-qc-fixes.css */

/* Helius QC standardisation fixes */
:root{--helius-red:#d5414e;--helius-cyan:#67d6db;--helius-ink:#20232d;--helius-muted:#5f6472;--helius-page:#f4f7f8;}
body{background:radial-gradient(circle at 86% 8%,rgba(103,214,219,.18),transparent 24%),radial-gradient(circle at 8% 92%,rgba(213,65,78,.10),transparent 26%),linear-gradient(180deg,#f7fafb 0%,#eef3f5 100%)!important;color:var(--helius-ink);}
.header{z-index:50}.main-nav>.nav-link.active,.main-nav .nav-link.active{color:var(--helius-red)!important}
.page-hero,.hero-section,.partners-hero,.careers-hero,.story-hero,.global-hero,.leadership-hero,.resources-hero{padding-top:clamp(108px,10vw,138px)!important;}
h1,.section-heading h2,.partners-heading h2,.resources-heading h2,.section-title{font-family:'Maven Pro',Inter,sans-serif!important;letter-spacing:-.04em!important;font-weight:800!important;}
/* .page-hero h1,.hero-section h1,.careers-hero h1{font-size:clamp(38px,5vw,64px)!important;line-height:1.02!important;} */
.section-heading h2,.partners-heading h2,.resources-heading h2{font-size:clamp(30px,3.5vw,50px)!important;line-height:1.08!important;}
.eyebrow,.partners-eyebrow,.card-kicker{font-family:Inter,sans-serif!important;font-size:12px!important;letter-spacing:.13em!important;text-transform:uppercase!important;color:var(--helius-cyan)!important;font-weight:800!important;}
.card,.partner-card,.story-card,.case-card,.news-card,.faq-card,.info-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.card:hover,.partner-card:hover,.story-card:hover,.case-card:hover,.news-card:hover,.faq-card:hover,.info-card:hover{transform:translateY(-4px);}
.partner-card{min-height:560px!important}.partner-card p{font-size:15px!important;line-height:1.6!important}.partner-capabilities li{font-size:14px!important;line-height:1.42!important}.partner-logo img{max-width:190px;max-height:54px;object-fit:contain;background:transparent!important;}
.partners-cta,.story-cta,.closing-cta,.cta-panel{border-radius:28px!important;padding:clamp(32px,4vw,62px)!important;background:linear-gradient(135deg,#151923 0%,#252b36 65%,rgba(213,65,78,.34) 100%)!important;color:#fff!important;box-shadow:0 28px 80px rgba(17,19,27,.15)!important;}
.partners-cta h2,.story-cta h2,.closing-cta h2,.cta-panel h2{font-size:clamp(30px,3.6vw,54px)!important;color:#fff!important;}
.footer-top{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:34px!important;align-items:start!important}.footer a{transition:color .2s ease}.footer a:hover{color:var(--helius-cyan)!important}.footer-social a{display:inline-flex;align-items:center;justify-content:center;text-transform:lowercase;text-decoration:none}
.media-placeholder,.visual-placeholder{background:transparent!important}.media-placeholder img,.logo-card img{mix-blend-mode:multiply;}
@media(max-width:1100px){.footer-top{grid-template-columns:repeat(3,minmax(0,1fr))!important}.partner-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.page-hero h1,.hero-section h1,.partners-hero h1,.careers-hero h1{font-size:38px!important}.footer-top{grid-template-columns:1fr!important}.footer-bottom{gap:18px!important}.partner-card-grid{grid-template-columns:1fr!important}.partner-card{min-height:auto!important}.careers-jobs-frame iframe{min-height:720px!important}}


/* Final navigation, footer, utility and cookie fixes */

.footer-top{grid-template-columns:1.22fr 1.25fr 1fr .95fr .75fr!important;gap:clamp(28px,4vw,72px)!important;}
.footer-top .footer-col:last-child{justify-self:end;min-width:150px;}
.footer-bottom{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;}
.footer-links{justify-content:flex-end!important;}
.mobile-drawer{inset:82px 16px auto 16px!important;max-height:calc(100vh - 104px)!important;overflow:auto!important;padding:16px!important;}
.drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.drawer-actions{grid-column:1/-1;}
.drawer-links a{font-size:14px!important;line-height:1.25!important;text-decoration:none!important;}
.region-list a.region-option{display:block;text-decoration:none;color:inherit;}
.region-option.active,.region-option:focus-visible{outline:2px solid rgba(103,214,219,.55);outline-offset:2px;}
.cookie-banner:not(.open){display:none!important;}
@media(max-width:1100px){.footer-top{grid-template-columns:repeat(3,minmax(0,1fr))!important}.footer-top .footer-col:last-child{justify-self:start;}.footer-bottom{grid-template-columns:1fr!important;text-align:center!important}.footer-links,.footer-social{justify-content:center!important}.footer-copy{order:2}.footer-links{order:3}.footer-social{order:1}}
@media(max-width:760px){.drawer-grid{grid-template-columns:1fr}.mobile-drawer{inset:74px 12px auto 12px!important}.footer-top{grid-template-columns:1fr!important}.footer-col ul{display:grid!important}.footer-col h4{cursor:default!important}}


/* Consolidated from helius-global-fixes.css */

/* Helius global QA fixes: shared navigation, footer, typography and responsive behaviour */
:root{--helius-ink:#20232d;--helius-muted:#626978;--helius-red:#d5414e;--helius-cyan:#67d6db;--helius-bg:#f3f6f8;}
html{scroll-behavior:smooth;}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--helius-ink);}
body:not(.home-page):not(.dark-page){background:radial-gradient(circle at 86% 6%,rgba(103,214,219,.16),transparent 32%),linear-gradient(180deg,#f2f6f8 0%,#f7f5f2 48%,#f5f5f3 100%) !important;}
.header{z-index:1000;}
.main-nav .nav-link.active,.main-nav .nav-link[aria-current="page"]{color:var(--helius-red);}
/* body .page-hero h1, body .hero h1, body .career-hero h1, body .partners-hero h1, body .section-header h2, body .section-heading h2, body .jobs-head h2, body .career-card h2{font-family:'Maven Pro',Inter,sans-serif;font-weight:800;letter-spacing:-.04em;}
body .page-hero h1, body .partners-hero h1, body  */
body .section-header h2, body .section-heading h2, body .jobs-head h2, body .career-card h2{font-size:clamp(28px,3vw,44px)!important;line-height:1.08!important;}
body .section-header p, body .section-heading p, body .page-hero p, body .partners-hero p, body .career-hero p{font-size:clamp(15px,1.3vw,18px)!important;line-height:1.65!important;}
.card h3,.partner-card h3,.why-item h3{font-family:'Maven Pro',Inter,sans-serif;font-weight:800;letter-spacing:-.02em;font-size:clamp(20px,1.7vw,25px)!important;line-height:1.15!important;}
.card p,.partner-card p,.why-item p{font-size:15px!important;line-height:1.65!important;}
/* footer alignment */
.mega-footer .footer-grid{display:grid!important;grid-template-columns:1.12fr 1.12fr 1.05fr .95fr .95fr;gap:clamp(34px,5vw,86px);align-items:start;}
.mega-footer .footer-col{min-width:0;}
.mega-footer .footer-col h4{font-weight:800;color:#20232d;margin-bottom:18px;}
.mega-footer .footer-col ul{margin:0;padding:0;list-style:none;display:grid;gap:14px;}
.mega-footer .footer-col a{color:#626978;text-decoration:none;line-height:1.45;}
.mega-footer .footer-bottom{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;}
.mega-footer .footer-links{justify-content:flex-end;display:flex;gap:24px;flex-wrap:wrap;}
.mega-footer .footer-copy{text-align:center;white-space:nowrap;}
/* mobile navigation */
.mobile-drawer{position:fixed;top:78px;left:16px;right:16px;max-height:calc(100vh - 96px);overflow:auto;z-index:999;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border:1px solid rgba(31,35,44,.12);border-radius:24px;box-shadow:0 22px 70px rgba(17,19,27,.22);padding:22px;display:none;}
.mobile-drawer.open{display:block;}
.drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.drawer-title{font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#20232d;margin:0 0 10px;}
.drawer-links{display:grid;gap:8px;}
.drawer-links a{display:block;padding:9px 0;color:#5f6472;text-decoration:none;font-weight:600;line-height:1.35;}
.drawer-links a:hover{color:var(--helius-red);}
.icon-btn,.menu-btn{cursor:pointer;}
.modal{position:fixed;inset:0;z-index:1100;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(15,18,24,.48);backdrop-filter:blur(8px);}
.modal.open{display:flex;}
.overlay{position:fixed;inset:0;z-index:900;background:rgba(15,18,24,.42);opacity:0;pointer-events:none;transition:opacity .2s ease;}
.overlay.open{opacity:1;pointer-events:auto;}
.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:1200;display:none;}
.cookie-banner.open{display:block;}
.cookie-card{max-width:1080px;margin:0 auto;background:#fff;border:1px solid rgba(31,35,44,.12);border-radius:22px;box-shadow:0 24px 80px rgba(17,19,27,.18);padding:22px;display:flex;gap:20px;align-items:center;justify-content:space-between;}
.cookie-copy h4{margin:0 0 6px;font-size:16px;}.cookie-copy p{margin:0;color:#626978;font-size:13.5px;line-height:1.5;}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-btn{border:1px solid rgba(31,35,44,.14);background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;}.cookie-btn.primary{background:var(--helius-red);color:#fff;border-color:var(--helius-red)}
@media (max-width:1050px){.main-nav{display:none!important}.menu-btn{display:inline-flex!important}.utility-nav{gap:10px}.mega-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.mega-footer .footer-bottom{grid-template-columns:1fr;text-align:left}.mega-footer .footer-copy{text-align:left}.mega-footer .footer-links{justify-content:flex-start}.footer-social{justify-self:start!important}}
@media (max-width:640px){body .page-hero h1,body .partners-hero h1,body .drawer-grid{grid-template-columns:1fr}.mobile-drawer{top:70px;left:10px;right:10px;padding:18px;border-radius:18px}.cookie-card{display:block}.cookie-actions{margin-top:16px}.mega-footer .footer-grid{grid-template-columns:1fr}.mega-footer .footer-links{gap:14px}.icon-btn{width:44px!important;height:44px!important}.career-frame-wrap iframe{min-height:680px!important}}


/* Final responsive and production QC pass */
@media (max-width:1180px){
  .main-nav{display:none!important;}
  .menu-btn{display:inline-grid!important;place-items:center!important;align-self:center!important;}
  .header-inner{grid-template-columns:auto auto!important;justify-content:space-between!important;align-items:center!important;}
  .utility-nav{display:flex!important;align-items:center!important;gap:8px!important;}
  .icon-btn,.menu-btn{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;padding:0!important;line-height:1!important;}
  .icon-menu{display:block!important;margin:auto!important;}
  .hero-grid,.home-hero .hero-grid{grid-template-columns:1fr!important;gap:28px!important;}
  .hero-copy{max-width:760px!important;}
  .hero-side{width:100%!important;min-width:0!important;}
  .hero-media-card{width:100%!important;max-width:100%!important;margin:0!important;}
  .hero-video-wrap{width:100%!important;aspect-ratio:16/9!important;max-height:430px!important;overflow:hidden!important;border-radius:26px!important;}
  .hero-video{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;}
}
@media (max-width:760px){
  .utility-nav{gap:7px!important;}
  .icon-btn,.menu-btn{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border-radius:13px!important;}
  .header-inner{padding-inline:14px!important;}
  .hero-video-wrap{max-height:320px!important;border-radius:20px!important;}
  .hero-actions{flex-wrap:wrap!important;gap:10px!important;}
}
.nav-item[data-open="true"] .mega{display:block!important;animation:fadeUp .18s ease;}
.nav-item > .nav-link[aria-expanded="true"]{background:rgba(255,255,255,.82);box-shadow:0 14px 30px rgba(15,23,32,.06);color:var(--helius-red)!important;}
/* Contact form visual balance */
.contact-page .helius-form{row-gap:16px!important;}
.contact-page .field textarea,#message{min-height:160px!important;}
.contact-page .security-row{align-items:center!important;gap:20px!important;}
.contact-page .security-note{margin-top:20px!important;}
.contact-page .consent{margin-top:2px!important;}
/* Partner page logo spacing balance */
@media (max-width:1180px){.partner-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.partner-card{min-height:auto!important;}}
@media (max-width:720px){.partner-card-grid{grid-template-columns:1fr!important;}}
/* Legal pages */
.legal-page-main{padding:clamp(110px,12vw,150px) 0 90px;}
.legal-shell{background:rgba(255,255,255,.78);border:1px solid rgba(31,35,44,.08);border-radius:32px;box-shadow:0 30px 90px rgba(17,19,27,.08);padding:clamp(28px,5vw,70px);}
.legal-shell h1{font-family:'Maven Pro',Inter,sans-serif;font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.04em;margin:0 0 18px;}
.legal-shell .legal-intro{font-size:18px;line-height:1.7;color:#626978;max-width:850px;margin:0 0 34px;}
.legal-section{border-top:1px solid rgba(31,35,44,.1);padding-top:24px;margin-top:24px;}
.legal-section h2{font-family:'Maven Pro',Inter,sans-serif;font-size:clamp(24px,2.2vw,34px);line-height:1.1;margin:0 0 10px;letter-spacing:-.02em;}
.legal-section p,.legal-section li{color:#626978;font-size:15.5px;line-height:1.75;}
.legal-section ul{padding-left:20px;margin:10px 0 0;}


/* ===== Final consolidated QC cleanup ===== */
.home-hero .hero-side,
.home-hero .hero-media-card,
.home-hero .hero-video-wrap,
.home-hero .hero-video{min-width:0;}
.home-hero .hero-video-wrap{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;border-radius:inherit;}
.home-hero .hero-video{width:100%!important;height:100%!important;max-width:none!important;min-width:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;}
@media (max-width:1180px){
  .home-hero .hero-grid{grid-template-columns:1fr!important;}
  .home-hero .hero-side{width:100%!important;}
  .home-hero .hero-media-card{width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:16/9!important;max-height:none!important;}
  .home-hero .hero-video-wrap{position:absolute!important;inset:0!important;aspect-ratio:auto!important;max-height:none!important;}
}
@media (max-width:640px){.home-hero .hero-media-card{aspect-ratio:16/10!important;border-radius:24px!important;}.home-hero .hero-video{object-position:center center!important;}}
@media (max-width:1180px){
  .header-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;}
  .utility-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;}
  .menu-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;}
  .menu-btn i,.menu-btn svg{display:block;margin:0!important;line-height:1!important;}
}
.contact-page .helius-form{row-gap:18px!important;}
.contact-page .field textarea,.contact-page #message{min-height:132px!important;height:132px!important;}
.contact-page .security-row{margin-top:0!important;align-items:center!important;}
.contact-page .security-note{margin-top:0!important;}
.legal-page-main,.simple-page-main,.downloads-main,.sitemap-main{padding-top:clamp(132px,13vw,168px)!important;}
@media (max-width:760px){.legal-page-main,.simple-page-main,.downloads-main,.sitemap-main{padding-top:120px!important;}}


/* =========================================================
   Page-specific components consolidated from inline styles
   These classes live globally to avoid per-page CSS drift.
   ========================================================= */


/* From contact-us.html */
body.contact-page { background:#f5f5f3; }
    .contact-page .page-shell { overflow:hidden; }
    .contact-hero-wrap {
      width:100%;
      margin-top:0;
      padding:118px 0 78px;
      background:
        radial-gradient(circle at 82% 12%, rgba(103,214,219,.28), transparent 28%),
        radial-gradient(circle at 14% 78%, rgba(213,65,78,.22), transparent 28%),
        linear-gradient(135deg,#171821 0%,#202231 52%,#11131b 100%);
      color:#fff;
      position:relative;
      isolation:isolate;
    }
    .contact-hero-wrap:before {
      content:""; position:absolute; inset:0;
      background:linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 1px);
      background-size:56px 56px;
      mask-image:linear-gradient(90deg,rgba(0,0,0,.75),transparent 70%);
      pointer-events:none;
      z-index:-1;
    }
    .contact-hero-inner { max-width:1180px; margin:0 auto; padding:0 24px; }
    .eyebrow {
      display:inline-flex; align-items:center; gap:10px;
      color:#67d6db; font:700 12px/1 Inter,sans-serif; letter-spacing:.13em; text-transform:uppercase;
      margin-bottom:18px;
    }
    .eyebrow:before { content:""; width:34px; height:2px; background:#d5414e; border-radius:3px; }
    
    .contact-hero p { max-width:720px; color:rgba(255,255,255,.75); font-size:18px; line-height:1.65; margin:0; }
    .contact-main { padding:60px 0; }
    .contact-layout {
      display:grid; grid-template-columns:minmax(0,1.17fr) minmax(360px,.83fr); gap:28px; align-items:stretch;
    }
    .contact-card {
      background:#fff; border:1px solid rgba(23,24,33,.09); border-radius:26px;
      box-shadow:0 22px 70px rgba(17,19,27,.08); overflow:hidden;
    }
    .form-card,.address-card { min-height:720px; display:flex; flex-direction:column; }
    .form-card { padding:34px; }
    .form-intro { margin-bottom:24px; }
    .form-intro p { color:#5f6472; font-size:15.5px; line-height:1.7; max-width:660px; margin:0; }
    .card-heading { font-family:'Maven Pro',Inter,sans-serif; font-size:28px; line-height:1.1; letter-spacing:-.025em; color:#20232d; margin:0 0 14px; font-weight:800; }
    .helius-form { display:grid; grid-template-columns:1fr 1fr; column-gap:18px; row-gap:16px; flex:1; }
    .field { display:flex; flex-direction:column; gap:8px; margin:0; }
    .field.full { grid-column:1/-1; }
    .field label { font:700 12px/1 Inter,sans-serif; color:#222631; letter-spacing:.02em; }
    .field input,.field select,.field textarea {
      width:100%; border:1px solid #dddfe7; background:#fbfbfc; border-radius:14px;
      min-height:52px; padding:14px 15px; font:500 14px/1.3 Inter,sans-serif; color:#20232d;
      transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .field textarea { min-height:160px; resize:vertical; line-height:1.6; }
    .field input:focus,.field select:focus,.field textarea:focus { outline:none; border-color:#67d6db; background:#fff; box-shadow:0 0 0 4px rgba(103,214,219,.16); }
    .select-wrap { position:relative; }
    .select-wrap select { appearance:none; -webkit-appearance:none; padding-right:44px; }
    .select-wrap:after {
      content:""; position:absolute; right:16px; top:50%; width:9px; height:9px;
      border-right:2px solid #5d6270; border-bottom:2px solid #5d6270; transform:translateY(-65%) rotate(45deg);
      pointer-events:none;
    }
    .security-row {
      grid-column:1/-1; display:grid; grid-template-columns:1fr 160px; gap:14px; align-items:end;
      padding-top:0;
    }
    .security-note { color:#6a707f; font-size:13px; line-height:1.5; margin:0 0 2px; }
    .consent { grid-column:1/-1; display:flex; gap:10px; align-items:flex-start; color:#525968; font-size:13.5px; line-height:1.55; }
    .consent input { width:18px; height:18px; min-height:18px; margin-top:1px; accent-color:#d5414e; }
    .consent a { color:#d5414e; text-decoration:none; font-weight:700; }
    .form-actions { grid-column:1/-1; display:flex; align-items:center; gap:18px; margin-top:0; }
    .form-submit {
      border:0; border-radius:999px; min-height:52px; padding:0 30px; cursor:pointer;
      background:linear-gradient(135deg,#d5414e,#c83243); color:#fff; font:800 14px/1 Inter,sans-serif;
      box-shadow:0 14px 28px rgba(213,65,78,.22);
    }
    .form-helper { color:#777d8b; font-size:13px; }
    .bot-field { position:absolute; left:-9999px; opacity:0; height:0; overflow:hidden; }
    .address-card { padding:0; }
    .address-intro { padding:32px 32px 22px; border-bottom:1px solid rgba(23,24,33,.08); }
    .address-intro p { margin:0; color:#5f6472; font-size:15px; line-height:1.7; }
    .office-list { padding:14px 32px 30px; display:grid; gap:0; flex:1; }
    .office { padding:18px 0; border-bottom:1px solid rgba(23,24,33,.09); }
    .office:last-child { border-bottom:0; }
    .office strong { display:block; color:#d5414e; font:800 12px/1 Inter,sans-serif; letter-spacing:.12em; text-transform:uppercase; margin-bottom:8px; }
    .office p { margin:0; color:#232630; font-size:14px; line-height:1.55; }
    .career-strip { margin-top:55px; border-radius:26px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:linear-gradient(135deg,#1b1d28,#272938); color:#fff; }
    .career-strip-inner { display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center; padding:34px; position:relative; }
    .career-strip-inner:after { content:""; position:absolute; right:-110px; top:-120px; width:320px; height:320px; background:radial-gradient(circle,rgba(103,214,219,.26),transparent 65%); }
    .career-strip h2 { font-family:'Maven Pro',Inter,sans-serif; font-size:30px; line-height:1.05; margin:0 0 8px; letter-spacing:-.025em; }
    .career-strip p { margin:0; color:rgba(255,255,255,.72); font-size:15.5px; line-height:1.65; max-width:780px; }
    .career-strip .btn { position:relative; z-index:1; white-space:nowrap; }
    @media(max-width:980px) {
      .contact-layout,.career-strip-inner { grid-template-columns:1fr; }
      .form-card,.address-card { min-height:auto; }
      .helius-form,.security-row { grid-template-columns:1fr; }
      .contact-hero-wrap { padding:98px 0 66px; }
    }
    @media(max-width:640px) {
      .contact-main { padding:48px 0 64px; }
      .form-card,.address-intro,.office-list,.career-strip-inner { padding:24px; }
      .helius-form { row-gap:18px; column-gap:15px; }
      .form-actions { flex-direction:column; align-items:stretch; }
    }


/* From careers.html */
body.careers-page { background:#f5f5f3; color:#20232d; }
    .careers-page .page-shell { overflow:hidden; }
    .career-hero-wrap {
      width:100%; margin-top:0; padding:118px 0 76px; color:#fff; position:relative; isolation:isolate;
      background:
        linear-gradient(90deg,rgba(17,19,27,.82),rgba(17,19,27,.62) 48%,rgba(17,19,27,.38)),
        url('../images/career-img1.jpg') center/cover no-repeat;
    }
    .career-hero-wrap:before { content:""; position:absolute; inset:0; z-index:-1; background:
      radial-gradient(circle at 84% 18%, rgba(103,214,219,.26), transparent 28%),
      radial-gradient(circle at 12% 84%, rgba(213,65,78,.22), transparent 30%); }
    .career-hero-inner { max-width:1180px; margin:0 auto; padding:0 24px; }
    .career-eyebrow { display:inline-flex; align-items:center; gap:10px; color:#67d6db; font:700 12px/1 Inter,sans-serif; letter-spacing:.13em; text-transform:uppercase; margin-bottom:18px; }
    .career-eyebrow:before { content:""; width:34px; height:2px; background:#d5414e; border-radius:3px; }
    
    .career-hero p { max-width:720px; color:rgba(255,255,255,.78); font-size:18px; line-height:1.65; margin:0; }
    .career-main { padding:60px 0 30px; }
    .career-intro-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); gap:28px; align-items:stretch; margin-bottom:30px; }
    .career-card { background:#fff; border:1px solid rgba(23,24,33,.09); border-radius:26px; box-shadow:0 22px 70px rgba(17,19,27,.08); overflow:hidden; }
    .career-copy-card { padding:34px; display:flex; flex-direction:column; justify-content:space-between; min-height:410px; }
    .career-card h2 { font-family:'Maven Pro',Inter,sans-serif; font-size:clamp(28px,3vw,40px); line-height:1.05; letter-spacing:-.035em; margin:0 0 16px; font-weight:800; color:#20232d; }
    .career-card p { color:#5f6472; font-size:15.5px; line-height:1.75; margin:0; }
    .culture-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:24px; }
    .culture-pill { border:1px solid rgba(23,24,33,.08); border-radius:16px; padding:15px; background:#fbfbfc; }
    .culture-pill strong { display:block; color:#20232d; font:800 14px/1.25 Inter,sans-serif; margin-bottom:6px; }
    .culture-pill span { display:block; color:#697080; font-size:13.5px; line-height:1.5; }
    .legacy-card { min-height:410px; display:grid; grid-template-rows:1fr auto; background:#171821; color:#fff; }
    .legacy-visual { min-height:210px; background:linear-gradient(180deg,rgba(17,19,27,.04),rgba(17,19,27,.70)), url('../images/Team.jpg') center/cover no-repeat; }
    .legacy-content { padding:30px; }
    .legacy-content h2 { color:#fff; margin-bottom:14px; }
    .legacy-content p { color:rgba(255,255,255,.76); }
    .legacy-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:22px; }
    .metric { border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); border-radius:16px; padding:14px; }
    .metric strong { display:block; color:#67d6db; font:800 20px/1 'Maven Pro',Inter,sans-serif; }
    .metric span { display:block; margin-top:6px; color:rgba(255,255,255,.7); font-size:12.5px; line-height:1.35; }
    .why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:30px 0; }
    .why-item { padding:24px; min-height:210px; }
    .why-icon { width:42px; height:42px; border-radius:14px; background:rgba(213,65,78,.1); display:grid; place-items:center; color:#d5414e; margin-bottom:18px; }
    .why-item h3 { font-family:'Maven Pro',Inter,sans-serif; font-size:22px; line-height:1.1; margin:0 0 10px; letter-spacing:-.02em; color:#20232d; }
    .jobs-shell { margin-top:30px; padding:24px; }
    .jobs-head { display:flex; justify-content:space-between; gap:24px; align-items:end; margin-bottom:20px; }
    .jobs-head h2 { font-family:'Maven Pro',Inter,sans-serif; font-size:clamp(30px,3vw,44px); line-height:1.05; letter-spacing:-.035em; margin:0; font-weight:800; }
    .jobs-head p { max-width:520px; margin:0; color:#5f6472; font-size:15.5px; line-height:1.65; }
    .career-frame-wrap { border:1px solid rgba(23,24,33,.09); border-radius:22px; overflow:hidden; background:#fff; min-height:760px; }
    .career-frame-wrap iframe { display:block; width:100%; min-height:760px; border:0; background:#fff; }
    .red-stop { color:#d5414e; }
    @media (max-width: 960px){ .career-intro-grid,.why-grid{grid-template-columns:1fr;} .jobs-head{display:block;} .jobs-head p{margin-top:12px;} .career-copy-card,.legacy-card{min-height:auto;} }
    @media (max-width: 640px){ .career-hero-wrap{padding:104px 0 58px;} .career-main{padding:48px 0 64px;} .career-copy-card,.legacy-content,.jobs-shell{padding:22px;} .culture-list,.legacy-metrics{grid-template-columns:1fr;} .career-frame-wrap,.career-frame-wrap iframe{min-height:680px;} }


/* From partners.html */
body.partners-page{color:#20232d}.partners-page .page-shell{overflow:hidden}.red-dot{color:#d5414e}
    .partners-hero{position:relative;overflow:hidden;padding:118px 0 76px;color:#fff;isolation:isolate;background:linear-gradient(90deg,rgba(17,19,27,.88),rgba(17,19,27,.68) 48%,rgba(17,19,27,.42)),url('../images/Technology.jpg') center/cover no-repeat}.partners-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 84% 18%,rgba(103,214,219,.24),transparent 30%),radial-gradient(circle at 10% 84%,rgba(213,65,78,.22),transparent 30%)}.partners-orb{display:none}.partners-hero-wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,900px);gap:34px;align-items:end}.partners-hero-copy{padding-top:8px}.partners-eyebrow,.card-kicker{display:inline-flex;align-items:center;gap:10px;color:#67d6db;font:800 12px/1 Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase;margin-bottom:18px}.partners-eyebrow:before{content:"";width:34px;height:2px;background:#d5414e;border-radius:3px}.partners-hero p{max-width:720px;margin:20px 0 0;color:rgba(255,255,255,.78);font-size:18px;line-height:1.65}.partners-hero .button-row{margin-top:32px}.partners-hero-panel{min-height:340px;border:1px solid rgba(255,255,255,.14);border-radius:30px;overflow:hidden;background:linear-gradient(180deg,rgba(17,19,27,.04),rgba(17,19,27,.78)),url('../images/Complex ecosystems.jpg') center/cover no-repeat;box-shadow:0 30px 80px rgba(0,0,0,.25);display:flex;align-items:flex-end}.partners-visual-caption{padding:28px}.partners-visual-caption strong{display:block;color:#fff;font-family:'Maven Pro',Inter,sans-serif;font-size:25px;line-height:1.12;letter-spacing:-.025em}.partners-visual-caption span{display:block;margin-top:10px;color:rgba(255,255,255,.76);font-size:14.5px;line-height:1.55}
    .partners-intro-section,.partner-ecosystem-section,.partners-cta-section{background:transparent}.partners-intro-section{padding:64px 0 24px}.partners-intro-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.partners-info-card{border:1px solid rgba(23,24,33,.09);background:#fff;box-shadow:0 22px 70px rgba(17,19,27,.08);border-radius:26px;padding:32px}.partners-info-card h2{margin:0;color:#20232d;font-family:'Maven Pro',Inter,sans-serif;font-size:clamp(25px,2.8vw,34px);line-height:1.08;letter-spacing:-.03em;font-weight:800}.partners-info-card p{margin:15px 0 0;color:#5f6472;font-size:15.5px;line-height:1.7}.partner-ecosystem-section{padding:20px 0 40px}.partners-heading{max-width:920px;margin-bottom:34px}.partners-page .partners-heading .eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;color:#67d6db!important;font:800 12px/1 Inter,sans-serif!important;letter-spacing:.13em!important;text-transform:uppercase!important}.partners-page .partners-heading .eyebrow:before{content:"";width:34px;height:2px;background:#d5414e;border-radius:3px}.partners-page .partners-heading h2{max-width:840px;margin:0!important;color:#20232d!important;font-family:'Maven Pro',Inter,sans-serif!important;font-size:clamp(34px,3.6vw,52px)!important;line-height:1.06!important;letter-spacing:-.04em!important;font-weight:800!important}.partners-page .partners-heading p{max-width:780px;margin:16px 0 0!important;color:#5f6472!important;font-size:16px!important;line-height:1.65!important}.partner-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.partner-card{display:flex;min-height:580px;flex-direction:column;text-decoration:none;border-radius:30px;padding:30px 30px 28px;color:inherit;transition:transform .25s ease,border-color .25s ease,background .25s ease;border:1px solid rgba(255,255,255,.12);background:linear-gradient(150deg,#1c2a35 0%,#12202a 48%,#0e1a23 100%);box-shadow:0 22px 70px rgba(17,19,27,.18);overflow:hidden;position:relative}.partner-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 10%,rgba(103,214,219,.12),transparent 28%),radial-gradient(circle at 12% 100%,rgba(213,65,78,.10),transparent 34%);pointer-events:none}.partner-card>*{position:relative}.partner-card:hover{transform:translateY(-6px);border-color:rgba(103,214,219,.34);box-shadow:0 28px 90px rgba(17,19,27,.22)}.partner-logo{height:66px;display:flex;align-items:center;margin-bottom:24px}.partner-logo-text{font-family:'Maven Pro',Inter,sans-serif;font-weight:800;font-size:37px;letter-spacing:-.04em;color:#fff}.partner-logo-text.kanaka{color:#fffbf2}.partner-logo-text.dailoqa{color:#67d6db}.partner-logo-text.snowflake{color:#35b9e8}.partner-logo-text.databricks{color:#f05a45}.partner-logo-text.sap{color:#7ec7ff}.partner-logo-text.zoom{color:#6aa8ff}.partner-card h3{margin:0;color:#fff;font-family:'Maven Pro',Inter,sans-serif;font-size:25px;line-height:1.12;letter-spacing:-.025em;font-weight:800}.partner-card p{margin:16px 0 24px;color:#c6d1dc;font-size:15.5px;line-height:1.62}.partner-capabilities{list-style:none;margin:0 0 24px;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.12)}.partner-capabilities li{padding:11px 0;border-bottom:1px solid rgba(255,255,255,.09);color:#b9c6d3;font-size:14.5px;line-height:1.45}.partner-card span{margin-top:auto;color:#67d6db;font-weight:800;font-size:14px}.partner-card span i{font-size:12px;margin-left:6px}.partners-cta-section{padding:0 0 82px}.partners-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px;border-radius:28px;padding:66px;background:linear-gradient(135deg,#151923,#252b36);color:#fff;position:relative;overflow:hidden;box-shadow:none;border:0}.partners-cta:before{content:"";position:absolute;right:-80px;bottom:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(213,65,78,.32),transparent 70%)}.partners-cta h2{position:relative;max-width:900px;margin:0;color:#fff;font-family:'Maven Pro',Inter,sans-serif;font-size:clamp(32px,3.2vw,56px);line-height:1.08;letter-spacing:-.04em}.partners-cta p{position:relative;max-width:980px;margin:12px 0 0;color:rgba(255,255,255,.72);font-size:16px;line-height:1.65}.partners-cta .button-row{position:relative}
    @media (max-width:1024px){.partners-hero-wrap{grid-template-columns:1fr}.partner-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partners-hero{padding-top:126px}.partners-hero-panel{min-height:280px}}
    @media (max-width:760px){.partners-hero{padding:104px 0 58px}.partners-hero p{font-size:16px}.partners-intro-grid,.partner-card-grid{grid-template-columns:1fr}.partners-info-card,.partner-card,.partners-cta{border-radius:24px;padding:24px}.partner-card{min-height:auto}.partners-cta{align-items:flex-start;flex-direction:column}.partner-logo-text{font-size:32px}.partners-hero-panel{min-height:260px}}


/* Home video: keep desktop unchanged, make media fill the frame responsively */
.hero-video,
.hero-video-wrap video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 920px) {
  .hero-media-card {
    min-height: clamp(320px, 58vw, 440px);
  }
  .hero-video-wrap {
    border-radius: 24px;
  }
}

@media (max-width: 640px) {
  .partners-hero h1,
  .insights-hero h1,
  .career-hero h1,
  .career-hero-wrap h1,
  .case-detail-hero h1 {
    font-size: clamp(32px, 10vw, 44px) !important;
  }
}



.ms-hero h1,
.industry-hero h1,
.page-hero h1,
.hero-section h1,
.partners-hero h1,
.insights-hero h1,
.career-hero h1,
.career-hero-wrap h1,
.careers-hero h1,
.case-detail-hero h1{
  font-family: "Maven Pro", Inter, sans-serif;
  font-size: var(--global-banner-title) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.04em !important;
  font-weight: 800 !important;
}

.ms-hero p,
.industry-hero p,
.page-hero p,
.hero-section p,
.partners-hero p,
.insights-hero p,
.career-hero p,
.career-hero-wrap p,
.careers-hero p,
.case-detail-hero .case-summary{
  font-size: var(--global-banner-lead) !important;
  line-height: 1.65 !important;
}

.case-detail-hero .container{
  display:block !important;
}

.case-detail-hero .case-hero-inner,
.case-detail-hero .case-hero-content{
  max-width:900px !important;
  margin-left:0 !important;
  margin-right:auto !important;
  text-align:left !important;
}

.case-detail-hero h1,
.case-detail-hero .case-summary,
.case-detail-hero .case-tags{
  text-align:left !important;
}

.case-detail-hero .case-tags{
  justify-content:flex-start !important;
  margin-left:0 !important;
  margin-right:auto !important;
}

.case-meta-card .meta-label{
  color:var(--teal) !important;
}

@media(max-width:640px){
  .ms-hero h1,
  .industry-hero h1,
  .page-hero h1,
  .hero-section h1,
  .partners-hero h1,
  .insights-hero h1,
  .career-hero h1,
  .career-hero-wrap h1,
  .careers-hero h1,
  .case-detail-hero h1{
    font-size:var(--global-banner-title-mobile) !important;
  }
}

/* =========================================================
   INNER PAGE BANNER TYPOGRAPHY — MATCHES WHAT WE OFFER PAGES
   Source style: .ms-hero h1 / .ms-hero p from What We Offer pages.
   Homepage hero is intentionally excluded.
   ========================================================= */
:root{
  --inner-banner-title-size: 50px;
  --inner-banner-title-line: 1.06;
  --inner-banner-title-letter: -.042em;
  --inner-banner-title-weight: 600;
  --inner-banner-lead-size: 16.5px;
  --inner-banner-lead-line: 1.72;
}

.ms-hero h1,
.industry-hero h1,
.page-hero h1,
.hero-section h1,
.partners-hero h1,
.insights-hero h1,
.career-hero h1,
.career-hero-wrap h1,
.careers-hero h1,
.case-detail-hero h1{
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: var(--inner-banner-title-size) !important;
  line-height: var(--inner-banner-title-line) !important;
  letter-spacing: var(--inner-banner-title-letter) !important;
  font-weight: var(--inner-banner-title-weight) !important;
  text-align: left !important;
}

.ms-hero p,
.industry-hero p,
.page-hero p,
.hero-section p,
.partners-hero p,
.insights-hero p,
.career-hero p,
.career-hero-wrap p,
.careers-hero p,
.case-detail-hero .case-summary{
  font-size: var(--inner-banner-lead-size) !important;
  line-height: var(--inner-banner-lead-line) !important;
  text-align: left !important;
}

/* Case study detail page uses the same global grid/container rhythm */
.case-detail-hero .container{
  display:block !important;
}
.case-detail-hero .case-hero-inner,
.case-detail-hero .case-hero-content{
  max-width: 900px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
.case-detail-hero .case-tags{
  justify-content:flex-start !important;
  margin-left:0 !important;
  margin-right:auto !important;
  text-align:left !important;
}
.case-meta-card .meta-label{
  color:var(--teal) !important;
}

@media(max-width:920px){
  :root{
    --inner-banner-title-size: clamp(38px, 6.2vw, 50px);
  }
}

@media(max-width:640px){
  :root{
    --inner-banner-title-size: clamp(32px, 9vw, 40px);
    --inner-banner-lead-size: 16px;
  }
}


/* Targeted banner fix: keep Partners, Careers, and Contact aligned with the shared inner-page banner typography. */
.partners-hero h1,
.career-hero h1,
.contact-hero h1 {
 font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 50px !important; /* Matches index.html landing hero size */
  line-height: 1.06 !important;
  letter-spacing: -.042em !important;
  font-weight: 600 !important;
  text-align: left !important;
  max-width: 900px;
  margin: 0 0 18px;
}

.partners-hero .lead,
.career-hero .lead,
.contact-hero .lead {
  font-size: var(--inner-banner-lead-size) !important;
  line-height: var(--inner-banner-lead-line) !important;
  max-width: 58ch;
}

@media (max-width: 920px) {
  .partners-hero h1,
  .career-hero h1,
  .contact-hero h1 {
    max-width: 100%;
  }
}


/* Red full-stop consistency across all page headings */
.red-dot,
.industry-hero h1 .red-dot,
.ms-hero h1 .red-dot,
.insights-hero h1 .red-dot,
.partners-hero h1 .red-dot,
.career-hero h1 .red-dot,
.contact-hero h1 .red-dot,
.case-detail-hero h1 .red-dot {
  color: var(--red) !important;
}


/* Unified inner-page pre-heading style: red dash + blue page name */
.ms-kicker,
.industry-kicker,
.insights-kicker,
.partners-kicker,
.career-kicker,
.contact-kicker,
.case-kicker {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--teal) !important;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.ms-kicker:before,
.industry-kicker:before,
.insights-kicker:before,
.partners-kicker:before,
.career-kicker:before,
.contact-kicker:before,
.case-kicker:before {
  content: "";
  display: inline-block;
  width: 44px;
  height: 2px;
  background: var(--red);
  border-radius: 99px;
  flex: 0 0 auto;
}


/* Contact page uses the shared inner-page banner typography via the global .contact-hero h1 rule above. */


/* AI & Digital Technology page targeted refinements */
.page-ai-digital .ms-hero-visual .brand {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 18px !important;
  padding: 12px 16px !important;
  gap: 14px !important;
  box-shadow: 0 18px 42px rgba(3, 10, 24, 0.26) !important;
  backdrop-filter: blur(12px) saturate(125%);
  -webkit-backdrop-filter: blur(12px) saturate(125%);
  transition: transform .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.page-ai-digital .ms-hero-visual .brand:hover {
  transform: translate(-50%, -50%) translateY(-2px) !important;
  background: rgba(255, 255, 255, 0.97) !important;
  border-color: rgba(103, 214, 219, 0.74) !important;
  box-shadow: 0 22px 52px rgba(3, 10, 24, 0.32) !important;
}

.page-ai-digital .ms-hero-visual .brand img {
  width: 168px !important;
  height: auto !important;
  max-height: 46px !important;
  object-fit: contain !important;
  display: block !important;
}

.page-ai-digital .ms-hero-visual .brand .external-icon {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
  color: #d5414e !important;
  stroke: currentColor !important;
  stroke-width: 2.2 !important;
  fill: none !important;
  transition: transform .25s ease, color .25s ease;
}

.page-ai-digital .ms-hero-visual .brand:hover .external-icon {
  transform: translate(4px, -4px) !important;
  color: #b92f3c !important;
}

.page-ai-digital a.offer-card,
.page-ai-digital a.offer-card:visited {
  display: block;
  text-decoration: none !important;
  color: inherit !important;
}

.page-ai-digital .linked-offer-card {
  cursor: pointer;
}

.page-ai-digital .partner-card-logo {
  display: block;
  width: auto;
  object-fit: contain;
  margin-top: 22px;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.page-ai-digital .helius-ai-card-logo {
  max-width: 138px;
  max-height: 36px;
}

.page-ai-digital .dialoqa-card-logo {
  max-width: 128px;
  max-height: 34px;
}

.page-ai-digital .linked-offer-card:hover .partner-card-logo {
  transform: translateY(-1px);
  transition: transform .2s ease;
}

@media (max-width: 640px) {
  .page-ai-digital .ms-hero-visual .brand {
    padding: 10px 12px !important;
    border-radius: 16px !important;
  }
  .page-ai-digital .ms-hero-visual .brand img {
    width: 138px !important;
    max-height: 38px !important;
  }
  .page-ai-digital .ms-hero-visual .brand .external-icon {
    width: 21px !important;
    height: 21px !important;
    flex-basis: 21px !important;
  }
}

/* =========================================================
   Case Study Detail Page — consolidated production styles
   Applies to /case-studies/digital-banking-transformation.html
   ========================================================= */
.case-study-detail-page .case-detail-hero{
  position:relative;
  min-height:380px;
  display:flex;
  align-items:center;
  padding:118px 0 64px;
  background:
    linear-gradient(115deg,rgba(8,18,31,.94),rgba(13,39,60,.76)),
    url('../images/Digital bank.jpg') center/cover no-repeat;
  color:#fff;
  overflow:hidden;
}
.case-study-detail-page .case-detail-hero:after{
  content:"";
  position:absolute;
  inset:auto -12% -54% -12%;
  height:62%;
  background:radial-gradient(circle at 38% 0,rgba(103,214,219,.22),transparent 52%);
  pointer-events:none;
}
.case-study-detail-page .case-detail-hero .container{
  position:relative;
  z-index:1;
  display:block!important;
  text-align:left!important;
}
.case-study-detail-page .case-hero-inner{
  max-width:840px!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
.case-study-detail-page .case-kicker{
  display:inline-flex;
  align-items:center;
  gap:13px;
  margin:0 0 16px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--red,#d5414e);
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.case-study-detail-page .case-kicker:before{
  content:"";
  display:inline-block;
  width:44px;
  height:2px;
  background:var(--red,#d5414e);
  border-radius:99px;
}
.case-study-detail-page .case-detail-hero h1{
  max-width:780px!important;
  margin:0 0 18px!important;
  color:#fff!important;
  font-family:"Maven Pro",Inter,sans-serif!important;
  font-size:clamp(36px,4vw,50px)!important;
  line-height:1.06!important;
  letter-spacing:-.042em!important;
  font-weight:700!important;
  text-align:left!important;
}
.case-study-detail-page .case-summary{
  max-width:780px!important;
  margin:0 0 22px!important;
  color:rgba(255,255,255,.86)!important;
  font-size:16.5px!important;
  line-height:1.72!important;
  text-align:left!important;
}
.case-study-detail-page .case-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  max-width:780px!important;
  justify-content:flex-start!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
.case-study-detail-page .case-tags span{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:12.5px;
  font-weight:700;
  backdrop-filter:blur(8px);
}
.case-study-detail-page .case-detail-wrap{
  background:linear-gradient(180deg,#f6f8fb 0%,#fff 48%,#f8fafc 100%);
  padding:54px 0 76px;
}
.case-study-detail-page .case-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 350px;
  gap:30px;
  align-items:start;
}
.case-study-detail-page .case-main-content{min-width:0;}
.case-study-detail-page .case-panel{
  background:#fff;
  border:1px solid rgba(16,24,40,.08);
  box-shadow:0 18px 46px rgba(16,24,40,.065);
  border-radius:24px;
  padding:30px 32px;
}
.case-study-detail-page .case-panel + .case-panel{margin-top:22px;}
.case-study-detail-page .case-panel h2{
  margin:0 0 16px;
  color:#111827;
  font-family:"Maven Pro",Inter,sans-serif;
  font-size:clamp(23px,2vw,30px);
  line-height:1.18;
  letter-spacing:-.02em;
  text-align:left;
}
.case-study-detail-page .case-panel p{
  margin:0 0 14px;
  color:#475467;
  font-size:16px;
  line-height:1.78;
}
.case-study-detail-page .case-panel p:last-child{margin-bottom:0;}
.case-study-detail-page .line-list,
.case-study-detail-page .outcome-list{
  display:grid;
  margin:0;
  padding:0;
  list-style:none;
  border:0;
}
.case-study-detail-page .line-list li{
  padding:15px 0;
  color:#475467;
  line-height:1.62;
  font-size:15.7px;
}
.case-study-detail-page .line-list li + li{border-top:1px solid rgba(16,24,40,.10);}
.case-study-detail-page .line-list li strong{color:#111827;font-weight:750;}
.case-study-detail-page .outcome-list li{
  padding:16px 0;
  color:#344054;
  font-size:16px;
  line-height:1.62;
  font-weight:650;
}
.case-study-detail-page .outcome-list li + li{border-top:1px solid rgba(213,65,78,.18);}
.case-study-detail-page .case-meta-card{
  position:sticky;
  top:96px;
  background:#101828;
  color:#fff;
  border-radius:24px;
  padding:23px 24px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 22px 56px rgba(16,24,40,.18);
}
.case-study-detail-page .meta-list{display:grid;gap:0;}
.case-study-detail-page .meta-item{padding:15px 0;border-top:1px solid rgba(255,255,255,.13);}
.case-study-detail-page .meta-item:first-child{border-top:0;padding-top:0;}
.case-study-detail-page .meta-label{
  display:block;
  margin-bottom:6px;
  color:var(--teal,#67d6db)!important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.case-study-detail-page .meta-value{
  display:block;
  color:rgba(255,255,255,.92);
  font-size:14.5px;
  font-weight:650;
  line-height:1.48;
}
.case-study-detail-page .related-case-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.case-study-detail-page .related-case-card{
  display:flex;
  min-height:172px;
  flex-direction:column;
  gap:10px;
  padding:20px;
  border-radius:20px;
  text-decoration:none;
  background:linear-gradient(145deg,#f8fafc,#fff);
  border:1px solid rgba(16,24,40,.09);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.case-study-detail-page .related-case-card:hover{
  transform:translateY(-3px);
  border-color:rgba(103,214,219,.45);
  box-shadow:0 16px 36px rgba(16,24,40,.08);
}
.case-study-detail-page .related-case-card span{
  color:var(--red,#d5414e);
  font-size:11px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.case-study-detail-page .related-case-card strong{
  color:#111827;
  font-family:"Maven Pro",Inter,sans-serif;
  font-size:18px;
  line-height:1.2;
}
.case-study-detail-page .related-case-card em{
  margin-top:auto;
  color:#667085;
  font-size:13px;
  font-style:normal;
  line-height:1.4;
}
.case-study-detail-page .case-next{
  margin-top:34px;
  padding:38px 42px;
  border-radius:28px;
  background:linear-gradient(135deg,#111827 0%,#192235 58%,#244754 100%);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:28px;
  box-shadow:0 24px 60px rgba(16,24,40,.22);
  color:#fff;
}
.case-study-detail-page .case-next h3{
  margin:0 0 8px;
  color:#fff;
  font-family:"Maven Pro",Inter,sans-serif;
  font-size:clamp(24px,2.3vw,34px);
  line-height:1.12;
  letter-spacing:-.02em;
}
.case-study-detail-page .case-next p{
  max-width:680px;
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.6;
}
.case-study-detail-page .case-next a{
  white-space:nowrap;
  min-height:52px;
  padding:0 26px;
  background:var(--red,#d5414e);
  color:#fff;
  border-color:var(--red,#d5414e);
  box-shadow:0 18px 36px rgba(213,65,78,.30);
}
.case-study-detail-page .case-next a:hover{
  background:var(--teal,#67d6db);
  border-color:var(--teal,#67d6db);
  color:#09202a;
  transform:translateY(-2px);
  box-shadow:0 18px 42px rgba(103,214,219,.26);
}
@media(max-width:1024px){
  .case-study-detail-page .case-detail-hero{min-height:360px;padding:116px 0 52px;align-items:flex-end;}
  .case-study-detail-page .case-detail-grid{grid-template-columns:1fr;}
  .case-study-detail-page .case-meta-card{position:relative;top:auto;order:-1;}
  .case-study-detail-page .case-next{align-items:flex-start;}
  .case-study-detail-page .related-case-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .case-study-detail-page .case-detail-hero{min-height:340px;padding:104px 0 42px;}
  .case-study-detail-page .case-detail-hero h1{font-size:clamp(31px,9vw,38px)!important;line-height:1.08!important;}
  .case-study-detail-page .case-summary{font-size:15.5px!important;line-height:1.65!important;}
  .case-study-detail-page .case-tags span{font-size:12px;padding:7px 10px;}
  .case-study-detail-page .case-panel{padding:22px;border-radius:22px;}
  .case-study-detail-page .case-detail-wrap{padding:34px 0 56px;}
  .case-study-detail-page .case-next{display:block;padding:26px;}
  .case-study-detail-page .case-next a{margin-top:18px;display:inline-flex;}
}

/* =========================================================
   Case study detail refinements - digital banking page
   Banner aligned with main Case Studies page + related cards
   ========================================================= */
.case-study-detail-page .case-detail-hero{
  position:relative;
  overflow:hidden;
  min-height:auto!important;
  display:block!important;
  align-items:initial!important;
  padding:132px 0 86px!important;
  color:#fff;
  background:radial-gradient(circle at 14% 20%, rgba(213,65,78,.22), transparent 32%), linear-gradient(135deg,#111827 0%,#0c1119 52%,#151a22 100%)!important;
}
.case-study-detail-page .case-detail-hero:after{
  content:"";
  position:absolute;
  inset:auto -18% -40% auto!important;
  width:680px!important;
  height:680px!important;
  border-radius:50%;
  background:radial-gradient(circle,rgba(103,214,219,.18),transparent 65%)!important;
  pointer-events:none;
}
.case-study-detail-page .case-detail-hero .container{
  position:relative;
  z-index:2;
}
.case-study-detail-page .case-hero-inner{
  max-width:920px!important;
}
.case-study-detail-page .case-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 22px!important;
  color:var(--red,#d5414e)!important;
  font-size:12px!important;
  letter-spacing:.18em!important;
  font-weight:800!important;
  text-transform:uppercase;
}
.case-study-detail-page .case-kicker:before{
  width:34px!important;
  height:1px!important;
  background:var(--red,#d5414e)!important;
}
.case-study-detail-page .case-detail-hero h1{
  max-width:900px!important;
  margin:0 0 24px!important;
  color:#fff!important;
  font-family:var(--font-heading,Inter,sans-serif)!important;
  font-size:clamp(44px,5.3vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  font-weight:600!important;
}
.case-study-detail-page .case-summary{
  max-width:820px!important;
  margin:0!important;
  color:rgba(255,255,255,.74)!important;
  font-size:clamp(16px,1.35vw,20px)!important;
  line-height:1.75!important;
}
.case-study-detail-page .case-tags{
  max-width:900px!important;
  margin-top:34px!important;
  gap:12px!important;
}
.case-study-detail-page .case-tags span{
  padding:9px 15px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  color:rgba(255,255,255,.9)!important;
  font-size:12.5px!important;
}
.case-study-detail-page .related-case-panel{
  padding:32px!important;
}
.case-study-detail-page .related-case-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.case-study-detail-page .related-case-header h2{
  margin:6px 0 0!important;
}
.case-study-detail-page .section-eyebrow{
  display:inline-flex;
  color:var(--red,#d5414e);
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.case-study-detail-page .related-view-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(213,65,78,.22);
  color:var(--red,#d5414e);
  background:rgba(213,65,78,.045);
  font-size:13px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
}
.case-study-detail-page .related-view-all:hover{
  transform:translateY(-2px);
  background:var(--red,#d5414e);
  border-color:var(--red,#d5414e);
  color:#fff;
}
.case-study-detail-page .related-case-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px!important;
}
.case-study-detail-page .related-case-card{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  overflow:hidden;
  padding:0!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid rgba(16,24,40,.10)!important;
  box-shadow:0 18px 42px rgba(16,24,40,.065);
  text-decoration:none;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.case-study-detail-page .related-case-card:after{
  content:"";
  position:absolute;
  inset:auto 18px 18px auto;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(213,65,78,.09);
  transition:background .24s ease,transform .24s ease;
}
.case-study-detail-page .related-case-card:hover{
  transform:translateY(-6px)!important;
  border-color:rgba(213,65,78,.24)!important;
  box-shadow:0 26px 64px rgba(16,24,40,.13)!important;
}
.case-study-detail-page .related-case-card:hover:after{
  background:rgba(103,214,219,.22);
  transform:scale(1.08);
}
.case-study-detail-page .related-card-media{
  min-height:142px;
  background:radial-gradient(circle at 18% 20%,rgba(213,65,78,.22),transparent 34%),linear-gradient(135deg,#101828 0%,#162033 54%,#244754 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.58);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.case-study-detail-page .related-card-body{
  position:relative;
  z-index:1;
  display:flex;
  flex:1;
  flex-direction:column;
  gap:10px;
  padding:22px 22px 24px;
}
.case-study-detail-page .related-case-card .related-industry{
  color:var(--red,#d5414e)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  line-height:1.45;
  text-transform:uppercase;
}
.case-study-detail-page .related-case-card strong{
  color:#111827!important;
  font-family:"Maven Pro",Inter,sans-serif;
  font-size:20px!important;
  line-height:1.18!important;
  letter-spacing:-.02em;
}
.case-study-detail-page .related-case-card em{
  margin-top:0!important;
  color:#667085!important;
  font-size:14px!important;
  font-style:normal;
  line-height:1.45!important;
}
.case-study-detail-page .related-card-cta{
  margin-top:auto;
  padding-top:10px;
  color:#111827;
  font-size:13px;
  font-weight:850;
}
.case-study-detail-page .related-card-cta:after{
  content:" →";
  color:var(--red,#d5414e);
}
@media(max-width:1024px){
  .case-study-detail-page .case-detail-hero{padding:118px 0 72px!important;}
  .case-study-detail-page .related-case-grid{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  .case-study-detail-page .case-detail-hero{padding:104px 0 56px!important;}
  .case-study-detail-page .case-detail-hero h1{font-size:clamp(38px,11vw,52px)!important;}
  .case-study-detail-page .case-tags{margin-top:24px!important;}
  .case-study-detail-page .related-case-header{display:block;}
  .case-study-detail-page .related-view-all{margin-top:16px;}
  .case-study-detail-page .related-case-panel{padding:24px!important;}
}

/* =========================================================
   Digital banking case detail - requested refinements
   Scope: hero sizing + merged related case section only
   ========================================================= */
.case-study-detail-page .case-detail-hero{
  padding:122px 0 78px!important;
}
.case-study-detail-page .case-hero-inner{
  max-width:880px!important;
}
.case-study-detail-page .case-detail-hero h1{
  max-width:820px!important;
  font-size:clamp(42px,4.55vw,62px)!important;
  line-height:1.02!important;
  letter-spacing:-.048em!important;
  margin-bottom:22px!important;
}
.case-study-detail-page .case-summary{
  max-width:780px!important;
  font-size:clamp(16px,1.18vw,18px)!important;
  line-height:1.7!important;
}
.case-study-detail-page .case-tags{
  margin-top:30px!important;
}
.case-study-detail-page .case-tags span{
  font-size:12px!important;
  padding:8px 14px!important;
}
.case-study-detail-page .related-case-panel{
  padding:34px!important;
  border-radius:30px!important;
}
.case-study-detail-page .related-case-header{
  display:block!important;
  margin-bottom:24px!important;
}
.case-study-detail-page .related-case-header h2{
  margin:0!important;
  font-size:clamp(34px,3vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
.case-study-detail-page .related-view-all,
.case-study-detail-page .related-card-cta,
.case-study-detail-page .section-eyebrow{
  display:none!important;
}
.case-study-detail-page .related-case-grid{
  gap:20px!important;
}
.case-study-detail-page .related-case-card{
  border-radius:26px!important;
  min-height:0!important;
}
.case-study-detail-page .related-case-card:after{
  display:none!important;
}
.case-study-detail-page .related-card-media{
  min-height:210px!important;
}
.case-study-detail-page .related-card-body{
  padding:20px 22px 24px!important;
  gap:8px!important;
  min-height:190px!important;
}
.case-study-detail-page .related-case-card .related-industry{
  font-size:10.5px!important;
  letter-spacing:.105em!important;
}
.case-study-detail-page .related-case-card strong{
  font-size:18px!important;
  line-height:1.18!important;
}
.case-study-detail-page .related-case-card em{
  font-size:13px!important;
  line-height:1.42!important;
}
.case-study-detail-page .related-case-footer{
  margin-top:28px;
  padding:32px 34px;
  border-radius:24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  color:#fff;
  background:radial-gradient(circle at 12% 18%,rgba(213,65,78,.20),transparent 34%),linear-gradient(135deg,#111827 0%,#172032 56%,#234a55 100%);
}
.case-study-detail-page .related-case-footer h3{
  margin:0 0 10px;
  max-width:640px;
  color:#fff;
  font-size:clamp(30px,3.2vw,44px);
  line-height:1.05;
  letter-spacing:-.035em;
}
.case-study-detail-page .related-case-footer p{
  margin:0;
  max-width:700px;
  color:rgba(255,255,255,.76);
  font-size:17px;
  line-height:1.55;
}
.case-study-detail-page .related-case-footer .btn{
  white-space:nowrap;
}
@media(max-width:1024px){
  .case-study-detail-page .case-detail-hero{padding:112px 0 68px!important;}
  .case-study-detail-page .related-card-media{min-height:220px!important;}
  .case-study-detail-page .related-card-body{min-height:0!important;}
  .case-study-detail-page .related-case-footer{grid-template-columns:1fr;align-items:start;}
}
@media(max-width:640px){
  .case-study-detail-page .case-detail-hero{padding:98px 0 52px!important;}
  .case-study-detail-page .case-detail-hero h1{font-size:clamp(34px,10vw,44px)!important;}
  .case-study-detail-page .case-summary{font-size:15.5px!important;}
  .case-study-detail-page .related-case-panel{padding:22px!important;}
  .case-study-detail-page .related-card-media{min-height:170px!important;}
  .case-study-detail-page .related-case-footer{padding:24px;border-radius:22px;}
  .case-study-detail-page .related-case-footer h3{font-size:30px;}
  .case-study-detail-page .related-case-footer p{font-size:15px;}
}


/* =========================================================
   Case Study Detail Template — global alignment overrides
   Purpose: use the same hero typography rhythm as the main Case Studies page
   and a reusable related-case module for all individual case study pages.
   ========================================================= */
.case-study-detail-page .case-detail-hero{
  position:relative!important;
  overflow:hidden!important;
  min-height:auto!important;
  display:block!important;
  align-items:initial!important;
  padding:132px 0 86px!important;
  background:
    radial-gradient(circle at 14% 20%, rgba(213,65,78,.22), transparent 32%),
    linear-gradient(135deg,#111827 0%,#0c1119 52%,#151a22 100%)!important;
  color:#fff!important;
}
.case-study-detail-page .case-detail-hero:after{
  content:""!important;
  position:absolute!important;
  inset:auto -18% -40% auto!important;
  width:680px!important;
  height:680px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(103,214,219,.18),transparent 65%)!important;
  pointer-events:none!important;
}
.case-study-detail-page .case-detail-hero .container{
  position:relative!important;
  z-index:2!important;
  text-align:left!important;
}
.case-study-detail-page .case-hero-inner{
  max-width:900px!important;
  margin:0!important;
  text-align:left!important;
}
.case-study-detail-page .case-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:13px!important;
  margin:0 0 18px!important;
  color:#d5414e!important;
  font-family:Inter,sans-serif!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.case-study-detail-page .case-kicker:before{
  width:44px!important;
  height:2px!important;
  background:#d5414e!important;
}
.case-study-detail-page .case-detail-hero h1{
  font-family:var(--font-heading,Inter,sans-serif)!important;
  font-size:clamp(44px,5.3vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  font-weight:600!important;
  max-width:900px!important;
  margin:0 0 24px!important;
  color:#fff!important;
  text-align:left!important;
}
.case-study-detail-page .case-detail-hero .case-summary{
  font-size:clamp(16px,1.35vw,20px)!important;
  line-height:1.75!important;
  color:rgba(255,255,255,.74)!important;
  max-width:800px!important;
  margin:0!important;
}
.case-study-detail-page .case-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:34px!important;
  max-width:900px!important;
}
.case-study-detail-page .case-tags span{
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.78)!important;
  border-radius:999px!important;
  padding:10px 14px!important;
  font-size:13px!important;
  font-weight:650!important;
  backdrop-filter:blur(10px)!important;
}
.case-study-detail-page .related-case-panel.case-related-unified{
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(16,24,40,.08)!important;
  box-shadow:0 18px 46px rgba(16,24,40,.065)!important;
}
.case-study-detail-page .related-case-panel .related-case-header{
  padding:30px 32px 18px!important;
  border-bottom:1px solid rgba(16,24,40,.08)!important;
  margin:0!important;
}
.case-study-detail-page .related-case-panel .related-case-header h2,
.case-study-detail-page .related-case-panel .related-case-footer h3{
  margin:0!important;
  color:#111827!important;
  font-family:var(--font-heading,Inter,sans-serif)!important;
  font-size:clamp(24px,2.1vw,32px)!important;
  line-height:1.12!important;
  letter-spacing:-.03em!important;
  font-weight:600!important;
}
.case-study-detail-page .related-case-grid.homepage-card-style{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  padding:0!important;
  border-bottom:1px solid rgba(16,24,40,.08)!important;
}
.case-study-detail-page .related-case-grid.homepage-card-style .related-case-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  padding:0!important;
  border:0!important;
  border-right:1px solid rgba(16,24,40,.08)!important;
  border-radius:0!important;
  background:#fff!important;
  text-decoration:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transition:background .22s ease, transform .22s ease!important;
}
.case-study-detail-page .related-case-grid.homepage-card-style .related-case-card:last-child{border-right:0!important;}
.case-study-detail-page .related-case-grid.homepage-card-style .related-case-card:hover{
  transform:none!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}
.case-study-detail-page .related-card-media{
  min-height:190px!important;
  height:190px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:
    radial-gradient(circle at 15% 10%,rgba(213,65,78,.22),transparent 30%),
    linear-gradient(135deg,#111827 0%,#142033 55%,#214653 100%)!important;
  color:#d5414e!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.case-study-detail-page .related-card-body{
  padding:24px 26px 28px!important;
}
.case-study-detail-page .related-card-body strong{
  display:block!important;
  color:#111827!important;
  font-family:var(--font-heading,Inter,sans-serif)!important;
  font-size:clamp(20px,1.65vw,25px)!important;
  line-height:1.16!important;
  letter-spacing:-.025em!important;
  font-weight:600!important;
}
.case-study-detail-page .related-card-body p{
  margin:12px 0 0!important;
  color:#667085!important;
  font-size:14.5px!important;
  line-height:1.62!important;
}
.case-study-detail-page .related-case-footer{
  margin:0!important;
  padding:30px 32px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:28px!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
}
.case-study-detail-page .related-case-footer p{
  max-width:720px!important;
  margin:10px 0 0!important;
  color:#667085!important;
  font-size:15.5px!important;
  line-height:1.65!important;
}
.case-study-detail-page .related-case-footer .text-link{
  color:#d5414e!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:auto!important;
  font-size:15px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.case-study-detail-page .related-case-footer .text-link:hover{color:#0e7180!important;}
@media(max-width:1024px){
  .case-study-detail-page .case-detail-hero{padding:118px 0 72px!important;}
  .case-study-detail-page .related-case-grid.homepage-card-style{grid-template-columns:1fr!important;}
  .case-study-detail-page .related-case-grid.homepage-card-style .related-case-card{border-right:0!important;border-bottom:1px solid rgba(16,24,40,.08)!important;}
  .case-study-detail-page .related-case-footer{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  .case-study-detail-page .case-detail-hero{padding:104px 0 58px!important;}
  .case-study-detail-page .case-detail-hero h1{font-size:clamp(38px,13vw,52px)!important;}
  .case-study-detail-page .related-case-panel .related-case-header,
  .case-study-detail-page .related-case-footer{padding:24px!important;}
  .case-study-detail-page .related-card-media{height:160px!important;min-height:160px!important;}
  .case-study-detail-page .related-card-body{padding:22px 24px!important;}
}

/* =========================================================
   FINAL: Case study detail template alignment
   Matches main Case Studies hero rhythm and case panel heading scale.
   Use this block as the reusable global style for individual case study pages.
   ========================================================= */
.case-study-detail-page .case-detail-hero{
  padding:132px 0 86px!important;
  background:radial-gradient(circle at 14% 20%,rgba(213,65,78,.22),transparent 32%),linear-gradient(135deg,#111827 0%,#0c1119 52%,#151a22 100%)!important;
}
.case-study-detail-page .case-hero-inner{max-width:860px!important;}
.case-study-detail-page .case-detail-hero h1{
  font-family:"Maven Pro",Inter,sans-serif!important;
  font-size:var(--inner-banner-title-size)!important;
  line-height:var(--inner-banner-title-line)!important;
  letter-spacing:var(--inner-banner-title-letter)!important;
  font-weight:var(--inner-banner-title-weight)!important;
  max-width:900px!important;
  margin:0 0 22px!important;
}
.case-study-detail-page .case-detail-hero .case-summary{
  font-size:var(--inner-banner-lead-size)!important;
  line-height:var(--inner-banner-lead-line)!important;
  max-width:800px!important;
}
.case-study-detail-page .case-tags{margin-top:30px!important;}
.case-study-detail-page .case-tags span{font-size:12.5px!important;padding:9px 13px!important;}

.case-study-detail-page .related-case-panel .related-case-header h2,
.case-study-detail-page .related-case-panel .related-case-footer h3{
  font-family:"Maven Pro",Inter,sans-serif!important;
  font-size:clamp(23px,2vw,30px)!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
  font-weight:700!important;
  color:#111827!important;
}
.case-study-detail-page .related-case-panel .related-case-header{padding:30px 32px 18px!important;}
.case-study-detail-page .related-card-media{height:210px!important;min-height:210px!important;}
.case-study-detail-page .related-card-body{padding:24px 26px 32px!important;min-height:190px!important;}
.case-study-detail-page .related-card-body strong{
  font-family:"Maven Pro",Inter,sans-serif!important;
  font-size:clamp(19px,1.55vw,23px)!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
  font-weight:700!important;
}
.case-study-detail-page .related-card-body p{font-size:14.5px!important;line-height:1.62!important;}
.case-study-detail-page .related-case-footer{padding:30px 32px!important;}
.case-study-detail-page .related-case-footer p{font-size:15.5px!important;line-height:1.65!important;}
.case-study-detail-page .related-case-footer .text-link,
.case-study-detail-page .related-case-footer .btn-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:13px 18px!important;
  border-radius:16px!important;
  border:1px solid rgba(213,65,78,.08)!important;
  background:linear-gradient(135deg,#d5414e,#ea6a75)!important;
  color:#fff!important;
  box-shadow:0 18px 35px rgba(213,65,78,.22)!important;
  font-size:14px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.case-study-detail-page .related-case-footer .text-link:hover,
.case-study-detail-page .related-case-footer .btn-primary:hover{color:#fff!important;transform:translateY(-1px)!important;}

@media(max-width:640px){
  .case-study-detail-page .case-detail-hero{padding:104px 0 58px!important;}
  .case-study-detail-page .case-detail-hero h1{font-size:var(--inner-banner-title-size)!important;line-height:var(--inner-banner-title-line)!important;}
  .case-study-detail-page .case-detail-hero .case-summary{font-size:15.5px!important;}
  .case-study-detail-page .related-card-media{height:170px!important;min-height:170px!important;}
}


/* Case studies page: mapped cards, case study artwork, and scroll reveal */
.case-grid .case-card-deferred{display:none;opacity:0;transform:translateY(18px);}
.case-grid .case-card-deferred.is-visible{display:flex;animation:caseReveal .42s ease forwards;}
@keyframes caseReveal{to{opacity:1;transform:translateY(0);}}
.case-media{background:#141a22;}
.case-media img[src*="case-study-images"]{filter:none;object-fit:cover;}
.case-card:hover .case-media img[src*="case-study-images"]{transform:scale(1.035);}
.case-media .case-tags{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;display:flex;flex-wrap:wrap;gap:8px;}
.case-media .case-tags span{background:rgba(213,65,78,.94);color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 24px rgba(0,0,0,.18);}
.case-media .case-tags span:nth-child(n+2){background:rgba(103,214,219,.18);border-color:rgba(103,214,219,.38);color:#f4ffff;}
.case-card .read-more{display:none!important;}
.case-load-status{min-height:34px;margin:28px auto 0;text-align:center;color:#d5414e;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.case-load-status span{display:inline-flex;align-items:center;gap:10px;}
.case-load-status span:before{content:"";width:9px;height:9px;border-radius:999px;background:#d5414e;box-shadow:18px 0 0 rgba(213,65,78,.45),36px 0 0 rgba(213,65,78,.22);animation:loadingPulse 1.2s infinite ease-in-out;}
.case-load-status.is-complete{display:none;}
@keyframes loadingPulse{50%{opacity:.45;transform:translateY(-2px);}}
@media(max-width:640px){.case-media .case-tags span{font-size:9.5px;padding:6px 8px}.case-media{height:170px}}


/* FINAL QC refinements: mapped case study cards */
.case-grid{align-items:stretch!important;}
.case-card{position:relative!important;text-decoration:none!important;color:inherit!important;min-height:430px!important;background:#fff!important;}
.case-card.case-card-link{cursor:pointer!important;}
.case-card:not(.case-card-link){cursor:default!important;}
.case-media{height:260px!important;min-height:260px!important;background:#0f1720!important;}
.case-media:after{background:linear-gradient(180deg,rgba(0,0,0,0) 36%,rgba(0,0,0,.28) 100%)!important;}
.case-media img[src*="case-study-images"]{width:100%!important;height:100%!important;object-fit:cover!important;filter:none!important;}
.case-media .case-tags{left:18px!important;right:18px!important;bottom:18px!important;gap:8px!important;}
.case-media .case-tags span{background:rgba(213,65,78,.94)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important;box-shadow:0 14px 28px rgba(0,0,0,.18)!important;}
.case-media .case-tags span:nth-child(n+2){background:rgba(103,214,219,.16)!important;border-color:rgba(103,214,219,.48)!important;color:#f5ffff!important;}
.case-body{position:relative!important;min-height:168px!important;padding:30px 26px 28px!important;overflow:hidden!important;background:#fff!important;}
.case-body h3{margin:0!important;font-size:clamp(21px,1.45vw,25px)!important;line-height:1.18!important;letter-spacing:-.025em!important;color:#111827!important;transition:transform .28s ease!important;}
.case-body p{position:absolute!important;left:26px!important;right:26px!important;bottom:26px!important;margin:0!important;color:#667085!important;font-size:15px!important;line-height:1.62!important;opacity:0!important;transform:translateY(22px)!important;transition:opacity .26s ease,transform .26s ease!important;}
.case-card:hover .case-body h3,.case-card:focus-within .case-body h3{transform:translateY(-10px)!important;}
.case-card:hover .case-body p,.case-card:focus-within .case-body p{opacity:1!important;transform:translateY(0)!important;}
.case-stats,.case-stat{display:none!important;}
@media(max-width:1024px){.case-media{height:230px!important;min-height:230px!important}.case-card{min-height:410px!important}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:640px){.case-grid{grid-template-columns:1fr!important}.case-media{height:220px!important;min-height:220px!important}.case-card{min-height:390px!important}.case-body p{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin-top:12px!important;opacity:1!important;transform:none!important}.case-card:hover .case-body h3{transform:none!important;}}

/* Case-study detail CTA hover must match global blue/cyan button hover */
.case-study-detail-page .related-case-footer .btn-primary:hover,
.case-study-detail-page .related-case-footer .btn-primary:focus-visible{
  background:linear-gradient(135deg,var(--teal),#8be5e8)!important;
  border-color:rgba(103,214,219,.45)!important;
  color:#0f1720!important;
  box-shadow:0 18px 35px rgba(103,214,219,.24)!important;
  transform:translateY(-1px)!important;
}

/* Footer social icon consistency */
.footer-social a{width:40px!important;height:40px!important;border-radius:12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-weight:900!important;line-height:1!important;}
.footer-social a svg{width:21px!important;height:21px!important;display:block!important;}
.footer-social .glassdoor-icon svg{width:22px!important;height:22px!important;}
.footer-social a:hover svg{color:#0f1720!important;}

/* Red full-stop consistency for body headings */
main h2 .red-dot, main h3 .red-dot{color:var(--red)!important;}


/* QC update: industry logo marquees */
.ms-logo-proof { overflow: hidden !important; }
.ms-logo-marquee-wrap { width: 100% !important; max-width: 100vw !important; overflow: hidden !important; }
.ms-logo-marquee { will-change: transform; }
.ms-logo-tile img { max-width: 124px !important; max-height: 44px !important; width: auto !important; height: auto !important; }
@media (max-width: 900px) {
  .ms-logo-proof { padding: 42px 0 !important; }
  .ms-logo-marquee-wrap:before, .ms-logo-marquee-wrap:after { width: 48px !important; }
  .ms-logo-tile { min-width: 142px !important; width: 142px !important; height: 76px !important; padding: 10px 14px !important; }
  .ms-logo-tile img { max-width: 108px !important; max-height: 38px !important; }
}
@media (max-width: 560px) {
  .ms-logo-marquee-wrap { gap: 10px !important; }
  .ms-logo-row { gap: 12px !important; }
  .ms-logo-tile { min-width: 124px !important; width: 124px !important; height: 64px !important; border-radius: 14px !important; }
  .ms-logo-tile img { max-width: 96px !important; max-height: 32px !important; }
}


/* QC updates - 21 May */
/* Main menu partner item */
.main-nav > .nav-link[data-route="partners"]{display:inline-flex;align-items:center;padding:13px 14px;border-radius:16px;font-weight:800;color:var(--ink);text-decoration:none;white-space:nowrap;}
.main-nav > .nav-link[data-route="partners"]:hover{background:rgba(213,65,78,.08);color:#d5414e;}

/* Our Story metric alignment - remove inset overlay look on first metric */
.our-story-page .proof-card:first-child .metric,
.proof-card:first-child .metric.metric-first{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;margin-bottom:18px!important;}
.proof-card:first-child{display:flex!important;flex-direction:column!important;justify-content:center!important;}
.proof-card:first-child p{max-width:92%;}

/* Case study industry filters */
.case-filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 34px;}
.case-filter-btn{appearance:none;border:1px solid rgba(16,24,40,.12);background:#fff;color:#111827;border-radius:999px;padding:12px 18px;font-weight:800;font-size:13px;letter-spacing:.01em;cursor:pointer;box-shadow:0 10px 24px rgba(16,24,40,.06);transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;}
.case-filter-btn:hover{transform:translateY(-2px);border-color:rgba(213,65,78,.34);}
.case-filter-btn.is-active{background:#d5414e;color:#fff;border-color:#d5414e;}
.case-grid.is-filtering .case-card-deferred{display:flex!important;opacity:1!important;transform:none!important;}
.case-card.is-filter-hidden{display:none!important;}
.case-load-status.is-filtering{display:none!important;}
@media(max-width:640px){.case-filter-bar{gap:8px}.case-filter-btn{font-size:12px;padding:10px 13px}}

/* Career metrics aligned with Our Story */
.legacy-metrics .metric span{text-transform:none!important;}


/* Top-level Partners menu item */
.main-nav .nav-link-partners{
  display:flex;
  align-items:center;
  height:100%;
  padding:0 18px;
  border-radius:18px;
  color:#111827;
  text-decoration:none;
  font-weight:700;
  transition:background .25s ease, color .25s ease, transform .25s ease;
}
.main-nav .nav-link-partners:hover,
.main-nav .nav-link-partners:focus-visible{
  background:rgba(213,65,78,.10);
  color:#d5414e;
  transform:translateY(-1px);
}

/* Make submenu black-box CTA buttons fully clickable with hover feedback */
.mega-panel .panel-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:42px;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none;
  cursor:pointer;
  transition:background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.mega-panel .panel-action:hover,
.mega-panel .panel-action:focus-visible{
  background:#67d6db;
  color:#101723;
  border-color:#67d6db;
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(103,214,219,.24);
}


/* Final fix: Partners as visible top-level menu item */
.main-nav .nav-item-partners{display:flex!important;align-items:center!important;}
.main-nav .nav-item-partners > .nav-link,
.main-nav > .nav-link-partners{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:13px 14px!important;border-radius:16px!important;font-weight:800!important;color:var(--ink,#111827)!important;text-decoration:none!important;white-space:nowrap!important;}
.main-nav .nav-item-partners > .nav-link:hover,
.main-nav .nav-item-partners > .nav-link:focus-visible,
.main-nav > .nav-link-partners:hover,
.main-nav > .nav-link-partners:focus-visible{background:rgba(213,65,78,.10)!important;color:#d5414e!important;}


/* Partner menu final alignment: standalone link behaves like other top-level menu items */
.main-nav .nav-item-partners > .nav-link.nav-link-partners{
  padding:13px 16px!important;
  border-radius:14px!important;
  font-size:14px!important;
  font-weight:700!important;
  gap:8px!important;
  color:var(--ink)!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.main-nav .nav-item-partners > .nav-link.nav-link-partners:hover,
.main-nav .nav-item-partners > .nav-link.nav-link-partners:focus-visible,
.main-nav .nav-item-partners > .nav-link.nav-link-partners.active,
.main-nav .nav-item-partners > .nav-link.nav-link-partners[aria-current="page"]{
  background:rgba(255,255,255,.82)!important;
  box-shadow:0 14px 30px rgba(15,23,32,.06)!important;
  color:var(--red)!important;
  transform:none!important;
}


/* Partners page: shared logo and CTA refinements */
.partners-page .partner-card {
  min-height: 580px;
}

.partners-page .partner-logo {
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0 0 24px;
}

.partners-page .partner-logo img {
  display: block;
  width: auto;
  max-width: 190px;
  max-height: 54px;
  object-fit: contain;
  background: transparent;
  mix-blend-mode: normal;
}

.partners-page .partner-logo-career {
  height: 66px;
}

.partners-page .partner-logo-career img {
  max-width: 172px;
  max-height: 60px;
  object-position: left center;
}

.partners-page .partner-card h3 {
  min-height: 58px;
}

.partners-page .partners-cta {
  padding: clamp(44px, 4.2vw, 62px) !important;
}

.partners-page .partners-cta h2 {
  max-width: 860px;
  font-size: clamp(34px, 3.1vw, 46px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}

.partners-page .partners-cta p {
  font-size: 16px;
  line-height: 1.65;
}

@media (max-width: 1024px) {
  .partners-page .partner-card h3 {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .partners-page .partner-logo,
  .partners-page .partner-logo-career {
    height: 58px;
    margin-bottom: 20px;
  }

  .partners-page .partner-logo img {
    max-width: 170px;
    max-height: 50px;
  }

  .partners-page .partner-logo-career img {
    max-width: 156px;
    max-height: 54px;
  }

  .partners-page .partners-cta h2 {
    font-size: clamp(30px, 9vw, 38px) !important;
  }
}

/* Partners page: final shared alignment refinements
   Keeps partner cards governed from the global stylesheet and aligns page headings/CTA to our-story scale. */
.partners-page .partners-heading h2{
  font-size:clamp(34px,3.5vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.partners-page .partners-cta h2{
  font-size:clamp(34px,3.5vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.partners-page .partners-cta{
  padding:clamp(46px,5vw,70px) clamp(34px,5vw,66px)!important;
}
.partners-page .partner-logo-career img{
  max-width:180px!important;
  max-height:74px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
}
@media (max-width:760px){
  .partners-page .partners-heading h2,
  .partners-page .partners-cta h2{
    font-size:clamp(30px,8vw,38px)!important;
  }
  .partners-page .partner-logo-career img{
    max-width:160px!important;
    max-height:68px!important;
  }
}


/* Leadership page refinements */
.leadership-footer{position:relative;z-index:2;margin-top:0;}
.regional-profile-grid{margin-bottom:0;}
.leader-social{margin:14px 0 18px;}
.leader-social a{display:inline-flex;align-items:center;gap:10px;color:#d5414e;font-weight:700;text-decoration:none;transition:opacity .25s ease;}
.leader-social a:hover{opacity:.78;}
.leader-social svg{width:18px;height:18px;display:block;}

/* Leadership LinkedIn icon buttons and page order refinements */
.leader-copy{position:relative;}
.leader-social{position:absolute;right:28px;top:28px;margin:0!important;}
.profile-linkedin{width:52px;height:52px;border-radius:16px;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:rgba(103,214,219,.10);border:1px solid rgba(103,214,219,.42);color:#67d6db!important;text-decoration:none!important;box-shadow:0 14px 34px rgba(0,0,0,.10);transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease!important;}
.profile-linkedin:hover{transform:translateY(-2px);background:rgba(103,214,219,.18);border-color:rgba(103,214,219,.72);box-shadow:0 18px 46px rgba(0,0,0,.16);opacity:1!important;}
.profile-linkedin svg{width:24px!important;height:24px!important;display:block;}
.regional-profile-body{position:relative;padding-right:82px;}
.regional-social{position:absolute;right:20px;bottom:22px;width:44px;height:44px;border-radius:14px;}
.regional-social svg{width:21px!important;height:21px!important;}
.leadership-footer{margin-top:0!important;}

@media (max-width: 760px){
  .leader-social{right:22px;top:22px;}
  .profile-linkedin{width:46px;height:46px;border-radius:14px;}
  .regional-profile-body{padding-right:72px;}
  .regional-social{right:18px;bottom:20px;width:42px;height:42px;}
}

/* Leadership update - regional second row and executive LinkedIn position */
.leader-copy{
  position:relative;
  padding-bottom:92px!important;
}
.leader-social{
  position:absolute!important;
  right:28px!important;
  bottom:28px!important;
  top:auto!important;
  margin:0!important;
}
@media (min-width:1101px){
  .regional-profile-grid{
    grid-template-columns:repeat(8, minmax(0, 1fr));
  }
  .regional-profile-grid .regional-profile-card{
    grid-column:span 2;
  }
  .regional-profile-grid .regional-profile-card:nth-child(5){
    grid-column:2 / span 2;
  }
}
@media (max-width:760px){
  .leader-copy{
    padding-bottom:82px!important;
  }
  .leader-social{
    right:22px!important;
    bottom:22px!important;
    top:auto!important;
  }
}


/* Home partners section */
.home-partners-section{
  padding-top:24px;
}

.home-partners-shell{
  background:
    radial-gradient(520px 260px at 8% 0%, rgba(103,214,219,.16), transparent 58%),
    radial-gradient(460px 240px at 96% 100%, rgba(213,65,78,.12), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.66)) !important;
}

.home-partners-top{
  align-items:start;
}

.home-partner-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.home-partner-card{
  min-height:310px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:18px;
  padding:28px;
  border-radius:28px;
  position:relative;
  overflow:hidden;
  text-decoration:none;
  color:#eef5fb;
  background:
    radial-gradient(280px 160px at 12% 8%, rgba(103,214,219,.18), transparent 62%),
    radial-gradient(260px 180px at 100% 100%, rgba(213,65,78,.13), transparent 58%),
    linear-gradient(180deg, #172531 0%, #0f1924 100%);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 22px 54px rgba(8,15,28,.13);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.home-partner-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(103,214,219,.12), transparent 38%, rgba(213,65,78,.10));
  opacity:0;
  transition:opacity .22s ease;
  pointer-events:none;
}

.home-partner-card:hover{
  transform:translateY(-4px);
  border-color:rgba(103,214,219,.36);
  box-shadow:0 30px 76px rgba(8,15,28,.22);
}

.home-partner-card:hover:before{
  opacity:1;
}

.home-partner-logo{
  min-height:56px;
  max-width:220px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  position:relative;
  z-index:1;
}

.home-partner-logo img{
  max-width:210px;
  max-height:58px;
  object-fit:contain;
  background:transparent !important;
}

.home-partner-logo-career img{
  max-height:62px;
}

.home-partner-card h3{
  position:relative;
  z-index:1;
  margin:0;
  color:#fff;
  font-size:26px;
  line-height:1.08;
  letter-spacing:-.03em;
}

.home-partner-card p{
  position:relative;
  z-index:1;
  margin:0;
  color:rgba(232,240,248,.78);
  font-size:16px;
  line-height:1.72;
}

@media(max-width:1080px){
  .home-partner-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:720px){
  .home-partner-grid{
    grid-template-columns:1fr;
  }

  .home-partner-card{
    min-height:auto;
    padding:24px;
  }

  .home-partner-card h3{
    font-size:24px;
  }
}


/* Case study mapping sections */
.case-reference-section{
  padding:64px 0;
  background:radial-gradient(520px 260px at 8% 12%, rgba(103,214,219,.10), transparent 58%), radial-gradient(460px 240px at 92% 84%, rgba(213,65,78,.08), transparent 60%);
}
.case-reference-head{
  max-width:760px;
  margin:0 0 28px;
}
.case-reference-head h2{
  font-size:clamp(34px,4vw,52px);
  margin:8px 0 12px;
}
.case-reference-head p{
  margin:0;
  color:var(--ink-soft);
  font-size:17px;
  line-height:1.65;
}
.case-reference-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.case-reference-card{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:420px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(247,250,253,.76));
  border:1px solid rgba(15,23,32,.08);
  box-shadow:0 18px 42px rgba(8,15,28,.08);
  color:inherit;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.case-reference-card:hover{
  transform:translateY(-6px);
  border-color:rgba(103,214,219,.36);
  box-shadow:0 28px 70px rgba(8,15,28,.15);
}
.case-reference-media{
  height:190px;
  overflow:hidden;
  background:#172233;
}
.case-reference-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.case-reference-card:hover .case-reference-media img{
  transform:scale(1.045);
}
.case-reference-body{
  padding:20px;
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:1;
}
.case-reference-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.case-reference-tags span{
  display:inline-flex;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(103,214,219,.12);
  color:#1b6870;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.case-reference-body h3{
  font-size:22px;
  line-height:1.14;
  margin:0;
}
.case-reference-body p{
  margin:0;
  color:var(--ink-soft);
  font-size:14px;
  line-height:1.58;
}
.case-reference-link{
  margin-top:auto;
  color:var(--red);
  font-weight:800;
  font-size:14px;
}
@media(max-width:1100px){.case-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.case-reference-section{padding:44px 0}.case-reference-grid{grid-template-columns:1fr}.case-reference-card{min-height:auto}.case-reference-media{height:210px}}

/* Phase 1: case studies main page card interaction
   Keeps the title area compact by default and reveals the summary on hover/focus. */
.case-studies-page .case-grid{
  align-items:start!important;
}
.case-studies-page .case-grid .case-card{
  min-height:0!important;
  height:auto!important;
  overflow:hidden!important;
  will-change:transform;
}
.case-studies-page .case-grid .case-media{
  height:260px!important;
  min-height:260px!important;
}
.case-studies-page .case-grid .case-body{
  position:relative!important;
  min-height:0!important;
  padding:24px 26px 24px!important;
  overflow:hidden!important;
  transform:translateY(0)!important;
  transition:transform .28s ease, padding .28s ease, box-shadow .28s ease!important;
  z-index:4!important;
}
.case-studies-page .case-grid .case-body h3{
  margin:0!important;
  transform:none!important;
  transition:transform .28s ease!important;
}
.case-studies-page .case-grid .case-body p{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  max-height:0!important;
  overflow:hidden!important;
  opacity:0!important;
  transform:translateY(12px)!important;
  transition:max-height .32s ease, margin-top .28s ease, opacity .24s ease, transform .28s ease!important;
}
.case-studies-page .case-grid .case-card:hover,
.case-studies-page .case-grid .case-card:focus-within{
  transform:translateY(-8px)!important;
  box-shadow:0 28px 80px rgba(11,20,34,.16)!important;
  border-color:rgba(213,65,78,.30)!important;
}
.case-studies-page .case-grid .case-card:hover .case-body,
.case-studies-page .case-grid .case-card:focus-within .case-body{
  transform:translateY(-14px)!important;
  padding-top:24px!important;
  padding-bottom:28px!important;
  box-shadow:0 -18px 36px rgba(11,20,34,.08)!important;
}
.case-studies-page .case-grid .case-card:hover .case-body h3,
.case-studies-page .case-grid .case-card:focus-within .case-body h3{
  transform:none!important;
}
.case-studies-page .case-grid .case-card:hover .case-body p,
.case-studies-page .case-grid .case-card:focus-within .case-body p{
  max-height:140px!important;
  margin-top:14px!important;
  opacity:1!important;
  transform:translateY(0)!important;
}
@media(max-width:1024px){
  .case-studies-page .case-grid .case-media{height:230px!important;min-height:230px!important;}
  .case-studies-page .case-grid .case-card{min-height:0!important;}
}
@media(max-width:640px){
  .case-studies-page .case-grid .case-media{height:220px!important;min-height:220px!important;}
  .case-studies-page .case-grid .case-body{padding:22px 22px 24px!important;}
  .case-studies-page .case-grid .case-body p{max-height:none!important;margin-top:12px!important;opacity:1!important;transform:none!important;}
  .case-studies-page .case-grid .case-card:hover .case-body{transform:none!important;box-shadow:none!important;}
}


/* Phase 2: case study detail related-card images */
.case-study-detail-page .related-card-media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:18px;}





.partners-page .partner-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease!important;will-change:transform;}
.partners-page .partner-card:hover{transform:translateY(-7px)!important;border-color:rgba(103,214,219,.42)!important;box-shadow:0 30px 90px rgba(17,19,27,.26)!important;}
.partners-page .partner-card:hover:before{opacity:1;}
.partners-page .partner-card:hover .partner-logo img{transform:translateY(-2px);}
.partners-page .partner-logo img{transition:transform .25s ease;}

/* Final launch cleanup: shared carousel, global presence flags, partner CTA/cards */
.trust-carousel-wrap{
  position:relative;
  display:grid;
  gap:14px;
  overflow:hidden;
  padding:10px 0;
  background:transparent;
  border:0;
  margin-bottom:18px;
}
.trust-carousel-wrap:before,.trust-carousel-wrap:after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:72px;
  z-index:2;
  pointer-events:none;
}
.trust-carousel-wrap:before{left:0;background:linear-gradient(90deg,rgba(247,249,252,.98),rgba(247,249,252,0));}
.trust-carousel-wrap:after{right:0;background:linear-gradient(270deg,rgba(250,252,255,.98),rgba(250,252,255,0));}
.logo-marquee,.logo-row{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:22px;
  width:max-content;
  min-width:max-content;
}
.logo-marquee{
  animation:logoMarquee 42s linear infinite;
  will-change:transform;
  backface-visibility:hidden;
  transform:translate3d(0,0,0);
}
.logo-marquee.reverse{animation-direction:reverse;}
.logo-row{flex:0 0 auto;}
.logo-tile{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:176px;
  min-width:176px;
  height:78px;
  padding:14px 24px;
  border-radius:14px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 14px 34px rgba(15,23,42,.08);
  opacity:1;
  transition:opacity .2s ease,transform .2s ease;
}
.logo-tile img{display:block;width:auto;height:auto;max-width:138px;max-height:48px;object-fit:contain;}
.logo-tile:hover{transform:translateY(-1px);}
.trust-carousel-wrap:hover .logo-marquee{animation-play-state:paused;}
.trust-carousel-wrap.industry-logo-carousel{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.trust-carousel-wrap.industry-logo-carousel .logo-marquee,.trust-carousel-wrap.industry-logo-carousel .logo-marquee.reverse{animation-duration:42s;}
@keyframes logoMarquee{from{transform:translate3d(0,0,0);}to{transform:translate3d(-50%,0,0);}}
@media(max-width:900px){.trust-carousel-wrap:before,.trust-carousel-wrap:after{width:48px}.logo-marquee,.logo-row{gap:16px}.logo-tile{width:148px;min-width:148px;height:66px;padding:12px 18px}.logo-tile img{max-width:116px;max-height:40px}}
@media(max-width:560px){.trust-carousel-wrap:before,.trust-carousel-wrap:after{width:36px}.logo-marquee,.logo-row{gap:12px}.logo-tile{width:128px;min-width:128px;height:58px;padding:10px 14px}.logo-tile img{max-width:100px;max-height:34px}}
.industry-page .service-slider .swiper-wrapper{align-items:stretch;}
.industry-page .service-slider .swiper-slide.is-carousel-repeat{visibility:visible;}
.story-page .regional-grid .region-card{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,250,251,.92));border:1px solid rgba(23,24,33,.08);box-shadow:0 18px 54px rgba(17,19,27,.08);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;}
.story-page .regional-grid .region-card:hover{transform:translateY(-4px);border-color:rgba(103,214,219,.34);box-shadow:0 26px 72px rgba(17,19,27,.13);}
.story-page .regional-grid .flag-headimg{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.story-page .regional-grid .flag-headimg .flag-chip{width:64px;height:auto;aspect-ratio:3/2;border-radius:3px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(32,35,45,.10);box-shadow:0 10px 24px rgba(17,19,27,.10);background:#fff;flex:0 0 auto;}
.story-page .regional-grid .flag-headimg .flag-chip img{width:100%;height:100%;object-fit:fill;display:block;border-radius:2px;background:transparent;}
.metric-flags .flag-chip{width:42px;height:28px;flex:0 0 42px;overflow:hidden;border-radius:2px;}
.metric-flags .flag-chip img{width:100%;height:100%;object-fit:fill;background:transparent;border-radius:2px;}
.technopro-grid{
  grid-template-columns:minmax(0,1fr)!important;
  margin-top:14px;
}
.story-page .technopro-grid .region-card{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(220px,.32fr) minmax(0,1fr);
  align-items:center;
  gap:28px;
  padding:28px 32px;
}
.story-page .technopro-grid .flag-headimg,
.story-page .technopro-grid .region-card p{
  margin:0;
}
@media(max-width:720px){
  .story-page .technopro-grid .region-card{
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    padding:24px;
  }
}
.partners-page .partner-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;will-change:transform;}
.partners-page .partner-card:hover{transform:translateY(-7px);border-color:rgba(103,214,219,.42);box-shadow:0 30px 90px rgba(17,19,27,.26);}
.partners-page .partner-card:hover:before{opacity:1;}
.partners-page .partner-card:hover .partner-logo img{transform:translateY(-2px);}
.partners-page .partner-logo img{transition:transform .25s ease;}
.partners-page .partners-cta{background:linear-gradient(135deg,#151923,#252b36);color:#fff;border-radius:28px;padding:66px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;position:relative;overflow:hidden;min-height:auto;}
.partners-page .partners-cta:before{content:"";position:absolute;right:-80px;bottom:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(213,65,78,.32),transparent 70%);}
.partners-page .partners-cta h2{display:none;}
.partners-page .partners-cta p{position:relative;margin:0;max-width:980px;color:rgba(255,255,255,.82);font-size:16px;}
.partners-page .partners-cta .card-kicker{display:none;}
.partners-page .partners-cta .btn{position:relative;}
@media(max-width:980px){.partners-page .partners-cta{grid-template-columns:1fr;padding:44px 28px;}}


/* Final industry carousel balance: low-count industry logo sets repeat mapped logos in both rows without changing homepage/global carousels. */
.trust-carousel-wrap .logo-marquee .logo-row{
  min-width:max-content;
}
/* Case detail snapshot readability: keep values light on dark meta cards. */
.case-study-detail-page .case-meta-card .meta-value{
  color:rgba(255,255,255,.92)!important;
}
.case-study-detail-page .case-meta-card .meta-label{
  color:#67d6db!important;
}
.case-studies-page .case-card[hidden],
.case-studies-page .case-card.is-filter-hidden{
  display:none!important;
}


/* =========================================================
   Global Insights & Case Studies carousel redesign
   Applies to homepage, What We Offer pages, and Industry pages.
   Standard card carousel; no collapsing widths; responsive; filled loop.
========================================================= */
.service-block {
  border-radius: 28px;
  padding: clamp(28px, 4vw, 44px) 0 !important;
  background:
    radial-gradient(360px 220px at 14% 18%, rgba(103, 214, 219, .16), transparent 62%),
    radial-gradient(420px 260px at 88% 8%, rgba(213, 65, 78, .10), transparent 58%),
    linear-gradient(145deg, rgba(15, 26, 40, .99), rgba(31, 44, 64, .96));
  color: #eef5fb;
  border: 1px solid rgba(255, 255, 255, .12);
  box-shadow: 0 28px 70px rgba(7, 13, 24, .24);
  overflow: hidden;
}

.service-header {
  align-items: flex-end;
  gap: 22px;
  margin-bottom: clamp(24px, 3vw, 34px);
  padding: 0 clamp(18px, 3vw, 36px);
}

.service-title h2 {
  max-width: 880px;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.08;
  letter-spacing: -.04em;
}

.service-subtitle {
  color: #8be5e8;
  font-size: clamp(12px, 1.2vw, 14px);
  letter-spacing: .22em;
}

.service-nav {
  flex: 0 0 auto;
}

.service-arrow {
  width: clamp(44px, 4vw, 58px);
  height: clamp(44px, 4vw, 58px);
  border: 1px solid rgba(255,255,255,.26);
  transition: background .25s ease, color .25s ease, transform .25s ease, border-color .25s ease;
}

.service-arrow:hover {
  transform: translateY(-2px);
  border-color: rgba(103, 214, 219, .65);
}

#serviceNext:hover,
#servicePrev:hover {
  background: linear-gradient(135deg, var(--red), #ea6a75);
  color: #fff;
}

.service-slider {
  width: 100%;
  height: auto !important;
  overflow: hidden !important;
  padding: 10px clamp(18px, 3vw, 36px) 26px !important;
}

.service-slider .swiper-wrapper {
  align-items: stretch;
  transition-timing-function: linear !important;
}

.service-slider .swiper-slide,
.service-slider .swiper-slide.is-expanded,
.service-slider .swiper-slide:hover {
  width: clamp(268px, 28vw, 368px) !important;
  height: auto;
  cursor: grab;
  transition: transform .35s ease, opacity .35s ease, filter .35s ease;
}

.service-slider .swiper-slide:active {
  cursor: grabbing;
}

.service-card {
  display: flex;
  min-height: clamp(360px, 42vw, 460px);
  height: 100%;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(6, 13, 24, .82);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
  isolation: isolate;
  transition: border-color .35s ease, box-shadow .35s ease, transform .35s ease;
}

.service-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) saturate(.35) brightness(.72) contrast(1.05);
  transform: scale(1.02);
  transition: filter .45s ease, transform .45s ease, opacity .45s ease;
  opacity: .88;
  z-index: -2;
}

.service-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 13, 24, .08) 0%, rgba(7, 13, 24, .30) 44%, rgba(2, 5, 10, .92) 100%);
  z-index: -1;
}

.service-content {
  position: relative;
  inset: auto;
  margin-top: auto;
  width: 100%;
  padding: clamp(22px, 2.6vw, 30px);
  background: transparent;
  opacity: 1 !important;
  transform: none !important;
  transition: none;
}

.service-content h3 {
  max-width: 94%;
  font-size: clamp(19px, 2vw, 24px);
  line-height: 1.16;
  letter-spacing: -.03em;
  color: #fff;
  margin: 0 0 10px;
}

.service-content p {
  min-height: 64px;
  color: rgba(255, 255, 255, .86);
  font-size: clamp(14px, 1.3vw, 15px);
  line-height: 1.5;
  margin: 0 0 20px;
}

.service-content .btn,
.service-content a.btn {
  position: relative;
  z-index: 2;
  border-radius: 16px;
  padding: 12px 18px;
}

.service-slider .swiper-slide.is-active {
  transform: translateY(-8px);
}

.service-slider .swiper-slide.is-active .service-card {
  border-color: rgba(103, 214, 219, .72);
  box-shadow: 0 26px 58px rgba(0, 0, 0, .36), 0 0 0 1px rgba(103, 214, 219, .18);
}

.service-slider .swiper-slide.is-active .service-card img {
  filter: grayscale(0) saturate(1.05) brightness(.94) contrast(1.03);
  transform: scale(1.07);
  opacity: 1;
}

.service-slider .swiper-slide:not(.is-active) .service-content .btn,
.service-slider .swiper-slide:not(.is-active) .service-content a.btn {
  opacity: .58;
  filter: grayscale(1) brightness(.82);
  box-shadow: none !important;
}

.service-slider .swiper-slide.is-active .service-content .btn,
.service-slider .swiper-slide.is-active .service-content a.btn {
  opacity: 1;
  filter: none;
}

.service-slider .swiper-slide.is-carousel-repeat {
  visibility: visible;
}

@media (max-width: 992px) {
  .service-header {
    align-items: flex-start;
  }

  .service-nav {
    align-self: flex-start;
  }

  .service-slider .swiper-slide,
  .service-slider .swiper-slide.is-expanded,
  .service-slider .swiper-slide:hover {
    width: clamp(260px, 42vw, 330px) !important;
  }
}

@media (max-width: 640px) {
  .service-block {
    border-radius: 22px;
  }

  .service-header {
    flex-direction: row;
    align-items: flex-start;
    padding: 0 18px;
  }

  .service-title {
    flex: 1 1 auto;
  }

  .service-title h2 {
    font-size: clamp(25px, 9vw, 34px);
  }

  .service-nav {
    gap: 8px;
    align-self: flex-start;
  }

  .service-arrow {
    width: 40px;
    height: 40px;
  }

  .service-slider {
    padding: 8px 18px 22px !important;
  }

  .service-slider .swiper-slide,
  .service-slider .swiper-slide.is-expanded,
  .service-slider .swiper-slide:hover {
    width: min(82vw, 320px) !important;
  }

  .service-card {
    min-height: 350px;
    border-radius: 20px;
  }

  .service-content p {
    min-height: auto;
  }
}

/* Reliability fix for the standard Insights & Case Studies carousel controls. */
.service-slider.standard-case-carousel .swiper-wrapper {
  display: flex;
  align-items: stretch;
  gap: 24px;
  transition: none !important;
  will-change: transform;
}

.service-slider.standard-case-carousel .swiper-slide {
  flex: 0 0 auto;
}

.service-block .service-nav,
.service-block .service-arrow {
  position: relative;
  z-index: 10;
}

.service-block .service-arrow {
  cursor: pointer;
  user-select: none;
}

@media (max-width: 1023px) {
  .service-slider.standard-case-carousel .swiper-wrapper { gap: 20px; }
}

@media (max-width: 640px) {
  .service-slider.standard-case-carousel .swiper-wrapper { gap: 16px; }
}

/* Smoothness refinement for Insights & Case Studies carousel: keep image geometry stable while highlighting. */
.service-slider.standard-case-carousel .swiper-wrapper {
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
.service-slider.standard-case-carousel .service-card,
.service-slider.standard-case-carousel .service-card img {
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
.service-slider.standard-case-carousel .service-card img,
.service-slider.standard-case-carousel .swiper-slide.is-active .service-card img {
  transform: translateZ(0) scale(1.02);
}
.service-slider.standard-case-carousel .swiper-slide,
.service-slider.standard-case-carousel .swiper-slide.is-active {
  will-change: transform;
}


/* 3 Jun footer, sitemap, news and contact tooltip refinements */
.footer-top{
  grid-template-columns:minmax(175px,1.15fr) minmax(190px,1.18fr) minmax(160px,1fr) minmax(145px,.86fr) minmax(145px,.86fr)!important;
  gap:clamp(24px,3.6vw,58px)!important;
}
.footer-top .footer-col:last-child{justify-self:start!important;min-width:0!important;width:100%!important;}
.footer-col ul{min-width:0!important;}
.footer-col ul li a{word-break:normal!important;}
.footer-social .glassdoor-icon svg{display:none!important;}
.footer-social .glassdoor-icon span,
.footer-social .glassdoor-icon::before{
  content:"";
  display:block!important;
  width:21px!important;
  height:21px!important;
  background:currentColor!important;
  -webkit-mask:url('../images/glassdoor-icon.png') center / contain no-repeat;
  mask:url('../images/glassdoor-icon.png') center / contain no-repeat;
}
.footer-social .glassdoor-icon:hover span,
.footer-social .glassdoor-icon:hover::before{background:#0f1720!important;}
.footer-social .glassdoor-icon span + *{display:none!important;}
@media(max-width:1180px){
  .footer-top{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:30px 42px!important;}
  .footer-top .footer-col:last-child{grid-column:auto!important;justify-self:start!important;}
}
@media(max-width:760px){
  .mega-footer{overflow:hidden!important;}
  .footer-top{grid-template-columns:1fr!important;gap:0!important;text-align:center!important;}
  .footer-col{width:100%!important;max-width:100%!important;padding:26px 0!important;border-bottom:1px solid rgba(15,23,42,.10)!important;}
  .footer-col:last-child{border-bottom:0!important;}
  .footer-col h4{margin:0 0 18px!important;text-align:center!important;display:block!important;}
  .footer-col ul{display:grid!important;justify-items:center!important;gap:16px!important;margin:0!important;padding:0!important;max-height:none!important;overflow:visible!important;}
  .footer-col ul li{width:100%!important;text-align:center!important;}
  .footer-col ul li a{display:inline-block!important;text-align:center!important;}
  .footer-divider{margin-top:6px!important;}
  .footer-bottom{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important;}
  .footer-links{justify-content:center!important;}
}
.updated-sitemap-main{padding-top:clamp(132px,13vw,168px)!important;padding-bottom:80px!important;background:#f7f9fc!important;}
.sitemap-hero{max-width:920px;margin:0 auto 34px;text-align:left;}
.sitemap-hero h1{font-size:clamp(44px,6.4vw,76px);line-height:.98;letter-spacing:-.055em;margin:8px 0 18px;color:#101828;}
.sitemap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.sitemap-card{background:linear-gradient(180deg,#fff,rgba(255,255,255,.88));border:1px solid rgba(15,23,42,.08);border-radius:26px;padding:28px;box-shadow:0 24px 60px rgba(15,23,42,.07);}
.sitemap-card h2{margin:0 0 8px;color:#111827;font-size:clamp(22px,2.1vw,30px);letter-spacing:-.03em;}
.sitemap-card p{margin:0 0 20px;color:#667085;line-height:1.65;}
.sitemap-card ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;}
.sitemap-card li{padding-top:14px;border-top:1px solid rgba(15,23,42,.08);display:grid;gap:4px;}
.sitemap-card li:first-child{padding-top:0;border-top:0;}
.sitemap-card a{font-weight:800;color:#d5414e;text-decoration:none;}
.sitemap-card a:hover{color:#0f7f8a;}
.sitemap-card span{color:#667085;line-height:1.55;font-size:14.5px;}
.news-card .news-date{display:inline-flex;margin:0 0 10px;padding:6px 10px;border-radius:999px;background:rgba(103,214,219,.14);color:#0f7f8a;font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;}
.news-card.dark-card .news-date{background:rgba(103,214,219,.18);color:#bff9fb;border:1px solid rgba(103,214,219,.28);}
@media(max-width:820px){.sitemap-grid{grid-template-columns:1fr}.sitemap-card{padding:24px}.updated-sitemap-main{padding-top:120px!important}.sitemap-hero{text-align:center}.sitemap-hero h1{font-size:42px;}}


/* 3 Jun correction: news card date stamps removed; footer bottom and Glassdoor icon final fixes */
.footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px 34px!important;
  flex-wrap:wrap!important;
}
.footer-bottom .footer-social{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:14px!important;
  flex:0 0 auto!important;
  order:0!important;
}
.footer-bottom .footer-copy{
  margin:0!important;
  flex:1 1 240px!important;
  text-align:center!important;
  order:0!important;
}
.footer-bottom .footer-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:18px 28px!important;
  flex:1 1 300px!important;
  flex-wrap:wrap!important;
  order:0!important;
}
.footer-social a.glassdoor-icon{
  color:#18202b!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(15,23,42,.12)!important;
}
.footer-social a.glassdoor-icon span,
.footer-social a.glassdoor-icon::before{
  display:none!important;
  content:none!important;
  -webkit-mask:none!important;
  mask:none!important;
}
.footer-social a.glassdoor-icon svg{
  display:block!important;
  width:24px!important;
  height:24px!important;
  color:currentColor!important;
}
.footer-social a.glassdoor-icon:hover{
  color:#ffffff!important;
  background:linear-gradient(135deg,#d5414e,#67d6db)!important;
  border-color:transparent!important;
}
.footer-social a.glassdoor-icon:hover svg{color:#ffffff!important;}
.news-date{display:none!important;}
@media(max-width:900px){
  .footer-bottom{
    justify-content:center!important;
    text-align:center!important;
    gap:18px!important;
  }
  .footer-bottom .footer-social,
  .footer-bottom .footer-copy,
  .footer-bottom .footer-links{
    flex:0 0 100%!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .footer-bottom .footer-social{order:1!important;}
  .footer-bottom .footer-copy{order:2!important;}
  .footer-bottom .footer-links{order:3!important;gap:14px 22px!important;}
}
@media(max-width:520px){
  .footer-bottom .footer-links{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,auto))!important;
    justify-content:center!important;
    row-gap:14px!important;
  }
  .footer-bottom .footer-links a:last-child:nth-child(odd){grid-column:1/-1;}
}

/* 3 Jun final footer icon alignment correction */
.footer-social a.glassdoor-icon{
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#18202b!important;
  background:rgba(255,255,255,.35)!important;
  border:1px solid rgba(51,51,51,.16)!important;
  text-decoration:none!important;
  transition:.25s ease!important;
}
.footer-social a.glassdoor-icon svg,
.footer-social a.glassdoor-icon span{display:none!important;}
.footer-social a.glassdoor-icon::before{
  content:""!important;
  display:block!important;
  width:20px!important;
  height:20px!important;
  background:currentColor!important;
  -webkit-mask:url('../images/glassdoor-icon.png') center / contain no-repeat!important;
  mask:url('../images/glassdoor-icon.png') center / contain no-repeat!important;
}
.footer-social a.glassdoor-icon:hover{
  background:#ffffff!important;
  border-color:rgba(213,65,78,.35)!important;
  color:var(--red)!important;
}
.footer-bottom .footer-social{
  align-items:center!important;
}
@media(max-width:1100px){
  .footer-bottom{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:18px!important;
  }
  .footer-bottom .footer-social,
  .footer-bottom .footer-copy,
  .footer-bottom .footer-links{
    width:100%!important;
    flex:0 0 auto!important;
    justify-content:center!important;
    justify-self:center!important;
    text-align:center!important;
  }
  .footer-bottom .footer-social{order:1!important;display:flex!important;}
  .footer-bottom .footer-copy{order:2!important;}
  .footer-bottom .footer-links{order:3!important;display:flex!important;gap:14px 24px!important;}
}


/* Partner ecosystem update: 2026-06-03
   Keeps a six-partner layout globally, removes SAP, adds Qlik, and compacts
   only the dedicated partners page cards so two rows are visible on standard laptops. */
.home-partner-grid,
.partner-card-grid{
  grid-auto-flow:row;
}
.home-partner-logo img[src*="qlik"],
.partner-logo img[src*="qlik"]{
  max-width:190px!important;
  max-height:58px!important;
  object-fit:contain!important;
}
.partners-page .partner-card-grid{
  gap:20px!important;
}
.partners-page .partner-card{
  min-height:430px!important;
  border-radius:26px!important;
  padding:24px 26px 22px!important;
}
.partners-page .partner-logo{
  height:50px!important;
  margin-bottom:16px!important;
}
.partners-page .partner-logo img{
  max-height:44px!important;
  max-width:180px!important;
  object-fit:contain!important;
}
.partners-page .partner-card h3{
  font-size: 21px!important;
  line-height:1.08!important;
  font-weight:600!important;
}
.partners-page .partner-card p{
  margin:12px 0 14px!important;
  font-size:14px!important;
  line-height:1.45!important;
}
.partners-page .partner-capabilities{
  padding-top:12px!important;
  margin-bottom:14px!important;
}
.partners-page .partner-capabilities li{
  padding:6px 0!important;
  font-size:13.2px!important;
  line-height:1.32!important;
}
.partners-page .partner-card span{
  font-size:13.5px!important;
}
@media (max-width:1180px){
  .partners-page .partner-card{min-height:auto!important;}
}

/* Client logo carousel refinement: larger visible logos, grouped What We Offer rows, and single-line industry carousels. */
.logo-tile{
  width:188px!important;
  min-width:188px!important;
  height:84px!important;
  padding:12px 20px!important;
}
.logo-tile img{
  max-width:164px!important;
  max-height:58px!important;
}
.logo-tile[data-client="Morgan Stanley"] img,
.logo-tile[data-client="Bank of Singapore"] img,
.logo-tile[data-client="Julius Baer"] img,
.logo-tile[data-client="Bualuang Securities"] img,
.logo-tile[data-client="Credit Agricole"] img,
.logo-tile[data-client="Standard Chartered"] img,
.logo-tile[data-client="Toyota Leasing"] img,
.logo-tile[data-client="AB Bank"] img,
.logo-tile[data-client="TymeX"] img,
.logo-tile[data-client="GIC"] img,
.logo-tile[data-client="KBTG"] img,
.logo-tile[data-client="NCS"] img,
.logo-tile[data-client="NRI"] img,
.logo-tile[data-client="Singapore Polytechnic"] img,
.logo-tile[data-client="NTUC Income"] img{
  max-width:174px!important;
  max-height:62px!important;
}
.trust-carousel-wrap.single-line-logos{
  gap:0!important;
  padding-block:14px!important;
}
.trust-carousel-wrap.single-line-logos .logo-marquee.reverse{display:none!important;}
.trust-carousel-wrap.grouped-industry-logos .logo-marquee{animation-duration:52s;}
.trust-carousel-wrap.single-line-logos .logo-marquee{animation-duration:44s!important;}
@media(max-width:900px){
  .logo-tile{width:158px!important;min-width:158px!important;height:70px!important;padding:10px 16px!important;}
  .logo-tile img{max-width:136px!important;max-height:48px!important;}
  .logo-tile[data-client="Morgan Stanley"] img,
  .logo-tile[data-client="Bank of Singapore"] img,
  .logo-tile[data-client="Julius Baer"] img,
  .logo-tile[data-client="Bualuang Securities"] img,
  .logo-tile[data-client="Credit Agricole"] img,
  .logo-tile[data-client="Standard Chartered"] img,
  .logo-tile[data-client="Toyota Leasing"] img,
  .logo-tile[data-client="AB Bank"] img,
  .logo-tile[data-client="TymeX"] img,
  .logo-tile[data-client="GIC"] img,
  .logo-tile[data-client="KBTG"] img,
  .logo-tile[data-client="NCS"] img,
  .logo-tile[data-client="NRI"] img,
  .logo-tile[data-client="Singapore Polytechnic"] img,
  .logo-tile[data-client="NTUC Income"] img{max-width:146px!important;max-height:52px!important;}
}
@media(max-width:560px){
  .logo-tile{width:136px!important;min-width:136px!important;height:62px!important;padding:9px 13px!important;}
  .logo-tile img{max-width:116px!important;max-height:40px!important;}
}

/* Client logo size pass: individually optimised wordmark-heavy logos. */
.logo-tile img{
  max-width:172px!important;
  max-height:62px!important;
}
.logo-tile[data-client="Mercedes-Benz"] img,
.logo-tile[data-client="SCGJWD Logistics"] img,
.logo-tile[data-client="DXC Technology"] img,
.logo-tile[data-client="Eurofins"] img,
.logo-tile[data-client="Safran"] img,
.logo-tile[data-client="Baxter"] img,
.logo-tile[data-client="Capgemini"] img,
.logo-tile[data-client="TCS"] img,
.logo-tile[data-client="J C Penney"] img,
.logo-tile[data-client="Cencora"] img,
.logo-tile[data-client="Cognizant"] img,
.logo-tile[data-client="Tesco"] img,
.logo-tile[data-client="Equinix"] img,
.logo-tile[data-client="Morgan Stanley"] img,
.logo-tile[data-client="Bank of Singapore"] img,
.logo-tile[data-client="Standard Chartered"] img,
.logo-tile[data-client="Julius Baer"] img,
.logo-tile[data-client="Automation Anywhere"] img,
.logo-tile[data-client="Applied Materials"] img,
.logo-tile[data-client="Teleperformance"] img,
.logo-tile[data-client="Schlumberger"] img,
.logo-tile[data-client="Bualuang Securities"] img,
.logo-tile[data-client="Credit Agricole"] img{
  max-width:184px!important;
  max-height:68px!important;
}
@media(max-width:900px){
  .logo-tile img{max-width:142px!important;max-height:52px!important;}
  .logo-tile[data-client="Mercedes-Benz"] img,
  .logo-tile[data-client="SCGJWD Logistics"] img,
  .logo-tile[data-client="DXC Technology"] img,
  .logo-tile[data-client="Eurofins"] img,
  .logo-tile[data-client="Safran"] img,
  .logo-tile[data-client="Baxter"] img,
  .logo-tile[data-client="Capgemini"] img,
  .logo-tile[data-client="TCS"] img,
  .logo-tile[data-client="J C Penney"] img,
  .logo-tile[data-client="Cencora"] img,
  .logo-tile[data-client="Cognizant"] img,
  .logo-tile[data-client="Tesco"] img,
  .logo-tile[data-client="Equinix"] img,
  .logo-tile[data-client="Morgan Stanley"] img,
  .logo-tile[data-client="Bank of Singapore"] img,
  .logo-tile[data-client="Standard Chartered"] img,
  .logo-tile[data-client="Julius Baer"] img,
  .logo-tile[data-client="Automation Anywhere"] img,
  .logo-tile[data-client="Applied Materials"] img,
  .logo-tile[data-client="Teleperformance"] img,
  .logo-tile[data-client="Schlumberger"] img,
  .logo-tile[data-client="Bualuang Securities"] img,
  .logo-tile[data-client="Credit Agricole"] img{max-width:152px!important;max-height:56px!important;}
}
@media(max-width:560px){
  .logo-tile img{max-width:120px!important;max-height:42px!important;}
  .logo-tile[data-client="Mercedes-Benz"] img,
  .logo-tile[data-client="SCGJWD Logistics"] img,
  .logo-tile[data-client="DXC Technology"] img,
  .logo-tile[data-client="Eurofins"] img,
  .logo-tile[data-client="Safran"] img,
  .logo-tile[data-client="Baxter"] img,
  .logo-tile[data-client="Capgemini"] img,
  .logo-tile[data-client="TCS"] img,
  .logo-tile[data-client="J C Penney"] img,
  .logo-tile[data-client="Cencora"] img,
  .logo-tile[data-client="Cognizant"] img,
  .logo-tile[data-client="Tesco"] img,
  .logo-tile[data-client="Equinix"] img,
  .logo-tile[data-client="Morgan Stanley"] img,
  .logo-tile[data-client="Bank of Singapore"] img,
  .logo-tile[data-client="Standard Chartered"] img,
  .logo-tile[data-client="Julius Baer"] img,
  .logo-tile[data-client="Automation Anywhere"] img,
  .logo-tile[data-client="Applied Materials"] img,
  .logo-tile[data-client="Teleperformance"] img,
  .logo-tile[data-client="Schlumberger"] img,
  .logo-tile[data-client="Bualuang Securities"] img,
  .logo-tile[data-client="Credit Agricole"] img{max-width:128px!important;max-height:46px!important;}
}

/* Client logo QC pass: balanced sizing with safer margins. */
.logo-tile,
.ms-logo-tile{
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.logo-tile img,
.ms-logo-tile img{
  display:block!important;
  object-fit:contain!important;
  max-width:158px!important;
  max-height:56px!important;
}
.logo-tile[data-client="Morgan Stanley"] img,
.logo-tile[data-client="Bank of Singapore"] img,
.logo-tile[data-client="Baxter"] img,
.logo-tile[data-client="Cencora"] img,
.logo-tile[data-client="Cognizant"] img,
.logo-tile[data-client="DXC Technology"] img,
.logo-tile[data-client="Equinix"] img,
.logo-tile[data-client="Hitachi"] img,
.logo-tile[data-client="Omron"] img,
.logo-tile[data-client="Siemens"] img,
.logo-tile[data-client="Sony"] img,
.logo-tile[data-client="Thoughtwork"] img,
.logo-tile[data-client="Amadeus"] img,
.logo-tile[data-client="Asiapac"] img,
.logo-tile[data-client="John Deere"] img{
  max-width:166px!important;
  max-height:52px!important;
}
.logo-tile[data-client="Mercedes-Benz"] img,
.logo-tile[data-client="SCGJWD Logistics"] img,
.logo-tile[data-client="Eurofins"] img,
.logo-tile[data-client="Safran"] img,
.logo-tile[data-client="Capgemini"] img,
.logo-tile[data-client="TCS"] img,
.logo-tile[data-client="J C Penney"] img,
.logo-tile[data-client="Tesco"] img,
.logo-tile[data-client="Bualuang Securities"] img,
.logo-tile[data-client="Credit Agricole"] img,
.logo-tile[data-client="AB Bank"] img,
.logo-tile[data-client="Toyota Leasing"] img,
.logo-tile[data-client="Applied Materials"] img,
.logo-tile[data-client="Teleperformance"] img,
.logo-tile[data-client="Schlumberger"] img,
.logo-tile[data-client="Standard Chartered"] img,
.logo-tile[data-client="Julius Baer"] img,
.logo-tile[data-client="NCS"] img,
.logo-tile[data-client="NRI"] img{
  max-width:162px!important;
  max-height:58px!important;
}
.logo-tile[data-client="UOB"] img,
.logo-tile[data-client="RHB"] img,
.logo-tile[data-client="KBTG"] img,
.logo-tile[data-client="MUFG"] img,
.logo-tile[data-client="CIMB"] img,
.logo-tile[data-client="SCG"] img,
.logo-tile[data-client="CP Axtra"] img,
.logo-tile[data-client="DBS"] img,
.logo-tile[data-client="SCB"] img,
.logo-tile[data-client="GIC"] img,
.logo-tile[data-client="NTUC Income"] img,
.logo-tile[data-client="Singapore Polytechnic"] img{
  max-width:154px!important;
  max-height:58px!important;
}
.logo-tile[data-client="IBM"] img,
.logo-tile[data-client="IT One"] img,
.logo-tile[data-client="Lowes"] img,
.logo-tile[data-client="NUS"] img,
.logo-tile[data-client="Roche"] img,
.logo-tile[data-client="SUSS"] img,
.logo-tile[data-client="TymeX"] img{
  max-width:146px!important;
  max-height:58px!important;
}
@media(max-width:900px){
  .logo-tile img,.ms-logo-tile img{max-width:132px!important;max-height:48px!important;}
  .logo-tile[data-client="Morgan Stanley"] img,
  .logo-tile[data-client="Bank of Singapore"] img,
  .logo-tile[data-client="Baxter"] img,
  .logo-tile[data-client="Cencora"] img,
  .logo-tile[data-client="Cognizant"] img,
  .logo-tile[data-client="DXC Technology"] img,
  .logo-tile[data-client="Equinix"] img,
  .logo-tile[data-client="Hitachi"] img,
  .logo-tile[data-client="Omron"] img,
  .logo-tile[data-client="Siemens"] img,
  .logo-tile[data-client="Sony"] img,
  .logo-tile[data-client="Thoughtwork"] img,
  .logo-tile[data-client="Amadeus"] img,
  .logo-tile[data-client="Asiapac"] img,
  .logo-tile[data-client="John Deere"] img{max-width:140px!important;max-height:46px!important;}
  .logo-tile[data-client="UOB"] img,
  .logo-tile[data-client="RHB"] img,
  .logo-tile[data-client="KBTG"] img,
  .logo-tile[data-client="MUFG"] img,
  .logo-tile[data-client="CIMB"] img,
  .logo-tile[data-client="SCG"] img,
  .logo-tile[data-client="CP Axtra"] img,
  .logo-tile[data-client="DBS"] img,
  .logo-tile[data-client="SCB"] img{max-width:128px!important;max-height:48px!important;}
}
@media(max-width:560px){
  .logo-tile img,.ms-logo-tile img{max-width:112px!important;max-height:40px!important;}
  .logo-tile[data-client="Morgan Stanley"] img,
  .logo-tile[data-client="Bank of Singapore"] img,
  .logo-tile[data-client="Baxter"] img,
  .logo-tile[data-client="Cencora"] img,
  .logo-tile[data-client="Cognizant"] img,
  .logo-tile[data-client="DXC Technology"] img,
  .logo-tile[data-client="Equinix"] img,
  .logo-tile[data-client="Hitachi"] img,
  .logo-tile[data-client="Omron"] img,
  .logo-tile[data-client="Siemens"] img,
  .logo-tile[data-client="Sony"] img,
  .logo-tile[data-client="Thoughtwork"] img,
  .logo-tile[data-client="Amadeus"] img,
  .logo-tile[data-client="Asiapac"] img,
  .logo-tile[data-client="John Deere"] img{max-width:118px!important;max-height:38px!important;}
}

/* Final logo balance pass: modestly increase selected smaller logos while preserving safe tile margins. */
.logo-tile[data-client="Accenture"] img,
.logo-tile[data-client="ANZ"] img,
.logo-tile[data-client="Amex"] img,
.logo-tile[data-client="Red Bull"] img,
.logo-tile[data-client="Sony"] img,
.logo-tile[data-client="Hitachi"] img,
.logo-tile[data-client="Omron"] img{
  max-width:162px!important;
  max-height:56px!important;
}
.logo-tile[data-client="SCG"] img,
.logo-tile[data-client="CP Axtra"] img{
  max-width:160px!important;
  max-height:58px!important;
}
@media(max-width:900px){
  .logo-tile[data-client="Accenture"] img,
  .logo-tile[data-client="ANZ"] img,
  .logo-tile[data-client="Amex"] img,
  .logo-tile[data-client="Red Bull"] img,
  .logo-tile[data-client="Sony"] img,
  .logo-tile[data-client="Hitachi"] img,
  .logo-tile[data-client="Omron"] img{max-width:136px!important;max-height:48px!important;}
  .logo-tile[data-client="SCG"] img,
  .logo-tile[data-client="CP Axtra"] img{max-width:132px!important;max-height:48px!important;}
}
@media(max-width:560px){
  .logo-tile[data-client="Accenture"] img,
  .logo-tile[data-client="ANZ"] img,
  .logo-tile[data-client="Amex"] img,
  .logo-tile[data-client="Red Bull"] img,
  .logo-tile[data-client="Sony"] img,
  .logo-tile[data-client="Hitachi"] img,
  .logo-tile[data-client="Omron"] img{max-width:116px!important;max-height:40px!important;}
  .logo-tile[data-client="SCG"] img,
  .logo-tile[data-client="CP Axtra"] img{max-width:114px!important;max-height:40px!important;}
}
/* Final client-logo size adjustment: IBM wordmark needs a little more presence without touching tile margins. */
.logo-tile[data-client="IBM"] img{
  max-width:158px!important;
  max-height:60px!important;
}
@media(max-width:900px){
  .logo-tile[data-client="IBM"] img{max-width:138px!important;max-height:48px!important;}
}


/* 2026-06 CTA standardisation across Who We Are, Partners, Insights, and Careers */
.standard-cta-section,
.partners-cta-section,
.industry-section#contact {
  padding: clamp(42px, 5vw, 72px) 0 !important;
}

.insights-cta,
.industry-cta,
.partners-page .partners-cta,
.career-page-cta,
.standard-page-cta {
  box-sizing: border-box !important;
  min-height: clamp(176px, 14vw, 220px) !important;
  padding: clamp(34px, 4vw, 52px) clamp(28px, 5vw, 64px) !important;
  border-radius: 28px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(20px, 4vw, 42px) !important;
  overflow: hidden !important;
}

.insights-cta h2,
.industry-cta h2,
.partners-page .partners-cta h2,
.career-page-cta h2,
.standard-page-cta h2 {
  margin: 0 !important;
  max-width: 920px !important;
  font-size: clamp(28px, 3.1vw, 44px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
}

.insights-cta p,
.industry-cta p,
.partners-page .partners-cta p,
.career-page-cta p,
.standard-page-cta p {
  margin: 12px 0 0 !important;
  max-width: 980px !important;
  font-size: clamp(15px, 1.2vw, 17px) !important;
  line-height: 1.65 !important;
}

.insights-cta .btn,
.industry-cta .btn,
.partners-page .partners-cta .btn,
.career-page-cta .btn,
.standard-page-cta .btn {
  justify-self: end !important;
  white-space: nowrap !important;
}

.partners-page .partners-cta h2 {
  display: none !important;
}

.partners-page .partners-cta p {
  margin: 0 !important;
}

@media (max-width: 900px) {
  .insights-cta,
  .industry-cta,
  .partners-page .partners-cta,
  .career-page-cta,
  .standard-page-cta {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding: 32px 24px !important;
    text-align: left !important;
  }

  .insights-cta .btn,
  .industry-cta .btn,
  .partners-page .partners-cta .btn,
  .career-page-cta .btn,
  .standard-page-cta .btn {
    justify-self: start !important;
  }
}

@media (max-width: 560px) {
  .standard-cta-section,
  .partners-cta-section,
  .industry-section#contact {
    padding: 32px 0 !important;
  }

  .insights-cta,
  .industry-cta,
  .partners-page .partners-cta,
  .career-page-cta,
  .standard-page-cta {
    border-radius: 22px !important;
    padding: 28px 20px !important;
  }
}
/* fixes */
.industry-hero h1 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 50px !important;
  line-height: 1.1 !important;
  letter-spacing: -.045em !important;
}

.industry-hero p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.72 !important;
}
/* =========================================================
   OUR STORY CTA TYPOGRAPHY MATCH FOR HOMEPAGE
   ========================================================= */

/* 1. Mid-Page Banner Typography Match */
.insights-cta h2 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 42px !important; /* Matches homepage .cta-shell h2 */
  line-height: 1.02 !important;
  letter-spacing: -.03em !important;
  font-weight: 700 !important;
}

.insights-cta p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important; /* Matches homepage .cta-shell p */
  line-height: 1.65 !important;
  color: var(--ink-soft) !important;
}

/* 2. Bottom Closing CTA Block Typography Match */
.industry-cta h2 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 42px !important;
  line-height: 1.02 !important;
  letter-spacing: -.03em !important;
  font-weight: 700 !important;
}

.industry-cta p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important; 
  line-height: 1.65 !important;
  color: var(--ink-soft) !important;
}

/* Ensure Button Typography is Normalized */
.insights-cta .btn, 
.industry-cta .btn {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: normal !important;
}
.glassdoor-icon svg {
  display: inline-block;
  width: 24px;
  height: 24px;
  color: #0f1720;
}
/* =========================================================
   NEWS & UPDATES CTA TYPOGRAPHY MATCH FOR HOMEPAGE
   ========================================================= */

/* 1. Main Page Hero Header Alignment */
.insights-hero h1 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 50px !important; /* Matches index.html landing hero size */
  line-height: 1.06 !important;
  letter-spacing: -.042em !important;
  font-weight: 600 !important;
  text-align: left !important;
}

.insights-hero p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 16.5px !important; /* Matches exact home banner lead layout */
  line-height: 1.72 !important;
  text-align: left !important;
}

/* 2. Subsection Headers Balance (.insights-header) */
.insights-header h2 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 42px !important; /* Matches home page section heading scale */
  line-height: 1.02 !important;
  letter-spacing: -.03em !important;
  font-weight: 700 !important;
}

.insights-header p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important; /* Replicates classic home lead text spacing */
  line-height: 1.65 !important;
  color: var(--ink-soft) !important;
}

/* 3. Bottom Landing Call-to-Action Component */
.standard-page-cta h2 {
  font-family: "Maven Pro", Inter, sans-serif !important;
  font-size: 42px !important; /* Matches index conversion container headings */
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  font-weight: 600 !important;
}

.standard-page-cta p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 18px !important; /* Direct clone of home lead element sizes */
  line-height: 1.65 !important;
}

/* 4. Normalized CTA Action Buttons */
.insights-hero .btn,
.standard-page-cta .btn {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: normal !important;
}

.career-cta-section{padding: 20px 0 50px 0;}
.partner-cta-section{padding: 20px 0 50px 0;}
.contact-cta-section{padding: 50px 0 0 0; text-align: center;}
.leadership-cta-section{padding: 0 0 50px 0; }

@media (max-width: 767px) {
  .ms-hero h1, .industry-hero h1, .page-hero h1, .hero-section h1, .partners-hero h1, .insights-hero h1, .career-hero h1, .career-hero-wrap h1, .careers-hero h1, .case-detail-hero h1 {
        font-size: 36px !important;
}
.insights-cta h2, .industry-cta h2, .partners-page .partners-cta h2, .career-page-cta h2, .standard-page-cta h2 {font-size: 32px !important;}
}
/* 2026-06 targeted QC: individual case study related-card images square edges */
.case-study-detail-page .related-case-panel .related-card-media,
.case-study-detail-page .related-case-panel .related-card-media img {
  border-radius: 0 !important;
}

/* 2026-06 targeted QC: make CTA body copy white on Who We Are, Insights, Careers, and Contact pages */
.story-page .insights-cta p,
.story-page .industry-cta p,
.partners-page .insights-cta p,
.partners-page .standard-page-cta p,
.case-studies-page .insights-cta p,
.careers-page .insights-cta p,
.careers-page .standard-page-cta p,
.contact-page .cta-shell p,
body.news-updates-page .insights-cta p,
body.faq-page .insights-cta p {
  color: #ffffff !important;
}

/* 2026-06-04 responsive logo QC fix
   Tablet/mobile only: keep desktop/laptop logo sizing untouched. */
@media (max-width: 1024px) {
  .page-ai-digital .partner-card-logo {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .trust-carousel-wrap .logo-tile,
  .trust-carousel-wrap .ms-logo-tile {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .trust-carousel-wrap .logo-tile img,
  .trust-carousel-wrap .ms-logo-tile img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: calc(100% - 22px) !important;
    max-height: calc(100% - 18px) !important;
    object-fit: contain !important;
  }
}

@media (max-width: 640px) {
  .trust-carousel-wrap .logo-tile img,
  .trust-carousel-wrap .ms-logo-tile img {
    max-width: calc(100% - 18px) !important;
    max-height: calc(100% - 16px) !important;
  }
}
.footer-social img{ height:18px!important; object-fit: cover;}

/* 9 Jun scoped FAQ/service/menu/news refinements */
.page-ai-digital .ai-data-platform-card .service-subsections{
  display:grid;
  gap:0;
  margin-top:18px;
}
.page-ai-digital .ai-data-platform-card .service-subsection{
  padding:18px 0;
  border-top:1px solid rgba(255,255,255,.14);
}
.page-ai-digital .ai-data-platform-card .service-subsection:first-child{
  padding-top:0;
  border-top:0;
}
.page-ai-digital .ai-data-platform-card .service-subsection h4{
  margin:0 0 8px;
  font-size:15px;
  line-height:1.2;
  font-weight:800;
  color:#fff;
}
.page-ai-digital .ai-data-platform-card .service-subsection p{
  margin:0;
}
.page-ai-digital .ai-data-platform-card .subsection-logo-link{
  display:inline-flex;
  align-items:center;
  margin-top:12px;
}
.page-ai-digital .ai-data-platform-card .subsection-logo-link img{
  display:block;
}
body.news-updates-page .latest-updates-section{
  background:#f6f7f9;
  color:#141a22;
}


/* 2026-06-09 targeted refinements: FAQ links, AI Digital cards, News background */
.faq-page .faq-answer a,
.faq-page .accordion-content a,
.faq-page .faq-card a,
.faq-page main a[href^="mailto:"],
.faq-page main a[href$=".html"],
.faq-page main a[href*="linkedin.com"] {
  color: var(--red, #d5414e) !important;
  font-weight: 800 !important;
  text-decoration-line: underline !important;
  text-decoration-style: dotted !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 4px !important;
}
.faq-page .faq-answer a:hover,
.faq-page .accordion-content a:hover,
.faq-page .faq-card a:hover,
.faq-page main a[href^="mailto:"]:hover,
.faq-page main a[href$=".html"]:hover,
.faq-page main a[href*="linkedin.com"]:hover {
  color: var(--teal, #67d6db) !important;
}

.page-ai-digital .offers-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
}
.page-ai-digital .offers-grid .offer-card,
.page-ai-digital .offers-grid .card-long,
.page-ai-digital .offers-grid .card-tall {
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  min-height: 0 !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) 1fr !important;
  column-gap: 34px !important;
  row-gap: 12px !important;
  align-items: start !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  height: 100% !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img img {
  width: 100% !important;
  height: 100% !important;
  min-height: 300px !important;
  max-height: 420px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  object-fit: cover !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card h3 {
  grid-column: 2 !important;
  margin-bottom: 10px !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .service-subsections {
  grid-column: 2 !important;
  display: grid !important;
  gap: 0 !important;
  margin-top: 0 !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .service-subsection {
  padding: 18px 0 !important;
  border-top: 1px solid rgba(255,255,255,.14) !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .service-subsection:first-child {
  padding-top: 0 !important;
  border-top: 0 !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .partner-card-logo {
  max-width: 150px !important;
  max-height: 42px !important;
  object-fit: contain !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .dialoqa-card-logo {
  max-width: 155px !important;
}
.page-ai-digital .offers-grid .card-long {
  padding: 34px 38px !important;
}
.page-ai-digital .offers-grid .card-long p {
  max-width: 780px !important;
  border-top: 0 !important;
}

body.news-updates-page main {
  background: #f6f7f9 !important;
}
body.news-updates-page .insights-section,
body.news-updates-page .latest-updates-section,
body.news-updates-page .insights-section.soft {
  background: transparent !important;
}

@media (max-width: 900px) {
  .page-ai-digital .offers-grid .ai-data-platform-card {
    display: block !important;
  }
  .page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img img {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
    margin: 0 0 22px !important;
  }
}

/* 2026-06-09 targeted refinements v2: FAQ link colors and AI Digital card alignment */
.faq-page .faq-answer a,
.faq-page .accordion-content a,
.faq-page .faq-card a,
.faq-page main a[href^="mailto:"],
.faq-page main a[href$=".html"],
.faq-page main a[href*="linkedin.com"] {
  color: var(--teal, #67d6db) !important;
  font-weight: 800 !important;
  text-decoration-line: underline !important;
  text-decoration-style: solid !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 4px !important;
}
.faq-page .faq-answer a:hover,
.faq-page .accordion-content a:hover,
.faq-page .faq-card a:hover,
.faq-page main a[href^="mailto:"]:hover,
.faq-page main a[href$=".html"]:hover,
.faq-page main a[href*="linkedin.com"]:hover {
  color: var(--red, #d5414e) !important;
}

.page-ai-digital .offers-grid .ai-data-platform-card {
  align-items: stretch !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img {
  align-self: stretch !important;
  height: auto !important;
  min-height: 100% !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img img {
  height: 100% !important;
  min-height: 560px !important;
  max-height: none !important;
  object-fit: cover !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .service-subsection:last-child {
  padding-bottom: 0 !important;
}
.page-ai-digital .offers-grid .ai-data-platform-card .service-subsection:last-child .subsection-logo-link {
  margin-bottom: 0 !important;
}
@media (max-width: 900px) {
  .page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img {
    min-height: 0 !important;
  }
  .page-ai-digital .offers-grid .ai-data-platform-card .card-tall-img img {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
}


/* Search modal refinement: full-page search index with viewport-safe scrolling */
#searchModal{
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(760px, calc(100vw - 32px))!important;
  max-height:calc(100vh - 48px)!important;
  overflow:hidden!important;
  padding:24px!important;
}
#searchModal .search-dialog{
  max-height:calc(100vh - 96px)!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
}
#searchModal .search-results{
  overflow-y:auto!important;
  max-height:calc(100vh - 260px)!important;
  padding-right:4px!important;
  scrollbar-width:thin;
}
#searchModal .search-result{
  display:block!important;
  text-decoration:none!important;
  color:var(--ink)!important;
}
#searchModal .search-result b{
  color:var(--ink)!important;
}
#searchModal .search-result span{
  display:block!important;
  color:var(--ink-soft)!important;
  line-height:1.45!important;
}
#searchModal .search-result:hover{
  border-color:rgba(213,65,78,.24)!important;
  box-shadow:0 12px 32px rgba(17,19,27,.08)!important;
}
#searchModal .search-result:hover b{
  color:var(--helius-red)!important;
}
#searchModal .search-empty{
  color:#626978;
  margin:8px 0;
}
@media (max-width:640px){
  #searchModal{
    width:calc(100vw - 20px)!important;
    max-height:calc(100vh - 24px)!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  #searchModal .search-dialog{max-height:calc(100vh - 60px)!important;}
  #searchModal .search-results{max-height:calc(100vh - 230px)!important;}
}

/* 2026-06-09 responsive drawer and search modal refinements */
.mobile-drawer{
  inset:82px 18px auto 18px!important;
  max-height:calc(100vh - 104px)!important;
  overflow:auto!important;
  padding:22px!important;
}
.mobile-drawer .drawer-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px 24px!important;
}
.mobile-drawer .drawer-group{
  margin:0!important;
  padding:0!important;
  border-top:0!important;
}
.mobile-drawer .drawer-title{
  font-size:12px!important;
  letter-spacing:.08em!important;
  color:#20232d!important;
  margin:0 0 9px!important;
}
.mobile-drawer .drawer-links{
  gap:6px!important;
}
.mobile-drawer .drawer-links a{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:7px 0!important;
  color:#5f6472!important;
  font-weight:650!important;
  text-decoration:none!important;
  line-height:1.35!important;
}
.mobile-drawer .drawer-links a:hover{
  color:var(--helius-red)!important;
}
@media(max-width:820px){
  .mobile-drawer .drawer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  .mobile-drawer{inset:74px 12px auto 12px!important;padding:18px!important;}
  .mobile-drawer .drawer-grid{grid-template-columns:1fr!important;gap:16px!important;}
}
#searchModal.modal{
  left:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  transform:none!important;
  width:auto!important;
  max-height:none!important;
  overflow:auto!important;
  padding:18px!important;
  align-items:center!important;
  justify-content:center!important;
}
#searchModal .search-dialog{
  width:min(920px, calc(100vw - 36px))!important;
  max-width:920px!important;
  max-height:calc(100vh - 36px)!important;
  min-height:min(760px, calc(100vh - 36px))!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding:30px!important;
}
#searchModal .search-head{flex:0 0 auto!important;}
#searchModal .search-bar{flex:0 0 auto!important;}
#searchModal .search-results{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  padding-right:6px!important;
}
#searchModal .search-result span{
  margin-top:4px!important;
  max-width:100%!important;
}
@media(max-width:640px){
  #searchModal.modal{padding:10px!important;align-items:flex-start!important;}
  #searchModal .search-dialog{
    width:calc(100vw - 20px)!important;
    min-height:auto!important;
    max-height:calc(100vh - 20px)!important;
    padding:20px!important;
  }
  #searchModal .search-results{max-height:calc(100vh - 210px)!important;}
}

/* 2026-06-09 targeted mobile fixes: AI Digital subsection alignment + responsive contact links */
@media (max-width: 900px) {
  .page-ai-digital .offers-grid .ai-data-platform-card h3,
  .page-ai-digital .offers-grid .ai-data-platform-card .service-subsection,
  .page-ai-digital .offers-grid .ai-data-platform-card .service-subsection h4,
  .page-ai-digital .offers-grid .ai-data-platform-card .service-subsection p {
    text-align: center !important;
  }
  .page-ai-digital .offers-grid .ai-data-platform-card .subsection-logo-link {
    display: flex !important;
    justify-content: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .page-ai-digital .offers-grid .ai-data-platform-card .partner-card-logo,
  .page-ai-digital .offers-grid .ai-data-platform-card .dialoqa-card-logo,
  .page-ai-digital .offers-grid .ai-data-platform-card .helius-ai-card-logo {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
.mobile-drawer .drawer-contact-group {
  border-top: 1px solid rgba(31,35,44,.10) !important;
  padding-top: 14px !important;
}
.mobile-drawer .drawer-cta-links .drawer-talk-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  margin-top: 4px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: var(--helius-red, #d5414e) !important;
  color: #fff !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 22px rgba(213,65,78,.22) !important;
}
.mobile-drawer .drawer-cta-links .drawer-talk-link:hover {
  background: var(--helius-teal, #67d6db) !important;
  color: #0f1723 !important;
}


/* 2026-06-09 final footer + FAQ link scope correction */
.footer-social a[aria-label="Glassdoor"] img{
  display:block!important;
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
}
.footer-social a[aria-label="Glassdoor"]::before,
.footer-social a[aria-label="Glassdoor"] span{
  display:none!important;
}
.faq-page .accordion-panel a[href^="mailto:"],
.faq-page .accordion-panel a[href$=".html"],
.faq-page .accordion-panel a[href*="linkedin.com"]{
  color:var(--teal, #67d6db)!important;
  font-weight:800!important;
  text-decoration-line:underline!important;
  text-decoration-style:solid!important;
  text-decoration-thickness:1.5px!important;
  text-underline-offset:4px!important;
}
.faq-page .accordion-panel a[href^="mailto:"]:hover,
.faq-page .accordion-panel a[href$=".html"]:hover,
.faq-page .accordion-panel a[href*="linkedin.com"]:hover{
  color:var(--red, #d5414e)!important;
}
.faq-page .insights-cta a.btn,
.faq-page .insights-cta a.btn-primary{
  color:#ffffff!important;
  text-decoration:none!important;
  text-decoration-line:none!important;
}
.faq-page .insights-cta a.btn:hover,
.faq-page .insights-cta a.btn-primary:hover{
  color:#ffffff!important;
  text-decoration:none!important;
}
.cmm-logo-block{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;}
.footer-bottom .footer-social .cmm-logo-img img{width:80px!important;height:50px!important;padding:2px;display:block!important;object-fit:contain!important;}
@media(max-width:480px){
  .cmm-logo-block{gap:2px;justify-content:center;}
  .footer-bottom .footer-social .cmm-logo-img img{width:64px!important;height:44px!important;}
}
