/* ============================================================
   ITMAGIX — ENTERPRISE SOFTWARE DETAIL PAGE
   Independent page stylesheet
   Namespace: entx-*
   ============================================================ */

.enterprise-software-page {
  --entx-navy:#0A3161;
  --entx-red:#B31942;
  --entx-blue:#79B8EF;
  --entx-ink:#152C3E;
  --entx-muted:#647681;
  --entx-line:#DCE5EA;
  --entx-soft:#F5F8FA;
  --entx-panel:#173650;
}

/* ============================================================
   HERO V3 — ENTERPRISE OPERATIONS CANVAS
   Dark Build-family background with a distinct operating-system identity
   ============================================================ */

.entx-hero-v3 {
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 82% 8%,rgba(121,184,239,.14),transparent 28%),
    radial-gradient(circle at 12% 94%,rgba(179,25,66,.09),transparent 25%),
    linear-gradient(145deg,#173A55 0%,#0B2C46 58%,#08253C 100%);
}

.entx-hero-v3::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.17;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(90deg,transparent 0%,#000 50%,#000 100%);
}

.entx-hero-v3 .container-xl {
  position:relative;
  z-index:2;
}

.entx-hero-v3-breadcrumb {
  margin-bottom:1rem;
}

.entx-hero-v3-breadcrumb a,
.entx-hero-v3-breadcrumb li {
  color:rgba(255,255,255,.72);
}

.entx-hero-v3-breadcrumb a:hover {
  color:#fff;
}

.entx-hero-v3-stage {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(510px,1.08fr);
  grid-template-rows:auto auto;
  gap:1.25rem clamp(2rem,4vw,4.25rem);
  min-height:650px;
  padding:clamp(1.8rem,3.2vw,3rem);
  padding-bottom:108px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:
    linear-gradient(115deg,rgba(255,255,255,.025),transparent 45%),
    rgba(5,27,44,.20);
  box-shadow:0 28px 72px rgba(2,18,30,.18);
}

.entx-hero-v3-statement {
  position:relative;
  z-index:5;
  align-self:end;
  max-width:710px;
}

.entx-hero-v3-statement .eyebrow {
  margin-bottom:.9rem;
  color:#9CCDF2 !important;
}

.enterprise-software-page .entx-hero-v3-statement h1.inner-page-title {
  max-width:700px;
  margin:0;
  color:#fff !important;
  font-size:clamp(2.65rem,4.15vw,4.05rem) !important;
  line-height:1.01 !important;
  letter-spacing:-.042em !important;
}

.entx-hero-v3-operations {
  position:relative;
  z-index:4;
  grid-column:2;
  grid-row:1 / span 2;
  min-height:470px;
  align-self:center;
}

.entx-hero-v3-photo {
  position:absolute;
  z-index:2;
  left:0;
  top:4%;
  width:72%;
  height:73%;
  overflow:hidden;
  border:7px solid #142534;
  border-radius:18px;
  background:#0A2235;
  box-shadow:0 30px 64px rgba(1,14,24,.34);
}

.entx-hero-v3-photo img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.entx-hero-v3-photo::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,24,39,.02) 43%,rgba(5,24,39,.64) 100%);
}

.entx-hero-v3-photo-note {
  position:absolute;
  z-index:4;
  left:1rem;
  right:1rem;
  bottom:1rem;
  padding:.8rem .9rem;
  border-left:3px solid var(--entx-blue);
  background:rgba(7,29,46,.84);
  backdrop-filter:blur(8px);
}

.entx-hero-v3-photo-note small {
  display:block;
  margin-bottom:.28rem;
  color:#9BCBF1;
  font-size:.43rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-hero-v3-photo-note strong {
  display:block;
  color:#fff;
  font-size:.69rem;
  line-height:1.42;
}

.entx-hero-v3-system-board {
  position:absolute;
  z-index:5;
  right:0;
  top:8%;
  width:43%;
  height:76%;
}

.entx-hero-v3-core,
.entx-hero-v3-node {
  position:absolute;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  background:rgba(8,34,53,.90);
  box-shadow:0 16px 38px rgba(1,15,26,.20);
  backdrop-filter:blur(9px);
}

.entx-hero-v3-core {
  left:0;
  right:0;
  top:36%;
  padding:.95rem 1rem;
  border-color:rgba(121,184,239,.28);
  background:rgba(10,49,80,.92);
}

.entx-hero-v3-core small,
.entx-hero-v3-node small {
  display:block;
  margin-bottom:.28rem;
  color:#9BCBF1;
  font-size:.42rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-hero-v3-core strong,
.entx-hero-v3-node strong {
  display:block;
  color:#fff;
}

.entx-hero-v3-core strong {
  font-size:.76rem;
  line-height:1.4;
}

.entx-hero-v3-core span {
  display:block;
  margin-top:.3rem;
  color:#B9C9D3;
  font-size:.54rem;
  line-height:1.45;
}

.entx-hero-v3-node {
  width:46%;
  min-height:82px;
  padding:.68rem .72rem;
}

.entx-hero-v3-node > span {
  display:block;
  margin-bottom:.2rem;
  color:#FF8EA6;
  font-size:.42rem;
  font-weight:850;
}

.entx-hero-v3-node strong {
  font-size:.66rem;
}

.entx-hero-v3-node-work {
  left:0;
  top:0;
}

.entx-hero-v3-node-data {
  right:0;
  top:0;
}

.entx-hero-v3-node-connect {
  left:0;
  bottom:0;
}

.entx-hero-v3-node-control {
  right:0;
  bottom:0;
}

.entx-hero-v3-node-data > span,
.entx-hero-v3-node-control > span {
  color:#8FC7F1;
}

.entx-hero-v3-brief {
  position:relative;
  z-index:5;
  align-self:start;
  max-width:650px;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.11);
}

.entx-hero-v3-brief .inner-page-lead {
  max-width:620px;
  margin:0;
  color:#C8D6DF !important;
  font-size:clamp(.95rem,1.12vw,1.06rem);
  line-height:1.72;
}

.entx-hero-v3-proof {
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:1.05rem;
}

.entx-hero-v3-proof span {
  padding:.36rem .56rem;
  color:#D9E4EB;
  font-size:.54rem;
  font-weight:760;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.045);
}

.entx-hero-v3-action {
  position:absolute;
  z-index:8;
  left:clamp(1.8rem,3.2vw,3rem);
  right:52%;
  bottom:1.15rem;
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto;
  gap:.7rem 1rem;
  align-items:center;
  min-height:80px;
  padding:.72rem .86rem;
  border:1px solid rgba(255,255,255,.10);
  border-radius:13px;
  background:rgba(5,25,40,.74);
  backdrop-filter:blur(9px);
}

.entx-hero-v3-action > div small {
  display:block;
  margin-bottom:.22rem;
  color:#FF8EA6;
  font-size:.42rem;
  font-weight:850;
  letter-spacing:.11em;
}

.entx-hero-v3-action > div strong {
  display:block;
  color:#fff;
  font-size:.66rem;
  line-height:1.4;
}

.entx-hero-v3 .btn-itx-primary {
  white-space:nowrap;
  background:var(--entx-red);
  border-color:var(--entx-red);
  box-shadow:0 10px 26px rgba(179,25,66,.18);
}

.entx-hero-v3 .btn-itx-primary:hover {
  background:#971638;
  border-color:#971638;
}

.entx-hero-v3-secondary {
  grid-column:1 / -1;
  display:inline-flex;
  align-items:center;
  gap:.38rem;
  width:max-content;
  color:#D9EBF8;
  font-size:.66rem;
  font-weight:800;
  text-decoration:none;
}

.entx-hero-v3-secondary:hover {
  color:#fff;
}

.entx-hero-v3-foundation {
  position:absolute;
  z-index:8;
  left:52%;
  right:clamp(1.8rem,3.2vw,3rem);
  bottom:1.15rem;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  border:1px solid rgba(255,255,255,.10);
  border-radius:13px;
  background:rgba(5,25,40,.68);
  backdrop-filter:blur(9px);
}

.entx-hero-v3-foundation > div {
  min-height:50px;
  padding:.58rem .72rem;
}

.entx-hero-v3-foundation > div:nth-child(even) {
  border-left:1px solid rgba(255,255,255,.08);
}

.entx-hero-v3-foundation > div:nth-child(n+3) {
  border-top:1px solid rgba(255,255,255,.08);
}

.entx-hero-v3-foundation small {
  display:block;
  margin-bottom:.18rem;
  color:#8FC7F1;
  font-size:.40rem;
  font-weight:850;
  letter-spacing:.10em;
}

.entx-hero-v3-foundation > div:nth-child(even) small {
  color:#FF8EA6;
}

.entx-hero-v3-foundation strong {
  display:block;
  color:#fff;
  font-size:.56rem;
  line-height:1.35;
}

@media (max-width:1199.98px) {
  .entx-hero-v3-stage {
    grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);
    gap:1rem 2rem;
  }

  .entx-hero-v3-action {
    right:50%;
  }

  .entx-hero-v3-foundation {
    left:50%;
  }
}

@media (max-width:991.98px) {
  .entx-hero-v3-stage {
    grid-template-columns:1fr;
    grid-template-rows:auto;
    min-height:auto;
    padding:1.6rem 1.35rem 1.1rem;
  }

  .entx-hero-v3-statement,
  .entx-hero-v3-brief,
  .entx-hero-v3-operations {
    grid-column:1;
    grid-row:auto;
  }

  .entx-hero-v3-statement {
    max-width:760px;
  }

  .entx-hero-v3-operations {
    min-height:525px;
    margin-top:.3rem;
  }

  .entx-hero-v3-action,
  .entx-hero-v3-foundation {
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
  }

  .entx-hero-v3-action {
    grid-template-columns:1fr auto;
    margin-top:.2rem;
  }

  .entx-hero-v3-foundation {
    grid-template-columns:repeat(2,1fr);
    margin-top:.75rem;
  }
}

@media (max-width:767.98px) {
  .enterprise-software-page .entx-hero-v3-statement h1.inner-page-title {
    font-size:clamp(2.25rem,9.5vw,3.35rem) !important;
  }

  .entx-hero-v3 {
    background:
      radial-gradient(circle at 86% 5%,rgba(121,184,239,.15),transparent 25%),
      linear-gradient(155deg,#173A55 0%,#0B2B45 60%,#08243A 100%);
  }

  .entx-hero-v3-stage {
    padding:1.25rem .9rem .9rem;
    border-radius:18px;
  }

  .entx-hero-v3-operations {
    min-height:470px;
  }

  .entx-hero-v3-photo {
    left:0;
    top:1rem;
    width:86%;
    height:64%;
  }

  .entx-hero-v3-system-board {
    right:0;
    top:0;
    width:48%;
    height:74%;
  }

  .entx-hero-v3-core {
    top:37%;
  }

  .entx-hero-v3-node {
    width:47%;
    min-height:72px;
    padding:.58rem .62rem;
  }

  .entx-hero-v3-action {
    grid-template-columns:1fr;
  }

  .entx-hero-v3 .btn-itx-primary {
    width:100%;
    justify-content:center;
  }

  .entx-hero-v3-foundation {
    grid-template-columns:1fr;
  }

  .entx-hero-v3-foundation > div,
  .entx-hero-v3-foundation > div:nth-child(even),
  .entx-hero-v3-foundation > div:nth-child(n+3) {
    border-left:0;
    border-top:1px solid rgba(255,255,255,.08);
  }

  .entx-hero-v3-foundation > div:first-child {
    border-top:0;
  }
}

@media (max-width:575.98px) {
  .entx-hero-v3-operations {
    min-height:430px;
  }

  .entx-hero-v3-photo {
    width:90%;
    height:61%;
  }

  .entx-hero-v3-system-board {
    width:51%;
  }

  .entx-hero-v3-node {
    min-height:67px;
  }

  .entx-hero-v3-core {
    padding:.75rem .8rem;
  }
}

/* ============================================================
   IN-PAGE NAVIGATION
   ============================================================ */

.entx-page-nav {
  position:relative;
  z-index:4;
  border-top:1px solid #E2E8EC;
  border-bottom:1px solid #E2E8EC;
  background:rgba(255,255,255,.95);
}

.entx-page-nav .container-xl {
  display:flex;
  align-items:center;
  gap:1.5rem;
  min-height:58px;
  overflow-x:auto;
  scrollbar-width:none;
}

.entx-page-nav .container-xl::-webkit-scrollbar {
  display:none;
}

.entx-page-nav a {
  flex:0 0 auto;
  color:#596B78;
  font-size:.66rem;
  font-weight:780;
  text-decoration:none;
}

.entx-page-nav a:hover {
  color:var(--entx-navy);
}

.entx-page-nav .entx-page-nav-cta {
  margin-left:auto;
  padding:.5rem .78rem;
  color:#fff;
  border-radius:6px;
  background:var(--entx-navy);
}

/* ============================================================
   SHARED SECTION HEADS
   ============================================================ */

.entx-services-head,
.entx-systems-head,
.entx-engagement-head,
.entx-related-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.64fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:end;
  margin-bottom:2rem;
}

.enterprise-software-page .section-title {
  max-width:820px;
}

/* ============================================================
   SERVICES
   ============================================================ */

.entx-services {
  background:#fff;
}

.entx-services-layout {
  display:grid;
  grid-template-columns:minmax(400px,.86fr) minmax(0,1.14fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:start;
}

.entx-services-visual {
  position:sticky;
  top:1.5rem;
  min-height:650px;
  overflow:hidden;
  border-radius:18px;
  background:#17334C;
}

.entx-services-visual > img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.entx-services-visual::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(9,31,50,.03) 38%,rgba(9,31,50,.82) 100%);
}

.entx-services-visual-copy {
  position:absolute;
  z-index:2;
  left:1.35rem;
  right:1.35rem;
  bottom:1.35rem;
}

.entx-services-visual-copy small {
  display:block;
  margin-bottom:.4rem;
  color:#9FD0F4;
  font-size:.49rem;
  font-weight:850;
  letter-spacing:.13em;
}

.entx-services-visual-copy strong {
  display:block;
  max-width:470px;
  color:#fff;
  font-size:1.08rem;
  line-height:1.45;
}

.entx-services-list {
  border-top:1px solid var(--entx-line);
}

.entx-services-list article {
  display:grid;
  grid-template-columns:46px 1fr;
  gap:1rem;
  padding:1.4rem 0;
  border-bottom:1px solid var(--entx-line);
}

.entx-service-mark {
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  color:var(--entx-navy);
  border:1px solid #CFDAE1;
  border-radius:9px;
  background:#F8FAFB;
}

.entx-services-list article:nth-child(even) .entx-service-mark {
  color:var(--entx-red);
}

.entx-services-list span {
  display:block;
  margin-bottom:.32rem;
  color:#8997A0;
  font-size:.49rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.entx-services-list h3 {
  margin:0 0 .4rem;
  color:var(--entx-ink);
  font-size:1rem;
  line-height:1.42;
}

.entx-services-list p {
  margin:0;
  color:#6C7B85;
  font-size:.74rem;
  line-height:1.58;
}

/* ============================================================
   4-IMAGE SYSTEM GALLERY
   ============================================================ */

.entx-systems {
  background:#F5F8FA;
  border-top:1px solid #E3EAEE;
  border-bottom:1px solid #E3EAEE;
}

.entx-system-gallery {
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr 1.15fr;
  grid-template-rows:360px;
  gap:.8rem;
}

.entx-system-tile {
  position:relative;
  overflow:hidden;
  color:#fff;
  text-decoration:none;
  border-radius:16px;
  background:#17324A;
}

.entx-system-tile > img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .35s ease;
}

.entx-system-tile::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,28,46,.03) 38%,rgba(7,28,46,.86) 100%);
}

.entx-system-tile-overlay {
  position:absolute;
  z-index:2;
  left:1rem;
  right:1rem;
  bottom:1rem;
  transform:translateY(26px);
  transition:transform .28s ease;
}

.entx-system-tile-overlay small {
  display:block;
  margin-bottom:.35rem;
  color:#A5D3F5;
  font-size:.46rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-system-tile-overlay strong {
  display:block;
  color:#fff;
  font-size:.86rem;
  line-height:1.42;
}

.entx-system-tile-overlay span {
  display:block;
  margin-top:.55rem;
  color:#D3DEE6;
  font-size:.62rem;
  opacity:0;
  transition:opacity .28s ease;
}

.entx-system-tile:hover > img {
  transform:scale(1.04);
}

.entx-system-tile:hover .entx-system-tile-overlay {
  transform:translateY(0);
}

.entx-system-tile:hover .entx-system-tile-overlay span {
  opacity:1;
}

/* ============================================================
   WHEN IT FITS
   ============================================================ */

.entx-fit {
  background:#fff;
}

.entx-fit-panel {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);
  overflow:hidden;
  border-radius:20px;
  background:
    radial-gradient(circle at 85% 10%,rgba(121,184,239,.10),transparent 26%),
    linear-gradient(145deg,#18364E,#0E293F);
}

.entx-fit-copy {
  padding:clamp(2rem,5vw,4rem);
}

.entx-fit-copy .eyebrow {
  color:#9ACCF2;
}

.entx-fit-copy .section-title {
  color:#fff;
}

.entx-fit-copy .section-lead {
  color:#C7D4DC;
}

.entx-text-link {
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  margin-top:1rem;
  color:var(--entx-navy);
  font-size:.72rem;
  font-weight:800;
  text-decoration:none;
}

.entx-fit .entx-text-link {
  color:#9FD0F4;
}

.entx-fit-signals {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:1rem 0;
  border-left:1px solid rgba(255,255,255,.10);
}

.entx-fit-signals article {
  padding:1.3rem 1.6rem;
}

.entx-fit-signals article + article {
  border-top:1px solid rgba(255,255,255,.09);
}

.entx-fit-signals strong {
  display:block;
  margin-bottom:.35rem;
  color:#fff;
  font-size:.88rem;
}

.entx-fit-signals p {
  margin:0;
  color:#B8C7D0;
  font-size:.72rem;
  line-height:1.55;
}

/* ============================================================
   DELIVERY
   ============================================================ */

.entx-delivery {
  background:#F7F9FB;
  border-top:1px solid #E4EAEE;
  border-bottom:1px solid #E4EAEE;
}

.entx-delivery-grid {
  display:grid;
  grid-template-columns:minmax(420px,.92fr) minmax(0,1.08fr);
  gap:clamp(3rem,6vw,6rem);
  align-items:center;
}

.entx-delivery-visual {
  position:relative;
  min-height:680px;
}

.entx-delivery-image {
  position:absolute;
  overflow:hidden;
  border-radius:16px;
  box-shadow:0 18px 45px rgba(18,42,62,.10);
}

.entx-delivery-image img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.entx-delivery-image-main {
  inset:0 13% 12% 0;
}

.entx-delivery-image-small {
  right:0;
  bottom:0;
  width:47%;
  height:42%;
  border:7px solid #F7F9FB;
}

.entx-delivery-note {
  position:absolute;
  z-index:3;
  left:1.2rem;
  right:23%;
  bottom:1.1rem;
  padding:1rem;
  border-left:3px solid var(--entx-red);
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 30px rgba(15,37,56,.10);
}

.entx-delivery-note small {
  display:block;
  margin-bottom:.34rem;
  color:var(--entx-red);
  font-size:.47rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-delivery-note strong {
  display:block;
  color:var(--entx-ink);
  font-size:.77rem;
  line-height:1.48;
}

.entx-delivery-flow {
  margin-top:1.8rem;
  border-top:1px solid #D9E2E8;
}

.entx-delivery-flow article {
  display:grid;
  grid-template-columns:86px 1fr;
  gap:1rem;
  padding:1.15rem 0;
  border-bottom:1px solid #D9E2E8;
}

.entx-delivery-flow span {
  color:var(--entx-red);
  font-size:.53rem;
  font-weight:850;
  letter-spacing:.11em;
}

.entx-delivery-flow article:nth-child(even) span {
  color:var(--entx-navy);
}

.entx-delivery-flow h3 {
  margin:0 0 .3rem;
  color:var(--entx-ink);
  font-size:.95rem;
}

.entx-delivery-flow p {
  margin:0;
  color:#6B7A85;
  font-size:.73rem;
  line-height:1.55;
}

/* ============================================================
   ARCHITECTURE
   ============================================================ */

.entx-architecture {
  background:#fff;
}

.entx-architecture-stage {
  position:relative;
  min-height:650px;
  overflow:hidden;
  border-radius:20px;
  background:#0A273E;
}

.entx-architecture-image,
.entx-architecture-image img,
.entx-architecture-shade {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.entx-architecture-image img {
  object-fit:cover;
}

.entx-architecture-shade {
  background:
    linear-gradient(90deg,rgba(7,29,47,.96) 0%,rgba(7,29,47,.80) 48%,rgba(7,29,47,.28) 100%),
    linear-gradient(180deg,rgba(7,29,47,.12),rgba(7,29,47,.55));
}

.entx-architecture-copy {
  position:absolute;
  z-index:2;
  top:clamp(2rem,6vw,5rem);
  left:clamp(1.5rem,5vw,4rem);
  max-width:690px;
}

.entx-architecture-copy .eyebrow {
  color:#9ECFF3;
}

.entx-architecture-copy .section-title {
  color:#fff;
}

.entx-architecture-copy .section-lead {
  color:#C8D5DE;
}

.entx-architecture-layers {
  position:absolute;
  z-index:2;
  left:clamp(1.5rem,5vw,4rem);
  right:clamp(1.5rem,5vw,4rem);
  bottom:1.5rem;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(7,30,48,.72);
  backdrop-filter:blur(10px);
}

.entx-architecture-layers span {
  padding:.8rem .7rem;
  color:#E1EAF0;
  font-size:.57rem;
  font-weight:780;
  text-align:center;
}

.entx-architecture-layers span + span {
  border-left:1px solid rgba(255,255,255,.09);
}

.entx-architecture-layers span:nth-child(4),
.entx-architecture-layers span:nth-child(5),
.entx-architecture-layers span:nth-child(6) {
  border-top:1px solid rgba(255,255,255,.09);
}

.entx-architecture-layers span:nth-child(4) {
  border-left:0;
}

/* ============================================================
   WHY ITMAGIX
   ============================================================ */

.entx-why {
  background:#F5F8FA;
  border-top:1px solid #E3EAEE;
  border-bottom:1px solid #E3EAEE;
}

.entx-why-layout {
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
  gap:clamp(3rem,6vw,6rem);
  align-items:center;
}

.entx-why-list {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:0;
  margin-top:1.5rem;
  border-top:1px solid #D8E2E8;
  border-left:1px solid #D8E2E8;
}

.entx-why-list article {
  padding:1rem;
  border-right:1px solid #D8E2E8;
  border-bottom:1px solid #D8E2E8;
  background:rgba(255,255,255,.58);
}

.entx-why-list strong {
  display:block;
  margin-bottom:.35rem;
  color:var(--entx-ink);
  font-size:.8rem;
}

.entx-why-list p {
  margin:0;
  color:#697984;
  font-size:.7rem;
  line-height:1.55;
}

.entx-why-visual {
  position:relative;
  min-height:610px;
  overflow:hidden;
  border-radius:20px;
  background:#17344C;
}

.entx-why-visual > img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.entx-why-visual::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(8,31,49,.02) 38%,rgba(8,31,49,.75) 100%);
}

.entx-why-quote {
  position:absolute;
  z-index:2;
  left:1.2rem;
  right:1.2rem;
  bottom:1.2rem;
  padding:1rem 1rem 1rem 1.15rem;
  border-left:3px solid var(--entx-blue);
  background:rgba(8,35,56,.83);
  backdrop-filter:blur(8px);
}

.entx-why-quote small {
  display:block;
  margin-bottom:.35rem;
  color:#9DCDF2;
  font-size:.47rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-why-quote strong {
  display:block;
  color:#fff;
  font-size:.92rem;
  line-height:1.48;
}

/* ============================================================
   ENGAGEMENT
   ============================================================ */

.entx-engagement {
  background:#fff;
}

.entx-engagement-options {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--entx-line);
  border-bottom:1px solid var(--entx-line);
}

.entx-engagement-options article {
  min-height:300px;
  padding:1.35rem 1.25rem;
}

.entx-engagement-options article + article {
  border-left:1px solid var(--entx-line);
}

.entx-engagement-options small {
  display:block;
  margin-bottom:2.3rem;
  color:var(--entx-red);
  font-size:.48rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-engagement-options article:nth-child(2) small {
  color:var(--entx-navy);
}

.entx-engagement-options h3 {
  margin:0 0 .55rem;
  max-width:340px;
  color:var(--entx-ink);
  font-size:1rem;
  line-height:1.42;
}

.entx-engagement-options p {
  margin:0 0 1rem;
  color:#6C7B85;
  font-size:.72rem;
  line-height:1.57;
}

.entx-engagement-options a {
  color:var(--entx-navy);
  font-size:.65rem;
  font-weight:800;
  text-decoration:none;
}

.entx-engagement-options article:nth-child(3) a {
  color:var(--entx-red);
}

/* ============================================================
   QUESTIONS / FAQ
   ============================================================ */

.entx-questions {
  color:#fff;
  background:
    radial-gradient(circle at 85% 10%,rgba(121,184,239,.10),transparent 30%),
    linear-gradient(145deg,#1D3B54,#122B41);
}

.entx-questions-layout {
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(3rem,7vw,7rem);
  align-items:start;
}

.entx-questions .eyebrow {
  color:#9BCBF1;
}

.entx-questions .section-title {
  color:#fff;
}

.entx-questions .section-lead {
  color:#C5D2DB;
}

.entx-questions .entx-text-link {
  color:#9BCBF1;
}

.entx-faq {
  border-top:1px solid rgba(255,255,255,.14);
}

.entx-faq details {
  border-bottom:1px solid rgba(255,255,255,.12);
}

.entx-faq summary {
  position:relative;
  padding:1.15rem 2rem 1.15rem 0;
  color:#fff;
  font-size:.82rem;
  font-weight:740;
  cursor:pointer;
  list-style:none;
}

.entx-faq summary::-webkit-details-marker {
  display:none;
}

.entx-faq summary::after {
  content:"+";
  position:absolute;
  right:.2rem;
  top:50%;
  transform:translateY(-50%);
  color:#8FC7F1;
  font-size:1.25rem;
  font-weight:400;
}

.entx-faq details[open] summary::after {
  content:"–";
}

.entx-faq p {
  max-width:760px;
  margin:-.15rem 0 1.15rem;
  color:#B8C8D2;
  font-size:.72rem;
  line-height:1.62;
}

/* ============================================================
   RELATED BUILD PATHS — STANDARD BUILD DETAIL PATTERN
   Image-led cards, 4-up desktop / 2-up tablet / 1-up mobile
   ============================================================ */

.entx-related {
  background:#F6F8FA;
  border-top:1px solid #E3E9ED;
}

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

.entx-related-card {
  overflow:hidden;
  color:inherit;
  text-decoration:none;
  border:1px solid #DCE4E9;
  border-radius:14px;
  background:#fff;
  transition:transform .2s ease,box-shadow .2s ease;
}

.entx-related-card:hover {
  transform:translateY(-4px);
  box-shadow:0 16px 38px rgba(18,41,61,.09);
}

.entx-related-thumb {
  height:165px;
  overflow:hidden;
  background:#E8EEF2;
}

.entx-related-thumb img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .3s ease;
}

.entx-related-card:hover .entx-related-thumb img {
  transform:scale(1.035);
}

.entx-related-copy {
  padding:1rem;
}

.entx-related-copy > span {
  display:block;
  margin-bottom:.45rem;
  color:var(--entx-red);
  font-size:.48rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-related-card:nth-child(even) .entx-related-copy > span {
  color:var(--entx-navy);
}

.entx-related-copy h3 {
  margin:0 0 .42rem;
  color:var(--entx-ink);
  font-size:.93rem;
  line-height:1.35;
}

.entx-related-copy p {
  margin:0 0 .8rem;
  color:#6A7984;
  font-size:.71rem;
  line-height:1.55;
}

.entx-related-copy strong {
  color:var(--entx-navy);
  font-size:.64rem;
}

.entx-related-card:nth-child(even) .entx-related-copy strong {
  color:var(--entx-red);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1199.98px) {
  .entx-hero-stage {
    grid-template-columns:1fr 1fr;
  }

  .entx-system-gallery {
    grid-template-columns:repeat(2,1fr);
    grid-template-rows:330px 330px;
  }

  .entx-services-layout,
  .entx-delivery-grid,
  .entx-why-layout {
    grid-template-columns:1fr;
  }

  .entx-services-visual {
    position:relative;
    top:auto;
    min-height:500px;
  }

  .entx-delivery-visual {
    min-height:560px;
  }

  .entx-why-visual {
    min-height:520px;
  }

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

@media (max-width:991.98px) {
  .entx-hero-stage {
    grid-template-columns:1fr;
  }

  .entx-hero-visual {
    min-height:520px;
  }

  .entx-services-head,
  .entx-systems-head,
  .entx-engagement-head,
  .entx-related-head,
  .entx-fit-panel,
  .entx-questions-layout {
    grid-template-columns:1fr;
  }

  .entx-fit-signals {
    border-left:0;
    border-top:1px solid rgba(255,255,255,.10);
  }

  .entx-architecture-stage {
    min-height:720px;
  }

  .entx-architecture-copy {
    right:1.5rem;
  }

  .entx-engagement-options {
    grid-template-columns:1fr;
  }

  .entx-engagement-options article {
    min-height:auto;
  }

  .entx-engagement-options article + article {
    border-left:0;
    border-top:1px solid var(--entx-line);
  }

  .entx-engagement-options small {
    margin-bottom:1rem;
  }
}

@media (max-width:767.98px) {
  .entx-hero-copy {
    padding:2rem 1.3rem;
  }

  .entx-hero-copy .inner-page-title {
    font-size:clamp(2.25rem,9.5vw,3.35rem);
  }

  .entx-hero-visual {
    min-height:460px;
  }

  .entx-page-nav .container-xl {
    gap:1rem;
  }

  .entx-page-nav .entx-page-nav-cta {
    margin-left:0;
  }

  .entx-system-gallery {
    grid-template-columns:1fr;
    grid-template-rows:repeat(4,330px);
  }

  .entx-system-tile-overlay {
    transform:none;
  }

  .entx-system-tile-overlay span {
    opacity:1;
  }

  .entx-services-visual {
    min-height:420px;
  }

  .entx-delivery-visual {
    min-height:480px;
  }

  .entx-delivery-image-main {
    inset:0 5% 14% 0;
  }

  .entx-delivery-image-small {
    width:50%;
    height:38%;
  }

  .entx-delivery-note {
    right:12%;
  }

  .entx-architecture-stage {
    min-height:auto;
    padding:2rem 1.2rem 1.2rem;
  }

  .entx-architecture-image,
  .entx-architecture-shade {
    position:absolute;
  }

  .entx-architecture-copy,
  .entx-architecture-layers {
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    max-width:none;
  }

  .entx-architecture-copy {
    margin-bottom:2rem;
  }

  .entx-architecture-layers {
    grid-template-columns:1fr;
  }

  .entx-architecture-layers span,
  .entx-architecture-layers span:nth-child(4) {
    border-left:0;
    border-top:1px solid rgba(255,255,255,.09);
  }

  .entx-why-list {
    grid-template-columns:1fr;
  }

  .entx-related-grid {
    grid-template-columns:1fr;
  }
}

@media (max-width:575.98px) {
  .entx-hero-visual {
    min-height:430px;
  }

  .entx-system-window-side {
    left:1rem;
    right:1rem;
    max-width:none;
  }

  .entx-services-list article {
    grid-template-columns:38px 1fr;
    gap:.75rem;
  }

  .entx-delivery-visual {
    min-height:430px;
  }

  .entx-delivery-note {
    left:.8rem;
    right:.8rem;
    bottom:.8rem;
  }

  .entx-delivery-flow article {
    grid-template-columns:1fr;
    gap:.35rem;
  }

  .entx-why-visual {
    min-height:430px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .entx-system-tile > img,
  .entx-system-tile-overlay,
  .entx-system-tile-overlay span,
  .entx-related-card {
    transition:none !important;
  }
}

/* H1 SCALE SAFETY — keep detail-page heroes balanced */
.enterprise-software-page h1.inner-page-title {
  max-width:720px;
  font-size:clamp(2.65rem,4.25vw,4.15rem) !important;
  line-height:1.01;
  letter-spacing:-.042em;
}

@media (max-width:767.98px) {
  .enterprise-software-page h1.inner-page-title {
    font-size:clamp(2.25rem,9.5vw,3.35rem) !important;
  }
}
/* ============================================================
   ENTERPRISE SOFTWARE — DELIVERY V2
   Website-first editorial delivery section
   ============================================================ */

.entx-delivery-v2 {
  background:#F7F9FB;
  border-top:1px solid #E4EAEE;
  border-bottom:1px solid #E4EAEE;
}

.entx-delivery-v2-head {
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(320px,.64fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:end;
  margin-bottom:2.1rem;
}

.entx-delivery-v2-head .section-title {
  max-width:760px;
  margin-bottom:0;
}

.entx-delivery-v2-stage {
  display:grid;
  grid-template-columns:minmax(420px,.92fr) minmax(0,1.08fr);
  gap:clamp(2.5rem,5vw,5rem);
  align-items:stretch;
}

.entx-delivery-v2-media {
  position:relative;
  min-height:620px;
  overflow:hidden;
  border-radius:20px;
  background:#17344C;
  box-shadow:0 20px 52px rgba(18,42,62,.10);
}

.entx-delivery-v2-media > img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.entx-delivery-v2-media::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(9,31,49,.02) 48%,rgba(9,31,49,.74) 100%);
}

.entx-delivery-v2-media-card {
  position:absolute;
  z-index:2;
  left:1.2rem;
  right:1.2rem;
  bottom:1.2rem;
  max-width:460px;
  padding:1rem 1.05rem 1rem 1.15rem;
  border-left:3px solid var(--entx-red);
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 30px rgba(15,37,56,.12);
}

.entx-delivery-v2-media-card small {
  display:block;
  margin-bottom:.34rem;
  color:var(--entx-red);
  font-size:.48rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-delivery-v2-media-card strong {
  display:block;
  color:var(--entx-ink);
  font-size:.82rem;
  line-height:1.48;
}

.entx-delivery-v2-flow {
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-top:1px solid #D7E1E7;
}

.entx-delivery-v2-flow article {
  position:relative;
  display:grid;
  grid-template-columns:54px 1fr;
  gap:1rem;
  padding:1.35rem 0;
  border-bottom:1px solid #D7E1E7;
}

.entx-delivery-v2-flow article::before {
  content:"";
  position:absolute;
  left:17px;
  top:0;
  bottom:0;
  width:1px;
  background:#D6E0E6;
}

.entx-delivery-v2-flow article:first-child::before {
  top:50%;
}

.entx-delivery-v2-flow article:last-child::before {
  bottom:50%;
}

.entx-delivery-v2-index {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  color:#fff;
  font-size:.55rem;
  font-weight:850;
  border-radius:50%;
  background:var(--entx-navy);
  box-shadow:0 0 0 6px #F7F9FB;
}

.entx-delivery-v2-flow article:nth-child(odd) .entx-delivery-v2-index {
  background:var(--entx-red);
}

.entx-delivery-v2-step small {
  display:block;
  margin-bottom:.34rem;
  color:#7E8D97;
  font-size:.49rem;
  font-weight:850;
  letter-spacing:.12em;
}

.entx-delivery-v2-step h3 {
  margin:0 0 .38rem;
  color:var(--entx-ink);
  font-size:1rem;
  line-height:1.4;
}

.entx-delivery-v2-step p {
  margin:0;
  max-width:650px;
  color:#697984;
  font-size:.75rem;
  line-height:1.62;
}

@media (max-width:991.98px) {
  .entx-delivery-v2-head,
  .entx-delivery-v2-stage {
    grid-template-columns:1fr;
  }

  .entx-delivery-v2-media {
    min-height:500px;
  }
}

@media (max-width:575.98px) {
  .entx-delivery-v2-media {
    min-height:420px;
  }

  .entx-delivery-v2-flow article {
    grid-template-columns:44px 1fr;
    gap:.75rem;
  }

  .entx-delivery-v2-flow article::before {
    left:14px;
  }

  .entx-delivery-v2-index {
    width:30px;
    height:30px;
  }
}

/* COMPACT LONG-PAGE VERTICAL RHYTHM */
.enterprise-software-page > .entx-hero-v3 {
  padding-top:1.15rem !important;
  padding-bottom:1.25rem !important;
}

.enterprise-software-page .section-pad {
  padding-top:clamp(3.25rem,4.4vw,4.25rem) !important;
  padding-bottom:clamp(3.25rem,4.4vw,4.25rem) !important;
}

.enterprise-software-page .entx-services-head,
.enterprise-software-page .entx-systems-head,
.enterprise-software-page .entx-engagement-head,
.enterprise-software-page .entx-related-head {
  margin-bottom:1.5rem;
}

@media (max-width:991.98px) {
  .enterprise-software-page > .entx-hero-v3 {
    padding-top:.9rem !important;
    padding-bottom:1rem !important;
  }

  .enterprise-software-page .section-pad {
    padding-top:2.8rem !important;
    padding-bottom:2.8rem !important;
  }
}

@media (max-width:767.98px) {
  .enterprise-software-page > .entx-hero-v3 {
    padding-top:.65rem !important;
    padding-bottom:.75rem !important;
  }

  .enterprise-software-page .section-pad {
    padding-top:2.25rem !important;
    padding-bottom:2.25rem !important;
  }

  .enterprise-software-page .entx-services-head,
  .enterprise-software-page .entx-systems-head,
  .enterprise-software-page .entx-engagement-head,
  .enterprise-software-page .entx-related-head {
    margin-bottom:1.15rem;
  }
}

