/*
 * Prospect-route compatibility layer.
 *
 * The long-form case, review, and service pages predate the v2 component
 * markup.  This bridge gives those truthful, useful pages the same visual
 * contract as the material-interface routes without rewriting their content
 * or form behavior during the launch cutover.
 */
:root {
  --bridge-bg: #030509;
  --bridge-panel: rgba(13, 21, 29, .84);
  --bridge-panel-strong: rgba(8, 13, 19, .94);
  --bridge-text: #d9dee4;
  --bridge-soft: #aeb9c4;
  --bridge-strong: #f5f1ea;
  --bridge-line: rgba(178, 201, 220, .18);
  --bridge-blue: #78dcff;
  --bridge-beryl: #bd5365;
}

html { background: var(--bridge-bg); }
body {
  color: var(--bridge-text);
  background:
    radial-gradient(circle at 69% 11%, rgba(56, 109, 202, .15), transparent 34%),
    radial-gradient(circle at 14% 10%, rgba(162, 54, 76, .08), transparent 28%),
    linear-gradient(180deg, #03060a 0%, #071018 48%, #04070b 100%);
  min-height: 100vh;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .16;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 260 260' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  z-index: -1;
}

nav.site-nav,
body > nav {
  background: linear-gradient(180deg, rgba(5, 8, 12, .96), rgba(5, 8, 12, .78));
  border-bottom: 1px solid rgba(197, 220, 236, .15);
  backdrop-filter: blur(20px);
  box-shadow: 0 18px 46px rgba(0, 0, 0, .20);
}
.nav-wordmark { color: var(--bridge-strong) !important; }
.nav-tagline { color: #bbc3ca !important; }
.nav-links a { color: #c7ced6 !important; }
.nav-links a:hover,
.nav-links a:focus-visible { color: var(--bridge-blue) !important; }

main,
section {
  position: relative;
}
main > h1,
.hero-title,
.card-body h2,
.research-card h2 { color: var(--bridge-strong) !important; }
.page-label,
.eyebrow,
.section-label,
.agency-badge,
.research-tag { color: var(--bridge-blue) !important; }

.work-card,
.research-card,
.scope-block,
.offer-card,
.case-card,
.intake-panel,
.payment-card,
.trust-strip,
.boundary-note {
  border-color: var(--bridge-line) !important;
  background:
    linear-gradient(145deg, rgba(18, 29, 38, .76), rgba(5, 9, 14, .94)) !important;
  border-radius: 14px;
  box-shadow: 0 20px 62px rgba(0,0,0,.42), inset 0 1px 0 rgba(240,248,255,.06);
}
.work-card { margin-bottom: 14px; padding: 24px !important; border: 1px solid var(--bridge-line) !important; }
.research-card { border: 1px solid var(--bridge-line) !important; }
.card-body p,
.research-card p,
.intro,
.lede,
.offer-lede,
.domain-range,
.diagnosis { color: var(--bridge-soft) !important; }

.btn-primary,
.btn-begin,
button[type="submit"] {
  border: 1px solid rgba(232, 120, 139, .50) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 182, 194, .20), transparent 32%),
    linear-gradient(180deg, #8b3040, #491923 72%, #331019) !important;
  color: var(--bridge-strong) !important;
  box-shadow: 0 0 22px rgba(190, 78, 98, .20), inset 0 1px 0 rgba(255,215,224,.18) !important;
}
.card-link,
.research-link,
main a:not(.btn-primary):not(.btn-begin) { color: var(--bridge-blue); }

input,
textarea,
select {
  border: 1px solid var(--bridge-line) !important;
  border-radius: 8px !important;
  background: rgba(3, 8, 13, .82) !important;
  color: var(--bridge-strong) !important;
}
input:focus,
textarea:focus,
select:focus {
  border-color: rgba(120, 220, 255, .68) !important;
  box-shadow: 0 0 0 3px rgba(120, 220, 255, .10) !important;
}

footer {
  border-color: var(--bridge-line) !important;
  color: #8e9aa5 !important;
  background: rgba(3, 6, 10, .42);
}

@media (max-width: 760px) {
  main { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  .work-card { padding: 20px !important; }
}
