/* Public-site contrast corrections. Load after website-redesign.css. */

/* Decorative product accents are too pale for the small labels that reuse them. */
.qts-marketing .saas-price-family > header span,
.qts-marketing .saas-plan-card > span,
.qts-marketing .saas-board-title span,
.qts-marketing .saas-flow-step b,
.qts-marketing .saas-architecture header span,
.qts-marketing .saas-architecture article b,
.qts-marketing .saas-integrations > div > span,
.qts-marketing .saas-product-plans header span,
.qts-marketing .saas-solution-band > div > span,
.qts-marketing .saas-context-visual span {
  color: #1765a4;
}

.qts-marketing .detail-list dt {
  color: #4d5e69;
}

/* These light-surface labels previously inherited the original dark-hero cyan. */
.qts-marketing .serviceops-hero-copy > span,
.qts-marketing .serviceops-journey header > span {
  color: #126b4b;
}

.qts-marketing .serviceops-journey header p {
  color: #4d5e69;
}

.qts-marketing .saas-room-grid .room-ready strong,
.qts-marketing .saas-room-grid .room-ready span {
  color: #172b3a;
}

/* Keep dark sections explicitly light without changing their background or layout. */
.qts-marketing .serviceops-role-view > div:first-child > span {
  color: #f3bf22;
}

.qts-marketing .serviceops-role-view > div:first-child p {
  color: #e8edf0;
}

/* Native form values, placeholders and field boundaries must remain distinguishable. */
.qts-marketing .field input,
.qts-marketing .field textarea,
.qts-marketing .field select,
.qts-marketing.page-demo .form-group :is(input, select, textarea) {
  color: #172b3a;
  background-color: #fff;
  border-color: #637683;
  color-scheme: light;
}

.qts-marketing .field input::placeholder,
.qts-marketing .field textarea::placeholder,
.qts-marketing.page-demo .form-group :is(input, textarea)::placeholder {
  color: #4d5e69;
  opacity: 1;
}

.qts-marketing .field select option,
.qts-marketing.page-demo .form-group select option {
  color: #172b3a;
  background-color: #fff;
}

.qts-marketing .field input[type="checkbox"],
.qts-marketing .field input[type="radio"],
.qts-marketing.page-demo .form-group input[type="checkbox"] {
  accent-color: #126b4b;
}

.qts-marketing .form-status[data-tone="success"] {
  color: #126b4b;
}

.qts-marketing .form-status[data-tone="error"] {
  color: #a4262c;
}

/* The shared heading and paragraph rules must not darken the demo's dark bands. */
.qts-marketing.page-demo :is(.demo-hero, .cta-section) :is(h1, h2) {
  color: #fff;
}

.qts-marketing.page-demo :is(.demo-hero, .cta-section) p {
  color: #e8edf0;
}

.qts-marketing.page-demo .demo-product-review > span {
  color: #126b4b;
}

.qts-marketing.page-demo .login-card .divider {
  color: #4d5e69;
}

.qts-marketing.page-demo .request-demo-btn:hover {
  color: #fff;
}

/* Blue is visible on white/off-white; white remains visible on dark section fills. */
.qts-marketing :is(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid #1765a4;
  outline-offset: 4px;
}

.qts-marketing :is(.qts-brand-hero, .qts-contact-band, .serviceops-role-view, .serviceops-close, .demo-hero, .cta-section) :focus-visible {
  outline-color: #fff;
}

/* The scroll control sits over the photo's bright edge, beyond the strongest overlay. */
.qts-marketing .qts-brand-hero .qts-hero-scroll:focus-visible {
  box-shadow: 0 0 0 7px #172b3a;
}
