:root {
  --bg: #f6f7fb;
  --bg-soft: #edf1f7;
  --panel: #ffffff;
  --panel-2: #f3f6fb;
  --line: #dce3ee;
  --text: #172033;
  --muted: #5d6678;
  --accent: #0c2f93;
  --accent-2: #071f63;
  --brand-blue: #0c2f93;
  --shadow: 0 18px 44px rgba(18, 32, 56, 0.12);
}

body {
  color: var(--text);
  background:
    radial-gradient(circle at 10% 4%, rgba(12, 47, 147, 0.08), transparent 30%),
    radial-gradient(circle at 90% 0%, rgba(12, 47, 147, 0.08), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, var(--bg) 100%);
}

a,
.menu a.active {
  color: inherit;
}

.topbar,
.topbar.topbar-compact {
  background: rgba(255, 255, 255, 0.9);
  border-bottom-color: rgba(23, 32, 51, 0.12);
  box-shadow: 0 10px 30px rgba(18, 32, 56, 0.07);
}

.menu,
.menu .menu-dropdown summary,
.service-context-nav,
.menu-dropdown-panel a {
  color: #3d4658;
}

.menu a:hover,
.menu .menu-dropdown summary:hover,
.menu .menu-dropdown[open] summary,
.menu .menu-dropdown.is-current summary,
.menu .menu-current,
.menu-dropdown-panel .menu-dropdown-current,
.service-context-nav span,
.service-context-nav a:hover,
.lang-link:hover,
footer a:hover {
  color: var(--text);
}

.menu .menu-current,
.menu .menu-dropdown.is-current summary,
.menu-dropdown-panel .menu-dropdown-current,
.service-context-nav span {
  border-color: rgba(12, 47, 147, 0.22);
}

.menu .menu-current,
.menu .menu-dropdown.is-current summary,
.menu-dropdown-panel .menu-dropdown-current {
  border-bottom-color: #c1121f;
}

.menu .menu-dropdown.is-current summary:hover,
.menu .menu-dropdown.is-current[open] summary {
  color: var(--text);
  border-bottom-color: #c1121f;
}

.menu-dropdown-panel,
.menu-toggle,
.lang-switch,
.service-context-nav a,
.btn-ghost,
.hero-chip,
[class*="-tag-list"] span,
.ai-tech-list span {
  border-color: var(--line);
  background: rgba(255, 255, 255, 0.74);
  color: #30394b;
}

.menu-dropdown-panel {
  background: #ffffff;
}

@media (min-width: 761px) {
  .topbar.service-menu-open {
    box-shadow: 0 18px 38px rgba(18, 32, 56, 0.09);
  }

  .menu-dropdown-panel {
    background: transparent;
  }

  .menu-dropdown-panel a,
  .menu-dropdown-panel .menu-dropdown-current {
    border: 0;
    background: transparent;
  }

  .menu-dropdown-panel .menu-dropdown-current {
    border-bottom: 1px solid currentColor;
    border-bottom-color: #c1121f;
  }

  .menu-dropdown-panel a:hover {
    background: transparent;
  }
}

.menu-toggle {
  color: var(--text);
}

.lang-link {
  color: #596274;
}

.lang-link.is-active {
  background: var(--accent);
  color: #ffffff;
}

.btn-primary {
  background: var(--accent);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(12, 47, 147, 0.18);
}

.btn-primary:hover {
  background: var(--accent-2);
}

.btn-ghost:hover {
  border-color: rgba(12, 47, 147, 0.34);
  background: rgba(12, 47, 147, 0.06);
  color: var(--brand-blue);
}

.hero,
.ai-hero,
.appsys-hero,
.cyber-hero,
.form-hero,
.contact-hero,
.career-hero,
.insights-hero,
.insight-article-hero,
.coe-hero,
.cp-hero,
.gp-hero,
.cx-hero,
.pd-hero,
.po-hero,
.ge-hero,
.lt-hero,
.qa-hero,
.bf-hero,
.bu-hero,
.od-hero {
  background: transparent;
}

@media (min-width: 761px) {
  .hero,
  .ai-hero,
  .appsys-hero,
  .cyber-hero,
  .form-hero,
  .contact-hero,
  .career-hero,
  .insights-hero,
  .insight-article-hero,
  .coe-hero,
  .cp-hero,
  .gp-hero,
  .cx-hero,
  .pd-hero,
  .po-hero,
  .ge-hero,
  .lt-hero,
  .qa-hero,
  .bf-hero,
  .bu-hero,
  .od-hero {
    box-sizing: border-box;
    min-height: calc(100svh - 78px);
    height: calc(100svh - 78px);
    display: grid;
    align-items: center;
  }
}

.hero::before,
.ai-hero::before,
.appsys-hero::before,
.cyber-hero::before,
.contact-hero::before,
.career-hero::before,
.insights-hero::before,
.insight-article-hero::before,
.coe-hero::before,
.cp-hero::before,
.gp-hero::before,
.cx-hero::before,
.pd-hero::before,
.po-hero::before,
.ge-hero::before,
.lt-hero::before,
.qa-hero::before,
.bf-hero::before,
.bu-hero::before,
.od-hero::before {
  opacity: 1;
  filter: none;
}

.hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.82) 42%, rgba(248, 250, 253, 0.38) 70%, rgba(248, 250, 253, 0.08) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(229, 235, 245, 0.22)),
    url("../images/hero/home-hero.jpg") center/cover no-repeat;
}

.ai-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1551434678-e076c223a692.jpg") center/cover no-repeat;
}

.appsys-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1498050108023-c5249f4df085.jpg") center/cover no-repeat;
}

.cyber-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1516116216624-53e697fedbea.jpg") center/cover no-repeat;
}

.contact-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1555949963-aa79dcee981c.jpg") center/cover no-repeat;
}

.career-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1555949963-ff9fe0c870eb.jpg") center/cover no-repeat;
}

.coe-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1451187580459-43490279c0fa.jpg") center/cover no-repeat;
}

.cp-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/z8kriatLFdA.jpg") center/cover no-repeat;
}

.gp-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/bSlHKWxxXak.jpg") center/cover no-repeat;
}

.cx-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1557804506-669a67965ba0.jpg") center/cover no-repeat;
}

.pd-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1553877522-43269d4ea984.jpg") center/cover no-repeat;
}

.po-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1516321318423-f06f85e504b3.jpg") center/cover no-repeat;
}

.ge-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1522202176988-66273c2fd55f.jpg") center/cover no-repeat;
}

.lt-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1516321497487-e288fb19713f.jpg") center/cover no-repeat;
}

.qa-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1454165804606-c3d57bc86b40.jpg") center/cover no-repeat;
}

.bf-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1461749280684-dccba630e2f6.jpg") center/cover no-repeat;
}

.bu-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1520607162513-77705c0f0d4a.jpg") center/cover no-repeat;
}

.od-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1554224154-26032ffc0d07.jpg") center/cover no-repeat;
}

.insights-hero,
.insight-article-hero {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 253, 0.94) 46%, rgba(248, 250, 253, 0.58) 70%, rgba(248, 250, 253, 0.16) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(229, 235, 245, 0.28)),
    url("../images/hero/home-hero.jpg") center/cover no-repeat;
}

.insights-hero {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 253, 0.94) 46%, rgba(248, 250, 253, 0.58) 70%, rgba(248, 250, 253, 0.16) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(229, 235, 245, 0.28)),
    url("../images/unsplash/9XtKSci9crg.jpg") center/cover no-repeat;
}

.insights-hero {
  color: #101a30;
}

.insights-hero-content {
  width: min(1180px, calc(100% - 64px));
  max-width: 1180px;
  padding: 0;
}

.insights-hero .eyebrow {
  margin: 0 0 0.9rem;
  color: #18369a;
  font-size: clamp(0.78rem, 0.9vw, 0.88rem);
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.insights-hero h1 {
  max-width: 18ch;
  color: #101a30;
  font-size: clamp(2.35rem, 4.4vw, 4.15rem);
  line-height: 1.02;
}

.insights-hero p:not(.eyebrow) {
  max-width: 62ch;
  margin-top: 1.25rem;
  color: #344057;
  font-size: clamp(1.02rem, 1.2vw, 1.18rem);
  line-height: 1.62;
}

.insights-hero .hero-actions {
  margin-top: clamp(1.45rem, 2.6vw, 2rem);
}

.hero::after,
.ai-service-card::after,
.cta-box::after {
  background: radial-gradient(circle at center, rgba(12, 47, 147, 0.13), transparent 64%);
}

.hero h1,
[class*="-hero"] h1,
.insight-article-hero h1,
.section-head h2,
.cta-box h2,
[class*="-wrap"] h2,
[class*="-box"] h2,
[class*="-text"]:not([class*="-hero-text"]):not(.eyebrow-text) h2,
[class*="-visual"] h3,
[class*="-panel"] h2,
[class*="-card"] h2,
[class*="-card"] h3,
[class*="-item"] h3,
[class*="-stage"] h3,
[class*="-block"] h2,
.article-body h2,
.article-aside h2,
.footer-title {
  color: #132039;
}

.hero p,
[class*="-hero-text"],
[class*="-hero"] p,
.eyebrow,
[class*="-eyebrow"],
.ai-breadcrumb,
.section-head p,
[class*="-label"],
[class*="-card"] p,
[class*="-item"] p,
[class*="-stage"] p,
[class*="-block"] p,
[class*="-text"]:not([class*="-hero-text"]):not(.eyebrow-text) p,
[class*="-visual"] p,
[class*="-wrap"] p,
[class*="-box"] p,
[class*="-panel"] p,
[class*="-list"] li,
[class*="-steps"] li,
[class*="-checklist"] li,
[class*="-metrics"] span,
.ai-section-note,
.article-lede,
.article-body p,
.article-aside p,
.form-note,
.check-field,
footer p,
footer a,
.legal {
  color: #465168;
}

.hero h1,
[class*="-hero"] h1,
.insight-article-hero h1 {
  color: #101a30;
}

.hero p,
[class*="-hero-text"],
[class*="-hero"] p,
.article-lede {
  color: #344057;
}

.section-head {
  display: grid;
  grid-template-columns: minmax(0, 760px);
  justify-content: start;
  align-items: start;
  gap: 0.7rem;
  margin-bottom: 1.75rem;
}

.section-head h2 {
  max-width: 20ch;
}

.section-head p {
  max-width: 66ch;
  padding-left: 0.95rem;
  border-left: 2px solid rgba(12, 47, 147, 0.22);
  color: #465168;
}

.eyebrow,
[class*="-eyebrow"],
.ai-breadcrumb,
.section-kicker {
  color: #526078;
}

.eyebrow-text {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #526078;
  padding: 0;
}

.eyebrow-dot,
[class*="-list"] li::before,
[class*="-checklist"] li::before,
.ai-assessment-list li::before,
.ai-outputs-list li::before,
.appsys-list li::before,
.cyber-list li::before {
  background: var(--accent);
}

.ai-focus,
.card,
.pressure-card,
.why-card,
.pillar-panel,
.pillar-item,
.hero-panel,
.form-panel,
.form-hero-side,
.cookie-consent-inner,
.cookie-modal-card,
.insight-article-card,
.article-aside,
.article-end-cta,
.coe-prose,
.coe-cta-inner,
[class*="-hero-panel"],
[class*="-block"],
[class*="-card"],
[class*="-stage"],
[class*="-item"],
[class*="-text"]:not([class*="-hero-text"]):not(.eyebrow-text),
[class*="-visual"],
[class*="-wrap"],
[class*="-box"],
[class*="-list"] details,
[class*="-metrics"] div {
  border-color: var(--line);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 253, 0.98));
  box-shadow: var(--shadow);
}

.ai-priority .ai-focus p {
  color: #344057;
}

.ai-block,
.pressure-card,
.ai-decision-card,
.ai-custom-card,
.ai-training-card,
.ai-faq-list details {
  position: relative;
  overflow: hidden;
  border-color: rgba(12, 47, 147, 0.13);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 255, 0.96));
}

.ai-block,
.pressure-card,
.ai-decision-card,
.ai-custom-card,
.ai-training-card {
  padding: 1.05rem;
}

.ai-block::before,
.pressure-card::before,
.ai-decision-card::before,
.ai-custom-card::before,
.ai-training-card::before {
  content: "";
  display: block;
  position: relative;
  inset: auto;
  z-index: 1;
  width: 100%;
  height: 116px;
  border-radius: 12px;
  margin: 0 0 0.9rem;
  border: 1px solid rgba(12, 47, 147, 0.12);
  background-size: cover;
  background-position: center;
  box-shadow: none;
  color: transparent;
  font-size: 0;
  line-height: 0;
  pointer-events: none;
}

.ai-block::before {
  height: 132px;
}

.ai-two-col .ai-block:nth-child(1)::before {
  background-image:
    linear-gradient(140deg, rgba(12, 47, 147, 0.1), rgba(12, 47, 147, 0.02)),
    url("../images/unsplash/1517048676732-d65bc937f952.jpg");
}

.ai-two-col .ai-block:nth-child(2)::before {
  background-image:
    linear-gradient(140deg, rgba(12, 47, 147, 0.1), rgba(12, 47, 147, 0.02)),
    url("../images/unsplash/1521791136064-7986c2920216.jpg");
}

.ai-two-col {
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

.ai-intro .container.ai-two-col {
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  padding-inline: 0;
}

.ai-two-col .ai-block {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr);
  gap: clamp(1.25rem, 3vw, 2.4rem);
  align-items: center;
  min-height: 560px;
  border-inline: 0;
  border-radius: 0;
  padding-block: clamp(1.25rem, 2vw, 1.7rem);
  padding-inline: 0 max(clamp(1.5rem, 3vw, 3rem), calc((100vw - 1200px) / 2 + 2rem));
}

.ai-two-col .ai-block:nth-child(2) {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  min-height: 560px;
  padding-inline: max(clamp(1.5rem, 3vw, 3rem), calc((100vw - 1200px) / 2 + 2rem)) 0;
}

.ai-two-col .ai-block:nth-child(1) {
  grid-template-rows: 1fr auto auto 1fr;
}

.ai-two-col .ai-block::before {
  grid-row: 1 / span 4;
  height: 100%;
  min-height: 510px;
  margin: 0;
}

.ai-two-col .ai-block:nth-child(1)::before {
  border-left: 0;
  border-radius: 0 14px 14px 0;
}

.ai-two-col .ai-block:nth-child(2)::before {
  grid-column: 2;
  border-right: 0;
  border-radius: 14px 0 0 14px;
}

.ai-two-col .ai-block h2 {
  align-self: end;
  font-size: clamp(1.55rem, 2.6vw, 2.35rem);
  line-height: 1.08;
  max-width: 15ch;
  margin-bottom: 0;
}

.ai-two-col .ai-block p {
  max-width: 52ch;
  font-size: clamp(1rem, 1.25vw, 1.16rem);
  line-height: 1.65;
}

.ai-two-col .ai-block:nth-child(1) h2 {
  grid-row: 2;
  justify-self: start;
  text-align: left;
  transform: none;
}

.ai-two-col .ai-block:nth-child(1) p {
  grid-row: 3;
  justify-self: start;
  text-align: left;
  transform: none;
}

.ai-two-col .ai-block:nth-child(2) p + p {
  max-width: 48ch;
  margin-top: 0.2rem;
  padding: 1rem 1.05rem;
  border-left: 3px solid rgba(12, 47, 147, 0.34);
  border-radius: 0 12px 12px 0;
  background: rgba(12, 47, 147, 0.055);
  color: #344057;
  font-weight: 650;
}

.pressure-grid .pressure-card:nth-child(1)::before {
  background-image: url("../images/unsplash/1487058792275-0ad4aaf24ca7.jpg");
}

.pressure-grid .pressure-card:nth-child(2)::before {
  background-image: url("../images/unsplash/1516321318423-f06f85e504b3.jpg");
}

.pressure-grid .pressure-card:nth-child(3)::before {
  background-image: url("../images/unsplash/1531297484001-80022131f5a1.jpg");
}

.pressure-grid .pressure-card:nth-child(4)::before {
  background-image: url("../images/unsplash/1526628953301-3e589a6a8b74.jpg");
}

.pressure-grid .pressure-card:nth-child(5)::before {
  background-image: url("../images/unsplash/1450101499163-c8848c66ca85.jpg");
}

.pressure-grid .pressure-card:nth-child(6)::before {
  background-image: url("../images/unsplash/1550751827-4bd374c3f58b.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(1)::before {
  background-image: url("../images/unsplash/1623652554515-91c833e3080e.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(2)::before {
  background-image: url("../images/unsplash/1522202176988-66273c2fd55f.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(3)::before {
  background-image: url("../images/unsplash/1498050108023-c5249f4df085.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(4)::before {
  background-image: url("../images/unsplash/1758873271740-f1fd6c6f1524.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(5)::before {
  background-image: url("../images/unsplash/1556761175-b413da4baf72.jpg");
}

.ai-decisions-grid .ai-decision-card:nth-child(6)::before {
  background-image: url("../images/unsplash/1751448555253-f39c06e29d82.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(1)::before {
  background-image: url("../images/unsplash/1552581234-26160f608093.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(2)::before {
  background-image: url("../images/unsplash/1629904853893-c2c8981a1dc5.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(3)::before {
  background-image: url("../images/unsplash/1554224154-26032ffc0d07.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(4)::before {
  background-image: url("../images/unsplash/1552664730-d307ca884978.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(5)::before {
  background-image: url("../images/unsplash/1639322537228-f710d846310a.jpg");
}

.ai-custom-grid .ai-custom-card:nth-child(6)::before {
  background-image: url("../images/unsplash/1531498860502-7c67cf02f657.jpg");
}

.ai-training-grid .ai-training-card:nth-child(1)::before {
  background-image: url("../images/unsplash/1507209696998-3c532be9b2b5.jpg");
}

.ai-training-grid .ai-training-card:nth-child(2)::before {
  background-image: url("../images/unsplash/1743834147172-37c12011b321.jpg");
}

.ai-training-grid .ai-training-card:nth-child(3)::before {
  background-image: url("../images/unsplash/1573167507387-6b4b98cb7c13.jpg");
}

.pressure-card::after,
.ai-decision-card::after,
.ai-custom-card::after,
.ai-training-card::after,
.ai-service-card::after,
.ai-custom-card h3::before {
  content: none;
}

.ai-faq-list details {
  padding-left: 1.1rem;
  border-left: 3px solid rgba(12, 47, 147, 0.28);
}

[class*="-faq-list"] {
  display: grid;
  gap: 0.85rem;
  max-width: 960px;
  margin-inline: auto;
}

[class*="-faq-list"] details {
  overflow: hidden;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-left: 3px solid rgba(12, 47, 147, 0.34);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

[class*="-faq-list"] summary {
  position: relative;
  display: block;
  list-style: none;
  cursor: pointer;
  padding: 1.05rem 3.15rem 1.05rem 1.2rem;
  color: #101a31;
  font-family: "Sora", sans-serif;
  font-size: clamp(1.05rem, 1.2vw, 1.18rem);
  font-weight: 700;
  line-height: 1.35;
}

[class*="-faq-list"] summary::-webkit-details-marker {
  display: none;
}

[class*="-faq-list"] summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 1.1rem;
  width: 1.7rem;
  height: 1.7rem;
  transform: translateY(-50%);
  border-radius: 999px;
  background: rgba(12, 47, 147, 0.08);
  color: var(--accent);
  display: grid;
  place-items: center;
  font-family: "Manrope", sans-serif;
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

[class*="-faq-list"] details[open] summary {
  border-bottom: 1px solid rgba(12, 47, 147, 0.1);
}

[class*="-faq-list"] details[open] summary::after {
  content: "-";
  transform: translateY(-50%) rotate(180deg);
  background: var(--accent);
  color: #ffffff;
}

[class*="-faq-list"] details p {
  max-width: 78ch;
  margin: 0;
  padding: 1.05rem 1.2rem 1.2rem;
  color: #465168;
  font-size: clamp(1.02rem, 1.08vw, 1.1rem);
  line-height: 1.66;
}

.ai-intro,
.pressure-section,
.ai-decisions,
.ai-assessment,
.ai-services,
.ai-custom-apps,
.ai-outputs,
.ai-training,
.ai-data,
.ai-gallery,
.ai-industry,
.ai-faq,
.ai-cta {
  padding-block: clamp(3.2rem, 6vw, 5.25rem);
}

.ai-intro,
.ai-decisions,
.ai-custom-apps,
.ai-data,
.ai-cta {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(249, 251, 255, 0.96));
}

.pressure-section,
.ai-services,
.ai-training,
.ai-faq {
  border-block: 1px solid rgba(12, 47, 147, 0.08);
  background: linear-gradient(180deg, #edf2f9 0%, #f5f8fc 100%);
}

.ai-assessment,
.ai-outputs,
.ai-gallery,
.ai-industry {
  border-block: 1px solid rgba(12, 47, 147, 0.1);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(241, 246, 253, 0.98) 52%, rgba(232, 239, 249, 0.96) 100%);
}

.ai-intro + .pressure-section,
.pressure-section + .ai-decisions,
.ai-decisions + .ai-assessment,
.ai-assessment + .ai-services,
.ai-services + .ai-custom-apps,
.ai-custom-apps + .ai-outputs,
.ai-outputs + .ai-training,
.ai-training + .ai-data,
.ai-data + .ai-gallery,
.ai-gallery + .ai-industry,
.ai-industry + .ai-faq,
.ai-faq + .ai-cta {
  margin-top: 0;
}

.ai-priority,
.pillars,
.cta,
.appsys-intro,
.appsys-lifecycle,
.appsys-delivery,
.appsys-models,
.appsys-industry,
.appsys-faq,
.appsys-cta,
.cyber-intro,
.cyber-stages,
.cyber-resilience,
.cyber-industry,
.cyber-faq,
.cyber-cta,
.insights-intro,
.insights-upcoming,
.insights-cta,
.form-section {
  padding-block: clamp(3.2rem, 6vw, 5.25rem);
}

.ai-priority,
.appsys-intro,
.appsys-delivery,
.appsys-industry,
.cyber-intro,
.cyber-resilience,
.insights-intro {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(249, 251, 255, 0.96));
}

.pillars,
.appsys-lifecycle,
.appsys-faq,
.cyber-stages,
.cyber-faq,
.insights-upcoming,
.form-section {
  border-block: 1px solid rgba(12, 47, 147, 0.08);
  background: linear-gradient(180deg, #edf2f9 0%, #f5f8fc 100%);
}

.cta,
.appsys-models,
.appsys-cta,
.cyber-industry,
.cyber-cta,
.insights-cta {
  border-block: 1px solid rgba(12, 47, 147, 0.1);
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(241, 246, 253, 0.98) 52%, rgba(232, 239, 249, 0.96) 100%);
}

.ai-priority + .pillars,
.appsys-intro + .appsys-lifecycle,
.appsys-lifecycle + .appsys-delivery,
.appsys-delivery + .appsys-models,
.appsys-models + .appsys-industry,
.appsys-industry + .appsys-faq,
.appsys-faq + .appsys-cta,
.cyber-intro + .cyber-stages,
.cyber-stages + .cyber-industry,
.cyber-industry + .cyber-resilience,
.cyber-resilience + .cyber-industry,
.cyber-industry + .cyber-faq,
.cyber-faq + .cyber-cta,
.insights-intro + .insights-upcoming,
.insights-upcoming + .insights-cta {
  margin-top: 0;
}

.pressure-grid,
.ai-decisions-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pressure-card,
.ai-decision-card {
  display: grid;
  grid-template-columns: minmax(145px, 0.42fr) minmax(0, 1fr);
  column-gap: 1rem;
  align-items: start;
  min-height: 188px;
}

.pressure-card::before,
.ai-decision-card::before {
  grid-row: 1 / span 4;
  height: 100%;
  min-height: 156px;
  margin: 0;
}

.pressure-card strong,
.ai-decision-card h3 {
  margin-top: 0.15rem;
}

@media (prefers-reduced-motion: no-preference) {
  [data-reveal] {
    transform: translateY(28px) scale(0.99);
    transition:
      opacity 680ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 680ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  [data-reveal].show {
    transform: translateY(0) scale(1);
  }

  .offering-grid .card[data-reveal],
  .why-grid .why-card[data-reveal],
  .appsys-stage-grid .appsys-stage[data-reveal],
  .appsys-model-grid .appsys-model-card[data-reveal],
  .cyber-stage-grid .cyber-stage[data-reveal],
  .ai-services-grid .ai-service-card[data-reveal],
  .pressure-grid .pressure-card[data-reveal],
  .ai-decisions-grid .ai-decision-card[data-reveal],
  .ai-custom-grid .ai-custom-card[data-reveal],
  .ai-training-grid .ai-training-card[data-reveal],
  .ai-gallery-grid .ai-gallery-card[data-reveal] {
    transform: translateY(38px) scale(0.975);
    transition:
      opacity 760ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 760ms cubic-bezier(0.22, 1, 0.36, 1),
      border-color 220ms ease,
      box-shadow 220ms ease;
  }

  .offering-grid .card[data-reveal].show,
  .why-grid .why-card[data-reveal].show,
  .appsys-stage-grid .appsys-stage[data-reveal].show,
  .appsys-model-grid .appsys-model-card[data-reveal].show,
  .cyber-stage-grid .cyber-stage[data-reveal].show,
  .ai-services-grid .ai-service-card[data-reveal].show,
  .pressure-grid .pressure-card[data-reveal].show,
  .ai-decisions-grid .ai-decision-card[data-reveal].show,
  .ai-custom-grid .ai-custom-card[data-reveal].show,
  .ai-training-grid .ai-training-card[data-reveal].show,
  .ai-gallery-grid .ai-gallery-card[data-reveal].show {
    transform: translateY(0) scale(1);
  }

  .ai-block::before,
  .pressure-card::before,
  .ai-decision-card::before,
  .ai-service-card::before,
  .ai-custom-card::before,
  .ai-training-card::before,
  .ai-gallery-card::before,
  .appsys-stage::before,
  .appsys-model-card::before,
  .appsys-delivery-visual::before,
  .cyber-stage::before,
  .cyber-resilience-visual::before {
    transform: scale(1.055);
    transform-origin: center;
    transition:
      transform 1200ms cubic-bezier(0.22, 1, 0.36, 1),
      filter 220ms ease;
  }

  .ai-block.show::before,
  .pressure-card.show::before,
  .ai-decision-card.show::before,
  .ai-service-card.show::before,
  .ai-custom-card.show::before,
  .ai-training-card.show::before,
  .ai-gallery-card.show::before,
  .appsys-stage.show::before,
  .appsys-model-card.show::before,
  .appsys-delivery-visual.show::before,
  .cyber-stage.show::before,
  .cyber-resilience-visual.show::before {
    transform: scale(1);
  }

  .pillar-media[data-reveal],
  .appsys-delivery-visual[data-reveal],
  .cyber-resilience-visual[data-reveal],
  .ai-data-visual[data-reveal] {
    transform: translateY(44px) scale(0.97);
    transition:
      opacity 860ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 860ms cubic-bezier(0.22, 1, 0.36, 1),
      border-color 220ms ease,
      box-shadow 220ms ease;
  }

  .pillar-media[data-reveal].show,
  .appsys-delivery-visual[data-reveal].show,
  .cyber-resilience-visual[data-reveal].show,
  .ai-data-visual[data-reveal].show {
    transform: translateY(0) scale(1);
  }

  .ai-two-col .ai-block[data-reveal] {
    opacity: 0;
    transition:
      opacity 2400ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 2400ms cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
  }

  .ai-two-col .ai-block:nth-child(1).intro-from-down,
  .ai-two-col .ai-block:nth-child(2).intro-from-up {
    transform: translateX(42vw);
  }

  .ai-two-col .ai-block:nth-child(2).intro-from-down,
  .ai-two-col .ai-block:nth-child(1).intro-from-up {
    transform: translateX(-42vw);
  }

  .ai-two-col .ai-block[data-reveal].show {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (min-width: 1041px) {
  .pillar-media,
  .appsys-delivery-visual,
  .cyber-resilience-visual,
  .ai-data-visual {
    position: sticky;
    top: 6.25rem;
  }
}

@media (max-width: 1040px) {
  .pressure-grid,
  .ai-decisions-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .ai-two-col .ai-block {
    padding-inline: 1rem;
  }

  .ai-two-col .ai-block,
  .ai-two-col .ai-block:nth-child(2) {
    display: block;
    min-height: 0;
  }

  .ai-two-col .ai-block::before,
  .ai-two-col .ai-block:nth-child(2)::before {
    height: 160px;
    min-height: 0;
    margin: 0 0 0.9rem;
  }

  .pressure-card,
  .ai-decision-card {
    display: block;
  }

  .pressure-card::before,
  .ai-decision-card::before {
    height: 116px;
    min-height: 0;
    margin: 0 0 0.9rem;
  }
}

.card:hover,
[class*="-card"]:hover {
  border-color: rgba(12, 47, 147, 0.28);
}

.card,
.why-card,
.appsys-stage,
.appsys-model-card,
.appsys-delivery-visual,
.cyber-stage,
.cyber-resilience-visual,
.ai-service-card,
.pressure-card,
.ai-decision-card,
.ai-custom-card,
.ai-training-card,
.ai-gallery-card {
  transition:
    border-color 220ms ease,
    box-shadow 220ms ease,
    transform 220ms ease;
}

.pillars,
.insights-upcoming {
  background: rgba(237, 241, 247, 0.72);
  border-top-color: var(--line);
  border-bottom-color: var(--line);
}

.cta-box,
[class*="-industry-wrap"],
[class*="-results-wrap"],
.article-end-cta,
.coe-cta-inner {
  border-color: rgba(12, 47, 147, 0.18);
  background:
    radial-gradient(circle at 12% 18%, rgba(12, 47, 147, 0.08), transparent 34%),
    linear-gradient(112deg, #ffffff 0%, #f1f5fb 100%);
  box-shadow: var(--shadow);
}

.cta-box {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.7fr);
  grid-template-rows: auto auto;
  column-gap: clamp(2rem, 5vw, 4.5rem);
  row-gap: clamp(1.25rem, 2.4vw, 1.9rem);
  align-items: center;
  padding: clamp(1.6rem, 3.2vw, 2.35rem);
}

.cta-box::before {
  content: "";
  position: relative;
  z-index: 1;
  grid-column: 2;
  grid-row: 1 / span 2;
  justify-self: start;
  align-self: stretch;
  width: 1px;
  min-height: 100%;
  background: rgba(12, 47, 147, 0.14);
}

.cta-box::after {
  right: 0;
  top: 0;
  bottom: 0;
  width: 38%;
  height: auto;
  border-radius: 0;
  background:
    radial-gradient(circle at 72% 42%, rgba(12, 47, 147, 0.13), transparent 44%),
    linear-gradient(90deg, transparent, rgba(12, 47, 147, 0.06));
  filter: none;
}

.cta-box h2,
.cta-box p,
.cta-box .section-kicker {
  position: relative;
  z-index: 1;
}

.cta-box h2 {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: center;
  max-width: 18ch;
  margin-bottom: 0;
}

.cta-box p {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  max-width: 42ch;
  margin: 0;
  padding-left: clamp(1.2rem, 3vw, 2rem);
  border-left: 0;
}

.cta-box .hero-actions,
.cta-box > .btn {
  position: relative;
  z-index: 1;
  grid-column: 2;
  grid-row: 2;
  justify-self: stretch;
  align-self: start;
}

.cta-box .hero-actions {
  margin-top: 0;
  display: grid;
  justify-items: start;
  gap: 0.75rem;
  padding-left: clamp(1.2rem, 3vw, 2rem);
  border-left: 0;
}

.cta-box > .btn {
  justify-self: start;
  margin-top: 1rem;
  margin-left: clamp(1.2rem, 3vw, 2rem);
}

.cta-box p {
  color: var(--muted);
}

.card a,
.insight-article-link,
.article-back-link,
.check-field a,
.cookie-consent-note a,
.section-kicker {
  color: var(--accent);
}

.card a:hover,
.insight-article-link:hover,
.article-back-link:hover,
.check-field a:hover,
.cookie-consent-note a:hover {
  color: var(--accent-2);
}

.cp-prose a,
.gp-prose a,
.bu-unit-card a {
  color: var(--accent);
}

.cp-prose a:hover,
.gp-prose a:hover,
.bu-unit-card a:hover {
  color: var(--accent-2);
}

.coe-eyebrow,
.cp-eyebrow,
.gp-eyebrow {
  color: #344057;
}

.coe-hero-text,
.cp-hero-text,
.gp-hero-text {
  color: #26324a;
}

.coe-prose,
.cp-prose,
.gp-prose,
.coe-cta-inner,
.cp-cta-inner,
.gp-cta-inner {
  border-color: var(--line);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 253, 0.98));
  box-shadow: var(--shadow);
}

.coe-prose h2,
.cp-prose h2,
.gp-prose h2 {
  border-top-color: rgba(12, 47, 147, 0.14);
  color: #101a30;
}

.coe-prose p,
.coe-prose li,
.cp-prose p,
.cp-prose li,
.gp-prose p,
.gp-prose li,
.coe-cta-inner p,
.cp-cta-inner p,
.gp-cta-inner p {
  color: #344057;
}

.coe-prose strong,
.cp-prose strong,
.gp-prose strong,
.coe-cta-inner h2,
.cp-cta-inner h2,
.gp-cta-inner h2 {
  color: #101a30;
}

.coe-cta-inner,
.cp-cta-inner,
.gp-cta-inner {
  border-top-color: rgba(12, 47, 147, 0.14);
}

.field label {
  color: #334059;
}

.field input,
.field textarea,
.field select {
  border-color: #cfd8e6;
  background: #ffffff;
  color: var(--text);
}

.field input:focus,
.field textarea:focus,
.field select:focus {
  border-color: rgba(12, 47, 147, 0.5);
  box-shadow: 0 0 0 3px rgba(12, 47, 147, 0.1);
}

.field input[type="file"],
.cookie-option,
.cookie-settings-trigger,
.appsys-kpi-grid div,
[class*="-metrics"] div {
  border-color: var(--line);
  background: #ffffff;
  color: var(--text);
}

.cookie-modal-backdrop {
  background: rgba(18, 32, 56, 0.28);
}

.cookie-modal-close {
  border-color: var(--line);
  background: rgba(255, 255, 255, 0.84);
  color: var(--text);
}

.cookie-modal-close:hover {
  border-color: rgba(12, 47, 147, 0.28);
  background: rgba(12, 47, 147, 0.08);
}

.cookie-consent-copy p,
.cookie-consent-note,
.cookie-modal-intro,
.cookie-option small {
  color: var(--muted);
}

.cookie-settings-trigger {
  box-shadow: 0 12px 28px rgba(18, 32, 56, 0.12);
}

.pillar-media span,
.ai-gallery-caption strong,
.ai-gallery-caption span {
  color: #ffffff;
}

.pillar-media span {
  border-color: rgba(255, 255, 255, 0.38);
  background: rgba(23, 32, 51, 0.58);
}

[class*="-hero-image"],
[class*="-visual"]::before,
.ai-data-visual::before,
.appsys-delivery-visual::before,
.cyber-resilience-visual::before,
[class*="-journey-visual"]::before,
.cx-deep-panel::before {
  opacity: 0.82;
}

[class*="-visual"] h3,
[class*="-visual"] p,
[class*="-visual"] ol,
[class*="-journey-visual"] h3,
[class*="-journey-visual"] p,
[class*="-metrics"],
.cx-deep-panel h3,
.cx-checklist {
  position: relative;
  z-index: 1;
}

[class*="-visual"] h3,
[class*="-visual"] p,
[class*="-visual"] li,
[class*="-journey-visual"] h3,
[class*="-journey-visual"] p,
[class*="-metrics"] strong,
[class*="-metrics"] span,
.cx-deep-panel h3,
.cx-checklist li {
  color: #ffffff;
}

.ai-gallery-card::before {
  background: linear-gradient(180deg, rgba(23, 32, 51, 0.08), rgba(23, 32, 51, 0.78));
}

footer {
  background: #ffffff;
  border-top-color: var(--line);
}

footer .footer-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(2rem, 9vw, 8rem);
  align-items: start;
}

footer .footer-title {
  color: #101a30;
  font-size: 0.98rem;
  margin-bottom: 0.8rem;
}

footer p {
  margin: 0.28rem 0;
}

footer a {
  color: #465168;
  text-decoration-line: underline;
  text-decoration-color: rgba(12, 47, 147, 0.24);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
  transition: color 160ms ease, text-decoration-color 160ms ease;
}

footer a:hover {
  color: var(--accent);
  text-decoration-color: rgba(12, 47, 147, 0.72);
}

.eyebrow-text {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.legal {
  border-top-color: var(--line);
}

body {
  overflow-x: clip;
}

.ai-priority {
  position: relative;
  display: grid;
  align-items: center;
  min-height: 100svh;
  padding-block: clamp(5.5rem, 11vw, 8.5rem);
  overflow: clip;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(8, 16, 34, 0.88) 0%, rgba(11, 25, 56, 0.7) 45%, rgba(11, 25, 56, 0.28) 72%, rgba(11, 25, 56, 0.08) 100%),
    linear-gradient(180deg, rgba(8, 16, 34, 0.18), rgba(8, 16, 34, 0.34)),
    url("../images/unsplash/1521737604893-d14cc237f11d.jpg") center/cover no-repeat;
}

.ai-priority .container {
  width: min(100% - 2rem, 1200px);
}

.ai-priority .ai-focus {
  max-width: 1080px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.6rem, 4vw, 2.8rem);
}

.ai-priority .ai-focus h2 {
  max-width: 15ch;
  margin: 0;
  color: #ffffff;
  font-size: clamp(2.75rem, 5.6vw, 5.35rem);
  line-height: 1.02;
  letter-spacing: 0;
  text-wrap: balance;
}

.ai-priority .ai-focus p {
  max-width: 58ch;
  color: rgba(255, 255, 255, 0.86);
  font-size: clamp(1.02rem, 1.28vw, 1.18rem);
  line-height: 1.58;
}

.value-focus {
  display: grid;
  gap: clamp(2rem, 5vw, 4rem);
  max-width: 1120px;
}

.value-focus h2 {
  max-width: 18ch;
  margin: 0;
  color: #ffffff;
  font-family: "Sora", sans-serif;
  font-size: clamp(1.95rem, 3vw, 3.1rem);
  line-height: 1.08;
  letter-spacing: 0;
  text-wrap: balance;
}

.value-lede {
  max-width: 64ch;
  margin: 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: clamp(1.36rem, 2vw, 1.8rem);
  line-height: 1.46;
}

.value-signature {
  margin: -1.6rem 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: clamp(0.95rem, 1.1vw, 1.08rem);
  font-style: italic;
  font-weight: 500;
}

.ai-priority-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  align-items: center;
}

.ai-priority .btn-primary {
  background: #ffffff;
  color: var(--accent);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.24);
}

.ai-priority .btn-primary:hover {
  background: #eef4ff;
  color: var(--accent-2);
}

.ai-priority .btn-ghost {
  border-color: rgba(255, 255, 255, 0.44);
  background: rgba(255, 255, 255, 0.13);
  color: #ffffff;
  backdrop-filter: blur(8px);
}

.ai-priority .btn-ghost:hover {
  border-color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

.cinematic-services,
.cinematic-support,
.pressure-section,
.ai-decisions,
.appsys-lifecycle,
.cyber-stages {
  overflow: clip;
}

.cinematic-services .section-head,
.cinematic-support .section-head,
.pressure-section .section-head,
.ai-decisions .section-head,
.appsys-lifecycle .section-head,
.cyber-stages .section-head {
  margin-bottom: clamp(1.8rem, 4vw, 3rem);
}

@media (min-width: 901px) {
  #offering .offering-grid,
  #support-capabilities .why-grid,
  .pressure-grid.cinematic-list,
  .ai-decisions-grid.cinematic-list,
  .appsys-stage-grid.cinematic-list,
  .cyber-stage-grid.cinematic-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(1.3rem, 3vw, 2.25rem);
  }

  #offering .card,
  #support-capabilities .why-card,
  .pressure-grid.cinematic-list .pressure-card,
  .ai-decisions-grid.cinematic-list .ai-decision-card,
  .appsys-stage-grid.cinematic-list .appsys-stage,
  .cyber-stage-grid.cinematic-list .cyber-stage {
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1fr);
    gap: clamp(1.4rem, 4vw, 3.5rem);
    align-items: center;
    min-height: clamp(330px, 38vw, 470px);
    padding: clamp(1rem, 2vw, 1.45rem);
  }

  #offering .card::before,
  #support-capabilities .why-card::before,
  .pressure-grid.cinematic-list .pressure-card::before,
  .ai-decisions-grid.cinematic-list .ai-decision-card::before,
  .appsys-stage-grid.cinematic-list .appsys-stage::before,
  .cyber-stage-grid.cinematic-list .cyber-stage::before {
    grid-column: 1;
    grid-row: 1 / span 3;
    width: 100%;
    height: 100%;
    min-height: clamp(290px, 34vw, 420px);
    margin: 0;
    border-radius: 14px;
    background-size: cover;
    background-position: center;
  }

  #offering .card > div,
  #offering .card > a,
  #support-capabilities .why-card > strong,
  #support-capabilities .why-card > p,
  .pressure-grid.cinematic-list .pressure-card > strong,
  .pressure-grid.cinematic-list .pressure-card > p,
  .ai-decisions-grid.cinematic-list .ai-decision-card > h3,
  .ai-decisions-grid.cinematic-list .ai-decision-card > p,
  .appsys-stage-grid.cinematic-list .appsys-stage > h3,
  .appsys-stage-grid.cinematic-list .appsys-stage > p,
  .cyber-stage-grid.cinematic-list .cyber-stage > h3,
  .cyber-stage-grid.cinematic-list .cyber-stage > p {
    grid-column: 2;
  }

  #offering .card:nth-child(even),
  #support-capabilities .why-card:nth-child(even),
  .pressure-grid.cinematic-list .pressure-card:nth-child(even),
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even),
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even),
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.92fr);
  }

  #offering .card:nth-child(even)::before,
  #support-capabilities .why-card:nth-child(even)::before,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even)::before,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even)::before,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even)::before,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even)::before {
    grid-column: 2;
  }

  #offering .card:nth-child(even) > div,
  #offering .card:nth-child(even) > a,
  #support-capabilities .why-card:nth-child(even) > strong,
  #support-capabilities .why-card:nth-child(even) > p,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even) > strong,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even) > p,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > h3,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > p,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > h3,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > p,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > h3,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > p {
    grid-column: 1;
  }

  #offering .card h3,
  #support-capabilities .why-card strong,
  .pressure-grid.cinematic-list .pressure-card strong,
  .ai-decisions-grid.cinematic-list .ai-decision-card h3,
  .appsys-stage-grid.cinematic-list .appsys-stage h3,
  .cyber-stage-grid.cinematic-list .cyber-stage h3 {
    font-size: clamp(1.45rem, 2.6vw, 2.45rem);
    line-height: 1.08;
    max-width: 15ch;
  }

  #offering .card p,
  #support-capabilities .why-card p,
  .pressure-grid.cinematic-list .pressure-card p,
  .ai-decisions-grid.cinematic-list .ai-decision-card p,
  .appsys-stage-grid.cinematic-list .appsys-stage p,
  .cyber-stage-grid.cinematic-list .cyber-stage p {
    max-width: 58ch;
    font-size: clamp(1rem, 1.15vw, 1.13rem);
    line-height: 1.66;
  }
}

.appsys-card,
.cyber-card {
  min-height: clamp(260px, 26vw, 360px);
}

.appsys-delivery-grid,
.cyber-resilience-grid,
.ai-data-grid {
  gap: clamp(1.4rem, 4vw, 3.5rem);
}

.appsys-delivery-text,
.cyber-resilience-text,
.ai-data-text {
  align-content: center;
}

.appsys-delivery-visual,
.cyber-resilience-visual,
.ai-data-visual {
  min-height: clamp(360px, 42vw, 540px);
}

.ai-assessment-box,
.ai-outputs-box,
.appsys-industry-wrap,
.cyber-industry-wrap,
.cta-box {
  overflow: hidden;
}

@media (min-width: 761px) {
  .ai-outputs-list {
    margin-top: 1.45rem;
  }
}

@media (prefers-reduced-motion: no-preference) {
  [data-motion] {
    opacity: 0;
    will-change: opacity, transform, filter;
    transition:
      opacity 1300ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 1300ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 1300ms cubic-bezier(0.16, 1, 0.3, 1),
      box-shadow 240ms ease,
      border-color 240ms ease;
  }

  [data-motion="slide-left"] {
    transform: translate3d(-18vw, 0, 0) scale(0.92);
    filter: blur(5px);
  }

  [data-motion="slide-right"] {
    transform: translate3d(18vw, 0, 0) scale(0.92);
    filter: blur(5px);
  }

  [data-motion="zoom-in"] {
    transform: scale(0.82);
    filter: blur(6px) saturate(0.82);
  }

  [data-motion="fade-up"] {
    transform: translate3d(0, 86px, 0) scale(0.94);
    filter: blur(4px);
  }

  [data-motion="spotlight"] {
    transform: perspective(1200px) translate3d(0, 96px, 0) rotateX(7deg) scale(0.88);
    filter: blur(7px) saturate(0.82);
  }

  [data-motion].motion-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) rotateX(0) scale(1);
    filter: none;
  }

  [data-motion]::before {
    transition:
      transform 1700ms cubic-bezier(0.16, 1, 0.3, 1),
      filter 420ms ease;
  }

  [data-motion]:not(.motion-visible)::before {
    transform: scale(1.14);
    filter: saturate(0.86) contrast(0.96);
  }

}

@media (max-width: 760px) {
  .menu {
    border-color: var(--line);
    background: #ffffff;
  }

  .menu-dropdown-panel {
    background: #f6f8fc;
  }

  footer .footer-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .cta-box {
    grid-template-columns: 1fr;
  }

  .cta-box::after {
    width: 100%;
    background: radial-gradient(circle at 80% 100%, rgba(12, 47, 147, 0.1), transparent 44%);
  }

  .cta-box::before {
    display: none;
  }

  .cta-box .hero-actions,
  .cta-box > .btn {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
  }

  .cta-box h2,
  .cta-box p,
  .cta-box .section-kicker {
    grid-column: 1;
    grid-row: auto;
  }

  .cta-box p {
    max-width: 58ch;
    padding-left: 0;
    border-left: 0;
  }

  .cta-box .hero-actions {
    justify-items: start;
    min-height: 0;
    padding-left: 0;
    border-left: 0;
  }

  .cta-box > .btn {
    margin-left: 0;
  }

  .ai-priority {
    min-height: 92svh;
    padding-block: 5.25rem;
    background:
      linear-gradient(180deg, rgba(8, 16, 34, 0.84) 0%, rgba(8, 16, 34, 0.72) 52%, rgba(8, 16, 34, 0.42) 100%),
      url("../images/unsplash/1521737604893-d14cc237f11d.jpg") center/cover no-repeat;
  }

  .ai-priority .ai-focus h2 {
    font-size: clamp(2.6rem, 13vw, 4.1rem);
  }

  .value-focus {
    gap: 1.6rem;
  }

  .value-focus h2 {
    font-size: clamp(1.9rem, 8vw, 2.8rem);
  }

  .value-lede {
    font-size: clamp(1.14rem, 4.8vw, 1.38rem);
    line-height: 1.5;
  }

  .value-signature {
    margin-top: -0.8rem;
  }

  .ai-priority-actions {
    display: grid;
    justify-items: start;
  }
}

@media (max-width: 900px) {
  #offering .card,
  #support-capabilities .why-card,
  .pressure-grid.cinematic-list .pressure-card,
  .ai-decisions-grid.cinematic-list .ai-decision-card,
  .appsys-stage-grid.cinematic-list .appsys-stage,
  .cyber-stage-grid.cinematic-list .cyber-stage {
    min-height: 0;
  }
}

@media (min-width: 901px) {
  #offering .offering-grid,
  #support-capabilities .why-grid,
  #why .why-grid,
  .appsys-stage-grid.cinematic-list,
  .cyber-stage-grid.cinematic-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
  }

  #offering .card,
  #support-capabilities .why-card,
  #why .why-card,
  .appsys-stage-grid.cinematic-list .appsys-stage,
  .cyber-stage-grid.cinematic-list .cyber-stage {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.85rem;
    align-content: start;
    min-height: clamp(320px, 30vw, 390px);
    padding: 1.05rem;
  }

  #offering .card::before,
  #support-capabilities .why-card::before,
  #why .why-card::before,
  .appsys-stage-grid.cinematic-list .appsys-stage::before,
  .cyber-stage-grid.cinematic-list .cyber-stage::before {
    grid-column: auto;
    grid-row: auto;
    height: clamp(145px, 15vw, 190px);
    min-height: 0;
    margin: 0;
  }

  #offering .card > div,
  #offering .card > a,
  #support-capabilities .why-card > strong,
  #support-capabilities .why-card > p,
  #why .why-card > strong,
  #why .why-card > p,
  .appsys-stage-grid.cinematic-list .appsys-stage > h3,
  .appsys-stage-grid.cinematic-list .appsys-stage > p,
  .cyber-stage-grid.cinematic-list .cyber-stage > h3,
  .cyber-stage-grid.cinematic-list .cyber-stage > p {
    grid-column: auto;
  }

  #offering .card:nth-child(even),
  #support-capabilities .why-card:nth-child(even),
  #why .why-card:nth-child(even),
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even),
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) {
    grid-template-columns: 1fr;
  }

  #offering .card:nth-child(even)::before,
  #support-capabilities .why-card:nth-child(even)::before,
  #why .why-card:nth-child(even)::before,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even)::before,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even)::before,
  #offering .card:nth-child(even) > div,
  #offering .card:nth-child(even) > a,
  #support-capabilities .why-card:nth-child(even) > strong,
  #support-capabilities .why-card:nth-child(even) > p,
  #why .why-card:nth-child(even) > strong,
  #why .why-card:nth-child(even) > p,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > h3,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > p,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > h3,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > p {
    grid-column: auto;
  }

  #offering .card h3,
  #support-capabilities .why-card strong,
  #why .why-card strong,
  .appsys-stage-grid.cinematic-list .appsys-stage h3,
  .cyber-stage-grid.cinematic-list .cyber-stage h3 {
    max-width: none;
    font-size: clamp(1.05rem, 1.35vw, 1.25rem);
    line-height: 1.22;
  }

  #offering .card p,
  #support-capabilities .why-card p,
  #why .why-card p,
  .appsys-stage-grid.cinematic-list .appsys-stage p,
  .cyber-stage-grid.cinematic-list .cyber-stage p {
    max-width: none;
    font-size: 0.92rem;
    line-height: 1.55;
  }

  .pressure-grid.cinematic-list,
  .ai-decisions-grid.cinematic-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }

  .pressure-grid.cinematic-list .pressure-card,
  .ai-decisions-grid.cinematic-list .ai-decision-card {
    display: grid;
    grid-template-columns: minmax(150px, 0.42fr) minmax(0, 1fr);
    column-gap: 1rem;
    align-items: start;
    min-height: 200px;
    padding: 1.05rem;
  }

  .pressure-grid.cinematic-list .pressure-card::before,
  .ai-decisions-grid.cinematic-list .ai-decision-card::before {
    grid-column: 1;
    grid-row: 1 / span 4;
    height: 100%;
    min-height: 168px;
    margin: 0;
  }

  .pressure-grid.cinematic-list .pressure-card:nth-child(even),
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) {
    grid-template-columns: minmax(150px, 0.42fr) minmax(0, 1fr);
  }

  .pressure-grid.cinematic-list .pressure-card:nth-child(even)::before,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even)::before {
    grid-column: 1;
  }

  .pressure-grid.cinematic-list .pressure-card > strong,
  .pressure-grid.cinematic-list .pressure-card > p,
  .ai-decisions-grid.cinematic-list .ai-decision-card > h3,
  .ai-decisions-grid.cinematic-list .ai-decision-card > p,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even) > strong,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even) > p,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > h3,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > p {
    grid-column: 2;
  }

  .pressure-grid.cinematic-list .pressure-card strong,
  .ai-decisions-grid.cinematic-list .ai-decision-card h3 {
    max-width: none;
    font-size: clamp(1.02rem, 1.25vw, 1.18rem);
    line-height: 1.25;
  }

  .pressure-grid.cinematic-list .pressure-card p,
  .ai-decisions-grid.cinematic-list .ai-decision-card p {
    max-width: none;
    font-size: 0.92rem;
    line-height: 1.55;
  }
}

/* Home offering: compact editorial triptych with equal service weight. */
#offering.cinematic-services {
  background:
    linear-gradient(180deg, rgba(246, 248, 252, 0.92), rgba(255, 255, 255, 0.98) 38%, rgba(236, 242, 250, 0.86));
}

#offering .offering-grid {
  gap: clamp(0.9rem, 1.6vw, 1.25rem);
}

#offering .offering-grid .card {
  position: relative;
  overflow: hidden;
  border-color: rgba(17, 35, 72, 0.12);
  border-radius: 6px;
  box-shadow: 0 18px 46px rgba(17, 35, 72, 0.08);
}

#offering .offering-grid .card::before {
  border: 0;
  border-radius: 0;
}

@media (min-width: 901px) {
  #offering.cinematic-services {
    padding-block: clamp(4.4rem, 7vw, 7rem);
  }

  #offering .section-head {
    margin-inline: auto;
    margin-bottom: clamp(1.15rem, 2.2vw, 1.85rem);
    max-width: min(100%, 1160px);
  }

  #offering .offering-grid {
    --offering-image-height: clamp(230px, 23vw, 320px);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    min-height: clamp(560px, 64svh, 660px);
  }

  #offering .offering-grid .card {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: var(--offering-image-height) 1fr auto;
    align-content: stretch;
    min-height: 0;
    background: rgba(255, 255, 255, 0.84);
    padding: 0;
  }

  #offering .offering-grid .card::before {
    grid-row: 1;
    width: 100%;
    height: var(--offering-image-height);
    min-height: 0;
    margin: 0;
    background-position: center;
  }

  #offering .offering-grid .card > div,
  #offering .offering-grid .card > a {
    padding-inline: clamp(1.35rem, 2.4vw, 2rem);
  }

  #offering .offering-grid .card > div {
    padding-top: clamp(1.3rem, 2.2vw, 1.8rem);
  }

  #offering .offering-grid .card > a {
    align-self: end;
    padding-bottom: clamp(1.25rem, 2vw, 1.65rem);
  }

  #offering .offering-grid .card h3,
  #offering .offering-grid .card p,
  #offering .offering-grid .card a,
  #offering .offering-grid .card:nth-child(even) > div,
  #offering .offering-grid .card:nth-child(even) > a {
    grid-column: auto;
  }

  #offering .offering-grid .card h3 {
    font-size: clamp(1.45rem, 2.25vw, 2.05rem);
    line-height: 1.12;
    max-width: 13.5ch;
  }

  #offering .offering-grid .card p {
    font-size: clamp(0.96rem, 1.08vw, 1.04rem);
    line-height: 1.55;
    max-width: 42ch;
  }
}

@media (max-width: 900px) {
  #offering .offering-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  #offering .offering-grid .card {
    min-height: 0;
  }
}

.existing-ai {
  padding-block: clamp(3rem, 5vw, 4.8rem);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 255, 255, 0.14), transparent 34%),
    linear-gradient(110deg, #0a2a7a 0%, #0c2f93 46%, #071b58 100%);
}

.existing-ai-grid {
  display: grid;
  grid-template-columns: minmax(0, 820px);
  justify-content: center;
  max-width: 980px;
  margin-inline: auto;
}

.existing-ai-label {
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
}

.existing-ai-copy {
  display: grid;
  gap: clamp(0.9rem, 1.8vw, 1.25rem);
}

.existing-ai-copy h2 {
  max-width: 22ch;
  margin: 0;
  color: #ffffff;
  font-family: "Sora", sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.3rem);
  line-height: 1.06;
}

.existing-ai-copy > p:not(.existing-ai-label) {
  max-width: 76ch;
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(1rem, 1.12vw, 1.12rem);
  line-height: 1.62;
}

@media (max-width: 760px) {
  .existing-ai-grid {
    grid-template-columns: 1fr;
  }
}

/* Home support capabilities: quieter companion strip aligned with the offering triptych. */
#support-capabilities.cinematic-support {
  background:
    linear-gradient(180deg, rgba(236, 242, 250, 0.78), rgba(255, 255, 255, 0.96));
}

#support-capabilities .section-head {
  max-width: min(100%, 980px);
}

@media (min-width: 901px) {
  #support-capabilities.cinematic-support {
    padding-block: clamp(4rem, 6vw, 6rem);
  }

  #support-capabilities .section-head {
    margin-inline: 0;
    margin-bottom: clamp(1.35rem, 2.5vw, 2rem);
  }

  #support-capabilities .why-grid {
    --support-image-height: clamp(170px, 17vw, 230px);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.9rem, 1.6vw, 1.25rem);
    align-items: stretch;
  }

  #support-capabilities .why-card {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: var(--support-image-height) auto 1fr;
    gap: 0;
    min-height: clamp(420px, 43vw, 500px);
    padding: 0;
    overflow: hidden;
    border-color: rgba(17, 35, 72, 0.1);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 16px 42px rgba(17, 35, 72, 0.07);
  }

  #support-capabilities .why-card::before {
    grid-column: auto;
    grid-row: 1;
    width: 100%;
    height: var(--support-image-height);
    min-height: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    background-size: cover;
    background-position: center;
  }

  #support-capabilities .why-card strong,
  #support-capabilities .why-card p,
  #support-capabilities .why-card:nth-child(even) > strong,
  #support-capabilities .why-card:nth-child(even) > p {
    grid-column: auto;
    padding-inline: clamp(1.35rem, 2.3vw, 1.9rem);
  }

  #support-capabilities .why-card strong {
    padding-top: clamp(1.35rem, 2vw, 1.75rem);
    color: #101a30;
    font-size: clamp(1.18rem, 1.65vw, 1.55rem);
    line-height: 1.16;
    max-width: 12ch;
  }

  #support-capabilities .why-card p {
    padding-top: 0.75rem;
    padding-bottom: clamp(1.35rem, 2vw, 1.75rem);
    color: #4c5870;
    font-size: clamp(0.94rem, 1.02vw, 1rem);
    line-height: 1.55;
    max-width: 38ch;
  }
}

@media (max-width: 900px) {
  #support-capabilities .why-card {
    min-height: 0;
  }
}

/* Home Why QualiValue: aligned with the current editorial card system. */
#why {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 249, 253, 0.9));
}

@media (min-width: 901px) {
  #why {
    padding-block: clamp(4rem, 6vw, 6rem);
  }

  #why .section-head {
    margin-bottom: clamp(1.7rem, 3vw, 2.35rem);
  }

  #why .why-grid {
    --why-image-height: clamp(180px, 18vw, 240px);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.9rem, 1.6vw, 1.25rem);
    align-items: stretch;
  }

  #why .why-card {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: var(--why-image-height) auto 1fr;
    gap: 0;
    min-height: clamp(440px, 43vw, 520px);
    padding: 0;
    overflow: hidden;
    border-color: rgba(17, 35, 72, 0.1);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 16px 42px rgba(17, 35, 72, 0.07);
  }

  #why .why-card::before {
    grid-column: auto;
    grid-row: 1;
    width: 100%;
    height: var(--why-image-height);
    min-height: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    background-size: cover;
    background-position: center;
  }

  #why .why-card strong,
  #why .why-card p,
  #why .why-card:nth-child(even) > strong,
  #why .why-card:nth-child(even) > p {
    grid-column: auto;
    padding-inline: clamp(1.35rem, 2.3vw, 1.9rem);
  }

  #why .why-card strong {
    padding-top: clamp(1.35rem, 2vw, 1.75rem);
    color: #101a30;
    font-size: clamp(1.18rem, 1.65vw, 1.55rem);
    line-height: 1.16;
    max-width: 14ch;
  }

  #why .why-card strong.why-title-wide {
    max-width: 23ch;
  }

  #why .why-card strong.why-title-wide span {
    white-space: nowrap;
  }

  #why .why-card p {
    padding-top: 0.75rem;
    padding-bottom: clamp(1.35rem, 2vw, 1.75rem);
    color: #4c5870;
    font-size: clamp(0.94rem, 1.02vw, 1rem);
    line-height: 1.55;
    max-width: 39ch;
  }
}

@media (max-width: 900px) {
  #why .why-card {
    min-height: 0;
  }
}

main > section > .container > .section-head,
#offering .section-head,
#support-capabilities .section-head {
  display: grid;
  grid-template-columns: minmax(0, min(100%, 860px));
  justify-content: center;
  justify-items: center;
  gap: clamp(0.75rem, 1.5vw, 1.05rem);
  max-width: none;
  margin-inline: auto;
  text-align: center;
}

main > section > .container > .section-head::after,
#offering .section-head::after,
#support-capabilities .section-head::after {
  content: "";
  grid-row: 2;
  width: clamp(72px, 8vw, 112px);
  height: 2px;
  background: rgba(12, 47, 147, 0.26);
}

main > section > .container > .section-head h2,
#offering .section-head h2,
#support-capabilities .section-head h2 {
  grid-row: 1;
  justify-self: center;
  max-width: 18ch;
  margin: 0;
}

main > section > .container > .section-head p,
#offering .section-head p,
#support-capabilities .section-head p {
  grid-row: 3;
  max-width: 66ch;
  margin: 0;
  padding-left: 0;
  border-left: 0;
}

.pressure-section .section-head {
  grid-template-columns: minmax(0, min(100%, 960px));
}

.pressure-section .section-head h2 {
  max-width: 28ch;
}

.pressure-section .section-head p {
  max-width: 92ch;
}

main > section.pressure-section > .container > .section-head h2 {
  max-width: 28ch;
}

main > section.pressure-section > .container > .section-head p {
  max-width: 92ch;
}

.ai-decisions .section-head {
  grid-template-columns: minmax(0, min(100%, 960px));
}

.ai-decisions .section-head h2 {
  max-width: 24ch;
}

.ai-decisions .section-head p {
  max-width: 92ch;
}

main > section.ai-decisions > .container > .section-head h2 {
  max-width: 24ch;
}

main > section.ai-decisions > .container > .section-head p {
  max-width: 92ch;
}

.ai-custom-apps .section-head {
  grid-template-columns: minmax(0, min(100%, 960px));
}

.ai-custom-apps .section-head h2 {
  max-width: 23ch;
}

.ai-custom-apps .section-head p {
  max-width: 92ch;
}

main > section.ai-custom-apps > .container > .section-head h2 {
  max-width: 23ch;
}

main > section.ai-custom-apps > .container > .section-head p {
  max-width: 92ch;
}

.ai-gallery .section-head h2 {
  max-width: 24ch;
}

main > section.ai-gallery > .container > .section-head h2 {
  max-width: 24ch;
}

.pressure-grid.cinematic-list {
  max-width: 1180px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.pressure-grid.cinematic-list .pressure-card {
  display: grid;
  grid-template-columns: minmax(168px, 0.38fr) minmax(0, 1fr);
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.pressure-grid.cinematic-list .pressure-card::before,
.pressure-grid.cinematic-list .pressure-card:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: clamp(142px, 13vw, 172px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.pressure-grid.cinematic-list .pressure-card-copy {
  grid-column: 2;
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
  padding-block: clamp(1.1rem, 1.65vw, 1.45rem);
}

.pressure-grid.cinematic-list .pressure-card > strong,
.pressure-grid.cinematic-list .pressure-card > p,
.pressure-grid.cinematic-list .pressure-card:nth-child(even) > strong,
.pressure-grid.cinematic-list .pressure-card:nth-child(even) > p {
  grid-column: 2;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
}

.pressure-grid.cinematic-list .pressure-card strong,
.pressure-grid.cinematic-list .pressure-card-copy strong {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.pressure-grid.cinematic-list .pressure-card p,
.pressure-grid.cinematic-list .pressure-card-copy p {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 760px) {
  .pressure-grid.cinematic-list .pressure-card {
    display: block;
  }

  .pressure-grid.cinematic-list .pressure-card::before,
  .pressure-grid.cinematic-list .pressure-card:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .pressure-grid.cinematic-list .pressure-card-copy {
    padding: 1.15rem 1.25rem 1.25rem;
  }
}

.ai-decisions-grid.cinematic-list {
  max-width: 1180px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.ai-decisions-grid.cinematic-list .ai-decision-card {
  display: grid;
  grid-template-columns: minmax(168px, 0.38fr) minmax(0, 1fr);
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.ai-decisions-grid.cinematic-list .ai-decision-card::before,
.ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: clamp(142px, 13vw, 172px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.ai-decisions-grid.cinematic-list .ai-decision-card-copy {
  grid-column: 2;
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
  padding-block: clamp(1.1rem, 1.65vw, 1.45rem);
}

.ai-decisions-grid.cinematic-list .ai-decision-card > h3,
.ai-decisions-grid.cinematic-list .ai-decision-card > p,
.ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > h3,
.ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even) > p {
  grid-column: 2;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
}

.ai-decisions-grid.cinematic-list .ai-decision-card h3,
.ai-decisions-grid.cinematic-list .ai-decision-card-copy h3 {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.ai-decisions-grid.cinematic-list .ai-decision-card p,
.ai-decisions-grid.cinematic-list .ai-decision-card-copy p {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 760px) {
  .ai-decisions-grid.cinematic-list .ai-decision-card {
    display: block;
  }

  .ai-decisions-grid.cinematic-list .ai-decision-card::before,
  .ai-decisions-grid.cinematic-list .ai-decision-card:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .ai-decisions-grid.cinematic-list .ai-decision-card-copy {
    padding: 1.15rem 1.25rem 1.25rem;
  }
}

.ai-services-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 1180px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.ai-services-grid .ai-service-card {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.ai-services-grid .ai-service-card::before,
.ai-services-grid .ai-service-card:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: clamp(136px, 12vw, 158px);
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 9px 9px 0 0;
  background-size: cover;
  background-position: center;
}

.ai-services-grid .ai-service-card-copy {
  grid-column: 1;
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding: clamp(1.15rem, 1.6vw, 1.45rem);
}

.ai-services-grid .ai-service-card > h3,
.ai-services-grid .ai-service-card > p,
.ai-services-grid .ai-service-card:nth-child(even) > h3,
.ai-services-grid .ai-service-card:nth-child(even) > p {
  grid-column: 1;
  padding-inline: clamp(1.15rem, 1.6vw, 1.45rem);
}

.ai-services-grid .ai-service-card h3,
.ai-services-grid .ai-service-card-copy h3 {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.ai-services-grid .ai-service-card p,
.ai-services-grid .ai-service-card-copy p {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 1050px) {
  .ai-services-grid {
    grid-template-columns: 1fr;
  }

  .ai-services-grid .ai-service-card {
    display: grid;
    grid-template-columns: minmax(168px, 0.34fr) minmax(0, 1fr);
  }

  .ai-services-grid .ai-service-card::before,
  .ai-services-grid .ai-service-card:nth-child(even)::before {
    grid-column: 1;
    height: 100%;
    min-height: clamp(142px, 13vw, 172px);
    border-radius: 9px 0 0 9px;
  }

  .ai-services-grid .ai-service-card-copy {
    grid-column: 2;
    padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
    padding-block: clamp(1.1rem, 1.65vw, 1.45rem);
  }
}

@media (max-width: 760px) {
  .ai-services-grid .ai-service-card {
    display: block;
  }

  .ai-services-grid .ai-service-card::before,
  .ai-services-grid .ai-service-card:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .ai-services-grid .ai-service-card-copy {
    padding: 1.15rem 1.25rem 1.25rem;
  }
}

.ai-custom-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 1180px;
  margin-inline: auto;
  margin-bottom: clamp(4.6rem, 7vw, 5.8rem);
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.ai-custom-grid .ai-custom-card {
  display: grid;
  grid-template-columns: minmax(168px, 0.38fr) minmax(0, 1fr);
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.ai-custom-grid .ai-custom-card::before,
.ai-custom-grid .ai-custom-card:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: clamp(142px, 13vw, 172px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.ai-custom-grid .ai-custom-card-copy {
  grid-column: 2;
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
  padding-block: clamp(1.1rem, 1.65vw, 1.45rem);
}

.ai-custom-grid .ai-custom-card > h3,
.ai-custom-grid .ai-custom-card > p,
.ai-custom-grid .ai-custom-card:nth-child(even) > h3,
.ai-custom-grid .ai-custom-card:nth-child(even) > p {
  grid-column: 2;
  padding-inline: clamp(1.45rem, 2.2vw, 2.1rem);
}

.ai-custom-grid .ai-custom-card h3,
.ai-custom-grid .ai-custom-card-copy h3 {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.ai-custom-grid .ai-custom-card p,
.ai-custom-grid .ai-custom-card-copy p {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

.ai-custom-apps .ai-section-note {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
  color: #465168;
  font-size: clamp(0.98rem, 1.1vw, 1.08rem);
  line-height: 1.55;
  font-weight: 650;
}

.ai-custom-cta {
  display: flex;
  justify-content: center;
  margin-top: clamp(1.15rem, 2.2vw, 1.8rem);
  position: relative;
  z-index: 2;
}

@media (max-width: 760px) {
  .ai-custom-grid {
    grid-template-columns: 1fr;
  }

  .ai-custom-grid .ai-custom-card {
    display: block;
  }

  .ai-custom-grid .ai-custom-card::before,
  .ai-custom-grid .ai-custom-card:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .ai-custom-grid .ai-custom-card-copy {
    padding: 1.15rem 1.25rem 1.25rem;
  }
}

.ai-training-grid {
  display: grid;
  grid-template-columns: 1fr;
  max-width: 980px;
  margin-inline: auto;
  margin-bottom: clamp(2.1rem, 3.6vw, 3rem);
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.ai-training-grid .ai-training-card {
  display: grid;
  grid-template-columns: minmax(210px, 0.36fr) minmax(0, 1fr);
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.ai-training-grid .ai-training-card::before {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: clamp(150px, 13vw, 178px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.ai-training-grid .ai-training-card-copy {
  grid-column: 2;
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding-inline: clamp(1.55rem, 2.4vw, 2.3rem);
  padding-block: clamp(1.15rem, 1.75vw, 1.55rem);
}

.ai-training-grid .ai-training-card > h3,
.ai-training-grid .ai-training-card > p {
  grid-column: 2;
  padding-inline: clamp(1.55rem, 2.4vw, 2.3rem);
}

.ai-training-grid .ai-training-card h3,
.ai-training-grid .ai-training-card-copy h3 {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.ai-training-grid .ai-training-card p,
.ai-training-grid .ai-training-card-copy p {
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

.ai-training-cta {
  display: flex;
  justify-content: center;
  margin-top: 0;
  position: relative;
  z-index: 2;
}

@media (max-width: 760px) {
  .ai-training-grid .ai-training-card {
    display: block;
  }

  .ai-training-grid .ai-training-card::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .ai-training-grid .ai-training-card-copy {
    padding: 1.15rem 1.25rem 1.25rem;
  }
}

.ai-data-text,
.ai-data-visual {
  min-height: clamp(520px, 42vw, 640px);
  padding: clamp(2rem, 3vw, 3.25rem);
}

.ai-data-text {
  display: grid;
  align-content: stretch;
  grid-template-rows: auto auto 1fr;
}

.ai-data-text h2 {
  max-width: 18ch;
  margin: 0;
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: 1.08;
}

.ai-data-text p {
  max-width: 58ch;
  margin: clamp(1.05rem, 1.8vw, 1.5rem) 0 0;
  font-size: clamp(1.04rem, 1.2vw, 1.18rem);
  line-height: 1.56;
  color: #526078;
}

.ai-checklist {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.8rem, 1.3vw, 1.05rem);
  margin-top: clamp(2.4rem, 5vw, 4.6rem);
}

.ai-checklist li {
  display: flex;
  align-items: center;
  min-height: clamp(82px, 7vw, 104px);
  padding: 1rem 1.05rem 1rem 2.55rem;
  border: 1px solid rgba(12, 47, 147, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.74);
  color: #465168;
  font-size: clamp(0.98rem, 1.05vw, 1.08rem);
  line-height: 1.35;
}

.ai-checklist li::before {
  left: 1.05rem;
  top: 50%;
  width: 0.58rem;
  height: 0.58rem;
  transform: translateY(-50%);
  background: #18369a;
}

.ai-data-visual {
  display: grid;
  grid-template-rows: auto 1fr;
  align-content: stretch;
}

.ai-data-visual h3 {
  max-width: 14ch;
  margin: 0;
  font-size: clamp(2rem, 2.7vw, 3rem);
  line-height: 1.05;
}

.ai-data-visual ol {
  align-self: stretch;
  display: grid;
  align-content: space-between;
  gap: clamp(0.85rem, 1.4vw, 1.15rem);
  margin: clamp(2rem, 4vw, 3.4rem) 0 0;
  padding: 0;
  list-style: none;
  counter-reset: delivery-step;
}

.ai-data-visual li {
  counter-increment: delivery-step;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.85rem;
  align-items: center;
  min-height: clamp(66px, 5.5vw, 88px);
  padding: 0.9rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 10px;
  background: rgba(8, 16, 34, 0.28);
  color: #ffffff;
  font-size: clamp(1rem, 1.1vw, 1.14rem);
  line-height: 1.3;
  backdrop-filter: blur(3px);
}

.ai-data-visual li::before {
  content: counter(delivery-step);
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #18369a;
  font-family: "Sora", sans-serif;
  font-weight: 800;
  line-height: 1;
}

@media (max-width: 900px) {
  .ai-checklist {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .ai-data-text,
  .ai-data-visual {
    min-height: 0;
    padding: 1.35rem;
  }

  .ai-data-text h2,
  .ai-data-visual h3 {
    max-width: none;
  }

  .ai-checklist {
    margin-top: 1.4rem;
  }
}

.appsys-lifecycle .section-head h2,
main > section.appsys-lifecycle > .container > .section-head h2 {
  max-width: 24ch;
}

.appsys-stage-grid.cinematic-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 1180px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.appsys-stage-grid.cinematic-list .appsys-stage,
.appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) {
  display: grid;
  grid-template-columns: minmax(168px, 0.38fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto auto 1fr;
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.appsys-stage-grid.cinematic-list .appsys-stage::before,
.appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1 / span 4;
  width: 100%;
  height: 100%;
  min-height: clamp(142px, 13vw, 172px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.appsys-stage-grid.cinematic-list .appsys-stage > h3,
.appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > h3 {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  max-width: none;
  margin: 0;
  padding: 0 clamp(1.45rem, 2.2vw, 2.1rem);
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.appsys-stage-grid.cinematic-list .appsys-stage > p,
.appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > p {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
  max-width: none;
  margin: 0;
  padding: 0.55rem clamp(1.45rem, 2.2vw, 2.1rem) 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 760px) {
  .appsys-stage-grid.cinematic-list {
    grid-template-columns: 1fr;
  }

  .appsys-stage-grid.cinematic-list .appsys-stage,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) {
    display: block;
  }

  .appsys-stage-grid.cinematic-list .appsys-stage::before,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .appsys-stage-grid.cinematic-list .appsys-stage > h3,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > h3 {
    padding: 1.15rem 1.25rem 0;
  }

  .appsys-stage-grid.cinematic-list .appsys-stage > p,
  .appsys-stage-grid.cinematic-list .appsys-stage:nth-child(even) > p {
    padding: 0.55rem 1.25rem 1.25rem;
  }
}

.appsys-delivery-text,
.appsys-delivery-visual {
  min-height: clamp(520px, 42vw, 640px);
  padding: clamp(2rem, 3vw, 3.25rem);
}

.appsys-delivery-text {
  display: grid;
  align-content: stretch;
  grid-template-rows: auto auto 1fr;
}

.appsys-delivery-text h2 {
  max-width: 19ch;
  margin: 0;
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: 1.08;
}

.appsys-delivery-text p {
  max-width: 60ch;
  margin: clamp(1.05rem, 1.8vw, 1.5rem) 0 0;
  font-size: clamp(1.04rem, 1.2vw, 1.18rem);
  line-height: 1.56;
  color: #526078;
}

.appsys-list {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.8rem, 1.3vw, 1.05rem);
  margin-top: clamp(2.4rem, 5vw, 4.6rem);
}

.appsys-list li {
  display: flex;
  align-items: center;
  min-height: clamp(82px, 7vw, 104px);
  padding: 1rem 1.05rem 1rem 2.55rem;
  border: 1px solid rgba(12, 47, 147, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.74);
  color: #465168;
  font-size: clamp(0.98rem, 1.05vw, 1.08rem);
  line-height: 1.35;
}

.appsys-list li::before {
  left: 1.05rem;
  top: 50%;
  width: 0.58rem;
  height: 0.58rem;
  transform: translateY(-50%);
  background: #18369a;
}

.appsys-delivery-visual {
  display: grid;
  grid-template-rows: auto auto 1fr;
  align-content: stretch;
}

.appsys-delivery-visual h3 {
  max-width: 14ch;
  margin: 0;
  font-size: clamp(2rem, 2.7vw, 3rem);
  line-height: 1.05;
}

.appsys-delivery-visual p {
  max-width: 58ch;
  margin: clamp(1rem, 1.8vw, 1.45rem) 0 0;
  font-size: clamp(1.03rem, 1.15vw, 1.16rem);
  line-height: 1.52;
  color: rgba(255, 255, 255, 0.92);
}

.appsys-kpi-grid {
  align-self: end;
  display: grid;
  gap: clamp(0.85rem, 1.5vw, 1.2rem);
  margin-top: clamp(2rem, 4vw, 3.2rem);
}

.appsys-kpi-grid div {
  min-height: clamp(92px, 7.5vw, 118px);
  padding: 1.1rem 1.2rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 10px;
  background: rgba(8, 16, 34, 0.34);
  color: #ffffff;
  backdrop-filter: blur(3px);
}

.appsys-kpi-grid strong {
  color: #ffffff;
  font-size: clamp(1.18rem, 1.5vw, 1.45rem);
  line-height: 1.15;
}

.appsys-kpi-grid span {
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(0.98rem, 1.08vw, 1.1rem);
  line-height: 1.4;
}

@media (max-width: 900px) {
  .appsys-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .appsys-delivery-text,
  .appsys-delivery-visual {
    min-height: 0;
    padding: 1.35rem;
  }

  .appsys-delivery-text h2,
  .appsys-delivery-visual h3 {
    max-width: none;
  }

  .appsys-list {
    margin-top: 1.4rem;
  }
}

.appsys-models .section-head h2,
main > section.appsys-models > .container > .section-head h2 {
  max-width: 22ch;
}

.appsys-model-grid {
  display: grid;
  grid-template-columns: 1fr;
  max-width: 980px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.appsys-model-grid .appsys-model-card {
  display: grid;
  grid-template-columns: minmax(210px, 0.36fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto auto 1fr;
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.appsys-model-grid .appsys-model-card::before {
  grid-column: 1;
  grid-row: 1 / span 4;
  width: 100%;
  height: 100%;
  min-height: clamp(150px, 13vw, 178px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.appsys-model-grid .appsys-model-card > h3 {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  max-width: none;
  margin: 0;
  padding: 0 clamp(1.55rem, 2.4vw, 2.3rem);
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.appsys-model-grid .appsys-model-card > p {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
  max-width: none;
  margin: 0;
  padding: 0.55rem clamp(1.55rem, 2.4vw, 2.3rem) 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 760px) {
  .appsys-model-grid .appsys-model-card {
    display: block;
  }

  .appsys-model-grid .appsys-model-card::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .appsys-model-grid .appsys-model-card > h3 {
    padding: 1.15rem 1.25rem 0;
  }

  .appsys-model-grid .appsys-model-card > p {
    padding: 0.55rem 1.25rem 1.25rem;
  }
}

.cyber-stages .section-head h2,
main > section.cyber-stages > .container > .section-head h2 {
  max-width: 24ch;
}

.cyber-stage-grid.cinematic-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 1180px;
  margin-inline: auto;
  gap: clamp(0.95rem, 1.6vw, 1.35rem);
}

.cyber-stage-grid.cinematic-list .cyber-stage,
.cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) {
  display: grid;
  grid-template-columns: minmax(168px, 0.38fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto auto 1fr;
  column-gap: 0;
  align-items: stretch;
  min-height: 0;
  padding: 0;
  border: 1px solid rgba(12, 47, 147, 0.13);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(15, 32, 66, 0.08);
}

.cyber-stage-grid.cinematic-list .cyber-stage::before,
.cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even)::before {
  grid-column: 1;
  grid-row: 1 / span 4;
  width: 100%;
  height: 100%;
  min-height: clamp(142px, 13vw, 172px);
  margin: 0;
  border: 0;
  border-radius: 9px 0 0 9px;
  background-size: cover;
  background-position: center;
}

.cyber-stage-grid.cinematic-list .cyber-stage > h3,
.cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > h3 {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  max-width: none;
  margin: 0;
  padding: 0 clamp(1.45rem, 2.2vw, 2.1rem);
  font-size: clamp(1.04rem, 1.25vw, 1.18rem);
  line-height: 1.22;
  color: #101a31;
}

.cyber-stage-grid.cinematic-list .cyber-stage > p,
.cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > p {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
  max-width: none;
  margin: 0;
  padding: 0.55rem clamp(1.45rem, 2.2vw, 2.1rem) 0;
  font-size: clamp(0.93rem, 1vw, 1rem);
  line-height: 1.52;
  color: #526078;
}

@media (max-width: 760px) {
  .cyber-stage-grid.cinematic-list {
    grid-template-columns: 1fr;
  }

  .cyber-stage-grid.cinematic-list .cyber-stage,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) {
    display: block;
  }

  .cyber-stage-grid.cinematic-list .cyber-stage::before,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even)::before {
    display: block;
    height: 150px;
    min-height: 0;
    border-radius: 9px 9px 0 0;
  }

  .cyber-stage-grid.cinematic-list .cyber-stage > h3,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > h3 {
    padding: 1.15rem 1.25rem 0;
  }

  .cyber-stage-grid.cinematic-list .cyber-stage > p,
  .cyber-stage-grid.cinematic-list .cyber-stage:nth-child(even) > p {
    padding: 0.55rem 1.25rem 1.25rem;
  }
}

.cyber-resilience-text,
.cyber-resilience-visual {
  min-height: clamp(520px, 42vw, 640px);
  padding: clamp(2rem, 3vw, 3.25rem);
}

.cyber-resilience-text {
  display: grid;
  align-content: stretch;
  grid-template-rows: auto auto 1fr;
}

.cyber-resilience-text h2 {
  max-width: 18ch;
  margin: 0;
  font-size: clamp(2rem, 3vw, 3.25rem);
  line-height: 1.08;
}

.cyber-resilience-text p {
  max-width: 60ch;
  margin: clamp(1.05rem, 1.8vw, 1.5rem) 0 0;
  font-size: clamp(1.04rem, 1.2vw, 1.18rem);
  line-height: 1.56;
  color: #526078;
}

.cyber-list {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.8rem, 1.3vw, 1.05rem);
  margin-top: clamp(2.4rem, 5vw, 4.6rem);
}

.cyber-list li {
  display: flex;
  align-items: center;
  min-height: clamp(82px, 7vw, 104px);
  padding: 1rem 1.05rem 1rem 2.55rem;
  border: 1px solid rgba(12, 47, 147, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.74);
  color: #465168;
  font-size: clamp(0.98rem, 1.05vw, 1.08rem);
  line-height: 1.35;
}

.cyber-list li::before {
  left: 1.05rem;
  top: 50%;
  width: 0.58rem;
  height: 0.58rem;
  transform: translateY(-50%);
  background: #18369a;
}

.cyber-resilience-visual {
  display: grid;
  grid-template-rows: auto auto;
  align-content: center;
}

.cyber-resilience-visual h3 {
  max-width: 14ch;
  margin: 0;
  font-size: clamp(2rem, 2.7vw, 3rem);
  line-height: 1.05;
}

.cyber-resilience-visual p {
  max-width: 58ch;
  margin: clamp(1.1rem, 2vw, 1.7rem) 0 0;
  padding: clamp(1rem, 1.7vw, 1.35rem);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 10px;
  background: rgba(8, 16, 34, 0.32);
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1.03rem, 1.15vw, 1.16rem);
  line-height: 1.52;
  backdrop-filter: blur(3px);
}

@media (max-width: 900px) {
  .cyber-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .cyber-resilience-text,
  .cyber-resilience-visual {
    min-height: 0;
    padding: 1.35rem;
  }

  .cyber-resilience-text h2,
  .cyber-resilience-visual h3 {
    max-width: none;
  }

  .cyber-list {
    margin-top: 1.4rem;
  }
}

.appsys-stage-grid.cinematic-list,
.cyber-stage-grid.cinematic-list {
  background: transparent;
  box-shadow: none;
}

#offering .offering-grid .card:nth-child(3)::before {
  background-image: url("../images/unsplash/AvSFPw5Tp68.jpg");
}

#offering .offering-grid .card:nth-child(2)::before {
  background-image: url("../images/unsplash/1517148815978-75f6acaaf32c.jpg");
}

#offering .offering-grid .card:nth-child(1)::before {
  background-image: url("../images/unsplash/eGGFZ5X2LnA.jpg");
}

.contact-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/q8U1YgBaRQk.jpg") center/cover no-repeat;
}

.career-hero::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 253, 0.8) 42%, rgba(248, 250, 253, 0.34) 70%, rgba(248, 250, 253, 0.06) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(229, 235, 245, 0.18)),
    url("../images/unsplash/1573497491208-6b1acb260507.jpg") center/cover no-repeat;
}

@media (prefers-reduced-motion: no-preference) {
  [data-motion="slide-left"] {
    transform: translate3d(-9vw, 0, 0) scale(0.95);
    filter: blur(3px);
  }

  [data-motion="slide-right"] {
    transform: translate3d(9vw, 0, 0) scale(0.95);
    filter: blur(3px);
  }

  [data-motion="zoom-in"] {
    transform: scale(0.9);
    filter: blur(4px) saturate(0.9);
  }

  [data-motion="fade-up"] {
    transform: translate3d(0, 56px, 0) scale(0.96);
    filter: blur(3px);
  }

  [data-motion="spotlight"] {
    transform: perspective(1200px) translate3d(0, 64px, 0) rotateX(4deg) scale(0.94);
    filter: blur(5px) saturate(0.9);
  }

  [data-motion="section-fade"],
  [data-motion="hero-fade"],
  [data-motion="horizontal-fade"] {
    opacity: 0;
    filter: none;
    transition: none;
  }

  [data-motion="section-fade"],
  [data-motion="hero-fade"] {
    transform: none;
  }

  [data-motion="horizontal-fade"] {
    --motion-progress: 0;
    --motion-offset: -120px;
    transform: translate3d(var(--motion-offset), 0, 0);
  }

  [data-motion="hero-fade"] {
    opacity: 1;
  }

  [data-motion="section-fade"].motion-visible,
  [data-motion="hero-fade"].motion-visible,
  [data-motion="horizontal-fade"].motion-visible {
    opacity: 1;
    filter: none;
  }

  [data-motion="section-fade"].motion-visible,
  [data-motion="hero-fade"].motion-visible {
    transform: none;
  }

  [data-motion="horizontal-fade"].motion-visible {
    transform: translate3d(0, 0, 0);
  }

  [data-motion="section-fade"]::before,
  [data-motion="hero-fade"]::before,
  [data-motion="horizontal-fade"]::before {
    transform: none;
    filter: none;
  }

  [data-motion]:not(.motion-visible):not([data-motion="hero-fade"]):not([data-motion="section-fade"]):not([data-motion="horizontal-fade"])::before {
    transform: scale(1.08);
    filter: saturate(0.9) contrast(0.98);
  }
}

/* Home typography tuning: keep selected editorial headings on two lines. */
#support-capabilities .section-head h2 {
  max-width: 26ch;
  text-wrap: balance;
}

@media (min-width: 901px) {
  #offering .offering-grid .card:nth-child(2) h3 {
    max-width: 18ch;
    text-wrap: balance;
  }

  #support-capabilities .why-card strong {
    max-width: 23ch;
    text-wrap: initial;
  }

  #why .why-card strong {
    max-width: 23ch;
    text-wrap: balance;
  }
}

.open-positions {
  padding: clamp(3.4rem, 6vw, 5.4rem) 0;
  background: #f4f7fb;
}

.open-position-list {
  max-width: 980px;
  margin: clamp(1.6rem, 3vw, 2.4rem) auto 0;
  display: grid;
  gap: 1rem;
}

.open-position-card {
  border: 1px solid #d9e1ee;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(24, 39, 75, 0.08);
  overflow: hidden;
}

.open-position-card summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 1.2rem;
  align-items: center;
  padding: clamp(1.05rem, 2vw, 1.35rem);
  cursor: pointer;
  list-style: none;
}

.open-position-card summary::-webkit-details-marker {
  display: none;
}

.open-position-card summary::after {
  content: "+";
  width: 2rem;
  height: 2rem;
  display: inline-grid;
  place-items: center;
  border: 1px solid #ccd6e5;
  border-radius: 999px;
  color: #102f7b;
  font-family: "Sora", sans-serif;
  font-size: 1.35rem;
  line-height: 1;
}

.open-position-card[open] summary::after {
  content: "-";
}

.open-position-main {
  min-width: 0;
  display: grid;
  gap: 0.35rem;
}

.open-position-title {
  color: #111a2f;
  font-family: "Sora", sans-serif;
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  font-weight: 700;
  line-height: 1.18;
}

.open-position-summary {
  color: #546078;
  font-size: 0.98rem;
  line-height: 1.55;
}

.open-position-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.45rem;
}

.open-position-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.32rem 0.65rem;
  border: 1px solid #d7dfeb;
  border-radius: 999px;
  background: #f6f8fc;
  color: #102f7b;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.open-position-content {
  display: grid;
  gap: 1.25rem;
  padding: 0 clamp(1.05rem, 2vw, 1.35rem) clamp(1.2rem, 2.5vw, 1.55rem);
  border-top: 1px solid #e2e8f2;
}

.open-position-content > div:first-child {
  padding-top: clamp(1.05rem, 2vw, 1.35rem);
}

.open-position-content h3 {
  margin: 0 0 0.55rem;
  color: #111a2f;
  font-family: "Sora", sans-serif;
  font-size: 0.96rem;
  line-height: 1.25;
}

.open-position-content p,
.open-position-content li {
  color: #4e5b72;
  font-size: 0.96rem;
  line-height: 1.62;
}

.open-position-content p + p {
  margin-top: 0.55rem;
}

.open-position-content ul {
  margin: 0;
  padding-left: 1.1rem;
  display: grid;
  gap: 0.4rem;
}

.open-position-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 3vw, 1.8rem);
}

.open-position-actions {
  display: flex;
  justify-content: flex-start;
}

@media (max-width: 760px) {
  .open-position-card summary {
    grid-template-columns: 1fr;
  }

  .open-position-card summary::after {
    position: absolute;
    top: 1rem;
    right: 1rem;
  }

  .open-position-card summary {
    position: relative;
    padding-right: 3.7rem;
  }

  .open-position-meta {
    justify-content: flex-start;
  }

  .open-position-meta span {
    white-space: normal;
  }

  .open-position-columns {
    grid-template-columns: 1fr;
  }
}
