/* jzx.mobi shared base styles */
* {
  margin: 0; padding: 0; box-sizing: border-box;
}
body {
  font-family: -apple-system, "Microsoft YaHei", "PingFang SC", sans-serif; color: #1a1a2e; line-height: 1.6; background: #fafbfc;
}
.header {
  background: #fff; border-bottom: 1px solid #e2e8f0; padding: 14px 0; position: sticky; top: 0; z-index: 10;
}
.header .container {
  display: flex; align-items: center; justify-content: space-between;
}
.logo {
  font-size: 20px; font-weight: 700; color: #1a3a5c;
}
.logo span {
  color: #2563eb;
}
.logo small {
  font-size: 11px; font-weight: 400; color: #94a3b8; display: block;
}
.nav a {
  margin-left: 0; padding: 14px 0; border-bottom: 1px solid #f1f5f9; font-size: 16px;
}
.nav a:hover {
  color: #2563eb;
}
.menu-toggle {
  display: none; background: none; border: none; font-size: 28px; color: #1a3a5c; cursor: pointer; padding: 4px; line-height: 1;
}
.footer {
  background: #0f1d2e; color: rgba(255,255,255,.45); padding: 36px 0; font-size: 13px; text-align: center;
}
.footer a {
  color: rgba(255,255,255,.55); text-decoration: none; margin: 0 10px;
}
.footer a:hover {
  color: #60a5fa;
}
.section {
  padding: 64px 0;
}
.section-sub {
  text-align: center; font-size: 15px; line-height: 1.7;
  color: #64748b; max-width: 720px; margin: 0 auto 32px;
}
.nav {
  display: none; flex-direction: column; background: #fff; position: fixed; top: 56px; left: 0; right: 0; padding: 16px 24px; box-shadow: 0 8px 24px rgba(0,0,0,.1); z-index: 20;
}
.nav.open {
  display: flex;
}
.nav a:last-child {
  border-bottom: none;
}
.container {
  max-width: 1200px; margin: 0 auto; padding: 0 24px;
}
.nav .cta-btn:hover {
  background: #1d4ed8; color: #fff;
}
.footer .brand {
  color: #fff; font-weight: 600; font-size: 14px; display: block; margin-bottom: 6px;
}
.section-title {
  font-size: 28px; font-weight: 700; text-align: center; margin-bottom: 10px; color: #0f1d2e;
}
.hero h1 {
  font-size: 24px !important;
}
}

  @media (max-width: 600px) {
  /* Hero section - stack columns */
    .hero-grid { grid-template-columns: 1fr !important; gap: 24px !important; text-align: center;
}
.hero-grid > div:first-child {
  order: 1;
}
.hero-grid > div:last-child {
  order: 0;
}
.hero-subtitle {
  font-size: 14px !important;
}
.hero-badge {
  font-size: 10px !important;
}
.hero-actions {
  flex-direction: column !important; align-items: center !important;
}
.hero-actions a {
  width: 100%; max-width: 280px; text-align: center;
}
.hero-stats-grid {
  grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important;
}
.hero-stat-value {
  font-size: 20px !important;
}
.hero-stat-label {
  font-size: 10px !important;
}
/* Section padding */
    .section {
  padding: 36px 0 !important;
}
/* All 3-column grids stack to 1 column */
    .grid-3col {
  grid-template-columns: 1fr !important; gap: 16px !important;
}
/* 2-column grids collapse to 1 column */
    .grid-2col {
  grid-template-columns: 1fr !important; gap: 16px !important;
}
/* 4-column grid becomes 2-col on mobile */
    .grid-4col {
  grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important;
}
/* Section titles */
    .section-title {
  font-size: 22px !important;
}
/* Container padding tighter on mobile */
    .container {
  padding: 0 16px !important;
}
/* Stat values in full-stack section */
    .stat-value {
  font-size: 20px !important;
}
.stat-label {
  font-size: 11px !important;
}
/* Industry cards */
    .industry-card {
  padding: 14px 10px !important;
}
.industry-card h4 {
  font-size: 12px !important;
}
.industry-card p {
  font-size: 10px !important;
}
/* CTAs */
    .cta-title {
  font-size: 20px !important;
}
.cta-sub {
  font-size: 13px !important;
}
/* Innovation cards */
    .innov-card {
  padding: 22px 16px !important;
}
.innov-card h3 {
  font-size: 14px !important;
}
.innov-card p {
  font-size: 12px !important;
}
.innov-icon {
  font-size: 28px !important;
}
/* Full-stack feature cards */
    .feat-card {
  padding: 20px 16px !important;
}
.feat-card h3 {
  font-size: 14px !important;
}
.feat-card p {
  font-size: 12px !important;
}
/* Other page specific */
    .page-hero {
  padding: 48px 0 40px !important;
}
.page-hero h1 {
  font-size: 26px !important;
}
}

  @media (max-width: 400px) {
  .grid-4col { grid-template-columns: 1fr !important;
}
.nav .cta-btn {
  text-align: center;
}
