:root {
  --ink: #18252e;
  --muted: #53636e;
  --paper: #f5f8fa;
  --line: #d4dfe5;
  --cyan: #70e9f2;
  --dark: #111d26;
  --steel: #b6c5ce;
  --white: #fff;
  --blue: #006676;
  font-family: Inter, Arial, Helvetica, sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-synthesis: none;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
}
a {
  color: inherit;
  text-underline-offset: 4px;
}
button,
input,
textarea,
select {
  font: inherit;
}
button,
a,
input,
select,
textarea,
summary {
  -webkit-tap-highlight-color: transparent;
}
button {
  cursor: pointer;
}
button:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}
a,
button {
  touch-action: manipulation;
}
h1,
h2,
h3,
p {
  margin: 0 0 1rem;
}
h1 {
  font-size: clamp(2.5rem, 4.5vw, 4.8rem);
  letter-spacing: -0.055em;
  line-height: 1.08;
  font-weight: 600;
}
h2 {
  font-size: clamp(1.75rem, 3vw, 2.7rem);
  letter-spacing: -0.04em;
  line-height: 1.15;
  font-weight: 600;
}
h3 {
  font-size: 1.2rem;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: -0.02em;
}
p,
li {
  line-height: 1.65;
}
p {
  color: var(--muted);
}
img {
  max-width: 100%;
  object-fit: contain;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid #008da1;
  outline-offset: 4px;
}
main:focus {
  outline: none;
}
.container {
  width: min(1200px, calc(100% - 64px));
  margin: auto;
}
.skip-link {
  position: fixed;
  left: 16px;
  top: -100px;
  background: var(--white);
  padding: 16px;
  z-index: 30;
}
.skip-link:focus {
  top: 12px;
}
.site-header {
  background: var(--white);
  border-bottom: 1px solid var(--line);
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 156px;
}
.brand {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.brand img {
  height: 150px;
  width: 225px;
  max-width: none;
}
.site-header nav {
  display: flex;
  gap: 28px;
}
.site-header nav a {
  text-decoration: none;
  font-size: 0.9rem;
  padding: 12px 0;
}
.site-header nav a[aria-current="page"] {
  border-bottom: 2px solid var(--blue);
}
.header-actions {
  display: flex;
  gap: 24px;
  align-items: center;
}
.login-link {
  font-size: 0.9rem;
  white-space: nowrap;
  text-decoration: none;
  font-weight: 600;
}
.button {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 13px 20px;
  border: 1px solid transparent;
  border-radius: 5px;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.3;
}
.primary {
  background: var(--cyan);
  color: #102129;
  border-color: var(--cyan);
}
.primary:hover {
  background: #a0f4fa;
}
.secondary {
  background: white;
  color: var(--ink);
  border-color: var(--line);
}
.secondary:hover {
  background: #e7eff3;
}
.header-actions .primary {
  background: var(--ink);
  color: white;
  border-color: var(--ink);
  font-size: 0.8rem;
  padding: 12px 16px;
}
.menu-toggle {
  display: none;
}
.hero {
  background: var(--dark);
  color: #f4f8fb;
  padding: 88px 0 84px;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 72px;
  align-items: center;
}
.hero h1 {
  font-size: clamp(2.7rem, 4.2vw, 4.1rem);
}
.hero h1 em {
  font-style: normal;
  color: var(--cyan);
}
.hero .lead {
  color: #bccbd4;
  font-size: 1.12rem;
  max-width: 570px;
  margin: 28px 0;
}
.hero-note {
  color: #bccbd4;
  font-size: 0.8rem;
  margin: 18px 0 0;
}
.eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 0.7rem;
  font-weight: 700;
  color: var(--blue);
  margin-bottom: 22px;
}
.hero .eyebrow {
  color: var(--cyan);
}
.hero-card {
  padding: 30px;
  border: 1px solid #40505b;
  border-radius: 10px;
  background: #192833;
}
.hero-card > .eyebrow {
  display: block;
}
.hero-step {
  display: flex;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid #344650;
}
.hero-step b {
  color: var(--cyan);
  font-weight: 400;
  font-size: 0.8rem;
  padding-top: 4px;
}
.hero-step span {
  font-size: 1.15rem;
}
.hero-step small {
  display: block;
  color: #b4c6d0;
  font-size: 0.83rem;
  margin-top: 8px;
  line-height: 1.5;
}
.hero-card > a {
  display: inline-block;
  margin-top: 28px;
  font-size: 0.83rem;
  color: var(--cyan);
}
.section {
  padding-top: 80px;
  padding-bottom: 80px;
}
.section-heading {
  margin-bottom: 40px;
  max-width: 650px;
}
.section-heading p:last-child {
  max-width: 590px;
}
.service-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.service-card {
  padding: 28px 25px 25px 0;
}
.service-card + .service-card {
  padding-left: 25px;
  border-left: 1px solid var(--line);
}
.serial {
  font-size: 0.73rem;
  font-weight: 700;
  color: var(--blue);
  display: block;
  margin-bottom: 30px;
}
.service-card h3 {
  min-height: 50px;
}
.service-card p {
  font-size: 0.9rem;
}
.demo-section {
  background: #e8eff3;
}
.assessment-demo {
  background: white;
  border: 1px solid #c2d1da;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 15px 40px #1725300b;
}
.demo-top {
  background: var(--dark);
  color: white;
  padding: 16px 24px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
}
.demo-badge {
  color: var(--cyan);
}
.demo-question {
  padding: 28px 28px 10px;
}
.demo-question h2 {
  font-size: 1.7rem;
  max-width: 800px;
}
.demo-label {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
}
.demo-agent {
  display: flex;
  gap: 20px;
  align-items: center;
  padding: 14px 28px;
  background: #f0f7f8;
  border-block: 1px solid #d9e7e8;
  font-size: 0.78rem;
}
.demo-agent span {
  font-weight: 600;
  color: #006676;
  white-space: nowrap;
}
.demo-agent p {
  margin: 0;
}
.demo-body {
  display: grid;
  grid-template-columns: 310px 1fr;
}
.finding-selector {
  background: #f8fafb;
  padding: 24px;
  border-right: 1px solid var(--line);
}
.finding-selector button {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  text-align: left;
  border: 1px solid transparent;
  background: transparent;
  padding: 16px 12px;
  margin-bottom: 10px;
  border-radius: 5px;
  color: var(--ink);
  line-height: 1.5;
}
.finding-selector button[aria-pressed="true"] {
  border-color: #88c6cf;
  background: #e6f5f7;
}
.finding-selector button small {
  display: block;
  font-size: 0.7rem;
  margin-bottom: 4px;
  color: #405c69;
}
.finding-selector button strong {
  font-size: 0.85rem;
  font-weight: 600;
  display: block;
}
.finding-number {
  font-size: 0.7rem;
  color: var(--blue);
  padding-top: 3px;
}
.finding-selector svg {
  flex-shrink: 0;
  margin-top: 4px;
}
.finding-detail {
  padding: 30px;
}
.evidence-label {
  display: flex;
  gap: 8px;
  align-items: center;
  text-transform: uppercase;
  font-size: 0.67rem;
  letter-spacing: 0.1em;
  color: var(--blue);
}
.evidence-source {
  font-size: 0.75rem;
  margin: 12px 0;
}
.evidence-extract {
  background: #162b37;
  color: #d2edf1;
  font-family: monospace;
  font-size: 0.82rem;
  padding: 20px;
  border-radius: 4px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.demo-finding,
.demo-action {
  margin-top: 22px;
}
.demo-finding h3,
.demo-action h3,
.review-line h3 {
  font-size: 0.83rem;
  margin-bottom: 8px;
}
.finding-detail p {
  font-size: 0.86rem;
}
.demo-action > div {
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.priority-badge {
  font-size: 0.65rem;
  background: #eef3f6;
  padding: 5px 8px;
  height: max-content;
  white-space: nowrap;
}
.priority-reason {
  font-size: 0.76rem !important;
}
.review-line {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--line);
  padding-top: 22px;
  margin-top: 22px;
}
.sample-approval {
  border: 1px solid #8299a7;
  background: white;
  padding: 12px;
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 0.75rem;
  border-radius: 4px;
  flex-shrink: 0;
}
.review-line p {
  margin: 0;
}
.retest-line {
  background: #f2f6f8;
  padding: 16px;
  margin-top: 20px;
  font-size: 0.8rem;
}
.retest-line p {
  margin: 8px 0;
}
.retest-line span {
  font-size: 0.75rem;
}
.demo-disclaimer {
  border-top: 1px solid var(--line);
  padding: 16px 24px;
  margin: 0;
  font-size: 0.72rem;
}
.benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
}
.benefits span {
  display: block;
  color: var(--blue);
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 18px;
}
.benefits h2 {
  font-size: 1.65rem;
}
.status-note {
  padding: 24px;
  border-left: 3px solid #007888;
  background: #eaf1f4;
  margin-top: 35px;
}
.status-note strong {
  font-size: 0.9rem;
}
.status-note p {
  margin: 8px 0 0;
  font-size: 0.88rem;
}
.cta-strip {
  padding: 55px 0;
  background: var(--dark);
  color: white;
}
.cta-strip > .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.cta-strip .eyebrow {
  color: var(--cyan);
}
.cta-strip h2 {
  font-size: 2rem;
  margin-bottom: 0;
}
footer {
  background: white;
  border-top: 1px solid var(--line);
  padding: 50px 0 22px;
}
.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 48px;
}
.footer-grid > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.footer-grid a {
  font-size: 0.83rem;
}
.footer-grid p {
  font-size: 0.8rem;
  margin: 0;
}
.footer-grid strong {
  font-size: 1.1rem;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid var(--line);
  margin-top: 38px;
  padding-top: 24px;
  font-size: 0.72rem;
  color: var(--muted);
}
.footer-bottom > div {
  display: flex;
  gap: 24px;
}
.small {
  font-size: 0.8rem;
  line-height: 1.6;
}
.page-intro {
  padding-top: 70px;
  padding-bottom: 48px;
  max-width: 1200px;
  border-bottom: 1px solid var(--line);
}
.page-intro h1 {
  max-width: 900px;
  font-size: clamp(2.5rem, 4.4vw, 4rem);
}
.lead {
  font-size: 1.13rem;
  line-height: 1.6;
  max-width: 730px;
}
.journey {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px 60px;
}
.journey article {
  display: flex;
  gap: 22px;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--line);
}
.journey .serial {
  margin-top: 8px;
}
.journey h2 {
  font-size: 1.65rem;
  margin-top: 16px;
}
.badge {
  display: inline-block;
  border: 1px solid #c0d2dc;
  background: #eff6f8;
  color: #235260;
  font-size: 0.65rem;
  letter-spacing: 0.04em;
  padding: 6px 10px;
  border-radius: 20px;
  white-space: nowrap;
  width: max-content;
}
.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}
.pale {
  background: #e7eff3;
}
.panel {
  background: white;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 30px;
  min-width: 0;
}
.panel h2 {
  font-size: 1.65rem;
}
.method-line {
  font-size: 1.4rem;
  line-height: 1.9;
  color: var(--ink);
}
.contact-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 75px;
}
.contact-grid aside {
  align-self: start;
}
.contact-grid aside > a {
  display: inline-block;
  margin-top: 30px;
}
.form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.form p {
  margin-bottom: 0;
}
.field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.85rem;
  line-height: 1.5;
}
.field > span {
  font-weight: 600;
}
.field small {
  color: var(--muted);
}
input,
select,
textarea {
  padding: 12px 13px;
  border: 1px solid #9fafb8;
  border-radius: 4px;
  background: white;
  color: var(--ink);
  min-height: 46px;
  max-width: 100%;
  width: 100%;
  font-size: 1rem;
}
textarea {
  resize: vertical;
}
input[type="checkbox"] {
  width: 20px;
  min-height: 20px;
  accent-color: #006676;
}
.honeypot {
  position: absolute;
  left: -10000px;
}
.notice {
  background: #edf3f7;
  padding: 16px 18px;
  border-left: 3px solid #527486;
  font-size: 0.85rem;
  line-height: 1.7;
  color: #243d4c;
}
.feedback {
  color: #194d5d;
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}
.feedback:empty {
  display: none;
}
.error {
  color: #9d2020;
}
.button-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}
.draft-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
  background: #edf3f6;
  padding: 18px;
  max-height: 340px;
  overflow: auto;
}
.legal {
  max-width: 850px;
}
.legal h2 {
  font-size: 1.6rem;
  margin-top: 38px;
}
.legal p {
  font-size: 0.97rem;
}
.auth-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  padding-top: 80px;
  padding-bottom: 100px;
  align-items: start;
}
.auth-layout h1 {
  font-size: 3rem;
}
.auth-links {
  display: flex;
  align-items: center;
  gap: 24px;
}
.auth-layout > div > a {
  display: inline-block;
  margin-top: 20px;
}
.app-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 32px;
  background: var(--dark);
  color: white;
  gap: 24px;
}
.app-header a {
  font-size: 0.85rem;
}
.app-wordmark {
  font-size: 1.6rem !important;
  letter-spacing: 0.08em;
  text-decoration: none;
  font-weight: 700;
}
.app-wordmark span {
  display: block;
  font-size: 0.65rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  margin-top: 5px;
  color: #b7cbd5;
}
.app-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  min-height: calc(100vh - 90px);
}
.sidebar {
  padding: 28px 18px;
  background: white;
  border-right: 1px solid var(--line);
}
.sidebar select {
  font-size: 0.75rem;
}
.sidebar nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 25px 0 40px;
}
.sidebar nav button {
  display: flex;
  justify-content: space-between;
  padding: 13px 12px;
  text-align: left;
  color: var(--muted);
  border: 0;
  background: transparent;
  border-radius: 5px;
  font-size: 0.84rem;
  min-height: 46px;
}
.sidebar nav button[aria-current="page"] {
  background: #e1f4f6;
  color: #075765;
  font-weight: 600;
}
.sidebar-bottom {
  border-top: 1px solid var(--line);
  padding: 25px 12px;
  font-size: 0.8rem;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sidebar-bottom p {
  font-size: 0.7rem;
}
.app-main {
  padding: 30px 40px 80px;
  min-width: 0;
  max-width: 1500px;
  width: 100%;
}
.app-heading {
  margin: 35px 0 22px;
}
.app-heading h1 {
  font-size: 2.7rem;
}
.app-heading .eyebrow {
  margin-bottom: 15px;
}
.workspace-banner {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  background: #e4edf2;
  padding: 13px 16px;
  font-size: 0.75rem;
  border-radius: 4px;
}
.workspace-banner.sample {
  background: #fff0ca;
  color: #584407;
}
.workspace-banner span {
  line-height: 1.5;
}
.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin: 28px 0;
}
.stats article {
  padding: 22px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 7px;
}
.stats span {
  display: block;
  color: var(--muted);
  font-size: 0.8rem;
}
.stats strong {
  display: block;
  font-size: 2.5rem;
  font-weight: 500;
  margin-top: 15px;
}
.section-title {
  margin-top: 40px;
}
.list-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
  margin: 25px 0;
}
.search-label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.78rem;
  min-width: 230px;
}
.list-toolbar .button {
  white-space: nowrap;
}
.record-list {
  display: grid;
  gap: 18px;
}
.record-card {
  background: white;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 24px;
  min-width: 0;
  overflow-wrap: anywhere;
}
.record-title {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 20px;
}
.record-title .eyebrow {
  font-size: 0.6rem;
  margin-bottom: 10px;
  display: block;
}
.record-card p {
  font-size: 0.88rem;
  white-space: pre-wrap;
}
.record-card a {
  font-size: 0.8rem;
}
.record-footer {
  display: flex;
  gap: 24px;
  margin-top: 20px;
  border-top: 1px solid #e5ebee;
  padding-top: 16px;
}
.text-button {
  border: 0;
  background: none;
  color: var(--blue);
  font-size: 0.82rem;
  font-weight: 600;
  min-height: 40px;
  padding: 8px 0;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.empty {
  border: 1px dashed #afc3cd;
  border-radius: 7px;
  padding: 35px;
  text-align: center;
}
.empty p {
  font-size: 0.9rem;
  margin-bottom: 0;
}
.agent-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 30px;
}
.agent-grid .panel {
  position: relative;
}
.agent-grid .badge {
  position: absolute;
  top: 27px;
  right: 26px;
}
.agent-grid h2 {
  font-size: 1.5rem;
  margin-top: 18px;
}
.agent-grid .panel:has(> .badge:first-child) h2 {
  margin-top: 45px;
}
.assessment-sections > section {
  padding: 32px 0;
  border-bottom: 1px solid var(--line);
}
.assessment-sections h2 {
  font-size: 1.6rem;
}
.metric {
  display: block;
  font-size: 2rem;
  padding: 20px 0;
  color: var(--blue);
}
details {
  border-bottom: 1px solid var(--line);
  padding: 17px 0;
}
summary {
  cursor: pointer;
  font-weight: 600;
  padding: 8px 0;
}
details p {
  margin: 14px 0 0;
}
.access-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
  font-size: 0.85rem;
  overflow-wrap: anywhere;
}
.check {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
}
.token {
  display: block;
  overflow-wrap: anywhere;
  font-size: 0.85rem;
  margin-top: 14px;
}
fieldset {
  border: 1px solid var(--line);
  border-radius: 4px;
}
legend {
  font-size: 0.85rem;
  padding: 0 8px;
}
.record-dialog {
  border: 1px solid #9fb3bf;
  border-radius: 10px;
  width: min(700px, calc(100% - 32px));
  max-height: 90dvh;
  padding: 28px;
  background: var(--paper);
  color: var(--ink);
}
.record-dialog::backdrop {
  background: #061722b0;
}
.dialog-top {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 20px;
  margin-bottom: 20px;
}
.dialog-top h2 {
  font-size: 1.6rem;
}
.record-dialog .form {
  gap: 17px;
}
.record-dialog .feedback {
  margin-top: 18px;
}
.preserve {
  white-space: pre-wrap;
}
.record-card pre {
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
@media (max-width: 1050px) {
  .header-inner {
    gap: 16px;
  }
  .site-header nav {
    gap: 18px;
  }
  .header-actions {
    gap: 16px;
  }
  .hero-grid {
    gap: 36px;
  }
  .app-layout {
    grid-template-columns: 210px 1fr;
  }
  .app-main {
    padding: 25px;
  }
  .app-main .split {
    grid-template-columns: 1fr;
  }
  .service-grid {
    grid-template-columns: 1fr 1fr;
  }
  .service-card:nth-child(3) {
    border-left: 0;
    padding-left: 0;
  }
  .service-card:nth-child(n + 3) {
    border-top: 1px solid var(--line);
  }
  .contact-grid,
  .auth-layout {
    gap: 40px;
  }
}
@media (max-width: 800px) {
  .container {
    width: calc(100% - 40px);
  }
  .header-inner {
    flex-wrap: wrap;
    gap: 10px;
    padding-bottom: 16px;
  }
  .brand img {
    width: 138px;
    height: 92px;
  }
  .menu-toggle {
    display: block;
    margin-left: auto;
    border: 1px solid var(--line);
    background: white;
    border-radius: 4px;
    padding: 10px 14px;
    min-height: 44px;
  }
  .site-header nav {
    display: none;
    order: 4;
    width: 100%;
    flex-direction: column;
    gap: 0;
  }
  .site-header nav.open {
    display: flex;
  }
  .site-header nav a {
    padding: 15px 8px;
    border-bottom: 1px solid var(--line);
  }
  .header-actions {
    width: 100%;
    justify-content: space-between;
  }
  .header-actions .primary {
    flex: 1;
  }
  .header-actions .login-link {
    padding: 12px 18px;
  }
  .hero {
    padding: 55px 0;
  }
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }
  .hero h1 {
    max-width: 650px;
  }
  .hero-card {
    padding: 24px;
  }
  .hero-step {
    padding: 18px 0;
  }
  .hero .lead {
    font-size: 1rem;
  }
  .section {
    padding-block: 50px;
  }
  .demo-body {
    grid-template-columns: 1fr;
  }
  .finding-selector {
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 20px;
  }
  .finding-selector button {
    margin: 0 0 6px;
    padding: 12px;
  }
  .finding-selector button > span:nth-child(2) {
    flex: 1;
  }
  .finding-detail {
    padding: 24px;
  }
  .benefits {
    gap: 28px;
  }
  .benefits h2 {
    font-size: 1.35rem;
  }
  .benefits p {
    font-size: 0.9rem;
  }
  .footer-grid {
    gap: 28px;
  }
  .page-intro {
    padding-top: 50px;
  }
  .contact-grid,
  .auth-layout {
    grid-template-columns: 1fr;
  }
  .contact-grid aside {
    max-width: 600px;
  }
  .auth-layout {
    padding-block: 50px;
  }
  .auth-layout h1 {
    font-size: 2.6rem;
  }
  .app-header {
    padding: 18px 20px;
    align-items: start;
    flex-wrap: wrap;
  }
  .app-header .button-row {
    gap: 18px;
  }
  .app-layout {
    grid-template-columns: 1fr;
  }
  .sidebar {
    padding: 18px 20px;
    border-bottom: 1px solid var(--line);
    border-right: 0;
  }
  .sidebar > .field {
    max-width: 400px;
  }
  .sidebar nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
    margin: 15px 0 0;
  }
  .sidebar nav button {
    font-size: 0.75rem;
    gap: 8px;
  }
  .sidebar nav span {
    display: none;
  }
  .sidebar-bottom {
    display: none;
  }
  .app-main {
    padding: 25px 20px 50px;
  }
  .workspace-banner {
    flex-direction: column;
    gap: 5px;
  }
  .app-heading h1 {
    font-size: 2.2rem;
  }
  .stats {
    gap: 10px;
  }
  .stats article {
    padding: 16px;
  }
  .stats strong {
    font-size: 2rem;
  }
  .agent-grid {
    gap: 16px;
  }
  .journey {
    gap: 24px;
  }
  .journey h2 {
    font-size: 1.45rem;
  }
}
@media (max-width: 520px) {
  .container {
    width: calc(100% - 32px);
  }
  h1 {
    font-size: 2.65rem;
  }
  .hero h1 {
    font-size: 2.65rem;
  }
  .hero-card {
    padding: 23px;
  }
  .hero-step span {
    font-size: 1rem;
  }
  .service-grid {
    grid-template-columns: 1fr;
  }
  .service-card,
  .service-card + .service-card {
    padding: 24px 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .service-card:first-child {
    border-top: 0;
  }
  .serial {
    margin-bottom: 18px;
  }
  .service-card h3 {
    min-height: 0;
  }
  .service-card p {
    margin-bottom: 0;
  }
  .section-heading {
    margin-bottom: 25px;
  }
  .demo-top {
    padding: 16px;
    flex-wrap: wrap;
    font-size: 0.62rem;
  }
  .demo-question {
    padding: 24px 18px 10px;
  }
  .demo-question h2 {
    font-size: 1.35rem;
  }
  .demo-agent {
    display: block;
    padding: 16px 18px;
  }
  .demo-agent p {
    margin-top: 5px;
  }
  .finding-detail {
    padding: 20px 18px;
  }
  .demo-action > div {
    align-items: start;
  }
  .review-line {
    display: block;
  }
  .sample-approval {
    margin-top: 14px;
  }
  .demo-disclaimer {
    padding: 16px 18px;
  }
  .benefits {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .benefits h2 {
    font-size: 1.6rem;
  }
  .benefits p {
    margin: 0;
  }
  .cta-strip > .container {
    display: block;
  }
  .cta-strip .button {
    margin-top: 25px;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 30px 16px;
  }
  .footer-grid > div:first-child {
    grid-column: 1/-1;
  }
  .footer-bottom {
    flex-direction: column;
  }
  .footer-bottom > div {
    flex-wrap: wrap;
    gap: 16px;
  }
  .journey {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .split {
    grid-template-columns: 1fr;
  }
  .panel {
    padding: 22px;
  }
  .page-intro h1 {
    font-size: 2.5rem;
  }
  .legal {
    padding-top: 30px;
  }
  .legal p {
    font-size: 0.92rem;
  }
  .method-line {
    font-size: 1.2rem;
  }
  .auth-links {
    flex-wrap: wrap;
  }
  .app-header .button-row {
    gap: 14px;
  }
  .app-header .button-row a {
    font-size: 0.74rem;
  }
  .app-header .button-row .button {
    padding: 9px 12px;
    font-size: 0.75rem;
  }
  .sidebar nav {
    grid-template-columns: repeat(2, 1fr);
  }
  .sidebar nav button {
    font-size: 0.78rem;
  }
  .stats {
    grid-template-columns: 1fr 1fr;
  }
  .stats span {
    font-size: 0.7rem;
  }
  .list-toolbar {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }
  .search-label {
    min-width: 0;
  }
  .agent-grid {
    grid-template-columns: 1fr;
  }
  .record-title {
    flex-wrap: wrap;
    gap: 10px;
  }
  .record-card {
    padding: 20px;
  }
  .app-heading h1 {
    font-size: 2rem;
  }
  .record-dialog {
    padding: 20px;
  }
  .dialog-top {
    gap: 12px;
  }
  .dialog-top h2 {
    font-size: 1.3rem;
  }
  .access-row {
    align-items: start;
    flex-direction: column;
  }
  .empty {
    padding: 24px;
  }
  .header-actions .primary {
    font-size: 0.73rem;
  }
  .login-link {
    font-size: 0.8rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}

/* Public landing page refinement, September 2026. */
.landing-hero { padding: 92px 0; }
.hero-actions { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.quiet-link { color: #e1edf2; font-size: .88rem; text-decoration: none; padding: 12px 0; }
.quiet-link:hover, .text-link:hover { text-decoration: underline; }
.deliverable-card { border-radius: 8px; padding: 34px; }
.deliverable-card h2 { font-size: 1.85rem; max-width: 340px; line-height: 1.2; }
.deliverable-card .hero-step { padding: 20px 0; }
.deliverable-card .hero-step span { font-size: 1rem; font-weight: 600; }
.deliverable-card .hero-step small { font-weight: 400; }
.heading-row { display: flex; align-items: end; justify-content: space-between; gap: 32px; max-width: none; }
.heading-row h2 { max-width: 600px; margin-bottom: 0; }
.text-link { color: var(--blue); font-size: .9rem; font-weight: 600; white-space: nowrap; }
.landing-services .service-card { padding-top: 34px; padding-bottom: 34px; }
.service-card h3 a { text-decoration: none; }
.service-card h3 a:hover { text-decoration: underline; }
.service-card p { margin-bottom: 0; }
.development-note { display: grid; grid-template-columns: 1fr 2fr; gap: 32px; padding-top: 30px; margin-top: 30px; border-top: 1px solid #bfced7; }
.development-note strong { font-size: 1rem; line-height: 1.6; }
.development-note p { font-size: .9rem; margin: 0; }
.service-details { padding-top: 0; }
.service-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; border-bottom: 1px solid var(--line); padding: 48px 0; scroll-margin-top: 24px; }
.service-detail h2 { font-size: clamp(1.8rem, 2.7vw, 2.5rem); max-width: 440px; }
.service-detail .eyebrow { margin-bottom: 18px; }
.service-output { padding-left: 20px; border-left: 2px solid #008092; margin-bottom: 0; font-size: .9rem; }
.service-output strong { display: block; color: var(--ink); margin-bottom: 6px; }
.planned-services { align-items: center; gap: 70px; }
.cta-note { color: #bfced8; font-size: .9rem; margin: 18px 0 0; }
.enquiry-dialog { width: min(690px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; overflow: auto; border: 1px solid #9fb3bf; border-radius: 10px; padding: 32px; color: var(--ink); background: #fff; box-shadow: 0 24px 90px #06172255; }
.enquiry-dialog::backdrop { background: #061722c9; }
.enquiry-heading { display: flex; align-items: start; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.enquiry-heading .eyebrow { margin-bottom: 12px; }
.enquiry-heading h2 { font-size: 1.9rem; margin: 0; }
.close-enquiry { flex-shrink: 0; background: #f0f5f7; border: 1px solid var(--line); border-radius: 50%; width: 44px; height: 44px; font-size: 1.6rem; color: var(--ink); }
.enquiry-form { gap: 18px; }
@media (max-width: 800px) {
  .landing-hero { padding: 52px 0; }
  .heading-row { display: block; }
  .heading-row .text-link { display: inline-block; margin-top: 20px; }
  .service-detail { gap: 35px; }
  .planned-services { gap: 30px; }
}
@media (max-width: 520px) {
  .landing-hero h1 { font-size: 2.5rem; }
  .deliverable-card { padding: 24px; }
  .deliverable-card h2 { font-size: 1.6rem; }
  .development-note, .service-detail { grid-template-columns: 1fr; gap: 18px; }
  .service-detail { padding: 32px 0; }
  .service-detail h2 { margin-bottom: 0; }
  .enquiry-dialog { padding: 22px; max-height: calc(100dvh - 24px); width: calc(100% - 24px); }
  .enquiry-heading h2 { font-size: 1.5rem; }
  .enquiry-heading { gap: 12px; }
  .hero-actions { gap: 12px 24px; }
}

/* Header grouping and quieter public-page hierarchy. */
.header-inner { min-height: 108px; }
.header-controls { margin-left: auto; display: flex; align-items: center; gap: 34px; }
.site-header nav { gap: 28px; }
.site-header nav a { font-size: .88rem; font-weight: 500; }
.header-actions { gap: 24px; }
.header-actions .primary { border-radius: 3px; min-height: 44px; }
.landing-hero { padding: 80px 0 88px; }
.landing-hero .hero-grid { grid-template-columns: 1.4fr 1fr; gap: 80px; }
.landing-hero h1 { font-weight: 500; letter-spacing: -.047em; font-size: clamp(2.5rem, 4vw, 4rem); line-height: 1.12; }
.landing-hero .lead { font-size: 1.08rem; line-height: 1.7; margin: 28px 0 22px; }
.landing-hero .hero-note { margin-top: 0; }
.deliverable-card { background: transparent; padding: 12px 0 12px 36px; border: 0; border-left: 1px solid #40505b; border-radius: 0; }
.deliverable-card h2 { font-weight: 500; font-size: 1.7rem; }
.deliverable-card .hero-step { padding: 18px 0; }
.deliverable-card .hero-step span { font-weight: 500; }
.deliverable-card > a { margin-top: 22px; }
.service-card h3 { font-size: 1.08rem; }
.service-detail h2 { font-weight: 500; }
.footer-grid { grid-template-columns: 1fr auto; align-items: start; }
.footer-grid > div:last-child { flex-direction: row; flex-wrap: wrap; justify-content: end; gap: 24px; }
@media (max-width: 1050px) {
  .header-controls { gap: 26px; }
  .header-actions { gap: 20px; }
  .landing-hero .hero-grid { gap: 42px; }
}
@media (max-width: 800px) {
  .header-controls { display: contents; }
  .header-inner { min-height: auto; }
  .site-header nav { gap: 0; }
  .landing-hero { padding: 52px 0; }
  .landing-hero .hero-grid { grid-template-columns: 1fr; gap: 38px; }
  .deliverable-card { padding: 24px 0 0; border-left: 0; border-top: 1px solid #40505b; }
  .deliverable-card h2 { max-width: 440px; }
}
@media (max-width: 520px) {
  .landing-hero h1 { font-size: 2.4rem; }
  .landing-hero .lead { font-size: 1rem; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-grid > div:last-child { justify-content: start; gap: 20px; }
}

/* Compact Login card; owner registration keeps its full-page layout. */
.login-dialog { width: min(460px, calc(100% - 32px)); padding: 32px; border-radius: 8px; }
.login-dialog .enquiry-heading { margin-bottom: 26px; }
.login-dialog .enquiry-heading h2 { font-size: 1.85rem; }
.login-dialog .eyebrow { font-size: .65rem; letter-spacing: .1em; }
.login-form { gap: 20px; }
.login-form .auth-links { justify-content: space-between; gap: 18px; border-top: 1px solid var(--line); padding-top: 20px; }
.login-form .auth-links > a { font-size: .82rem; }
.login-form .feedback:empty { display: none; }
@media (max-width: 520px) {
  .login-dialog { padding: 26px; }
  .login-form .auth-links { gap: 14px; }
}
.launch-contact { display:flex; gap:12px; flex-wrap:wrap; margin-top:20px; }
.launch-status { border:1px solid #d8d8d8; padding:16px; margin-top:18px; border-radius:8px; }
.company-line { margin-top:8px; }

/* PRAI public launch refinement v2 */
.header-controls { display:flex; align-items:center; gap:34px; }
.hero-copy { max-width: 690px; }
.hero-cta { display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin:30px 0 10px; }
.hero-primary { background:var(--cyan); color:#102129; border-color:var(--cyan); }
.text-link { color:#e3f7fa; font-weight:600; text-decoration:none; border-bottom:1px solid #57717b; padding-bottom:4px; }
.proof-strip { background:#fff; border-bottom:1px solid var(--line); }
.proof-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.proof-grid > div { padding:27px 28px 25px 0; }
.proof-grid > div + div { border-left:1px solid var(--line); padding-left:28px; }
.proof-grid strong { display:block; font-size:.85rem; margin-bottom:6px; }
.proof-grid span { color:var(--muted); font-size:.78rem; line-height:1.45; display:block; }
.service-kicker { display:block; color:var(--blue); font-size:.7rem; font-weight:700; letter-spacing:.12em; margin-bottom:22px; }
.process-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:start; }
.process-card { background:#fff; border:1px solid #cad7dd; border-radius:12px; overflow:hidden; box-shadow:0 16px 40px rgba(17,29,38,.05); }
.process-card > div { display:grid; grid-template-columns:48px 120px 1fr; gap:14px; align-items:start; padding:24px 26px; border-bottom:1px solid var(--line); }
.process-card > div:last-child { border-bottom:0; }
.process-card span { color:var(--blue); font-size:.72rem; font-weight:700; }
.process-card strong { font-size:.95rem; }
.process-card p { margin:0; font-size:.86rem; }
.assessment-section { background:#111d26; color:#fff; }
.assessment-section .eyebrow { color:var(--cyan); }
.assessment-section p { color:#b9c8d0; }
.assessment-grid { display:grid; grid-template-columns:1fr .95fr; gap:72px; align-items:center; }
.assessment-panel { background:#192833; border:1px solid #40505b; border-radius:12px; padding:30px; }
.assessment-panel h3 { font-size:1.4rem; }
.social-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:24px; }
.social-button { display:flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:13px 14px; border:1px solid #51636e; border-radius:7px; color:#fff; text-decoration:none; font-weight:600; font-size:.82rem; background:#13222c; }
.social-button:hover { border-color:var(--cyan); background:#18303b; }
.social-button svg { width:20px; height:20px; fill:var(--cyan); flex:0 0 auto; }
.footer-social { min-width:180px; }
@media (max-width: 820px) {
  .proof-grid, .process-grid, .assessment-grid { grid-template-columns:1fr; }
  .proof-grid > div + div { border-left:0; border-top:1px solid var(--line); padding-left:0; }
  .process-grid, .assessment-grid { gap:36px; }
  .process-card > div { grid-template-columns:36px 1fr; }
  .process-card p { grid-column:2; }
  .social-actions { grid-template-columns:1fr; }
  .header-controls { gap:18px; }
}

/* PRAI v3: unnumbered sections, icon-only social links and assessment page. */
.process-card > div { grid-template-columns: 104px minmax(0, 1fr); gap: 20px; }
.process-card p { grid-column: auto; }
.footer-grid > .social-icons { display: flex; flex-direction: row; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; }
.social-icon { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; color: var(--ink); text-decoration: none; transition: background-color .15s, color .15s; }
.social-icon:hover { background: #e5f1f4; color: var(--blue); }
.social-icon svg { display: block; width: 22px; height: 22px; fill: currentColor; }
.assessment-cta { display: flex; align-items: center; justify-content: space-between; gap: 64px; }
.assessment-cta > div { max-width: 710px; }
.assessment-cta p:last-child { margin-bottom: 0; }
.assessment-cta > .button { flex: 0 0 auto; }
.assessment-page { background: var(--paper); }
.assessment-page-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr); align-items: start; gap: 72px; }
.assessment-intro { padding-top: 18px; }
.assessment-intro h1 { font-size: clamp(2.55rem, 4.2vw, 4rem); line-height: 1.12; max-width: 460px; }
.assessment-intro .lead { margin-top: 28px; font-size: 1.08rem; }
.assessment-expectations { border-top: 1px solid var(--line); margin-top: 40px; padding-top: 30px; }
.assessment-expectations h2 { font-size: 1.38rem; letter-spacing: -.025em; }
.assessment-expectations p { font-size: .93rem; }
.assessment-safety { margin: 28px 0 0; font-size: .8rem; max-width: 370px; }
.assessment-form-panel { min-width: 0; background: #fff; padding: 34px; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 12px 40px #111d2606; }
.form-heading .eyebrow { margin-bottom: 14px; }
.form-heading h2 { font-size: 1.65rem; line-height: 1.2; letter-spacing: -.03em; margin-bottom: 24px; }
.form-status { padding: 17px 18px; background: #edf5f6; border-left: 3px solid var(--blue); border-radius: 0 6px 6px 0; margin: 0 0 26px; font-size: .85rem; line-height: 1.6; }
.form-status strong { font-weight: 600; }
.form-status p { margin: 6px 0 0; color: #35515c; font-size: .82rem; }
.form-status a { color: #005463; font-weight: 600; }
.assessment-form { margin: 0; }
.assessment-form fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.form-field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 18px; }
.form-field-grid .field { min-width: 0; gap: 7px; }
.form-field-grid .field-full { grid-column: 1 / -1; }
.field label { font-size: .82rem; font-weight: 600; }
.field .optional { font-weight: 400; color: var(--muted); }
.assessment-form input:disabled, .assessment-form select:disabled, .assessment-form textarea:disabled { background: #f5f7f8; color: #53636e; border-color: #d0dce2; cursor: not-allowed; opacity: 1; -webkit-text-fill-color: #53636e; }
.assessment-form textarea { resize: none; }
.form-privacy { font-size: .75rem; line-height: 1.6; margin: 20px 0; }
.form-submit { width: 100%; }
.form-submit:disabled { opacity: 1; background: #e4edf0; color: #53636e; border: 1px solid #d0dce2; font-size: .84rem; cursor: not-allowed; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 1000px) {
  .assessment-page-grid { gap: 36px; }
  .assessment-form-panel { padding: 28px; }
  .assessment-cta { gap: 36px; }
}
@media (max-width: 820px) {
  .process-card > div { grid-template-columns: 94px minmax(0,1fr); }
  .process-card p { grid-column: auto; }
  .assessment-page-grid { grid-template-columns: 1fr; gap: 30px; }
  .assessment-intro { padding-top: 0; }
  .assessment-intro h1 { max-width: 640px; }
  .assessment-expectations { margin-top: 26px; padding-top: 24px; }
  .assessment-safety { max-width: 600px; }
  .assessment-cta { align-items: flex-start; flex-direction: column; gap: 24px; }
}
@media (max-width: 800px) {
  .header-controls { display: contents; }
  .site-header nav { order: 4; }
  .header-actions { order: 3; }
}
@media (max-width: 520px) {
  .footer-grid > .social-icons { justify-content: flex-start; gap: 10px; }
  .process-card > div { grid-template-columns: 1fr; gap: 8px; padding: 24px; }
  .assessment-cta > .button { width: 100%; }
  .assessment-form-panel { padding: 24px 20px; }
  .form-field-grid { grid-template-columns: 1fr; gap: 17px; }
  .form-heading h2 { font-size: 1.48rem; }
  .assessment-intro h1 { font-size: 2.55rem; }
}

@media (max-width: 800px) {
  .site-header .header-inner:not(:has(.menu-toggle)) #main-nav { display: flex; flex-direction: row; width: auto; gap: 20px; }
}


/* PRAI public website v4, October 2026 */
.login-circle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--dark);color:#fff;text-decoration:none;border:1px solid var(--dark);transition:transform .15s,background .15s}
.login-circle:hover{background:var(--blue);transform:translateY(-1px)}
.login-circle svg{width:20px;height:20px;fill:currentColor}
.footer-email{display:block;margin:8px 0 12px;color:var(--blue);font-size:.9rem;font-weight:600;text-decoration:none}
.footer-email:hover{text-decoration:underline}
.dark-link{color:var(--blue);border-bottom-color:#9ab8c1}
.service-grid-six{grid-template-columns:repeat(3,1fr);border-bottom:0}
.service-grid-six .service-card{padding:30px 28px;border-bottom:1px solid var(--line)}
.service-grid-six .service-card:nth-child(3n+1){padding-left:0;border-left:0}
.service-grid-six .service-card:nth-child(3n+2),.service-grid-six .service-card:nth-child(3n+3){border-left:1px solid var(--line)}
.service-grid-six .service-card h3{min-height:auto}
.about-teaser,.about-grid,.method-grid,.two-col-detail,.private-access-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.stacked-copy p:last-child{margin-bottom:0}
.method-flow{display:flex;flex-wrap:wrap;gap:10px}
.method-flow span{display:inline-flex;padding:10px 14px;border:1px solid #bfcfd7;background:#fff;border-radius:999px;font-size:.8rem;font-weight:600}
.services-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-overview-card{padding:34px;border:1px solid var(--line);background:#fff;border-radius:12px;box-shadow:0 14px 40px rgba(17,29,38,.04)}
.service-overview-card h2{font-size:1.7rem}
.service-overview-card .eyebrow{margin-bottom:14px}
.service-overview-card p{min-height:82px}
.service-hero{background:var(--dark);color:#fff;padding:88px 0}
.service-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:center}
.service-hero .eyebrow{color:var(--cyan)}
.service-hero .lead{color:#bfd0d8;font-size:1.08rem;max-width:620px}
.service-summary{padding:30px;border:1px solid #41515b;background:#192833;border-radius:10px}
.service-summary strong{display:block;font-size:1.15rem;margin-bottom:12px}
.service-summary p{color:#b9c8d0;margin:0}
.two-col-detail h2{font-size:1.8rem}
.check-list{padding-left:1.2rem;color:var(--muted)}
.check-list li{margin:0 0 12px}
.private-access{background:#eef3f6;min-height:64vh;display:flex;align-items:center}
.private-access-card{width:min(1100px,calc(100% - 64px));margin:auto;align-items:center}
.private-access-card .panel{background:#fff}
.not-found{min-height:70vh;padding-top:120px}
@media (max-width:1050px){.header-controls{gap:22px}.site-header nav{gap:20px}.service-grid-six{grid-template-columns:repeat(2,1fr)}.service-grid-six .service-card:nth-child(3n+2),.service-grid-six .service-card:nth-child(3n+3){border-left:0}.service-grid-six .service-card:nth-child(even){border-left:1px solid var(--line);padding-left:28px}.service-grid-six .service-card:nth-child(odd){padding-left:0}}
@media (max-width:820px){.about-teaser,.about-grid,.method-grid,.two-col-detail,.private-access-card,.service-hero-grid{grid-template-columns:1fr;gap:34px}.services-overview-grid{grid-template-columns:1fr}.service-hero{padding:58px 0}.private-access-card{width:min(100% - 40px,900px)}}
@media (max-width:800px){.site-header nav a{padding:16px 14px}.header-actions{position:absolute;right:84px;top:30px}.login-circle{width:42px;height:42px}.site-header nav.open{padding-top:14px}.service-grid-six{grid-template-columns:1fr}.service-grid-six .service-card,.service-grid-six .service-card:nth-child(even){border-left:0;padding-left:0}.footer-bottom{gap:16px;flex-wrap:wrap}}
@media (max-width:520px){.header-actions{right:92px;top:33px}.login-circle{width:40px;height:40px}.service-overview-card{padding:26px}.service-hero{padding:48px 0}.private-access-card{width:calc(100% - 32px)}.service-grid-six .service-card{padding-right:0}}


/* PRAI v5 visual system: serious, restrained, evidence-led. */
:root{
  --ink:#252a27;
  --muted:#667067;
  --paper:#f6f2ea;
  --line:#d8d0c4;
  --cyan:#c5ad88;
  --dark:#1b201e;
  --steel:#b8b1a7;
  --white:#fffdf9;
  --blue:#6d786f;
  --bronze:#9b7a52;
  --bronze-soft:#c5ad88;
  --sage:#667369;
  --sage-dark:#3f4c45;
  --stone:#ebe5da;
}
body{background:var(--paper);color:var(--ink)}
.site-header{background:#fffdf9;border-color:#e1dbd1}
.site-header nav a[aria-current="page"]{border-color:var(--bronze)}
.login-circle{background:#252a27;border-color:#252a27}
.login-circle:hover{background:var(--sage-dark)}
.hero,.assessment-section,.cta-strip{background:linear-gradient(135deg,#171c1a 0%,#252c28 58%,#30372f 100%)}
.hero .eyebrow,.assessment-section .eyebrow,.cta-strip .eyebrow{color:#d3b98f}
.hero .lead,.hero-note,.assessment-section p{color:#d5d3cc}
.primary{background:#d3b98f;color:#1e231f;border-color:#d3b98f}
.primary:hover{background:#e3cfad}
.eyebrow{color:#806548}
.text-link{font-weight:600}
.dark-link{color:#4c5b52}
.demo-section,.pale{background:#ebe5da}
.proof-strip{background:#fffdf9;border-color:#ded7cc}
.service-card,.service-overview-card,.panel{background:#fffdf9}
footer{background:#fffdf9;border-color:#ded7cc}
.status-note{border-color:#7b6952;background:#eee7dc}
.notice{border-color:#7c887f;background:#ecefe9}
input[type="checkbox"]{accent-color:#6d786f}

/* Home hero system graphic. No additional bird imagery. */
.evidence-visual{position:relative;padding:34px;border:1px solid #5d655f;border-radius:14px;background:linear-gradient(180deg,#202622,#181d1b);overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.16)}
.evidence-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 15%,rgba(197,173,136,.13),transparent 34%),repeating-linear-gradient(90deg,transparent 0 49px,rgba(255,255,255,.025) 50px),repeating-linear-gradient(0deg,transparent 0 49px,rgba(255,255,255,.025) 50px);pointer-events:none}
.evidence-visual>*{position:relative}
.evidence-core{padding:22px;border:1px solid #6a716c;background:rgba(255,255,255,.035);border-radius:10px;margin-bottom:20px}
.core-label{display:block;color:#d3b98f;text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;font-weight:700;margin-bottom:8px}
.evidence-core strong{font-size:1.25rem;font-weight:600;line-height:1.4}
.evidence-nodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.evidence-node{padding:16px;border:1px solid #505b54;border-radius:8px;background:#242b27}
.evidence-node span{display:block;color:#fff;font-weight:600;font-size:.9rem;margin-bottom:5px}
.evidence-node small{color:#bfc4bd;line-height:1.45}
.visual-note{color:#c7c7c0!important;font-size:.78rem;margin:20px 0 0;border-top:1px solid #4a534e;padding-top:18px}

/* Services hero and system visual. */
.services-hero{background:linear-gradient(135deg,#1a1f1d 0%,#252b27 70%,#34362f 100%);color:#fff;padding:76px 0;border-bottom:1px solid #4e554f}
.services-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:74px;align-items:center}
.services-hero h1{font-size:clamp(2.6rem,4vw,4.25rem);max-width:720px}
.services-hero .lead,.services-hero .hero-note{color:#d0d1cc}
.services-hero .eyebrow{color:#d3b98f}
.service-system{padding:30px;border:1px solid #596159;border-radius:14px;background:rgba(255,255,255,.025)}
.system-track{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;align-items:stretch}
.system-node{position:relative;padding:19px 12px;border:1px solid #59635c;border-radius:9px;background:#232a26;min-height:126px}
.system-node:not(:last-child)::after{content:"";position:absolute;right:-10px;top:50%;width:10px;height:1px;background:#9b7a52}
.system-node span{display:block;color:#d3b98f;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.system-node small{color:#d1d2cd;line-height:1.45}
.service-overview-six{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-overview-card{position:relative;padding:30px;border:1px solid #d5cdbf;border-radius:10px;box-shadow:0 10px 30px rgba(41,45,42,.035)}
.service-overview-card h2{font-size:1.35rem;margin-top:18px}
.service-icon{width:48px;height:48px;border:1px solid #b7aa97;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#eee8de;color:#544a3d;font-weight:700;font-size:.85rem;letter-spacing:.02em}
.method-band{background:#2d332f;color:#fff}
.method-band .eyebrow{color:#d3b98f}
.method-band p{color:#d2d5d0}
.method-band-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}
.light-link{color:#e1c9a4}

/* Reduce cool/AI visual language across shared components. */
.badge{background:#eee8de;border-color:#d0c4b3;color:#5e5141}
.evidence-extract{background:#252b27;color:#ece9e3}
.finding-selector button[aria-pressed="true"]{border-color:#b8a98f;background:#eee8de}
.demo-agent{background:#efebe3;border-color:#ddd4c7}
.demo-agent span,.evidence-label,.finding-number,.metric,.text-button{color:#725f49}
.sidebar nav button[aria-current="page"]{background:#ece7de;color:#51463a}
.workspace-banner{background:#e9e5dd}
.record-dialog::backdrop{background:#171b18b8}

@media(max-width:1050px){
  .services-hero-grid{gap:40px}
  .system-track{grid-template-columns:repeat(3,1fr)}
  .system-node:not(:last-child)::after{display:none}
  .service-overview-six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .services-hero-grid,.method-band-grid{grid-template-columns:1fr;gap:34px}
  .services-hero{padding:54px 0}
  .service-overview-six{grid-template-columns:1fr}
  .system-track{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .evidence-nodes,.system-track{grid-template-columns:1fr}
  .evidence-visual,.service-system{padding:22px}
}

/* PRAI public website v6, blue search-intelligence visual system. */
:root{
  --ink:#102237;
  --muted:#5d6f83;
  --paper:#f5f8fb;
  --line:#d7e3ec;
  --cyan:#66e5f2;
  --dark:#071b2c;
  --steel:#a9bdca;
  --white:#ffffff;
  --blue:#087b9c;
  --navy:#061a2b;
  --navy-2:#0a2840;
  --blue-2:#0d5f8f;
  --blue-3:#16b7d1;
  --pale-blue:#edf6fb;
}
body{background:var(--paper);color:var(--ink)}
p{color:var(--muted)}
.site-header{background:#fff;border-color:#dbe6ee}
.site-header nav a[aria-current="page"]{border-color:#159bb8}
.login-circle{background:#0a2132;border-color:#0a2132}
.login-circle:hover{background:#0a6f91}
.primary{background:#64e1ee;color:#082236;border-color:#64e1ee}
.primary:hover{background:#83ebf4}
.secondary{background:#fff;color:#102237;border-color:#c5d6e1}
.blue-outline{border-color:#9dc7d8;color:#0b4d69;background:transparent}
.eyebrow{color:#0d7896}
.dark-link{color:#0b6f8e;border-bottom-color:#a7ccda}
footer{background:#fff;border-color:#dbe6ee}
.footer-email{color:#0b6f8e}
.social-icon:hover{background:#e9f6fa;color:#087b9c}

/* HOME */
.blue-home-hero{position:relative;background:
  radial-gradient(circle at 73% 40%,rgba(17,133,186,.28),transparent 31%),
  linear-gradient(120deg,#061827 0%,#07243a 58%,#071827 100%);padding:74px 0 72px;overflow:hidden}
.blue-home-hero::after{content:"";position:absolute;left:45%;right:-10%;bottom:-40px;height:150px;background:radial-gradient(ellipse at center,rgba(19,176,205,.19),transparent 67%);filter:blur(12px);pointer-events:none}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:60px;align-items:center;position:relative;z-index:1}
.blue-home-hero h1{font-size:clamp(3rem,5vw,5rem);max-width:650px}
.blue-home-hero h1 em{color:#6be5f1}
.blue-home-hero .lead{color:#c6d5df;font-size:1.08rem;max-width:620px}
.blue-home-hero .eyebrow{color:#5fd9e8}
.ghost{border-color:#7894a6;background:transparent;color:#fff}
.ghost:hover{background:rgba(255,255,255,.08);border-color:#9ec2d0}
.search-intelligence-visual{position:relative;min-height:475px;padding:36px 18px 18px;isolation:isolate}
.search-intelligence-visual::before{content:"";position:absolute;inset:10% 5% 0;border-radius:50%;background:
 radial-gradient(circle at 50% 54%,rgba(9,114,174,.38),transparent 45%),
 radial-gradient(ellipse at 48% 86%,rgba(16,186,208,.16),transparent 55%);filter:blur(3px);z-index:-2}
.search-intelligence-visual::after{content:"";position:absolute;left:5%;right:2%;bottom:16px;height:110px;background:
 repeating-radial-gradient(ellipse at 50% 120%,rgba(46,186,215,.34) 0 1px,transparent 1px 13px);opacity:.38;transform:perspective(300px) rotateX(64deg);z-index:-1}
.visual-search-pill{width:min(62%,390px);margin:0 auto 30px;padding:14px 22px;border:1px solid #2587b2;border-radius:16px;background:rgba(10,39,63,.88);box-shadow:0 0 30px rgba(17,151,199,.18);display:flex;gap:12px;align-items:center;color:#fff;font-weight:600}
.search-icon{color:#66e5f2;font-size:1.45rem}
.visual-stack{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));align-items:center;gap:0;position:relative;margin-top:20px}
.visual-panel{position:relative;min-height:255px;padding:28px 18px 20px;border:1px solid rgba(79,152,187,.55);background:linear-gradient(180deg,rgba(15,53,79,.84),rgba(9,31,50,.88));box-shadow:0 18px 40px rgba(0,0,0,.18);color:#fff;display:flex;flex-direction:column;justify-content:center;transform:perspective(700px) rotateY(-8deg);margin-left:-22px}
.visual-panel:first-child{margin-left:0}.visual-panel:nth-child(2){transform:translateY(-10px) perspective(700px) rotateY(-6deg)}.visual-panel:nth-child(3){transform:translateY(-20px)}.visual-panel:nth-child(4){transform:translateY(-8px) perspective(700px) rotateY(5deg)}.visual-panel:nth-child(5){transform:perspective(700px) rotateY(8deg);border-color:#50d5eb;box-shadow:0 0 30px rgba(58,210,233,.24)}
.visual-panel::after{content:"";position:absolute;left:18px;right:18px;bottom:20px;height:3px;background:linear-gradient(90deg,#1aa0c5,#69e1ee 45%,transparent)}
.panel-kicker{text-transform:uppercase;font-size:.62rem;letter-spacing:.12em;color:#82d8e7;margin-bottom:10px}.visual-panel strong{font-size:1.12rem;margin-bottom:10px}.visual-panel small{color:#b9cad6;line-height:1.5}
.visual-caption{text-align:right;color:#75d9e7;text-transform:uppercase;letter-spacing:.19em;font-size:.62rem;margin:28px 5% 0 0}
.home-service-preview{background:#fff;padding:56px 0 44px}
.heading-row{max-width:none;display:flex;justify-content:space-between;gap:60px;align-items:end}.heading-row>div:first-child{max-width:600px}.heading-row>div:last-child{max-width:550px}.heading-row p{margin-bottom:12px}
.home-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mini-service-card{display:grid;grid-template-columns:54px 1fr 30px;gap:16px;align-items:center;padding:20px;border:1px solid #d9e6ee;border-radius:10px;text-decoration:none;background:#fff;transition:transform .15s,border-color .15s,box-shadow .15s}
.mini-service-card:hover{transform:translateY(-2px);border-color:#9fcfe0;box-shadow:0 12px 28px rgba(8,59,83,.08)}
.mini-icon{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef7fb;color:#087b9c;font-weight:700}.mini-service-card strong{display:block;margin-bottom:5px}.mini-service-card small{color:#718191;line-height:1.4}.card-arrow{color:#0a7f9e;font-size:1.25rem}
.home-method-band{background:#edf5fa;padding:54px 0;border-top:1px solid #dce8ef}.method-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.method-split p{max-width:650px}
.home-trust-band{background:#082033;color:#fff;padding:30px 0}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.trust-grid>div{padding:2px 26px;border-left:1px solid rgba(255,255,255,.16)}.trust-grid>div:first-child{border-left:0;padding-left:0}.trust-grid strong{display:block;color:#fff;margin-bottom:5px}.trust-grid span{color:#b9cfdb;font-size:.8rem}

/* SERVICES */
.blue-services-hero{background:
  radial-gradient(circle at 69% 48%,rgba(14,125,177,.31),transparent 28%),
  linear-gradient(120deg,#061a2b 0%,#08243a 62%,#071a2b 100%);padding:62px 0;border-bottom:1px solid #20455d}
.services-hero-new{grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:54px}
.blue-services-hero h1{font-size:clamp(3.4rem,5vw,5.3rem);margin-bottom:10px}.services-subhead{color:#fff;font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:400;letter-spacing:-.025em;max-width:580px}.blue-services-hero .lead{color:#c9d8e1;max-width:570px}.blue-services-hero .eyebrow{color:#62d9e8}
.services-network{position:relative;min-height:420px;display:flex;align-items:center;justify-content:center}
.network-orb{width:310px;height:310px;border-radius:50%;position:relative;background:
 radial-gradient(circle at 45% 42%,rgba(30,163,205,.4),rgba(5,42,67,.86) 55%,#061c2d 71%),
 repeating-radial-gradient(circle at 50% 50%,rgba(92,220,236,.4) 0 1px,transparent 1px 18px);border:1px solid #39bcd4;box-shadow:0 0 55px rgba(31,163,205,.2),inset 0 0 45px rgba(39,194,217,.1)}
.network-orb::before,.network-orb::after{content:"";position:absolute;inset:25px;border-radius:50%;border:1px dashed rgba(107,224,239,.32)}.network-orb::after{inset:65px;border-style:solid;border-color:rgba(107,224,239,.16)}
.network-search{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:245px;padding:13px 20px;border:1px solid #65ddec;border-radius:13px;background:#072238;color:#fff;box-shadow:0 0 25px rgba(67,216,235,.23);display:flex;gap:10px;align-items:center;justify-content:center}
.network-tag{position:absolute;padding:9px 18px;border:1px solid #3db3ca;border-radius:999px;background:#08263c;color:#fff;font-size:.8rem}.tag-people{left:3%;top:17%}.tag-evidence{right:4%;top:17%}.tag-content{left:-5%;top:43%}.tag-insights{right:-4%;top:43%}.tag-data{left:5%;bottom:13%}.tag-decisions{right:2%;bottom:13%}
.network-tag::after{content:"";position:absolute;top:50%;width:55px;height:1px;background:#2e91ac}.tag-people::after,.tag-content::after,.tag-data::after{left:100%}.tag-evidence::after,.tag-insights::after,.tag-decisions::after{right:100%}.network-caption{position:absolute;right:-2%;bottom:8px;color:#9fd0dd;text-transform:uppercase;letter-spacing:.17em;font-size:.65rem;line-height:1.7}
.services-cards-section{background:#fff;padding:48px 0 54px}.services-heading{margin-bottom:24px}.blue-card-grid{gap:14px}.blue-card-grid .service-overview-card{display:grid;grid-template-columns:54px 1fr 34px;grid-template-rows:auto 1fr;gap:4px 16px;padding:20px 22px;border:1px solid #3b5d70;background:#092338;color:#fff;border-radius:8px;box-shadow:none}.blue-card-grid .service-icon{grid-row:1/3;width:48px;height:48px;border-radius:8px;background:#10344d;border:1px solid #345e72;color:#60ddea}.blue-card-grid h2{font-size:1rem;color:#fff;margin:2px 0 4px}.blue-card-grid p{grid-column:2;margin:0;color:#b9cad6;min-height:0;font-size:.82rem;line-height:1.48}.card-arrow-link{grid-column:3;grid-row:1/3;align-self:center;justify-self:end;color:#5fe0ee;font-size:1.35rem;text-decoration:none}.card-arrow-link:hover{transform:translateX(2px)}
.services-decision-band{background:#082033;color:#fff;padding:48px 0;position:relative;overflow:hidden}.services-decision-band::before,.services-decision-band::after{content:"";position:absolute;left:-4%;right:-4%;height:95px;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(42,184,212,.28) 0 1px,transparent 1px 15px);opacity:.28;transform:perspective(250px) rotateX(65deg)}.services-decision-band::before{bottom:-18px}.services-decision-grid{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.services-decision-band h2{font-size:clamp(2.2rem,3.5vw,3.3rem)}.services-decision-band .eyebrow{color:#62d9e8}.services-decision-band p{color:#c4d4de}.decision-rule{display:block;width:42px;height:2px;background:#58dbe9;margin:18px 0}.services-decision-band strong{text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:#63d8e8}

/* ASSESSMENT FORM */
.blue-assessment-page{background:linear-gradient(180deg,#f5f9fc,#eef5f9)}
.blue-assessment-page .assessment-form-panel{border-color:#c9dae4;box-shadow:0 18px 45px rgba(9,51,73,.08)}
.form-heading p:last-child{font-size:.82rem}.assessment-form input,.assessment-form select,.assessment-form textarea{width:100%;border:1px solid #b9ccd8;background:#fff;color:#102237;border-radius:6px;padding:13px 14px;min-height:48px}.assessment-form textarea{min-height:150px;resize:vertical}.assessment-form input::placeholder,.assessment-form textarea::placeholder{color:#92a1ad}.assessment-form input:focus,.assessment-form select:focus,.assessment-form textarea:focus{border-color:#1397b5;box-shadow:0 0 0 3px rgba(19,151,181,.11);outline:none}.privacy-check label{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.5}.privacy-check input{width:auto;min-height:0;margin-top:4px;accent-color:#0b7896}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-submit{border:0}.thank-you-section{min-height:65vh;display:flex;align-items:center;background:linear-gradient(135deg,#061a2b,#0a2b44);padding:70px 0}.thank-you-card{max-width:760px;color:#fff}.thank-you-card .eyebrow{color:#62d9e8}.thank-you-card .lead{color:#c4d4de;max-width:650px}.thank-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}

/* Shared dark page elements return to blue. */
.hero,.assessment-section,.cta-strip,.service-hero{background:linear-gradient(120deg,#061a2b,#092a43)}
.hero .eyebrow,.assessment-section .eyebrow,.cta-strip .eyebrow,.service-hero .eyebrow{color:#63dbea}
.hero .lead,.hero-note,.assessment-section p,.service-hero .lead{color:#c4d4de}
.method-band{background:#082337}.method-band .eyebrow{color:#63dbea}.method-band p{color:#c6d5df}
.service-overview-card{border-color:#d3e0e8;background:#fff}.service-icon{background:#edf6fa;border-color:#b9d2df;color:#0b708e}
.demo-section,.pale{background:#eaf3f8}.status-note{border-color:#6d92a5;background:#eff7fa}.notice{border-color:#6d92a5;background:#eef7fa}

@media(max-width:1080px){
  .home-hero-grid,.services-hero-new{grid-template-columns:1fr;gap:34px}.search-intelligence-visual{min-height:400px}.services-network{min-height:390px}.visual-stack{grid-template-columns:repeat(5,minmax(105px,1fr))}.home-service-grid{grid-template-columns:repeat(2,1fr)}.services-decision-grid,.method-split{gap:36px}.network-caption{right:4%}
}
@media(max-width:820px){
  .heading-row{flex-direction:column;align-items:flex-start;gap:10px}.visual-stack{grid-template-columns:repeat(2,1fr);gap:10px}.visual-panel,.visual-panel:nth-child(n){transform:none;margin-left:0;min-height:170px}.visual-panel:last-child{grid-column:1/-1}.search-intelligence-visual{min-height:auto;padding:15px 0}.visual-search-pill{width:100%}.home-service-grid{grid-template-columns:1fr}.method-split,.trust-grid,.services-decision-grid{grid-template-columns:1fr}.trust-grid>div,.trust-grid>div:first-child{border-left:0;border-top:1px solid rgba(255,255,255,.14);padding:16px 0}.trust-grid>div:first-child{border-top:0}.services-network{min-height:350px}.network-orb{width:255px;height:255px}.network-tag{font-size:.7rem;padding:7px 12px}.network-tag::after{width:28px}.network-caption{position:static;margin-top:20px;text-align:center}.blue-card-grid .service-overview-card{grid-template-columns:50px 1fr 28px}
}
@media(max-width:520px){
  .blue-home-hero{padding:52px 0}.blue-home-hero h1{font-size:2.75rem}.services-network{min-height:315px}.network-orb{width:220px;height:220px}.network-search{width:185px;font-size:.78rem}.tag-content,.tag-insights{top:44%}.network-tag{font-size:.62rem;padding:6px 9px}.network-tag::after{display:none}.services-cards-section{padding-top:36px}.blue-card-grid .service-overview-card{grid-template-columns:44px 1fr 24px;padding:18px 16px}.blue-card-grid .service-icon{width:40px;height:40px}.blue-card-grid p{font-size:.78rem}.assessment-form-panel{padding:22px 18px}.thank-actions .button{width:100%}
}

/* v8 brand visibility */
@media (max-width: 760px) {
  .header-inner { min-height: 118px; }
  .brand img { height: 108px; width: 162px; }
}


/* v9 homepage: lighter service preview to avoid repeating the service pages */
.compact-service-preview{padding:54px 0 46px;background:#fff}
.service-glance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.service-glance-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid #d7e3ec;border-radius:10px;text-decoration:none;background:#fff;transition:border-color .15s,box-shadow .15s,transform .15s}
.service-glance-card:hover{border-color:#9fcfe0;box-shadow:0 12px 28px rgba(8,59,83,.08);transform:translateY(-2px)}
.service-glance-card strong{display:block;font-size:1rem;margin-bottom:4px}
.service-glance-card span{display:block;color:#6a7c8f;font-size:.88rem;line-height:1.45}
.service-glance-card b{font-size:1.2rem;color:#0b7f9d;font-weight:600}

/* v9 service pages: chart-style graphics instead of computer mockups */
.service-hero-graphic{background:linear-gradient(120deg,#061a2b,#092a43)}
.service-hero-graphic .hero-note{margin-top:18px;color:#c4d4de;font-size:.82rem}
.service-hero-copy{max-width:620px}
.service-visual{position:relative;padding:24px;border:1px solid rgba(110,189,219,.35);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));box-shadow:0 24px 50px rgba(2,14,24,.18);overflow:hidden;min-height:340px}
.service-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 10%,rgba(102,229,242,.12),transparent 24%),linear-gradient(180deg,transparent,rgba(102,229,242,.03));pointer-events:none}
.service-visual>*{position:relative;z-index:1}
.service-visual-label{color:#75d9e7;text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;font-weight:700;margin-bottom:18px}
.sv-search-strip{padding:14px 18px;border:1px solid rgba(117,217,231,.45);border-radius:999px;background:rgba(255,255,255,.04);color:#eef9ff;font-weight:600;text-align:center;margin-bottom:16px}
.sv-split,.sv-card-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sv-card-row{margin-top:14px}
.sv-card{padding:14px 16px;border:1px solid rgba(117,217,231,.18);border-radius:12px;background:rgba(255,255,255,.04)}
.sv-card.narrow{padding-block:12px}
.sv-box{padding:14px 16px;border:1px solid rgba(117,217,231,.18);border-radius:12px;background:rgba(255,255,255,.035)}
.sv-card span,.sv-box small,.sv-card small{display:block}
.sv-card span{color:#fff;font-weight:600;margin-bottom:5px}
.sv-card small,.sv-box small{color:#bfd3de;line-height:1.45}
.sv-chart{display:flex;align-items:flex-end;gap:10px;height:86px}
.sv-bars span{display:block;width:18px;height:var(--h);min-height:18px;border-radius:10px 10px 0 0;background:linear-gradient(180deg,#66e5f2,#0f87b6);box-shadow:0 0 12px rgba(102,229,242,.18)}
.sv-line{position:relative;height:108px;margin-top:14px;border-left:1px solid rgba(117,217,231,.25);border-bottom:1px solid rgba(117,217,231,.25)}
.sv-line::before{content:"";position:absolute;left:0;right:0;top:36%;border-top:1px dashed rgba(117,217,231,.12)}
.sv-line::after{content:"";position:absolute;left:0;right:0;top:68%;border-top:1px dashed rgba(117,217,231,.12)}
.sv-line span{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:#66e5f2;box-shadow:0 0 0 4px rgba(102,229,242,.12)}
.sv-line span + span{ }
.sv-line.looped::before{top:auto;bottom:18px}
.sv-line.looped{background:linear-gradient(130deg,transparent 0 12%,rgba(102,229,242,.13) 12% 13%,transparent 13% 28%,rgba(102,229,242,.13) 28% 29%,transparent 29% 44%,rgba(102,229,242,.13) 44% 45%,transparent 45% 60%,rgba(102,229,242,.13) 60% 61%,transparent 61% 76%,rgba(102,229,242,.13) 76% 77%,transparent 77%)}
.sv-notes{display:grid;gap:9px}
.sv-notes span,.sv-checks span{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(117,217,231,.16);border-radius:999px;color:#eef8fc;font-size:.84rem;background:rgba(255,255,255,.03)}
.sv-notes span::before,.sv-checks span::before,.sv-pill-row span::before{content:"";width:8px;height:8px;border-radius:50%;background:#66e5f2;flex-shrink:0}
.sv-checks{display:grid;gap:8px}
.sv-bubbles{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sv-bubbles b{padding:10px 13px;border-radius:999px;border:1px solid rgba(117,217,231,.24);background:rgba(255,255,255,.04);color:#fff;font-size:.82rem;font-weight:600}
.sv-tree{position:relative;height:86px}
.sv-tree i{position:absolute;display:block;background:rgba(117,217,231,.24)}
.sv-tree .root{left:50%;top:0;transform:translateX(-50%);width:28px;height:14px;border-radius:4px;background:rgba(102,229,242,.18);border:1px solid rgba(102,229,242,.55)}
.sv-tree .l1{left:50%;top:14px;width:2px;height:18px;transform:translateX(-50%)}
.sv-tree .l2{left:24%;right:24%;top:32px;height:2px}
.sv-tree .l3{display:none}
.sv-tree .b1,.sv-tree .b2,.sv-tree .b3,.sv-tree .b4{top:48px;width:22px;height:14px;border-radius:4px;background:rgba(102,229,242,.18);border:1px solid rgba(102,229,242,.5)}
.sv-tree .b1{left:18%}.sv-tree .b2{left:39%}.sv-tree .b3{left:60%}.sv-tree .b4{left:81%;transform:translateX(-100%)}
.sv-network{position:relative;height:160px;margin-bottom:16px}
.sv-network .n{position:absolute;width:12px;height:12px;border-radius:50%;background:#66e5f2;box-shadow:0 0 0 5px rgba(102,229,242,.10)}
.sv-network .n1{left:12%;top:26%}.sv-network .n2{left:34%;top:12%}.sv-network .n3{left:58%;top:28%}.sv-network .n4{left:23%;top:72%}.sv-network .n5{left:52%;top:84%}.sv-network .n6{left:82%;top:56%}
.sv-network .c{position:absolute;height:2px;background:rgba(117,217,231,.25);transform-origin:left center}
.sv-network .c1{left:12%;top:29%;width:24%;transform:rotate(-18deg)}
.sv-network .c2{left:34%;top:17%;width:24%;transform:rotate(17deg)}
.sv-network .c3{left:15%;top:33%;width:18%;transform:rotate(56deg)}
.sv-network .c4{left:33%;top:74%;width:22%;transform:rotate(16deg)}
.sv-network .c5{left:58%;top:31%;width:26%;transform:rotate(28deg)}
.sv-loop{display:flex;align-items:center;justify-content:center;gap:10px;height:86px;border:1px dashed rgba(117,217,231,.25);border-radius:50%;max-width:86px;margin:0 auto;color:#fff;font-weight:700;flex-direction:column}
.sv-loop i{width:30px;height:30px;border:2px solid #66e5f2;border-right-color:transparent;border-radius:50%;display:block}
.sv-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.sv-pill-row span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(117,217,231,.18);border-radius:999px;background:rgba(255,255,255,.035);color:#eef8fc;font-size:.8rem}

@media(max-width:1080px){.service-glance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.service-glance-grid,.sv-split,.sv-card-row{grid-template-columns:1fr}.service-visual{min-height:auto}}
@media(max-width:520px){.service-glance-card{padding:16px}.service-visual{padding:18px}.sv-loop{max-width:78px;height:78px}}


/* v12 analytics consent controls */
.consent-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:1000;background:#fff;border:1px solid #cbdce7;border-radius:14px;box-shadow:0 22px 70px rgba(5,31,48,.22);padding:20px;color:#102237}
.consent-inner{width:min(1180px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.consent-copy{max-width:760px}.consent-copy strong{display:block;font-size:1.05rem;margin-bottom:6px}.consent-copy p{margin:0 0 6px;font-size:.9rem;line-height:1.55}.consent-copy a{font-size:.82rem;color:#0b7896}
.consent-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.consent-actions .button{white-space:nowrap}
.cookie-preferences-link{border:0;background:transparent;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;font:inherit;font-size:.72rem;cursor:pointer}
@media(max-width:760px){.consent-banner{left:12px;right:12px;bottom:12px}.consent-inner{align-items:stretch;flex-direction:column;gap:16px}.consent-actions{justify-content:stretch}.consent-actions .button{flex:1}}


/* v13 editorial carousel hero */
.editorial-hero{position:relative;background:#071826;color:#fff;overflow:hidden}
.editorial-hero-stage{position:relative;min-height:720px;display:grid;align-content:end;isolation:isolate;background:radial-gradient(circle at 72% 20%,rgba(36,136,177,.22),transparent 28%),linear-gradient(115deg,#071826 0%,#0b2235 48%,#0d3145 100%)}
.editorial-hero-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;transition:background 500ms ease}
.hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 88%)}
.hero-orbit{position:absolute;border:1px solid rgba(118,218,229,.18);border-radius:50%;filter:drop-shadow(0 0 18px rgba(49,190,207,.08))}
.orbit-a{width:630px;height:630px;right:-80px;top:-180px}.orbit-b{width:390px;height:390px;right:180px;top:90px}
.hero-signal{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(115,223,234,.65),transparent);transform-origin:center;opacity:.55}
.signal-a{width:720px;right:-110px;top:260px;transform:rotate(-14deg)}.signal-b{width:620px;right:30px;top:360px;transform:rotate(9deg)}.signal-c{width:520px;right:120px;top:475px;transform:rotate(-4deg)}
.editorial-hero-copy-wrap{padding-top:86px;padding-bottom:210px;width:100%}
.editorial-hero-copy{max-width:760px}.editorial-hero-copy .eyebrow{color:#78d9e5}.editorial-hero-copy h1{font-size:clamp(3.8rem,7vw,7rem);line-height:.94;letter-spacing:-.055em;max-width:970px;margin:18px 0 28px}.editorial-hero-copy h1 em{font-style:normal;color:#77dbe8}.editorial-hero-copy .lead{max-width:650px;color:#d0e1ea;font-size:1.14rem;line-height:1.65}.editorial-hero-copy .ghost{color:#fff;border-color:rgba(255,255,255,.36)}
.editorial-service-rail-wrap{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);width:min(1240px,calc(100% - 40px))}
.editorial-service-rail{display:grid;grid-template-columns:repeat(4,minmax(235px,1fr));gap:14px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:8px 2px 4px}.editorial-service-rail::-webkit-scrollbar{display:none}
.editorial-service-card{position:relative;min-height:210px;padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(6,22,34,.76);backdrop-filter:blur(14px);color:#fff;text-decoration:none;display:flex;flex-direction:column;scroll-snap-align:start;transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease;overflow:hidden}
.editorial-service-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#77dbe8,#c9a24b);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.editorial-service-card:hover,.editorial-service-card:focus-visible,.editorial-service-card.is-active{transform:translateY(-8px);border-color:rgba(119,219,232,.45);background:rgba(8,34,50,.92);box-shadow:0 22px 50px rgba(0,0,0,.26)}.editorial-service-card:hover::before,.editorial-service-card:focus-visible::before,.editorial-service-card.is-active::before{transform:scaleX(1)}
.card-index{font-size:.69rem;letter-spacing:.18em;color:#90aebb;margin-bottom:26px}.card-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.67rem;color:#73d7e3;margin-bottom:7px}.editorial-service-card strong{font-size:1.15rem;line-height:1.25;margin-bottom:10px}.card-copy{font-size:.82rem;line-height:1.48;color:#bcd0da;max-width:30ch}.card-link{margin-top:auto;padding-top:16px;font-size:.78rem;font-weight:700;color:#fff}
.editorial-hero-controls{display:flex;align-items:center;gap:12px;justify-content:flex-end;margin-top:10px}.hero-arrow{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.24);background:rgba(7,24,38,.78);color:#fff;font-size:1.1rem;cursor:pointer;transition:background .2s,border-color .2s}.hero-arrow:hover,.hero-arrow:focus-visible{background:#0d4156;border-color:#72d7e3}.hero-progress{width:150px;height:2px;background:rgba(255,255,255,.16);overflow:hidden}.hero-progress span{display:block;width:25%;height:100%;background:linear-gradient(90deg,#71d9e6,#c9a24b);transition:transform .35s ease;transform:translateX(0)}
.editorial-hero-stage[data-active="1"] .editorial-hero-backdrop{background:radial-gradient(circle at 70% 30%,rgba(81,87,175,.18),transparent 30%)}.editorial-hero-stage[data-active="2"] .editorial-hero-backdrop{background:radial-gradient(circle at 72% 24%,rgba(34,139,128,.18),transparent 30%)}.editorial-hero-stage[data-active="3"] .editorial-hero-backdrop{background:radial-gradient(circle at 74% 20%,rgba(199,158,71,.14),transparent 30%)}
@media(max-width:1050px){.editorial-hero-stage{min-height:760px}.editorial-hero-copy-wrap{padding-bottom:255px}.editorial-service-rail{grid-template-columns:repeat(4,280px)}.editorial-service-rail-wrap{width:calc(100% - 28px)}}
@media(max-width:760px){.editorial-hero-stage{min-height:820px;align-content:start}.editorial-hero-copy-wrap{padding:56px 22px 320px}.editorial-hero-copy h1{font-size:clamp(3rem,14vw,4.4rem)}.editorial-hero-copy .lead{font-size:1rem}.editorial-service-rail-wrap{bottom:18px;width:calc(100% - 20px)}.editorial-service-rail{grid-template-columns:repeat(4,82vw);gap:10px}.editorial-service-card{min-height:205px}.editorial-hero-controls{justify-content:center}.hero-progress{width:110px}.orbit-a{width:470px;height:470px;right:-230px;top:-80px}.orbit-b{display:none}}

/* v14 compact homepage hero */
.editorial-hero-compact{background:#071826}
.editorial-hero-compact .editorial-hero-stage{min-height:0;display:block;padding:64px 0 28px;background:radial-gradient(circle at 78% 20%,rgba(33,127,166,.16),transparent 27%),linear-gradient(115deg,#071826 0%,#0b2235 55%,#0c2c3f 100%)}
.editorial-hero-compact .editorial-hero-copy-wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.7fr);gap:64px;align-items:center;padding-top:0;padding-bottom:52px}
.editorial-hero-compact .editorial-hero-copy{max-width:690px}
.editorial-hero-compact .editorial-hero-copy h1{font-size:clamp(2.9rem,5.1vw,5rem);line-height:1.01;letter-spacing:-.045em;max-width:760px;margin:14px 0 22px}
.editorial-hero-compact .editorial-hero-copy .lead{max-width:620px;font-size:1.05rem;line-height:1.6}
.editorial-hero-compact .hero-cta{margin-top:24px}
.editorial-hero-compact .editorial-service-rail-wrap{position:relative;left:auto;bottom:auto;transform:none;width:auto;margin-top:0}
.service-strip-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:24px 0 14px;border-top:1px solid rgba(255,255,255,.12)}
.service-strip-heading h2{font-size:clamp(1.45rem,2.2vw,2.1rem);color:#fff;margin:4px 0 0;letter-spacing:-.025em}
.service-strip-heading .eyebrow{color:#72d7e3;margin:0}
.flat-service-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(255px,1fr);grid-template-columns:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 6px;scrollbar-width:none}
.flat-service-rail::-webkit-scrollbar{display:none}
.flat-service-card{min-height:150px;padding:20px 20px 18px;border-radius:10px;background:#0a2234;border:1px solid rgba(255,255,255,.12);box-shadow:none;backdrop-filter:none;transform:none}
.flat-service-card::before{display:none}
.flat-service-card:hover,.flat-service-card:focus-visible,.flat-service-card.is-active{transform:none;background:#0d2a40;border-color:rgba(113,217,230,.38);box-shadow:none}
.flat-service-card .card-kicker{font-size:.67rem;margin-bottom:12px}
.flat-service-card strong{font-size:1rem;line-height:1.42;font-weight:600;max-width:27ch;margin:0}
.flat-service-card .card-link{padding-top:18px;font-size:.76rem}
.editorial-hero-compact .editorial-hero-controls{margin:0;justify-content:flex-end}
.editorial-hero-compact .hero-arrow{width:36px;height:36px;background:transparent}
.editorial-hero-compact .hero-progress{width:96px}
.hero-visual-minimal{position:relative;min-height:300px;opacity:.78}
.hero-visual-minimal::before{content:"";position:absolute;inset:18% 12% 8% 12%;border-radius:50%;background:radial-gradient(circle,rgba(113,217,230,.12),transparent 60%)}
.visual-ring{position:absolute;border:1px solid rgba(113,217,230,.24);border-radius:50%}
.ring-one{width:250px;height:250px;right:8%;top:6%}.ring-two{width:185px;height:185px;right:22%;top:22%}.ring-three{width:115px;height:115px;right:37%;top:37%}
.visual-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#73d8e5;box-shadow:0 0 0 5px rgba(115,216,229,.08)}
.dot-one{right:21%;top:24%}.dot-two{right:43%;top:62%}
.visual-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(115,216,229,.7),transparent);transform-origin:left center}
.line-one{width:220px;right:14%;top:50%;transform:rotate(22deg)}.line-two{width:170px;right:31%;top:63%;transform:rotate(-18deg)}

@media(min-width:1180px){.flat-service-rail{grid-auto-columns:calc((100% - 24px)/3)}}
@media(max-width:900px){.editorial-hero-compact .editorial-hero-copy-wrap{grid-template-columns:1fr;gap:26px;padding-bottom:34px}.hero-visual-minimal{display:none}.editorial-hero-compact .editorial-hero-stage{padding-top:48px}.service-strip-heading{align-items:flex-start}.editorial-hero-compact .editorial-service-rail-wrap{width:auto}}
@media(max-width:680px){.editorial-hero-compact .editorial-hero-stage{padding:38px 0 18px}.editorial-hero-compact .editorial-hero-copy-wrap{padding:0 20px 28px}.editorial-hero-compact .editorial-hero-copy h1{font-size:clamp(2.55rem,12vw,3.7rem)}.editorial-hero-compact .editorial-service-rail-wrap{padding:0 14px}.service-strip-heading{flex-direction:column;gap:14px}.flat-service-rail{grid-auto-columns:82vw}.editorial-hero-compact .editorial-hero-controls{justify-content:flex-start}}

/* PRAI v18 privacy panel */
.consent-banner{left:20px;right:auto;bottom:20px;width:min(510px,calc(100vw - 40px));padding:24px;background:#fff;color:#102237;border-radius:14px;border:1px solid #d1dfe8;box-shadow:0 18px 55px rgba(5,29,47,.24);max-height:min(90vh,760px);overflow-y:auto}
.consent-banner .consent-inner{display:block;width:100%;max-width:none}
.consent-topline{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.consent-topline strong{margin:0;font-size:1.13rem;color:#0d273e}
.consent-mark{display:grid;place-items:center;background:#e6f5fa;color:#087c9b;width:36px;height:36px;border-radius:10px;font-size:1.3rem}
.consent-banner p{color:#485e70;font-size:.89rem;line-height:1.55;margin:0 0 12px}
.consent-links{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:17px}
.consent-links a{color:#0b708e;font-size:.83rem;font-weight:600}
.consent-banner .consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;justify-content:stretch}
.consent-banner .consent-actions .button{width:100%;white-space:normal;min-height:43px;font-size:.81rem;padding:10px 12px}
.consent-banner .consent-actions [data-customise]{grid-column:1/-1}
.consent-options[hidden]{display:none}
.consent-options{border-top:1px solid #e0e9ef;padding-top:12px;margin-bottom:14px}
.consent-option{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #e7edf2;padding:12px 0;color:#153249;font-size:.88rem}
.consent-option strong{display:block;font-size:.86rem}
.consent-option small{display:block;color:#597084;margin-top:3px;font-size:.76rem;line-height:1.5}
.consent-option input[type=checkbox]{width:21px;min-height:21px;height:21px;flex:0 0 auto;accent-color:#087b9c}
.consent-required{font-size:.74rem;color:#5a6d7e;white-space:nowrap}
.consent-save{margin-top:12px;width:100%}
@media(max-width:600px){.consent-banner{left:12px;right:12px;bottom:12px;width:auto;padding:19px}.consent-banner .consent-actions{gap:8px}}

/* V20: restrained landing page and private workspace entry */
.v20-hero{background:linear-gradient(120deg,#081c2c 0%,#0c2a40 62%,#12374d 100%);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.v20-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 54%,rgba(89,208,226,.09),transparent 35%);pointer-events:none}
.v20-hero-layout{min-height:570px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(180px,.7fr);align-items:center;gap:28px;padding-top:85px;padding-bottom:82px;position:relative}
.v20-hero-copy{max-width:815px;z-index:1}.v20-hero .eyebrow{color:#72d7e8;letter-spacing:.2em;font-size:.72rem;text-transform:uppercase;font-weight:700;margin-bottom:24px}
.v20-hero h1{font-size:clamp(3rem,5.2vw,5.35rem);letter-spacing:-.059em;line-height:1.06;margin:0 0 25px;font-weight:650}.v20-hero h1 em{font-style:normal;color:#79dae9}
.v20-intro{color:#c2d6e2;font-size:clamp(1.02rem,1.45vw,1.2rem);line-height:1.62;max-width:600px;margin-bottom:29px}
.v20-actions{display:flex;flex-wrap:wrap;gap:12px}.v20-actions .button{min-height:50px}.v20-outline{border:1px solid #628295;color:white;background:transparent}.v20-outline:hover{background:rgba(255,255,255,.09)}.v20-hero-note{color:#89abbf;font-size:.83rem;letter-spacing:.05em;margin-top:45px;margin-bottom:0}
.v20-hero-art{position:relative;justify-self:center;width:clamp(160px,21vw,290px);aspect-ratio:1;opacity:.77}.v20-orbit{position:absolute;border:1px solid rgba(117,217,232,.24);border-radius:50%;transform:rotate(-24deg)}.v20-orbit-one{inset:4%}.v20-orbit-two{inset:21%;border-color:rgba(117,217,232,.4)}.v20-art-core{position:absolute;inset:37%;border:1px solid rgba(117,217,232,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:4px}.v20-art-core span{height:4px;width:4px;background:#75d8e8;border-radius:50%}.v20-art-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#7ddce9;box-shadow:0 0 0 6px rgba(125,220,233,.08)}.v20-dot-one{top:20%;right:11%}.v20-dot-two{bottom:13%;left:20%;width:5px;height:5px}
.v20-steps{background:#fff;padding:83px 0 76px}.v20-steps-head{display:grid;grid-template-columns:1.1fr .8fr;gap:50px;align-items:end;margin-bottom:32px}.v20-steps .eyebrow{color:#007389;font-weight:700;letter-spacing:.17em;text-transform:uppercase;font-size:.75rem}.v20-steps h2{max-width:660px;font-size:clamp(2rem,3.2vw,3rem);color:#122c40;margin-bottom:0}.v20-steps-head>p{max-width:430px;margin:0;color:#576a78}.v20-steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.v20-steps-grid article{padding:30px 25px;border:1px solid #dce7ed;border-radius:9px;background:#f9fbfc}.v20-step-number{display:block;color:#007e94;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:700;margin-bottom:21px}.v20-steps-grid h3{color:#132f42;margin:0 0 9px;font-size:1.15rem}.v20-steps-grid p{font-size:.93rem;line-height:1.6;margin:0}.v20-more{text-align:right;font-size:.91rem;margin:25px 0 0}.v20-more a{font-weight:650;color:#006b7e}
.v20-closing{background:#eaf3f7;padding:55px 0}.v20-closing-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.v20-closing .eyebrow{font-size:.74rem;text-transform:uppercase;letter-spacing:.17em;font-weight:700;color:#006f83}.v20-closing h2{font-size:clamp(1.65rem,2.5vw,2.6rem);max-width:670px;margin:0}.v20-closing .button{flex:none;background:#086f82;border-color:#086f82;color:#fff}.v20-closing .button:hover{background:#054e60}
.v20-private{background:#edf4f7;padding:95px 0}.v20-private .private-access-card{align-items:center;gap:clamp(35px,6vw,95px)}.v20-private-copy h1{font-size:clamp(2.7rem,5vw,4.8rem)}.v20-period{color:#007b92}.v20-private-copy .lead{font-size:1.18rem;color:#395468}.v20-private-detail{max-width:420px}.v20-private-panel{padding:38px;border:1px solid #dae5eb;border-radius:12px;box-shadow:0 15px 38px rgba(15,41,62,.055)}.v20-private-panel .eyebrow{color:#006b83;letter-spacing:.15em;font-size:.73rem;font-weight:700}.v20-private-panel h2{font-size:clamp(1.6rem,2.5vw,2.2rem);margin-bottom:16px}.v20-private-panel>p:not(.eyebrow){color:#506778;line-height:1.6}.v20-private-button{display:flex!important;width:100%;margin:24px 0 14px;background:#08697f!important;color:#fff!important;border-color:#08697f!important;justify-content:space-between;min-height:54px}.v20-private-button:hover{background:#054d60!important}.v20-private-notice{font-size:.84rem;color:#637786!important;margin-bottom:20px}.v20-return-link{font-size:.88rem;font-weight:650;color:#006b83;text-decoration:none}.v20-return-link:hover{text-decoration:underline}
@media(max-width:820px){.v20-hero-layout{grid-template-columns:1fr;min-height:auto;padding-top:70px;padding-bottom:70px}.v20-hero-art{position:absolute;right:-75px;bottom:-65px;opacity:.2;width:240px;pointer-events:none}.v20-hero-copy{position:relative;z-index:1}.v20-steps-head{grid-template-columns:1fr;gap:16px}.v20-steps-grid{grid-template-columns:1fr}.v20-closing-inner{flex-direction:column;align-items:flex-start}.v20-private{padding:60px 0}}
@media(max-width:480px){.v20-hero-layout{padding-top:52px;padding-bottom:58px}.v20-hero h1{font-size:clamp(2.45rem,10vw,3.2rem)}.v20-actions{flex-direction:column;align-items:stretch}.v20-actions .button{text-align:center}.v20-hero-note{margin-top:30px}.v20-steps{padding:55px 0}.v20-steps-grid article{padding:24px 20px}.v20-closing{padding:40px 0}.v20-private-panel{padding:26px 20px}}
