/* ══════════════════════════════════════
   企业采购支持页 · enterprise-support.css
   页面级样式，对应 pages/enterprise-support.php
   ══════════════════════════════════════ */

/* ── CSS 变量 ── */
:root {
  --mkl-ent-brand: #0071e3;
}

/* ══════════════════════════════════════
   Typography（页面私有，不影响全局）
   ══════════════════════════════════════ */
.mkl-ent-section-title {
  font-size: 30px;
  font-weight: 600;
  color: #1D1D1F;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.mkl-ent-cap-title {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.3;
}
.mkl-ent-cap-desc {
  font-size: 17px;
  font-weight: 400;
  color: #6E6E73;
  line-height: 1.55;
  margin-top: 10px;
}
.mkl-ent-section-sub {
  font-size: 17px;
  font-weight: 400;
  color: #6E6E73;
  line-height: 1.55;
  margin-top: 14px;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}
.mkl-ent-caption {
  font-size: 13px;
  font-weight: 400;
  color: #86868B;
  letter-spacing: 0.02em;
  line-height: 1.4;
}

/* ══════════════════════════════════════
   Reveal
   ══════════════════════════════════════ */
.mkl-ent-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.65s cubic-bezier(0.22, 0.61, 0.36, 1),
              transform 0.65s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.mkl-ent-reveal.is-visible { opacity: 1; transform: translateY(0); }

.mkl-ent-mode-fade {
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.mkl-ent-mode-fade.mkl-ent-switching {
  opacity: 0;
  transform: translateY(6px);
}

/* ══════════════════════════════════════
   Section 1 · Hero
   ══════════════════════════════════════ */
.mkl-ent-hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FAFAFA;
  padding: 0 40px;
  position: relative;
}
.mkl-ent-hero-inner {
  text-align: center;
  max-width: 980px;
}
.mkl-ent-hero-title {
  font-size: clamp(40px, 4vw, 60px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.04em;
  color: #1D1D1F;
}
.mkl-ent-hero-sub {
  font-size: clamp(18px, 1.5vw, 22px);
  font-weight: 400;
  line-height: 1.5;
  color: #6E6E73;
  margin-top: 20px;
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}
.mkl-ent-cta-wrap { margin-top: 40px; }

/* Pill CTA */
.mkl-ent-pill-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 9999px;
  padding: 16px 40px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: filter 0.3s ease, transform 0.15s ease, background-color 0.35s ease;
  -webkit-user-select: none;
  user-select: none;
  font-family: inherit;
  background-color: var(--mkl-ent-brand);
}
.mkl-ent-pill-btn:hover { filter: brightness(1.08); }
.mkl-ent-pill-btn:active { transform: scale(0.97); }

/* 发送按钮：适度宽 + 字间距拉开 */
.mkl-ent-pill-btn--send {
  padding: 12px 48px;
  font-size: 15px;
  letter-spacing: 0.12em;
}

/* Scroll arrow */
.mkl-ent-scroll-arrow {
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
}
.mkl-ent-scroll-arrow svg:nth-child(1) {
  animation: mklEntArrowFloat 1.6s ease-in-out infinite;
}
.mkl-ent-scroll-arrow svg:nth-child(2) {
  margin-top: -4px;
  animation: mklEntArrowFloat 1.6s ease-in-out infinite 0.3s;
}
@keyframes mklEntArrowFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(6px); }
}

/* ══════════════════════════════════════
   Section 2 · Inquiry
   ══════════════════════════════════════ */
.mkl-ent-inquiry {
  background: linear-gradient(180deg, #FAFAFA 0%, #FFFFFF 80px, #FFFFFF 100%);
  padding: 120px 40px 80px;
}
.mkl-ent-inquiry-outer {
  max-width: 980px;
  margin: 0 auto;
}

/* 提交后整屏居中 */
.mkl-ent-inquiry.mkl-ent-submitted {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  background: #FFFFFF;
}
.mkl-ent-inquiry.mkl-ent-submitted .mkl-ent-inquiry-outer { width: 100%; }

/* Mode Switcher */
.mkl-ent-mode-switcher {
  display: inline-flex;
  gap: 4px;
  padding: 3px;
  background: #F0F0F3;
  border-radius: 9999px;
}
.mkl-ent-mode-pill {
  padding: 10px 32px;
  font-size: 15px;
  font-weight: 500;
  border-radius: 9999px;
  border: none;
  background: transparent;
  color: #86868B;
  cursor: pointer;
  transition: all 0.3s ease;
  -webkit-user-select: none;
  user-select: none;
  font-family: inherit;
}
.mkl-ent-mode-pill.active {
  background: #FFFFFF;
  color: #1D1D1F;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08), 0 0 1px rgba(0,0,0,0.06);
}
.mkl-ent-mode-pill:not(.active):hover { color: #6E6E73; }

/* Header */
.mkl-ent-inquiry-header {
  text-align: center;
  margin-bottom: 80px;
  transition: opacity 0.4s ease, max-height 0.5s ease, margin 0.4s ease;
}
.mkl-ent-inquiry-header .mkl-ent-mode-switcher { margin-bottom: 44px; }

.mkl-ent-inquiry-header.mkl-ent-fade-hide {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  margin: 0;
  pointer-events: none;
}

/* Capabilities strip */
.mkl-ent-cap-strip {
  display: flex;
  gap: 64px;
  margin-bottom: 72px;
  padding: 40px 48px;
  border-top: 1px solid #F0F0F3;
  border-radius: 12px;
  transition: background-color 0.4s ease, opacity 0.4s ease;
}
.mkl-ent-cap-col { flex: 1; }

/* ══════════════════════════════════════
   Form
   ══════════════════════════════════════ */
.mkl-ent-form-wrap {
  max-width: 680px;
  margin: 0 auto;
}
.mkl-ent-form-body {
  display: flex;
  flex-direction: column;
  gap: 48px;
  transition: opacity 0.35s ease, transform 0.35s ease;
}
.mkl-ent-form-body.mkl-ent-fade-out {
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
}

.mkl-ent-form-field--pills { margin-top: 8px; }
.mkl-ent-form-row { display: flex; gap: 32px; }
.mkl-ent-form-row > .mkl-ent-form-field { flex: 1; }
.mkl-ent-form-field label { display: block; margin-bottom: 8px; }

/* 公司抬头半宽 = 联系人字段等宽 */
.mkl-ent-form-field--half {
  max-width: calc(50% - 16px);
}

.mkl-ent-form-field input,
.mkl-ent-form-field textarea {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid #D2D2D7;
  border-radius: 0;
  outline: none;
  font-family: inherit;
  font-size: 17px;
  color: #1D1D1F;
  padding: 4px 0 8px;
  transition: border-color 0.3s ease;
  -webkit-appearance: none;
}
.mkl-ent-form-field input:focus,
.mkl-ent-form-field textarea:focus { border-bottom-color: var(--mkl-ent-brand); }
.mkl-ent-form-field input::placeholder,
.mkl-ent-form-field textarea::placeholder { color: #C7C7CC; }
.mkl-ent-form-field textarea { resize: none; }

/* Validation */
.mkl-ent-form-field input.has-error,
.mkl-ent-form-field textarea.has-error { border-bottom-color: #FF3B30; }
.mkl-ent-form-field input.has-error:focus,
.mkl-ent-form-field textarea.has-error:focus { border-bottom-color: #FF3B30; }
.mkl-ent-field-error {
  font-size: 12px;
  color: #FF3B30;
  margin-top: 4px;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.mkl-ent-field-error.show { opacity: 1; }

/* Pill group */
.mkl-ent-pill-group { display: flex; gap: 10px; margin-top: 4px; flex-wrap: wrap; }
.mkl-ent-pill-option {
  border-radius: 9999px;
  padding: 8px 20px;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #D2D2D7;
  background: transparent;
  color: #86868B;
  cursor: pointer;
  transition: all 0.3s ease;
  -webkit-user-select: none;
  user-select: none;
  font-family: inherit;
}
.mkl-ent-pill-option.selected { color: #FFFFFF; }
.mkl-ent-pill-option:not(.selected):hover { border-color: #86868B; color: #6E6E73; }

.mkl-ent-form-submit { margin-top: 8px; }
.mkl-ent-form-promise { margin-top: 16px; }

/* ══════════════════════════════════════
   Confirmation
   ══════════════════════════════════════ */
.mkl-ent-confirm-msg { text-align: center; padding: 48px 0; display: none; }
.mkl-ent-confirm-headline { font-size: 22px; font-weight: 600; color: #1D1D1F; line-height: 1.4; margin-top: 20px; }
.mkl-ent-confirm-sub { font-size: 17px; color: #6E6E73; margin-top: 10px; line-height: 1.55; }

.mkl-ent-confirm-check circle {
  stroke-dasharray: 138;
  stroke-dashoffset: 138;
  animation: mklEntDrawCircle 0.4s cubic-bezier(0.22,0.61,0.36,1) forwards;
}
.mkl-ent-confirm-check polyline {
  stroke-dasharray: 30;
  stroke-dashoffset: 30;
  animation: mklEntDrawCheck 0.3s cubic-bezier(0.22,0.61,0.36,1) 0.3s forwards;
}
@keyframes mklEntDrawCircle { to { stroke-dashoffset: 0; } }
@keyframes mklEntDrawCheck { to { stroke-dashoffset: 0; } }

/* ══════════════════════════════════════
   WeChat QR
   ══════════════════════════════════════ */
.mkl-ent-wechat-area { margin-top: 80px; text-align: center; }
.mkl-ent-wechat-divider { display: flex; align-items: center; gap: 20px; margin-bottom: 32px; }
.mkl-ent-wechat-divider::before,
.mkl-ent-wechat-divider::after { content: ''; flex: 1; height: 1px; background: #E5E5EA; }
.mkl-ent-wechat-area .mkl-ent-qr-image {
  width: 80px;
  height: 80px;
  border-radius: 8px;
  object-fit: cover;
  padding: 6px;
  background: #FFFFFF;
  border: 1px solid #E5E5EA;
  margin: 0 auto 14px;
  display: block;
}
