/* Extend current Nexora theme; user-authored styles remain in their original files. */
.card-premium,
.pricing-card {
  box-shadow: 0 4px 20px rgba(11, 20, 55, 0.045);
}
.hero .hero-visual img {
  height: auto;
}
.selection-support {
  background: #f7f9fc;
  border-block: 1px solid var(--n-border);
}
.selection-support .tag-pill {
  text-transform: none;
  font-size: 0.875rem;
}
.brand-switch {
  padding: 12px 0;
  background: rgba(255, 255, 255, 0.98);
  border-block: 1px solid var(--n-border);
}
.brand-switch .container {
  overflow-x: auto;
}
.brand-switch-link {
  padding: 9px 16px;
  border-radius: 8px;
  color: var(--n-navy);
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
}
.brand-switch-link:hover,
.brand-switch-link:focus-visible {
  background: var(--n-bg-alt);
  color: var(--n-primary);
}
.brands-page [id] {
  scroll-margin-top: 190px;
}
.brand-showcase p {
  font-size: 1rem;
}
.brand-source,
.brand-identity > span,
.brand-documents small,
.brand-doc-count {
  font-size: 0.8125rem;
}
.brand-documents strong,
.brand-shortcut .card-link-arrow {
  font-size: 0.875rem;
}
.brand-visual figcaption {
  font-size: 0.75rem;
}
.document-archive {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--n-border);
}
.document-archive summary {
  cursor: pointer;
  color: var(--n-slate);
  font-size: 0.875rem;
  font-weight: 600;
}
.brand-related {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}
.brand-related a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
#quoteForm {
  scroll-margin-top: 125px;
}
.product-finder {
  max-width: 800px;
  margin: auto;
}
.mobile-contact {
  display: none;
}
[hidden] {
  display: none !important;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid #155eef;
  outline-offset: 4px;
}
@media (max-width: 991.98px) {
  body {
    padding-bottom: calc(68px + env(safe-area-inset-bottom));
  }
  .brand-switch {
    top: 94px;
  }
  .brand-switch-link {
    padding: 8px 12px;
  }
  .mobile-contact {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1035;
    border-top: 1px solid var(--n-border);
    background: #fff;
    padding: 10px 8px calc(10px + env(safe-area-inset-bottom));
    box-shadow: 0 -4px 18px #0b143710;
  }
  .mobile-contact a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 44px;
    color: var(--n-navy);
    font-size: 0.875rem;
    font-weight: 600;
  }
  .mobile-contact a:last-child {
    background: var(--n-primary);
    color: #fff;
    border-radius: 8px;
  }
  .back-to-top {
    bottom: calc(85px + env(safe-area-inset-bottom));
  }
  .selection-support .card-premium {
    padding: 24px;
  }
}
@media (max-width: 575.98px) {
  .brand-switch .container {
    gap: 0 !important;
  }
  .brand-switch-link {
    padding: 8px 10px;
    font-size: 0.8125rem;
  }
  .brand-switch-link:last-child {
    display: none;
  }
  .brands-page [id] {
    scroll-margin-top: 180px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
}
