/* QCH inner-page system: quiet, direct, and content-first. */

:root {
  --font-sans: system-ui, -apple-system, "Segoe UI", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body {
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
}

/* Remove template labels that do not carry product or service meaning. */
.eyebrow,
.product-tag,
.product-badge,
.product-number,
.product-type,
.content-meta {
  display: none !important;
}

.dropdown-link span {
  display: none;
}

.dropdown-link {
  padding: 13px 14px;
}

.product-hero,
.service-hero,
.support-hero {
  min-height: 460px;
  display: flex;
  align-items: center;
  padding: 132px 0 76px !important;
  text-align: left !important;
  color: #fff;
  background: #101214 !important;
}

.product-hero .shell,
.service-hero .shell,
.support-hero .shell {
  width: min(1240px, calc(100% - 64px));
  text-align: left;
}

.product-title,
.service-title,
.support-title {
  max-width: 820px;
  margin: 0;
  font-family: Arial, "Helvetica Neue", "Segoe UI", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  font-size: clamp(42px, 6vw, 76px) !important;
  line-height: 1.04;
  letter-spacing: -.065em;
}

.product-subtitle,
.service-subtitle,
.support-subtitle {
  max-width: 620px;
  margin: 22px 0 0 !important;
  color: #bac4c7;
  font-size: 17px;
  line-height: 1.8;
}

.hero-actions {
  justify-content: flex-start;
  margin-top: 30px;
}

/* Shared depth and feedback for every inner-page surface. */
.feature-card,
.price-card,
.pipeline-card,
.case-card,
.option-card,
.req-card,
.download-card,
.widget-card,
.project-card,
.contact-card,
.simulator-container,
.ohqc-tab-container,
.arch-container {
  position: relative;
  overflow: hidden;
  border-radius: 20px !important;
  border-color: rgba(16, 18, 20, .1) !important;
  box-shadow: 0 14px 38px rgba(16, 18, 20, .09), inset 0 1px 0 rgba(255,255,255,.82);
  transition: transform 260ms cubic-bezier(.16, 1, .3, 1), box-shadow 260ms ease, border-color 260ms ease, background 260ms ease;
  animation: inner-rise 680ms cubic-bezier(.16, 1, .3, 1) both;
}

.feature-card::before,
.price-card::before,
.pipeline-card::before,
.case-card::before,
.option-card::before,
.req-card::before,
.download-card::before,
.widget-card::before,
.project-card::before,
.contact-card::before,
.simulator-container::before,
.ohqc-tab-container::before,
.arch-container::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: linear-gradient(90deg, rgba(36,107,254,.68), rgba(168,232,108,.72), rgba(255,202,69,.35));
  opacity: .72;
  pointer-events: none;
}

.feature-card:hover,
.price-card:hover,
.pipeline-card:hover,
.case-card:hover,
.option-card:hover,
.req-card:hover,
.download-card:hover,
.widget-card:hover,
.project-card:hover,
.contact-card:hover,
.simulator-container:hover,
.ohqc-tab-container:hover,
.arch-container:hover {
  transform: translateY(-6px);
  border-color: rgba(36,107,254,.24) !important;
  box-shadow: 0 28px 68px rgba(16,18,20,.16), inset 0 1px 0 rgba(255,255,255,.96);
}

.feature-card > *,
.price-card > *,
.pipeline-card > *,
.case-card > *,
.option-card > *,
.req-card > *,
.download-card > *,
.widget-card > *,
.project-card > *,
.contact-card > *,
.simulator-container > *,
.ohqc-tab-container > *,
.arch-container > * {
  position: relative;
  z-index: 1;
}

.btn,
.ohqc-tab-btn,
.legal-tab-btn,
.docs-sidebar-link,
.menu-item {
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.btn:hover,
.ohqc-tab-btn:hover,
.legal-tab-btn:hover,
.docs-sidebar-link:hover,
.menu-item:hover {
  transform: translateY(-2px);
}

.ohqc-tab-btn.active,
.legal-tab-btn.active,
.menu-item.active {
  box-shadow: 0 10px 24px rgba(36,107,254,.16);
}

.docs-sidebar,
.docs-article,
.legal-viewport {
  border-radius: 18px;
}

@keyframes inner-rise {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}

.section-title {
  margin-bottom: 42px;
}

.section-title h2 {
  letter-spacing: -.045em;
}

.footer-brand > p {
  display: none;
}

.feature-icon {
  display: none !important;
}

@media (max-width: 720px) {
  .product-hero,
  .service-hero,
  .support-hero {
    min-height: 390px;
    padding: 112px 0 60px !important;
  }

  .product-hero .shell,
  .service-hero .shell,
  .support-hero .shell {
    width: min(100% - 40px, 1240px);
  }

  .product-title,
  .service-title,
  .support-title {
    font-size: clamp(38px, 12vw, 58px) !important;
  }

  .product-subtitle,
  .service-subtitle,
  .support-subtitle {
    font-size: 16px;
  }
}
