/* AMISA growth-positioning homepage — isolated from service pages */
.growth-home {
  --growth-green: #75e6b3;
  --growth-lime: #b8f5c9;
  --growth-blue: #5a9cff;
  --growth-ice: #cfe7ff;
  --growth-warm: #f3c879;
  background:
    radial-gradient(900px circle at 82% 10%, rgba(47,107,255,.16), transparent 46%),
    radial-gradient(700px circle at 14% 46%, rgba(117,230,179,.07), transparent 45%),
    linear-gradient(180deg, #030507 0%, #06101c 43%, #030507 100%);
}
.growth-home section { padding: 112px 0; }
.growth-home .site-header { background: linear-gradient(180deg, rgba(3,5,7,.72), rgba(3,5,7,0)); }
.growth-home .site-header.scrolled { background: rgba(3,5,7,.86); }
.growth-home .nav-links { gap: 18px; }
.growth-home .nav-links a:first-child { color: #e8f3ff; }

.growth-hero {
  min-height: 100vh;
  display: grid;
  align-items: center;
  padding: 138px 0 78px !important;
  overflow: hidden;
}
.growth-hero::before {
  content: "";
  position: absolute;
  width: 820px;
  height: 820px;
  right: -350px;
  top: -270px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(78,142,255,.18), rgba(78,142,255,.04) 42%, transparent 68%);
  pointer-events: none;
}
.growth-hero-grid {
  display: grid;
  grid-template-columns: minmax(0,.92fr) minmax(520px,1.08fr);
  gap: 56px;
  align-items: center;
}
.growth-hero-copy h1 {
  font-size: clamp(54px, 6.2vw, 88px);
  line-height: .94;
  letter-spacing: -.06em;
  max-width: 760px;
  margin: 0 0 26px;
}
.growth-hero-copy h1 .growth-accent {
  background: linear-gradient(100deg, #fff 0%, #dfeeff 36%, #76aefe 68%, #75e6b3 112%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.growth-word-accent {
  color: #78aaff;
  text-shadow: 0 0 26px rgba(90,156,255,.16);
}
.growth-hero-copy > p:not(.eyebrow) {
  max-width: 690px;
  color: #adbed2;
  font-size: clamp(18px, 1.7vw, 22px);
  line-height: 1.58;
  margin: 0 0 30px;
}
.growth-hero-copy .hero-actions { margin-bottom: 30px; }
.growth-hero .btn-secondary {
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.12);
}
.growth-proofline {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: #8295ad;
  font-size: 12px;
}
.growth-proofline span { display: inline-flex; align-items: center; gap: 8px; }
.growth-proofline span::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #75e6b3;
  box-shadow: 0 0 14px rgba(117,230,179,.32);
}

.growth-visual {
  position: relative;
  min-height: 625px;
  display: grid;
  place-items: center;
}
.growth-visual::before,
.growth-visual::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(2px);
  pointer-events: none;
}
.growth-visual::before {
  width: 370px;
  height: 370px;
  right: -20px;
  top: 20px;
  background: radial-gradient(circle, rgba(87,151,255,.24), transparent 68%);
}
.growth-visual::after {
  width: 300px;
  height: 300px;
  left: 0;
  bottom: 20px;
  background: radial-gradient(circle, rgba(117,230,179,.11), transparent 70%);
}
.growth-board {
  width: min(100%, 620px);
  border: 1px solid rgba(143,184,255,.18);
  border-radius: 30px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background:
    linear-gradient(180deg, rgba(13,24,42,.94), rgba(5,11,19,.96)),
    #07101c;
  box-shadow: 0 55px 120px rgba(0,0,0,.5), inset 0 1px rgba(255,255,255,.04);
  transform: perspective(1200px) rotateY(-3deg) rotateX(1deg);
}
.growth-board-head {
  min-height: 58px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #8ea2bc;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-weight: 800;
}
.growth-board-head span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #b7c7d9;
}
.growth-board-head span:last-child::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #75e6b3;
  box-shadow: 0 0 12px rgba(117,230,179,.5);
}
.growth-chart {
  padding: 28px 25px 18px;
  min-height: 385px;
  position: relative;
  overflow: hidden;
}
.growth-chart-grid {
  position: absolute;
  inset: 28px 25px 74px;
  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: 100% 25%, 25% 100%;
  mask-image: linear-gradient(to top, black, rgba(0,0,0,.5));
}
.growth-bars {
  position: relative;
  z-index: 2;
  height: 285px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 14px;
  align-items: end;
  padding: 14px 8px 0;
}
.growth-bar {
  min-width: 0;
  display: grid;
  align-content: end;
  gap: 10px;
  height: 100%;
}
.growth-bar-fill {
  height: var(--bar-height);
  min-height: 66px;
  border: 1px solid rgba(106,164,255,.25);
  border-radius: 15px 15px 8px 8px;
  background:
    linear-gradient(180deg, rgba(105,166,255,.55), rgba(45,98,209,.2)),
    rgba(12,23,41,.75);
  box-shadow: inset 0 1px rgba(255,255,255,.08), 0 0 30px rgba(52,110,221,.08);
  position: relative;
  overflow: hidden;
  transform-origin: bottom;
  animation: growthRise 1.15s cubic-bezier(.2,.8,.2,1) both;
  animation-delay: var(--delay);
}
.growth-bar:nth-child(4) .growth-bar-fill {
  border-color: rgba(117,230,179,.32);
  background: linear-gradient(180deg, rgba(117,230,179,.58), rgba(57,139,110,.16));
  box-shadow: inset 0 1px rgba(255,255,255,.09), 0 0 42px rgba(117,230,179,.09);
}
.growth-bar-fill::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 28%, rgba(255,255,255,.09) 47%, transparent 62%);
  transform: translateX(-130%);
  animation: growthSheen 5.8s ease-in-out infinite;
  animation-delay: calc(var(--delay) + .8s);
}
.growth-bar strong { font-size: 12px; line-height: 1.15; color: #d8e5f6; }
.growth-bar small { display: block; margin-top: 3px; color: #768ba6; font-size: 10px; line-height: 1.25; }
.growth-curve {
  position: absolute;
  z-index: 3;
  inset: 43px 28px 84px 28px;
  width: calc(100% - 56px);
  height: calc(100% - 127px);
  overflow: visible;
  pointer-events: none;
}
.growth-curve path {
  fill: none;
  stroke: url(#growthLineGradient);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-dasharray: 700;
  stroke-dashoffset: 700;
  animation: growthDraw 1.8s .45s ease forwards;
}
.growth-curve circle { fill: #bde7ff; filter: drop-shadow(0 0 7px rgba(93,164,255,.75)); }
.growth-curve circle:last-child { fill: #75e6b3; filter: drop-shadow(0 0 8px rgba(117,230,179,.8)); }
.growth-board-foot {
  margin: 0 22px 22px;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 10px;
}
.growth-signal {
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 14px;
  background: rgba(255,255,255,.025);
}
.growth-signal b { display: block; font-size: 11px; color: #dbe8f7; margin-bottom: 2px; }
.growth-signal span { display: block; color: #72869f; font-size: 9px; text-transform: uppercase; letter-spacing: .09em; }
.growth-float {
  position: absolute;
  z-index: 4;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  padding: 13px 15px;
  background: rgba(7,14,24,.9);
  backdrop-filter: blur(15px);
  box-shadow: 0 18px 45px rgba(0,0,0,.28);
}
.growth-float b { display: block; font-size: 12px; }
.growth-float span { color: #8094ac; font-size: 10px; }
.growth-float.one { top: 74px; right: -8px; }
.growth-float.two { bottom: 70px; left: -16px; }
.growth-float .up { color: #75e6b3; margin-right: 5px; }

.growth-intro-strip {
  border-top: 1px solid rgba(255,255,255,.07);
  border-bottom: 1px solid rgba(255,255,255,.07);
  padding: 42px 0 !important;
  background: rgba(255,255,255,.018);
}
.growth-intro-strip p {
  margin: 0;
  max-width: 1030px;
  font-size: clamp(22px, 2.55vw, 35px);
  letter-spacing: -.03em;
  line-height: 1.25;
  color: #9eafc4;
}
.growth-intro-strip strong { color: #eef6ff; }

.growth-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.58fr);
  gap: 60px;
  align-items: end;
  margin-bottom: 54px;
}
.growth-section-head h2 {
  margin: 0;
  font-size: clamp(42px, 5vw, 68px);
  line-height: .98;
  letter-spacing: -.052em;
  max-width: 820px;
}
.growth-section-head > p { margin: 0; color: #91a4ba; font-size: 17px; }

.growth-leaks { overflow: hidden; }
.leak-grid {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: 20px;
  align-items: stretch;
}
.leak-copy-card,
.leak-visual-card {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(11,21,37,.76), rgba(5,10,18,.72));
  overflow: hidden;
}
.leak-copy-card { padding: 34px; }
.leak-copy-card h3 { font-size: 31px; letter-spacing: -.04em; margin: 0 0 12px; }
.leak-copy-card > p { color: #91a4bb; margin: 0 0 28px; }
.leak-list { display: grid; gap: 12px; }
.leak-item {
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 12px;
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,.07);
}
.leak-item:first-child { border-top: 0; }
.leak-item b { color: #8cb6ff; font-size: 11px; letter-spacing: .12em; }
.leak-item strong { display: block; font-size: 15px; margin-bottom: 3px; }
.leak-item span { color: #7f93ac; font-size: 13px; }
.leak-visual-card { padding: 34px 28px 28px; position: relative; }
.leak-visual-card::after {
  content: "";
  position: absolute;
  width: 270px;
  height: 270px;
  right: -80px;
  bottom: -100px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(117,230,179,.09), transparent 70%);
}
.capture-label { display:flex; justify-content:space-between; gap:20px; margin-bottom:28px; color:#7890aa; font-size:10px; text-transform:uppercase; letter-spacing:.14em; font-weight:800; }
.capture-ladder { display: grid; gap: 12px; position: relative; z-index: 2; }
.capture-step {
  width: var(--step-width);
  margin-left: var(--step-left);
  min-height: 72px;
  padding: 14px 16px;
  border-radius: 15px;
  border: 1px solid rgba(115,165,255,.14);
  background: linear-gradient(90deg, rgba(66,124,224,.12), rgba(255,255,255,.022));
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  transition: transform .25s ease, border-color .25s ease;
}
.capture-step:hover { transform: translateX(4px); border-color: rgba(117,230,179,.25); }
.capture-step b { font-size: 14px; }
.capture-step span { display: block; color: #7f93ab; font-size: 11px; margin-top: 2px; }
.capture-step em { font-style: normal; font-size: 10px; color: #a9c7eb; text-transform: uppercase; letter-spacing: .09em; }
.capture-step.final {
  border-color: rgba(117,230,179,.23);
  background: linear-gradient(90deg, rgba(76,174,130,.16), rgba(255,255,255,.025));
}
.capture-step.final em { color: #8ce9ba; }

.growth-outcomes { background: linear-gradient(180deg, rgba(7,16,28,.48), rgba(3,5,7,0)); }
.outcome-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.outcome-card {
  min-height: 340px;
  padding: 27px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.085);
  background: linear-gradient(180deg, rgba(13,24,42,.8), rgba(6,11,19,.82));
  position: relative;
  overflow: hidden;
  transition: transform .25s ease, border-color .25s ease;
}
.outcome-card:hover { transform: translateY(-5px); border-color: rgba(91,151,255,.26); }
.outcome-card::after {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  border-radius: 50%;
  right: -90px;
  bottom: -95px;
  background: radial-gradient(circle, rgba(68,128,238,.14), transparent 70%);
}
.outcome-card:nth-child(4)::after { background: radial-gradient(circle, rgba(117,230,179,.12), transparent 70%); }
.outcome-icon {
  width: 50px;
  height: 50px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(113,169,255,.18);
  background: rgba(68,126,230,.09);
  margin-bottom: 48px;
  color: #a9cbff;
}
.outcome-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.outcome-card small { color: #7890ab; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; font-weight: 800; }
.outcome-card h3 { margin: 8px 0 10px; font-size: 25px; letter-spacing: -.035em; }
.outcome-card p { color: #899cb4; margin: 0 0 20px; font-size: 14px; }
.outcome-card .text-link { position: relative; z-index: 2; }

.growth-chain-section {
  overflow: hidden;
}
.growth-chain-wrap {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 30px;
  overflow: hidden;
  background:
    radial-gradient(650px circle at 50% 58%, rgba(64,123,226,.12), transparent 60%),
    linear-gradient(180deg, rgba(9,18,31,.88), rgba(5,9,16,.9));
  box-shadow: 0 35px 100px rgba(0,0,0,.25);
}
.chain-top {
  min-height: 116px;
  padding: 28px 32px;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 44px;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,.075);
}
.chain-top small { color:#7394be; font-size:9px; font-weight:850; letter-spacing:.15em; }
.chain-top h3 { margin:6px 0 0; font-size:28px; letter-spacing:-.035em; }
.chain-top p { margin:0; max-width:560px; color:#8397af; font-size:14px; justify-self:end; }
.chain-stage {
  min-height: 490px;
  position: relative;
  padding: 46px 34px 34px;
  overflow: hidden;
}
.chain-stage::before {
  content:"";
  position:absolute; inset:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,black 0%,transparent 82%);
}
.chain-rings {
  position:relative; z-index:2;
  height:180px;
  display:flex; align-items:center; justify-content:center;
  padding-top:8px;
}
.chain-ring {
  width:166px; height:92px; flex:0 0 auto;
  margin-left:-39px;
  border:11px solid rgba(91,151,255,.74);
  border-radius:999px;
  box-shadow:
    inset 0 0 20px rgba(123,181,255,.10),
    0 0 28px rgba(64,121,222,.10);
  position:relative;
  background:transparent;
}
.chain-ring:first-child { margin-left:0; }
.chain-ring:nth-child(odd) { transform:rotate(-22deg); }
.chain-ring:nth-child(even) { transform:rotate(22deg); border-color:rgba(110,179,236,.72); }
.chain-ring.ring-five { border-color:rgba(117,230,179,.68); box-shadow:0 0 32px rgba(117,230,179,.09); }
.chain-ring.weak {
  border-color:rgba(243,200,121,.62);
  box-shadow:0 0 32px rgba(243,200,121,.10);
  opacity:.86;
}
.chain-ring.weak::before, .chain-ring.weak::after {
  content:""; position:absolute; z-index:3;
  width:18px; height:34px;
  background:#08111d;
  border-radius:4px;
}
.chain-ring.weak::before { right:18px; top:-17px; transform:rotate(18deg); }
.chain-ring.weak::after { left:18px; bottom:-17px; transform:rotate(18deg); }
.chain-labels {
  position:relative; z-index:2;
  display:grid; grid-template-columns:repeat(5,1fr); gap:10px;
  margin-top:4px;
}
.chain-labels > div {
  min-height:112px;
  padding:17px 15px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.022);
}
.chain-labels b { display:block; color:#6f8eb6; font-size:9px; letter-spacing:.12em; }
.chain-labels strong { display:block; margin-top:15px; font-size:15px; letter-spacing:-.02em; }
.chain-labels span { display:block; margin-top:4px; color:#7489a3; font-size:11px; line-height:1.35; }
.chain-labels .weak { border-color:rgba(243,200,121,.18); background:rgba(243,200,121,.035); }
.chain-labels .weak b { color:#d5ae68; }
.chain-callout {
  position:relative; z-index:2;
  width:min(100%,660px);
  margin:22px auto 0;
  padding:15px 18px;
  display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:center;
  border-radius:17px;
  border:1px solid rgba(243,200,121,.15);
  background:linear-gradient(90deg,rgba(243,200,121,.045),rgba(73,130,226,.035));
}
.chain-callout-mark {
  width:38px; height:38px; display:grid; place-items:center;
  border-radius:12px;
  background:rgba(243,200,121,.07);
  border:1px solid rgba(243,200,121,.13);
  color:#e0b96f; font-size:17px;
}
.chain-callout small { display:block; color:#a58754; font-size:8px; font-weight:850; letter-spacing:.13em; }
.chain-callout strong { display:block; margin-top:3px; font-size:14px; }
.chain-callout div > span { display:block; margin-top:3px; color:#8195ad; font-size:11px; }

.growth-process { background: rgba(255,255,255,.012); border-top:1px solid rgba(255,255,255,.055); border-bottom:1px solid rgba(255,255,255,.055); }
.growth-process-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: start; }
.growth-process-copy h2 { margin: 0 0 18px; font-size: clamp(42px,4.8vw,66px); line-height: .99; letter-spacing: -.05em; }
.growth-process-copy > p:not(.eyebrow) { color:#91a3b8; font-size:17px; margin:0 0 24px; }
.growth-steps { display: grid; }
.growth-step {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  padding: 23px 0;
  border-top: 1px solid rgba(255,255,255,.075);
}
.growth-step:first-child { border-top: 0; padding-top: 4px; }
.growth-step b { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:rgba(64,124,225,.09); border:1px solid rgba(100,159,255,.14); color:#94b9ef; font-size:11px; }
.growth-step h3 { margin: 0 0 5px; font-size: 20px; letter-spacing: -.025em; }
.growth-step p { margin:0; color:#8195ad; font-size:14px; }

.growth-fit-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 18px;
}
.growth-fit-copy,
.growth-fit-visual {
  min-height: 420px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.085);
  background: linear-gradient(180deg, rgba(11,21,37,.72), rgba(5,10,18,.78));
  overflow: hidden;
}
.growth-fit-copy { padding: 38px; }
.growth-fit-copy h2 { margin: 0 0 16px; max-width: 650px; font-size: clamp(39px,4vw,58px); line-height:1; letter-spacing:-.045em; }
.growth-fit-copy > p:not(.eyebrow) { color:#8da0b7; font-size:16px; max-width:650px; }
.fit-tags { display:flex; flex-wrap:wrap; gap:9px; margin-top:28px; }
.fit-tags span { border:1px solid rgba(255,255,255,.085); border-radius:999px; padding:8px 11px; color:#9bb0c8; font-size:11px; background:rgba(255,255,255,.025); }
.growth-fit-visual { position: relative; padding: 28px; display: grid; align-content: end; }
.growth-fit-visual::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(155deg, transparent 0 48%, rgba(70,132,237,.13) 48% 49%, transparent 49% 100%),
    linear-gradient(145deg, transparent 0 58%, rgba(117,230,179,.12) 58% 59%, transparent 59% 100%),
    radial-gradient(450px circle at 70% 20%, rgba(69,131,237,.18), transparent 60%);
}
.market-ridges { position:absolute; inset:0; overflow:hidden; }
.market-ridges i { position:absolute; left:-8%; right:-8%; height:150px; border-radius:50% 50% 0 0 / 100% 100% 0 0; border-top:1px solid rgba(105,162,255,.12); transform:rotate(-8deg); }
.market-ridges i:nth-child(1){ bottom:32px; }
.market-ridges i:nth-child(2){ bottom:92px; opacity:.8; }
.market-ridges i:nth-child(3){ bottom:156px; opacity:.55; }
.fit-visual-copy { position:relative; z-index:2; max-width:350px; }
.fit-visual-copy small { color:#8eb2e7; text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:800; }
.fit-visual-copy strong { display:block; font-size:27px; line-height:1.1; letter-spacing:-.035em; margin:8px 0 7px; }
.fit-visual-copy span { color:#8194ab; font-size:13px; }

.growth-final { padding-top: 68px !important; }
.growth-final-card {
  min-height: 330px;
  border: 1px solid rgba(111,168,255,.18);
  border-radius: 30px;
  padding: 50px;
  background:
    radial-gradient(520px circle at 82% 35%, rgba(67,128,236,.19), transparent 64%),
    radial-gradient(380px circle at 72% 80%, rgba(117,230,179,.08), transparent 67%),
    linear-gradient(135deg, rgba(12,23,40,.96), rgba(5,10,18,.96));
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 40px;
  position: relative;
  overflow: hidden;
}
.growth-final-card::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -160px;
  top: -170px;
  border: 1px solid rgba(133,179,255,.1);
  border-radius: 50%;
  box-shadow: 0 0 0 60px rgba(74,135,240,.018), 0 0 0 120px rgba(74,135,240,.012);
}
.growth-final-copy { position:relative; z-index:2; max-width:760px; }
.growth-final-copy h2 { margin:0 0 13px; font-size:clamp(42px,5vw,70px); line-height:.98; letter-spacing:-.052em; }
.growth-final-copy p { margin:0; color:#91a4bb; font-size:17px; }
.growth-final-card .btn { position:relative; z-index:2; flex:none; }

.growth-home .site-footer { border-top: 1px solid rgba(255,255,255,.07); }

@keyframes growthRise { from { transform: scaleY(.12); opacity:.3; } to { transform: scaleY(1); opacity:1; } }
@keyframes growthDraw { to { stroke-dashoffset: 0; } }
@keyframes growthSheen { 0%,58% { transform:translateX(-130%); } 80%,100% { transform:translateX(130%); } }

@media (prefers-reduced-motion: reduce) {
  .growth-bar-fill,
  .growth-bar-fill::after,
  .growth-curve path,
  .ascent-arrow path { animation: none !important; }
  .growth-curve path,
  .ascent-arrow path { stroke-dashoffset: 0; }
}

@media (max-width: 1080px) {
  .growth-hero-grid { grid-template-columns: 1fr; gap: 22px; }
  .growth-hero-copy { max-width: 820px; }
  .growth-visual { min-height: 580px; }
  .growth-float.one { right: 2%; }
  .growth-float.two { left: 2%; }
  .outcome-grid { grid-template-columns: repeat(2,1fr); }
  .growth-process-grid { grid-template-columns: 1fr; gap: 42px; }
}

@media (max-width: 780px) {
  .growth-home section { padding: 82px 0; }
  .growth-hero { padding-top: 116px !important; min-height: auto; }
  .growth-hero-copy h1 { font-size: clamp(47px, 13.3vw, 68px); }
  .growth-hero-copy > p:not(.eyebrow) { font-size: 18px; }
  .growth-visual { min-height: 520px; margin-top: 10px; }
  .growth-board { transform: none; }
  .growth-float { display: none; }
  .growth-chart { padding-left: 14px; padding-right: 14px; min-height: 350px; }
  .growth-chart-grid { left:14px; right:14px; }
  .growth-bars { gap: 8px; }
  .growth-bar strong { font-size: 10px; }
  .growth-bar small { font-size: 8px; }
  .growth-board-foot { margin-left: 12px; margin-right: 12px; gap: 6px; }
  .growth-signal { padding: 10px; }
  .growth-signal b { font-size: 9px; }
  .growth-signal span { font-size: 7px; }
  .growth-section-head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 38px; }
  .leak-grid,
  .growth-fit-grid { grid-template-columns: 1fr; }
  .outcome-grid { grid-template-columns: 1fr; }
  .outcome-card { min-height: 285px; }
  .outcome-icon { margin-bottom: 32px; }
  .ascent-top { display: block; padding: 25px; }
  .ascent-top p { margin-top: 10px; }
  .ascent-stage { min-height: 440px; padding: 34px 15px 22px; }
  .ascent-levels { gap: 7px; height: 350px; }
  .ascent-level { padding: 13px 9px; border-radius: 14px 14px 7px 7px; }
  .ascent-level strong { font-size: 12px; }
  .ascent-level span { font-size: 8px; }
  .ascent-arrow { left:5%; right:4%; top:50px; height:250px; }
  .growth-fit-copy { padding: 30px; }
  .growth-final-card { padding: 34px 28px; display: block; min-height: 390px; }
  .growth-final-card .btn { margin-top: 28px; }
}

@media (max-width: 520px) {
  .growth-home .container { width: min(calc(100% - 26px), var(--max)); }
  .growth-visual { min-height: 470px; }
  .growth-board-head { padding:0 13px; font-size:9px; }
  .growth-chart { min-height: 320px; }
  .growth-bars { height:255px; padding-top:8px; }
  .growth-curve { inset: 38px 18px 76px 18px; width:calc(100% - 36px); height:calc(100% - 114px); }
  .growth-board-foot { grid-template-columns:1fr; }
  .growth-signal { display:flex; align-items:center; justify-content:space-between; gap:10px; }
  .growth-intro-strip p { font-size: 22px; }
  .leak-copy-card, .leak-visual-card { padding: 26px 22px; }
  .capture-step { min-height: 65px; padding:12px; }
  .capture-step em { display:none; }
  .ascent-level span { display:none; }
  .ascent-level strong { writing-mode: vertical-rl; transform: rotate(180deg); }
  .growth-final { padding-top: 45px !important; }
}


/* 2026-09-07: clearer growth-path hero visual */
.growth-path-board {
  width:min(100%,650px);
  border:1px solid rgba(143,184,255,.18);
  border-radius:30px;
  overflow:hidden;
  position:relative;
  z-index:2;
  background:linear-gradient(180deg,rgba(13,24,42,.95),rgba(5,11,19,.97));
  box-shadow:0 55px 120px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.04);
}
.growth-path-head {
  min-height:58px;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#8ea2bc;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.15em;
  font-weight:850;
}
.growth-path-head span:last-child { color:#b7c7d9; }
.growth-path-stage {
  height:455px;
  position:relative;
  overflow:hidden;
  background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);
  background-size:72px 72px;
}
.growth-path-stage::after {
  content:"";
  position:absolute;
  inset:auto -15% -45% 15%;
  height:70%;
  border-radius:50%;
  border-top:1px solid rgba(113,171,255,.11);
  box-shadow:0 -65px 0 -64px rgba(113,171,255,.08),0 -130px 0 -129px rgba(113,171,255,.05);
  transform:rotate(-10deg);
  pointer-events:none;
}
.growth-path-glow {
  position:absolute;
  width:300px;height:300px;
  right:-60px;top:-65px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(117,230,179,.12),rgba(80,146,255,.09) 38%,transparent 70%);
  pointer-events:none;
}
.growth-path-line {
  position:absolute;
  inset:18px 20px 20px;
  width:calc(100% - 40px);
  height:calc(100% - 38px);
  overflow:visible;
  pointer-events:none;
}
.growth-path-line path {
  fill:none;
  stroke:url(#pathGradient);
  stroke-width:3;
  stroke-linecap:round;
  stroke-dasharray:900;
  stroke-dashoffset:900;
  animation:growthDraw 2s .25s ease forwards;
  filter:drop-shadow(0 0 7px rgba(93,164,255,.22));
}
.growth-path-node {
  position:absolute;
  width:155px;
  min-height:90px;
  padding:14px 15px;
  border-radius:17px;
  border:1px solid rgba(111,168,255,.19);
  background:linear-gradient(180deg,rgba(12,25,44,.96),rgba(7,14,25,.96));
  box-shadow:0 20px 45px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.035);
  z-index:3;
}
.growth-path-node small { color:#6f91bd;font-size:8px;letter-spacing:.14em;font-weight:850; }
.growth-path-node strong { display:block;margin-top:7px;color:#e5effb;font-size:17px;letter-spacing:-.025em; }
.growth-path-node span { display:block;margin-top:4px;color:#7f94ad;font-size:10px;line-height:1.35; }
.node-visibility { left:3%;bottom:8%; }
.node-conversion { left:27%;bottom:28%; }
.node-followup { left:51%;bottom:48%; }
.node-customers {
  right:3%;top:8%;
  border-color:rgba(117,230,179,.3);
  background:linear-gradient(180deg,rgba(17,50,43,.95),rgba(7,23,22,.96));
  box-shadow:0 22px 55px rgba(0,0,0,.3),0 0 44px rgba(117,230,179,.06),inset 0 1px rgba(255,255,255,.04);
}
.node-customers small { color:#75d9ae; }
.growth-path-arrow {
  position:absolute;
  z-index:4;
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:50%;
  border:1px solid rgba(117,230,179,.2);
  background:rgba(8,20,25,.88);
  color:#75e6b3;
  font-size:22px;
  box-shadow:0 12px 30px rgba(0,0,0,.25),0 0 24px rgba(117,230,179,.06);
}
.arrow-one { left:22%;bottom:27%; }
.arrow-two { left:46%;bottom:47%; }
.arrow-three { left:70%;bottom:66%; }
.growth-path-result {
  position:absolute;
  left:4%;top:7%;
  max-width:240px;
  z-index:2;
}
.growth-path-result small { color:#6f8db4;font-size:8px;letter-spacing:.14em;font-weight:850; }
.growth-path-result strong { display:block;margin-top:8px;color:#a8bad0;font-size:13px;line-height:1.4;font-weight:650; }
.growth-path-foot {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  border-top:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.025);
}
.growth-path-foot span {
  min-height:56px;
  display:grid;
  place-items:center;
  padding:12px;
  color:#8fa5bd;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:800;
  border-right:1px solid rgba(255,255,255,.06);
  text-align:center;
}
.growth-path-foot span:last-child { border-right:0;color:#9cdbbd; }
.growth-fit-single { max-width:1060px; }
.growth-fit-single .growth-fit-copy { min-height:auto; padding:48px; }
.growth-fit-single .growth-fit-copy h2 { max-width:860px; }
.growth-fit-single .growth-fit-copy > p:not(.eyebrow) { max-width:800px; }

@media (prefers-reduced-motion:reduce) {
  .growth-path-line path { animation:none!important;stroke-dashoffset:0; }
}
@media (max-width:780px) {
  .growth-path-stage { height:520px; }
  .growth-path-head { font-size:8px;padding:0 14px; }
  .growth-path-result { left:5%;top:4%;max-width:205px; }
  .growth-path-node { width:142px;min-height:82px;padding:12px; }
  .node-visibility { left:2%;bottom:5%; }
  .node-conversion { left:22%;bottom:27%; }
  .node-followup { left:42%;bottom:49%; }
  .node-customers { right:1%;top:12%; }
  .growth-path-arrow { width:32px;height:32px;font-size:18px; }
  .arrow-one { left:18%;bottom:25%; }
  .arrow-two { left:39%;bottom:47%; }
  .arrow-three { left:64%;bottom:67%; }
  .growth-fit-single .growth-fit-copy { padding:34px 28px; }
}
@media (max-width:520px) {
  .growth-visual { min-height:590px; }
  .growth-path-stage { height:545px; }
  .growth-path-head span:last-child { display:none; }
  .growth-path-line { display:none; }
  .growth-path-result { position:relative;left:auto;top:auto;padding:20px 18px 0;max-width:none; }
  .growth-path-node { left:18px!important;right:18px!important;width:auto;min-height:78px; }
  .node-visibility { bottom:24px!important; }
  .node-conversion { bottom:138px!important; }
  .node-followup { bottom:252px!important; }
  .node-customers { top:128px!important;bottom:auto!important; }
  .growth-path-arrow { left:auto!important;right:26px!important; }
  .arrow-one { bottom:111px!important; }
  .arrow-two { bottom:225px!important; }
  .arrow-three { top:215px!important;bottom:auto!important; }
  .growth-path-foot { grid-template-columns:1fr; }
  .growth-path-foot span { min-height:40px;border-right:0;border-bottom:1px solid rgba(255,255,255,.055); }
  .growth-path-foot span:last-child { border-bottom:0; }
}

@media (max-width:980px) {
  .chain-top { grid-template-columns:1fr; gap:12px; }
  .chain-top p { justify-self:start; }
  .chain-rings { transform:scale(.86); transform-origin:center; }
}
@media (max-width:720px) {
  .chain-top { padding:24px 22px; }
  .chain-top h3 { font-size:24px; }
  .chain-stage { min-height:auto; padding:34px 18px 24px; }
  .chain-rings { height:126px; transform:scale(.58); margin-inline:-90px; }
  .chain-labels { grid-template-columns:1fr; gap:8px; }
  .chain-labels > div { min-height:auto; display:grid; grid-template-columns:38px 1fr; column-gap:8px; align-items:center; }
  .chain-labels b { grid-row:1/3; }
  .chain-labels strong { margin-top:0; }
  .chain-labels span { grid-column:2; }
  .chain-callout { margin-top:14px; }
}
