/* Final Palette 2 consolidation: navy, blue, aqua and amber. */
:root {
  --p2-navy: #0b3b6f;
  --p2-blue: #246493;
  --p2-aqua: #49aebc;
  --p2-amber: #fdbb3d;
  --p2-paper: #f7fafc;
  --p2-soft: #eaf3f7;
  --p2-ink: #17324d;
  --p2-muted: #64748b;
}

html body { background: var(--p2-paper); color: var(--p2-ink); }
html body .button-primary,
html body .nav-cta { background: var(--p2-amber) !important; border-color: var(--p2-amber) !important; color: #102f4d !important; }
html body .button-primary:hover,
html body .nav-cta:hover { background: #ffd16c !important; border-color: #ffd16c !important; }
html body a:focus-visible,
html body button:focus-visible,
html body input:focus-visible,
html body textarea:focus-visible,
html body select:focus-visible { outline-color: var(--p2-aqua) !important; }

body main#main > section.our-way.our-way,
body main#main > section.flagship-shell.flagship-shell,
body main#main > section.insights-masthead.insights-masthead,
body main#main > section.journey-home.journey-home,
body main#main > section.recruitment-panel.recruitment-panel,
body main#main > section.application-band.application-band,
body main#main > section.reference-band.reference-band,
body main#main > section.embedded-tech.embedded-tech,
body main#main > section.editorial-note.editorial-note {
  background-color: var(--p2-navy) !important;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(73,174,188,.34), transparent 33%),
    radial-gradient(circle at 88% 78%, rgba(253,187,61,.16), transparent 30%),
    linear-gradient(135deg, #082f59 0%, #0b3b6f 55%, #164f7d 100%) !important;
  color: #fff !important;
}
body main#main > section.our-way h2,
body main#main > section.flagship-shell h2,
body main#main > section.insights-masthead h1,
body main#main > section.insights-masthead h2,
body main#main > section.journey-home h2,
body main#main > section.recruitment-panel h2,
body main#main > section.application-band h2,
body main#main > section.reference-band h2,
body main#main > section.embedded-tech h2,
body main#main > section.editorial-note h2 { color: #fff !important; }
body main#main > section.our-way p,
body main#main > section.flagship-shell p,
body main#main > section.insights-masthead p,
body main#main > section.journey-home p,
body main#main > section.recruitment-panel p,
body main#main > section.application-band p,
body main#main > section.reference-band p,
body main#main > section.embedded-tech p,
body main#main > section.editorial-note p { color: #dbeaf1 !important; }

body main#main > section.cta-band.cta-band,
body main#main > section.role-ribbon.role-ribbon {
  background: linear-gradient(115deg, #0b3b6f 0%, #246493 58%, #49aebc 100%) !important;
  color: #fff !important;
}
body main#main > section.cta-band h2,
body main#main > section.cta-band p,
body main#main > section.role-ribbon h2,
body main#main > section.role-ribbon p { color: #fff !important; }

body main#main > section.technology-stage.technology-stage,
body main#main > section.stack-wrap.stack-wrap {
  background: linear-gradient(180deg, var(--p2-paper) 0%, var(--p2-soft) 100%) !important;
  color: var(--p2-ink) !important;
}
body main#main > section.technology-stage h2,
body main#main > section.stack-wrap h2 { color: var(--p2-navy) !important; }
body main#main > section.technology-stage p,
body main#main > section.stack-wrap p { color: var(--p2-muted); }

html body .kicker { color: var(--p2-blue); }
html body :is(.hero,.hero-inner,.our-way,.flagship-shell,.insights-masthead,.journey-home,.recruitment-panel,.application-band,.reference-band,.embedded-tech,.editorial-note,.cta-band,.role-ribbon) .kicker { color: #87e0e7 !important; }
html body .text-link { color: var(--p2-blue); }
html body :is(.our-way,.flagship-shell,.insights-masthead,.journey-home,.recruitment-panel,.application-band,.reference-band,.embedded-tech,.editorial-note,.cta-band,.role-ribbon) .text-link { color: #87e0e7 !important; }

html body .site-footer { background: #072d55 !important; color: #dbeaf1 !important; }
html body .site-footer a { color: #dbeaf1; }
html body .site-footer a:hover { color: #87e0e7; }

html body :is(.service-card,.principle-card,.portfolio-card,.insight-card,.role-card,.tech-card,.credential-card) {
  border-color: rgba(36,100,147,.18) !important;
  box-shadow: 0 18px 48px rgba(11,59,111,.10) !important;
}
html body :is(.service-card,.principle-card,.portfolio-card,.insight-card,.role-card,.tech-card,.credential-card):hover {
  border-color: rgba(73,174,188,.58) !important;
  box-shadow: 0 24px 58px rgba(11,59,111,.16) !important;
}

/* Preserve the requested sticky, one-card-over-another impact animation. */
@media (min-width: 700px) {
  html body .stack-cards > article { position: sticky !important; }
  html body .stack-cards > article:nth-child(1) { top: 92px !important; }
  html body .stack-cards > article:nth-child(2) { top: 112px !important; }
  html body .stack-cards > article:nth-child(3) { top: 132px !important; }
  html body .stack-cards > article:nth-child(4) { top: 152px !important; }
}

@media (max-width: 699px) {
  html body .stack-cards > article { position: relative !important; top: auto !important; }
}

/* Contemporary typography without a render-blocking external font request. */
html body {
  font-family: "Segoe UI Variable Text", "Aptos", "Inter", "Segoe UI", Arial, sans-serif !important;
  font-feature-settings: "kern" 1, "liga" 1;
}
html body :is(h1,h2,h3,h4,.brand strong) {
  font-family: "Segoe UI Variable Display", "Aptos Display", "Inter", "Segoe UI", Arial, sans-serif !important;
  letter-spacing: -.035em;
  text-wrap: balance;
}
html body :is(.kicker,.eyebrow,.role-card small,.service-row>span) {
  font-family: "Segoe UI Variable Text", "Aptos", "Segoe UI", Arial, sans-serif !important;
  letter-spacing: .13em;
}

/* Company: delivery path and principles. */
body main#main > .our-way.our-way { border-block: 1px solid rgba(73,174,188,.22); }
body main#main > .our-way .way-detail {
  background: linear-gradient(135deg,rgba(73,174,188,.17),rgba(255,255,255,.06)) !important;
  border-color: rgba(135,224,231,.28) !important;
  box-shadow: 0 26px 70px rgba(2,24,49,.28);
}
body main#main > .our-way .way-track article {
  background-color:rgba(255,255,255,.055) !important;
  background-image:none !important;
  border-color:rgba(135,224,231,.16) !important;
}
body main#main > .our-way .way-track article:is(.is-active,.is-complete) { background-color:rgba(73,174,188,.13) !important; }
body main#main > .our-way .way-track article h3,
body main#main > .our-way .way-track article p { color:#cfe4ec !important; opacity:1 !important; }
body main#main > .our-way .way-track article:is(.is-active,.is-complete) h3 { color:#fff !important; }
body main#main > .our-way .way-detail h3 { color:#fff !important; }
body main#main > .our-way .way-detail span { color:#87e0e7 !important; }
body main#main > .our-way .way-track:after { background: linear-gradient(90deg,var(--p2-amber),var(--p2-aqua),#87e0e7) !important; }
body main#main > .our-way .way-track article.is-active span svg { fill: var(--p2-amber) !important; stroke: #123a58 !important; }
body main#main > section.delivery-principles.delivery-principles {
  background: linear-gradient(155deg,#f7fafc 0%,#eaf3f7 57%,#d7edf1 100%) !important;
  color: var(--p2-ink) !important;
}
body main#main > .delivery-principles .section-heading { max-width: 920px; }
body main#main > .delivery-principles .steps { gap: 18px; border: 0 !important; }
body main#main > .delivery-principles .step.step {
  position: relative;
  overflow: hidden;
  min-height: 310px;
  padding: 42px !important;
  border: 1px solid rgba(36,100,147,.17) !important;
  border-radius: 24px;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 20px 55px rgba(11,59,111,.10) !important;
}
body main#main > .delivery-principles .step > span {
  position:static !important;
  inset:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  margin:0 0 30px !important;
}
body main#main > .delivery-principles .step h3 { margin:0 0 14px !important; padding:0 !important; }
body main#main > .delivery-principles .step p { margin:0 !important; }
body main#main > .delivery-principles .step:nth-child(2),
body main#main > .delivery-principles .step:nth-child(3) { background: linear-gradient(145deg,#0b3b6f,#246493) !important; }
body main#main > .delivery-principles .step > span { background: var(--p2-amber) !important; color: #15324b !important; }
body main#main > .delivery-principles .step h3 { color: var(--p2-navy) !important; }
body main#main > .delivery-principles .step p { color: var(--p2-muted) !important; }
body main#main > .delivery-principles .step:nth-child(2) h3,
body main#main > .delivery-principles .step:nth-child(3) h3 { color: #fff !important; }
body main#main > .delivery-principles .step:nth-child(2) p,
body main#main > .delivery-principles .step:nth-child(3) p { color: #dbeaf1 !important; }

/* Services: Palette 2 cards plus restrained blurred motion. */
body main#main > section.capability-showcase.capability-showcase,
body main#main > section.embedded-tech.embedded-tech { position: relative; overflow: hidden; isolation: isolate; }
body main#main > section.capability-showcase.capability-showcase {
  background: linear-gradient(150deg,#f7fafc 0%,#eaf3f7 70%,#d8eef2 100%) !important;
  color: var(--p2-ink) !important;
}
body main#main > .capability-showcase .section-heading {
  display:block !important;
  max-width:900px !important;
  margin:0 0 48px !important;
}
body main#main > .capability-showcase .section-heading .kicker { width:auto !important; margin:0 0 16px !important; }
body main#main > .capability-showcase .section-heading h2 { max-width:820px !important; margin:0 !important; color:var(--p2-navy) !important; }
body main#main > .capability-showcase .section-heading > p:last-child {
  width:auto !important;
  max-width:760px !important;
  margin:22px 0 0 !important;
  color:var(--p2-muted) !important;
  line-height:1.75;
}
body main#main > .capability-showcase:before,
body main#main > .embedded-tech:before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  filter: blur(70px);
  opacity: .34;
  pointer-events: none;
  animation: p2-drift 13s ease-in-out infinite alternate;
}
body main#main > .capability-showcase:before { right: -120px; top: 90px; background: var(--p2-aqua); }
body main#main > .embedded-tech:before { left: -130px; bottom: -90px; background: rgba(253,187,61,.75); animation-delay: -5s; }
body main#main > .capability-showcase .service-list { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; border: 0 !important; }
body main#main > .capability-showcase .service-row.service-row {
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  align-content: start;
  min-height: 330px;
  padding: 34px !important;
  border: 1px solid rgba(36,100,147,.17) !important;
  border-radius: 24px;
  background: rgba(255,255,255,.9) !important;
  color: var(--p2-ink) !important;
  box-shadow: 0 20px 52px rgba(11,59,111,.10) !important;
  transition: transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
body main#main > .capability-showcase .service-row:nth-child(3n+2) { background: linear-gradient(145deg,#0b3b6f,#174f7e) !important; color:#fff !important; }
body main#main > .capability-showcase .service-row:nth-child(3n) { background: linear-gradient(145deg,#246493,#277f9a) !important; color:#fff !important; }
body main#main > .capability-showcase .service-row:hover { transform: translateY(-6px); box-shadow: 0 28px 64px rgba(11,59,111,.17) !important; border-color: rgba(73,174,188,.65) !important; }
body main#main > .capability-showcase .service-row > ul { grid-column: 2; margin-top: 12px; }
body main#main > .capability-showcase .service-row h2 { color: var(--p2-navy) !important; }
body main#main > .capability-showcase .service-row p,
body main#main > .capability-showcase .service-row li { color: var(--p2-muted) !important; }
body main#main > .capability-showcase .service-row:nth-child(3n+2) h2,
body main#main > .capability-showcase .service-row:nth-child(3n) h2 { color:#fff !important; }
body main#main > .capability-showcase .service-row:nth-child(3n+2) p,
body main#main > .capability-showcase .service-row:nth-child(3n+2) li,
body main#main > .capability-showcase .service-row:nth-child(3n) p,
body main#main > .capability-showcase .service-row:nth-child(3n) li { color:#dbeaf1 !important; }
body main#main > .embedded-tech .embedded-tech-grid article {
  background: rgba(255,255,255,.09) !important;
  border-color: rgba(135,224,231,.22) !important;
  backdrop-filter: blur(12px);
  transition: transform .3s ease,background .3s ease;
}
body main#main > .embedded-tech .embedded-tech-grid article:hover { transform: translateY(-5px); background: rgba(255,255,255,.14) !important; }
body main#main > .embedded-tech .embedded-tech-grid h3 { color:#fff !important; }
body main#main > .embedded-tech .embedded-tech-grid p { color:#dbeaf1 !important; }
body main#main > .embedded-tech .embedded-tech-grid span { color:var(--p2-amber) !important; }
body main#main > .embedded-tech > .text-link,
body main#main > .embedded-tech .text-link { color:#87e0e7 !important; text-decoration-color:var(--p2-amber) !important; }

/* Portfolio and insights: remove all legacy green/indigo treatments. */
body main#main > section.portfolio-mode.portfolio-mode,
body main#main > section.project-lab.project-lab,
body main#main > section.insight-library.insight-library {
  background: linear-gradient(150deg,#f7fafc 0%,#eaf3f7 70%,#d9edf1 100%) !important;
  color: var(--p2-ink) !important;
}
body main#main > .portfolio-mode h2,
body main#main > .project-lab h2,
body main#main > .insight-library h2 { color: var(--p2-navy) !important; }
body main#main > .portfolio-mode p,
body main#main > .project-lab .section-heading>p:last-child { color:var(--p2-muted) !important; }
body main#main > .flagship-shell .flagship-slide.flagship-slide {
  background: radial-gradient(circle at 82% 15%,rgba(73,174,188,.30),transparent 30%),linear-gradient(135deg,#072d55,#0b3b6f 58%,#246493) !important;
}
body main#main > .flagship-shell .flagship-controls button { color:#87e0e7 !important; border-color:rgba(135,224,231,.38) !important; }
body main#main > .project-lab .bento-project:nth-child(3n+2) { background:linear-gradient(145deg,#0b3b6f,#174f7e) !important; }
body main#main > .project-lab .bento-project:nth-child(3n+3) { background:linear-gradient(145deg,#246493,#287e95) !important; }
body main#main > .project-lab .bento-project.bento-project { background-color:#fff !important; background-image:none !important; }
body main#main > .project-lab .bento-project:nth-child(3n+2) { background-image:linear-gradient(145deg,#0b3b6f,#174f7e) !important; background-color:var(--p2-navy) !important; }
body main#main > .project-lab .bento-project:nth-child(3n+3) { background-image:linear-gradient(145deg,#246493,#287e95) !important; background-color:var(--p2-blue) !important; }
body main#main > .project-lab .bento-project:nth-child(3n+2) h2,
body main#main > .project-lab .bento-project:nth-child(3n+2) h3,
body main#main > .project-lab .bento-project:nth-child(3n+3) h2,
body main#main > .project-lab .bento-project:nth-child(3n+3) h3 { color:#fff !important; }
body main#main > .project-lab .bento-project:nth-child(3n+2) p,
body main#main > .project-lab .bento-project:nth-child(3n+3) p { color:#dbeaf1 !important; }
body main#main > .project-lab .bento-project:nth-child(3n+2) > span,
body main#main > .project-lab .bento-project:nth-child(3n+3) > span,
body main#main > .project-lab .bento-project:nth-child(3n+2) .text-link,
body main#main > .project-lab .bento-project:nth-child(3n+3) .text-link { color:#87e0e7 !important; }
body main#main > .project-lab .project-filters button.active,
body main#main > .insight-library .topic-filters button.active { background:var(--p2-blue) !important; border-color:var(--p2-blue) !important; }
body main#main > .project-lab .project-filters button,
body main#main > .insight-library .topic-filters button { color:var(--p2-blue) !important; border-color:rgba(36,100,147,.3) !important; }
body main#main > .project-lab .section-heading {
  display:block !important;
  max-width:930px !important;
  margin-bottom:34px !important;
  padding-left:22px;
  border-left:5px solid var(--p2-amber);
}
body main#main > .project-lab .section-heading .kicker { color:#8a5700 !important; margin-bottom:14px !important; }
body main#main > .project-lab .section-heading h2 { max-width:860px; margin:0; }
body main#main > .project-lab .section-heading > p:last-child { width:auto !important; max-width:760px !important; margin:20px 0 0 !important; }
body main#main > .project-lab .project-filters {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 36px;
}
body main#main > .project-lab .project-filters button {
  border-radius:999px !important;
  padding:11px 20px !important;
  background:#fff !important;
  color:var(--p2-navy) !important;
}
body main#main > .project-lab .project-filters button.active {
  background:var(--p2-amber) !important;
  border-color:var(--p2-amber) !important;
  color:#17324d !important;
  box-shadow:0 10px 26px rgba(253,187,61,.28);
}
body main#main > .insight-library .editorial-card:nth-child(3) { background:linear-gradient(145deg,#246493,#287e95) !important; }
body main#main > .insight-library .editorial-card:nth-child(4) { background:linear-gradient(145deg,#0b3b6f,#174f7e) !important; }
body main#main > .insight-library .editorial-card.editorial-card { background-color:#fff !important; background-image:none !important; }
body main#main > .insight-library .editorial-card:nth-child(3) { background-color:var(--p2-blue) !important; background-image:linear-gradient(145deg,#246493,#287e95) !important; }
body main#main > .insight-library .editorial-card:nth-child(4) { background-color:var(--p2-navy) !important; background-image:linear-gradient(145deg,#0b3b6f,#174f7e) !important; }
body main#main > .insight-library .library-head {
  align-items:end;
  gap:32px;
  border-bottom:1px solid rgba(36,100,147,.17);
  padding-bottom:28px;
  margin-bottom:34px;
}
body main#main > .insight-library .library-head h2 {
  font-size:clamp(38px,5vw,70px) !important;
  line-height:1.02 !important;
  max-width:900px;
}
body main#main > .insight-library .library-head .kicker { color:var(--p2-blue) !important; }
body main#main > .insight-library .editorial-card h2 { color:var(--p2-navy) !important; }
body main#main > .insight-library .editorial-card p { color:var(--p2-muted) !important; }
body main#main > .insight-library .editorial-card:nth-child(3),
body main#main > .insight-library .editorial-card:nth-child(4) { color:#fff !important; }
body main#main > .insight-library .editorial-card:nth-child(3) h2,
body main#main > .insight-library .editorial-card:nth-child(4) h2 { color:#fff !important; }
body main#main > .insight-library .editorial-card:nth-child(3) p,
body main#main > .insight-library .editorial-card:nth-child(4) p,
body main#main > .insight-library .editorial-card:nth-child(3) footer,
body main#main > .insight-library .editorial-card:nth-child(4) footer { color:#dbeaf1 !important; }
body main#main > .insight-library .editorial-card:nth-child(3) footer a,
body main#main > .insight-library .editorial-card:nth-child(4) footer a { background:var(--p2-amber) !important; color:var(--p2-ink) !important; }

/* Careers: remove inherited light-on-light and legacy indigo combinations. */
body main#main > .career-intro .kicker { color:var(--p2-blue) !important; }
body main#main > .career-intro p { color:var(--p2-muted) !important; }
body main#main > section.recruitment-panel.recruitment-panel .steps { gap:16px; border:0 !important; }
body main#main > section.recruitment-panel.recruitment-panel .step.step {
  position:relative;
  min-height:290px;
  padding:38px !important;
  border:1px solid rgba(135,224,231,.20) !important;
  border-radius:22px;
  background-color:rgba(255,255,255,.075) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:0 20px 48px rgba(2,24,49,.20) !important;
}
body main#main > section.recruitment-panel.recruitment-panel .step > span {
  position:static !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  margin:0 0 28px !important;
  background:var(--p2-amber) !important;
  color:var(--p2-ink) !important;
}
body main#main > section.recruitment-panel.recruitment-panel .step h3 { margin:0 0 14px !important; color:#fff !important; }
body main#main > section.recruitment-panel.recruitment-panel .step p { margin:0 !important; color:#dbeaf1 !important; opacity:1 !important; }
body main#main > section.recruitment-panel.recruitment-panel .steps .step.step:nth-child(n) {
  background-color:rgba(255,255,255,.075) !important;
  background-image:none !important;
  color:#fff !important;
}
html body main#main > section.recruitment-panel.recruitment-panel.recruitment-panel .steps.steps .step.step:nth-child(2) {
  background-color:var(--p2-blue) !important;
  background-image:linear-gradient(145deg,#174f7e,#246493) !important;
  border-color:rgba(135,224,231,.24) !important;
}
html body main#main > section.recruitment-panel.recruitment-panel.recruitment-panel .steps.steps .step.step:nth-child(3) {
  background-color:#176b82 !important;
  background-image:linear-gradient(145deg,#176b82,#287e95) !important;
  border-color:rgba(135,224,231,.24) !important;
}
html body main#main#main > section.recruitment-panel .steps .step:nth-child(2) {
  background-color:var(--p2-blue) !important;
  background-image:linear-gradient(145deg,#174f7e,#246493) !important;
}
html body main#main#main > section.recruitment-panel .steps .step:nth-child(3) {
  background-color:#176b82 !important;
  background-image:linear-gradient(145deg,#176b82,#287e95) !important;
}

/* Job profiles: complete Palette 2 redesign. */
body main#main > section.role-ribbon.role-ribbon { background:linear-gradient(90deg,#0b3b6f,#246493 55%,#49aebc) !important; border-block:1px solid rgba(255,255,255,.12); }
body main#main > .role-ribbon i { color:var(--p2-amber) !important; }
body main#main > section.role-section.role-section { background:linear-gradient(155deg,#f7fafc,#eaf3f7 62%,#d8edf1) !important; color:var(--p2-ink) !important; }
body main#main > .role-section .role-grid { gap:20px; }
body main#main > .role-section .role-card.role-card { border-radius:24px !important; border:1px solid rgba(36,100,147,.17) !important; background:#fff !important; color:var(--p2-ink) !important; box-shadow:0 20px 52px rgba(11,59,111,.10) !important; }
body main#main > .role-section .role-card:nth-child(4n+2),
body main#main > .role-section .role-card:nth-child(4n+3) { background:linear-gradient(145deg,#0b3b6f,#246493) !important; color:#fff !important; }
body main#main > .role-section .role-card h2 { color:var(--p2-navy) !important; }
body main#main > .role-section .role-card p { color:var(--p2-muted) !important; }
body main#main > .role-section .role-card > span,
body main#main > .role-section .role-card small,
body main#main > .role-section .role-card b { color:var(--p2-blue) !important; }
body main#main > .role-section .role-card:nth-child(4n+2) h2,
body main#main > .role-section .role-card:nth-child(4n+3) h2 { color:#fff !important; }
body main#main > .role-section .role-card:nth-child(4n+2) p,
body main#main > .role-section .role-card:nth-child(4n+3) p { color:#dbeaf1 !important; }
body main#main > .role-section .role-card:nth-child(4n+2) > span,
body main#main > .role-section .role-card:nth-child(4n+3) > span,
body main#main > .role-section .role-card:nth-child(4n+2) small,
body main#main > .role-section .role-card:nth-child(4n+3) small,
body main#main > .role-section .role-card:nth-child(4n+2) b,
body main#main > .role-section .role-card:nth-child(4n+3) b { color:#87e0e7 !important; }

/* Contact and footer. */
body main#main > section.contact-layout.contact-layout { background:linear-gradient(155deg,#f7fafc,#eaf3f7) !important; }
body main#main > .contact-layout .contact-form { padding:30px; border:1px solid rgba(36,100,147,.16); border-radius:24px; background:#fff; box-shadow:0 24px 62px rgba(11,59,111,.10); }
body main#main > .contact-layout .contact-aside { border-left:0; padding-left:0; display:grid; gap:14px; align-content:start; }
body main#main > .contact-layout .contact-aside>div { padding:24px; border:1px solid rgba(36,100,147,.17) !important; border-radius:20px; background-color:#fff !important; background-image:none !important; color:var(--p2-ink) !important; box-shadow:0 14px 38px rgba(11,59,111,.08); }
body main#main > .contact-layout .contact-aside>div a,
body main#main > .contact-layout .contact-aside>div p { color:var(--p2-ink) !important; }
body main#main > .contact-layout .contact-aside .office-card { background-color:var(--p2-navy) !important; background-image:linear-gradient(145deg,#0b3b6f,#246493) !important; color:#fff !important; }
body main#main > .contact-layout .contact-aside .office-card span { color:#87e0e7 !important; }
body main#main > .contact-layout .contact-aside .office-card h3 { color:#fff !important; margin:.5rem 0; }
body main#main > .contact-layout .contact-aside .office-card p { color:#dbeaf1 !important; }
html body .site-footer.site-footer {
  background-color:#061f3c !important;
  background-image:linear-gradient(135deg,#061f3c 0%,#0b3b6f 68%,#14577f 100%) !important;
  border-top:4px solid var(--p2-amber) !important;
}
html body .site-footer .footer-credentials {
  padding:28px 8vw !important;
  border-bottom:1px solid rgba(135,224,231,.22) !important;
  background:rgba(3,28,54,.42) !important;
}
html body .site-footer .credential-seal {
  background:rgba(255,255,255,.075) !important;
  border-color:rgba(135,224,231,.24) !important;
  box-shadow:none !important;
}
html body .site-footer .credential-seal span,
html body .site-footer .credential-seal small { color:#bfeaf0 !important; }
html body .site-footer .footer-main { padding-top:64px; }
html body .site-footer .footer-main h2 { color:var(--p2-amber) !important; }
html body .site-footer .footer-main p,
html body .site-footer .footer-main span { color:#b9ced9 !important; }
html body .site-footer .footer-main a { color:#eef7fa !important; }
html body .site-footer .footer-main a:hover { color:#87e0e7 !important; }
html body .site-footer .footer-base { border-color:rgba(135,224,231,.18) !important; color:#b9ced9 !important; }

/* Testimonials and documented evidence. */
body main#main > section.evidence-intro.evidence-intro,
body main#main > section.compact-certificates.compact-certificates {
  background-color:var(--p2-paper) !important;
  background-image:linear-gradient(155deg,#f7fafc,#eaf3f7 68%,#d8edf1) !important;
  color:var(--p2-ink) !important;
}
body main#main > .evidence-intro h2,
body main#main > .compact-certificates h2 { color:var(--p2-navy) !important; }
body main#main > .evidence-intro .kicker,
body main#main > .compact-certificates .kicker { color:var(--p2-blue) !important; }
body main#main > .evidence-intro .evidence-quotes article {
  background-color:var(--p2-navy) !important;
  background-image:linear-gradient(145deg,#0b3b6f,#246493) !important;
  border:1px solid rgba(135,224,231,.24) !important;
  color:#fff !important;
  box-shadow:0 20px 50px rgba(11,59,111,.14) !important;
}
body main#main > .evidence-intro .evidence-quotes article:nth-child(2) {
  background-color:var(--p2-blue) !important;
  background-image:linear-gradient(145deg,#246493,#287e95) !important;
}
body main#main > .evidence-intro .evidence-quotes article:nth-child(3) {
  background-color:#176b82 !important;
  background-image:linear-gradient(145deg,#176b82,#49aebc) !important;
}
body main#main > .evidence-intro .evidence-quotes span { color:#87e0e7 !important; }
body main#main > .evidence-intro .evidence-quotes p { color:#fff !important; }
body main#main > .evidence-intro .evidence-quotes b { color:#ffe09a !important; }
body main#main > .compact-certificates .section-heading > p:last-child { color:var(--p2-muted) !important; }
body main#main > .compact-certificates .certificate-thumbs figure {
  background:#fff !important;
  border:1px solid rgba(36,100,147,.17) !important;
  box-shadow:0 20px 50px rgba(11,59,111,.12) !important;
}
body main#main > .compact-certificates .certificate-thumbs figcaption,
body main#main > .compact-certificates .certificate-thumbs strong { color:var(--p2-navy) !important; }
body main#main > .compact-certificates .certificate-thumbs figcaption span { color:var(--p2-blue) !important; }

@keyframes p2-drift { from { transform:translate3d(-4%,0,0) scale(.9); } to { transform:translate3d(18%,14%,0) scale(1.12); } }
@media (max-width:920px) { body main#main > .capability-showcase .service-list { grid-template-columns:1fr; } }
@media (max-width:650px) {
  body main#main > .capability-showcase .service-row.service-row { display:block !important; min-height:0; padding:26px !important; }
  body main#main > .capability-showcase .service-row > span { display:inline-flex; margin-bottom:20px; }
  body main#main > .delivery-principles .step.step { min-height:0; padding:32px 24px !important; }
  body main#main > .contact-layout .contact-form { padding:22px; }
}
@media (prefers-reduced-motion:reduce) {
  body main#main > .capability-showcase:before,
  body main#main > .embedded-tech:before { animation:none; }
  body main#main > .capability-showcase .service-row,
  body main#main > .embedded-tech .embedded-tech-grid article { transition:none; }
}
