/* ── 设计变量 ─────────────────────────────── */
:root {
  --brand-primary:   #1a56db;
  --brand-secondary: #0e9f6e;
  --brand-accent:    #ff5a1f;
  --text-primary:    #111827;
  --text-secondary:  #6b7280;
  --bg-light:        #f9fafb;
  --bg-card:         #ffffff;
  --border-color:    #e5e7eb;
  --radius-sm:       6px;
  --radius-md:       12px;
  --radius-lg:       20px;
  --shadow-sm:       0 1px 3px rgba(0,0,0,.08);
  --shadow-md:       0 4px 16px rgba(0,0,0,.10);
  --shadow-hover:    0 8px 32px rgba(26,86,219,.15);
  --font-sans:       'Inter', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
  --font-mono:       'JetBrains Mono', 'Fira Code', monospace;
  --transition:      all .25s cubic-bezier(.4,0,.2,1);
}

/* ── 基础重置 ────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--font-sans);
  color: var(--text-primary);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

/* ── 链接 ────────────────────────────────── */
a { color: var(--brand-primary); text-decoration: none; transition: var(--transition); }
a:hover { color: #1e40af; }

/* ── 导航栏 ──────────────────────────────── */
.site-header,
.ast-site-header-wrap {
  backdrop-filter: blur(8px);
  background: rgba(255,255,255,.92) !important;
  border-bottom: 1px solid var(--border-color);
  box-shadow: var(--shadow-sm);
  position: sticky;
  top: 0;
  z-index: 999;
}

/* ── 按钮 ────────────────────────────────── */
.ast-btn,
.wp-block-button__link,
.elementor-button,
input[type="submit"],
button[type="submit"] {
  background: var(--brand-primary) !important;
  color: #fff !important;
  border: none;
  border-radius: var(--radius-sm) !important;
  padding: .75rem 1.75rem !important;
  font-weight: 600;
  font-size: .95rem;
  letter-spacing: .02em;
  transition: var(--transition) !important;
  cursor: pointer;
}
.ast-btn:hover,
.elementor-button:hover,
input[type="submit"]:hover {
  background: #1e40af !important;
  transform: translateY(-2px);
  box-shadow: var(--shadow-hover) !important;
}

/* 次要按钮（outline 风格）*/
.elementor-button.elementor-button-outline {
  background: transparent !important;
  border: 2px solid var(--brand-primary) !important;
  color: var(--brand-primary) !important;
}
.elementor-button.elementor-button-outline:hover {
  background: var(--brand-primary) !important;
  color: #fff !important;
}

/* ── 卡片 ────────────────────────────────── */
.elementor-widget-icon-box,
.elementor-widget-image-box,
article.type-product,
article.type-solution {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-md);
  padding: 2rem;
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}
.elementor-widget-icon-box:hover,
.elementor-widget-image-box:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
  border-color: var(--brand-primary);
}

/* ── 标题 ────────────────────────────────── */
h1, h2, h3 { font-weight: 700; letter-spacing: -.02em; line-height: 1.3; }
h1 { font-size: clamp(2rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); }
h3 { font-size: clamp(1.1rem, 2vw, 1.5rem); }

/* ── Hero 区域 ───────────────────────────── */
.elementor-section.hero-section,
.e-con.hero-section {
  min-height: 90vh;
  display: flex;
  align-items: center;
  background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 50%, #1a56db 100%);
  position: relative;
  overflow: hidden;
}
.hero-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.hero-section .elementor-widget-heading .elementor-heading-title { color: #fff; }
.hero-section .elementor-widget-text-editor { color: rgba(255,255,255,.85); }

/* ── 表单 ────────────────────────────────── */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.wpcf7-form select {
  width: 100%;
  padding: .75rem 1rem;
  border: 1.5px solid var(--border-color);
  border-radius: var(--radius-sm);
  font-family: var(--font-sans);
  font-size: .95rem;
  color: var(--text-primary);
  transition: var(--transition);
  background: #fff;
}
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
  outline: none;
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 3px rgba(26,86,219,.15);
}

/* ── 产品/方案列表 ───────────────────────── */
.post-type-archive-product .entry-title,
.post-type-archive-solution .entry-title { font-size: 1.25rem; }

.archive .hentry {
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  border: 1px solid var(--border-color);
}
.archive .hentry:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }

/* ── 标签/徽章 ───────────────────────────── */
.badge {
  display: inline-flex;
  align-items: center;
  padding: .2rem .75rem;
  background: rgba(26,86,219,.1);
  color: var(--brand-primary);
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 600;
}

/* ── 页脚 ────────────────────────────────── */
.site-footer {
  background: #0f172a !important;
  color: rgba(255,255,255,.7) !important;
  padding: 3rem 0 !important;
}
.site-footer a { color: rgba(255,255,255,.7); }
.site-footer a:hover { color: #fff; }

/* ── 响应式 ──────────────────────────────── */
@media (max-width: 768px) {
  :root { --radius-md: 8px; }
  .elementor-widget-icon-box,
  .elementor-widget-image-box { padding: 1.25rem; }
  .hero-section { min-height: 70vh; }
}

/* ── 工具类 ──────────────────────────────── */
.text-brand  { color: var(--brand-primary); }
.text-muted  { color: var(--text-secondary); }
.bg-light    { background: var(--bg-light); }
.shadow-card { box-shadow: var(--shadow-md); }
.rounded     { border-radius: var(--radius-md); }
.section-padding { padding: 5rem 0; }

/* ── 滚动条美化 ──────────────────────────── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-light); }
::-webkit-scrollbar-thumb { background: var(--brand-primary); border-radius: 3px; }
