/* Premium public landing refinement. Scoped so authenticated workspace styles stay unchanged. */
.institutional-landing {
  --landing-blue: #040ecb;
  --landing-blue-hover: #2730db;
  --landing-ink: #102a43;
  --landing-copy: #52677a;
  --landing-line: rgba(16, 42, 67, 0.12);
  --landing-soft: #f7f9ff;
  background:
    linear-gradient(180deg, #ffffff 0, #ffffff 8rem, #f8fbff 34rem, #ffffff 58rem, #ffffff 100%);
  color: var(--landing-ink);
}

.institutional-landing :is(a, button, summary, input):focus-visible {
  outline: 3px solid rgba(4, 14, 203, 0.34);
  outline-offset: 3px;
}

.institutional-landing .btn {
  min-height: 2.85rem;
  border-radius: 0.75rem;
  padding: 0.7rem 1.15rem;
  font-size: 0.9rem;
  font-weight: 750;
  letter-spacing: -0.01em;
  transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 220ms ease, background-color 220ms ease, border-color 220ms ease, color 220ms ease;
}

.institutional-landing .btn-lg {
  min-height: 3.35rem;
  padding: 0.88rem 1.4rem;
  font-size: 0.96rem;
}

.institutional-landing .btn:hover {
  transform: translateY(-2px);
}

.institutional-landing .btn:active {
  transform: translateY(0);
  box-shadow: none;
}

.institutional-landing .btn:disabled,
.institutional-landing .btn.disabled {
  pointer-events: none;
  opacity: 0.52;
  box-shadow: none;
  transform: none;
}

.institutional-landing .btn-primary {
  border-color: var(--landing-blue);
  background: linear-gradient(135deg, #2730db 0%, #040ecb 70%, #0912a8 100%);
  box-shadow: 0 0.75rem 2rem rgba(4, 14, 203, 0.2), inset 0 1px rgba(255, 255, 255, 0.2);
}

.institutional-landing .btn-primary:hover,
.institutional-landing .btn-primary:focus-visible {
  border-color: var(--landing-blue-hover);
  background: linear-gradient(135deg, #3540e4 0%, #1823d5 70%, #0912a8 100%);
  box-shadow: 0 1rem 2.4rem rgba(4, 14, 203, 0.25), inset 0 1px rgba(255, 255, 255, 0.24);
}

.btn-secondary-premium {
  border: 1px solid rgba(4, 14, 203, 0.2);
  background: rgba(255, 255, 255, 0.8);
  color: var(--landing-blue);
  box-shadow: 0 0.55rem 1.5rem rgba(16, 42, 67, 0.07);
  backdrop-filter: blur(12px);
}

.btn-secondary-premium:hover,
.btn-secondary-premium:focus-visible {
  border-color: rgba(4, 14, 203, 0.38);
  background: #ffffff;
  color: #040aa8;
  box-shadow: 0 0.85rem 1.9rem rgba(16, 42, 67, 0.11);
}

/* Navigation */
.institutional-landing .landing-nav {
  position: relative;
  z-index: 30;
  min-height: 5.5rem;
  gap: 2rem;
  background: transparent;
}

.institutional-landing .landing-nav > .brand {
  flex: 0 0 auto;
}

/* Temporary public-logo adjustment; remove this rule when the replacement mark ships. */
.institutional-landing .public-navigation .official-brand-logo {
  width: clamp(10.25rem, 20.5vw, 15.35rem);
}

.institutional-landing .landing-nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(0.8rem, 1.5vw, 1.4rem);
}

.institutional-landing .landing-nav-links > a:not(.btn),
.landing-dropdown-toggle {
  border: 0;
  background: transparent;
  color: #183047;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 680;
  text-decoration: none;
  white-space: nowrap;
  transition: color 160ms ease;
}

.institutional-landing .landing-nav-links > a:not(.btn):hover,
.landing-dropdown-toggle:hover,
.landing-dropdown-toggle[aria-expanded="true"] {
  color: var(--landing-blue);
}

.landing-dropdown {
  position: relative;
}

.landing-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  min-height: 2.75rem;
  padding: 0.45rem 0;
}

.landing-dropdown-toggle > span {
  width: 0.42rem;
  height: 0.42rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-0.12rem) rotate(45deg);
  transition: transform 160ms ease;
}

.landing-dropdown-toggle[aria-expanded="true"] > span {
  transform: translateY(0.1rem) rotate(225deg);
}

.landing-dropdown-menu {
  position: absolute;
  top: calc(100% + 0.65rem);
  left: 50%;
  z-index: 40;
  display: grid;
  width: 21rem;
  padding: 0.65rem;
  border: 1px solid rgba(16, 42, 67, 0.1);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 1.4rem 4rem rgba(16, 42, 67, 0.15), 0 0.35rem 1rem rgba(16, 42, 67, 0.05);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -0.35rem);
  transition: opacity 220ms ease, visibility 220ms ease, transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
  backdrop-filter: blur(20px);
}

.landing-dropdown-menu--features {
  left: 0;
  grid-template-columns: 1fr 1fr;
  width: 35rem;
  transform: translate(0, -0.35rem);
}

.landing-dropdown-menu a {
  display: grid;
  gap: 0.12rem;
  padding: 0.75rem 0.8rem;
  border-radius: 0.7rem;
  color: var(--landing-ink);
  text-decoration: none;
  transition: background-color 150ms ease, color 150ms ease;
}

.landing-dropdown-menu a:hover,
.landing-dropdown-menu a:focus-visible {
  background: #f1f4ff;
  color: var(--landing-blue);
}

.landing-dropdown-menu strong {
  font-size: 0.86rem;
  line-height: 1.25;
}

.landing-dropdown-menu small {
  color: #66798b;
  font-size: 0.7rem;
  line-height: 1.35;
}

@media (hover: hover) {
  .landing-dropdown:hover .landing-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
  }

  .landing-dropdown:hover .landing-dropdown-menu--features {
    transform: translate(0, 0);
  }
}

.landing-dropdown.is-open .landing-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.landing-dropdown.is-open .landing-dropdown-menu--features {
  transform: translate(0, 0);
}

.landing-menu-toggle {
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid rgba(16, 42, 67, 0.14);
  border-radius: 0.7rem;
  background: rgba(255, 255, 255, 0.9);
}

.landing-menu-toggle > span:not(.visually-hidden) {
  display: block;
  width: 1.1rem;
  height: 2px;
  margin: 0.23rem auto;
  border-radius: 2px;
  background: var(--landing-ink);
}

/* Hero */
.institutional-landing .landing-hero {
  position: relative;
  isolation: isolate;
  grid-template-columns: minmax(0, 0.72fr) minmax(38rem, 1.28fr);
  gap: clamp(2.75rem, 4vw, 4.5rem);
  min-height: 47rem;
  padding-block: clamp(5rem, 8vw, 7.5rem) clamp(6rem, 9vw, 8.5rem);
  background:
    radial-gradient(ellipse 62% 58% at 76% 52%, rgba(76, 147, 255, 0.13) 0%, rgba(76, 147, 255, 0.055) 45%, transparent 75%),
    linear-gradient(180deg, #ffffff 0%, #ffffff 20%, #f4f8ff 68%, #fcfdff 100%);
}

.institutional-landing .landing-hero::before {
  inset: 70% 0 0;
  opacity: 0.55;
}

.landing-hero-copy {
  position: relative;
  z-index: 2;
}

.institutional-landing .landing-hero h1 {
  max-width: 12ch;
  margin: 0.7rem 0 1.3rem;
  font-size: clamp(3.2rem, 5vw, 5.2rem);
  line-height: 1;
  letter-spacing: -0.054em;
  text-wrap: balance;
}

.institutional-landing .landing-lead {
  max-width: 33rem;
  margin: 0;
  color: var(--landing-copy);
  font-size: clamp(1.08rem, 1.5vw, 1.25rem);
  line-height: 1.65;
  letter-spacing: -0.012em;
}

.institutional-landing .landing-actions {
  gap: 0.8rem;
  margin: 2rem 0 1.35rem;
}

.institutional-landing .landing-proof {
  max-width: 35rem;
  margin: 0;
  color: #64778a;
  font-size: 0.82rem;
  line-height: 1.55;
}

/* Faithful, static product UI preview: no browser chrome. */
.product-preview-stage {
  position: relative;
  z-index: 3;
  min-width: 0;
  width: calc(100% + 2rem);
  margin-right: -2rem;
  padding: 3.3rem 0 3rem;
}

.product-window {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 3.4rem minmax(0, 1fr);
  min-height: 30rem;
  overflow: hidden;
  border: 1px solid rgba(132, 151, 174, 0.27);
  border-radius: 1.35rem;
  background: #eef2f8;
  box-shadow: 0 2.6rem 6rem rgba(22, 48, 83, 0.18), 0 0.75rem 2rem rgba(4, 14, 203, 0.08), inset 0 1px rgba(255, 255, 255, 0.75);
  animation: product-window-float 8s cubic-bezier(0.45, 0, 0.55, 1) infinite;
  transform: translateZ(0);
}

.product-sidebar {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9rem;
  padding: 1rem 0.55rem;
  background: linear-gradient(180deg, #081a31 0%, #0b213c 100%);
}

.product-emblem {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  margin-bottom: 1rem;
  border-radius: 0.55rem;
  background: linear-gradient(145deg, #4b9dff, #2730db);
  color: #ffffff;
  font-size: 0.55rem;
  font-weight: 850;
  letter-spacing: -0.04em;
}

.product-nav-icon {
  position: relative;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.5rem;
}

.product-nav-icon::before,
.product-nav-icon::after {
  content: "";
  position: absolute;
  border: 1.5px solid #8ea1b5;
}

.product-nav-icon::before { inset: 0.52rem; border-radius: 0.15rem; }
.product-nav-icon::after { inset: 0.37rem 0.62rem; border-block: 0; }
.product-nav-icon.active { background: rgba(75, 157, 255, 0.17); }
.product-nav-icon.active::before,
.product-nav-icon.active::after { border-color: #6faeff; }

.product-app {
  min-width: 0;
  background: #f4f7fb;
}

.product-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 3.85rem;
  padding: 0.75rem 1.1rem;
  border-bottom: 1px solid #dfe6ee;
  background: rgba(255, 255, 255, 0.94);
}

.product-topbar div:first-child { display: grid; gap: 0.08rem; }
.product-topbar small { color: #6f8091; font-size: 0.5rem; font-weight: 800; letter-spacing: 0.14em; }
.product-topbar strong { color: #102a43; font-size: 0.84rem; }
.product-account { display: flex; align-items: center; gap: 0.4rem; color: #4d6074; font-size: 0.58rem; font-weight: 700; }
.product-account span { width: 0.45rem; height: 0.45rem; border-radius: 50%; background: #20a870; box-shadow: 0 0 0 0.18rem rgba(32, 168, 112, 0.14); }

.product-dashboard { padding: 1.2rem; }
.product-greeting { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.product-greeting > div { display: grid; gap: 0.14rem; }
.product-greeting small,
.product-panel header small { color: #6b7e91; font-size: 0.48rem; font-weight: 800; letter-spacing: 0.11em; }
.product-greeting strong { color: #102a43; font-size: 1rem; letter-spacing: -0.02em; }
.product-status { display: inline-flex; align-items: center; gap: 0.4rem; color: #456079; font-size: 0.56rem; font-weight: 720; }
.product-status i { width: 0.38rem; height: 0.38rem; border-radius: 50%; background: #20a870; }

.product-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.6rem;
  margin-bottom: 0.65rem;
}

.product-metrics article,
.product-panel {
  border: 1px solid #dfe6ee;
  border-radius: 0.7rem;
  background: #ffffff;
  box-shadow: 0 0.3rem 0.85rem rgba(29, 54, 82, 0.035);
}

.product-metrics article { display: grid; gap: 0.12rem; padding: 0.75rem; }
.product-metrics article,
.product-panel {
  animation: product-card-arrival 640ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}
.product-metrics article:nth-child(1) { animation-delay: 120ms; }
.product-metrics article:nth-child(2) { animation-delay: 210ms; }
.product-metrics article:nth-child(3) { animation-delay: 300ms; }
.product-panel--trades { animation-delay: 360ms; }
.product-panel--readiness { animation-delay: 450ms; }
.product-metrics small { color: #677b8e; font-size: 0.5rem; }
.product-metrics strong { color: #102a43; font-size: 1rem; letter-spacing: -0.03em; }
.product-metrics span { color: #8190a0; font-size: 0.46rem; }

.product-dashboard-grid { display: grid; grid-template-columns: 1.35fr 0.8fr; gap: 0.65rem; }
.product-panel { min-width: 0; padding: 0.85rem; }
.product-panel header { display: flex; align-items: flex-start; justify-content: space-between; gap: 0.5rem; margin-bottom: 0.65rem; }
.product-panel header div { display: grid; gap: 0.12rem; }
.product-panel header strong { color: #102a43; font-size: 0.7rem; }
.product-panel header > span { color: #4057c5; font-size: 0.48rem; font-weight: 750; }
.product-table-row { display: grid; grid-template-columns: 0.6fr 1.2fr 0.72fr 0.8fr; gap: 0.35rem; align-items: center; min-height: 2.15rem; border-top: 1px solid #edf1f5; color: #637589; font-size: 0.48rem; }
.product-table-row strong { color: #16324d; }
.product-table-row b { color: #15815b; font-weight: 800; }
.product-table-row b.neutral { color: #b24a52; }
.product-table-row em { justify-self: start; padding: 0.18rem 0.3rem; border-radius: 1rem; background: #edf3ff; color: #334bb8; font-style: normal; font-weight: 700; }
.product-table-head { min-height: 1.45rem; border: 0; color: #8a98a7; font-size: 0.42rem; font-weight: 800; text-transform: uppercase; }
.product-progress { height: 0.35rem; margin: 0.8rem 0; overflow: hidden; border-radius: 1rem; background: #e8edf2; }
.product-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2730db, #4b9dff); }
.product-panel ul { display: grid; gap: 0.55rem; margin: 0; padding: 0; list-style: none; }
.product-panel li { position: relative; padding-left: 1rem; color: #6f8193; font-size: 0.48rem; }
.product-panel li::before { content: ""; position: absolute; left: 0; top: 0.06rem; width: 0.58rem; height: 0.58rem; border: 1px solid #bac6d1; border-radius: 50%; }
.product-panel li.complete::before { border-color: #20a870; background: #20a870; box-shadow: inset 0 0 0 0.14rem #fff; }

.feature-callout {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 0.58rem;
  width: max-content;
  max-width: 13.5rem;
  padding: 0.58rem 0.7rem;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 0.8rem;
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 0.7rem 2rem rgba(29, 54, 82, 0.11), inset 0 1px rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(16px);
  animation: feature-callout-drift 7s cubic-bezier(0.45, 0, 0.55, 1) infinite;
}

.feature-callout > div { display: grid; gap: 0.08rem; }
.feature-callout strong { color: #173451; font-size: 0.65rem; line-height: 1.2; }
.feature-callout small { color: #667b8f; font-size: 0.53rem; line-height: 1.3; }
.callout-icon { display: grid; flex: 0 0 auto; place-items: center; width: 1.55rem; height: 1.55rem; border-radius: 0.48rem; background: linear-gradient(145deg, #eef2ff, #dfe7ff); color: var(--landing-blue); font-size: 0.7rem; font-weight: 850; }
.feature-callout--veronica { top: 0; left: -1.8rem; }
.feature-callout--replay { top: 0.7rem; right: -1.8rem; animation-delay: -1.4s; }
.feature-callout--performance { right: -2.3rem; bottom: 0.4rem; animation-delay: -2.8s; }
.feature-callout--playbook { bottom: 0; left: 3.2rem; animation-delay: -4.2s; }
.feature-callout--journal { top: 48%; left: -2.9rem; animation-delay: -5.6s; }
.product-preview-note { margin: 0.7rem 0 0; color: #75879a; font-size: 0.62rem; text-align: right; }

@keyframes product-window-float {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -3px, 0); }
}

@keyframes product-card-arrival {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes feature-callout-drift {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -3px, 0); }
}

/* Section rhythm and typography */
.institutional-landing .landing-market-strip {
  color: var(--landing-ink);
  background: linear-gradient(180deg, rgba(248, 251, 255, 0.76), rgba(255, 255, 255, 0.98));
  border-block: 1px solid rgba(16, 42, 67, 0.075);
  box-shadow: 0 0.7rem 2.2rem rgba(16, 42, 67, 0.025);
}

.institutional-landing .landing-market-strip .container {
  display: block;
  padding-block: 1.4rem 1.3rem;
}

.landing-trust-primary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 4rem);
}

.landing-trust-label {
  margin: 0;
  color: #718397;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
}

.landing-market-list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.landing-market-list span {
  color: #354e67;
  font-size: 0.76rem;
  font-weight: 750;
  letter-spacing: 0.08em;
}

.landing-proof-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  margin: 1rem 0 0;
  padding: 0.95rem 0 0;
  border-top: 1px solid rgba(16, 42, 67, 0.065);
  color: #64778a;
  font-size: 0.68rem;
  font-weight: 650;
  list-style: none;
}

.landing-proof-list li {
  position: relative;
  padding-left: 0.9rem;
}

.landing-proof-list li::before {
  content: "";
  position: absolute;
  top: 0.42rem;
  left: 0;
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 50%;
  background: #4051df;
}

.institutional-landing .landing-section {
  padding-block: clamp(5.5rem, 9vw, 8rem);
}

.institutional-landing .landing-section + .landing-section:not(.landing-section--dark):not(.landing-pricing) {
  border-top: 1px solid rgba(16, 42, 67, 0.055);
}

.institutional-landing .landing-section header {
  max-width: 46rem;
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.institutional-landing .landing-section h2,
.institutional-landing .landing-final-cta h2 {
  margin: 0.55rem 0 0;
  font-size: clamp(2.35rem, 4vw, 4rem);
  line-height: 1.05;
  letter-spacing: -0.048em;
  text-wrap: balance;
}

.institutional-landing .landing-section h3 {
  margin: 0.9rem 0 0.65rem;
  color: #16324d;
  font-size: 1.08rem;
  line-height: 1.25;
  letter-spacing: -0.025em;
}

.institutional-landing .landing-section p {
  color: var(--landing-copy);
  line-height: 1.68;
}

.institutional-landing .landing-feature-grid,
.institutional-landing .landing-method-grid,
.institutional-landing .landing-pricing .pricing-grid {
  gap: clamp(1rem, 1.7vw, 1.4rem);
}

.institutional-landing .landing-feature-grid article,
.institutional-landing .landing-method-grid article,
.institutional-landing .landing-pricing article {
  padding: clamp(1.45rem, 2.3vw, 2rem);
  border-color: rgba(16, 42, 67, 0.1);
  border-radius: 1.05rem;
  box-shadow: 0 0.5rem 1.6rem rgba(16, 42, 67, 0.035);
  transition: transform 240ms cubic-bezier(0.2, 0.8, 0.2, 1), border-color 240ms ease, box-shadow 240ms ease;
}

.institutional-landing .landing-feature-grid article:hover,
.institutional-landing .landing-method-grid article:hover {
  transform: translateY(-3px);
  border-color: rgba(4, 14, 203, 0.2);
  box-shadow: 0 1.1rem 2.5rem rgba(16, 42, 67, 0.08);
}

.institutional-landing .landing-section--dark,
.institutional-landing .landing-pricing {
  background: linear-gradient(180deg, #fbfcff 0%, #f0f5ff 52%, #fbfcff 100%);
}

/* Import methods */
.institutional-landing .landing-imports header > p:last-child {
  max-width: 42rem;
  margin: 1rem 0 0;
}

.institutional-landing .landing-method-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}

.institutional-landing .landing-method-card {
  display: flex;
  min-height: 20rem;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.92);
}

.institutional-landing .landing-method-card--future {
  background: linear-gradient(145deg, rgba(248, 249, 255, 0.96), rgba(241, 244, 252, 0.96));
}

.method-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.method-icon {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid rgba(4, 14, 203, 0.12);
  border-radius: 0.75rem;
  background: linear-gradient(145deg, #f4f6ff, #e5ebff);
  color: #2730b8;
  font-size: 1rem;
  font-weight: 850;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.9);
}

.status-label.coming-soon {
  background: #edf0f7;
  color: #495d72;
}

.institutional-landing .landing-method-card h3 {
  margin-top: 1.5rem;
  font-size: 1.28rem;
}

.institutional-landing .landing-method-card p {
  margin-bottom: 1rem;
}

.institutional-landing .landing-method-card > small {
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid rgba(16, 42, 67, 0.08);
  color: #708196;
  font-size: 0.72rem;
  line-height: 1.5;
}

.institutional-landing .landing-split { gap: clamp(2.5rem, 7vw, 6rem); }
.institutional-landing .analysis-preview { padding: clamp(1.5rem, 3vw, 2.3rem); border-color: rgba(4, 14, 203, 0.14); background: linear-gradient(145deg, rgba(255,255,255,0.96), #eef3ff); box-shadow: 0 1.6rem 4rem rgba(4, 14, 203, 0.09); }
.institutional-landing .analysis-preview > strong { display: block; margin-bottom: 1.2rem; font-size: 1.15rem; }
.institutional-landing .analysis-preview dl { margin: 0; }
.institutional-landing .analysis-preview dl div { gap: 1rem; border-color: rgba(16, 42, 67, 0.1); }
.institutional-landing .analysis-preview dd { color: #425c74; text-align: right; }

/* Accurate, sanitized application previews. */
.app-preview {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(4, 14, 203, 0.13);
  border-radius: 1.2rem;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), #f0f4ff);
  box-shadow: 0 1.7rem 4.2rem rgba(25, 50, 82, 0.1), inset 0 1px rgba(255, 255, 255, 0.9);
  animation: product-card-arrival 640ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

.institutional-landing .landing-section .app-preview-header {
  display: flex;
  max-width: none;
  margin: 0;
  padding-bottom: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid rgba(16, 42, 67, 0.09);
}

.app-preview-header > div {
  display: grid;
  gap: 0.2rem;
}

.app-preview-header small,
.app-preview-caption {
  color: #74869a;
  font-size: 0.58rem;
  font-weight: 760;
  letter-spacing: 0.1em;
}

.app-preview-header strong {
  color: #173451;
  font-size: 0.96rem;
  letter-spacing: -0.02em;
}

.app-preview-header > span {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #e9eeff;
  color: #3447b8;
  font-size: 0.6rem;
  font-weight: 780;
  white-space: nowrap;
}

.review-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}

.review-timeline li {
  position: relative;
  padding-top: 1.1rem;
  color: #77899b;
  font-size: 0.64rem;
  font-weight: 700;
  text-align: center;
}

.review-timeline li::before {
  content: "";
  position: absolute;
  top: 0.25rem;
  right: 0;
  left: 0;
  height: 2px;
  background: #d7dfeb;
}

.review-timeline li.complete::before { background: #4051df; }
.app-preview-caption { margin: 1.1rem 0 0 !important; line-height: 1.4 !important; letter-spacing: 0.04em; }

.landing-split--performance { align-items: center; }
.performance-proof,
.veronica-copy ul {
  display: grid;
  gap: 0.65rem;
  margin: 1.5rem 0 0;
  padding: 0;
  color: #435d75;
  font-size: 0.82rem;
  font-weight: 650;
  list-style: none;
}

.performance-proof li,
.veronica-copy li { position: relative; padding-left: 1.25rem; }
.performance-proof li::before,
.veronica-copy li::before { content: ""; position: absolute; top: 0.47rem; left: 0; width: 0.38rem; height: 0.38rem; border-radius: 50%; background: #4051df; }

.performance-preview,
.veronica-preview { padding: clamp(1.4rem, 3vw, 2rem); }
.performance-preview-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.65rem; margin: 1rem 0; }
.performance-preview-metrics > div { display: grid; gap: 0.15rem; padding: 0.8rem; border: 1px solid #e1e7ef; border-radius: 0.7rem; background: rgba(255, 255, 255, 0.82); }
.performance-preview-metrics small { color: #74869a; font-size: 0.54rem; }
.performance-preview-metrics strong { color: #173451; font-size: 1.05rem; letter-spacing: -0.03em; }
.performance-heatmap { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0.42rem; padding: 0.85rem; border-radius: 0.75rem; background: rgba(232, 237, 246, 0.6); animation: product-card-arrival 640ms cubic-bezier(0.2, 0.8, 0.2, 1) 260ms both; }
.performance-heatmap span { aspect-ratio: 1.55; border-radius: 0.28rem; background: #e2e8f0; }
.performance-heatmap span.positive { background: #bdebd7; }
.performance-heatmap span.negative { background: #f3cdd0; }
.performance-heatmap span.neutral { background: #ced8ff; }

/* Veronica */
.institutional-landing .landing-veronica {
  background:
    radial-gradient(ellipse 46% 68% at 78% 48%, rgba(87, 112, 221, 0.11), transparent 74%),
    linear-gradient(180deg, #fbfcff, #f3f6ff 50%, #fbfcff);
}

.landing-veronica .container {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(32rem, 1.18fr);
  align-items: center;
  gap: clamp(2.75rem, 7vw, 6rem);
}

.veronica-copy h2 { max-width: 10ch; }
.institutional-landing .veronica-lead { margin: 1rem 0 0.7rem; color: #233f5d; font-size: 1.12rem; font-weight: 720; letter-spacing: -0.015em; }
.veronica-copy > p:not(.eyebrow):not(.veronica-lead) { max-width: 38rem; }
.veronica-observations { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; margin-top: 1rem; }
.institutional-landing .veronica-observations article { padding: 0.9rem; border: 1px solid #e0e7f0; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.82); }
.veronica-observations span,
.veronica-recommendation span { display: block; margin-bottom: 0.35rem; color: #3348b6; font-size: 0.58rem; font-weight: 820; letter-spacing: 0.08em; text-transform: uppercase; }
.institutional-landing .veronica-observations p,
.institutional-landing .veronica-recommendation p { margin: 0; color: #4f657a; font-size: 0.7rem; line-height: 1.5; }
.veronica-recommendation { margin-top: 0.7rem; padding: 0.9rem 1rem; border-left: 2px solid #4051df; border-radius: 0.65rem; background: #ebefff; }

/* Product tour and application workspaces */
.landing-tour {
  background: linear-gradient(180deg, #fff 0%, #f7f9ff 48%, #fff 100%);
}

.product-gallery {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: minmax(8rem, auto);
  gap: clamp(0.8rem, 1.5vw, 1.2rem);
  margin-top: clamp(2.5rem, 5vw, 4rem);
}

.tour-window {
  position: relative;
  overflow: hidden;
  min-width: 0;
  padding: clamp(1rem, 2vw, 1.35rem);
  border: 1px solid rgba(21, 48, 78, 0.1);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 1rem 2.8rem rgba(23, 52, 81, 0.07), inset 0 1px rgba(255, 255, 255, 0.9);
  transition: transform 240ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 240ms ease, border-color 240ms ease;
  animation: product-card-arrival 640ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

.tour-window:hover { transform: translateY(-3px); border-color: rgba(4, 14, 203, 0.16); box-shadow: 0 1.4rem 3.2rem rgba(23, 52, 81, 0.1); }
.tour-window--dashboard { grid-column: span 7; grid-row: span 2; background: linear-gradient(145deg, #fff, #edf2ff); }
.tour-window--pending { grid-column: span 5; grid-row: span 2; }
.tour-window--playbook,
.tour-window--calendar,
.tour-window--broker { grid-column: span 4; }
.tour-window--studio { grid-column: 3 / span 8; }
.tour-window-bar { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: 0.8rem; border-bottom: 1px solid rgba(16, 42, 67, 0.08); color: #173451; font-size: 0.82rem; font-weight: 800; }
.tour-window-bar small { color: #74869a; font-size: 0.58rem; font-weight: 700; }
.tour-metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.55rem; margin-top: 1rem; }
.tour-metric-row span,
.tour-kanban > span { display: grid; gap: 0.28rem; padding: 0.7rem; border-radius: 0.65rem; background: rgba(238, 242, 251, 0.82); }
.tour-metric-row small,
.tour-kanban small,
.tour-list small { color: #75879a; font-size: 0.52rem; }
.tour-metric-row strong { color: #203d5a; font-size: 0.9rem; }
.tour-chart { position: relative; height: 5rem; margin-top: 0.8rem; border-radius: 0.65rem; background: repeating-linear-gradient(0deg, transparent 0 1.2rem, rgba(63, 84, 110, 0.07) 1.25rem), linear-gradient(180deg, #f8faff, #edf2fb); }
.tour-chart i { position: absolute; inset: 52% 6% auto; height: 2px; background: linear-gradient(90deg, #8e9deb, #2637cd); transform: rotate(-7deg); box-shadow: 4rem -0.6rem 0 #4051df, 8rem -0.25rem 0 #4051df; }
.tour-kanban { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5rem; margin-top: 1rem; }
.tour-kanban b { padding: 0.42rem; border: 1px solid #e2e8f0; border-radius: 0.45rem; background: #fff; color: #294660; font-size: 0.62rem; }
.tour-list { display: grid; gap: 0.5rem; margin-top: 0.8rem; }
.tour-list span { display: flex; justify-content: space-between; gap: 0.8rem; padding: 0.48rem 0; border-bottom: 1px solid rgba(16, 42, 67, 0.07); color: #294660; font-size: 0.65rem; }
.tour-calendar { display: grid; grid-template-columns: repeat(7, 1fr); gap: 0.35rem; margin-top: 1rem; }
.tour-calendar i { aspect-ratio: 1; border-radius: 0.25rem; background: #e5eaf1; }
.tour-calendar i.positive { background: #bdebd7; }
.tour-calendar i.negative { background: #f3cdd0; }
.tour-calendar i.neutral { background: #ced8ff; }
.tour-swatches { display: flex; gap: 0.5rem; margin: 1rem 0; }
.tour-swatches i { width: 1.5rem; aspect-ratio: 1; border: 2px solid #fff; border-radius: 50%; background: #040ecb; box-shadow: 0 0 0 1px #d9e0eb; }
.tour-swatches i:nth-child(2) { background: #172f4d; }
.tour-swatches i:nth-child(3) { background: #7657c8; }
.tour-swatches i:nth-child(4) { background: #d7e0ed; }
.tour-control { display: flex; justify-content: space-between; padding: 0.45rem 0; color: #65798d; font-size: 0.62rem; }
.tour-control b { color: #294660; }
.gallery-disclosure,
.broker-disclosure { margin: 1.1rem 0 0; color: #718397; font-size: 0.7rem; text-align: right; }

.landing-planning { background: radial-gradient(ellipse 58% 72% at 78% 50%, rgba(62, 91, 213, 0.08), transparent 72%); }
.workflow-sequence { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.65rem; margin-top: 2rem; }
.workflow-sequence article { position: relative; padding: 0.9rem; border-top: 1px solid rgba(39, 55, 190, 0.22); }
.workflow-sequence span { color: #4354c7; font-size: 0.55rem; font-weight: 820; }
.institutional-landing .workflow-sequence h3 { margin: 0.4rem 0 0.2rem; color: #1d3a56; font-size: 0.84rem; }
.institutional-landing .workflow-sequence p { margin: 0; color: #718397; font-size: 0.62rem; line-height: 1.45; }
.planning-workspace,
.journal-workspace,
.performance-workspace { margin-top: clamp(2.5rem, 5vw, 4rem); }
.workspace-preview-bar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem; border-bottom: 1px solid rgba(16, 42, 67, 0.09); background: rgba(249, 251, 255, 0.82); }
.workspace-preview-bar > div:first-child { display: grid; gap: 0.16rem; }
.workspace-preview-bar small { color: #75879a; font-size: 0.55rem; font-weight: 780; letter-spacing: 0.09em; }
.workspace-preview-bar strong { color: #173451; font-size: 0.9rem; }
.workspace-preview-bar > span,
.performance-filters span { padding: 0.4rem 0.65rem; border: 1px solid #dde4ee; border-radius: 0.5rem; background: #fff; color: #536a80; font-size: 0.62rem; font-weight: 700; }
.planning-preview-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(15rem, 0.7fr); gap: 1rem; padding: clamp(1rem, 2vw, 1.4rem); }
.pending-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.65rem; }
.pending-board section { padding: 0.7rem; border-radius: 0.75rem; background: rgba(235, 240, 248, 0.68); }
.pending-board section > header { display: flex; justify-content: space-between; margin-bottom: 0.6rem; color: #50677c; font-size: 0.62rem; }
.pending-board article { display: grid; gap: 0.18rem; margin-top: 0.5rem; padding: 0.65rem; border: 1px solid #e1e7ef; border-radius: 0.55rem; background: #fff; }
.pending-board article strong { color: #173451; font-size: 0.73rem; }
.pending-board article small,
.pending-board article span { color: #74869a; font-size: 0.54rem; }
.checklist-preview { padding: 1rem; border: 1px solid #dfe6ef; border-radius: 0.8rem; background: rgba(255, 255, 255, 0.86); }
.checklist-preview > div:first-child { display: grid; gap: 0.25rem; }
.checklist-preview small { color: #75879a; font-size: 0.53rem; letter-spacing: 0.08em; }
.checklist-preview strong { color: #173451; font-size: 0.78rem; }
.checklist-preview ul { display: grid; gap: 0.55rem; margin: 0.9rem 0; padding: 0; list-style: none; }
.checklist-preview li { position: relative; padding-left: 1.2rem; color: #667b8f; font-size: 0.62rem; }
.checklist-preview li::before { content: ""; position: absolute; left: 0; top: 0.02rem; width: 0.75rem; aspect-ratio: 1; border: 1px solid #cbd5e1; border-radius: 0.2rem; }
.checklist-preview li.complete::before { border-color: #4051df; background: #4051df; box-shadow: inset 0 0 0 2px #fff; }
.checklist-score { display: flex; justify-content: space-between; padding-top: 0.7rem; border-top: 1px solid #e3e8ef; color: #597086; font-size: 0.62rem; }

/* Journal and Replay */
.landing-journal { background: linear-gradient(180deg, #fff, #f8faff 50%, #fff); }
.journal-layout { display: grid; grid-template-columns: minmax(0, 1fr) 13rem; gap: 1rem; padding: clamp(1rem, 2vw, 1.4rem); }
.screenshot-timeline { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.65rem; margin: 0; padding: 0; list-style: none; }
.screenshot-timeline li { display: grid; gap: 0.35rem; color: #344f68; font-size: 0.63rem; font-weight: 750; }
.screenshot-timeline i { display: block; aspect-ratio: 1.65; border: 1px solid #dce4ef; border-radius: 0.6rem; background: linear-gradient(150deg, rgba(52, 70, 202, 0.15), transparent 50%), repeating-linear-gradient(0deg, #f7f9fc 0 0.8rem, #e9eef5 0.85rem); }
.screenshot-timeline li:nth-child(2) i { background: linear-gradient(25deg, transparent 45%, rgba(40, 57, 204, 0.28) 46% 49%, transparent 50%), #f1f4fa; }
.screenshot-timeline li:nth-child(3) i { background: linear-gradient(155deg, transparent 42%, rgba(50, 171, 120, 0.24) 43% 47%, transparent 48%), #f1f4fa; }
.screenshot-timeline small { color: #8090a0; font-size: 0.52rem; font-weight: 600; }
.journal-notes { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; margin-top: 0.8rem; }
.journal-notes article { padding: 0.75rem; border: 1px solid #e0e7f0; border-radius: 0.65rem; background: rgba(255, 255, 255, 0.82); }
.journal-notes small,
.replay-canvas small { color: #354ac0; font-size: 0.53rem; font-weight: 820; letter-spacing: 0.07em; }
.journal-notes p,
.replay-canvas p { margin: 0.3rem 0 0; color: #536a80; font-size: 0.62rem; line-height: 1.5; }
.journal-evidence { display: grid; align-content: start; gap: 0.6rem; }
.journal-evidence > div { display: grid; gap: 0.18rem; padding: 0.75rem; border-radius: 0.65rem; background: #edf1fa; }
.journal-evidence small { color: #72859a; font-size: 0.5rem; letter-spacing: 0.08em; }
.journal-evidence strong { color: #1e3a56; font-size: 0.7rem; }
.journal-evidence span { color: #4051df; font-size: 0.54rem; font-weight: 700; }
.journal-grade strong { font-size: 1.5rem; letter-spacing: -0.05em; }
.journal-workspace > .app-preview-caption,
.performance-workspace > .app-preview-caption { margin-inline: 1.25rem !important; padding-bottom: 1rem; }
.landing-replay { background: radial-gradient(ellipse 60% 75% at 20% 50%, rgba(84, 103, 215, 0.07), transparent 72%); }
.replay-workspace { padding: clamp(1.1rem, 2vw, 1.5rem); }
.replay-steps { display: grid; grid-template-columns: repeat(5, 1fr); margin: 1rem 0; padding: 0; list-style: none; }
.replay-steps li { padding: 0.45rem; border-bottom: 2px solid #dce3ed; color: #7b8c9d; font-size: 0.56rem; font-weight: 780; text-align: center; text-transform: uppercase; }
.replay-steps li.complete { border-color: #6676df; color: #4051bd; }
.replay-steps li.active { border-color: #040ecb; background: #edf0ff; color: #1725b5; }
.replay-canvas { display: grid; grid-template-columns: 1.55fr 0.85fr; gap: 0.7rem; }
.replay-chart { position: relative; min-height: 11rem; overflow: hidden; border: 1px solid #dde4ee; border-radius: 0.75rem; background: repeating-linear-gradient(0deg, transparent 0 2rem, rgba(72, 91, 115, 0.07) 2.05rem), repeating-linear-gradient(90deg, transparent 0 3rem, rgba(72, 91, 115, 0.06) 3.05rem), #f7f9fc; }
.replay-chart i { position: absolute; top: 18%; bottom: 12%; left: 58%; width: 2px; background: #4051df; }
.replay-chart span { position: absolute; top: 18%; left: calc(58% + 0.5rem); padding: 0.3rem 0.45rem; border-radius: 0.35rem; background: #2637c9; color: #fff; font-size: 0.52rem; }
.replay-canvas aside { display: grid; align-content: start; gap: 0.2rem; padding: 0.8rem; border: 1px solid #e0e7f0; border-radius: 0.75rem; background: #fff; }
.replay-canvas aside small:nth-of-type(2) { margin-top: 0.7rem; }
.replay-controls { display: grid; grid-template-columns: auto auto 1fr auto auto; align-items: center; gap: 0.6rem; margin-top: 0.65rem; padding: 0.55rem; border-radius: 0.6rem; background: #e9eef7; color: #5a7086; font-size: 0.56rem; }
.replay-play { display: grid; place-items: center; width: 1.7rem; aspect-ratio: 1; border-radius: 50%; background: #2637c9; color: #fff; }
.replay-controls div { height: 0.22rem; border-radius: 99px; background: #c9d3df; }
.replay-controls div i { display: block; width: 42%; height: 100%; border-radius: inherit; background: #4051df; }
.replay-screenshots { display: flex; gap: 0.45rem; margin-top: 0.65rem; }
.replay-screenshots span { padding: 0.38rem 0.6rem; border: 1px solid #dce3ed; border-radius: 0.4rem; color: #6a7e92; font-size: 0.55rem; }
.replay-screenshots span.active { border-color: #8793e8; background: #eef0ff; color: #2637b8; }

/* Executive performance workspace */
.landing-performance { background: linear-gradient(180deg, #fff, #f5f8ff 55%, #fff); }
.performance-filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; }
.performance-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.55rem; padding: 1rem 1.25rem 0; }
.performance-metric-grid article { display: grid; gap: 0.2rem; padding: 0.72rem; border: 1px solid #e0e7f0; border-radius: 0.65rem; background: rgba(255, 255, 255, 0.84); }
.performance-metric-grid small { color: #75879a; font-size: 0.5rem; }
.performance-metric-grid strong { overflow: hidden; color: #193754; font-size: 0.82rem; text-overflow: ellipsis; white-space: nowrap; }
.performance-dashboard-grid { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 0.75rem; padding: 0.75rem 1.25rem 0; }
.equity-panel,
.calendar-panel { padding: 0.8rem; border: 1px solid #e0e7f0; border-radius: 0.7rem; background: rgba(255, 255, 255, 0.84); }
.equity-panel > div:first-child,
.calendar-panel > div:first-child { display: grid; gap: 0.15rem; }
.equity-panel small,
.calendar-panel small { color: #75879a; font-size: 0.5rem; letter-spacing: 0.08em; }
.equity-panel strong,
.calendar-panel strong { color: #28445f; font-size: 0.7rem; }
.equity-curve { position: relative; height: 8.2rem; margin-top: 0.5rem; overflow: hidden; border-radius: 0.45rem; background: repeating-linear-gradient(0deg, transparent 0 1.6rem, rgba(70, 90, 115, 0.07) 1.65rem), linear-gradient(180deg, #f9fbfd, #eef3fa); }
.equity-curve i { position: absolute; right: -4%; bottom: 34%; left: -4%; height: 3px; background: linear-gradient(90deg, #8e99e7, #2737ca); transform: rotate(-8deg); box-shadow: 7rem 0.6rem 0 #5362d6, 13rem -0.3rem 0 #3e4ed1; }
.calendar-panel .performance-heatmap { margin-top: 0.5rem; padding: 0.5rem; }

/* Veronica coaching workspace */
.veronica-actions { display: flex; flex-wrap: wrap; gap: 0.55rem; margin-top: 1.35rem; }
.veronica-actions a { min-height: 2.6rem; padding: 0.67rem 0.85rem; border: 1px solid rgba(4, 14, 203, 0.16); border-radius: 0.55rem; color: #2738b9; font-size: 0.68rem; font-weight: 760; text-decoration: none; transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease; }
.veronica-actions a:hover { transform: translateY(-2px); background: #fff; box-shadow: 0 0.7rem 1.4rem rgba(23, 52, 81, 0.08); }
.veronica-score-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; margin-top: 1rem; }
.veronica-score-row article { display: grid; gap: 0.18rem; padding: 0.8rem; border-radius: 0.7rem; background: linear-gradient(145deg, #2737cb, #4658d7); color: #fff; }
.veronica-score-row small { color: rgba(255,255,255,0.75); font-size: 0.5rem; letter-spacing: 0.08em; }
.veronica-score-row strong { font-size: 1.3rem; }
.veronica-score-row span { color: rgba(255,255,255,0.78); font-size: 0.54rem; }
.veronica-evidence-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; margin-top: 0.65rem; }
.veronica-evidence-row aside { display: grid; gap: 0.18rem; padding: 0.75rem; border-left: 2px solid #4051df; border-radius: 0.55rem; background: #e9edff; }
.veronica-evidence-row span { color: #4051bd; font-size: 0.5rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.veronica-evidence-row strong { color: #233f5d; font-size: 0.68rem; }
.veronica-evidence-row small { color: #667b8f; font-size: 0.53rem; }

/* Broker Center capability matrix */
.landing-broker-center { background: radial-gradient(ellipse 65% 65% at 50% 55%, rgba(68, 91, 207, 0.08), transparent 76%), #fafbfe; }
.broker-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.8rem; margin-top: clamp(2.5rem, 5vw, 4rem); }
.broker-method { min-width: 0; padding: 1.15rem; border: 1px solid rgba(16, 42, 67, 0.1); border-radius: 0.85rem; background: rgba(255,255,255,0.9); box-shadow: 0 0.7rem 1.8rem rgba(16,42,67,0.04); transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease; }
.broker-method:hover { transform: translateY(-3px); border-color: rgba(4,14,203,0.18); box-shadow: 0 1rem 2.2rem rgba(16,42,67,0.08); }
.broker-method.featured { border-color: rgba(45, 65, 203, 0.2); background: linear-gradient(145deg, #fff, #eef2ff); }
.broker-method .status-label { display: inline-flex; padding: 0.28rem 0.5rem; border-radius: 99px; font-size: 0.52rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.broker-method .status-label.available { background: #e6f6ef; color: #176948; }
.broker-method .status-label.development { background: #fff2da; color: #7a5410; }
.broker-method h3 { margin: 0.9rem 0 0.35rem; color: #173451; font-size: 1rem; }
.broker-method p { margin: 0; color: #60758a; font-size: 0.72rem; line-height: 1.55; }

/* Screenshot-ready product showcase. Final captures replace only the placeholder element. */
.product-preview-stage--showcase {
  width: calc(100% + 3rem);
  margin-right: -3rem;
}

.product-screenshot-frame {
  min-width: 0;
  margin: 0;
  animation: product-card-arrival 680ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

.product-shot-placeholder {
  position: relative;
  isolation: isolate;
  display: grid;
  aspect-ratio: 16 / 9;
  place-content: center;
  gap: 0.45rem;
  overflow: hidden;
  padding: clamp(1.25rem, 4vw, 3rem);
  border: 1px solid rgba(27, 54, 84, 0.13);
  border-radius: clamp(0.9rem, 1.7vw, 1.25rem);
  background:
    radial-gradient(ellipse 56% 72% at 72% 24%, rgba(78, 101, 210, 0.1), transparent 72%),
    linear-gradient(145deg, #f8faff 0%, #eef2f8 54%, #e7ecf4 100%);
  box-shadow: 0 2rem 5rem rgba(24, 49, 78, 0.13), 0 0.35rem 1rem rgba(24, 49, 78, 0.06), inset 0 1px rgba(255, 255, 255, 0.92);
  color: #294660;
  text-align: center;
  transform: translateZ(0) scale(1);
  transition: transform 360ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 360ms ease, border-color 360ms ease;
}

.product-shot-placeholder::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 9%;
  border: 1px solid rgba(63, 84, 115, 0.07);
  border-radius: 0.75rem;
  background: rgba(255, 255, 255, 0.32);
}

.product-shot-placeholder span {
  font-size: clamp(1.2rem, 2.4vw, 2rem);
  font-weight: 780;
  letter-spacing: -0.035em;
}

.product-shot-placeholder small {
  color: #718397;
  font-size: clamp(0.62rem, 1vw, 0.75rem);
  font-weight: 680;
  letter-spacing: 0.04em;
}

.product-shot-placeholder:hover {
  transform: translateZ(0) scale(1.02);
  border-color: rgba(4, 14, 203, 0.2);
  box-shadow: 0 2.4rem 5.5rem rgba(24, 49, 78, 0.16), 0 0.45rem 1.2rem rgba(24, 49, 78, 0.07), inset 0 1px rgba(255, 255, 255, 0.95);
}

.product-screenshot-frame figcaption {
  margin-top: 0.75rem;
  color: #7a8b9c;
  font-size: 0.66rem;
  line-height: 1.5;
  text-align: right;
}

.product-screenshot-frame--hero .product-shot-placeholder {
  border-color: rgba(4, 14, 203, 0.16);
  background:
    radial-gradient(ellipse 64% 80% at 68% 25%, rgba(60, 82, 205, 0.15), transparent 72%),
    linear-gradient(145deg, #f9faff, #e9eef9 58%, #e1e7f2);
  box-shadow: 0 2.4rem 6rem rgba(20, 44, 77, 0.16), 0 0.5rem 1.3rem rgba(4, 14, 203, 0.07);
}

.feature-callouts--reduced .feature-callout { animation: none; }
.feature-callouts--reduced .feature-callout--veronica { top: -0.8rem; left: -1.2rem; }
.feature-callouts--reduced .feature-callout--journal { top: auto; right: 1.5rem; bottom: -0.7rem; left: auto; }

.product-showcase {
  position: relative;
  isolation: isolate;
  overflow: clip;
}

.product-showcase::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(44rem, 74vw);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(68, 91, 207, 0.075), transparent 70%);
  pointer-events: none;
}

.product-showcase:nth-of-type(odd)::before { top: 8%; right: -18rem; }
.product-showcase:nth-of-type(even)::before { bottom: 4%; left: -18rem; }

.product-showcase .container {
  display: grid;
  grid-template-columns: minmax(16rem, 0.38fr) minmax(0, 0.62fr);
  align-items: center;
  gap: clamp(2.5rem, 6vw, 5.5rem);
}

.institutional-landing .landing-hero--copy-only {
  grid-template-columns: minmax(0, 52rem);
  justify-content: center;
}

.landing-hero--copy-only .landing-hero-copy,
.product-showcase--copy-only .showcase-copy {
  max-width: 52rem;
}

.product-showcase--copy-only .container {
  grid-template-columns: minmax(0, 52rem);
  justify-content: center;
}

.product-showcase--reverse .product-screenshot-frame { order: -1; }
.showcase-copy { max-width: 31rem; }
.institutional-landing .showcase-copy h2 { max-width: 12ch; margin-top: 0.7rem; }
.showcase-copy ul {
  display: grid;
  gap: 0.8rem;
  margin: 1.5rem 0 0;
  padding: 0;
  color: #486177;
  font-size: 0.86rem;
  line-height: 1.6;
  list-style: none;
}

.showcase-copy li { position: relative; padding-left: 1.35rem; }
.showcase-copy li::before { content: ""; position: absolute; top: 0.65em; left: 0; width: 0.38rem; height: 0.38rem; border-radius: 50%; background: #4051df; }
.product-showcase--desk { background: linear-gradient(180deg, #fff, #f7f9ff 52%, #fff); }
.product-showcase--pending { background: radial-gradient(ellipse 58% 76% at 20% 50%, rgba(67, 91, 207, 0.065), transparent 74%); }
.product-showcase--journal { background: linear-gradient(180deg, #fff, #f8faff 54%, #fff); }
.product-showcase--replay { background: radial-gradient(ellipse 62% 76% at 78% 50%, rgba(83, 102, 213, 0.065), transparent 74%); }
.product-showcase--performance { background: linear-gradient(180deg, #fff, #f5f8ff 55%, #fff); }
.product-showcase--veronica { background: radial-gradient(ellipse 62% 76% at 20% 50%, rgba(91, 75, 198, 0.075), transparent 74%), linear-gradient(180deg, #fff, #f8f7ff, #fff); }
.product-showcase--broker { background: linear-gradient(180deg, #fff, #f7f9fd 55%, #fff); }

@supports (animation-timeline: view()) {
  .product-showcase .product-screenshot-frame {
    animation-timeline: view();
    animation-range: entry 8% cover 30%;
  }
}

/* Flagship cinematic art direction */
.institutional-landing .landing-hero {
  min-height: 52rem;
  padding-block: clamp(6rem, 9vw, 9rem) clamp(7rem, 10vw, 10rem);
  background:
    radial-gradient(ellipse 60% 72% at 78% 48%, rgba(31, 70, 212, 0.18), transparent 68%),
    radial-gradient(ellipse 46% 58% at 12% 78%, rgba(90, 105, 219, 0.08), transparent 72%),
    linear-gradient(180deg, #fff 0%, #f6f9ff 48%, #eaf0fb 100%);
}

.institutional-landing .landing-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(rgba(32, 57, 91, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(32, 57, 91, 0.045) 1px, transparent 1px);
  background-size: 3rem 3rem;
  mask-image: linear-gradient(180deg, transparent, #000 26%, rgba(0,0,0,0.72) 78%, transparent);
  pointer-events: none;
}

.hero-market-atmosphere { position: absolute; z-index: -1; inset: 9% 0 5%; overflow: hidden; pointer-events: none; }
.hero-market-atmosphere::before { content: ""; position: absolute; top: 16%; right: 4%; width: 58%; height: 60%; border-radius: 50%; background: rgba(64, 82, 203, 0.09); filter: blur(80px); animation: ambient-light-shift 12s ease-in-out infinite alternate; }
.hero-market-atmosphere span { position: absolute; width: 1px; background: linear-gradient(180deg, transparent, rgba(39, 63, 148, 0.14), transparent); }
.hero-market-atmosphere span:nth-child(1) { top: 17%; right: 19%; height: 36%; }
.hero-market-atmosphere span:nth-child(2) { top: 31%; right: 13%; height: 28%; }
.hero-market-atmosphere span:nth-child(3) { top: 12%; right: 7%; height: 48%; }

.institutional-landing .landing-hero h1 { font-size: clamp(3.6rem, 5.7vw, 6rem); line-height: 0.94; letter-spacing: -0.062em; }
.product-preview-stage--showcase { perspective: 1200px; }
.product-screenshot-frame--cinematic { transform: rotateY(-3deg) rotateX(1deg) translateZ(0); transform-origin: center left; animation: cinematic-frame-arrival 900ms cubic-bezier(0.16, 1, 0.3, 1) both; }
.product-screenshot-frame--cinematic .product-shot-placeholder { border-color: rgba(28, 49, 166, 0.24); box-shadow: 0 3rem 7rem rgba(16, 35, 68, 0.22), 1.2rem 1.8rem 3rem rgba(21, 45, 93, 0.1), inset 0 1px rgba(255,255,255,0.96); }

.product-showcase { padding-block: clamp(7rem, 11vw, 11rem); }
.product-showcase .container { position: relative; z-index: 2; }
.product-showcase::after { content: ""; position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(88, 107, 143, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(88, 107, 143, 0.04) 1px, transparent 1px); background-size: 4rem 4rem; mask-image: linear-gradient(90deg, transparent, #000 30%, #000 70%, transparent); pointer-events: none; }
.product-showcase .product-screenshot-frame { position: relative; z-index: 1; perspective: 1200px; }
.product-showcase .product-screenshot-frame::before,
.product-showcase .product-screenshot-frame::after { content: ""; position: absolute; z-index: -1; inset: 5% -2.5% -4% 4%; border: 1px solid rgba(44, 67, 118, 0.12); border-radius: 1.35rem; background: linear-gradient(145deg, rgba(255,255,255,0.7), rgba(211,220,236,0.28)); box-shadow: 0 2rem 5rem rgba(13, 34, 65, 0.11); transform: translateZ(-1px); }
.product-showcase .product-screenshot-frame::after { inset: 10% 3% -8% -3%; opacity: 0.58; }
.product-screenshot-frame--angled-left { transform: rotateY(2.5deg) rotateX(0.5deg); transform-origin: center right; }
.product-screenshot-frame--angled-right { transform: rotateY(-2.5deg) rotateX(0.5deg); transform-origin: center left; }
.product-showcase .product-shot-placeholder { border-color: rgba(28, 54, 92, 0.16); background: radial-gradient(ellipse 60% 74% at 72% 24%, rgba(67, 87, 207, 0.15), transparent 72%), linear-gradient(145deg, #f9fbff 0%, #e8edf6 58%, #dce4ef 100%); box-shadow: 0 2.7rem 6rem rgba(12, 32, 62, 0.18), 0 0.5rem 1.2rem rgba(12, 32, 62, 0.08), inset 0 1px rgba(255,255,255,0.94); }
.product-showcase .product-shot-placeholder::after { content: "TRADERSMILL  /  PRODUCT CAPTURE"; position: absolute; top: 1.1rem; left: 1.25rem; color: rgba(37, 61, 91, 0.48); font-size: 0.5rem; font-weight: 800; letter-spacing: 0.13em; }

.institutional-landing .showcase-copy h2 { max-width: 11ch; font-size: clamp(2.9rem, 4.5vw, 4.8rem); line-height: 0.98; letter-spacing: -0.055em; text-wrap: balance; }
.showcase-copy ul { gap: 0.7rem; max-width: 29rem; margin-top: 1.4rem; font-size: 0.9rem; }
.showcase-cta { display: inline-flex; align-items: center; gap: 0.55rem; min-height: 3rem; margin-top: 1.7rem; padding: 0.72rem 1rem; border: 1px solid rgba(4,14,203,0.18); border-radius: 0.65rem; background: rgba(255,255,255,0.66); color: #1727b9; font-size: 0.76rem; font-weight: 780; text-decoration: none; box-shadow: 0 0.6rem 1.5rem rgba(21,45,78,0.06); backdrop-filter: blur(14px); transition: transform 220ms cubic-bezier(0.2,0.8,0.2,1), box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease; }
.showcase-cta span { transition: transform 220ms ease; }
.showcase-cta:hover,
.showcase-cta:focus-visible { transform: translateY(-2px); border-color: rgba(4,14,203,0.34); background: #fff; box-shadow: 0 0.9rem 2rem rgba(21,45,78,0.11); }
.showcase-cta:hover span { transform: translateX(0.18rem); }

.product-showcase--dark { color: #f7f9ff; background: radial-gradient(ellipse 58% 70% at 78% 46%, rgba(55, 76, 206, 0.24), transparent 68%), radial-gradient(ellipse 44% 56% at 10% 90%, rgba(83, 68, 180, 0.12), transparent 70%), linear-gradient(145deg, #07162a 0%, #0a1b34 48%, #101e3f 100%); }
.product-showcase--dark::before { background: radial-gradient(circle, rgba(68, 93, 226, 0.2), transparent 70%); }
.product-showcase--dark::after { background-image: linear-gradient(rgba(166,181,218,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(166,181,218,0.055) 1px, transparent 1px); }
.product-showcase--dark .eyebrow { color: #9daeff; }
.institutional-landing .product-showcase--dark .showcase-copy h2 { color: #fff; }
.product-showcase--dark .showcase-copy ul { color: #c3cede; }
.product-showcase--dark .showcase-copy li::before { background: #8294ff; box-shadow: 0 0 1rem rgba(91,112,255,0.7); }
.product-showcase--dark .showcase-cta { border-color: rgba(154,170,255,0.3); background: rgba(255,255,255,0.07); color: #f2f5ff; box-shadow: inset 0 1px rgba(255,255,255,0.08), 0 1rem 2.4rem rgba(0,0,0,0.16); }
.product-showcase--dark .showcase-cta:hover,
.product-showcase--dark .showcase-cta:focus-visible { border-color: rgba(177,190,255,0.5); background: rgba(255,255,255,0.12); }
.product-showcase--dark .showcase-cta:focus-visible { outline-color: rgba(184, 196, 255, 0.82); }
.product-screenshot-frame--dark .product-shot-placeholder { border-color: rgba(155,172,255,0.22); background: radial-gradient(ellipse 62% 76% at 72% 24%, rgba(77,97,224,0.25), transparent 70%), linear-gradient(145deg, rgba(26,44,75,0.97), rgba(12,27,52,0.98)); color: #f8faff; box-shadow: 0 3rem 7rem rgba(0,0,0,0.38), 0 0 4rem rgba(61,82,208,0.16), inset 0 1px rgba(255,255,255,0.1); }
.product-screenshot-frame--dark .product-shot-placeholder::before { border-color: rgba(173,185,255,0.12); background: rgba(255,255,255,0.025); }
.product-screenshot-frame--dark .product-shot-placeholder::after { color: rgba(208,216,255,0.48); }
.product-screenshot-frame--dark .product-shot-placeholder small,
.product-showcase--dark .product-screenshot-frame figcaption { color: #aebbd0; }
.product-showcase--dark .product-screenshot-frame::before,
.product-showcase--dark .product-screenshot-frame::after { border-color: rgba(143,159,244,0.14); background: linear-gradient(145deg, rgba(78,96,177,0.13), rgba(255,255,255,0.025)); box-shadow: 0 2.5rem 6rem rgba(0,0,0,0.3); }

.product-showcase--centerpiece { padding-block: clamp(8rem, 13vw, 13rem); background: radial-gradient(ellipse 62% 55% at 50% 62%, rgba(54,78,210,0.16), transparent 70%), linear-gradient(180deg, #f8faff, #e8eefb 52%, #f9faff); }
.product-showcase--centerpiece .container { grid-template-columns: 1fr; }
.product-showcase--centerpiece .showcase-copy { max-width: 62rem; margin-inline: auto; text-align: center; }
.institutional-landing .product-showcase--centerpiece .showcase-copy h2 { max-width: 15ch; margin-inline: auto; }
.product-showcase--centerpiece .showcase-copy ul { grid-template-columns: 1fr 1fr; max-width: 56rem; margin-inline: auto; margin-top: 1.4rem; text-align: left; }
.product-screenshot-frame--performance { width: min(100%, 72rem); margin-inline: auto; }
.product-screenshot-frame--performance .product-shot-placeholder { box-shadow: 0 3.5rem 8rem rgba(21,42,79,0.22), 0 0 5rem rgba(45,66,202,0.12); }

.product-showcase--veronica { background: radial-gradient(ellipse 58% 70% at 26% 46%, rgba(89,73,214,0.3), transparent 68%), radial-gradient(ellipse 48% 60% at 90% 80%, rgba(35,74,202,0.22), transparent 70%), linear-gradient(145deg, #071327, #0c1734 52%, #171846); }
.product-screenshot-frame--veronica .product-shot-placeholder { background: radial-gradient(ellipse 62% 74% at 66% 28%, rgba(115,92,228,0.28), transparent 70%), linear-gradient(145deg, rgba(30,40,78,0.98), rgba(12,22,49,0.98)); }

@keyframes cinematic-frame-arrival {
  from { opacity: 0; transform: rotateY(-3deg) rotateX(1deg) translate3d(0, 1.5rem, -2rem); }
  to { opacity: 1; transform: rotateY(-3deg) rotateX(1deg) translate3d(0, 0, 0); }
}

@keyframes ambient-light-shift {
  from { transform: translate3d(-1.5rem, -0.5rem, 0) scale(0.96); opacity: 0.65; }
  to { transform: translate3d(1.5rem, 0.5rem, 0) scale(1.04); opacity: 1; }
}

.institutional-landing .landing-pricing article.featured {
  border-color: transparent;
  background: linear-gradient(145deg, #2730db 0%, #040ecb 68%, #09119d 100%);
  box-shadow: 0 1.3rem 3.2rem rgba(4, 14, 203, 0.2);
}

/* Pricing */
.institutional-landing .landing-pricing .pricing-grid { align-items: stretch; }
.institutional-landing .landing-price-card { display: flex; min-height: 34rem; flex-direction: column; padding: clamp(1.7rem, 2.8vw, 2.25rem); background: rgba(255, 255, 255, 0.96); }
.institutional-landing .landing-price-card:hover { transform: translateY(-4px); border-color: rgba(4, 14, 203, 0.18); box-shadow: 0 1.25rem 2.8rem rgba(16, 42, 67, 0.09); }
.institutional-landing .landing-price-card.featured { transform: translateY(-0.45rem); }
.institutional-landing .landing-price-card.featured:hover { transform: translateY(-0.7rem); box-shadow: 0 1.8rem 3.8rem rgba(4, 14, 203, 0.24); }
.institutional-landing .landing-price-card strong { display: inline; margin: 0; font-size: inherit; }
.price-card-heading { min-height: 5.2rem; }
.price-plan-label { color: #718397; font-size: 0.62rem; font-weight: 780; letter-spacing: 0.1em; text-transform: uppercase; }
.institutional-landing .landing-price-card h3 { margin: 0.7rem 0 0; font-size: 1.35rem; }
.landing-price-value { display: flex; align-items: baseline; gap: 0.3rem; margin-top: 0.75rem; }
.institutional-landing .landing-price-value strong { color: #102a43; font-size: clamp(2.65rem, 4vw, 3.4rem); line-height: 1; letter-spacing: -0.055em; }
.landing-price-value small { color: #718397; font-size: 0.72rem; font-weight: 700; }
.landing-annual-price { display: block; margin-top: 0.55rem; color: #536a80; font-size: 0.76rem; font-weight: 680; }
.institutional-landing .price-description { min-height: 4.7rem; margin: 1.3rem 0 0; padding-bottom: 1.25rem; border-bottom: 1px solid rgba(16, 42, 67, 0.09); font-size: 0.84rem; }
.price-highlights { display: grid; gap: 0.75rem; margin: 1.25rem 0; padding: 0; color: #354f68; font-size: 0.78rem; font-weight: 650; list-style: none; }
.price-highlights li { position: relative; padding-left: 1.2rem; }
.price-highlights li::before { content: "✓"; position: absolute; left: 0; color: #2730b8; font-weight: 850; }
.price-limits { display: grid; gap: 0.4rem; margin-top: auto; color: #667b8f; font-size: 0.7rem; }
.price-limits strong { color: #243f59; }
.institutional-landing .price-coming-soon { margin: 1rem 0 0; padding-top: 0.9rem; border-top: 1px solid rgba(16, 42, 67, 0.09); color: #667b8f; font-size: 0.68rem; line-height: 1.5; }
.price-coming-soon span { margin-right: 0.25rem; color: #4f5f71; font-weight: 820; text-transform: uppercase; }
.institutional-landing .landing-price-card.featured :is(h3, .landing-price-value strong, .price-limits strong) { color: #fff; }
.institutional-landing .landing-price-card.featured :is(.landing-annual-price, .price-description, .price-highlights, .price-limits, .price-coming-soon) { color: rgba(244, 247, 255, 0.83); }
.institutional-landing .landing-price-card.featured :is(.price-description, .price-coming-soon) { border-color: rgba(255, 255, 255, 0.16); }
.landing-price-card.featured .price-highlights li::before,
.landing-price-card.featured .price-coming-soon span { color: #dce4ff; }
.landing-price-card.featured .status-label.available { background: rgba(255, 255, 255, 0.94); color: #1724bd; }

.institutional-landing .landing-pricing > .container > .btn { margin-top: 2rem; }
.institutional-landing .landing-faq { max-width: 56rem; }
.institutional-landing .landing-faq details { padding: 1.4rem 0; border-color: rgba(16, 42, 67, 0.13); }
.institutional-landing .landing-faq summary { padding-right: 2rem; color: #16324d; font-size: 1.02rem; letter-spacing: -0.012em; }
.institutional-landing .landing-faq details p { max-width: 48rem; margin: 0.85rem 0 0; }

.institutional-landing .landing-final-cta {
  position: relative;
  overflow: hidden;
  margin-top: clamp(3.75rem, 7vw, 6.25rem);
  padding-block: clamp(7rem, 10vw, 9rem) clamp(6rem, 9vw, 8rem);
  background:
    radial-gradient(ellipse 68% 56% at 78% 92%, rgba(87, 126, 221, 0.13) 0%, rgba(87, 126, 221, 0.045) 48%, transparent 76%),
    linear-gradient(180deg, #ffffff 0%, #fafbff 14%, #f3f5ff 36%, #e9edfb 68%, #dce3f7 100%);
}

.institutional-landing .landing-final-cta::before {
  content: "";
  position: absolute;
  top: 48%;
  left: 50%;
  width: min(52rem, 92vw);
  height: 24rem;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(103, 86, 211, 0.075) 0%, rgba(103, 86, 211, 0.028) 42%, transparent 74%);
  filter: blur(16px);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.institutional-landing .landing-final-cta .container { position: relative; z-index: 1; }
.institutional-landing .landing-final-cta h2 { max-width: 14ch; margin-inline: auto; color: #102a43; }
.institutional-landing .landing-final-cta p:not(.eyebrow) { margin: 1.25rem auto 2rem; color: #52677a; font-size: 1.05rem; line-height: 1.65; }
.institutional-landing .landing-final-cta .eyebrow { color: #2730b8; }
.institutional-landing .landing-final-cta .btn-primary {
  border-color: rgba(4, 14, 203, 0.12);
  background: #fff;
  color: #040ecb;
  box-shadow: 0 0.75rem 2rem rgba(41, 58, 132, 0.14);
  transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 220ms ease, background-color 220ms ease, border-color 220ms ease;
}
.institutional-landing .landing-final-cta .btn-primary:hover,
.institutional-landing .landing-final-cta .btn-primary:focus-visible {
  border-color: rgba(4, 14, 203, 0.2);
  background: #fff;
  color: #040aa8;
  box-shadow: 0 0.9rem 2.2rem rgba(41, 58, 132, 0.17);
  transform: translateY(-2px);
}

.institutional-landing .landing-final-cta .btn-primary:focus-visible {
  box-shadow: 0 0 0 0.25rem rgba(4, 14, 203, 0.12), 0 0.9rem 2.2rem rgba(41, 58, 132, 0.17);
}

.institutional-landing .landing-final-cta {
  margin-top: clamp(5rem, 8vw, 8rem);
  background:
    radial-gradient(ellipse 58% 72% at 50% 56%, rgba(61, 83, 224, 0.27), transparent 70%),
    radial-gradient(ellipse 34% 46% at 78% 92%, rgba(104, 79, 205, 0.18), transparent 72%),
    linear-gradient(145deg, #061326, #0a1a35 55%, #11183d);
  color: #fff;
}
.institutional-landing .landing-final-cta::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(176,189,226,0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(176,189,226,0.05) 1px, transparent 1px); background-size: 3.5rem 3.5rem; mask-image: radial-gradient(ellipse at center, #000, transparent 74%); pointer-events: none; }
.institutional-landing .landing-final-cta h2 { color: #fff; }
.institutional-landing .landing-final-cta p:not(.eyebrow) { color: #c3cede; }
.institutional-landing .landing-final-cta .eyebrow { color: #9eaeff; }
.institutional-landing .landing-final-cta .btn-primary { border-color: rgba(190,201,255,0.28); background: linear-gradient(135deg, #5263ee, #293bd2 72%, #1827a8); color: #fff; box-shadow: 0 1rem 2.8rem rgba(0,0,0,0.28), inset 0 1px rgba(255,255,255,0.2); }
.institutional-landing .landing-final-cta .btn-primary:hover,
.institutional-landing .landing-final-cta .btn-primary:focus-visible { border-color: rgba(210,219,255,0.4); background: linear-gradient(135deg, #6171f4, #3547dc 72%, #202fb6); color: #fff; box-shadow: 0 1.3rem 3.2rem rgba(0,0,0,0.34), 0 0 2.4rem rgba(70,91,232,0.18); }
.institutional-landing .public-footer {
  min-height: 7.25rem;
  padding-block: 2rem;
  border-top: 1px solid rgba(16, 42, 67, 0.075);
  background: linear-gradient(180deg, rgba(249, 251, 255, 0.62), #fff);
}

.institutional-landing .public-footer > span:first-child {
  color: #173451;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.institutional-landing .public-footer > span:last-child {
  color: #718397;
  font-size: 0.75rem;
  line-height: 1.5;
  text-align: right;
}

.institutional-landing .public-footer__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem 0.9rem;
}

.institutional-landing .public-footer__links a {
  color: #4e6278;
  font-size: 0.72rem;
  font-weight: 680;
  text-decoration: none;
  text-underline-offset: 0.18em;
}

.institutional-landing .public-footer__links a:hover,
.institutional-landing .public-footer__links a:focus-visible {
  color: #2437bd;
  text-decoration: underline;
}

@media (max-width: 1199.98px) {
  .institutional-landing .landing-hero { grid-template-columns: minmax(0, 0.82fr) minmax(31rem, 1.18fr); gap: 2.5rem; }
  .feature-callout--veronica,
  .feature-callout--journal { left: -1rem; }
  .feature-callout--replay,
  .feature-callout--performance { right: -1rem; }
}

@media (max-width: 991.98px) {
  .institutional-landing .landing-nav { min-height: 5rem; }
  .institutional-landing .landing-nav-links {
    position: absolute;
    top: calc(100% - 0.2rem);
    right: 0.75rem;
    left: 0.75rem;
    display: none;
    align-items: stretch;
    padding: 0.75rem;
    border: 1px solid rgba(16, 42, 67, 0.11);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 1.4rem 3rem rgba(16, 42, 67, 0.14);
    backdrop-filter: blur(20px);
  }

  .institutional-landing .landing-nav-links.is-open { display: grid; }
  .institutional-landing .landing-nav-links > a:not(.btn),
  .landing-dropdown-toggle { display: flex; width: 100%; min-height: 2.75rem; align-items: center; padding: 0.6rem 0.75rem; }
  .landing-dropdown-toggle { justify-content: space-between; }
  .landing-nav-cta { margin-top: 0.25rem; }
  .landing-dropdown-menu,
  .landing-dropdown-menu--features {
    position: static;
    display: none;
    grid-template-columns: 1fr 1fr;
    width: auto;
    margin: 0 0.35rem 0.5rem;
    padding: 0.35rem;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .landing-dropdown.is-open .landing-dropdown-menu { display: grid; transform: none; }
  .institutional-landing .landing-hero { grid-template-columns: 1fr; gap: 3rem; padding-top: 4rem; }
  .institutional-landing .landing-hero h1 { max-width: 13ch; }
  .product-preview-stage { width: min(100%, 47rem); margin-inline: auto; }
  .feature-callouts { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.65rem; margin-top: 1rem; }
  .feature-callouts--reduced { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .feature-callout { position: static; width: auto; max-width: none; }
  .product-preview-note { text-align: center; }
  .product-showcase .container { grid-template-columns: 1fr; gap: 2.25rem; }
  .product-showcase--reverse .product-screenshot-frame { order: 0; }
  .showcase-copy { max-width: 40rem; }
  .product-screenshot-frame--cinematic,
  .product-screenshot-frame--angled-left,
  .product-screenshot-frame--angled-right { transform: none; }
  .product-showcase--centerpiece .showcase-copy { text-align: left; }
  .institutional-landing .product-showcase--centerpiece .showcase-copy h2 { margin-inline: 0; }
  .product-showcase--centerpiece .showcase-copy ul { margin-inline: 0; }
  .landing-veronica .container { grid-template-columns: 1fr; }
  .veronica-copy { max-width: 42rem; }
  .tour-window--dashboard,
  .tour-window--pending { grid-column: span 6; }
  .tour-window--playbook,
  .tour-window--calendar,
  .tour-window--broker { grid-column: span 4; }
  .tour-window--studio { grid-column: 3 / span 8; }
  .planning-preview-grid { grid-template-columns: 1fr; }
  .journal-layout { grid-template-columns: 1fr; }
  .journal-evidence { grid-template-columns: repeat(4, 1fr); }
  .broker-method-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .institutional-landing .landing-pricing .pricing-grid { grid-template-columns: 1fr; max-width: 36rem; margin-inline: auto; }
  .institutional-landing .landing-price-card { min-height: 0; }
  .institutional-landing .landing-price-card.featured,
  .institutional-landing .landing-price-card.featured:hover { transform: none; }
}

@media (max-width: 767.98px) {
  .institutional-landing .landing-hero { min-height: 0; padding-block: 3.5rem 5rem; }
  .institutional-landing .landing-hero h1 { font-size: clamp(2.9rem, 13vw, 4.25rem); }
  .institutional-landing .landing-actions { align-items: stretch; flex-direction: column; }
  .institutional-landing .landing-actions .btn { width: 100%; }
  .product-preview-stage { padding-block: 1rem 0; }
  .product-window { grid-template-columns: 2.65rem minmax(0, 1fr); min-height: 26rem; border-radius: 1rem; }
  .product-sidebar { gap: 0.65rem; padding-inline: 0.35rem; }
  .product-emblem { width: 1.75rem; height: 1.75rem; }
  .product-nav-icon { width: 1.6rem; height: 1.6rem; }
  .product-dashboard { padding: 0.8rem; }
  .product-account { display: none; }
  .product-metrics { grid-template-columns: 1fr 1fr; }
  .product-metrics article:last-child { display: none; }
  .product-dashboard-grid { grid-template-columns: 1fr; }
  .product-panel--readiness { display: none; }
  .feature-callouts { grid-template-columns: 1fr 1fr; }
  .feature-callout:last-child { grid-column: 1 / -1; }
  .institutional-landing .landing-section { padding-block: 5rem; }
  .institutional-landing .landing-section h2,
  .institutional-landing .landing-final-cta h2 { font-size: clamp(2.2rem, 10vw, 3.15rem); }
  .product-shot-placeholder { border-radius: 0.85rem; }
  .product-screenshot-frame figcaption { text-align: left; }
  .product-showcase { padding-block: 6rem; }
  .product-showcase--centerpiece { padding-block: 7rem; }
  .product-showcase--centerpiece .showcase-copy ul { grid-template-columns: 1fr; }
  .institutional-landing .showcase-copy h2 { font-size: clamp(2.5rem, 11vw, 3.5rem); }
  .product-showcase .product-screenshot-frame::before { inset: 4% -1.5% -3% 3%; }
  .product-showcase .product-screenshot-frame::after { inset: 8% 3% -6% -2%; }
  .landing-trust-primary { grid-template-columns: 1fr; justify-items: center; gap: 0.85rem; }
  .landing-market-list { flex-wrap: wrap; justify-content: center; gap: 0.75rem 1.3rem; }
  .landing-market-list span { flex: 0 0 auto; }
  .landing-proof-list { justify-content: center; }
  .product-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: auto; }
  .tour-window--dashboard,
  .tour-window--pending,
  .tour-window--playbook,
  .tour-window--calendar,
  .tour-window--broker,
  .tour-window--studio { grid-column: auto; grid-row: auto; }
  .tour-window--dashboard,
  .tour-window--pending { grid-column: 1 / -1; }
  .pending-board { grid-template-columns: 1fr; }
  .workflow-sequence { grid-template-columns: 1fr 1fr; }
  .journal-notes { grid-template-columns: 1fr; }
  .journal-evidence { grid-template-columns: 1fr 1fr; }
  .replay-canvas,
  .performance-dashboard-grid { grid-template-columns: 1fr; }
  .performance-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-preview-bar { align-items: flex-start; flex-direction: column; }
  .performance-filters { justify-content: flex-start; }
  .broker-method-grid { grid-template-columns: 1fr; }
  .institutional-landing .landing-method-grid { grid-template-columns: 1fr; }
  .institutional-landing .landing-method-card { min-height: 0; }
  .institutional-landing .public-footer { align-items: flex-start; flex-direction: column; gap: 0.45rem; }
}

@media (max-width: 479.98px) {
  .landing-dropdown-menu,
  .landing-dropdown-menu--features { grid-template-columns: 1fr; max-height: min(23rem, 58vh); overflow-y: auto; }
  .product-greeting strong { font-size: 0.85rem; }
  .product-status { display: none; }
  .product-table-row { grid-template-columns: 0.55fr 1.25fr 0.72fr; }
  .product-table-row > :last-child { display: none; }
  .feature-callouts { grid-template-columns: 1fr; }
  .feature-callouts--reduced { grid-template-columns: 1fr; }
  .feature-callout:last-child { grid-column: auto; }
  .institutional-landing .public-navigation .official-brand-logo { width: 9.25rem; }
  .product-gallery { grid-template-columns: 1fr; }
  .tour-window--dashboard,
  .tour-window--pending { grid-column: auto; }
  .tour-kanban,
  .tour-metric-row { grid-template-columns: 1fr; }
  .workflow-sequence { grid-template-columns: 1fr; }
  .screenshot-timeline { grid-template-columns: 1fr; }
  .journal-evidence,
  .veronica-score-row,
  .veronica-evidence-row { grid-template-columns: 1fr; }
  .replay-controls { grid-template-columns: auto auto 1fr; }
  .replay-controls b,
  .replay-controls > span:last-child { display: none; }
  .replay-steps li { padding-inline: 0.15rem; font-size: 0.48rem; }
  .performance-metric-grid { padding-inline: 0.75rem; }
  .performance-dashboard-grid { padding-inline: 0.75rem; }
  .performance-preview-metrics { gap: 0.4rem; }
  .performance-preview-metrics > div { padding: 0.65rem 0.5rem; }
  .veronica-observations { grid-template-columns: 1fr; }
  .app-preview-header { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .institutional-landing *,
  .institutional-landing *::before,
  .institutional-landing *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .institutional-landing .btn:hover,
  .institutional-landing .landing-feature-grid article:hover,
  .institutional-landing .landing-method-grid article:hover,
  .institutional-landing .landing-price-card:hover,
  .tour-window:hover,
  .broker-method:hover,
  .veronica-actions a:hover,
  .product-shot-placeholder:hover { transform: none; }

  .product-window,
  .product-metrics article,
  .product-panel,
  .feature-callout,
  .tour-window,
  .app-preview,
  .performance-heatmap,
  .product-screenshot-frame,
  .hero-market-atmosphere::before {
    animation: none !important;
  }
}
