:root{--bg:#070a0d;--bg2:#0d1217;--panel:#111820;--panel2:#0b1015;--line:rgba(255,255,255,.13);--line2:rgba(255,255,255,.07);--text:#f2f4f3;--muted:#a9b1b2;--soft:#d2d7d5;--green:#78b889;--green2:#4d8b6a;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0%,rgba(120,184,137,.06),transparent 32%),linear-gradient(180deg,var(--bg),#050708);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.55}.wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto}.site-header{border-bottom:1px solid var(--line2);background:rgba(7,10,13,.88);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{height:48px;width:auto;display:block}.nav{display:flex;gap:30px}.nav a{color:var(--soft);text-decoration:none;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.nav a:hover{color:var(--green)}.hero{min-height:calc(100vh - 82px);display:flex;align-items:center;border-bottom:1px solid var(--line2)}.hero-grid{display:grid;grid-template-columns:1fr .58fr;gap:86px;align-items:center;padding:78px 0 104px}.eyebrow{margin:0 0 22px;color:var(--green);font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:760}h1,h2,h3,p{margin-top:0}h1{max-width:820px;margin-bottom:32px;font-size:clamp(54px,6.5vw,88px);line-height:.95;letter-spacing:-.07em;font-weight:710}.hero-text{max-width:660px;color:var(--soft);font-size:clamp(18px,1.55vw,22px)}.hero-text p{margin-bottom:13px}.text-link{display:inline-flex;gap:18px;align-items:center;margin-top:28px;padding-bottom:8px;color:var(--green);text-decoration:none;border-bottom:1px solid rgba(120,184,137,.62);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:760}.text-link.small{margin-top:0}.text-link span{font-size:18px}.thesis-panel{border:1px solid var(--line);border-radius:24px;padding:34px;background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),rgba(17,24,32,.58)}.panel-label{color:var(--green);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;margin-bottom:18px}.panel-statement{font-size:clamp(26px,2.5vw,36px);line-height:1.13;letter-spacing:-.045em;font-weight:690;margin-bottom:22px}.panel-note{color:var(--muted);font-size:16px;margin:0}.thesis-rule{height:1px;background:var(--line);margin:26px 0}.section{padding:112px 0;border-bottom:1px solid var(--line2)}.challenge{background:linear-gradient(180deg,rgba(255,255,255,.02),transparent),var(--bg2)}h2{max-width:880px;margin-bottom:24px;font-size:clamp(39px,4.7vw,66px);line-height:1;letter-spacing:-.06em;font-weight:700}.section-intro{max-width:770px;color:var(--muted);font-size:20px;margin-bottom:70px}.question-compare{display:grid;grid-template-columns:1fr auto 1.15fr;gap:38px;align-items:stretch}.question{min-height:290px;border-top:1px solid var(--line);padding-top:32px}.question-label{color:var(--green);text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:780;margin-bottom:22px}.question h3{font-size:clamp(34px,3.8vw,58px);line-height:1.03;letter-spacing:-.058em;font-weight:700;margin-bottom:28px}.question p:last-child,.split p:not(.eyebrow),.three-grid p,.steps p,.insight-grid span,.cta p,footer p{color:var(--muted);font-size:17px}.future h3::after{content:"";display:block;width:68px;height:1px;background:var(--green);margin-top:28px}.versus{display:grid;place-items:center;color:var(--green);font-size:18px;font-weight:780;letter-spacing:.12em}.manifesto-grid{display:grid;grid-template-columns:.9fr 1fr;gap:84px;align-items:start}.manifesto-copy{padding-top:8px;color:var(--soft);font-size:clamp(20px,1.85vw,25px);line-height:1.42;letter-spacing:-.025em}.manifesto-copy.smaller{font-size:21px}.manifesto-copy p{margin-bottom:24px}.manifesto-copy .emphasis{color:var(--green);font-weight:760}.split{display:grid;grid-template-columns:.95fr 1fr;gap:76px;align-items:center}.split.reverse{grid-template-columns:1fr .95fr}.published-model{border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:34px;background:linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.012));box-shadow:0 28px 80px rgba(0,0,0,.22)}.model-topline{display:flex;justify-content:space-between;gap:20px;color:var(--green);font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:28px}.published-model h3{font-size:22px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:34px;text-align:center}.model-shell{position:relative;border:1px solid rgba(255,255,255,.12);padding:42px 34px 38px}.governance-label{position:absolute;left:50%;transform:translateX(-50%);padding:0 14px;background:#10171d;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.18em}.governance-label.top{top:-8px}.governance-label.bottom{bottom:-8px}.model-layer{display:grid;grid-template-columns:52px 1fr;align-items:center;min-height:72px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.025);padding:18px 22px}.model-layer span{color:var(--green);font-size:11px;letter-spacing:.14em}.model-layer strong{text-transform:uppercase;letter-spacing:.13em;font-size:13px;text-align:center}.model-layer.outcome{border-color:rgba(120,184,137,.28);background:rgba(120,184,137,.055)}.model-connector{width:1px;height:24px;background:rgba(120,184,137,.55);margin:0 auto}.compact-model{padding:32px}.timeline-model{display:grid;gap:16px}.timeline-model div{border:1px solid var(--line);padding:22px;background:rgba(255,255,255,.025)}.timeline-model span{color:var(--green);font-size:12px;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:10px}.timeline-model strong{font-size:24px;letter-spacing:-.04em;line-height:1.1}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}.three-grid article,.insight-grid article{border:1px solid var(--line);border-radius:20px;padding:28px;background:rgba(255,255,255,.025)}.three-grid h3,.insight-grid h3{font-size:24px;line-height:1.16;letter-spacing:-.04em}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:48px}.steps div{border-top:1px solid var(--line);padding-top:22px}.steps span{color:var(--green);font-size:12px;letter-spacing:.14em}.steps h3{font-size:22px;margin:10px 0}.horizon-visual{min-height:330px;border:1px solid var(--line);border-radius:24px;position:relative;background:radial-gradient(circle at 50% 72%,rgba(120,184,137,.16),transparent 34%),rgba(255,255,255,.02);overflow:hidden}.horizon-visual:before{content:"";position:absolute;left:15%;right:15%;bottom:28%;height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);transform:rotate(-8deg)}.horizon-visual span{position:absolute;left:50%;top:46%;width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 45px var(--green)}.section-row{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.insight-grid p{color:var(--green);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:780}.cta-box{display:grid;grid-template-columns:1fr .85fr;gap:80px;border:1px solid var(--line);border-radius:26px;padding:44px;background:linear-gradient(160deg,rgba(120,184,137,.07),rgba(255,255,255,.015))}.button{display:inline-flex;margin-top:18px;color:#06100b;background:var(--green);padding:14px 18px;border-radius:999px;text-decoration:none;text-transform:uppercase;font-size:12px;letter-spacing:.12em;font-weight:800}.site-footer{padding:58px 0 28px;background:#050708}.footer-grid{display:grid;grid-template-columns:1.15fr .55fr 1fr;gap:70px;border-top:1px solid var(--line2);padding-top:42px}.footer-brand img{height:50px;margin-bottom:18px}.site-footer h4{margin:0 0 18px;text-transform:uppercase;letter-spacing:.14em;color:var(--green);font-size:11px}.site-footer a{display:block;color:var(--muted);text-decoration:none;margin:8px 0;font-size:14px}.site-footer a:hover{color:var(--green)}.footer-bottom{border-top:1px solid var(--line2);margin-top:34px;padding-top:20px}.footer-bottom p{font-size:13px;margin:0}@media(max-width:900px){.nav{display:none}.hero-grid,.question-compare,.manifesto-grid,.split,.split.reverse,.cta-box,.footer-grid{grid-template-columns:1fr;gap:42px}.three-grid,.steps,.insight-grid{grid-template-columns:1fr}.section{padding:82px 0}.hero{min-height:auto}.hero-grid{padding:62px 0 78px}.brand img{height:42px}h1{font-size:clamp(48px,14vw,72px)}.question{min-height:auto}.versus{place-items:start}.model-layer{grid-template-columns:42px 1fr}.model-shell{padding:36px 20px}}



.section-head-wide {
  max-width: 920px;
  margin-bottom: 44px;
}

.section-head-wide h2 {
  max-width: 920px;
}


/* =========================================================
   Native framework visuals: integrated, no iframe, no images
   ========================================================= */

.section-head-wide {
  max-width: 920px;
  margin-bottom: 46px;
}

.section-head-wide h2 {
  max-width: 920px;
}

.visual-card {
  width: 100%;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 30px;
  background:
    radial-gradient(circle at 46% 45%, rgba(182,255,102,.08), transparent 28%),
    radial-gradient(circle at 64% 70%, rgba(107,157,255,.06), transparent 26%),
    linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
    #0b1015;
  box-shadow: 0 40px 120px rgba(0,0,0,.38);
  padding: 52px 62px 48px;
}

.visual-card::before {
  content: "";
  position: absolute;
  inset: auto 4% -16% 4%;
  height: 250px;
  background-image: radial-gradient(circle, rgba(255,255,255,.18) 1px, transparent 1.5px);
  background-size: 18px 18px;
  opacity: .14;
  transform: perspective(650px) rotateX(68deg);
  transform-origin: bottom;
}

.visual-header {
  position: relative;
  z-index: 4;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 40px;
}

.figure-label {
  display: block;
  color: #b6ff66;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 800;
  font-size: clamp(16px, 1.25vw, 22px);
  margin-bottom: 16px;
}

.visual-header h3 {
  margin: 0;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: clamp(28px, 2.9vw, 46px);
  line-height: 1.05;
  font-weight: 800;
}

.visual-header p {
  max-width: 390px;
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.45;
  text-align: right;
}

/* Workforce Layer */

.workforce-visual-body {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 78px minmax(460px, 1fr) 360px 78px;
  gap: 30px;
  align-items: center;
  margin-top: 34px;
}

.layer-scene {
  position: relative;
  height: 560px;
  perspective: 1100px;
}

.floor-grid {
  position: absolute;
  left: 5%;
  right: 0;
  bottom: 5%;
  height: 170px;
  background-image: radial-gradient(circle, rgba(255,255,255,.24) 1px, transparent 1.8px);
  background-size: 18px 18px;
  opacity: .13;
  transform: rotateX(68deg);
  transform-origin: bottom;
}

.plane {
  position: absolute;
  left: 52%;
  width: 560px;
  height: 205px;
  margin-left: -280px;
  transform-style: preserve-3d;
  transform: rotateX(60deg) rotateZ(-45deg);
}

.plane-surface {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border: 2px solid currentColor;
  background:
    radial-gradient(circle at center, color-mix(in srgb, currentColor 26%, transparent), transparent 58%),
    linear-gradient(135deg, color-mix(in srgb, currentColor 22%, transparent), rgba(255,255,255,.018));
  box-shadow:
    0 0 30px color-mix(in srgb, currentColor 22%, transparent),
    inset 0 0 44px rgba(255,255,255,.045);
  backdrop-filter: blur(2px);
}

.plane-edge {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 18px;
  transform: rotateX(90deg);
  transform-origin: top;
  background: linear-gradient(180deg, color-mix(in srgb, currentColor 25%, transparent), transparent);
  opacity: .55;
}

.plane-outcomes {
  color: #b6ff66;
  top: 24px;
  filter: drop-shadow(0 0 24px rgba(182,255,102,.35));
}
.plane-orchestration {
  color: #6ce7cf;
  top: 158px;
  filter: drop-shadow(0 0 22px rgba(108,231,207,.30));
}
.plane-ai {
  color: #6b9dff;
  top: 292px;
  filter: drop-shadow(0 0 22px rgba(107,157,255,.32));
}
.plane-human {
  color: rgba(255,255,255,.76);
  top: 426px;
  filter: drop-shadow(0 0 20px rgba(255,255,255,.17));
}

.symbol {
  width: 100px;
  height: 100px;
  position: relative;
  border-radius: 50%;
}

.rings {
  border: 2px solid currentColor;
}
.rings::before,
.rings::after {
  content: "";
  position: absolute;
  border: 2px solid currentColor;
  border-radius: 50%;
  inset: 15px;
  opacity: .85;
}
.rings::after { inset: 30px; }

.orbit { border: 2px solid currentColor; }
.orbit i {
  position: absolute;
  width: 12px;
  height: 12px;
  background: currentColor;
  border-radius: 50%;
  box-shadow: 0 0 18px currentColor;
}
.orbit i:nth-child(1){left:44px;top:-7px}
.orbit i:nth-child(2){right:7px;top:18px}
.orbit i:nth-child(3){right:7px;bottom:18px}
.orbit i:nth-child(4){left:44px;bottom:-7px}
.orbit i:nth-child(5){left:7px;bottom:18px}
.orbit i:nth-child(6){left:7px;top:18px}

.network::before,
.network::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 10px;
  width: 2px;
  height: 80px;
  background: currentColor;
  transform-origin: bottom;
  box-shadow: 0 0 18px currentColor;
}
.network::before { transform: translateX(-50%) rotate(0deg); }
.network::after { transform: translateX(-50%) rotate(60deg); }
.network i {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 18px currentColor;
}
.network i:nth-child(1){transform:translate(-50%,-50%)}
.network i:nth-child(2){transform:translate(-50%,-50%) translateY(-45px)}
.network i:nth-child(3){transform:translate(-50%,-50%) rotate(120deg) translateY(-45px)}
.network i:nth-child(4){transform:translate(-50%,-50%) rotate(240deg) translateY(-45px)}
.network i:nth-child(5){transform:translate(-50%,-50%) rotate(60deg) translateY(-45px)}

.person::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 15px;
  width: 42px;
  height: 42px;
  border: 4px solid currentColor;
  border-radius: 50%;
  transform: translateX(-50%);
}
.person::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 14px;
  width: 78px;
  height: 42px;
  border: 4px solid currentColor;
  border-bottom: 0;
  border-radius: 50px 50px 0 0;
  transform: translateX(-50%);
}

.layer-list {
  display: grid;
  gap: 34px;
}

.layer-item {
  position: relative;
  min-height: 96px;
  padding-left: 30px;
}

.layer-item::before {
  content: "";
  position: absolute;
  left: -48px;
  top: 32px;
  width: 62px;
  height: 1px;
  background: currentColor;
  opacity: .8;
}

.layer-item::after {
  content: "";
  position: absolute;
  left: 10px;
  top: 27px;
  width: 12px;
  height: 12px;
  background: currentColor;
  border-radius: 50%;
  box-shadow: 0 0 20px currentColor;
}

.layer-item span {
  display: block;
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 9px;
}

.layer-item h4 {
  margin: 0 0 10px;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 20px;
  line-height: 1.1;
}

.layer-item p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.38;
}

.item-outcomes { color: #b6ff66; }
.item-orchestration { color: #6ce7cf; }
.item-ai { color: #6b9dff; }
.item-human { color: rgba(255,255,255,.7); }

.side-label {
  height: 460px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.side-label span {
  width: 1px;
  flex: 1;
  background: repeating-linear-gradient(to bottom, rgba(255,255,255,.55) 0 4px, transparent 4px 12px);
}

.side-label strong {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 15px;
  font-weight: 650;
}

.side-label.right strong { transform: none; }

/* Next Operating Model */

.operating-visual-card {
  background:
    radial-gradient(circle at 74% 40%, rgba(182,255,102,.08), transparent 24%),
    radial-gradient(circle at 46% 52%, rgba(108,231,207,.06), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
    #0b1015;
}

.evolution-stage {
  position: relative;
  z-index: 3;
  margin-top: 52px;
}

.timeline-grid {
  display: grid;
  grid-template-columns: 1fr 68px 1fr 68px 1fr;
  gap: 16px;
  align-items: center;
}

.era {
  min-height: 390px;
  border: 1px solid var(--line);
  border-radius: 24px;
  padding: 28px 24px;
  background:
    linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.012)),
    rgba(7,10,13,.45);
  position: relative;
  overflow: hidden;
}

.era::before {
  content: "";
  position: absolute;
  inset: auto -20% -26% -20%;
  height: 160px;
  background-image: radial-gradient(circle, rgba(255,255,255,.2) 1px, transparent 1.6px);
  background-size: 16px 16px;
  opacity: .11;
  transform: perspective(600px) rotateX(70deg);
  transform-origin: bottom;
}

.era-year {
  color: currentColor;
  font-size: 38px;
  font-weight: 800;
  letter-spacing: -.05em;
  margin-bottom: 22px;
}

.era-plane {
  width: 210px;
  height: 125px;
  margin: 8px auto 34px;
  position: relative;
  transform: rotateX(58deg) rotateZ(-42deg);
  transform-style: preserve-3d;
  border: 2px solid currentColor;
  background:
    radial-gradient(circle at center, color-mix(in srgb, currentColor 23%, transparent), transparent 58%),
    linear-gradient(135deg, color-mix(in srgb, currentColor 19%, transparent), rgba(255,255,255,.018));
  box-shadow: 0 0 30px color-mix(in srgb, currentColor 18%, transparent);
}

.era-plane::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 15px;
  transform: rotateX(90deg);
  transform-origin: top;
  background: linear-gradient(180deg, color-mix(in srgb, currentColor 23%, transparent), transparent);
}

.era-symbol {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 76px;
  height: 76px;
  transform: translate(-50%, -50%) rotateZ(42deg) rotateX(-58deg);
}

.software-symbol::before {
  content: "";
  position: absolute;
  inset: 18px 10px 20px;
  border: 3px solid currentColor;
  border-radius: 6px;
}
.software-symbol::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 10px;
  height: 3px;
  background: currentColor;
  box-shadow: 0 0 16px currentColor;
}

.tools-symbol {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  padding: 13px;
}
.tools-symbol::before,
.tools-symbol::after,
.tools-symbol i,
.tools-symbol b {
  content: "";
  display: block;
  border: 3px solid currentColor;
  border-radius: 7px;
  box-shadow: 0 0 16px color-mix(in srgb, currentColor 30%, transparent);
}

.workforce-symbol::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 50px;
  height: 50px;
  border: 3px solid currentColor;
  border-radius: 50%;
  transform: translateX(-50%);
}
.workforce-symbol::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 82px;
  height: 44px;
  border: 3px solid currentColor;
  border-bottom: 0;
  border-radius: 60px 60px 0 0;
  transform: translateX(-50%);
}

.era h4 {
  margin: 0 0 16px;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 20px;
  line-height: 1.12;
}

.era p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.42;
}

.era-past { color: rgba(255,255,255,.58); }
.era-present { color: #6ce7cf; }
.era-future {
  color: #b6ff66;
  border-color: rgba(182,255,102,.35);
  box-shadow: 0 0 45px rgba(182,255,102,.06);
}

.flow-arrow {
  display: grid;
  place-items: center;
  height: 100%;
}

.flow-arrow span {
  width: 58px;
  height: 1px;
  background: linear-gradient(90deg, rgba(255,255,255,.15), #b6ff66);
  position: relative;
}

.flow-arrow span::after {
  content: "";
  position: absolute;
  right: -1px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-right: 2px solid #b6ff66;
  border-top: 2px solid #b6ff66;
  transform: translateY(-50%) rotate(45deg);
}

.insight-strip {
  margin-top: 38px;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 24px 28px;
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 26px;
  background: rgba(255,255,255,.025);
}

.insight-strip span {
  color: #b6ff66;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 12px;
  font-weight: 800;
}

.insight-strip p {
  color: var(--soft);
  margin: 0;
  font-size: 20px;
  line-height: 1.35;
}

@media (max-width: 1100px) {
  .workforce-visual-body {
    grid-template-columns: 1fr;
  }

  .side-label {
    display: none;
  }

  .layer-scene {
    height: 500px;
  }

  .layer-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .layer-item::before,
  .layer-item::after {
    display: none;
  }

  .layer-item {
    padding: 20px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgba(255,255,255,.03);
  }

  .timeline-grid {
    grid-template-columns: 1fr;
  }

  .flow-arrow {
    height: 54px;
  }

  .flow-arrow span {
    transform: rotate(90deg);
  }

  .era {
    min-height: auto;
  }

  .insight-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .visual-card {
    padding: 30px 20px;
  }

  .visual-header {
    display: block;
  }

  .visual-header p {
    text-align: left;
  }

  .layer-scene {
    height: 390px;
    overflow: hidden;
  }

  .plane {
    width: 340px;
    height: 128px;
    margin-left: -170px;
  }

  .plane-outcomes { top: 18px; }
  .plane-orchestration { top: 116px; }
  .plane-ai { top: 214px; }
  .plane-human { top: 312px; }

  .symbol { transform: scale(.58); }

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

  .era-plane {
    width: 185px;
    height: 110px;
  }
}


/* =========================================================
   V2 scale correction: homepage visuals should support copy,
   not dominate full sections.
   ========================================================= */

.framework .section-head-wide,
.operating .section-head-wide {
  margin-bottom: 32px;
}

.visual-card {
  max-width: 1080px;
  margin: 0 auto;
  padding: 32px 38px 34px;
  border-radius: 24px;
}

.visual-card::before {
  height: 150px;
  opacity: .1;
}

.visual-header {
  gap: 28px;
  margin-bottom: 0;
}

.figure-label {
  font-size: 12px;
  margin-bottom: 8px;
}

.visual-header h3 {
  font-size: clamp(21px, 2vw, 30px);
  letter-spacing: .09em;
}

.visual-header p {
  max-width: 310px;
  font-size: 14px;
  line-height: 1.4;
}

/* Workforce component scaled for page section */

.workforce-visual-body {
  grid-template-columns: 38px minmax(320px, 0.92fr) 300px 38px;
  gap: 24px;
  margin-top: 18px;
}

.layer-scene {
  height: 360px;
}

.floor-grid {
  height: 105px;
  opacity: .09;
}

.plane {
  width: 365px;
  height: 132px;
  margin-left: -182px;
}

.plane-edge {
  height: 10px;
}

.plane-outcomes { top: 18px; }
.plane-orchestration { top: 105px; }
.plane-ai { top: 192px; }
.plane-human { top: 279px; }

.symbol {
  width: 64px;
  height: 64px;
}

.rings::before { inset: 10px; }
.rings::after { inset: 20px; }

.orbit i {
  width: 8px;
  height: 8px;
}

.orbit i:nth-child(1){left:27px;top:-5px}
.orbit i:nth-child(2){right:4px;top:12px}
.orbit i:nth-child(3){right:4px;bottom:12px}
.orbit i:nth-child(4){left:27px;bottom:-5px}
.orbit i:nth-child(5){left:4px;bottom:12px}
.orbit i:nth-child(6){left:4px;top:12px}

.network::before,
.network::after {
  height: 52px;
  top: 6px;
}

.network i {
  width: 7px;
  height: 7px;
}

.network i:nth-child(2){transform:translate(-50%,-50%) translateY(-30px)}
.network i:nth-child(3){transform:translate(-50%,-50%) rotate(120deg) translateY(-30px)}
.network i:nth-child(4){transform:translate(-50%,-50%) rotate(240deg) translateY(-30px)}
.network i:nth-child(5){transform:translate(-50%,-50%) rotate(60deg) translateY(-30px)}

.person::before {
  width: 28px;
  height: 28px;
  border-width: 3px;
  top: 9px;
}

.person::after {
  width: 52px;
  height: 28px;
  border-width: 3px;
  bottom: 8px;
}

.layer-list {
  gap: 18px;
}

.layer-item {
  min-height: auto;
  padding-left: 22px;
}

.layer-item::before {
  left: -34px;
  top: 24px;
  width: 43px;
}

.layer-item::after {
  left: 6px;
  top: 19px;
  width: 9px;
  height: 9px;
}

.layer-item span {
  font-size: 17px;
  margin-bottom: 6px;
}

.layer-item h4 {
  font-size: 15px;
  margin-bottom: 6px;
}

.layer-item p {
  font-size: 13px;
  line-height: 1.35;
}

.side-label {
  height: 300px;
  gap: 12px;
}

.side-label strong {
  font-size: 10px;
  letter-spacing: .14em;
}

/* Next Operating Model scaled for page */

.operating-visual-card {
  max-width: 1080px;
}

.evolution-stage {
  margin-top: 28px;
}

.timeline-grid {
  grid-template-columns: 1fr 48px 1fr 48px 1fr;
  gap: 12px;
}

.era {
  min-height: 260px;
  padding: 20px 18px;
  border-radius: 18px;
}

.era::before {
  height: 96px;
  opacity: .08;
}

.era-year {
  font-size: 27px;
  margin-bottom: 12px;
}

.era-plane {
  width: 130px;
  height: 78px;
  margin: 0 auto 20px;
}

.era-plane::after {
  height: 9px;
}

.era-symbol {
  width: 46px;
  height: 46px;
}

.software-symbol::before {
  inset: 11px 6px 12px;
  border-width: 2px;
  border-radius: 4px;
}

.software-symbol::after {
  left: 13px;
  right: 13px;
  bottom: 6px;
  height: 2px;
}

.tools-symbol {
  gap: 6px;
  padding: 8px;
}

.tools-symbol::before,
.tools-symbol::after,
.tools-symbol i,
.tools-symbol b {
  border-width: 2px;
  border-radius: 4px;
}

.workforce-symbol::before {
  width: 30px;
  height: 30px;
  border-width: 2px;
}

.workforce-symbol::after {
  width: 50px;
  height: 27px;
  border-width: 2px;
}

.era h4 {
  font-size: 14px;
  letter-spacing: .07em;
  margin-bottom: 8px;
}

.era p {
  font-size: 12.5px;
  line-height: 1.35;
}

.flow-arrow span {
  width: 38px;
}

.flow-arrow span::after {
  width: 8px;
  height: 8px;
}

.insight-strip {
  margin-top: 22px;
  padding: 18px 20px;
  grid-template-columns: 120px 1fr;
  gap: 18px;
}

.insight-strip span {
  font-size: 10px;
}

.insight-strip p {
  font-size: 15px;
}

/* Keep page rhythm tighter after visual downsizing */
.framework.section,
.operating.section {
  padding-top: 92px;
  padding-bottom: 96px;
}

@media (max-width: 1100px) {
  .workforce-visual-body {
    grid-template-columns: 1fr;
  }

  .layer-scene {
    height: 360px;
  }

  .layer-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .timeline-grid {
    grid-template-columns: 1fr;
  }

  .era {
    min-height: auto;
  }

  .insight-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .visual-card {
    padding: 26px 18px;
  }

  .layer-scene {
    height: 320px;
  }

  .plane {
    width: 280px;
    height: 105px;
    margin-left: -140px;
  }

  .plane-outcomes { top: 16px; }
  .plane-orchestration { top: 88px; }
  .plane-ai { top: 160px; }
  .plane-human { top: 232px; }

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

  .era-plane {
    width: 120px;
    height: 72px;
  }
}


/* =========================================================
   Figure 03: Transformation Journey native visual
   ========================================================= */

.journey-visual-card {
  max-width: 1080px;
  margin: 0 auto;
  padding: 32px 38px 34px;
}

.journey-stage {
  position: relative;
  z-index: 3;
  height: 330px;
  margin-top: 34px;
}

.path-line {
  position: absolute;
  left: 7%;
  right: 7%;
  top: 52%;
  height: 2px;
  background: linear-gradient(90deg,
    rgba(255,255,255,.16),
    rgba(108,231,207,.55),
    rgba(182,255,102,.75));
}

.path-line::before,
.path-line::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #b6ff66;
  transform: translateY(-50%);
  box-shadow: 0 0 24px rgba(182,255,102,.42);
}

.path-line::before { left: 0; }
.path-line::after { right: 0; }

.journey-step {
  position: absolute;
  width: 178px;
  min-height: 140px;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px 16px;
  background:
    linear-gradient(160deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
    rgba(7,10,13,.68);
  box-shadow: 0 22px 60px rgba(0,0,0,.24);
}

.journey-step::before {
  content: "";
  position: absolute;
  left: 50%;
  width: 1px;
  height: 42px;
  background: currentColor;
  opacity: .55;
}

.journey-step::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 20px currentColor;
  transform: translateX(-50%);
}

.journey-step span {
  color: currentColor;
  display: block;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 8px;
}

.journey-step h4 {
  margin: 0 0 8px;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 15px;
}

.journey-step p {
  margin: 0;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.35;
}

.step-one {
  color: rgba(255,255,255,.72);
  left: 0;
  top: 176px;
}

.step-two {
  color: #6b9dff;
  left: 20%;
  top: 18px;
}

.step-three {
  color: #6ce7cf;
  left: 40%;
  top: 176px;
}

.step-four {
  color: #9d86ff;
  left: 60%;
  top: 18px;
}

.step-five {
  color: #b6ff66;
  right: 0;
  top: 176px;
  border-color: rgba(182,255,102,.32);
  box-shadow: 0 0 42px rgba(182,255,102,.055), 0 22px 60px rgba(0,0,0,.24);
}

.step-one::before,
.step-three::before,
.step-five::before {
  bottom: 100%;
}

.step-one::after,
.step-three::after,
.step-five::after {
  top: -48px;
}

.step-two::before,
.step-four::before {
  top: 100%;
}

.step-two::after,
.step-four::after {
  bottom: -48px;
}

@media (max-width: 1100px) {
  .journey-stage {
    height: auto;
    display: grid;
    gap: 18px;
  }

  .path-line {
    display: none;
  }

  .journey-step {
    position: relative;
    width: 100%;
    min-height: auto;
    left: auto;
    right: auto;
    top: auto;
  }

  .journey-step::before,
  .journey-step::after {
    display: none;
  }
}


/* =========================================================
   Future Workforce Network section v2
   ========================================================= */

.future-network-section {
  background:
    radial-gradient(circle at 72% 42%, rgba(120,184,137,.055), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.future-network-grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(520px, .82fr);
  gap: 82px;
  align-items: center;
}

.future-copy h2 {
  max-width: 820px;
}

.workforce-network-card {
  min-height: 430px;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(120,184,137,.24);
  border-radius: 28px;
  background:
    radial-gradient(circle at 50% 52%, rgba(120,184,137,.12), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.038), rgba(255,255,255,.01)),
    rgba(8,12,16,.72);
  box-shadow:
    0 32px 90px rgba(0,0,0,.32),
    inset 0 0 0 1px rgba(255,255,255,.025);
}

.network-bg-grid {
  position: absolute;
  inset: 0;
  opacity: .12;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.16) 1px, transparent 1.4px);
  background-size: 22px 22px;
  mask-image: radial-gradient(circle at center, black 0 45%, transparent 74%);
}

.network-svg {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 430px;
  display: block;
}

.network-lines line {
  stroke: rgba(120,184,137,.28);
  stroke-width: 1.4;
}

.flow-lines path {
  fill: none;
  stroke: url(#lineFlow);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 52 360;
  animation: networkFlow 8s linear infinite;
  opacity: .7;
}

.flow-lines path:nth-child(2) { animation-delay: -2s; }
.flow-lines path:nth-child(3) { animation-delay: -4s; }
.flow-lines path:nth-child(4) { animation-delay: -6s; }

.core-halo {
  animation: coreBreathe 5.5s ease-in-out infinite;
}

.core-ring {
  fill: none;
  stroke: rgba(182,255,102,.4);
  stroke-width: 1.2;
  transform-origin: 380px 250px;
}

.ring-one {
  stroke-dasharray: 4 8;
  animation: rotateRing 28s linear infinite;
}

.ring-two {
  stroke: rgba(255,255,255,.22);
  animation: coreBreathe 6s ease-in-out infinite reverse;
}

.core-node circle {
  fill: rgba(13,20,26,.88);
  stroke: rgba(182,255,102,.58);
  stroke-width: 1.4;
}

.core-node text {
  fill: #f4f6f5;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .01em;
}

.outer-node {
  animation: nodePulse 5.8s ease-in-out infinite;
}

.outer-node:nth-of-type(even) {
  animation-delay: -1.8s;
}

.outer-node circle {
  fill: #78b889;
  stroke: rgba(182,255,102,.44);
  stroke-width: 6;
  stroke-opacity: .13;
}

.outer-node rect {
  fill: rgba(12,18,24,.92);
  stroke: rgba(120,184,137,.22);
  stroke-width: 1.2;
}

.outer-node text {
  fill: #e8eeee;
  font-size: 14px;
  font-weight: 620;
}

@keyframes networkFlow {
  0% { stroke-dashoffset: 0; opacity: .18; }
  18% { opacity: .9; }
  100% { stroke-dashoffset: -412; opacity: .18; }
}

@keyframes coreBreathe {
  0%, 100% { opacity: .68; transform: scale(1); transform-origin: 380px 250px; }
  50% { opacity: 1; transform: scale(1.04); transform-origin: 380px 250px; }
}

@keyframes rotateRing {
  to { transform: rotate(360deg); }
}

@keyframes nodePulse {
  0%, 100% { opacity: .82; }
  50% { opacity: 1; }
}

@media (max-width: 1100px) {
  .future-network-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .workforce-network-card {
    min-height: 360px;
  }

  .network-svg {
    height: 360px;
  }
}

@media (max-width: 700px) {
  .workforce-network-card {
    min-height: 310px;
  }

  .network-svg {
    height: 310px;
  }

  .outer-node text {
    font-size: 12px;
  }

  .core-node text {
    font-size: 16px;
  }
}


/* =========================================================
   Organisational transition visual + premium footer
   ========================================================= */

.org-transition-section {
  background:
    radial-gradient(circle at 72% 42%, rgba(120,184,137,.055), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}

.org-transition-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(600px, .88fr);
  gap: 78px;
  align-items: center;
}

.future-copy h2 {
  max-width: 850px;
}

.org-transition-card {
  position: relative;
  min-height: 440px;
  overflow: hidden;
  border: 1px solid rgba(120,184,137,.22);
  border-radius: 28px;
  background:
    radial-gradient(circle at 50% 50%, rgba(120,184,137,.13), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.04), rgba(255,255,255,.012)),
    rgba(8,12,16,.74);
  box-shadow:
    0 32px 90px rgba(0,0,0,.34),
    inset 0 0 0 1px rgba(255,255,255,.025);
  padding: 30px;
  display: grid;
  grid-template-columns: 1fr 70px 1fr;
  gap: 22px;
  align-items: center;
}

.transition-bg-grid {
  position: absolute;
  inset: 0;
  opacity: .11;
  background-image: radial-gradient(circle, rgba(255,255,255,.18) 1px, transparent 1.45px);
  background-size: 22px 22px;
  mask-image: radial-gradient(circle at center, black 0 48%, transparent 78%);
}

.org-panel {
  position: relative;
  z-index: 2;
  min-height: 360px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 22px;
  padding: 24px;
  background: rgba(7,10,13,.52);
}

.future-panel {
  border-color: rgba(182,255,102,.22);
  background:
    radial-gradient(circle at 50% 50%, rgba(182,255,102,.055), transparent 45%),
    rgba(7,10,13,.52);
}

.panel-tag {
  display: inline-block;
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: 10px;
  font-weight: 800;
  margin-bottom: 12px;
}

.org-panel h3 {
  margin: 0 0 18px;
  color: var(--text);
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: -.035em;
}

.org-panel p {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.35;
}

.hierarchy-visual {
  position: relative;
  height: 210px;
  margin: 28px 0 20px;
  opacity: .86;
}

.hier-node {
  position: absolute;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 9px;
  background: rgba(255,255,255,.055);
  box-shadow: 0 0 18px rgba(255,255,255,.035);
}

.hier-node.top {
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}

.hier-node.mid { top: 84px; }
.hier-node.mid.one { left: 10%; }
.hier-node.mid.two { left: 50%; transform: translateX(-50%); }
.hier-node.mid.three { right: 10%; }

.hier-node.low { top: 164px; }
.hier-node.low.one { left: 10%; }
.hier-node.low.two { left: 50%; transform: translateX(-50%); }
.hier-node.low.three { right: 10%; }

.hier-line {
  position: absolute;
  background: rgba(255,255,255,.28);
}

.hier-line.vertical {
  left: 50%;
  top: 38px;
  width: 1px;
  height: 46px;
}

.hier-line.horizontal {
  left: calc(10% + 19px);
  right: calc(10% + 19px);
  top: 84px;
  height: 1px;
}

.hier-line.down {
  width: 1px;
  height: 42px;
  top: 122px;
}

.hier-line.down.one { left: calc(10% + 19px); }
.hier-line.down.two { left: 50%; }
.hier-line.down.three { right: calc(10% + 19px); }

.transition-core {
  position: relative;
  z-index: 2;
  height: 100%;
  display: grid;
  place-items: center;
}

.transition-core::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 72%;
  background: linear-gradient(transparent, rgba(182,255,102,.5), transparent);
}

.transition-core span {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(182,255,102,.42);
  background:
    radial-gradient(circle, rgba(182,255,102,.28), rgba(182,255,102,.04) 62%, transparent);
  box-shadow: 0 0 38px rgba(182,255,102,.18);
}

.transition-core span::after {
  content: "→";
  position: absolute;
  color: var(--green);
  font-size: 22px;
  font-weight: 800;
  transform: translate(16px, 8px);
}

.future-org-svg {
  width: 100%;
  height: 230px;
  display: block;
  overflow: visible;
}

.future-links line {
  stroke: rgba(120,184,137,.28);
  stroke-width: 1.4;
}

.future-flow path {
  fill: none;
  stroke: url(#futureFlow);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 44 250;
  animation: futureFlow 8s linear infinite;
  opacity: .75;
}

.future-flow path:nth-child(2) { animation-delay: -2.4s; }
.future-flow path:nth-child(3) { animation-delay: -4.8s; }

.future-halo {
  animation: futureBreathe 5.5s ease-in-out infinite;
}

.future-ring {
  fill: none;
  stroke: rgba(182,255,102,.44);
  stroke-width: 1.2;
}

.future-ring.dotted {
  stroke-dasharray: 4 8;
  opacity: .65;
  transform-origin: 180px 130px;
  animation: rotateFutureRing 28s linear infinite;
}

.future-centre circle {
  fill: rgba(10,16,21,.9);
  stroke: rgba(182,255,102,.58);
  stroke-width: 1.5;
  filter: drop-shadow(0 0 18px rgba(182,255,102,.22));
}

.future-centre text {
  fill: #f4f6f5;
  font-size: 13px;
  font-weight: 800;
}

.future-node circle {
  fill: #78b889;
  stroke: rgba(182,255,102,.35);
  stroke-width: 6;
  stroke-opacity: .12;
}

.future-node text {
  fill: #dce5e2;
  font-size: 11px;
  font-weight: 650;
}

@keyframes futureFlow {
  0% { stroke-dashoffset: 0; opacity: .18; }
  18% { opacity: .9; }
  100% { stroke-dashoffset: -294; opacity: .18; }
}

@keyframes futureBreathe {
  0%,100% { opacity: .66; transform: scale(1); transform-origin: 180px 130px; }
  50% { opacity: 1; transform: scale(1.04); transform-origin: 180px 130px; }
}

@keyframes rotateFutureRing {
  to { transform: rotate(360deg); }
}

/* Premium footer */

.premium-footer {
  background:
    radial-gradient(circle at 15% 0%, rgba(120,184,137,.065), transparent 28%),
    #050708;
  border-top: 1px solid var(--line2);
  padding: 72px 0 28px;
}

.footer-main {
  display: grid;
  grid-template-columns: minmax(280px, 1.25fr) .55fr .65fr .85fr;
  gap: 62px;
  align-items: start;
}

.footer-brand-block img {
  height: 54px;
  width: auto;
  margin-bottom: 24px;
}

.footer-brand-block h2 {
  font-size: 28px;
  line-height: 1;
  letter-spacing: -.04em;
  margin: 0 0 16px;
}

.footer-brand-block p {
  color: var(--muted);
  font-size: 15px;
  max-width: 390px;
}

.footer-thesis {
  margin-top: 18px;
  color: var(--soft) !important;
}

.footer-column h3 {
  margin: 0 0 18px;
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: 11px;
}

.footer-column a {
  display: block;
  color: var(--muted);
  text-decoration: none;
  font-size: 14px;
  margin: 10px 0;
}

.footer-column a:hover {
  color: var(--green);
}

.footer-signature {
  border-top: 1px solid var(--line2);
  margin-top: 54px;
  padding-top: 22px;
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: center;
}

.footer-signature p {
  margin: 0;
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px;
  font-weight: 800;
}

.footer-signature span {
  color: var(--muted);
  font-size: 13px;
}

@media (max-width: 1100px) {
  .org-transition-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .footer-main {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 780px) {
  .org-transition-card {
    grid-template-columns: 1fr;
  }

  .transition-core {
    height: 60px;
  }

  .transition-core::before {
    width: 70%;
    height: 1px;
  }

  .footer-main {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .footer-signature {
    display: block;
  }

  .footer-signature span {
    display: block;
    margin-top: 12px;
  }
}

.org-transform-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.55fr);gap:78px;align-items:center}
.org-transform-card{min-height:360px;position:relative;overflow:hidden;border:1px solid rgba(120,184,137,.2);border-radius:28px;background:radial-gradient(circle at 62% 54%,rgba(182,255,102,.10),transparent 36%),linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012)),rgba(8,12,16,.66);box-shadow:0 32px 90px rgba(0,0,0,.28)}
.visual-field{position:absolute;inset:0;opacity:.11;background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1.5px);background-size:22px 22px;mask-image:radial-gradient(circle at 58% 52%,black 0 48%,transparent 76%)}
.model-shift{position:absolute;inset:0;display:grid;grid-template-columns:.85fr .45fr 1fr;align-items:center;padding:38px;perspective:900px}
.structured-plane,.emergent-plane{position:relative;height:180px;transform-style:preserve-3d;transform:rotateX(58deg) rotateZ(-42deg)}
.structured-plane span,.emergent-plane span{position:absolute;left:0;right:0;height:46px;border:1px solid currentColor;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.012));box-shadow:inset 0 0 24px rgba(255,255,255,.025)}
.structured-plane{color:rgba(255,255,255,.48)}.structured-plane span:nth-child(1){top:0}.structured-plane span:nth-child(2){top:62px}.structured-plane span:nth-child(3){top:124px}
.emergent-plane{color:#b6ff66;filter:drop-shadow(0 0 24px rgba(182,255,102,.24))}
.emergent-plane span{border-color:rgba(182,255,102,.58);background:radial-gradient(circle at 50% 50%,rgba(182,255,102,.13),transparent 54%),linear-gradient(135deg,rgba(182,255,102,.10),rgba(255,255,255,.012))}
.emergent-plane span:nth-child(1){top:0;transform:translateX(18px)}.emergent-plane span:nth-child(2){top:62px;transform:translateX(-8px)}.emergent-plane span:nth-child(3){top:124px;transform:translateX(26px)}
.reconfigure{position:relative;height:210px}.reconfigure:before{content:"";position:absolute;left:50%;top:10%;bottom:10%;width:1px;background:linear-gradient(transparent,rgba(182,255,102,.65),transparent)}
.reconfigure i{position:absolute;width:36px;height:18px;border:1px solid rgba(182,255,102,.36);background:rgba(182,255,102,.06);box-shadow:0 0 20px rgba(182,255,102,.13);transform:rotateX(58deg) rotateZ(-42deg)}
.reconfigure i:nth-child(1){top:30px;left:20px}.reconfigure i:nth-child(2){top:82px;right:10px}.reconfigure i:nth-child(3){top:128px;left:0}.reconfigure i:nth-child(4){top:164px;right:28px}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}.research-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:42px}
.experience-card,.research-card{position:relative;border:1px solid var(--line);border-radius:20px;padding:28px;background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),rgba(255,255,255,.018);overflow:hidden;transition:transform .25s ease,border-color .25s ease,background .25s ease}
.experience-card:before,.research-card:before{content:"";position:absolute;left:28px;top:0;width:72px;height:2px;background:var(--green);opacity:.85}
.experience-card:hover,.research-card:hover{transform:translateY(-4px);border-color:rgba(120,184,137,.28)}
.experience-card span,.research-card span{display:block;color:var(--green);text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:800;margin-bottom:22px}
.experience-card h3,.research-card h3{margin:0 0 18px;font-size:24px;line-height:1.14;letter-spacing:-.04em}.experience-card p{color:var(--muted);font-size:16px;margin:0}
.research-card h3{min-height:112px}.research-card a{color:var(--green);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800}
.premium-footer{background:radial-gradient(circle at 15% 0%,rgba(120,184,137,.065),transparent 28%),#050708;border-top:1px solid var(--line2);padding:72px 0 28px}
.footer-main{display:grid;grid-template-columns:minmax(280px,1.25fr) .55fr .65fr .85fr;gap:62px;align-items:start}
.footer-brand-block img{height:54px;width:auto;margin-bottom:24px}.footer-brand-block h2{font-size:28px;line-height:1;letter-spacing:-.04em;margin:0 0 16px}.footer-brand-block p{color:var(--muted);font-size:15px;max-width:390px}.footer-thesis{margin-top:18px;color:var(--soft)!important}
.footer-column h3{margin:0 0 18px;color:var(--green);text-transform:uppercase;letter-spacing:.15em;font-size:11px}.footer-column a{display:block;color:var(--muted);text-decoration:none;font-size:14px;margin:10px 0}.footer-column a:hover{color:var(--green)}
.footer-signature{border-top:1px solid var(--line2);margin-top:54px;padding-top:22px;display:flex;justify-content:space-between;gap:28px;align-items:center}.footer-signature p{margin:0;color:var(--green);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800}.footer-signature span{color:var(--muted);font-size:13px}
@media(max-width:1100px){.org-transform-grid,.footer-main{grid-template-columns:1fr}.experience-grid,.research-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.org-transform-card{min-height:310px}.model-shift{padding:28px 18px;grid-template-columns:.9fr .35fr 1fr}.experience-grid,.research-grid{grid-template-columns:1fr}.footer-signature{display:block}.footer-signature span{display:block;margin-top:12px}}


/* =========================================================
   Polish pass v1
   ========================================================= */

.hero-actions {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-top: 30px;
}

.hero-actions .text-link {
  margin-top: 0;
}

.hero-primary {
  margin-top: 0;
  box-shadow: 0 14px 34px rgba(120,184,137,.12);
}

.thesis-panel,
.hero-system,
.figure-hero {
  border-color: rgba(120,184,137,.20) !important;
}

/* Hero gains more executive authority */
.hero h1,
h1 {
  letter-spacing: -.075em;
}

.hero-text {
  border-left: 1px solid rgba(120,184,137,.28);
  padding-left: 24px;
}

/* Make the vision graphic supportive rather than dominant */
.org-transform-grid {
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .44fr) !important;
  gap: 68px !important;
}

.org-transform-card {
  min-height: 300px !important;
  max-width: 430px;
  justify-self: end;
  opacity: .92;
}

.model-shift {
  padding: 34px 30px !important;
  grid-template-columns: .9fr .32fr 1fr !important;
}

.structured-plane,
.emergent-plane {
  height: 140px !important;
}

.structured-plane span,
.emergent-plane span {
  height: 34px !important;
}

.structured-plane span:nth-child(2),
.emergent-plane span:nth-child(2) {
  top: 50px !important;
}

.structured-plane span:nth-child(3),
.emergent-plane span:nth-child(3) {
  top: 100px !important;
}

.reconfigure {
  height: 150px !important;
}

.reconfigure i {
  width: 28px !important;
  height: 14px !important;
}

.reconfigure i:nth-child(1){top:22px!important;left:8px!important}
.reconfigure i:nth-child(2){top:58px!important;right:4px!important}
.reconfigure i:nth-child(3){top:94px!important;left:2px!important}
.reconfigure i:nth-child(4){top:122px!important;right:12px!important}

/* Unify card system */
.experience-card,
.research-card,
.three-grid article,
.insight-grid article {
  border-radius: 22px !important;
  border-color: rgba(255,255,255,.105) !important;
}

.experience-card,
.research-card {
  min-height: 250px;
  display: flex;
  flex-direction: column;
}

.experience-card h3,
.research-card h3 {
  font-size: 23px !important;
}

.research-card p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.45;
  margin: 0 0 28px;
}

.research-card a {
  margin-top: auto;
}

.research-card h3 {
  min-height: auto !important;
}

/* Better section rhythm */
.experience-section .section-intro,
.insights .section-intro {
  max-width: 820px;
}

/* CTA finish */
.strategic-discussion-cta .cta-box {
  padding: 56px !important;
}

.strategic-discussion-cta h2 {
  font-size: clamp(38px, 4.4vw, 62px);
}

/* Footer sharpen */
.premium-footer {
  padding-top: 82px !important;
}

.footer-brand-block h2 {
  color: var(--text);
}

.footer-column a {
  line-height: 1.35;
}

@media(max-width:1100px){
  .org-transform-grid {
    grid-template-columns: 1fr !important;
  }
  .org-transform-card {
    justify-self: start;
    max-width: 520px;
    width: 100%;
  }
}

@media(max-width:760px){
  .hero-text {
    border-left: 0;
    padding-left: 0;
  }
  .strategic-discussion-cta .cta-box {
    padding: 30px !important;
  }
}


/* Clean homepage review refinements */
.figure-label,
.figure-meta,
.model-topline span:first-child {
  font-size: 11px !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--green) !important;
  opacity: .85 !important;
  font-weight: 760 !important;
}


/* =========================================================
   SEO / AEO / Strategic Discussion Form
   ========================================================= */

.faq-section {
  background: linear-gradient(180deg, rgba(255,255,255,.014), transparent);
}

.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
  margin-top: 44px;
}

.faq-grid details {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.022);
  padding: 22px 24px;
}

.faq-grid summary {
  cursor: pointer;
  color: var(--text);
  font-weight: 760;
  font-size: 18px;
  letter-spacing: -.025em;
}

.faq-grid p {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 16px;
}

.discussion-grid {
  display: grid;
  grid-template-columns: .72fr 1fr;
  gap: 70px;
  align-items: start;
}

.discussion-copy p {
  color: var(--muted);
  font-size: 18px;
  max-width: 640px;
}

.discussion-list {
  list-style: none;
  padding: 0;
  margin: 34px 0 0;
  display: grid;
  gap: 14px;
}

.discussion-list li {
  color: var(--soft);
  border-left: 2px solid var(--green);
  padding-left: 16px;
  font-size: 16px;
}

.strategy-form {
  border: 1px solid rgba(120,184,137,.22);
  border-radius: 28px;
  padding: 34px;
  background:
    radial-gradient(circle at 80% 10%, rgba(120,184,137,.075), transparent 34%),
    linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.012)),
    rgba(8,12,16,.74);
  box-shadow: 0 30px 80px rgba(0,0,0,.26);
}

.form-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--line2);
  padding-bottom: 22px;
  margin-bottom: 24px;
}

.form-head span {
  color: var(--green);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px;
  font-weight: 800;
}

.form-head strong {
  color: var(--soft);
  font-size: 13px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.strategy-form label,
.strategy-form legend {
  color: var(--soft);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
}

.strategy-form input,
.strategy-form select,
.strategy-form textarea {
  width: 100%;
  margin-top: 8px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  background: rgba(255,255,255,.045);
  color: var(--text);
  padding: 14px 14px;
  font: inherit;
  outline: none;
}

.strategy-form input:focus,
.strategy-form select:focus,
.strategy-form textarea:focus {
  border-color: rgba(182,255,102,.5);
  box-shadow: 0 0 0 3px rgba(182,255,102,.08);
}

.strategy-form fieldset {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  padding: 18px;
  margin: 22px 0;
}

.checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 14px;
}

.checkbox-grid label {
  display: flex;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-weight: 500;
}

.checkbox-grid input {
  width: auto;
  margin: 0;
}

.strategy-form textarea {
  resize: vertical;
  margin-bottom: 12px;
}

.form-note {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  margin: 16px 0 22px;
}

.form-submit {
  width: 100%;
  justify-content: center;
  border: 0;
  cursor: pointer;
}

@media (max-width: 980px) {
  .discussion-grid,
  .faq-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .form-grid,
  .checkbox-grid {
    grid-template-columns: 1fr;
  }

  .strategy-form {
    padding: 24px;
  }

  .form-head {
    display: block;
  }

  .form-head strong {
    display: block;
    margin-top: 8px;
  }
}


/* =========================================================
   Popup Strategic Discussion Form
   ========================================================= */

body.modal-active {
  overflow: hidden;
}

.open-discussion-modal {
  border: 0;
  cursor: pointer;
}

.discussion-modal {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 28px;
}

.discussion-modal.is-open {
  display: flex;
}

.modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 5, 7, .78);
  backdrop-filter: blur(14px);
}

.modal-dialog {
  position: relative;
  z-index: 2;
  width: min(980px, 100%);
  max-height: min(92vh, 920px);
  overflow: auto;
  border: 1px solid rgba(120,184,137,.26);
  border-radius: 30px;
  background:
    radial-gradient(circle at 82% 10%, rgba(120,184,137,.10), transparent 34%),
    linear-gradient(160deg, rgba(255,255,255,.055), rgba(255,255,255,.014)),
    #070a0d;
  box-shadow: 0 45px 140px rgba(0,0,0,.58);
  padding: 38px;
}

.modal-dialog::-webkit-scrollbar {
  width: 10px;
}

.modal-dialog::-webkit-scrollbar-track {
  background: rgba(255,255,255,.04);
}

.modal-dialog::-webkit-scrollbar-thumb {
  background: rgba(120,184,137,.38);
  border-radius: 999px;
}

.modal-close {
  position: absolute;
  top: 18px;
  right: 20px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  background: rgba(255,255,255,.04);
  color: var(--text);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.modal-close:hover {
  border-color: rgba(182,255,102,.42);
  color: var(--green);
}

.modal-intro {
  max-width: 720px;
  margin-bottom: 26px;
}

.modal-intro h2 {
  font-size: clamp(34px, 4vw, 54px);
  margin-bottom: 16px;
}

.modal-intro p {
  color: var(--muted);
  font-size: 17px;
}

.modal-form {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.strategy-form input,
.strategy-form select,
.strategy-form textarea {
  min-height: 52px;
  appearance: none;
  -webkit-appearance: none;
  color-scheme: dark;
}

.strategy-form select {
  cursor: pointer;
  padding-right: 44px;
}

.select-wrap,
.date-wrap {
  position: relative;
  display: block;
}

.select-wrap::after {
  content: "";
  position: absolute;
  right: 16px;
  top: calc(50% + 4px);
  width: 9px;
  height: 9px;
  border-right: 2px solid var(--green);
  border-bottom: 2px solid var(--green);
  transform: translateY(-50%) rotate(45deg);
  pointer-events: none;
}

.date-wrap::after {
  content: "";
  position: absolute;
  right: 16px;
  top: calc(50% + 4px);
  width: 18px;
  height: 18px;
  border: 2px solid var(--green);
  border-radius: 5px;
  pointer-events: none;
  opacity: .95;
}

.date-wrap::before {
  content: "";
  position: absolute;
  right: 20px;
  top: calc(50% - 9px);
  width: 10px;
  height: 2px;
  background: var(--green);
  pointer-events: none;
  z-index: 2;
}

.strategy-form input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0;
  cursor: pointer;
  width: 40px;
  height: 40px;
}

.checkbox-grid label {
  position: relative;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 14px;
  background: rgba(255,255,255,.025);
  transition: border-color .2s ease, background .2s ease;
}

.checkbox-grid label:hover {
  border-color: rgba(120,184,137,.32);
  background: rgba(120,184,137,.04);
}

.checkbox-grid input {
  accent-color: var(--green);
}

.checkbox-grid input:checked + span {
  color: var(--text);
}

.strategy-form option {
  background: #0b1015;
  color: var(--text);
}

.form-submit {
  min-height: 52px;
}

@media (max-width: 760px) {
  .discussion-modal {
    padding: 14px;
  }

  .modal-dialog {
    padding: 28px 20px;
    border-radius: 22px;
  }
}


/* Secure popup form production refinements */
.modal-dialog {
  padding-top: 54px !important;
}

.modal-intro h2 {
  line-height: 1.05 !important;
  margin-top: 0 !important;
}

.hp-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.form-status {
  display: none;
  margin: 16px 0 18px;
  padding: 14px 16px;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.4;
}

.form-status:not(:empty) {
  display: block;
}

.form-status.is-success {
  border: 1px solid rgba(182,255,102,.32);
  background: rgba(182,255,102,.08);
  color: #dfffc7;
}

.form-status.is-error {
  border: 1px solid rgba(255,100,100,.32);
  background: rgba(255,100,100,.08);
  color: #ffd4d4;
}

.form-submit:disabled {
  opacity: .55;
  cursor: wait;
}


/* =========================================================
   Form polish v2 — Voicecenta-inspired premium split popup
   ========================================================= */

.vc-style-modal {
  width: min(1500px, 96vw) !important;
  max-height: 92vh !important;
  padding: 0 !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: 390px 1fr !important;
  background: #fbfbff !important;
  color: #07112b !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  box-shadow: 0 55px 150px rgba(0,0,0,.65) !important;
}

.vc-style-modal .modal-close {
  z-index: 10;
  top: 18px;
  right: 20px;
  width: 54px;
  height: 54px;
  background: linear-gradient(135deg, #b6ff66, #78b889);
  color: #07112b;
  border: 0;
  font-size: 34px;
  box-shadow: 0 18px 38px rgba(120,184,137,.28);
}

.modal-side {
  padding: 64px 46px;
  background:
    radial-gradient(circle at 20% 15%, rgba(182,255,102,.18), transparent 24%),
    linear-gradient(180deg, #f8faf6, #f0f4eb);
  border-right: 1px solid #dde5d6;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.modal-brand {
  width: 190px;
  max-height: 80px;
  object-fit: contain;
  object-position: left center;
  margin-bottom: 56px;
}

.modal-pill {
  align-self: flex-start;
  display: inline-flex;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(182,255,102,.25);
  color: #295d37;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 20px;
}

.modal-side h2 {
  color: #07112b;
  font-size: clamp(32px, 3vw, 48px);
  line-height: 1.05;
  letter-spacing: -.055em;
  margin: 0;
}

.modal-accent {
  width: 78px;
  height: 5px;
  border-radius: 999px;
  background: #b6ff66;
  margin: 28px 0;
  box-shadow: 0 0 20px rgba(120,184,137,.28);
}

.modal-side p {
  color: #34405d;
  font-size: 17px;
  line-height: 1.45;
}

.consult-box {
  margin-top: 28px;
  border: 1px solid #dde5d6;
  border-radius: 20px;
  background: rgba(255,255,255,.62);
  padding: 22px;
}

.consult-box strong {
  display: block;
  color: #295d37;
  margin-bottom: 16px;
}

.consult-box div {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
  margin-top: 14px;
}

.consult-box span {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(182,255,102,.32);
  color: #295d37;
  font-weight: 900;
  font-size: 12px;
}

.consult-box p {
  margin: 0;
  color: #07112b;
  font-size: 14px;
}

.vc-style-modal .modal-form {
  padding: 52px 52px 38px !important;
  overflow: auto;
  background: #fff;
  color: #07112b;
}

.vc-style-modal .form-grid {
  gap: 20px 24px;
}

.vc-style-modal label,
.vc-style-modal legend {
  color: #07112b !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.vc-style-modal label em {
  color: #ff4d4d;
  font-style: normal;
}

.input-wrap,
.vc-select,
.vc-date,
.textarea-wrap {
  position: relative;
  display: block;
}

.vc-style-modal input,
.vc-style-modal select,
.vc-style-modal textarea {
  min-height: 60px !important;
  border: 1px solid #dce3ef !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #07112b !important;
  padding: 16px 18px 16px 56px !important;
  font-size: 16px !important;
  box-shadow: 0 10px 28px rgba(16,24,40,.035);
}

.vc-style-modal textarea {
  padding-left: 18px !important;
}

.vc-style-modal input::placeholder,
.vc-style-modal textarea::placeholder {
  color: #8c97b5;
}

.vc-style-modal input:focus,
.vc-style-modal select:focus,
.vc-style-modal textarea:focus {
  border-color: #78b889 !important;
  box-shadow: 0 0 0 4px rgba(120,184,137,.13) !important;
}

.input-wrap::before,
.vc-select::before,
.vc-date::before {
  position: absolute;
  left: 19px;
  top: calc(50% + 4px);
  transform: translateY(-50%);
  z-index: 2;
  color: #78b889;
  font-weight: 900;
  font-size: 21px;
  pointer-events: none;
}

.icon-user::before { content: "♙"; }
.icon-mail::before { content: "✉"; font-size: 19px; }
.icon-company::before { content: "▦"; }
.icon-web::before { content: "◎"; }
.icon-size::before { content: "▤"; }
.icon-industry::before { content: "◇"; }
.icon-date::before { content: "□"; }
.icon-time::before { content: "◷"; }

.vc-style-modal .select-wrap::after {
  right: 20px;
  top: calc(50% + 4px);
  border-color: #78b889;
  width: 10px;
  height: 10px;
}

.vc-style-modal .date-wrap::after,
.vc-style-modal .date-wrap::before {
  display: none;
}

.vc-style-modal select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  font-weight: 700;
  color: #53607f !important;
}

.vc-style-modal fieldset {
  border: 0 !important;
  padding: 0 !important;
  margin: 24px 0 !important;
}

.vc-style-modal legend {
  margin-bottom: 14px;
}

.vc-style-modal .checkbox-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.vc-style-modal .checkbox-grid label {
  padding: 14px 14px;
  border: 1px solid #dce3ef;
  border-radius: 14px;
  background: #fff;
  color: #4b5876 !important;
  box-shadow: 0 10px 28px rgba(16,24,40,.03);
}

.vc-style-modal .checkbox-grid input {
  accent-color: #78b889;
}

.vc-style-modal .checkbox-grid label:has(input:checked) {
  border-color: #78b889;
  background: rgba(182,255,102,.13);
}

.availability-strip {
  margin: 16px 0 10px;
  display: grid;
  grid-template-columns: 26px auto 1fr;
  align-items: center;
  gap: 10px;
  border-radius: 14px;
  background: rgba(182,255,102,.16);
  color: #07112b;
  padding: 15px 18px;
}

.availability-strip span {
  color: #78b889;
}

.availability-strip strong {
  font-size: 14px;
}

.availability-strip p {
  margin: 0;
  color: #53607f;
  font-size: 14px;
}

.vc-style-modal .form-note {
  color: #69738f;
}

.vc-style-modal .form-submit {
  min-height: 58px;
  background: linear-gradient(135deg, #b6ff66, #78b889);
  color: #07112b;
  border: 0;
  font-weight: 900;
  box-shadow: 0 18px 42px rgba(120,184,137,.22);
}

.section-micro-cta {
  width: min(1180px, calc(100% - 48px));
  margin: -40px auto 70px;
  border: 1px solid rgba(120,184,137,.18);
  border-radius: 18px;
  padding: 18px 22px;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: center;
  background: rgba(255,255,255,.02);
}

.section-micro-cta span {
  color: var(--soft);
  font-size: 15px;
}

.mini-cta {
  border: 1px solid rgba(182,255,102,.32);
  background: rgba(182,255,102,.08);
  color: var(--green);
  border-radius: 999px;
  padding: 10px 16px;
  cursor: pointer;
  font-weight: 800;
  white-space: nowrap;
}

@media(max-width: 1000px) {
  .vc-style-modal {
    grid-template-columns: 1fr !important;
  }

  .modal-side {
    padding: 34px 28px;
  }

  .modal-brand {
    margin-bottom: 24px;
  }

  .vc-style-modal .modal-form {
    padding: 34px 28px 28px !important;
  }

  .vc-style-modal .checkbox-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width: 680px) {
  .vc-style-modal .checkbox-grid,
  .vc-style-modal .form-grid {
    grid-template-columns: 1fr;
  }

  .section-micro-cta {
    display: block;
  }

  .mini-cta {
    margin-top: 12px;
  }

  .availability-strip {
    grid-template-columns: 24px 1fr;
  }

  .availability-strip p {
    grid-column: 2;
  }
}


/* =========================================================
   Compact scrollable modal fix
   ========================================================= */

.vc-style-modal {
  width: min(1280px, 94vw) !important;
  height: min(820px, 92vh) !important;
  max-height: 92vh !important;
  grid-template-columns: 330px 1fr !important;
  overflow: hidden !important;
  background: #fff !important;
}

.modal-side {
  padding: 42px 34px !important;
  justify-content: flex-start !important;
  background:
    radial-gradient(circle at 5% 5%, rgba(182,255,102,.20), transparent 34%),
    linear-gradient(180deg, #f4faee, #eef4e9) !important;
  color: #07112b !important;
}

.modal-brand {
  width: 170px !important;
  margin-bottom: 34px !important;
  filter: none !important;
}

.modal-side h2 {
  font-size: clamp(31px, 2.55vw, 42px) !important;
  line-height: 1.06 !important;
  color: #07112b !important;
  max-width: 280px;
}

.modal-side p {
  color: #263450 !important;
  font-size: 15.5px !important;
}

.modal-pill {
  background: rgba(120,184,137,.18) !important;
  color: #295d37 !important;
  margin-bottom: 16px !important;
}

.modal-accent {
  margin: 22px 0 !important;
}

.consult-box {
  margin-top: 20px !important;
  padding: 18px !important;
  background: rgba(255,255,255,.72) !important;
}

.consult-box div {
  margin-top: 12px !important;
}

.consult-box p {
  font-size: 13px !important;
  line-height: 1.3 !important;
}

.vc-style-modal .modal-form {
  height: 100% !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 36px 38px 30px !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(120,184,137,.45) rgba(0,0,0,.05);
}

.vc-style-modal .modal-form::-webkit-scrollbar {
  width: 9px;
}

.vc-style-modal .modal-form::-webkit-scrollbar-track {
  background: rgba(0,0,0,.045);
}

.vc-style-modal .modal-form::-webkit-scrollbar-thumb {
  background: rgba(120,184,137,.45);
  border-radius: 999px;
}

.vc-style-modal .form-grid {
  gap: 15px 20px !important;
}

.vc-style-modal label,
.vc-style-modal legend {
  font-size: 13.2px !important;
}

.vc-style-modal input,
.vc-style-modal select,
.vc-style-modal textarea {
  min-height: 48px !important;
  border-radius: 12px !important;
  padding: 12px 16px 12px 46px !important;
  font-size: 14.5px !important;
}

.vc-style-modal textarea {
  min-height: 92px !important;
  padding-left: 16px !important;
}

.input-wrap::before,
.vc-select::before,
.vc-date::before {
  left: 16px !important;
  font-size: 17px !important;
}

.vc-style-modal fieldset {
  margin: 18px 0 !important;
}

.vc-style-modal legend {
  margin-bottom: 10px !important;
}

.vc-style-modal .checkbox-grid {
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 10px !important;
}

.vc-style-modal .checkbox-grid label {
  min-height: 56px !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  font-size: 13.5px !important;
}

.vc-style-modal .checkbox-grid input {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px;
}

.availability-strip {
  margin: 12px 0 8px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
}

.availability-strip strong,
.availability-strip p {
  font-size: 13px !important;
}

.vc-style-modal .form-note {
  font-size: 12.5px !important;
  margin: 12px 0 16px !important;
}

.vc-style-modal .form-submit {
  min-height: 50px !important;
}

.vc-style-modal .select-wrap::after {
  right: 17px !important;
  width: 8px !important;
  height: 8px !important;
}

.modal-close {
  top: 14px !important;
  right: 16px !important;
  width: 46px !important;
  height: 46px !important;
  font-size: 30px !important;
}

/* Remove oversized dark modal inheritance */
.modal-intro {
  display: none !important;
}

@media(max-width: 1000px) {
  .vc-style-modal {
    width: min(760px, 94vw) !important;
    height: 92vh !important;
    grid-template-columns: 1fr !important;
    overflow-y: auto !important;
  }

  .modal-side {
    min-height: auto !important;
    padding: 30px 24px !important;
  }

  .modal-side h2 {
    max-width: 100%;
  }

  .consult-box {
    display: none !important;
  }

  .vc-style-modal .modal-form {
    height: auto !important;
    overflow: visible !important;
    padding: 28px 24px 26px !important;
  }
}

@media(max-width: 680px) {
  .vc-style-modal {
    width: 96vw !important;
    height: 94vh !important;
  }

  .vc-style-modal .checkbox-grid,
  .vc-style-modal .form-grid {
    grid-template-columns: 1fr !important;
  }

  .modal-side h2 {
    font-size: 30px !important;
  }
}


/* FAIC icon brand + compact premium form v2 */
.nav-logo img,.footer-brand-block img,.modal-brand{content:url("assets/faic-icon.png");object-fit:contain!important}
.nav-logo img{height:38px!important;width:38px!important}.footer-brand-block img{height:58px!important;width:58px!important}
.modal-brand{width:82px!important;height:82px!important;margin-bottom:28px!important;filter:drop-shadow(0 20px 35px rgba(0,0,0,.16))!important}

.vc-style-modal{width:min(1180px,94vw)!important;height:min(760px,92vh)!important;grid-template-columns:300px 1fr!important;border-radius:24px!important}
.modal-side{padding:34px 30px!important;background:radial-gradient(circle at 10% 10%,rgba(182,255,102,.22),transparent 34%),linear-gradient(180deg,#f2faec,#eaf2e3)!important}
.modal-side h2{font-size:clamp(28px,2.35vw,38px)!important;max-width:240px!important;color:#07112b!important}
.modal-side p{font-size:14.5px!important;line-height:1.42!important;color:#263450!important}
.modal-pill{padding:8px 14px!important;font-size:10.5px!important;background:rgba(120,184,137,.18)!important;color:#295d37!important}
.consult-box{padding:15px!important;border-radius:16px!important}.consult-box strong{font-size:14px!important}.consult-box span{width:31px!important;height:31px!important}.consult-box p{font-size:12.5px!important}

.vc-style-modal .modal-form{padding:30px 34px 26px!important;overflow-y:auto!important}
.vc-style-modal .form-grid{gap:13px 18px!important}
.vc-style-modal label,.vc-style-modal legend{color:#07112b!important;font-size:13px!important;font-weight:850!important}
.vc-style-modal input,.vc-style-modal select,.vc-style-modal textarea{min-height:46px!important;border-radius:11px!important;border:1px solid #dbe3ee!important;padding:11px 14px 11px 42px!important;font-size:14px!important;font-weight:650!important;box-shadow:0 8px 20px rgba(16,24,40,.025)!important}
.vc-style-modal textarea{min-height:86px!important;padding:13px 14px!important;line-height:1.4!important}
.vc-style-modal input::placeholder,.vc-style-modal textarea::placeholder{color:#8995b0!important;opacity:1!important}
.input-wrap::before,.vc-select::before,.vc-date::before{left:15px!important;top:calc(50% + 4px)!important;font-size:16px!important;color:#4c9d63!important}
.icon-user::before{content:"○"}.icon-mail::before{content:"✉"}.icon-company::before{content:"▣"}.icon-web::before{content:"◎"}.icon-size::before{content:"☷"}.icon-industry::before{content:"◇"}.icon-date::before{content:"▦"}.icon-time::before{content:"◷"}

.vc-style-modal input[type="date"]{cursor:pointer;color:#34405d!important}.vc-style-modal input[type="date"]::-webkit-calendar-picker-indicator{opacity:0;width:42px;height:42px;cursor:pointer}
.vc-date::after{content:"";position:absolute;right:17px;top:calc(50% + 4px);width:9px;height:9px;border-right:2px solid #4c9d63;border-bottom:2px solid #4c9d63;transform:translateY(-50%) rotate(45deg);pointer-events:none}
.vc-select::after{border-color:#4c9d63!important}.vc-style-modal select{color:#34405d!important;font-weight:760!important;background-color:#fff!important}

.vc-style-modal fieldset{margin:16px 0!important}.vc-style-modal .checkbox-grid{grid-template-columns:repeat(2,1fr)!important;gap:9px!important}
.vc-style-modal .checkbox-grid label{min-height:46px!important;padding:10px 12px!important;border-radius:11px!important;background:#fff!important;color:#263450!important;border:1px solid #dbe3ee!important;box-shadow:0 8px 18px rgba(16,24,40,.022)!important}
.vc-style-modal .checkbox-grid label span{color:#263450!important;opacity:1!important;font-size:13.5px!important;font-weight:720!important}
.vc-style-modal .checkbox-grid input{width:16px!important;height:16px!important;flex:0 0 16px!important}
.vc-style-modal .checkbox-grid label:has(input:checked){background:rgba(182,255,102,.18)!important;border-color:#78b889!important}
.vc-style-modal .checkbox-grid label:has(input:checked) span{color:#07112b!important}

.availability-strip{padding:10px 13px!important;margin:10px 0 8px!important;border-radius:11px!important}.availability-strip strong,.availability-strip p{font-size:12.5px!important}
.vc-style-modal .form-note{font-size:12px!important;margin:10px 0 12px!important}.vc-style-modal .form-submit{min-height:48px!important;border-radius:999px!important}
.vc-style-modal .modal-close{width:42px!important;height:42px!important;font-size:27px!important}

@media(max-width:1000px){.vc-style-modal{grid-template-columns:1fr!important;height:92vh!important;overflow-y:auto!important}.modal-side{padding:28px 24px!important}.modal-side h2{max-width:100%!important}.vc-style-modal .modal-form{overflow:visible!important;padding:26px 24px!important}}
@media(max-width:680px){.vc-style-modal .checkbox-grid,.vc-style-modal .form-grid{grid-template-columns:1fr!important}}


/* =========================================================
   Modal scroll + submit accessibility fix
   ========================================================= */

.discussion-modal {
  align-items: flex-start !important;
  overflow-y: auto !important;
  padding: 28px !important;
}

.modal-backdrop {
  position: fixed !important;
}

.vc-style-modal {
  margin: 0 auto 28px !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
}

.vc-style-modal .modal-close {
  position: sticky !important;
  top: 16px !important;
  margin-left: auto !important;
  grid-column: 2;
  justify-self: end;
  z-index: 30;
  transform: translate(-14px, 14px);
}

.modal-side {
  min-height: auto !important;
  height: auto !important;
  overflow: visible !important;
  align-self: stretch !important;
}

.consult-box {
  max-height: none !important;
  overflow: visible !important;
}

.vc-style-modal .modal-form {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  padding-top: 22px !important;
  padding-bottom: 34px !important;
}

/* Keep the visual footprint compact enough that the button is reachable quickly */
.vc-style-modal .checkbox-grid label {
  min-height: 42px !important;
}

.vc-style-modal textarea {
  min-height: 74px !important;
}

.availability-strip {
  margin-top: 8px !important;
}

.vc-style-modal .form-submit {
  display: block !important;
  margin-top: 8px !important;
  margin-bottom: 0 !important;
}

/* Make the left-panel checklist shorter instead of clipped */
.consult-box div {
  grid-template-columns: 34px 1fr !important;
  gap: 10px !important;
}

.consult-box span {
  width: 28px !important;
  height: 28px !important;
}

.consult-box p {
  font-size: 12px !important;
}

/* Remove accidental field focus outline dominance */
.vc-style-modal textarea:focus {
  box-shadow: 0 0 0 3px rgba(120,184,137,.10) !important;
}

@media(max-width: 1000px) {
  .discussion-modal {
    padding: 14px !important;
  }

  .vc-style-modal {
    display: block !important;
    width: min(760px, 96vw) !important;
  }

  .vc-style-modal .modal-close {
    position: sticky !important;
    float: right;
    top: 12px !important;
    transform: none !important;
    margin: 10px 12px -52px auto !important;
  }

  .modal-side,
  .vc-style-modal .modal-form {
    width: 100% !important;
  }
}

@media(max-height: 760px) and (min-width: 1001px) {
  .modal-side {
    padding-top: 28px !important;
    padding-bottom: 24px !important;
  }

  .modal-brand {
    width: 64px !important;
    height: 64px !important;
    margin-bottom: 18px !important;
  }

  .modal-side h2 {
    font-size: 30px !important;
  }

  .consult-box {
    margin-top: 14px !important;
    padding: 13px !important;
  }

  .vc-style-modal .modal-form {
    padding-top: 18px !important;
  }
}
