:root {
  --navy: #061A33;
  --navy-2: #092A4C;
  --teal: #118A9B;
  --green-teal: #7FC7B0;
  --stone: #E8DFD2;
  --grey: #D6DCE3;
  --orange: #FF8A3D;
  --white: #F7F9FB;
  --ink: #0E1B2C;
  --muted: #526173;
  --card: #ffffff;
  --shadow: 0 24px 70px rgba(6, 26, 51, .16);
  --soft-shadow: 0 18px 50px rgba(6, 26, 51, .10);
  --radius: 28px;
  --radius-lg: 40px;
  --shell: min(1180px, calc(100vw - 48px));
  --speed: 260ms;
  --logo-rotation: 0deg;
  color-scheme: light;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 116px; }
section[id] { scroll-margin-top: 116px; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--white);
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body.no-scroll { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
::selection { background: rgba(127, 199, 176, .38); }

.skip-link {
  position: absolute;
  top: 16px;
  left: 16px;
  transform: translateY(-160%);
  background: var(--white);
  color: var(--navy);
  padding: 10px 14px;
  border-radius: 999px;
  z-index: 1000;
  transition: transform var(--speed) ease;
}
.skip-link:focus { transform: translateY(0); }

.page-progress {
  position: fixed;
  inset: 0 0 auto 0;
  height: 3px;
  z-index: 1000;
  background: transparent;
}
.page-progress span {
  display: block;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--teal), var(--green-teal), var(--orange));
  box-shadow: 0 0 18px rgba(17, 138, 155, .5);
}

.shell { width: var(--shell); margin-inline: auto; }
.section { padding: 112px 0; position: relative; }
.section-navy { color: var(--white); background: var(--navy); }
.section-heading { max-width: none; margin: 0 auto 48px; text-align: center; }
.section-heading h2, .section-copy h2, .contact-card h2 { margin: 0 0 18px; font-size: clamp(2rem, 4vw, 3.65rem); line-height: 1.03; letter-spacing: -0.055em; color: var(--navy); }
.section-heading p, .section-copy p, .contact-card p { margin: 0; color: var(--muted); font-size: 1.05rem; }
.section-note {
  margin-top: 22px !important;
  max-width: 720px;
  font-size: .96rem !important;
}
.section-note a {
  color: var(--teal);
  font-weight: 850;
  border-bottom: 1px solid rgba(17,138,155,.28);
}
.section-note a:hover { color: var(--orange); border-color: rgba(255,138,61,.45); }
.section-note span { color: var(--muted); font-weight: 780; }
.section-navy .section-heading h2, .section-navy .section-copy h2 { color: var(--white); }
.section-navy .section-heading p, .section-navy .section-copy p { color: rgba(247,249,251,.72); }

.eyebrow, .mini-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--green-teal);
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .76rem;
  margin-bottom: 18px;
}
.eyebrow span {
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--orange);
  box-shadow: 0 0 14px rgba(255, 138, 61, .45);
}
.eyebrow.dark { color: var(--teal); }
.eyebrow.brand-case {
  text-transform: none;
  letter-spacing: .09em;
}
.mini-label { color: var(--teal); margin-bottom: 10px; }

.site-header {
  position: fixed;
  top: 16px;
  left: 0;
  right: 0;
  z-index: 999;
  transition: transform var(--speed) ease, top var(--speed) ease;
}
.site-header.scrolled .nav {
  background: rgba(247,249,251,.86);
  border-color: rgba(214,220,227,.8);
  box-shadow: 0 16px 60px rgba(6,26,51,.12);
  backdrop-filter: blur(18px);
}
.nav {
  width: min(1320px, calc(100vw - 48px));
  height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 20px 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(247,249,251,.13);
  background: rgba(6,26,51,.36);
  backdrop-filter: blur(16px);
  transition: background var(--speed) ease, box-shadow var(--speed) ease, border-color var(--speed) ease;
}
.pricing-page .site-header:not(.scrolled) .nav,
.insights-page .site-header:not(.scrolled) .nav {
  background: var(--navy);
}
.brand {
  display: inline-flex;
  align-items: center;
  min-width: 216px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--white);
  cursor: pointer;
}
.brand-logo-stack {
  position: relative;
  display: block;
  width: 214px;
  aspect-ratio: 1751 / 431;
}
.brand-logo-base,
.brand-logo-ring {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.logo-base-light { opacity: 0; }
.logo-base-dark { opacity: 1; }
.brand-logo-ring {
  transform: rotate(var(--logo-rotation));
  transform-origin: 24.6145% 34.8028%;
  transition: transform 90ms linear;
}
.site-header.scrolled .logo-base-dark { opacity: 0; }
.site-header.scrolled .logo-base-light { opacity: 1; }
.brand-wordmark {
  display: inline-grid;
  gap: 1px;
  line-height: 1;
}
.brand-main {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--white);
  font-family: "Arial Black", "Aptos Display", Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: 2.04rem;
  font-weight: 950;
  letter-spacing: -0.075em;
  text-transform: uppercase;
}
.brand-core-c,
.brand-rest { display: inline-flex; align-items: center; }
.brand-rest span { color: var(--teal); }
.brand-o {
  position: relative;
  display: inline-block;
  width: .86em;
  height: .86em;
  margin: 0 .01em 0 .03em;
  border-radius: 50%;
  background:
    conic-gradient(
      from -18deg,
      var(--teal) 0deg 62deg,
      transparent 62deg 77deg,
      var(--green-teal) 77deg 128deg,
      transparent 128deg 145deg,
      #AEB6C2 145deg 207deg,
      transparent 207deg 224deg,
      var(--orange) 224deg 280deg,
      transparent 280deg 298deg,
      var(--navy-2) 298deg 360deg
    );
  transform: rotate(var(--logo-rotation));
  transition: transform 90ms linear;
  vertical-align: -.08em;
}
.brand-o:after {
  content: "";
  position: absolute;
  inset: 27%;
  border-radius: 50%;
  background: #061A33;
  box-shadow: inset 0 0 0 1px rgba(247,249,251,.03);
}
.brand-by {
  justify-self: end;
  color: rgba(247,249,251,.9);
  font-size: .72rem;
  font-weight: 760;
  letter-spacing: -.035em;
}
.brand-by strong {
  color: var(--white);
  font-weight: 900;
  letter-spacing: -.045em;
}
.site-header.scrolled .brand-main,
.site-header.scrolled .brand-core-c,
.site-header.scrolled .brand-by strong { color: var(--navy); }
.site-header.scrolled .brand-by { color: rgba(6,26,51,.72); }
.site-header.scrolled .brand-o:after { background: #F7F9FB; }
.nav-menu { display: flex; align-items: center; gap: 3px; }
.nav-menu a {
  color: rgba(247,249,251,.82);
  font-size: .9rem;
  font-weight: 750;
  padding: 10px 10px;
  border-radius: 999px;
  transition: color var(--speed), background var(--speed), transform var(--speed);
}
.site-header.scrolled .nav-menu a { color: var(--navy); }
.nav-menu a:hover, .nav-menu a.active { background: rgba(127,199,176,.18); color: var(--green-teal); transform: translateY(-1px); }
.site-header.scrolled .nav-menu a:hover, .site-header.scrolled .nav-menu a.active { color: var(--teal); background: rgba(17,138,155,.09); }
.nav-cta, .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 12px 18px;
  border-radius: 999px;
  border: 0;
  font-weight: 850;
  letter-spacing: -0.01em;
  transition: transform var(--speed) ease, box-shadow var(--speed) ease, background var(--speed) ease, color var(--speed) ease, border-color var(--speed) ease;
}
.nav-cta {
  min-width: 148px;
  color: var(--white);
  background: rgba(247,249,251,.08);
  border: 1px solid rgba(127,199,176,.38);
  box-shadow: inset 0 1px 0 rgba(247,249,251,.12), 0 12px 28px rgba(6,26,51,.12);
}
.nav-cta:after {
  content: ">";
  color: var(--orange);
  font-weight: 950;
  transition: transform var(--speed);
}
.site-header.scrolled .nav-cta {
  color: var(--navy);
  background: rgba(255,255,255,.74);
  border-color: rgba(17,138,155,.24);
  box-shadow: 0 12px 28px rgba(6,26,51,.08);
}
.nav-cta:hover {
  color: var(--white);
  background: var(--navy);
  border-color: rgba(255,138,61,.44);
  box-shadow: 0 14px 32px rgba(6,26,51,.18);
}
.site-header.scrolled .nav-cta:hover {
  color: var(--white);
  background: var(--navy);
}
.nav-cta:hover:after { transform: translateX(3px); }
.nav-cta:hover, .button:hover { transform: translateY(-2px); }
.button-primary { color: var(--white); background: linear-gradient(135deg, var(--teal), #16A7B8); box-shadow: 0 16px 35px rgba(17,138,155,.25); }
.button-secondary { color: var(--navy); background: rgba(17,138,155,.08); border: 1px solid rgba(17,138,155,.20); }
.button-secondary:hover { color: var(--teal); background: rgba(17,138,155,.12); border-color: rgba(17,138,155,.34); }
.button-ghost { color: var(--white); background: rgba(247,249,251,.08); border: 1px solid rgba(247,249,251,.18); }
.button-note { color: var(--teal); font-size: .86em; font-weight: 780; }
.button-ghost:hover { background: rgba(247,249,251,.13); border-color: rgba(127,199,176,.44); }
.nav-toggle { display: none; width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgba(247,249,251,.10); position: relative; }
.nav-toggle span { display: block; width: 20px; height: 2px; background: var(--white); margin: 5px auto; border-radius: 3px; transition: transform var(--speed), opacity var(--speed); }
.site-header.scrolled .nav-toggle span { background: var(--navy); }
.nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.hero { min-height: 100svh; display: grid; align-items: center; padding: 148px 0 82px; overflow: hidden; isolation: isolate; }
.hero-photo-backdrop {
  position: absolute;
  inset: 0 0 -36px 0;
  z-index: 0;
  overflow: hidden;
  background: var(--navy);
}
.hero-photo-backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
  opacity: .12;
  filter: saturate(.8) contrast(1.02) blur(2px);
}
.hero-flower-stage {
  position: absolute;
  inset: 0 0 -36px auto;
  z-index: 1;
  width: min(58vw, 780px);
  overflow: hidden;
  pointer-events: none;
  mask-image:
    linear-gradient(90deg, transparent 0%, rgba(0,0,0,.72) 16%, #000 34%),
    linear-gradient(180deg, #000 0%, #000 82%, transparent 100%);
  mask-composite: intersect;
}
.hero-flower-stage:before {
  content: "";
  position: absolute;
  inset: -8% 0 -8% 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(6,26,51,.98) 0%, rgba(6,26,51,.96) 74%, rgba(6,26,51,0) 100%);
  transform: translate3d(0, 0, 0);
  animation: heroFlowerReveal 2800ms cubic-bezier(.18, .82, .22, 1) both;
  will-change: transform;
}
.hero-flower-stage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
  opacity: .86;
  filter: saturate(1.08) contrast(1.04);
  transform-origin: 42% 86%;
  animation: heroFlowerGrow 2800ms cubic-bezier(.18, .82, .22, 1) both;
  will-change: transform, opacity, filter;
}
.hero-flower-stage:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: radial-gradient(circle at 40% 37%, rgba(255,138,61,.22), transparent 16%);
  opacity: 0;
  animation: blossomGlow 3000ms 900ms ease-out both;
}
.hero:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(rgba(247,249,251,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(247,249,251,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6,26,51,.94) 0%, rgba(6,26,51,.80) 43%, rgba(6,26,51,.35) 66%, rgba(6,26,51,.04) 100%),
    linear-gradient(180deg, rgba(6,26,51,.32) 0%, rgba(6,26,51,.08) 44%, rgba(6,26,51,.16) 100%),
    radial-gradient(circle at 24% 46%, rgba(17,138,155,.18), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(255,138,61,.10), transparent 24%);
  background-size: 72px 72px, 72px 72px, 100% 100%, 100% 100%, 100% 100%, 100% 100%;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.9), rgba(0,0,0,.2));
}
.hero:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(circle at 24% 52%, rgba(6,26,51,.18), transparent 26%);
}
.ambient { position: absolute; z-index: 1; border-radius: 999px; filter: blur(28px); opacity: .65; pointer-events: none; }
.ambient-one { width: 220px; height: 220px; background: rgba(17,138,155,.16); right: 6%; top: 18%; animation: float 9s ease-in-out infinite; }
.ambient-two { width: 170px; height: 170px; background: rgba(255,138,61,.10); left: 7%; bottom: 18%; animation: float 12s ease-in-out infinite reverse; }
.hero-grid { position: relative; z-index: 3; display: grid; grid-template-columns: minmax(420px, .9fr) minmax(340px, .8fr); gap: clamp(28px, 4vw, 56px); align-items: center; }
.hero-copy { position: relative; z-index: 2; grid-column: 1; justify-self: start; width: min(640px, 100%); min-width: 0; }
.hero .hero-copy.reveal { opacity: 1; transform: none; animation: heroCopyIn 900ms 180ms ease-out both; }
.hero-copy h1 { margin: 0 0 24px; font-family: "Arial Black", "Aptos Display", Inter, ui-sans-serif, system-ui, sans-serif; font-size: clamp(4.25rem, 9.6vw, 9.6rem); line-height: .84; letter-spacing: -0.085em; color: var(--white); font-weight: 950; text-shadow: 0 18px 70px rgba(0,0,0,.28); }
.hero-lede { max-width: 640px; margin: 0 0 18px; color: var(--white); font-size: clamp(1.24rem, 2vw, 1.72rem); line-height: 1.25; font-weight: 760; letter-spacing: -0.035em; }
.hero-support { max-width: 640px; margin: 0 0 30px; color: rgba(247,249,251,.72); font-size: 1.04rem; }
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 30px; }
.hero-trust { display: flex; flex-wrap: wrap; gap: 10px; }
.hero-trust span { display: inline-flex; color: rgba(247,249,251,.78); border: 1px solid rgba(247,249,251,.12); background: rgba(247,249,251,.06); border-radius: 999px; padding: 8px 12px; font-size: .84rem; font-weight: 720; }
.hero-visual { position: relative; z-index: 1; min-width: 0; max-width: 100%; transform-style: preserve-3d; }
.hero-visual img { width: 100%; border-radius: var(--radius-lg); box-shadow: 0 38px 100px rgba(0,0,0,.32); }
.seedling-stage { perspective: 1100px; }
.seedling-animation { min-height: 520px; object-fit: cover; background: #061A33; border: 1px solid rgba(247,249,251,.12); }
.floating-proof {
  position: absolute;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 12px;
  max-width: 238px;
  padding: 13px 15px;
  border-radius: 20px;
  background: rgba(247,249,251,.92);
  color: var(--navy);
  border: 1px solid rgba(247,249,251,.45);
  box-shadow: 0 20px 50px rgba(6,26,51,.28);
  backdrop-filter: blur(12px);
  animation: float 8s ease-in-out infinite;
}
.floating-proof strong { color: var(--teal); font-size: 1.1rem; }
.floating-proof span { font-size: .84rem; line-height: 1.25; font-weight: 750; }
.floating-proof-one { left: -20px; bottom: 92px; }
.floating-proof-two { right: -10px; top: 94px; animation-delay: -3s; }

.intro-band { padding: 82px 0; background: linear-gradient(180deg, #F7F9FB 0%, var(--stone) 100%); }

/* Iteration 2: stronger story-led evolution band */
.intro-heading { max-width: none; margin-bottom: 30px; }
.intro-heading h2 { max-width: 740px; margin: 0 0 14px; color: var(--navy); font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.03; letter-spacing: -0.055em; }
.intro-heading p { margin: 0; max-width: none; color: var(--muted); font-size: 1.08rem; }
.intro-heading .audience-note {
  margin-top: 22px;
  max-width: none;
  width: 100%;
  padding: 18px 22px;
  border-left: 4px solid var(--orange);
  border-radius: 0 18px 18px 0;
  background: rgba(255,255,255,.62);
  color: var(--navy);
  font-weight: 760;
  box-shadow: 0 16px 34px rgba(6,26,51,.06);
}
.evolution-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.evolution-point { position: relative; display: flex; flex-direction: column; min-height: 252px; padding: 24px; border-radius: 20px; background: rgba(255,255,255,.84); border: 1px solid rgba(214,220,227,.84); box-shadow: 0 18px 42px rgba(6,26,51,.07); overflow: hidden; }
.evolution-point:before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, var(--teal), var(--green-teal), var(--orange)); opacity: .82; }
.evolution-point span { display:inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 24px; border-radius: 50%; background: rgba(17,138,155,.1); color: var(--teal); font-weight: 950; letter-spacing: .04em; }
.evolution-point h3 { margin: 0 0 12px; color: var(--navy); font-size: 1.2rem; line-height: 1.12; letter-spacing: -.035em; }
.evolution-point p { margin: 0; color: var(--muted); font-size: .94rem; line-height: 1.48; }

.intro-grid { display: grid; grid-template-columns: 1.25fr repeat(3, .75fr); gap: 18px; align-items: stretch; }
.intro-card, .intro-stat { padding: 26px; border-radius: 26px; background: rgba(247,249,251,.7); border: 1px solid rgba(255,255,255,.75); box-shadow: 0 14px 34px rgba(6,26,51,.06); }
.intro-card h2 { margin: 0; color: var(--navy); font-size: clamp(1.4rem, 2.5vw, 2.2rem); line-height: 1.05; letter-spacing: -0.04em; }
.intro-stat strong { display: block; margin-bottom: 8px; color: var(--navy); font-size: 2.5rem; line-height: 1; letter-spacing: -0.05em; }
.intro-stat span { color: var(--muted); font-size: .92rem; line-height: 1.35; }

.split-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(420px, 1fr); gap: 62px; }
.align-center { align-items: center; }
.section-copy h2 { max-width: 680px; }
.feature-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 32px; }
.feature-card {
  position: relative;
  padding: 22px;
  min-height: 238px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid rgba(214,220,227,.85);
  box-shadow: var(--soft-shadow);
  overflow: hidden;
  transition: transform var(--speed), box-shadow var(--speed), border-color var(--speed);
}
.feature-card:after {
  content: "";
  position: absolute;
  inset: auto -40px -50px auto;
  width: 118px;
  height: 118px;
  border-radius: 50%;
  background: rgba(127,199,176,.12);
}
.feature-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); border-color: rgba(17,138,155,.32); }
.feature-card h3 { margin: 18px 0 8px; color: var(--navy); font-size: 1.05rem; }
.feature-card p { margin: 0; color: var(--muted); font-size: .94rem; }
.feature-icon { width: 46px; height: 46px; border-radius: 15px; background: rgba(17,138,155,.11); position: relative; }
.feature-icon:before, .feature-icon:after { content: ""; position: absolute; }
.feature-icon.metadata:before { inset: 13px 10px; border-top: 3px solid var(--teal); border-bottom: 3px solid var(--teal); }
.feature-icon.metadata:after { inset: 21px 10px; border-top: 3px solid var(--teal); }
.feature-icon.shield:before { width: 20px; height: 24px; left: 13px; top: 10px; border: 3px solid var(--teal); border-radius: 8px 8px 12px 12px; transform: rotate(45deg); }
.feature-icon.admin:before { width: 24px; height: 16px; left: 11px; top: 14px; border: 3px solid var(--teal); border-radius: 7px; }
.feature-icon.admin:after { width: 18px; height: 3px; background: var(--teal); left: 14px; top: 31px; border-radius: 2px; }
.feature-icon.integration:before { width: 27px; height: 3px; left: 9px; top: 22px; background: var(--teal); border-radius: 999px; }
.feature-icon.integration:after { width: 28px; height: 20px; left: 9px; top: 13px; border-top: 3px solid var(--teal); border-bottom: 3px solid var(--teal); border-radius: 50%; }
.feature-icon.growth:before { width: 22px; height: 22px; left: 12px; top: 12px; border-left: 3px solid var(--teal); border-bottom: 3px solid var(--teal); transform: rotate(135deg); border-radius: 2px; }
.visual-card { position: relative; padding: 18px; border-radius: var(--radius-lg); background: linear-gradient(160deg, rgba(255,255,255,.85), rgba(232,223,210,.45)); box-shadow: var(--shadow); border: 1px solid rgba(214,220,227,.7); }
.visual-card img { border-radius: 30px; }
.platform-visual-card {
  min-height: 560px;
  overflow: hidden;
  background:
    linear-gradient(155deg, rgba(255,255,255,.92), rgba(232,223,210,.5)),
    radial-gradient(circle at 78% 18%, rgba(127,199,176,.24), transparent 34%);
}
.platform-live-visual {
  position: relative;
  min-height: 524px;
  border-radius: 30px;
  overflow: hidden;
  background:
    linear-gradient(rgba(6,26,51,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6,26,51,.045) 1px, transparent 1px),
    linear-gradient(145deg, #F7F9FB 0%, #FFFFFF 46%, rgba(232,223,210,.52) 100%);
  background-size: 42px 42px, 42px 42px, 100% 100%;
  border: 1px solid rgba(214,220,227,.78);
}
.platform-grid-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 50%, rgba(17,138,155,.16), transparent 32%),
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,.72) 46%, transparent 72%);
  animation: platformShimmer 8s ease-in-out infinite;
}
.brand-orbit {
  position: absolute;
  border-radius: 50%;
  background:
    conic-gradient(
      from -18deg,
      transparent 0deg 12deg,
      var(--teal) 12deg 62deg,
      transparent 62deg 82deg,
      var(--green-teal) 82deg 128deg,
      transparent 128deg 150deg,
      #AEB6C2 150deg 202deg,
      transparent 202deg 226deg,
      var(--orange) 226deg 276deg,
      transparent 276deg 302deg,
      var(--navy-2) 302deg 348deg,
      transparent 348deg 360deg
    );
  opacity: .18;
  filter: saturate(1.1);
}
.brand-orbit:after {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  background: rgba(247,249,251,.92);
}
.motif-large {
  width: 420px;
  height: 420px;
  left: 50%;
  top: 48%;
  translate: -50% -50%;
  animation: motifTurn 22s linear infinite;
}
.integration-lines {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(100%, 640px);
  height: min(100%, 594px);
  transform: translate(-50%, -50%);
  z-index: 1;
}
.integration-lines path {
  fill: none;
  stroke: rgba(17,138,155,.3);
  stroke-width: 3.2;
  stroke-linecap: round;
  stroke-dasharray: 10 10;
  animation: dataLine 7s linear infinite;
}
.integration-lines #flow-modules,
.integration-lines #flow-business {
  stroke: rgba(17,138,155,.54);
  stroke-width: 3.8;
}
.integration-lines #flow-core-ops,
.integration-lines #flow-custom-modules,
.integration-lines #flow-reporting {
  stroke: rgba(255,138,61,.44);
  stroke-width: 3.2;
}
.data-pulse {
  filter: drop-shadow(0 0 10px rgba(17,138,155,.45));
  transform-box: fill-box;
  transform-origin: center;
  stroke: rgba(255,255,255,.78);
  stroke-width: 1.5;
}
.pulse-teal { fill: var(--teal); }
.pulse-green { fill: var(--green-teal); }
.pulse-orange { fill: var(--orange); }
.flow-anchor {
  stroke: rgba(255,255,255,.82);
  stroke-width: 1.6;
  filter: drop-shadow(0 0 8px rgba(17,138,155,.28));
}
.anchor-input,
.anchor-core { fill: var(--teal); }
.anchor-output { fill: var(--orange); }
.core-node {
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 48%;
  width: 152px;
  height: 152px;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  align-content: center;
  justify-content: center;
  gap: 8px;
  border-radius: 50%;
  text-align: center;
  color: var(--white);
  background:
    radial-gradient(circle at 35% 28%, rgba(127,199,176,.2), transparent 30%),
    radial-gradient(circle at 70% 72%, rgba(255,138,61,.16), transparent 28%),
    radial-gradient(circle at 35% 28%, #123F68, var(--navy) 66%);
  box-shadow: 0 28px 80px rgba(6,26,51,.25), inset 0 1px 0 rgba(255,255,255,.12);
}
.core-node:before {
  content: "";
  position: absolute;
  inset: -32px;
  z-index: -1;
  border-radius: 50%;
  background:
    conic-gradient(
      from -18deg,
      transparent 0deg 12deg,
      var(--teal) 12deg 62deg,
      transparent 62deg 82deg,
      var(--green-teal) 82deg 128deg,
      transparent 128deg 150deg,
      #AEB6C2 150deg 202deg,
      transparent 202deg 226deg,
      var(--orange) 226deg 276deg,
      transparent 276deg 302deg,
      var(--navy-2) 302deg 348deg,
      transparent 348deg 360deg
    );
  opacity: .66;
  -webkit-mask: radial-gradient(circle, transparent 0 63%, #000 64% 75%, transparent 76%);
  mask: radial-gradient(circle, transparent 0 63%, #000 64% 75%, transparent 76%);
  animation: motifTurn 14s linear infinite;
}
.core-node:after {
  content: "";
  position: absolute;
  inset: -13px;
  z-index: -1;
  border-radius: 50%;
  border: 1px solid rgba(17,138,155,.22);
  animation: coreBreathe 4.8s ease-in-out infinite;
}
.core-node strong {
  position: relative;
  font-size: 1.22rem;
  letter-spacing: -.04em;
  line-height: 1;
  width: 100%;
  text-align: center;
}
.core-node small {
  position: relative;
  color: rgba(247,249,251,.68);
  max-width: 104px;
  font-size: .72rem;
  font-weight: 750;
  line-height: 1.15;
  text-align: center;
}
.core-output-nodes {
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 48%;
  width: 152px;
  height: 152px;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.core-output-nodes span {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--orange);
  border: 1.6px solid rgba(255,255,255,.82);
  box-shadow: 0 0 0 1px rgba(255,138,61,.08);
  filter: drop-shadow(0 0 8px rgba(17,138,155,.28));
}
.core-output-nodes span:nth-child(1) {
  left: calc(50% + 78px);
  top: calc(50% - 39px);
}
.core-output-nodes span:nth-child(2) {
  left: calc(50% + 86px);
  top: calc(50% - 5px);
}
.core-output-nodes span:nth-child(3) {
  left: calc(50% + 78px);
  top: calc(50% + 30px);
}
.input-node {
  position: absolute;
  z-index: 3;
  left: max(18px, calc(50% - 274px));
  width: 202px;
  height: 136px;
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 16px 14px;
  border-radius: 22px;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(127,199,176,.34);
  box-shadow: 0 18px 46px rgba(6,26,51,.08);
  backdrop-filter: blur(12px);
  animation: chipFloat 6.8s ease-in-out infinite;
}
.input-node strong {
  color: var(--navy);
  font-size: .84rem;
  line-height: 1.08;
  text-align: center;
}
.input-node small {
  color: var(--muted);
  font-size: .68rem;
  font-weight: 760;
  line-height: 1.14;
  text-align: center;
}
.business-growth-node { bottom: 92px; animation-delay: -2.4s; }
.module-finance { top: 70px; }
.module-motif {
  position: relative;
  display: block;
  width: 44px;
  height: 48px;
}
.module-motif:before,
.module-motif:after,
.module-motif i {
  content: "";
  position: absolute;
  width: 24px;
  height: 18px;
  border-radius: 7px;
  background: rgba(17,138,155,.14);
  border: 2px solid var(--teal);
  box-shadow: 0 10px 22px rgba(17,138,155,.12);
}
.module-motif:before {
  left: 3px;
  top: 6px;
}
.module-motif:after {
  right: 3px;
  top: 15px;
  border-color: var(--green-teal);
  background: rgba(127,199,176,.16);
}
.module-motif i {
  left: 10px;
  bottom: 2px;
  border-color: var(--orange);
  background: rgba(255,138,61,.14);
}
.plant-motif {
  position: relative;
  display: block;
  width: 44px;
  height: 48px;
}
.plant-motif:before {
  content: "";
  position: absolute;
  left: 21px;
  bottom: 4px;
  width: 3px;
  height: 28px;
  border-radius: 999px;
  background: var(--teal);
  transform-origin: bottom;
  animation: plantStem 4.8s ease-in-out infinite;
}
.plant-motif:after,
.plant-motif i {
  content: "";
  position: absolute;
  bottom: 15px;
  width: 17px;
  height: 11px;
  border-radius: 14px 14px 2px 14px;
  background: var(--green-teal);
  box-shadow: 0 8px 18px rgba(127,199,176,.24);
}
.plant-motif:after {
  left: 4px;
  transform: rotate(-28deg);
  animation: leafLeft 4.8s ease-in-out infinite;
}
.plant-motif i {
  right: 4px;
  bottom: 20px;
  transform: rotate(32deg);
  animation: leafRight 4.8s ease-in-out infinite;
}
.plant-motif em {
  position: absolute;
  left: 15px;
  top: 4px;
  width: 14px;
  height: 14px;
  border-radius: 50% 50% 48% 48%;
  background: var(--orange);
  box-shadow:
    0 -8px 0 -2px rgba(255,138,61,.92),
    7px -2px 0 -2px rgba(255,138,61,.86),
    -7px -2px 0 -2px rgba(255,138,61,.86),
    0 0 0 4px rgba(255,138,61,.14);
  transform-origin: 50% 100%;
  animation: flowerBloom 4.8s ease-in-out infinite;
}
.system-chip {
  position: absolute;
  z-index: 2;
  width: 228px;
  min-height: 70px;
  padding: 14px 16px 14px 44px;
  border-radius: 18px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(214,220,227,.9);
  box-shadow: 0 18px 42px rgba(6,26,51,.09);
  backdrop-filter: blur(10px);
  animation: chipFloat 6s ease-in-out infinite;
}
.system-chip span {
  position: absolute;
  left: 15px;
  top: 19px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--teal);
  box-shadow: 0 0 0 6px rgba(17,138,155,.1);
}
.system-chip strong {
  display: block;
  color: var(--navy);
  font-size: .92rem;
  line-height: 1.1;
}
.system-chip small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 720;
}
.module-workflow { right: max(18px, calc(50% - 318px)); top: 82px; animation-delay: -1.8s; }
.external-crm { right: max(18px, calc(50% - 318px)); top: 226px; animation-delay: -2.6s; }
.external-bi { right: max(18px, calc(50% - 318px)); top: 370px; animation-delay: -4.1s; }
.module-workflow span { background: var(--teal); box-shadow: 0 0 0 6px rgba(17,138,155,.12); }
.external-crm span { background: var(--green-teal); box-shadow: 0 0 0 6px rgba(127,199,176,.14); }
.external-bi span { background: var(--orange); box-shadow: 0 0 0 6px rgba(255,138,61,.14); }
.platform-status {
  position: absolute;
  z-index: 4;
  left: 50%;
  bottom: 18px;
  width: min(452px, calc(100% - 44px));
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  padding: 8px;
  border-radius: 18px;
  background: rgba(6,26,51,.9);
  box-shadow: 0 18px 48px rgba(6,26,51,.2);
}
.platform-status span {
  position: relative;
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border-radius: 12px;
  color: rgba(247,249,251,.88);
  background: rgba(247,249,251,.08);
  font-size: .72rem;
  font-weight: 850;
  text-align: center;
  line-height: 1.15;
}
.platform-status span:not(:last-child):after {
  content: "";
  position: absolute;
  right: -15px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--orange);
  border-right: 2px solid var(--orange);
  transform: translateY(-50%) rotate(45deg);
  filter: drop-shadow(0 0 6px rgba(255,138,61,.45));
}
.platform-mobile-story { display: none; }

@media (min-width: 1081px) {
  #platform .split-grid {
    grid-template-columns: 1fr;
    gap: 38px;
    align-items: start;
  }
  #platform .section-copy h2 { max-width: 980px; }
  #platform .section-copy > p { max-width: none; }
  #platform .feature-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }
  #platform .feature-card {
    min-height: 290px;
    padding: 20px;
  }
  #platform .feature-card h3 { font-size: 1rem; }
  #platform .feature-card p { font-size: .9rem; line-height: 1.48; }
  #platform .platform-visual-card {
    min-height: 620px;
    padding: 20px;
  }
  #platform .platform-live-visual { min-height: 580px; }
  #platform .motif-large {
    width: 560px;
    height: 560px;
    left: 50%;
    top: 48%;
  }
  #platform .core-node {
    top: 48%;
    width: 168px;
    height: 168px;
  }
  #platform .core-node strong { font-size: 1.34rem; }
  #platform .core-node small { font-size: .74rem; }
  #platform .module-finance {
    left: 64px;
    top: 84px;
  }
  #platform .business-growth-node {
    left: 64px;
    bottom: 126px;
  }
  #platform .module-workflow {
    right: 84px;
    top: 84px;
  }
  #platform .external-crm {
    right: 84px;
    top: 256px;
  }
  #platform .external-bi {
    right: 84px;
    top: 428px;
  }
  #platform .platform-status {
    bottom: 22px;
    width: min(520px, calc(100% - 80px));
  }
}

.journey-section { background: #fff; overflow: hidden; }
.journey-section:before { content: ""; position: absolute; inset: auto 0 0 0; height: 44%; background: linear-gradient(to bottom, transparent, rgba(232,223,210,.5)); pointer-events: none; }
.journey-builder { position: relative; border-radius: var(--radius-lg); background: var(--white); border: 1px solid rgba(214,220,227,.8); box-shadow: var(--shadow); padding: 24px; }
.journey-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 22px; }
.journey-tab {
  border: 1px solid rgba(214,220,227,.85);
  background: #fff;
  color: var(--navy);
  border-radius: 20px;
  padding: 17px 14px;
  font-weight: 850;
  text-align: left;
  transition: background var(--speed), color var(--speed), border-color var(--speed), transform var(--speed);
}
.journey-tab span { display: block; color: var(--teal); font-size: .78rem; margin-bottom: 4px; }
.journey-tab:hover { transform: translateY(-2px); border-color: rgba(17,138,155,.4); }
.journey-tab.active { background: var(--navy); color: var(--white); border-color: var(--navy); box-shadow: 0 20px 45px rgba(6,26,51,.16); }
.journey-tab.active span { color: var(--green-teal); }
.builder-grid { display: grid; grid-template-columns: minmax(0, .76fr) minmax(450px, 1fr); gap: 20px; }
.journey-panel, .module-preview { background: #fff; border: 1px solid rgba(214,220,227,.85); border-radius: 28px; padding: 30px; }
.journey-panel h3 { margin: 0 0 12px; color: var(--navy); font-size: clamp(1.9rem, 3vw, 3.1rem); line-height: 1; letter-spacing: -0.05em; }
.journey-panel p { margin: 0 0 18px; color: var(--muted); }
.journey-panel ul { margin: 0; padding-left: 18px; color: var(--navy); font-weight: 650; }
.journey-panel li { margin: 8px 0; }
.module-preview { background: linear-gradient(145deg, var(--navy), #0C3159); color: var(--white); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); overflow: hidden; }
.browser-bar { display: flex; align-items: center; gap: 8px; color: rgba(247,249,251,.74); margin-bottom: 22px; }
.browser-bar span { width: 11px; height: 11px; border-radius: 50%; background: rgba(247,249,251,.35); }
.browser-bar span:nth-child(1) { background: var(--orange); }
.browser-bar span:nth-child(2) { background: var(--green-teal); }
.browser-bar span:nth-child(3) { background: var(--teal); }
.browser-bar strong { margin-left: 12px; font-size: .9rem; }
.prompt-card { padding: 20px; border-radius: 22px; background: rgba(247,249,251,.09); border: 1px solid rgba(247,249,251,.12); min-height: 132px; }
.prompt-card span, .output-grid span { display: block; color: var(--green-teal); font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; margin-bottom: 8px; }
.prompt-card p { margin: 0; color: var(--white); font-weight: 650; }
.prompt-card p:after { content: ""; display: inline-block; width: 9px; height: 1.1em; background: var(--orange); margin-left: 4px; vertical-align: -2px; animation: blink 1s steps(2) infinite; }
.output-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 16px; }
.output-grid div { padding: 17px; border-radius: 18px; background: rgba(247,249,251,.07); border: 1px solid rgba(247,249,251,.12); }
.output-grid strong { color: var(--white); font-size: .95rem; }

.modules-section { background: var(--white); }
.modules-section .section-heading > p:not(.section-note) {
  max-width: none;
  margin-inline: auto;
}
.modules-section .section-note {
  max-width: 880px;
  margin-inline: auto;
}
.module-toggle {
  width: 100%;
  margin: 32px auto 0;
  text-align: left;
}
.module-toggle-tabs {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  max-width: 620px;
  margin: 0 auto -18px;
  padding: 8px;
  border-radius: 999px;
  background: rgba(247,249,251,.96);
  border: 1px solid rgba(214,220,227,.86);
  box-shadow: 0 16px 40px rgba(6,26,51,.08);
}
.module-toggle-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--navy);
  cursor: pointer;
  font-weight: 900;
  line-height: 1.1;
  transition: transform var(--speed), background var(--speed), color var(--speed), box-shadow var(--speed);
}
.module-toggle-tab span {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(17,138,155,.1);
  color: var(--teal);
  font-size: .78rem;
}
.module-toggle-tab:after {
  content: ">";
  color: var(--orange);
  font-weight: 900;
  opacity: .65;
}
.module-toggle-tab:hover {
  transform: translateY(-1px);
  background: rgba(17,138,155,.08);
}
.module-toggle-tab.active {
  background: var(--navy);
  color: var(--white);
  box-shadow: 0 14px 34px rgba(6,26,51,.16);
}
.module-toggle-tab.active span {
  background: rgba(127,199,176,.18);
  color: var(--green-teal);
}
.module-toggle-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(250px, .62fr) minmax(0, 1fr);
  gap: 30px;
  align-items: center;
  min-height: 318px;
  padding: 48px 34px 34px;
  border-radius: 34px;
  border: 1px solid rgba(214,220,227,.86);
  background: linear-gradient(145deg, #fff, rgba(232,223,210,.34));
  box-shadow: 0 18px 50px rgba(6,26,51,.08);
  overflow: hidden;
}
.module-toggle-panel:before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--teal), var(--green-teal), var(--orange));
}
.module-toggle-panel.switching .module-toggle-copy,
.module-toggle-panel.switching .module-toggle-groups {
  animation: modulePanelIn .34s ease both;
}
.module-toggle-copy h3 {
  margin: 14px 0 10px;
  color: var(--navy);
  font-size: clamp(1.9rem, 3vw, 2.75rem);
  line-height: 1.02;
  letter-spacing: -0.05em;
}
.module-toggle-copy p {
  margin: 0;
  color: var(--muted);
  font-size: 1rem;
}
.module-toggle-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.module-toggle-panel[data-view="future"] .module-toggle-groups {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.module-toggle-groups div {
  min-height: 130px;
  padding: 16px;
  border-radius: 20px;
  background: rgba(247,249,251,.82);
  border: 1px solid rgba(214,220,227,.72);
}
.module-toggle-groups strong {
  display: block;
  margin-bottom: 10px;
  color: var(--navy);
  font-size: .92rem;
}
.module-toggle-groups span,
.module-toggle-groups a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: 0 6px 7px 0;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(17,138,155,.08);
  color: var(--navy);
  border: 1px solid rgba(17,138,155,.14);
  font-size: .8rem;
  font-weight: 820;
  line-height: 1.12;
}
.module-toggle-panel[data-view="ready"] .module-toggle-groups span {
  width: 100%;
  margin-right: 0;
  justify-content: center;
  white-space: nowrap;
}
.module-toggle-panel[data-view="future"] .module-toggle-groups span,
.module-toggle-panel[data-view="future"] .module-toggle-groups a {
  background: rgba(255,138,61,.1);
  border-color: rgba(255,138,61,.23);
}
.module-toggle-groups a:hover {
  color: var(--teal);
  border-color: rgba(17,138,155,.28);
  transform: translateY(-1px);
}
.module-toggle-groups em {
  margin-left: 4px;
  color: var(--muted);
  font-style: normal;
  font-weight: 780;
}
.module-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 34px; }
.module-card {
  text-align: left;
  border: 1px solid rgba(214,220,227,.9);
  background: #fff;
  border-radius: 28px;
  padding: 24px;
  min-height: 214px;
  box-shadow: 0 16px 44px rgba(6,26,51,.07);
  transition: transform var(--speed), background var(--speed), border-color var(--speed), color var(--speed), box-shadow var(--speed);
}
.module-card span { color: var(--teal); font-weight: 900; }
.module-card h3 { color: var(--navy); margin: 36px 0 8px; font-size: 1.22rem; line-height: 1.1; }
.module-card p { margin: 0; color: var(--muted); font-size: .94rem; }
.module-card:hover { transform: translateY(-5px); border-color: rgba(17,138,155,.38); }
.module-card.active { background: var(--navy); border-color: var(--navy); box-shadow: 0 24px 60px rgba(6,26,51,.18); }
.module-card.active h3, .module-card.active p { color: var(--white); }
.module-card.active span { color: var(--green-teal); }
.module-detail { margin-top: 22px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .6fr); gap: 28px; align-items: center; border-radius: var(--radius-lg); padding: 34px; background: linear-gradient(145deg, #fff, rgba(232,223,210,.45)); border: 1px solid rgba(214,220,227,.85); box-shadow: var(--soft-shadow); }
.module-detail h3 { margin: 0 0 12px; color: var(--navy); font-size: clamp(1.6rem, 3vw, 2.6rem); line-height: 1.08; letter-spacing: -0.045em; }
.module-detail p { margin: 0; color: var(--muted); }
.module-detail-list { display: flex; gap: 10px; flex-wrap: wrap; }
.module-detail-list span { display: inline-flex; padding: 10px 12px; border-radius: 999px; color: var(--navy); background: rgba(17,138,155,.08); font-weight: 800; font-size: .86rem; }

.why-section { background: linear-gradient(180deg, #fff 0%, var(--stone) 100%); }
.quote-card { padding: 38px; border-radius: var(--radius-lg); background: var(--navy); color: var(--white); box-shadow: var(--shadow); position: relative; overflow: hidden; }
.quote-card:after { content: ""; position: absolute; right: -54px; top: -54px; width: 190px; height: 190px; border-radius: 50%; background: rgba(17,138,155,.22); }
.quote-card img { width: 132px; height: auto; margin-bottom: 28px; }
.quote-card blockquote { margin: 0; font-size: clamp(1.45rem, 2.8vw, 2.28rem); line-height: 1.13; letter-spacing: -0.05em; font-weight: 820; }
.proof-list { display: grid; gap: 14px; margin-top: 32px; }
.proof-list div { padding: 18px 20px; border-radius: 20px; background: rgba(255,255,255,.72); border: 1px solid rgba(214,220,227,.7); }
.proof-list strong { display: block; color: var(--navy); }
.proof-list span { color: var(--muted); }


.who-section { background: linear-gradient(180deg, var(--stone) 0%, var(--navy) 100%); color: var(--white); overflow: hidden; }
.who-card { display: grid; grid-template-columns: minmax(0,.86fr) minmax(420px, 1fr); gap: 52px; align-items: center; padding: 10px 0; }
.who-copy { max-width: 620px; }
.who-section .eyebrow { color: var(--navy); }
.who-copy h2 { margin: 0 0 20px; color: var(--white); font-size: clamp(2.1rem, 4vw, 4.2rem); line-height: 1.02; letter-spacing: -.06em; }
.who-copy p { margin: 0 0 16px; color: rgba(247,249,251,.76); font-size: 1.03rem; }
.who-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.founder-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.founder-grid article { padding: 22px; border-radius: 24px; background: rgba(247,249,251,.08); border: 1px solid rgba(247,249,251,.12); box-shadow: 0 18px 48px rgba(0,0,0,.12); }
.founder-grid span {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--white);
  background: rgba(6,26,51,.82);
  border: 1px solid rgba(247,249,251,.14);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.founder-grid h3 { margin: 0 0 8px; color: var(--white); font-size: 1.28rem; line-height: 1.1; letter-spacing: -.035em; }
.founder-grid p { margin: 0; color: rgba(247,249,251,.68); font-size: .94rem; line-height: 1.48; }

.governance-section {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, var(--white) 0%, #fff 48%, rgba(232,223,210,.36) 100%);
}
.governance-section:before {
  content: "";
  position: absolute;
  right: max(24px, calc((100vw - var(--shell)) / 2));
  top: 64px;
  width: 170px;
  height: 170px;
  opacity: .14;
  background: url("../img/favicon.svg") center / contain no-repeat;
}
.governance-grid { display: block; }
.governance-section .section-copy { max-width: none; }
.governance-section .section-copy > p { max-width: none; }
.timeline {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.timeline div {
  position: relative;
  min-height: 190px;
  padding: 28px;
  border-radius: 24px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(214,220,227,.82);
  box-shadow: var(--soft-shadow);
}
.timeline div:not(:last-child):before { display: none; }
.timeline span {
  display: block;
  width: 30px;
  height: 30px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: var(--white);
  border: 7px solid var(--teal);
  box-shadow: 0 0 0 7px rgba(17,138,155,.08);
}
.timeline div:nth-child(2) span { border-color: var(--green-teal); }
.timeline div:nth-child(3) span { border-color: var(--orange); }
.timeline strong { display: block; color: var(--navy); font-size: 1.08rem; }
.timeline p { margin: 8px 0 0; color: var(--muted); font-size: .95rem; }
.dashboard-card { position: relative; border-radius: var(--radius-lg); padding: 16px; background: var(--white); border: 1px solid rgba(214,220,227,.85); box-shadow: var(--shadow); }
.dashboard-card > img { border-radius: 30px; }
.dashboard-logo-stack {
  position: absolute;
  z-index: 2;
  left: 9%;
  top: 11.5%;
  width: min(150px, 20.5%);
}

.faq-section { background: linear-gradient(180deg, var(--white) 0%, #fff 100%); }
.narrow { max-width: 900px; }
.faq-actions { display: flex; justify-content: center; margin-top: 24px; }
.accordion { border-radius: var(--radius-lg); overflow: hidden; background: #fff; box-shadow: var(--soft-shadow); border: 1px solid rgba(214,220,227,.85); }
.accordion-trigger {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  border: 0;
  background: #fff;
  color: var(--navy);
  padding: 24px 28px;
  text-align: left;
  font-weight: 850;
  border-bottom: 1px solid rgba(214,220,227,.65);
}
.accordion-trigger span:last-child { color: var(--teal); font-size: 1.3rem; line-height: 1; transition: transform var(--speed); }
.accordion-trigger[aria-expanded="true"] span:last-child { transform: rotate(45deg); color: var(--orange); }
.accordion-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--speed) ease; }
.accordion-panel > p { overflow: hidden; margin: 0; color: var(--muted); padding: 0 28px; }
.accordion-trigger[aria-expanded="true"] + .accordion-panel { grid-template-rows: 1fr; }
.accordion-trigger[aria-expanded="true"] + .accordion-panel > p { padding-bottom: 24px; }

.insights-page { min-height: 100vh; background: linear-gradient(180deg, var(--white) 0%, #fff 52%, var(--stone) 100%); }
.case-library-hero {
  min-height: 84vh;
  display: grid;
  align-items: center;
  padding-top: 132px;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 22%, rgba(17,138,155,.17), transparent 28%),
    radial-gradient(circle at 12% 78%, rgba(255,138,61,.10), transparent 24%),
    linear-gradient(180deg, var(--white) 0%, #fff 62%, rgba(232,223,210,.42) 100%);
}
.case-library-hero:before {
  content: "";
  position: absolute;
  right: -8vw;
  top: 16vh;
  width: min(560px, 48vw);
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    conic-gradient(
      from -18deg,
      transparent 0deg 12deg,
      var(--teal) 12deg 62deg,
      transparent 62deg 82deg,
      var(--green-teal) 82deg 128deg,
      transparent 128deg 150deg,
      #AEB6C2 150deg 202deg,
      transparent 202deg 226deg,
      var(--orange) 226deg 276deg,
      transparent 276deg 302deg,
      var(--navy-2) 302deg 348deg,
      transparent 348deg 360deg
    );
  opacity: .10;
  -webkit-mask: radial-gradient(circle, transparent 0 62%, #000 63% 74%, transparent 75%);
  mask: radial-gradient(circle, transparent 0 62%, #000 63% 74%, transparent 75%);
}
.case-library-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: center;
}
.case-library-copy {
  max-width: 920px;
}
.case-library-copy h1 {
  max-width: 860px;
  margin: 0 0 22px;
  color: var(--navy);
  font-size: clamp(3rem, 6.6vw, 6.5rem);
  line-height: .92;
  letter-spacing: -.07em;
}
.case-library-copy p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  line-height: 1.42;
}
.case-library-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}
.case-library-section {
  background: #fff;
}
.case-library-heading {
  max-width: 900px;
  margin-bottom: 30px;
}
.case-library-heading h2 {
  margin: 0 0 14px;
  color: var(--navy);
  font-size: clamp(2.1rem, 4.2vw, 4rem);
  line-height: 1;
  letter-spacing: -.06em;
}
.case-library-heading p {
  margin: 0;
  color: var(--muted);
  font-size: 1.06rem;
}
.case-filter-panel {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 10px;
  border-radius: 22px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(214,220,227,.72);
  box-shadow: 0 18px 46px rgba(6,26,51,.07);
}
.case-filter-panel-single {
  max-width: 410px;
  grid-template-columns: 1fr;
  padding: 0;
  border: 0;
  border-radius: 20px;
  background: transparent;
  box-shadow: none;
}
.case-filter-panel label {
  position: relative;
  display: grid;
  gap: 0;
  min-height: 64px;
  padding: 7px 20px;
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(17,138,155,.11), rgba(127,199,176,.07)),
    #fff;
  border: 2px solid rgba(17,138,155,.22);
  box-shadow: 0 14px 34px rgba(6,26,51,.08);
}
.case-filter-panel span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--teal);
  font-size: .74rem;
  font-weight: 920;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.case-filter-panel span:before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 5px rgba(242,107,56,.12);
}
.case-filter-panel select {
  appearance: none;
  -webkit-appearance: none;
  min-height: 48px;
  width: 100%;
  padding: 10px 44px 10px 0;
  border: 0;
  border-radius: 0;
  color: var(--navy);
  background: transparent;
  font-size: 1.02rem;
  font-weight: 880;
}
.case-filter-panel select:focus {
  outline: none;
}
.case-filter-panel .case-native-select {
  position: absolute;
  inset: auto 14px 14px;
  width: auto;
  opacity: 0;
  pointer-events: none;
}
.case-select {
  position: relative;
}
.case-select-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 48px;
  width: 100%;
  padding: 10px 44px 10px 0;
  border: 0;
  color: var(--navy);
  background: transparent;
  font-size: 1.08rem;
  font-weight: 880;
  text-align: left;
}
.case-select-button:after {
  content: "";
  position: absolute;
  right: 2px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--orange);
  border-bottom: 2px solid var(--orange);
  transform: translateY(-65%) rotate(45deg);
  transition: transform var(--speed), border-color var(--speed);
}
.case-select.is-open .case-select-button:after {
  transform: translateY(-35%) rotate(225deg);
  border-color: var(--teal);
}
.case-filter-panel .case-select-value {
  display: block;
  overflow: hidden;
  color: var(--navy);
  text-overflow: ellipsis;
  font-size: 1.08rem;
  font-weight: 880;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
}
.case-filter-panel .case-select-value:before { display: none; }
.case-select-list {
  position: absolute;
  z-index: 20;
  top: calc(100% + 10px);
  left: -14px;
  right: -14px;
  display: grid;
  gap: 6px;
  padding: 10px;
  border-radius: 18px;
  background: rgba(255,255,255,.98);
  border: 1px solid rgba(17,138,155,.18);
  box-shadow: 0 22px 50px rgba(6,26,51,.16);
  opacity: 0;
  transform: translateY(-6px);
  pointer-events: none;
  transition: opacity var(--speed), transform var(--speed);
}
.case-select.is-open .case-select-list {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.case-select-option {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: var(--navy);
  background: transparent;
  font-size: .92rem;
  font-weight: 780;
  text-align: left;
}
.case-select-option:hover,
.case-select-option:focus {
  outline: none;
  color: var(--teal);
  background: rgba(17,138,155,.08);
  border-color: rgba(17,138,155,.14);
}
.case-select-option.is-selected {
  color: var(--navy);
  background: linear-gradient(135deg, rgba(17,138,155,.12), rgba(242,107,56,.09));
  border-color: rgba(242,107,56,.22);
}
.case-filter-panel label:after {
  display: none;
}
.case-filter-panel label:focus-within {
  border-color: rgba(17,138,155,.5);
  box-shadow: 0 0 0 4px rgba(17,138,155,.12);
}
.case-library-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 22px 0;
}
.case-library-meta span {
  color: var(--muted);
  font-weight: 780;
}
.case-library-controls {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.case-library-controls span {
  color: var(--navy);
  font-size: .9rem;
  font-weight: 840;
}
.case-reset-button,
.case-nav-button {
  min-height: 40px;
  padding: 9px 14px;
  border-radius: 999px;
  border: 1px solid rgba(17,138,155,.22);
  color: var(--navy);
  background: rgba(17,138,155,.08);
  font-weight: 820;
}
.case-nav-button {
  min-width: 76px;
  color: var(--white);
  background: var(--navy);
  border-color: var(--navy);
}
.case-nav-button:disabled {
  cursor: default;
  color: rgba(6,26,51,.38);
  background: rgba(247,249,251,.9);
  border-color: rgba(214,220,227,.75);
}
.case-reset-button:hover,
.case-nav-button:not(:disabled):hover {
  color: var(--teal);
  background: rgba(17,138,155,.12);
}
.case-nav-button:not(:disabled):hover {
  color: var(--white);
  background: var(--teal);
  border-color: var(--teal);
}
.case-study-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}
.case-study-card {
  display: grid;
  gap: 16px;
  align-content: start;
  min-height: 100%;
  padding: 24px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(214,220,227,.82);
  box-shadow: var(--soft-shadow);
}
@supports (grid-template-rows: subgrid) {
  @media (min-width: 1081px) {
    .case-study-card {
      grid-row: span 7;
      grid-template-rows: subgrid;
    }
  }
}
.case-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.case-card-top span {
  display: inline-flex;
  padding: 8px 10px;
  border-radius: 999px;
  color: var(--teal);
  background: rgba(17,138,155,.08);
  font-size: .78rem;
  font-weight: 900;
}
.case-card-top strong {
  max-width: 52%;
  color: var(--muted);
  font-size: .8rem;
  text-align: right;
  line-height: 1.25;
}
.case-study-card h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.35rem, 2.2vw, 1.9rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}
.case-study-card > p {
  margin: 0;
  color: var(--muted);
  line-height: 1.48;
}
.case-core {
  padding: 14px 16px;
  border-left: 3px solid var(--teal);
  border-radius: 14px;
  color: var(--navy) !important;
  background: rgba(17,138,155,.06);
}
.case-core strong {
  color: var(--teal);
}
.case-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.case-tags span {
  display: inline-flex;
  padding: 8px 10px;
  border-radius: 999px;
  color: var(--navy);
  background: rgba(247,249,251,.9);
  border: 1px solid rgba(214,220,227,.7);
  font-size: .8rem;
  font-weight: 780;
}
.case-outcome {
  margin-top: 0 !important;
  padding: 14px 16px;
  border-radius: 16px;
  color: var(--navy) !important;
  background: rgba(247,249,251,.84);
  border: 1px solid rgba(214,220,227,.68);
  font-size: .92rem;
  line-height: 1.42;
}
.case-outcome strong {
  color: var(--teal);
}
.case-outcome span {
  display: block;
  margin-top: 8px;
  color: var(--muted);
}
.case-outcome span strong {
  color: var(--orange);
}
.case-details {
  border-top: 1px solid rgba(214,220,227,.68);
  padding-top: 2px;
}
.case-details summary {
  cursor: pointer;
  list-style: none;
  width: fit-content;
  color: var(--teal);
  font-size: .84rem;
  font-weight: 900;
}
.case-details summary::-webkit-details-marker {
  display: none;
}
.case-details summary:after {
  content: "+";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 8px;
  border-radius: 50%;
  color: var(--white);
  background: var(--teal);
  font-size: .78rem;
  line-height: 1;
}
.case-details[open] summary:after {
  content: "-";
  background: var(--orange);
}
.case-details-grid {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.case-details-grid div {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(247,249,251,.9);
  border: 1px solid rgba(214,220,227,.66);
}
.case-details-grid strong {
  display: block;
  margin-bottom: 5px;
  color: var(--navy);
  font-size: .78rem;
}
.case-details-grid p {
  margin: 0;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.42;
}
.case-study-card.is-hidden {
  display: none;
}
.case-empty-state {
  margin-top: 18px;
  padding: 28px;
  border-radius: 26px;
  background: rgba(247,249,251,.86);
  border: 1px solid rgba(214,220,227,.78);
  text-align: center;
}
.case-empty-state strong {
  display: block;
  color: var(--navy);
  font-size: 1.2rem;
}
.case-empty-state p {
  max-width: 560px;
  margin: 8px auto 0;
  color: var(--muted);
}
.case-template-section {
  padding-top: 0;
  background: linear-gradient(180deg, #fff 0%, var(--stone) 100%);
}
.case-template-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding: 38px;
  border-radius: 34px;
  color: var(--white);
  background:
    radial-gradient(circle at 88% 22%, rgba(17,138,155,.34), transparent 28%),
    linear-gradient(145deg, var(--navy), #0C3159);
  box-shadow: var(--shadow);
}
.case-template-card h2 {
  margin: 0 0 12px;
  color: var(--white);
  font-size: clamp(2rem, 4vw, 3.65rem);
  line-height: 1.02;
  letter-spacing: -.055em;
}
.case-template-card p {
  margin: 0;
  max-width: 820px;
  color: rgba(247,249,251,.72);
}
.pricing-preview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 30px 0 24px;
  text-align: left;
}
.pricing-preview div {
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(214,220,227,.8);
  box-shadow: 0 16px 40px rgba(6,26,51,.07);
}
.pricing-preview strong {
  display: block;
  margin-bottom: 8px;
  color: var(--navy);
}
.pricing-preview span {
  display: block;
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.45;
}
.pricing-note {
  margin-bottom: 24px !important;
  color: var(--navy) !important;
  font-weight: 820;
}
.pricing-next {
  max-width: 650px;
  margin: 0 auto 24px;
  padding: 18px 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(214,220,227,.8);
  box-shadow: 0 16px 40px rgba(6,26,51,.06);
}
.pricing-next strong {
  display: block;
  margin-bottom: 6px;
  color: var(--navy);
}
.pricing-next p {
  margin: 0;
  color: var(--muted);
  font-size: .98rem;
  line-height: 1.48;
}

.pricing-page {
  min-height: 100vh;
  background: linear-gradient(180deg, var(--white) 0%, #fff 46%, rgba(232,223,210,.76) 100%);
}
.pricing-hero {
  min-height: 84vh;
  display: grid;
  align-items: center;
  padding-top: 132px;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 24%, rgba(127,199,176,.24), transparent 28%),
    radial-gradient(circle at 14% 78%, rgba(255,138,61,.10), transparent 24%),
    linear-gradient(180deg, var(--white) 0%, #fff 62%, rgba(232,223,210,.48) 100%);
}
.pricing-hero:before {
  content: "";
  position: absolute;
  right: -220px;
  top: 132px;
  width: 560px;
  height: 560px;
  border-radius: 50%;
  background:
    conic-gradient(
      from -18deg,
      transparent 0deg 12deg,
      var(--teal) 12deg 62deg,
      transparent 62deg 82deg,
      var(--green-teal) 82deg 128deg,
      transparent 128deg 150deg,
      #AEB6C2 150deg 202deg,
      transparent 202deg 226deg,
      var(--orange) 226deg 276deg,
      transparent 276deg 302deg,
      var(--navy-2) 302deg 348deg,
      transparent 348deg 360deg
    );
  opacity: .10;
  -webkit-mask: radial-gradient(circle, transparent 0 62%, #000 63% 74%, transparent 75%);
  mask: radial-gradient(circle, transparent 0 62%, #000 63% 74%, transparent 75%);
}
.pricing-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(360px, .46fr);
  gap: 54px;
  align-items: center;
}
.pricing-hero-copy h1 {
  max-width: 820px;
  margin: 0 0 22px;
  color: var(--navy);
  font-size: clamp(3rem, 6.6vw, 6.5rem);
  line-height: .92;
  letter-spacing: -.07em;
}
.pricing-hero-copy p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  line-height: 1.42;
}
.pricing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}
.pricing-summary-card {
  position: relative;
  min-height: 315px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px;
  border-radius: 34px;
  background: var(--navy);
  color: var(--white);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.pricing-summary-card:before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, var(--teal), var(--green-teal), var(--orange));
}
.pricing-summary-card:after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -90px;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  background: rgba(17,138,155,.20);
}
.pricing-summary-card span {
  position: relative;
  z-index: 1;
  color: var(--green-teal);
  font-size: .88rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pricing-summary-card strong {
  position: relative;
  z-index: 1;
  margin-top: 18px;
  color: var(--white);
  font-size: clamp(2.25rem, 4.2vw, 3.25rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.03em;
}
.pricing-summary-card p {
  position: relative;
  z-index: 1;
  margin: 14px 0 18px;
  color: rgba(247,249,251,.88);
  font-size: 1rem;
  font-weight: 820;
}
.pricing-summary-card small {
  position: relative;
  z-index: 1;
  color: rgba(247,249,251,.68);
  font-size: .94rem;
  line-height: 1.45;
}
.pricing-main-section {
  background: #fff;
}
.pricing-section-heading {
  max-width: 900px;
  margin-bottom: 34px;
}
.pricing-section-heading h2,
.consultancy-card h2 {
  margin: 0 0 14px;
  color: var(--navy);
  font-size: clamp(2.1rem, 4.2vw, 4rem);
  line-height: 1;
  letter-spacing: -.06em;
}
.pricing-section-heading p,
.consultancy-card p {
  margin: 0;
  color: var(--muted);
  font-size: 1.06rem;
}
.pricing-section-note {
  margin-top: 14px !important;
  color: var(--navy) !important;
  font-size: .96rem !important;
  font-weight: 760;
}
.pricing-section-note a {
  color: var(--teal);
  border-bottom: 1px solid rgba(17,138,155,.30);
}
.pricing-section-note a:hover {
  color: var(--orange);
  border-color: rgba(255,138,61,.46);
}
.pricing-plan-grid {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(420px, .78fr);
  gap: 24px;
  align-items: stretch;
}
.pricing-plan-card,
.included-card,
.consultancy-card,
.separate-costs-card {
  position: relative;
  border: 1px solid rgba(214,220,227,.85);
  background: rgba(255,255,255,.9);
  box-shadow: var(--soft-shadow);
  overflow: hidden;
}
.pricing-plan-card,
.included-card {
  border-radius: 30px;
  padding: 30px;
}
.primary-plan {
  background:
    linear-gradient(145deg, #fff 0%, rgba(232,223,210,.34) 100%);
}
.primary-plan:before,
.included-card:before,
.consultancy-card:before,
.separate-costs-card:before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--teal), var(--green-teal), var(--orange));
}
.pricing-plan-top span,
.included-card > span,
.generator-price-stack article span {
  display: inline-flex;
  margin-bottom: 12px;
  color: var(--teal);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.pricing-plan-top h3,
.included-card h3 {
  margin: 0 0 12px;
  color: var(--navy);
  font-size: clamp(1.55rem, 2.7vw, 2.45rem);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.pricing-plan-top p,
.included-card p {
  margin: 0;
  color: var(--muted);
}
.price-lockup {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  margin: 26px 0 12px;
}
.price-lockup strong {
  color: var(--navy);
  font-size: clamp(2.2rem, 3.9vw, 3.35rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.03em;
}
.price-lockup span {
  color: var(--muted);
  font-weight: 850;
  line-height: 1.1;
  padding-bottom: 5px;
}
.price-caption {
  margin: 0 0 24px;
  color: var(--navy);
  font-weight: 400;
}
.pricing-check-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.pricing-check-list li {
  position: relative;
  padding: 12px 14px 12px 42px;
  border-radius: 16px;
  background: rgba(247,249,251,.82);
  border: 1px solid rgba(214,220,227,.68);
  color: var(--navy);
  font-weight: 760;
}
.pricing-check-list li:before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  width: 12px;
  height: 7px;
  border-left: 3px solid var(--teal);
  border-bottom: 3px solid var(--teal);
  transform: translateY(-65%) rotate(-45deg);
}
.included-card {
  background:
    radial-gradient(circle at 92% 10%, rgba(127,199,176,.18), transparent 26%),
    linear-gradient(145deg, #fff, rgba(247,249,251,.86));
}
.included-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 24px;
}
.included-grid div {
  min-height: 106px;
  padding: 16px;
  border-radius: 18px;
  background: rgba(247,249,251,.82);
  border: 1px solid rgba(214,220,227,.68);
}
.included-grid div:last-child {
  grid-column: 1 / -1;
}
.included-grid strong {
  display: block;
  color: var(--navy);
  line-height: 1.1;
}
.included-grid small {
  display: block;
  margin-top: 7px;
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.35;
}
.module-generator-section {
  background: linear-gradient(180deg, #fff 0%, rgba(232,223,210,.55) 100%);
}
.module-generator-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(360px, .48fr);
  gap: 44px;
  align-items: center;
}
.generator-benefits {
  display: grid;
  gap: 14px;
  margin-top: 30px;
}
.generator-benefits div {
  padding: 18px 20px;
  border-radius: 20px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(214,220,227,.75);
  box-shadow: 0 14px 34px rgba(6,26,51,.06);
}
.generator-benefits strong,
.generator-benefits span {
  display: block;
}
.generator-benefits strong {
  color: var(--navy);
}
.generator-benefits span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .94rem;
}
.generator-fit-note {
  margin-top: 20px !important;
  padding: 18px 20px;
  border-radius: 20px;
  color: var(--navy) !important;
  background: rgba(247,249,251,.88);
  border: 1px solid rgba(214,220,227,.78);
  font-size: .96rem !important;
  line-height: 1.48;
}
.generator-fit-note strong {
  color: var(--teal);
}
.pricing-story-link {
  display: inline-flex;
  align-items: center;
  margin-top: 22px;
  color: var(--teal);
  font-weight: 800;
  text-decoration: none;
}
.pricing-story-link:after {
  content: "";
  width: 9px;
  height: 9px;
  margin-left: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}
.pricing-story-link:hover {
  color: var(--orange);
}
.generator-price-stack {
  display: grid;
  gap: 14px;
}
.generator-price-stack article {
  position: relative;
  min-height: 138px;
  padding: 26px;
  border-radius: 28px;
  color: var(--white);
  background: var(--navy);
  box-shadow: 0 22px 58px rgba(6,26,51,.18);
  overflow: hidden;
}
.generator-price-stack article:nth-child(2) {
  background: linear-gradient(145deg, var(--navy-2), var(--teal));
}
.generator-price-stack article:after {
  content: "";
  position: absolute;
  right: -54px;
  bottom: -74px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(247,249,251,.09);
}
.generator-price-stack article span {
  color: var(--green-teal);
}
.generator-price-stack article strong {
  position: relative;
  z-index: 1;
  display: block;
  color: var(--white);
  font-size: clamp(1.65rem, 2.8vw, 2.25rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.025em;
}
.generator-price-stack article p {
  position: relative;
  z-index: 1;
  margin: 10px 0 0;
  color: rgba(247,249,251,.76);
  font-weight: 820;
}
.generator-price-stack > small {
  color: var(--muted);
  font-weight: 760;
  line-height: 1.4;
}
.pricing-notes-section {
  background: #fff;
}
.pricing-notes-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(360px, .58fr);
  gap: 24px;
  align-items: stretch;
}
.consultancy-card,
.separate-costs-card {
  border-radius: 30px;
  padding: 30px;
}
.consultancy-card {
  background: #fff;
  border: 1px solid rgba(214,220,227,.78);
  box-shadow: 0 18px 46px rgba(6,26,51,.07);
}
.consultancy-card .button {
  margin-top: 26px;
}
.consultancy-list {
  display: grid;
  gap: 12px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.consultancy-list li {
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(247,249,251,.9);
  border: 1px solid rgba(214,220,227,.76);
}
.consultancy-list strong,
.consultancy-list span {
  display: block;
}
.consultancy-list strong {
  color: var(--navy);
}
.consultancy-list span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.38;
}
.consultancy-note {
  margin-top: 20px;
  color: var(--muted);
  font-size: .94rem;
}
.separate-costs-card {
  align-self: start;
  background: rgba(247,249,251,.74);
  color: var(--navy);
  border: 1px solid rgba(214,220,227,.76);
}
.separate-costs-card h3 {
  margin: 0 0 12px;
  color: var(--navy);
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: 0;
}
.separate-costs-card p {
  margin: 0 0 16px;
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.5;
}
.separate-costs-card ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.separate-costs-card li {
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
}
.separate-costs-card strong,
.separate-costs-card span {
  display: block;
}
.separate-costs-card strong {
  color: var(--navy);
  font-size: .88rem;
}
.separate-costs-card span {
  margin-top: 2px;
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.35;
}
.pricing-cta-section {
  padding-top: 0;
  background: linear-gradient(180deg, #fff 0%, var(--stone) 100%);
}
.pricing-calculator-section {
  background: linear-gradient(180deg, #fff 0%, rgba(247,249,251,.86) 100%);
}
.pricing-calculator-grid {
  display: grid;
  grid-template-columns: minmax(0, .76fr) minmax(440px, .64fr);
  gap: 36px;
  align-items: start;
}
.pricing-calculator-card {
  display: grid;
  gap: 22px;
  padding: 30px;
  border-radius: 30px;
  background: #fff;
  border: 1px solid rgba(214,220,227,.82);
  box-shadow: var(--soft-shadow);
}
.calculator-field {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}
.calculator-field label,
.calculator-field legend {
  color: var(--navy);
  font-weight: 880;
}
.calculator-field input[type="number"] {
  width: 100%;
  min-height: 54px;
  padding: 13px 16px;
  border-radius: 16px;
  border: 1px solid rgba(214,220,227,.9);
  color: var(--navy);
  background: rgba(247,249,251,.88);
  font-weight: 840;
}
.calculator-field input[type="number"]:focus {
  outline: 3px solid rgba(17,138,155,.18);
  border-color: rgba(17,138,155,.48);
}
.calculator-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.calculator-options label {
  position: relative;
  min-height: 54px;
}
.calculator-options input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.calculator-options span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 54px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(214,220,227,.86);
  color: var(--navy);
  background: rgba(247,249,251,.86);
  font-size: .9rem;
  font-weight: 820;
  text-align: center;
  transition: background var(--speed), border-color var(--speed), color var(--speed), box-shadow var(--speed);
}
.calculator-options input:checked + span {
  color: var(--white);
  background: var(--navy);
  border-color: var(--navy);
  box-shadow: 0 14px 30px rgba(6,26,51,.14);
}
.calculator-results {
  display: grid;
  gap: 12px;
  padding-top: 6px;
}
.calculator-results div {
  padding: 17px 18px;
  border-radius: 18px;
  background: rgba(247,249,251,.9);
  border: 1px solid rgba(214,220,227,.72);
}
.calculator-results span,
.calculator-results strong,
.calculator-results small {
  display: block;
}
.calculator-results span {
  color: var(--teal);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.calculator-results strong {
  margin-top: 8px;
  color: var(--navy);
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: 0;
}
.calculator-results small {
  margin-top: 5px;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.38;
}
.calculator-total {
  color: var(--white);
  background: var(--navy) !important;
  border-color: var(--navy) !important;
}
.calculator-total span {
  color: var(--green-teal);
}
.calculator-total strong {
  color: var(--white);
  font-size: clamp(1.32rem, 2.1vw, 1.72rem);
}
.calculator-total small {
  color: rgba(247,249,251,.68);
}
.pricing-faq-section {
  background: #fff;
}
.pricing-faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.pricing-faq-grid article {
  padding: 24px;
  border-radius: 24px;
  background: rgba(247,249,251,.88);
  border: 1px solid rgba(214,220,227,.78);
}
.pricing-faq-grid h3 {
  margin: 0 0 10px;
  color: var(--navy);
  font-size: 1.12rem;
  line-height: 1.14;
  letter-spacing: -.03em;
}
.pricing-faq-grid p {
  margin: 0;
  color: var(--muted);
  line-height: 1.48;
}
.pricing-faq-grid a {
  color: var(--teal);
  font-weight: 820;
  border-bottom: 1px solid rgba(17,138,155,.28);
}
.pricing-faq-grid a:hover {
  color: var(--orange);
  border-color: rgba(255,138,61,.46);
}
.pricing-cta-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding: 38px;
  border-radius: 34px;
  color: var(--white);
  background:
    radial-gradient(circle at 88% 22%, rgba(17,138,155,.34), transparent 28%),
    linear-gradient(145deg, var(--navy), #0C3159);
  box-shadow: var(--shadow);
}
.pricing-cta-card h2 {
  margin: 0 0 12px;
  color: var(--white);
  font-size: clamp(2rem, 4vw, 3.65rem);
  line-height: 1.02;
  letter-spacing: -.055em;
}
.pricing-cta-card p {
  margin: 0;
  max-width: 780px;
  color: rgba(247,249,251,.72);
}

.contact-section { background: var(--navy); color: var(--white); overflow: hidden; }
.contact-section:before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 88% 26%, rgba(17,138,155,.28), transparent 28%), radial-gradient(circle at 16% 78%, rgba(255,138,61,.11), transparent 26%); }
.contact-card { position: relative; display: grid; grid-template-columns: minmax(0, .9fr) minmax(430px, .7fr); gap: 44px; align-items: start; padding: 46px; border-radius: 42px; background: rgba(247,249,251,.07); border: 1px solid rgba(247,249,251,.12); box-shadow: 0 24px 80px rgba(0,0,0,.22); backdrop-filter: blur(10px); }
.contact-card h2 { color: var(--white); }
.contact-card p { color: rgba(247,249,251,.72); }
.next-steps {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: 22px;
  background: rgba(247,249,251,.08);
  border: 1px solid rgba(247,249,251,.12);
}
.next-steps strong {
  display: block;
  margin-bottom: 6px;
  color: var(--green-teal);
}
.next-steps p {
  margin: 0;
  font-size: .98rem;
  line-height: 1.48;
}
.contact-direct { margin-top: 18px !important; font-weight: 780; }
.contact-direct a { color: var(--green-teal); border-bottom: 1px solid rgba(127,199,176,.5); }
.contact-direct a:hover { color: var(--white); border-color: var(--orange); }
.demo-form { display: grid; gap: 14px; }
.demo-form label { display: grid; gap: 7px; color: rgba(247,249,251,.82); font-weight: 750; font-size: .9rem; }
.demo-form input, .demo-form textarea { width: 100%; border: 1px solid rgba(247,249,251,.16); border-radius: 17px; background: rgba(247,249,251,.09); color: var(--white); padding: 14px 16px; outline: 0; transition: border-color var(--speed), background var(--speed), box-shadow var(--speed); }
.demo-form input::placeholder, .demo-form textarea::placeholder { color: rgba(247,249,251,.42); }
.demo-form input:focus, .demo-form textarea:focus { border-color: var(--green-teal); background: rgba(247,249,251,.12); box-shadow: 0 0 0 4px rgba(127,199,176,.13); }
.demo-form .form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.demo-form button:disabled { cursor: wait; opacity: .72; }
.form-status { min-height: 24px; font-weight: 750; color: var(--green-teal) !important; }
.form-status.error { color: #FFD0B0 !important; }

.site-footer { background: #031020; color: rgba(247,249,251,.72); padding: 58px 0 42px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr .7fr .7fr .8fr; gap: 40px; }
.footer-grid img { width: 190px; height: auto; margin-bottom: 16px; }
.footer-brand {
  min-width: 0;
  margin-bottom: 16px;
}
.footer-brand .brand-logo-stack { width: 190px; }
.footer-grid strong { display: block; color: var(--white); margin-bottom: 14px; }
.footer-grid a { display: block; margin: 8px 0; color: rgba(247,249,251,.72); }
.footer-grid a:hover { color: var(--green-teal); }
.footer-grid p { margin: 0; max-width: 320px; }
.footer-bottom {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 24px;
  margin-top: 42px;
  padding-top: 22px;
  border-top: 1px solid rgba(247,249,251,.12);
  color: rgba(247,249,251,.55);
  font-size: .9rem;
}
.footer-bottom p { margin: 0; }
.footer-bottom a { color: var(--green-teal); font-weight: 820; }
.social-links {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.social-link {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(247,249,251,.16);
  border-radius: 50%;
  color: rgba(247,249,251,.7);
  background: rgba(247,249,251,.06);
}
.social-link svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 1.8;
}
.social-link:first-child svg,
.social-link:last-child svg { stroke: none; }
.social-link:nth-child(2) svg { fill: none; }

.back-to-top { position: fixed; right: 22px; bottom: 22px; width: 48px; height: 48px; border-radius: 50%; border: 0; color: var(--white); background: var(--teal); box-shadow: 0 18px 45px rgba(6,26,51,.18); opacity: 0; pointer-events: none; transform: translateY(10px); transition: opacity var(--speed), transform var(--speed); z-index: 900; }
.back-to-top.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity 700ms ease, transform 700ms ease; }
.reveal.in { opacity: 1; transform: translateY(0); }

@keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-15px); } }
@keyframes blink { 0%, 46% { opacity: 1; } 47%, 100% { opacity: 0; } }
@keyframes heroFlowerReveal {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(0, -112%, 0); }
}
@keyframes heroFlowerGrow {
  0% { opacity: .34; filter: saturate(.78) contrast(.96) blur(.8px); transform: translate3d(0, 34px, 0) scale(.982); }
  58% { opacity: .76; filter: saturate(1) contrast(1.01) blur(.18px); }
  100% { opacity: .86; filter: saturate(1.08) contrast(1.04) blur(0); transform: translate3d(0, 0, 0) scale(1); }
}
@keyframes blossomGlow {
  0% { opacity: 0; transform: scale(.92); }
  42% { opacity: .72; }
  100% { opacity: .18; transform: scale(1.06); }
}
@keyframes heroCopyIn {
  0% { opacity: 0; transform: translateY(16px); }
  100% { opacity: 1; transform: translateY(0); }
}
@keyframes motifTurn { to { transform: rotate(360deg); } }
@keyframes platformShimmer {
  0%, 100% { opacity: .7; transform: translateX(-2%); }
  50% { opacity: 1; transform: translateX(2%); }
}
@keyframes dataLine { to { stroke-dashoffset: -38; } }
@keyframes coreBreathe {
  0%, 100% { opacity: .48; transform: scale(.96); }
  50% { opacity: 1; transform: scale(1.04); }
}
@keyframes chipFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes modulePanelIn {
  0% { opacity: .2; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0); }
}
@keyframes plantStem {
  0%, 100% { transform: scaleY(.9); }
  50% { transform: scaleY(1); }
}
@keyframes leafLeft {
  0%, 100% { transform: rotate(-22deg) scale(.92); }
  50% { transform: rotate(-34deg) scale(1); }
}
@keyframes leafRight {
  0%, 100% { transform: rotate(26deg) scale(.92); }
  50% { transform: rotate(38deg) scale(1); }
}
@keyframes flowerBloom {
  0%, 100% { transform: scale(.88); filter: saturate(.92); }
  50% { transform: scale(1.08); filter: saturate(1.12); }
}

@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: 0.001ms !important; }
  .reveal { opacity: 1; transform: none; }
  .hero-photo-backdrop img { opacity: .12; transform: none; }
  .hero-flower-stage:before { display: none; }
  .hero-flower-stage img { clip-path: none; opacity: .86; transform: none; }
  .data-pulse { display: none; }
}

@media (max-width: 1180px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { grid-column: 1; width: min(560px, 62vw); margin-left: 0; justify-self: auto; }
  .hero-copy h1 { font-size: clamp(3.8rem, 8.2vw, 7rem); }
  .hero-visual { width: min(720px, 100%); margin-inline: auto; }
}

@media (max-width: 1080px) {
  .nav { height: 70px; }
  .nav-toggle { display: block; }
  .nav-menu {
    position: absolute;
    top: calc(100% + 12px);
    right: 24px;
    left: 24px;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    padding: 14px;
    border-radius: 28px;
    background: rgba(247,249,251,.96);
    box-shadow: var(--shadow);
    border: 1px solid rgba(214,220,227,.85);
    transform: translateY(-8px);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--speed), transform var(--speed);
  }
  .nav-menu.open { transform: translateY(0); opacity: 1; pointer-events: auto; }
  .nav-menu a { color: var(--navy); padding: 13px 16px; }
  .nav-cta { display: none; }
  .hero-grid, .split-grid, .governance-grid, .contact-card { grid-template-columns: 1fr; }
  .hero { padding-top: 126px; }
  .hero-visual { max-width: 720px; margin-inline: auto; }
  .intro-grid { grid-template-columns: repeat(2, 1fr); }
  .evolution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .who-card { grid-template-columns: 1fr; }
  .builder-grid { grid-template-columns: 1fr; }
  .module-toggle-panel { grid-template-columns: 1fr; }
  .module-grid { grid-template-columns: repeat(2, 1fr); }
  .timeline { grid-template-columns: 1fr; }
  .timeline div { min-height: 0; }
  .platform-visual-card { min-height: 520px; }
  .platform-live-visual { min-height: 484px; }
  .pricing-hero-grid,
  .pricing-plan-grid,
  .case-library-hero-grid,
  .case-filter-panel,
  .case-study-grid,
  .module-generator-grid,
  .pricing-calculator-grid,
  .pricing-notes-grid,
  .case-template-card,
  .pricing-cta-card {
    grid-template-columns: 1fr;
  }
  .pricing-summary-card { min-height: 0; }
  .pricing-cta-card,
  .case-template-card { align-items: flex-start; }
}

@media (max-width: 720px) {
  :root { --shell: min(100vw - 30px, 1180px); }
  .section { padding: 76px 0; }
  .hero { padding: 112px 0 68px; }
  .hero-photo-backdrop img { opacity: .08; }
  .hero-flower-stage { width: 76vw; opacity: .58; }
  .hero:before {
    background:
      linear-gradient(rgba(247,249,251,.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(247,249,251,.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(6,26,51,.86) 0%, rgba(6,26,51,.68) 58%, rgba(6,26,51,.20) 100%),
      linear-gradient(180deg, rgba(6,26,51,.42) 0%, rgba(6,26,51,.58) 44%, rgba(6,26,51,.88) 100%);
    background-size: 72px 72px, 72px 72px, 100% 100%, 100% 100%;
  }
  .hero-copy { width: 100%; max-width: 100%; margin-left: 0; }
  .hero-copy h1 {
    max-width: 100%;
    font-size: clamp(3.05rem, 15.4vw, 4.55rem);
    line-height: .88;
    letter-spacing: -0.065em;
  }
  .hero-grid { gap: 36px; grid-template-columns: 1fr; }
  .floating-proof { position: static; margin-top: 12px; max-width: none; animation: none; }
  .hero-visual { display: grid; }
  .intro-grid, .evolution-grid, .feature-list, .journey-tabs, .module-grid, .module-detail, .output-grid, .pricing-preview, .footer-grid, .included-grid { grid-template-columns: 1fr; }
  .pricing-hero {
    min-height: 0;
    padding: 108px 0 58px;
  }
  .case-library-hero {
    min-height: 0;
    padding: 108px 0 58px;
  }
  .pricing-hero-copy h1 {
    font-size: clamp(2.7rem, 13vw, 4.2rem);
  }
  .case-library-copy h1 {
    font-size: clamp(2.7rem, 13vw, 4.2rem);
  }
  .pricing-summary-card,
  .pricing-plan-card,
  .included-card,
  .consultancy-card,
  .separate-costs-card,
  .pricing-calculator-card,
  .case-study-card,
  .case-template-card,
  .pricing-cta-card {
    border-radius: 24px;
    padding: 22px;
  }
  .calculator-options,
  .pricing-faq-grid {
    grid-template-columns: 1fr;
  }
  .case-library-meta {
    align-items: flex-start;
    flex-direction: column;
  }
  .case-card-top {
    align-items: flex-start;
    flex-direction: column;
  }
  .case-card-top strong {
    max-width: none;
    text-align: left;
  }
  .included-grid div:last-child { grid-column: auto; }
  .price-lockup {
    align-items: flex-start;
    flex-direction: column;
  }
  .pricing-nav-links { display: none; }
  .journey-builder, .contact-card { padding: 18px; border-radius: 30px; }
  .journey-tabs { gap: 8px; }
  .journey-tab { padding: 14px; }
  .module-preview, .journey-panel { padding: 22px; }
  .module-toggle-tabs { grid-template-columns: 1fr; border-radius: 24px; }
  .module-toggle-tab { justify-content: space-between; padding: 0 16px; }
  .module-toggle-panel { grid-template-columns: 1fr; min-height: 0; padding: 42px 22px 22px; border-radius: 26px; }
  .module-toggle-groups,
  .module-toggle-panel[data-view="future"] .module-toggle-groups { grid-template-columns: 1fr; }
  .module-toggle-groups div { min-height: 0; }
  .footer-grid { gap: 26px; }
  .brand { min-width: 166px; }
  .brand-logo-stack { width: 176px; }
  .seedling-animation { min-height: 390px; }
  .who-card { padding: 24px; border-radius: 34px; }
  .nav { padding: 0 12px 0 10px; }
  .platform-visual-card { min-height: 0; padding: 12px; border-radius: 30px; }
  .platform-live-visual {
    min-height: 480px;
    display: block;
    border-radius: 24px;
    padding: 0;
  }
  .motif-large {
    display: none;
  }
  .integration-lines {
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .integration-lines path { stroke-width: 4.6; }
  .integration-lines #flow-modules,
  .integration-lines #flow-business { stroke-width: 5.2; }
  .integration-lines #flow-core-ops,
  .integration-lines #flow-custom-modules,
  .integration-lines #flow-reporting { stroke-width: 4.6; }
  .core-node {
    left: 50%;
    top: 50%;
    width: clamp(74px, 23vw, 92px);
    height: clamp(74px, 23vw, 92px);
    margin: 0;
    transform: translate(-50%, -50%);
  }
  .core-node:before { inset: -18px; }
  .core-node:after { inset: -8px; }
  .core-node strong { font-size: clamp(.78rem, 3.4vw, .94rem); }
  .core-node small {
    max-width: 68px;
    font-size: clamp(.48rem, 1.9vw, .56rem);
  }
  .core-output-nodes {
    display: block;
    left: 50%;
    top: 50%;
    width: clamp(74px, 23vw, 92px);
    height: clamp(74px, 23vw, 92px);
    transform: translate(-50%, -50%);
  }
  .core-output-nodes span {
    width: 6px;
    height: 6px;
    border-width: 1px;
  }
  .core-output-nodes span:nth-child(1) {
    left: calc(93.75% - 3px);
    top: calc(20.85% - 3px);
  }
  .core-output-nodes span:nth-child(2) {
    left: calc(103.34% - 3px);
    top: calc(43.38% - 3px);
  }
  .core-output-nodes span:nth-child(3) {
    left: calc(100% - 3px);
    top: calc(65.91% - 3px);
  }
  .input-node {
    left: 0;
    width: clamp(90px, 28vw, 104px);
    height: 104px;
    align-content: center;
    padding: 34px 7px 8px;
    gap: 3px;
    border-radius: 16px;
  }
  .input-node > span {
    position: absolute;
    left: 50%;
    top: 5px;
    display: block;
    margin-left: -22px;
    transform: scale(.48);
    transform-origin: top center;
  }
  .input-node strong {
    font-size: clamp(.58rem, 2.45vw, .66rem);
    line-height: 1.08;
  }
  .input-node small {
    font-size: clamp(.5rem, 2.05vw, .56rem);
    line-height: 1.12;
  }
  .input-node:after { display: none; }
  .module-finance { top: 112px; }
  .business-growth-node { top: 238px; bottom: auto; }
  .system-chip {
    right: 0;
    width: clamp(93px, 29vw, 106px);
    min-height: 78px;
    padding: 11px 7px 10px 28px;
    border-radius: 14px;
  }
  .system-chip:before { display: none; }
  .system-chip span {
    left: 10px;
    top: 50%;
    width: 9px;
    height: 9px;
    transform: translateY(-50%);
    box-shadow: 0 0 0 4px rgba(17,138,155,.1);
  }
  .system-chip strong {
    font-size: clamp(.57rem, 2.35vw, .64rem);
    line-height: 1.08;
  }
  .system-chip small {
    margin-top: 2px;
    font-size: clamp(.49rem, 2vw, .55rem);
    line-height: 1.12;
  }
  .module-workflow { top: 111px; }
  .external-crm { top: 201px; }
  .external-bi { top: 294px; bottom: auto; }
  .platform-status {
    display: grid;
    bottom: 8px;
    width: calc(100% - 12px);
    gap: 8px;
    padding: 6px;
    border-radius: 14px;
  }
  .platform-status span {
    min-height: 32px;
    padding: 4px 3px;
    border-radius: 9px;
    font-size: clamp(.48rem, 2vw, .58rem);
    line-height: 1.08;
  }
  .platform-status span:not(:last-child):after {
    right: -7px;
    width: 6px;
    height: 6px;
    border-width: 1.5px;
  }
  .platform-mobile-story {
    display: none;
  }
  .platform-mobile-story:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -35px;
    width: 3px;
    height: 22px;
    border-radius: 999px;
    background: linear-gradient(var(--teal), var(--orange));
    transform: translateX(-50%);
    box-shadow: 0 0 12px rgba(17,138,155,.28);
  }
  .platform-mobile-story div {
    position: relative;
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 4px 14px;
    align-items: center;
    padding: 16px;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(214,220,227,.86);
    box-shadow: 0 16px 34px rgba(6,26,51,.08);
  }
  .platform-mobile-story div:not(:last-child):after {
    content: "";
    position: absolute;
    left: 34px;
    bottom: -13px;
    width: 9px;
    height: 9px;
    border-right: 2px solid var(--orange);
    border-bottom: 2px solid var(--orange);
    transform: rotate(45deg);
  }
  .platform-mobile-story span {
    grid-row: span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(17,138,155,.1);
    color: var(--teal);
    font-weight: 950;
  }
  .platform-mobile-story strong {
    color: var(--navy);
    font-size: .95rem;
    line-height: 1.12;
  }
  .platform-mobile-story small {
    color: var(--muted);
    font-weight: 720;
    line-height: 1.35;
  }
}

@media (min-width: 721px) and (max-width: 960px) and (max-height: 540px) and (orientation: landscape) {
  .platform-visual-card {
    min-height: 0;
    padding: 12px;
  }
  .platform-live-visual { min-height: 484px; }
  .core-output-nodes span {
    width: 9px;
    height: 9px;
    border-width: 1.6px;
  }
  .core-output-nodes span:nth-child(1) {
    left: calc(96.38% - 4.5px);
    top: calc(29.5% - 4.5px);
  }
  .core-output-nodes span:nth-child(2) {
    left: calc(101.27% - 4.5px);
    top: calc(50.25% - 4.5px);
  }
  .core-output-nodes span:nth-child(3) {
    left: calc(96.38% - 4.5px);
    top: calc(71% - 4.5px);
  }
  .input-node {
    left: 13px;
    width: 128px;
    height: 100px;
    align-content: center;
    padding: 34px 9px 8px;
    gap: 3px;
    border-radius: 18px;
  }
  .input-node > span {
    position: absolute;
    left: 50%;
    top: 5px;
    margin-left: -22px;
    transform: scale(.55);
    transform-origin: top center;
  }
  .input-node strong {
    font-size: .68rem;
    line-height: 1.08;
  }
  .input-node small {
    font-size: .58rem;
    line-height: 1.12;
  }
  .module-finance { top: 73px; }
  .business-growth-node { top: 270px; bottom: auto; }
  .system-chip {
    left: calc(50% + 208px);
    right: auto;
    width: 150px;
    min-height: 68px;
    padding: 10px 8px 9px 34px;
    border-radius: 15px;
  }
  .system-chip span {
    left: 12px;
    top: 50%;
    width: 10px;
    height: 10px;
    transform: translateY(-50%);
    box-shadow: 0 0 0 4px rgba(17,138,155,.1);
  }
  .system-chip strong {
    font-size: .7rem;
    line-height: 1.08;
  }
  .system-chip small {
    margin-top: 2px;
    font-size: .58rem;
    line-height: 1.12;
  }
  .module-workflow { top: 69px; }
  .external-crm { top: 209px; }
  .external-bi { top: 353px; bottom: auto; }
}

/* Long-form use case reports */
.case-study-grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 42px;
}
.case-study-report {
  display: block;
  grid-row: auto;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(214,220,227,.92);
  box-shadow: 0 28px 80px rgba(6,26,51,.11);
}
.case-report-header {
  padding: clamp(28px, 5vw, 58px);
  color: #fff;
  background:
    radial-gradient(circle at 92% 10%, rgba(127,199,176,.24), transparent 34%),
    linear-gradient(135deg, #061a33 0%, #103d64 68%, #0b6371 100%);
}
.case-report-header .case-card-top { margin-bottom: 26px; }
.case-report-header .case-card-top span {
  color: #fff;
  background: rgba(255,255,255,.13);
  border-color: rgba(255,255,255,.24);
}
.case-report-header .case-card-top strong { color: rgba(255,255,255,.78); }
.case-study-report .case-report-header h3 {
  max-width: 980px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(2.15rem, 4.5vw, 4.35rem);
  line-height: .98;
  letter-spacing: -.055em;
}
.case-report-header > p {
  max-width: 860px;
  margin: 0;
  color: rgba(255,255,255,.78);
  font-size: clamp(1.05rem, 1.5vw, 1.24rem);
  line-height: 1.55;
}
.case-report-section {
  padding: clamp(28px, 4.5vw, 54px);
  border-top: 1px solid rgba(214,220,227,.72);
}
.case-report-section:nth-of-type(even) { background: rgba(247,249,251,.64); }
.case-report-section h4 {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0 0 22px;
  color: var(--navy);
  font-size: clamp(1.45rem, 2.5vw, 2.25rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}
.case-report-section h4 > span {
  display: inline-grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #fff;
  background: var(--teal);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .05em;
}
.case-report-section > p {
  max-width: 1020px;
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 1.04rem;
  line-height: 1.66;
}
.case-report-section > p:last-child { margin-bottom: 0; }
.case-report-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.case-report-list li {
  position: relative;
  padding: 13px 14px 13px 34px;
  border-radius: 14px;
  color: #33475b;
  background: #fff;
  border: 1px solid rgba(214,220,227,.78);
  line-height: 1.45;
}
.case-report-list li:before {
  content: "";
  position: absolute;
  left: 15px;
  top: 20px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 4px rgba(242,107,56,.12);
}
.case-solution-section {
  background: linear-gradient(135deg, rgba(17,138,155,.08), rgba(127,199,176,.09)) !important;
}
.case-result-section {
  background: linear-gradient(135deg, #f2f8f8, #f8fbfc) !important;
}
.case-result-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}
.case-result-grid div {
  display: grid;
  gap: 7px;
  min-height: 132px;
  padding: 22px;
  border-radius: 20px;
  color: #fff;
  background: linear-gradient(145deg, #103d64, #0d707d);
  box-shadow: 0 16px 34px rgba(6,26,51,.13);
}
.case-result-grid strong { font-size: 1.08rem; }
.case-result-grid span { color: rgba(255,255,255,.78); line-height: 1.45; }

/* Native architecture diagrams: fast, responsive and independent of external libraries. */
.architecture-diagram {
  display: grid;
  grid-template-columns: minmax(155px, 1fr) minmax(86px, .48fr) minmax(245px, 1.55fr) minmax(86px, .48fr) minmax(155px, 1fr);
  gap: 18px;
  align-items: center;
  margin-top: 26px;
  padding: clamp(22px, 3.5vw, 38px);
  overflow: hidden;
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 50% 0%, rgba(17,138,155,.32), transparent 35%),
    linear-gradient(145deg, #041529, #092d4d 58%, #073f4c);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 24px 54px rgba(6,26,51,.16);
}
.architecture-column {
  display: grid;
  gap: 11px;
  align-content: center;
}
.architecture-column-title {
  margin-bottom: 3px;
  color: #8ed8d0;
  font-size: .75rem;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-align: center;
}
.architecture-node {
  display: grid;
  place-items: center;
  min-height: 58px;
  padding: 12px 14px;
  border-radius: 14px;
  color: #17344f;
  background: linear-gradient(180deg, #fff, #eef4f7);
  border: 2px solid rgba(127,199,176,.5);
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.25;
  text-align: center;
}
.architecture-hub {
  display: grid;
  place-items: center;
  gap: 12px;
  min-height: 260px;
  padding: 28px;
  border-radius: 24px;
  text-align: center;
}
.architecture-hub > span,
.architecture-core-kicker {
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.architecture-manual {
  color: #5b3507;
  background: linear-gradient(145deg, #fff7e8, #ffdba4);
  border: 4px solid #f0a13a;
  box-shadow: 0 20px 46px rgba(0,0,0,.2);
}
.architecture-manual > span { color: #a25b08; }
.architecture-manual strong {
  width: 100%;
  padding: 11px;
  border-radius: 11px;
  background: rgba(255,255,255,.68);
  border: 1px solid rgba(162,91,8,.18);
}
.architecture-core {
  display: grid;
  place-items: center;
  gap: 15px;
  min-height: 340px;
  padding: 32px 26px;
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 80% 5%, rgba(127,199,176,.45), transparent 30%),
    linear-gradient(145deg, #0f8a9b, #0b526d 52%, #061a33);
  border: 6px solid #7fc7b0;
  box-shadow: 0 0 0 7px rgba(127,199,176,.12), 0 24px 58px rgba(0,0,0,.3);
  text-align: center;
}
.architecture-core-kicker { color: #c7f1e7; }
.architecture-core > strong {
  font-size: clamp(2.4rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -.055em;
}
.architecture-core-features {
  display: grid;
  width: 100%;
  gap: 8px;
}
.architecture-core-features span {
  padding: 9px 12px;
  border-radius: 10px;
  background: rgba(255,255,255,.11);
  border: 1px solid rgba(255,255,255,.17);
  font-size: .82rem;
  font-weight: 780;
}
.architecture-core-future {
  background:
    radial-gradient(circle at 80% 5%, rgba(242,107,56,.34), transparent 30%),
    linear-gradient(145deg, #0f8a9b, #173f67 58%, #061a33);
  border-color: #f3a264;
  box-shadow: 0 0 0 7px rgba(242,107,56,.11), 0 24px 58px rgba(0,0,0,.3);
}
.architecture-arrow {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 76px;
  min-height: 100px;
}
.architecture-arrow:before {
  content: "";
  position: absolute;
  left: 0;
  right: 13px;
  top: 50%;
  height: 7px;
  margin-top: -3px;
  border-radius: 99px;
  background: #f28a3d;
  box-shadow: 0 0 16px rgba(242,138,61,.5);
}
.architecture-arrow:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -12px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 17px solid #f28a3d;
  filter: drop-shadow(0 0 7px rgba(242,138,61,.38));
}
.architecture-arrow span {
  position: absolute;
  left: 50%;
  top: calc(50% + 16px);
  z-index: 1;
  width: max-content;
  max-width: 112px;
  transform: translateX(-50%);
  padding: 5px 8px;
  border-radius: 8px;
  color: #d9eef2;
  background: #092d4d;
  font-size: .68rem;
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
}
.architecture-arrow-two-way span:before {
  content: "↔";
  display: inline-block;
  margin-right: 4px;
  color: #f3a264;
  font-size: 1.05rem;
}
.architecture-caption {
  max-width: 880px !important;
  margin: 18px auto 0 !important;
  color: #536a7e !important;
  font-size: .94rem !important;
  font-weight: 680;
  text-align: center;
}

@media (max-width: 980px) {
  .case-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .architecture-diagram {
    grid-template-columns: minmax(135px, 1fr) 70px minmax(220px, 1.35fr) 70px minmax(135px, 1fr);
    gap: 10px;
    padding: 22px 16px;
  }
  .architecture-node { padding: 10px 8px; font-size: .78rem; }
  .architecture-arrow span { font-size: .6rem; }
}

@media (max-width: 760px) {
  .case-study-report { border-radius: 24px; }
  .case-report-list,
  .case-result-grid { grid-template-columns: 1fr; }
  .case-result-grid div { min-height: 0; }
  .architecture-diagram {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 22px;
  }
  .architecture-column { width: 100%; }
  .architecture-hub,
  .architecture-core { min-height: 0; width: 100%; }
  .architecture-arrow { min-height: 72px; min-width: 0; }
  .architecture-arrow:before {
    left: 50%;
    right: auto;
    top: 0;
    bottom: 13px;
    width: 7px;
    height: auto;
    margin: 0 0 0 -3px;
  }
  .architecture-arrow:after {
    left: 50%;
    right: auto;
    top: auto;
    bottom: 0;
    margin: 0 0 0 -12px;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 17px solid #f28a3d;
    border-bottom: 0;
  }
  .architecture-arrow span {
    left: calc(50% + 18px);
    top: 50%;
    max-width: 126px;
    transform: translateY(-50%);
    background: #092d4d;
  }
}

/* Unified CORE360 platform diagram: one SVG coordinate system at every viewport. */
.platform-visual-card {
  min-height: 0;
  display: grid;
  place-items: center;
}
.platform-live-visual {
  min-height: 0;
  width: min(100%, 820px);
  aspect-ratio: 760 / 680;
  display: grid;
  place-items: center;
  margin-inline: auto;
  background: transparent;
  border: 0;
}
.platform-unified-svg {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 760 / 680;
  overflow: visible;
  font-family: inherit;
  shape-rendering: geometricPrecision;
  text-rendering: geometricPrecision;
}
.platform-unified-svg text {
  font-family: inherit;
}
.unified-orbit circle {
  fill: none;
  stroke-width: 13;
  stroke-linecap: round;
  opacity: .62;
}
.unified-orbit-inner circle {
  stroke-width: 10;
  opacity: .72;
}
.unified-flow {
  fill: none;
  stroke-linecap: round;
  stroke-dasharray: 12 12;
  animation: unifiedFlowDash 7s linear infinite;
}
.unified-flow-input {
  stroke: rgba(17,138,155,.58);
  stroke-width: 4.5;
}
.unified-flow-output {
  stroke: rgba(255,138,61,.52);
  stroke-width: 4;
}
.unified-anchor {
  stroke: rgba(255,255,255,.88);
  stroke-width: 2;
  filter: url(#platform-pulse-glow);
}
.unified-anchor-input { fill: var(--teal); }
.unified-anchor-output { fill: var(--orange); }
.unified-pulse {
  stroke: rgba(255,255,255,.88);
  stroke-width: 2;
  filter: url(#platform-pulse-glow);
}
.unified-pulse-teal { fill: var(--teal); }
.unified-pulse-green { fill: var(--green-teal); }
.unified-pulse-orange { fill: var(--orange); }
.unified-card > rect {
  fill: rgba(255,255,255,.94);
  stroke: rgba(214,220,227,.96);
  stroke-width: 1.4;
}
.unified-input-card > rect {
  stroke: rgba(127,199,176,.52);
}
.unified-card-title {
  fill: var(--navy);
  font-size: 22px;
  font-weight: 850;
  text-anchor: middle;
}
.unified-card-copy {
  fill: var(--muted);
  font-size: 16px;
  font-weight: 720;
  text-anchor: middle;
}
.unified-output-title {
  fill: var(--navy);
  font-size: 20px;
  font-weight: 850;
}
.unified-output-copy {
  fill: var(--muted);
  font-size: 16px;
  font-weight: 720;
}
.unified-module-icon rect {
  fill: rgba(17,138,155,.11);
  stroke: var(--teal);
  stroke-width: 2;
}
.unified-module-icon rect:nth-child(2) {
  fill: rgba(127,199,176,.13);
  stroke: var(--green-teal);
}
.unified-module-icon rect:nth-child(3) {
  fill: rgba(255,138,61,.11);
  stroke: var(--orange);
}
.unified-growth-icon path:first-child {
  fill: none;
  stroke: var(--teal);
  stroke-width: 4;
  stroke-linecap: round;
}
.unified-growth-icon path:not(:first-child) {
  fill: var(--green-teal);
  stroke: none;
}
.unified-growth-icon circle {
  fill: var(--orange);
  stroke: rgba(255,138,61,.18);
  stroke-width: 8;
}
.unified-card-dot {
  stroke: rgba(255,255,255,.9);
  stroke-width: 2;
  filter: url(#platform-pulse-glow);
}
.unified-card-dot-teal { fill: var(--teal); }
.unified-card-dot-green { fill: var(--green-teal); }
.unified-card-dot-orange { fill: var(--orange); }
.unified-core-title {
  fill: #fff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -1px;
  text-anchor: middle;
}
.unified-core-copy {
  fill: rgba(247,249,251,.72);
  font-size: 15px;
  font-weight: 760;
  text-anchor: middle;
}
.unified-status > rect:first-child {
  fill: rgba(6,26,51,.94);
}
.unified-status > rect:not(:first-child) {
  fill: rgba(247,249,251,.08);
}
.unified-status path {
  fill: none;
  stroke: var(--orange);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.unified-status text {
  fill: rgba(247,249,251,.9);
  font-size: 15px;
  font-weight: 850;
  text-anchor: middle;
}
@keyframes unifiedFlowDash {
  to { stroke-dashoffset: -48; }
}
@media (max-width: 720px) {
  .platform-visual-card { padding: 8px; }
  .platform-live-visual,
  .platform-unified-svg { border-radius: 22px; }
}
@media (min-width: 721px) and (max-height: 540px) and (orientation: landscape) {
  .platform-live-visual {
    width: min(100%, calc((100svh - 92px) * 760 / 680));
  }
}
@media (prefers-reduced-motion: reduce) {
  .platform-unified-svg .unified-pulse { display: none; }
}
