/* Hallmark · pre-emit critique: P5 H4 E4 S5 R5 V4 */
/* Hallmark · macrostructure: page-family layer · tone: modern-minimal · anchor hue: Cobalt */
/* Shared body layer for WinDriver pages. The legacy product navigation remains untouched. */
html, body { overflow-x: clip; }
body { background: var(--color-paper); color: var(--color-ink-2); font-family: var(--font-body); }

.prodnavbar ~ header.text-white,
.prodnavbar ~ .jumbotron {
  background: var(--color-graphite) !important;
  border-bottom: 1px solid var(--color-accent);
  color: var(--color-accent-ink);
}

.prodnavbar ~ header.text-white h1,
.prodnavbar ~ .jumbotron h1 {
  color: var(--color-accent-ink) !important;
  font-family: var(--font-display) !important;
  font-style: normal;
  font-weight: 600;
  letter-spacing: -.035em;
  line-height: 1.12;
  overflow-wrap: anywhere;
}

.prodnavbar ~ header.text-white p,
.prodnavbar ~ .jumbotron p { color: var(--color-paper-2) !important; line-height: 1.8; }
.prodnavbar ~ header.text-white .badge { border: 1px solid var(--color-rule-strong); border-radius: var(--radius-control); }

.prodnavbar ~ .container { color: var(--color-ink-2); }
.prodnavbar ~ .container h1,
.prodnavbar ~ .container h2,
.prodnavbar ~ .container h3,
.prodnavbar ~ .container h4,
.prodnavbar ~ .container h5,
.prodnavbar ~ .container h6 {
  color: var(--color-ink);
  font-family: var(--font-display);
  font-style: normal;
  font-weight: 600;
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
}

.prodnavbar ~ .container p,
.prodnavbar ~ .container li { line-height: 1.8; }
.prodnavbar ~ .container a:not(.btn) { color: var(--color-accent-hover); text-decoration-color: var(--color-rule-strong); text-underline-offset: .2em; }
.prodnavbar ~ .container a:not(.btn):hover { color: var(--color-accent); text-decoration-color: var(--color-accent); }

.prodnavbar ~ .container .section-title,
.prodnavbar ~ .container .bottomline {
  border-bottom: 2px solid var(--color-ink) !important;
  color: var(--color-ink) !important;
  margin-top: var(--space-2xl);
  padding-bottom: var(--space-sm);
}

.prodnavbar ~ .container .card,
.prodnavbar ~ .container .feature-card,
.prodnavbar ~ .container .sidebar-card,
.prodnavbar ~ .container .note-box {
  background: var(--color-paper) !important;
  border: var(--rule) !important;
  border-radius: var(--radius-surface) !important;
  box-shadow: none !important;
}

.prodnavbar ~ .container .card-header { background: var(--color-paper-2) !important; border-bottom: var(--rule); color: var(--color-ink) !important; }
.prodnavbar ~ .container .feature-card:hover { border-color: var(--color-accent) !important; transform: none !important; }
.prodnavbar ~ .container .note-box { border-left: 3px solid var(--color-accent) !important; }

.prodnavbar ~ .container .btn,
.prodnavbar ~ header.text-white .btn {
  border-radius: var(--radius-control) !important;
  box-shadow: none !important;
  font-weight: 700;
  transition: background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);
}

.prodnavbar ~ .container .btn-primary,
.prodnavbar ~ header.text-white .btn-primary,
.prodnavbar ~ header.text-white .btn-info {
  background: var(--color-accent) !important;
  border-color: var(--color-accent) !important;
  color: var(--color-accent-ink) !important;
}

.prodnavbar ~ .container .btn-primary:hover,
.prodnavbar ~ header.text-white .btn-primary:hover,
.prodnavbar ~ header.text-white .btn-info:hover { background: var(--color-accent-hover) !important; border-color: var(--color-accent-hover) !important; }
.prodnavbar ~ .container .btn-outline-secondary,
.prodnavbar ~ header.text-white .btn-outline-light { border-color: var(--color-rule-strong) !important; }

.prodnavbar ~ .container .table { border-color: var(--color-rule); color: var(--color-ink-2); }
.prodnavbar ~ .container .table > :not(caption) > * > * { border-color: var(--color-rule); }
.prodnavbar ~ .container .table thead th,
.prodnavbar ~ .container .table-dark th { background: var(--color-ink) !important; color: var(--color-accent-ink) !important; }
.prodnavbar ~ .container .tdleft,
.prodnavbar ~ .container .table-light { background: var(--color-paper-2) !important; color: var(--color-ink) !important; }

.prodnavbar ~ .container pre {
  background: var(--color-graphite) !important;
  border: 1px solid var(--color-graphite-2);
  border-radius: var(--radius-surface) !important;
  color: var(--color-paper-2) !important;
  font-family: var(--font-mono);
  line-height: 1.75;
}

.prodnavbar ~ .container .alert { border-radius: var(--radius-surface); box-shadow: none; }
.prodnavbar ~ .container .text-muted { color: var(--color-muted) !important; }
.prodnavbar ~ .container :focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; }

@media (max-width: 767.98px) {
  .prodnavbar ~ header.text-white h1,
  .prodnavbar ~ .jumbotron h1 { font-size: var(--text-2xl) !important; }
  .prodnavbar ~ .container { padding-inline: var(--space-sm); }
  .prodnavbar ~ .container .btn { width: 100%; }
  .prodnavbar ~ .container .table-responsive { margin-inline: calc(var(--space-sm) * -1); }
}
