/* Shared sub-page quality layer. Homepage intentionally does not load this file. */
:root {
  --subpage-max-width: 1240px;
  --subpage-gutter: clamp(20px, 5vw, 72px);
  --subpage-radius: 18px;
  --subpage-shadow: 0 14px 40px rgba(24, 42, 78, .08);
  --subpage-focus: #3157ff;
}

body.subpage { text-rendering: optimizeLegibility; }
body.subpage :where(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--subpage-focus) 72%, white);
  outline-offset: 3px;
}
body.subpage :where(main > section) { scroll-margin-top: 96px; }
body.subpage :where(figure img, video) { max-width: 100%; }
body.subpage :where(.site-cta-button, .primary-cta, .cta-primary, a[class*="cta"]) {
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
body.subpage :where(.site-cta-button, .primary-cta, .cta-primary, a[class*="cta"]):hover {
  transform: translateY(-2px);
  box-shadow: var(--subpage-shadow);
}
@media (prefers-reduced-motion: reduce) {
  body.subpage :where(*, *::before, *::after) { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
@media (max-width: 720px) {
  body.subpage :where(main > section) { scroll-margin-top: 72px; }
}

/* Design Master · editorial B2B visual layer (homepage does not load this file). */
:root {
  --subpage-paper: #f6f4ef;
  --subpage-paper-strong: #ebe8e0;
  --subpage-ink: #17212b;
  --subpage-muted: #66717c;
  /* 2026-09-16：原为 #d8d5cc（暖米色），与站内其余线色（#dfe5ef / #e5eaf2 / #e7eaf0，
     全部为冷灰蓝）温度不一致，白底上并排出现会显脏。统一为 design-tokens 的标准线色。 */
  --subpage-line: #dfe5ef;
  --subpage-accent: var(--shulex-brand-blue, #4466fa);
  --subpage-accent-dark: #3157d8;
  --subpage-blue: #10192b;
  --subpage-radius: 4px;
  --subpage-shadow: 0 10px 24px rgba(23, 33, 43, .07);
}
html:has(body.subpage), body.subpage { background: var(--subpage-paper); color: var(--subpage-ink); }
body.subpage::selection { color: var(--subpage-paper); background: var(--subpage-accent); }
body.subpage :where(h1,h2,h3) { letter-spacing: -.035em; text-wrap: balance; }
body.subpage :where(p,li) { color: var(--subpage-muted); }
body.subpage :where(main > section:not(.homepage-hero-v2)) { border-top: 1px solid var(--subpage-line); position: relative; }
body.subpage .nav-wrap { background: #fff !important; border-bottom: 1px solid var(--subpage-line); box-shadow: none !important; backdrop-filter: none; }
body.subpage .nav-wrap::before, body.subpage .nav-wrap::after { background: transparent !important; }
body.subpage .nav-wrap nav a, body.subpage .nav-dropdown, body.subpage .account-cta { color: var(--subpage-ink); }
body.subpage .nav-cta { border-radius: var(--subpage-radius); background: var(--subpage-ink); box-shadow: none; }
body.subpage .nav-cta:hover { background: var(--subpage-accent); }
body.subpage :where(.hero-eyebrow,.eyebrow,.section-eyebrow) { color: var(--subpage-accent-dark); font-size: .73rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
body.subpage :where(.hero-copy h1,.hero-content h1,.demo-hero h1,.feature-hero h1,.industry-hero h1) { max-width: 900px; color: var(--subpage-ink); font-size: clamp(2.8rem, 6vw, 6.5rem); line-height: .98; }
body.subpage :where(.hero-copy h1 em,.hero-content h1 em) { color: var(--subpage-accent); font-style: normal; }
body.subpage.demo-page :where(.hero-copy h1 em,.hero-content h1 em,.agent-new-hero h1 em,.feature-hero h1 em) { color: var(--subpage-accent) !important; }
body.subpage :where(.hero-lead,.agent-hero-lead,.hero-copy > p,.hero-content > p) { max-width: 650px; font-size: clamp(1.02rem, 1.4vw, 1.3rem); line-height: 1.75; }
body.subpage :where(.hero-actions,.hero-ctas) { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
body.subpage :where(.hero-primary,.primary-cta,.cta-primary) { border-radius: var(--subpage-radius); background: var(--subpage-accent); box-shadow: none; }
body.subpage.demo-page :where(.hero-primary,.primary-cta,.cta-primary,.hero-actions a:first-child) { background: var(--subpage-accent) !important; box-shadow: none !important; }
body.subpage.demo-page :where(.channel-agent,.channel-solution,.feature-page,.industry-solution) :where(.hero-primary,.primary-cta,.cta-primary) { background: var(--subpage-accent) !important; box-shadow: none !important; border-color: var(--subpage-accent) !important; }
body.subpage.channel-agent .agent-new-hero .hero-primary,
body.subpage.channel-solution .hero-primary,
body.subpage.feature-page .hero-primary,
body.subpage.industry-solution .hero-primary { background: var(--subpage-accent) !important; box-shadow: none !important; border-color: var(--subpage-accent) !important; }
body.subpage :where(.hero-secondary,.secondary-cta,.cta-secondary) { border: 1px solid var(--subpage-ink); border-radius: var(--subpage-radius); background: transparent; color: var(--subpage-ink); }
body.subpage :where(.results,.metrics,.proof,.trust-section) { background: var(--subpage-paper-strong); }
body.subpage :where(.results h2,.section-intro h2,.industry-intro h2,.platform-intro h2,.integrations h2) { color: var(--subpage-ink); font-size: clamp(2rem, 4vw, 4rem); line-height: 1.04; }
body.subpage :where(.metric-grid,.card-grid,.feature-grid,.industry-grid) { gap: 0; border-top: 1px solid var(--subpage-line); border-left: 1px solid var(--subpage-line); }
body.subpage :where(.metric-grid > *,.card-grid > *,.feature-grid > *,.industry-grid > *) { border-right: 1px solid var(--subpage-line); border-bottom: 1px solid var(--subpage-line); border-radius: 0; box-shadow: none; background: transparent; }
body.subpage :where(.metric-grid strong,.metric strong) { color: var(--subpage-accent); font-variant-numeric: tabular-nums; }
body.subpage :where(.industry-tabs button,.tabs button) { border-bottom: 1px solid var(--subpage-line); border-radius: 0; color: var(--subpage-muted); background: transparent; }
body.subpage :where(.industry-tabs button.active,.tabs button.active) { color: var(--subpage-ink); border-bottom-color: var(--subpage-accent); }
body.subpage :where(.industry-stage,.product-visual,.capability-visual,.demo-visual) { border: 1px solid var(--subpage-line); border-radius: var(--subpage-radius); box-shadow: var(--subpage-shadow); background: #fdfcf9; }
body.subpage :where(.industry-stage,.product-visual,.capability-visual,.demo-visual) img { filter: saturate(.82) contrast(1.02); }
body.subpage :where(.industry-stage,.product-visual,.capability-visual,.demo-visual)::before { display: none !important; }
body.subpage :where(.feature-card,.solution-card,.case-card,.resource-card,.faq-item,.article-card) { border: 1px solid var(--subpage-line); border-radius: var(--subpage-radius); background: #fbfaf7; box-shadow: none; }
body.subpage :where(.feature-card,.solution-card,.case-card,.resource-card,.article-card):hover { border-color: var(--subpage-accent); transform: translateY(-3px); box-shadow: var(--subpage-shadow); }
body.subpage :where(.feature-card img,.solution-card img,.case-card img,.resource-card img,.article-card img) { border-radius: 0; }
body.subpage :where(.feature-card img,.solution-card img,.case-card img,.resource-card img,.article-card img) { filter: saturate(.86) contrast(1.02); }
body.subpage :where(.closing-section,.final-cta,.contact-cta,.page-cta) { background: var(--subpage-blue); color: #fff; }
body.subpage :where(.closing-section h2,.final-cta h2,.contact-cta h2,.page-cta h2) { color: #fff; }
body.subpage :where(.closing-section p,.final-cta p,.contact-cta p,.page-cta p) { color: rgba(255,255,255,.76); }
body.subpage :where(.closing-section a,.final-cta a,.contact-cta a,.page-cta a) { border-radius: var(--subpage-radius); background: var(--subpage-accent); color: #fff; }
/* Footer links are navigation, not CTA buttons. Keep them as plain text. */
body.subpage .site-footer-current :where(a, .footer-legal a) { border-radius: 0; background: transparent !important; color: #d6dae5 !important; box-shadow: none !important; }
body.subpage .site-footer-current :where(a, .footer-legal a):hover { color: #fff !important; }
body.subpage :where(.shared-footer,.site-footer-current,footer) { border-top: 1px solid var(--subpage-line); }
@media (max-width: 900px) { body.subpage :where(.hero-copy h1,.hero-content h1,.demo-hero h1,.feature-hero h1,.industry-hero h1) { font-size: clamp(2.7rem, 9vw, 4.8rem); } body.subpage :where(.metric-grid,.card-grid,.feature-grid,.industry-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { body.subpage :where(.hero-actions,.hero-ctas) > * { width: 100%; justify-content: center; } body.subpage :where(.metric-grid,.card-grid,.feature-grid,.industry-grid) { grid-template-columns: 1fr; } body.subpage :where(.hero-copy h1,.hero-content h1,.demo-hero h1,.feature-hero h1,.industry-hero h1) { font-size: clamp(2.45rem,13vw,3.8rem); } }
