:root {
  --ent-ink: #071b45;
  --ent-text: #5c7391;
  --ent-border: #d9e6f4;
  --ent-blue: #1e7cff;
  --ent-cyan: #17bde7;
  --ent-purple: #745aff;
  --ent-teal: #20c8b5;
  --ent-navy: #03172f;
  --ent-navy-2: #0a3978;
}

.ent-page {
  margin: 0;
  overflow-x: hidden;
  color: var(--ent-ink);
  background: #fff;
  font-family: "Poppins", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.ent-page *,
.ent-page *::before,
.ent-page *::after { box-sizing: border-box; }

.ent-page svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ent-shell {
  width: min(1280px, calc(100% - 48px));
  margin: 0 auto;
}

.ent-eyebrow {
  display: inline-block;
  color: #1477ee;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.ent-eyebrow-light { color: #55d6f2; }

.ent-btn {
  min-height: 49px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 19px;
  border: 1px solid transparent;
  border-radius: 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}

.ent-btn-primary {
  color: #fff;
  background: linear-gradient(90deg, #4f5dff, #14ace7);
  box-shadow: 0 14px 30px rgba(38,97,218,.22);
}

.ent-btn-ghost {
  color: #dbeaff;
  border-color: rgba(145,192,241,.40);
  background: rgba(255,255,255,.035);
}

/* HERO */
.ent-hero {
  position: relative;
  min-height: 620px;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  background: #03172f;
}

.ent-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.ent-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(2,14,34,.90) 0%, rgba(3,20,49,.76) 26%, rgba(4,23,55,.42) 48%, rgba(3,17,44,.10) 70%, rgba(3,17,44,0) 84%),
    linear-gradient(180deg, rgba(4,17,36,.06), rgba(4,17,36,.24));
}

.ent-hero-inner {
  min-height: 620px;
  display: flex;
  align-items: center;
}

.ent-hero-copy { width: min(680px, 53%); }

.ent-hero h1 {
  margin: 14px 0 20px;
  color: #fff;
  font-size: clamp(48px, 4vw, 80px);
  line-height: .98;
  letter-spacing: -.055em;
}

.ent-hero h1 span {
  display: block;
  margin-top: 6px;
  color: transparent;
  background: linear-gradient(90deg, #33d4ef 0%, #2f8bff 55%, #6d6fff 100%);
  -webkit-background-clip: text;
  background-clip: text;
}

.ent-hero p {
  max-width: 650px;
  margin: 0 0 29px;
  color: rgba(228,239,252,.88);
  font-size: 16px;
  line-height: 1.72;
}

/* COMPLEXITY */
.ent-complexity {
  padding: 92px 0;
  background: linear-gradient(180deg, #fff 0%, #f7faff 100%);
}

.ent-complexity-grid {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(520px,1.1fr);
  gap: 70px;
  align-items: center;
}

.ent-complexity-copy h2 {
  margin: 9px 0 17px;
  font-size: clamp(40px,3.6vw,57px);
  line-height: 1.04;
  letter-spacing: -.048em;
}

.ent-complexity-copy h2 span {
  display: block;
  color: #1979ed;
}

.ent-complexity-copy p {
  margin: 0;
  color: var(--ent-text);
  font-size: 14px;
  line-height: 1.78;
}

.ent-scale-map {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  border: 1px solid #d6e3f2;
  border-radius: 30px;
  background:
    radial-gradient(circle at 50% 50%, rgba(67,125,255,.12), transparent 24%),
    linear-gradient(145deg, #f9fbff 0%, #eef4ff 100%);
  box-shadow: 0 28px 68px rgba(38,73,117,.12);
}

.ent-scale-grid {
  position: absolute;
  inset: 0;
  opacity: .11;
  background-image:
    linear-gradient(rgba(92,149,232,.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(92,149,232,.16) 1px, transparent 1px);
  background-size: 58px 58px;
}

.ent-scale-ring {
  position: absolute;
  left: 50%;
  top: 52%;
  border: 1px solid rgba(74,135,255,.12);
  border-radius: 50%;
  transform: translate(-50%,-50%);
}
.ent-scale-ring-one { width: 250px; height: 250px; }
.ent-scale-ring-two { width: 390px; height: 390px; }
.ent-scale-ring-three { width: 540px; height: 540px; opacity: .45; }

.ent-scale-kicker {
  position: absolute;
  left: 28px;
  top: 24px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 14px;
  border-radius: 999px;
  color: #2d7ef1;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(133,181,243,.30);
}

.ent-scale-chip {
  position: absolute;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  color: #4e6583;
  font-size: 10px;
  font-weight: 700;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(147,191,245,.30);
  box-shadow: 0 10px 24px rgba(53,84,126,.07);
}
.ent-scale-chip::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 50%;
  background: #4f69ff;
}
.ent-scale-chip-top { right: 28px; top: 24px; }

.ent-scale-links {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.ent-scale-links path {
  fill: none;
  stroke: rgba(67,126,235,.35);
  stroke-width: 2;
  stroke-dasharray: 6 9;
}

.ent-scale-core {
  position: absolute;
  left: 50%;
  top: 52%;
  z-index: 2;
  width: 250px;
  min-height: 270px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px;
  transform: translate(-50%,-50%);
  border-radius: 30px;
  color: #fff;
  background:
    radial-gradient(circle at 70% 18%, rgba(255,255,255,.14), transparent 28%),
    linear-gradient(155deg,#2e88ff 0%,#5f61ff 100%);
  box-shadow: 0 28px 58px rgba(78,92,226,.26);
  text-align: center;
}

.ent-scale-core-mark {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  border-radius: 17px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.09);
}
.ent-scale-core-mark svg { width: 28px; height: 28px; }
.ent-scale-core strong { font-size: 18px; line-height: 1.2; }
.ent-scale-core > small {
  margin-top: 7px;
  color: #e6ecff;
  font-size: 9px;
  line-height: 1.5;
}

.ent-core-metrics {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 8px;
  margin-top: 18px;
}
.ent-core-metrics span {
  min-height: 58px;
  display: grid;
  place-content: center;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 13px;
  background: rgba(255,255,255,.07);
}
.ent-core-metrics b { font-size: 18px; line-height: 1; }
.ent-core-metrics small { margin-top: 4px; color: #dfe8ff; font-size: 8px; }

.ent-scale-node {
  position: absolute;
  z-index: 3;
  width: 210px;
  min-height: 100px;
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 13px;
  align-items: center;
  padding: 16px;
  border: 1px solid rgba(162,198,243,.36);
  border-radius: 20px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 15px 30px rgba(43,77,121,.10);
}
.ent-scale-node-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #2d7ef1;
  background: #edf5ff;
}
.ent-scale-node-icon svg { width: 22px; height: 22px; }
.ent-scale-node div > span {
  display: block;
  color: #2c7bea;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .10em;
}
.ent-scale-node strong { display: block; margin-top: 3px; font-size: 15px; line-height: 1.2; }
.ent-scale-node small { display: block; margin-top: 4px; color: #8094ac; font-size: 9px; }
.ent-scale-node-a { left: 38px; top: 88px; }
.ent-scale-node-b { right: 38px; top: 106px; }
.ent-scale-node-c { left: 42px; bottom: 54px; }
.ent-scale-node-d { right: 42px; bottom: 58px; }

/* CHANGES */
.ent-changes {
  padding: 88px 0 96px;
  background: #f7faff;
}

.ent-section-head {
  max-width: 870px;
  margin: 0 auto 38px;
  text-align: center;
}

.ent-section-head h2,
.ent-plan-heading h2 {
  margin: 8px 0 13px;
  font-size: clamp(38px,3.5vw,54px);
  line-height: 1.04;
  letter-spacing: -.045em;
}

.ent-section-head p,
.ent-plan-heading p {
  margin: 0 auto;
  color: var(--ent-text);
  font-size: 13px;
  line-height: 1.75;
}

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

.ent-change-card {
  min-height: 290px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border: 1px solid var(--ent-border);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(35,75,125,.08);
}

.ent-change-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ent-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 15px;
}
.ent-icon svg { width: 25px; height: 25px; }
.ent-icon-blue { color: #277dff; background: #eaf3ff; }
.ent-icon-teal { color: #0fa793; background: #e6faf6; }
.ent-icon-purple { color: #745aff; background: #f0edff; }
.ent-card-index { color: #9bb0c8; font-size: 11px; font-weight: 800; letter-spacing: .12em; }

.ent-change-card h3 {
  margin: 20px 0 11px;
  font-size: 21px;
  line-height: 1.18;
  letter-spacing: -.025em;
}

.ent-change-card p {
  margin: 0;
  color: #617792;
  font-size: 11.5px;
  line-height: 1.7;
}

.ent-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: auto;
  padding-top: 22px;
}
.ent-card-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 29px;
  padding: 0 11px;
  border-radius: 999px;
  color: #5d7490;
  background: #f1f6fb;
  font-size: 9px;
  font-weight: 700;
}

/* GOVERNANCE */
.ent-governance {
  position: relative;
  overflow: hidden;
  padding: 94px 0 98px;
  color: #fff;
  background:
    radial-gradient(circle at 14% 15%, rgba(27,153,255,.20), transparent 27%),
    radial-gradient(circle at 86% 78%, rgba(109,77,255,.18), transparent 28%),
    linear-gradient(135deg,#031a36 0%,#062b59 52%,#0a3977 100%);
}

.ent-governance-grid-bg {
  position: absolute;
  inset: 0;
  opacity: .07;
  background-image:
    linear-gradient(rgba(112,174,255,.35) 1px, transparent 1px),
    linear-gradient(90deg, rgba(112,174,255,.35) 1px, transparent 1px);
  background-size: 58px 58px;
}

.ent-section-head-dark { position: relative; z-index: 1; }
.ent-section-head-dark h2 { color: #fff; }
.ent-section-head-dark p { color: #bdd0e4; }

.ent-governance-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
}

.ent-governance-card {
  min-height: 320px;
  display: flex;
  flex-direction: column;
  padding: 25px;
  border: 1px solid rgba(112,177,248,.22);
  border-radius: 22px;
  background: linear-gradient(145deg,rgba(9,50,99,.94),rgba(8,43,88,.94));
  box-shadow: 0 20px 50px rgba(0,16,42,.24);
}

.ent-governance-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #55d5f3;
  background: rgba(27,138,232,.18);
  border: 1px solid rgba(76,179,255,.18);
}
.ent-governance-icon svg { width: 26px; height: 26px; }
.ent-governance-icon-purple { color: #b9a6ff; background: rgba(115,83,255,.15); }
.ent-governance-icon-teal { color: #62e3cf; background: rgba(32,199,181,.13); }

.ent-governance-card h3 {
  margin: 20px 0 10px;
  color: #fff;
  font-size: 21px;
  line-height: 1.2;
}

.ent-governance-card p {
  margin: 0;
  color: #c4d5e7;
  font-size: 11.5px;
  line-height: 1.7;
}

.ent-governance-preview {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 22px;
  color: #bfe6ff;
  font-size: 9px;
  font-weight: 750;
}
.ent-governance-preview span {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: 9px;
  border: 1px solid rgba(92,178,255,.20);
  background: rgba(255,255,255,.045);
}
.ent-governance-preview b { color: #4ebaff; }
.ent-governance-preview-purple b { color: #9b86ff; }
.ent-governance-preview-teal b { color: #4ed5c0; }

/* ONBOARDING */
.ent-onboarding {
  padding: 94px 0;
  background: linear-gradient(180deg,#f5f9ff 0%,#fff 100%);
}

.ent-onboarding-grid {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(620px,1.2fr);
  gap: 62px;
  align-items: center;
}

.ent-onboarding-copy h2 {
  margin: 9px 0 14px;
  font-size: clamp(39px,3.5vw,55px);
  line-height: 1.04;
  letter-spacing: -.047em;
}

.ent-onboarding-copy p {
  margin: 0;
  color: var(--ent-text);
  font-size: 13.5px;
  line-height: 1.78;
}

.ent-onboarding-panel {
  display: grid;
  grid-template-columns: minmax(250px,.78fr) minmax(300px,1.22fr);
  gap: 22px;
  padding: 24px;
  border: 1px solid #d4e3f2;
  border-radius: 26px;
  background:
    radial-gradient(circle at 90% 12%, rgba(75,111,255,.08), transparent 24%),
    #fff;
  box-shadow: 0 22px 54px rgba(35,75,125,.10);
}

.ent-onboarding-left {
  position: relative;
  padding: 10px 6px 10px 4px;
}

.ent-onboarding-stage {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
}

.ent-onboarding-number {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(145deg,#2a84ff,#635cff);
  box-shadow: 0 10px 22px rgba(57,91,226,.20);
  font-size: 11px;
  font-weight: 850;
}
.ent-onboarding-stage strong { display: block; font-size: 15px; }
.ent-onboarding-stage small { display: block; margin-top: 3px; color: #7488a0; font-size: 10px; }
.ent-onboarding-line { display: block; width: 1px; height: 36px; margin: 4px 0 4px 24px; background: linear-gradient(#d5e3f2,#a9c8ef); }

.ent-onboarding-right {
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 14px;
  min-width: 0;
}

.ent-onboarding-summary {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 9px;
}
.ent-onboarding-summary div {
  min-height: 64px;
  display: grid;
  place-content: center;
  text-align: center;
  border: 1px solid #e0e9f4;
  border-radius: 14px;
  background: #f8fbff;
}
.ent-onboarding-summary span { color: #164b90; font-size: 20px; line-height: 1; font-weight: 800; }
.ent-onboarding-summary small { margin-top: 5px; color: #7e91a8; font-size: 8px; }

.ent-integration-map {
  position: relative;
  min-height: 230px;
  overflow: hidden;
  border: 1px solid #e0e9f4;
  border-radius: 18px;
  background:
    radial-gradient(circle at 50% 50%, rgba(58,125,255,.12), transparent 28%),
    linear-gradient(145deg,#f8fbff,#eef5ff);
}
.ent-integration-map::before,
.ent-integration-map::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid rgba(71,131,232,.16);
  border-radius: 50%;
  transform: translate(-50%,-50%);
}
.ent-integration-map::before { width: 150px; height: 150px; }
.ent-integration-map::after { width: 240px; height: 240px; }

.ent-integration-hub,
.ent-integration-chip {
  position: absolute;
  z-index: 1;
  display: grid;
  place-items: center;
  border-radius: 12px;
  font-weight: 800;
}
.ent-integration-hub {
  left: 50%;
  top: 50%;
  width: 126px;
  min-height: 100px;
  padding: 16px 14px 13px;
  transform: translate(-50%,-50%);
  text-align: center;
  background: rgba(255,255,255,.96);
  border: 1px solid #d6e3f2;
  box-shadow: 0 16px 30px rgba(48,83,131,.12);
}
.ent-integration-logo {
  display: block;
  width: min(92px, 100%);
  max-height: 38px;
  object-fit: contain;
  object-position: center;
}
.ent-integration-hub small {
  display: block;
  margin-top: 9px;
  color: #59718f;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ent-integration-chip {
  min-width: 62px;
  min-height: 34px;
  padding: 0 9px;
  border: 1px solid #dce7f3;
  color: #48698f;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 22px rgba(43,77,121,.08);
  font-size: 8px;
}
.chip-aws { left: 16px; top: 18px; }
.chip-azure { right: 18px; top: 22px; }
.chip-gcp { left: 22px; bottom: 20px; }
.chip-id { right: 22px; bottom: 20px; }
.chip-ticket { left: 50%; top: 10px; transform: translateX(-50%); }
.chip-more { left: 50%; bottom: 10px; transform: translateX(-50%); color: #2e7de9; }

.ent-onboarding-footerline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ent-onboarding-footerline span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  color: #58718f;
  background: #f5f9fd;
  border: 1px solid #e2eaf4;
  font-size: 8px;
  font-weight: 700;
}
.ent-onboarding-footerline i { width: 7px; height: 7px; border-radius: 50%; background: #21c7a7; }

/* PLAN */
.ent-plan-section {
  padding: 94px 0 100px;
  background: linear-gradient(180deg,#fff 0%,#f4f8ff 100%);
}

.ent-plan-heading {
  max-width: 850px;
  margin-bottom: 32px;
}
.ent-plan-heading h2 { margin-top: 8px; }
.ent-plan-heading p { max-width: 760px; margin: 0; }

.ent-plan-card {
  overflow: hidden;
  border: 1px solid rgba(99,153,226,.24);
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 85% 5%, rgba(113,77,255,.24), transparent 26%),
    linear-gradient(135deg,#031a36 0%,#082d5d 55%,#0b3e80 100%);
  box-shadow: 0 28px 70px rgba(21,54,101,.18);
}

.ent-plan-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 26px 30px;
  border-bottom: 1px solid rgba(135,192,255,.15);
}

.ent-plan-label {
  display: inline-flex;
  min-height: 29px;
  align-items: center;
  padding: 0 11px;
  border-radius: 999px;
  color: #62d9f2;
  background: rgba(41,154,232,.10);
  border: 1px solid rgba(75,182,255,.18);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.ent-plan-card-head h3 { margin: 9px 0 5px; font-size: 29px; letter-spacing: -.035em; }
.ent-plan-card-head p { margin: 0; color: #c5d6e8; font-size: 11px; }

.ent-plan-table {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  padding: 22px 30px 24px;
}

.ent-plan-row {
  min-height: 104px;
}

.ent-plan-feature-card {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid rgba(134,190,252,.15);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.ent-plan-feature-card:hover {
  transform: translateY(-2px);
  background: rgba(255,255,255,.07);
  border-color: rgba(134,190,252,.24);
}

.ent-plan-feature-wide { grid-column: 1 / -1; }

.ent-plan-feature-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #63d9f2 !important;
  background: rgba(43,146,226,.12);
  border: 1px solid rgba(86,183,255,.16);
}
.ent-plan-feature-icon svg { width: 23px; height: 23px; }

.ent-plan-feature-card div > span {
  display: block;
  color: #9fb8d3;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.ent-plan-feature-card strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: 13px;
  line-height: 1.35;
}
.ent-plan-feature-card small {
  display: block;
  margin-top: 5px;
  color: #a9c0d8;
  font-size: 9px;
  line-height: 1.55;
}

.ent-plan-foot {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 19px 30px 22px;
  border-top: 1px solid rgba(135,192,255,.15);
  background: rgba(255,255,255,.025);
}

.ent-plan-foot-icon {
  width: 60px;
  height: 60px;
  flex: 0 0 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  color: #52d8f2;
  background: rgba(35,138,226,.13);
  border: 1px solid rgba(70,177,255,.17);
}
.ent-plan-foot-icon svg {
  width: 28px;
  height: 28px;
  display: block;
}
.ent-plan-foot strong { display: block; font-size: 12px; }
.ent-plan-foot > div > span { display: block; margin-top: 4px; color: #a9c0d8; font-size: 10px; }

/* CLOSING */
.ent-closing {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 88% 28%, rgba(93,76,255,.30), transparent 30%),
    linear-gradient(135deg,#03172f 0%,#062a59 55%,#083678 100%);
}

.ent-closing-grid {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .08;
  background-image:
    linear-gradient(rgba(84,155,255,.35) 1px, transparent 1px),
    linear-gradient(90deg, rgba(84,155,255,.35) 1px, transparent 1px);
  background-size: 52px 52px;
}

.ent-closing-inner {
  min-height: 270px;
  display: grid;
  grid-template-columns: 76px minmax(0,1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 48px 0;
}

.ent-closing-icon {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #50dbf3;
  background: linear-gradient(145deg,rgba(23,125,220,.34),rgba(65,83,255,.23));
  border: 1px solid rgba(85,183,255,.25);
}
.ent-closing-icon svg { width: 30px; height: 30px; }

.ent-closing-copy h2 {
  margin: 6px 0 7px;
  color: #fff;
  font-size: clamp(36px,3.2vw,49px);
  line-height: 1.03;
  letter-spacing: -.045em;
}
.ent-closing-copy p { margin: 0; color: #c7d8ea; font-size: 12px; line-height: 1.6; }
.ent-closing-actions { display: flex; gap: 10px; align-items: center; }

/* REVEAL */
.ent-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .65s ease, transform .65s ease;
}
.ent-reveal.is-visible { opacity: 1; transform: none; }

/* RESPONSIVE */
@media (max-width: 1120px) {
  .ent-complexity-grid,
  .ent-onboarding-grid { grid-template-columns: 1fr; }
  .ent-onboarding-panel { grid-template-columns: 1fr 1.1fr; }
  .ent-change-grid,
  .ent-governance-grid { grid-template-columns: 1fr; }
  .ent-change-card,
  .ent-governance-card { min-height: auto; }
  .ent-closing-inner { grid-template-columns: 72px 1fr; }
  .ent-closing-actions { grid-column: 2; justify-content: flex-start; }
}

@media (max-width: 860px) {
  .ent-hero { min-height: 700px; }
  .ent-hero-bg { object-position: 68% center; }
  .ent-hero-overlay { background: linear-gradient(180deg,rgba(3,15,35,.90) 0%,rgba(3,18,42,.70) 45%,rgba(4,22,52,.32) 73%,rgba(4,22,52,.08) 100%); }
  .ent-hero-inner { min-height: 700px; align-items: flex-start; padding-top: 64px; }
  .ent-hero-copy { width: 100%; max-width: 650px; }
  .ent-scale-map { min-height: 540px; }
  .ent-plan-card-head { flex-direction: column; align-items: flex-start; }
  .ent-plan-table { grid-template-columns: 1fr; }
  .ent-plan-feature-wide { grid-column: auto; }
}

@media (max-width: 680px) {
  .ent-shell { width: calc(100% - 30px); }
  .ent-hero h1 { font-size: clamp(44px,12vw,59px); }
  .ent-hero p { font-size: 14px; }
  .ent-complexity,
  .ent-changes,
  .ent-governance,
  .ent-onboarding,
  .ent-plan-section { padding: 66px 0; }
  .ent-complexity-grid { gap: 38px; }
  .ent-scale-map { min-height: 620px; }
  .ent-scale-core { width: 230px; min-height: 266px; }
  .ent-scale-node { min-width: 190px; grid-template-columns: 44px 1fr; padding: 14px; }
  .ent-scale-node-icon { width: 44px; height: 44px; }
  .ent-scale-node strong { font-size: 14px; }
  .ent-scale-node small { font-size: 10px; }
  .ent-scale-node-a { left: 16px; top: 70px; }
  .ent-scale-node-b { right: 16px; top: 156px; }
  .ent-scale-node-c { left: 20px; bottom: 132px; }
  .ent-scale-node-d { right: 16px; bottom: 52px; }
  .ent-scale-chip-top,
  .ent-scale-kicker { transform: none; }
  .ent-scale-chip-top { right: 18px; top: 18px; }
  .ent-governance-preview { flex-wrap: wrap; }
  .ent-plan-table { padding-left: 20px; padding-right: 20px; }
  .ent-plan-card-head { padding: 24px 20px; }
  .ent-plan-foot { padding: 18px 20px 22px; align-items: flex-start; }
  .ent-onboarding-panel { grid-template-columns: 1fr; }
  .ent-integration-map { min-height: 210px; }
  .ent-closing-inner { grid-template-columns: 1fr; }
  .ent-closing-actions { grid-column: auto; flex-direction: column; align-items: stretch; }
  .ent-btn { width: 100%; }
}

@media (max-width: 480px) {
  .ent-shell { width: calc(100% - 24px); }
  .ent-hero h1 { font-size: 42px; }
  .ent-scale-map { min-height: 660px; }
  .ent-scale-ring-two { width: 320px; height: 320px; }
  .ent-scale-ring-one { width: 230px; height: 230px; }
  .ent-scale-ring-three { width: 440px; height: 440px; }
  .ent-scale-node { min-width: 152px; }
  .ent-scale-node strong { font-size: 12px; }
  .ent-scale-node { min-width: 158px; grid-template-columns: 36px 1fr; }
  .ent-scale-node-icon { width: 36px; height: 36px; }
  .ent-scale-core { width: 206px; min-height: 242px; padding: 18px; }
  .ent-core-metrics b { font-size: 18px; }
  .ent-core-metrics small { font-size: 8px; }
  .ent-integration-hub { width: 104px; min-height: 88px; }
}

@media (prefers-reduced-motion: reduce) {
  .ent-reveal { opacity: 1; transform: none; transition: none; }
}
