/* ============================================
   心缘堂 · 移动端深色沉浸主题
   Mobile Immersive Dark Theme
   ============================================
   设计理念：「一眼入心」——口袋里的东方殿堂
   触发条件：max-width: 768px
   ============================================ */

/* ===== CSS 变量（移动端覆盖） ===== */
@media (max-width: 768px) {
  :root {
    /* 深色沉浸色彩系统 */
    --m-bg:         #0A0806;
    --m-bg-card:    rgba(255,250,240,0.06);
    --m-bg-card-hover: rgba(255,250,240,0.10);
    --m-gold:       #C9A84C;
    --m-gold-light: #E8CB7A;
    --m-gold-dim:   rgba(201,168,76,0.6);
    --m-text:       #E8E0D4;
    --m-text-muted: #8A7B68;
    --m-text-dim:   rgba(255,255,255,0.35);
    --m-border:     rgba(201,168,76,0.12);
    --m-border-glow: rgba(201,168,76,0.3);
    --m-white:      #FFFFFF;
    --m-blur:       blur(20px);
    --m-radius:     12px;
    --m-radius-sm:  8px;
    --m-font-serif: 'Noto Serif SC', 'STSong', '宋体', serif;
    --m-font-sans:  'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  }

  /* ===== 全局基础重置 ===== */
  html {
    font-size: 14px;
    scroll-behavior: smooth;
  }

  body {
    background: var(--m-bg) !important;
    color: var(--m-text) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
  }

  * {
    max-width: 100vw;
  }

  a { color: inherit; }

  /* ===== 容器 ===== */
  .container {
    padding: 0 20px !important;
    max-width: 100% !important;
  }

  /* ===== 通用按钮系统 ===== */
  .btn {
    padding: 14px 32px !important;
    border-radius: var(--m-radius-sm) !important;
    font-family: var(--m-font-serif) !important;
    font-size: 0.95rem !important;
    letter-spacing: .1em !important;
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
  }

  .btn-gold {
    background: linear-gradient(135deg, var(--m-gold), #A07830) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 4px 20px rgba(201,168,76,0.3) !important;
  }
  .btn-gold:active {
    transform: scale(0.97) !important;
    box-shadow: 0 2px 10px rgba(201,168,76,0.2) !important;
  }

  .btn-outline {
    background: transparent !important;
    color: var(--m-gold) !important;
    border: 1.5px solid var(--m-border-glow) !important;
  }
  .btn-outline:active {
    background: rgba(201,168,76,0.1) !important;
  }

  /* ===== 导航栏 — 深色毛玻璃 ===== */
  .navbar {
    background: rgba(10,8,6,0.88) !important;
    backdrop-filter: var(--m-blur) !important;
    -webkit-backdrop-filter: var(--m-blur) !important;
    border-bottom: 1px solid var(--m-border) !important;
    padding: 0 0 !important;
  }
  .navbar__inner {
    height: 56px !important;
  }
  .navbar__logo-main {
    color: var(--m-white) !important;
    font-size: 1.3rem !important;
  }
  .navbar__logo-main span {
    color: var(--m-gold) !important;
  }
  .navbar__logo-sub {
    display: none !important;
  }
  .navbar__cta {
    display: none !important; /* 移动端隐藏顶部CTA，改用底部浮动条 */
  }

  /* 导航链接 — 全屏侧滑面板 */
  .navbar__nav {
    position: fixed !important;
    top: 0 !important;
    right: -100% !important;
    width: 80vw !important;
    max-width: 320px !important;
    height: 100vh !important;
    background: rgba(10,8,6,0.97) !important;
    backdrop-filter: blur(30px) !important;
    -webkit-backdrop-filter: blur(30px) !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 80px 36px 40px !important;
    gap: 0 !important;
    transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border-left: 1px solid var(--m-border) !important;
    z-index: 9999 !important;
  }
  .navbar__nav.open {
    right: 0 !important;
  }
  .navbar__nav li {
    width: 100%;
  }
  .navbar__nav a {
    display: block !important;
    font-size: 1.1rem !important;
    padding: 16px 0 !important;
    color: var(--m-text-muted) !important;
    border-bottom: 1px solid rgba(201,168,76,0.08) !important;
    letter-spacing: .08em !important;
    font-family: var(--m-font-serif) !important;
  }
  .navbar__nav a:hover,
  .navbar__nav a.active {
    color: var(--m-gold) !important;
    border-bottom-color: var(--m-gold) !important;
    background: transparent !important;
  }

  /* 汉堡按钮 */
  .navbar__hamburger {
    display: flex !important;
    gap: 5px !important;
    padding: 8px !important;
    z-index: 10001 !important;
  }
  .navbar__hamburger span {
    width: 22px !important;
    height: 1.5px !important;
    background: var(--m-gold) !important;
    border-radius: 2px;
  }

  /* 菜单遮罩 */
  .mobile-menu-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 9998;
  }
  .mobile-menu-overlay.active {
    display: block;
  }

  /* ===== Hero 区域 ===== */
  .hero {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    padding: 80px 0 60px !important;
    display: flex !important;
    align-items: center !important;
    background: var(--m-bg) !important;
  }
  .hero::before,
  .hero::after {
    display: none !important;
  }
  .hero__inner {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
  }
  .hero__visual {
    display: none !important; /* 移动端隐藏Canvas命盘 */
  }
  .hero__badge {
    font-size: 0.6rem !important;
    padding: 5px 14px !important;
    margin-bottom: 20px !important;
  }
  .hero__title {
    font-size: clamp(1.8rem, 7vw, 2.6rem) !important;
    line-height: 1.35 !important;
    letter-spacing: .1em !important;
    margin-bottom: 20px !important;
  }
  .hero__subtitle {
    font-size: 0.88rem !important;
    color: rgba(255,255,255,0.55) !important;
    line-height: 2 !important;
    max-width: 100% !important;
    margin-bottom: 32px !important;
  }

  /* 痛点标签 */
  .hero__content > div[style*="flex-wrap:wrap"] {
    gap: 6px !important;
    margin-bottom: 16px !important;
  }

  /* 双CTA垂直排列 */
  .hero__actions {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .hero__actions .btn {
    width: 100% !important;
    text-align: center !important;
  }

  /* 服务标签横排 */
  .hero__tags {
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 28px !important;
    justify-content: center !important;
  }
  .hero__tag {
    font-size: 0.7rem !important;
    padding: 4px 12px !important;
  }

  /* 信任微文案 */
  .hero__content > p[style*="已服务"] {
    text-align: center !important;
  }

  /* 国旗横排 */
  .hero__content > div[style*="服务覆盖"] {
    justify-content: center !important;
  }

  /* ===== 数字统计条 — 水平滚动 ===== */
  .stats-bar {
    background: rgba(10,8,6,0.95) !important;
    border-bottom: 1px solid var(--m-border) !important;
    padding: 0 !important;
  }
  .stats-bar__inner {
    grid-template-columns: repeat(4, 1fr) !important;
  }
  .stats-item {
    padding: 24px 12px !important;
    border-right: 1px solid var(--m-border) !important;
  }
  .stats-item:hover {
    background: rgba(201,168,76,0.04) !important;
  }
  .stats-item__num {
    font-size: 1.6rem !important;
    color: var(--m-gold) !important;
  }
  .stats-item__label {
    font-size: 0.72rem !important;
    color: var(--m-text-dim) !important;
  }

  /* ===== 东方命理体系卡片 ===== */
  section[style*="东方命理体系"],
  section[style*="泰国法事"] {
    background: var(--m-bg) !important;
  }

  /* 六大体系/法事卡片的grid */
  section[style*="grid-template-columns:repeat(3,1fr)"],
  section[style*="grid-template-columns:repeat(2,1fr)"] {
    /* 被内联样式覆盖，需要用 !important 或 JS 处理 */
  }

  /* ===== 关于简介 ===== */
  .about-preview {
    background: var(--m-bg) !important;
    padding: 60px 0 !important;
  }
  .about-preview__grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
  .about-preview__img-wrap {
    max-height: 280px;
  }
  .about-preview__tag-badge {
    right: 16px !important;
    bottom: 16px !important;
    padding: 14px 18px !important;
  }
  .about-preview__content {
    padding-right: 0 !important;
  }
  .about-preview__title {
    color: var(--m-white) !important;
    font-size: clamp(1.4rem, 4vw, 1.8rem) !important;
  }
  .about-preview__title span {
    color: var(--m-gold) !important;
  }
  .about-preview__text {
    color: var(--m-text-muted) !important;
    font-size: 0.88rem !important;
    line-height: 2 !important;
  }
  .about-preview__list {
    grid-template-columns: 1fr !important;
  }
  .about-preview__list-item {
    color: var(--m-text) !important;
    font-size: 0.85rem !important;
  }

  /* ===== 服务预览 ===== */
  .services-preview {
    background: var(--m-bg) !important;
    padding: 60px 0 !important;
  }
  .services-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .service-card {
    background: var(--m-bg-card) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: var(--m-radius) !important;
    padding: 28px 22px !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: all 0.3s ease !important;
  }
  .service-card:active {
    transform: scale(0.98) !important;
    background: var(--m-bg-card-hover) !important;
  }
  .service-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: var(--m-border-glow) !important;
  }
  .service-card::before {
    background: linear-gradient(90deg, var(--m-gold), var(--m-gold-light)) !important;
    transform: scaleX(1) !important;
    opacity: 0.6;
  }
  .service-card__icon {
    background: rgba(201,168,76,0.1) !important;
  }
  .service-card__icon i {
    color: var(--m-gold) !important;
  }
  .service-card__title {
    color: var(--m-white) !important;
    font-size: 1.05rem !important;
  }
  .service-card__desc {
    color: var(--m-text-muted) !important;
    font-size: 0.84rem !important;
    line-height: 1.9 !important;
  }
  .service-card__more {
    color: var(--m-gold) !important;
  }
  .service-card__number {
    color: rgba(201,168,76,0.06) !important;
  }

  /* 专属定制卡 */
  .service-card[style*="linear-gradient"] {
    background: rgba(201,168,76,0.08) !important;
    border-color: var(--m-border-glow) !important;
  }
  .service-card[style*="专属定制"] div[style*="font-size:1.8rem"] {
    color: var(--m-gold) !important;
  }
  .service-card[style*="专属定制"] p {
    color: rgba(255,255,255,0.45) !important;
  }
  .service-card[style*="专属定制"] .btn-outline {
    border-color: var(--m-gold) !important;
    color: var(--m-gold) !important;
  }

  /* ===== 理念版块 ===== */
  .philosophy {
    padding: 60px 0 !important;
    background: linear-gradient(135deg, #0E0A04, #1A1208, #0E0A04) !important;
  }
  .philosophy__quote {
    font-size: clamp(1.1rem, 3.5vw, 1.5rem) !important;
    padding: 0 10px !important;
  }
  .philosophy__cards {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1px !important;
    background: var(--m-border) !important;
    margin-top: 40px !important;
    border-radius: var(--m-radius) !important;
    overflow: hidden;
  }
  .philosophy__card {
    padding: 24px 16px !important;
    background: rgba(10,8,6,0.8) !important;
  }
  .philosophy__card:hover {
    background: rgba(201,168,76,0.06) !important;
  }
  .philosophy__card-char {
    font-size: 1.8rem !important;
  }

  /* ===== 师傅简介 ===== */
  section[style*="师傅简介"] {
    background: var(--m-bg) !important;
    padding: 60px 0 !important;
  }
  section[style*="师傅简介"] div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  /* ===== 八字速测工具 ===== */
  #bazi-tool {
    padding: 60px 0 !important;
    background: var(--m-bg) !important;
  }
  #bazi-tool .reveal[style*="max-width:820px"] {
    margin: 32px auto 0 !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: var(--m-radius) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
  #bazi-form-area {
    padding: 28px 20px !important;
  }
  #bazi-form-area div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  #bazi-form-area div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
  #bazi-form-area label {
    font-size: 0.72rem !important;
  }
  #bazi-form-area input,
  #bazi-form-area select {
    font-size: 14px !important;
    padding: 12px 14px !important;
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(201,168,76,0.2) !important;
    color: #fff !important;
    border-radius: var(--m-radius-sm) !important;
  }
  #bazi-form-area button {
    margin-top: 8px !important;
  }
  #bazi-form-area p[style*="仅作性格"] {
    font-size: 0.7rem !important;
  }

  /* 结果区 */
  #bazi-result-area {
    padding: 28px 20px !important;
  }
  #bazi-result-area div[style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
  }
  #bazi-result-area div[style*="font-size:2rem"] {
    font-size: 1.4rem !important;
  }
  #bazi-result-area div[style*="padding:28px 32px"] {
    padding: 20px 16px !important;
  }
  #personality-block {
    padding: 18px 16px !important;
    border-radius: 0 var(--m-radius-sm) var(--m-radius-sm) 0 !important;
  }

  /* ===== 客户评价 ===== */
  section[style*="CLIENT TESTIMONIALS"] {
    background: rgba(10,8,6,0.95) !important;
    padding: 60px 0 !important;
  }
  section[style*="reviews-grid"] {
    display: none; /* 不存在，用下面的 grid 选择器 */
  }

  /* 评价卡片grid — 通用选择器 */
  section .reveal[style*="background:var(--white)"],
  section > div > div[style*="display:grid;grid-template-columns:repeat(3,1fr)"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  /* 评价卡片的样式覆盖 */
  section > div > div[style*="grid-template-columns:repeat(3,1fr)"] > div[style*="background:var(--white)"] {
    background: var(--m-bg-card) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: var(--m-radius) !important;
    padding: 24px 18px !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  section > div > div[style*="grid-template-columns:repeat(3,1fr)"] > div[style*="background:var(--white)"]:hover {
    transform: none !important;
    box-shadow: none !important;
  }
  section > div > div[style*="grid-template-columns:repeat(3,1fr)"] > div[style*="background:var(--white)"] p[style*="color:var(--text)"] {
    color: var(--m-text) !important;
    font-size: 0.84rem !important;
  }
  section > div > div[style*="grid-template-columns:repeat(3,1fr)"] > div[style*="background:var(--white)"] div[style*="color:var(--ink)"] {
    color: var(--m-white) !important;
  }

  /* ===== CTA 区域 ===== */
  .cta-section {
    background: var(--m-bg) !important;
    padding: 60px 0 !important;
    text-align: center !important;
  }
  .cta-section__title {
    color: var(--m-white) !important;
    font-size: clamp(1.3rem, 4vw, 1.8rem) !important;
  }
  .cta-section__desc {
    color: var(--m-text-muted) !important;
    font-size: 0.85rem !important;
  }
  .cta-section__actions {
    flex-direction: column !important;
    align-items: center !important;
  }
  .cta-section__actions .btn {
    width: 100% !important;
    max-width: 320px;
  }

  /* ===== 页脚 ===== */
  .footer {
    background: #060402 !important;
    padding: 40px 0 20px !important;
  }
  .footer__grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding-bottom: 32px !important;
  }
  .footer__brand-name {
    color: var(--m-white) !important;
  }
  .footer__col-title {
    color: var(--m-white) !important;
    border-bottom-color: var(--m-gold) !important;
  }
  .footer__links a {
    color: var(--m-text-muted) !important;
    font-size: 0.84rem !important;
  }
  .footer__contact-item {
    font-size: 0.84rem !important;
    color: var(--m-text-muted) !important;
  }
  .footer__desc {
    color: var(--m-text-dim) !important;
    font-size: 0.82rem !important;
  }
  .footer__bottom {
    color: rgba(255,255,255,0.2) !important;
    font-size: 0.7rem !important;
  }
  .footer__social {
    justify-content: flex-start !important;
  }

  /* ===== 社交悬浮按钮 — 移动端优化 ===== */
  .social-float {
    right: 14px !important;
    bottom: 90px !important; /* 避开底部浮动条 */
  }
  .social-float__toggle {
    width: 48px !important;
    height: 48px !important;
    background: linear-gradient(135deg, var(--m-gold), #A07830) !important;
    box-shadow: 0 4px 20px rgba(201,168,76,0.35) !important;
    border-radius: 50% !important;
  }
  .social-float__btn {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
  }

  /* ===== 底部浮动CTA条 ===== */
  .mobile-cta-bar {
    display: flex !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9000 !important;
    padding: 12px 20px !important;
    padding-bottom: max(12px, env(safe-area-inset-bottom)) !important;
    background: linear-gradient(to bottom, transparent, rgba(10,8,6,0.95) 35%, rgba(10,8,6,0.98) 100%) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-top: 1px solid var(--m-border) !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .mobile-cta-bar .mobile-cta-btn {
    flex: 1 !important;
    max-width: 200px !important;
    padding: 13px 16px !important;
    border-radius: var(--m-radius-sm) !important;
    font-family: var(--m-font-serif) !important;
    font-size: 0.88rem !important;
    letter-spacing: .08em !important;
    text-align: center !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    min-height: 46px !important;
    border: none !important;
  }
  .mobile-cta-btn--primary {
    background: linear-gradient(135deg, var(--m-gold), #A07830) !important;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(201,168,76,0.3) !important;
  }
  .mobile-cta-btn--secondary {
    background: transparent !important;
    color: var(--m-gold) !important;
    border: 1px solid var(--m-border-glow) !important;
  }

  /* ===== 通用 Section 标题 ===== */
  .section-title {
    color: var(--m-white) !important;
    font-size: clamp(1.3rem, 4vw, 1.8rem) !important;
  }
  .section-subtitle {
    color: var(--m-text-muted) !important;
    font-size: 0.82rem !important;
  }
  .section-divider i {
    color: var(--m-gold) !important;
  }
  .section-divider span {
    background: var(--m-gold) !important;
  }

  /* ===== 页面 Hero（子页面） ===== */
  .page-hero {
    padding: 100px 0 50px !important;
    background: var(--m-bg) !important;
  }
  .page-hero::before {
    display: none !important;
  }
  .page-hero h1 {
    color: var(--m-white) !important;
    font-size: clamp(1.6rem, 5vw, 2.2rem) !important;
  }
  .page-hero p {
    color: var(--m-text-muted) !important;
    font-size: 0.85rem !important;
  }

  /* ===== 滚动揭示动画 — 移动端优化 ===== */
  .reveal,
  .reveal-left,
  .reveal-right {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  /* 仅在支持JS的设备上使用动画 */
  .reveal-animate {
    opacity: 0 !important;
    transform: translateY(20px) !important;
    transition: opacity 0.5s ease, transform 0.5s ease !important;
  }
  .reveal-animate.visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }

  /* ===== 星象粒子画布 ===== */
  #starCanvas {
    opacity: 0.2 !important;
  }

  /* ===== 横屏手机 ===== */
  @media (max-width: 768px) and (orientation: landscape) {
    .hero {
      min-height: auto !important;
      padding: 70px 0 40px !important;
    }
    .hero__title {
      font-size: clamp(1.4rem, 4vw, 2rem) !important;
    }
  }

  /* ===== 极小屏幕（< 360px） ===== */
  @media (max-width: 360px) {
    .hero__title {
      font-size: 1.6rem !important;
    }
    .stats-bar__inner {
      grid-template-columns: repeat(2, 1fr) !important;
    }
    #bazi-form-area div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] {
      grid-template-columns: 1fr !important;
    }
  }
}

/* ===== 子页面专属移动端覆盖 ===== */

/* -- 定价页 -- */
@media (max-width: 768px) {
  .pricing-card {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(201,168,76,0.12) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 12px !important;
  }
  .pricing-card:hover {
    transform: none !important;
    border-color: rgba(201,168,76,0.3) !important;
  }
  .pricing-card.recommended {
    border-color: var(--m-gold) !important;
    box-shadow: 0 0 30px rgba(201,168,76,0.15) !important;
  }
  .cat-tab {
    background: rgba(255,255,255,0.04) !important;
    border-color: rgba(201,168,76,0.15) !important;
    color: var(--m-text-muted) !important;
    font-size: 0.8rem !important;
    padding: 9px 16px !important;
  }
  .cat-tab.active {
    background: var(--m-gold) !important;
    color: #fff !important;
    border-color: var(--m-gold) !important;
  }
  .mkt-tab {
    background: rgba(255,255,255,0.04) !important;
    border-color: rgba(201,168,76,0.12) !important;
    color: var(--m-text-muted) !important;
    font-size: 0.78rem !important;
  }
  .mkt-tab.active {
    background: var(--m-gold) !important;
    color: #fff !important;
  }
}

/* -- 联系页 -- */
@media (max-width: 768px) {
  .contact-info-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    margin-bottom: 40px !important;
  }
  .contact-info-card {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(201,168,76,0.12) !important;
    border-radius: 12px !important;
    padding: 24px 16px !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .contact-info-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: rgba(201,168,76,0.25) !important;
  }
  .contact-info-card__icon {
    background: rgba(201,168,76,0.1) !important;
  }
}

/* -- 博客页 -- */
@media (max-width: 768px) {
  .blog-layout {
    grid-template-columns: 1fr !important;
  }
  .blog-sidebar {
    display: none !important;
  }
  .blog-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .blog-featured {
    grid-column: 1 !important;
  }
  .filter-tabs {
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .filter-tabs::-webkit-scrollbar {
    display: none !important;
  }
  .filter-tab {
    white-space: nowrap !important;
    padding: 7px 16px !important;
    font-size: 0.75rem !important;
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(201,168,76,0.12) !important;
    color: var(--m-text-muted) !important;
    border-radius: 100px !important;
  }
  .filter-tab.active {
    background: var(--m-gold) !important;
    color: #fff !important;
    border-color: var(--m-gold) !important;
  }
  /* 博客卡片 */
  .blog-card {
    background: rgba(255,255,255,0.04) !important;
    border: 1px solid rgba(201,168,76,0.12) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .blog-card:hover {
    transform: none !important;
  }
  .blog-card:hover img {
    transform: none !important;
  }
  .blog-card-body {
    padding: 16px !important;
  }
  .blog-card-body h3 {
    font-size: 0.95rem !important;
    color: var(--m-white) !important;
  }
  .blog-card-body p {
    color: var(--m-text-muted) !important;
    font-size: 0.82rem !important;
  }
  .blog-card-meta {
    color: var(--m-text-dim) !important;
    font-size: 0.72rem !important;
  }
  .blog-card-tag {
    background: rgba(201,168,76,0.1) !important;
    color: var(--m-gold) !important;
    border: none !important;
    padding: 3px 10px !important;
    border-radius: 100px !important;
    font-size: 0.65rem !important;
  }
  /* 博客详情页 */
  .blog-detail {
    padding: 30px 20px !important;
  }
  .blog-detail h1 {
    color: var(--m-white) !important;
    font-size: 1.5rem !important;
  }
  .blog-detail .content {
    color: var(--m-text) !important;
    line-height: 2 !important;
    font-size: 0.9rem !important;
  }
  .blog-detail .content h2 {
    color: var(--m-white) !important;
    font-size: 1.2rem !important;
  }
  .blog-detail .content h3 {
    color: var(--m-white) !important;
  }
}

/* -- 服务详情页 -- */
@media (max-width: 768px) {
  .service-block {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding-bottom: 48px !important;
    margin-bottom: 48px !important;
  }
  .service-block.reverse {
    direction: ltr !important;
  }
  .service-block.reverse > * {
    direction: ltr !important;
  }
  .service-block__img {
    max-height: 220px !important;
  }
  .service-block__title {
    color: var(--m-white) !important;
    font-size: clamp(1.2rem, 4vw, 1.6rem) !important;
  }
  .service-block__desc {
    color: var(--m-text-muted) !important;
    font-size: 0.85rem !important;
    line-height: 2 !important;
  }
  .service-block__features li {
    color: var(--m-text) !important;
    font-size: 0.84rem !important;
  }
  .service-block__en {
    color: var(--m-gold) !important;
  }
  .service-block__tagline {
    color: var(--m-text-dim) !important;
  }
  .service-block__num {
    color: rgba(201,168,76,0.08) !important;
  }
  .service-block__badge {
    background: rgba(201,168,76,0.15) !important;
    color: var(--m-gold) !important;
    border-color: rgba(201,168,76,0.3) !important;
  }
  .service-block__img-char {
    color: rgba(201,168,76,0.1) !important;
  }
  .service-block__more {
    color: var(--m-gold) !important;
  }
}

/* -- 关于页 -- */
@media (max-width: 768px) {
  .about-content p {
    color: var(--m-text) !important;
    font-size: 0.88rem !important;
  }
  .about-content h2 {
    color: var(--m-white) !important;
  }
  .about-timeline-item {
    color: var(--m-text-muted) !important;
  }
  /* 内联标题颜色覆盖 */
  section[style*="about"] h2[style*="color:var(--ink)"],
  section h2[style*="color:var(--ink)"] {
    color: var(--m-white) !important;
  }
  section p[style*="color:var(--text-muted)"] {
    color: var(--m-text-muted) !important;
  }
  section p[style*="color:var(--text)"] {
    color: var(--m-text) !important;
  }
  section div[style*="color:var(--ink)"] {
    color: var(--m-white) !important;
  }
  section li[style*="color:var(--text)"] {
    color: var(--m-text) !important;
  }
  section span[style*="color:var(--gold)"] {
    color: var(--m-gold) !important;
  }
  /* 内联背景色覆盖 */
  section[style*="background:var(--bg)"] {
    background: var(--m-bg) !important;
  }
  section[style*="background:var(--bg-section)"] {
    background: var(--m-bg) !important;
  }
  section[style*="background:var(--bg-warm)"] {
    background: rgba(201,168,76,0.04) !important;
  }
}

/* -- 师傅页 -- */
@media (max-width: 768px) {
  .master-intro-grid {
    grid-template-columns: 1fr !important;
  }
}

/* -- 定价页会员卡 -- */
@media (max-width: 768px) {
  .membership-section {
    padding: 40px 0 !important;
    background: var(--m-bg) !important;
  }
  .membership-card {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding: 32px 20px !important;
    border-radius: var(--m-radius) !important;
  }
  .membership-title {
    font-size: clamp(1.2rem, 4vw, 1.6rem) !important;
    color: var(--m-white) !important;
  }
  .membership-desc {
    font-size: 0.82rem !important;
    color: rgba(255,255,255,0.5) !important;
  }
  .membership-perks {
    padding-left: 0 !important;
  }
  .membership-perks li {
    font-size: 0.8rem !important;
    color: var(--m-text) !important;
    line-height: 1.8 !important;
    padding: 6px 0 !important;
  }
  .membership-prices {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
  }
  .mem-price-card {
    padding: 16px 12px !important;
    text-align: center !important;
  }
  .mem-price-val {
    font-size: 1.3rem !important;
  }
  .mem-price-sub {
    font-size: 0.68rem !important;
  }
  .membership-cta {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    padding: 14px 24px !important;
  }

  /* 加购项 */
  .addons-section {
    padding: 40px 0 !important;
    background: var(--m-bg) !important;
  }
  .addons-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .addon-card {
    background: var(--m-bg-card) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: var(--m-radius) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .addon-card:hover {
    transform: none !important;
  }
  .addon-name {
    color: var(--m-white) !important;
    font-size: 0.85rem !important;
  }
  .addon-desc {
    color: var(--m-text-muted) !important;
  }
  .addon-price-row {
    background: rgba(255,255,255,0.04) !important;
  }
  .addon-price-mkt {
    color: var(--m-text-dim) !important;
  }
  .addon-price-val {
    color: var(--m-gold) !important;
  }

  /* 信任背书区 */
  section[style*="padding:64px 0 0;background:var(--bg)"] {
    background: var(--m-bg) !important;
    padding-top: 40px !important;
  }
  section[style*="padding:64px 0 0;background:var(--bg)"] div[style*="color:var(--ink)"] {
    color: var(--m-white) !important;
  }

  /* 底部CTA */
  .bottom-cta {
    background: var(--m-bg) !important;
    padding: 60px 0 !important;
  }
  .bottom-cta__title {
    color: var(--m-white) !important;
    font-size: clamp(1.2rem, 4vw, 1.6rem) !important;
  }
  .bottom-cta__desc {
    color: var(--m-text-muted) !important;
    font-size: 0.82rem !important;
  }
  .bottom-cta__btns {
    flex-direction: column !important;
    align-items: center !important;
  }
  .bottom-cta__btns .btn {
    width: 100% !important;
    max-width: 320px;
  }
  .btn-outline-white {
    background: transparent !important;
    color: var(--m-gold) !important;
    border: 1px solid var(--m-border-glow) !important;
  }

  /* FAQ */
  .faq-section {
    background: var(--m-bg) !important;
    padding: 40px 0 80px !important;
  }
  .faq-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .faq-item {
    background: var(--m-bg-card) !important;
    border: 1px solid var(--m-border) !important;
    border-radius: var(--m-radius-sm) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .faq-q {
    color: var(--m-white) !important;
    font-size: 0.88rem !important;
  }
  .faq-a {
    color: var(--m-text-muted) !important;
    font-size: 0.82rem !important;
  }

  /* 套餐卡片 */
  .pricing-section {
    background: var(--m-bg) !important;
    padding-bottom: 40px !important;
  }
  .tier-name {
    color: var(--m-white) !important;
  }
  .tier-tagline {
    color: var(--m-text-muted) !important;
  }
  .price-amount {
    color: var(--m-white) !important;
  }
  .pricing-card--featured .price-amount {
    color: var(--m-gold) !important;
  }
  .price-currency,
  .price-unit,
  .price-note {
    color: var(--m-text-dim) !important;
  }
  .features-list li {
    color: var(--m-text) !important;
    font-size: 0.78rem !important;
  }
  .card-cta {
    min-height: 44px !important;
  }
}

/* -- 六爻页 -- */
@media (max-width: 768px) {
  .liuyao-container {
    padding: 20px 16px !important;
  }
  .liuyao-grid {
    grid-template-columns: 1fr !important;
  }
  .gua-display {
    font-size: 1.6rem !important;
  }
}

/* ===== 命盘解锁启动动画 ===== */
.mobile-splash {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #0A0806;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity 0.8s ease;
  pointer-events: none;
}
.mobile-splash.fade-out {
  opacity: 0;
}
.mobile-splash__disk {
  width: 120px;
  height: 120px;
  border: 2px solid rgba(201,168,76,0.4);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: splash-rotate 3s linear infinite;
  position: relative;
}
.mobile-splash__disk::before {
  content: '';
  position: absolute;
  inset: 8px;
  border: 1px dashed rgba(201,168,76,0.3);
  border-radius: 50%;
  animation: splash-rotate 5s linear infinite reverse;
}
.mobile-splash__disk::after {
  content: '缘';
  font-family: var(--m-font-serif);
  font-size: 2.2rem;
  color: #C9A84C;
  text-shadow: 0 0 30px rgba(201,168,76,0.5);
}
.mobile-splash__text {
  margin-top: 24px;
  font-family: var(--m-font-serif);
  font-size: 1.2rem;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.3em;
  animation: splash-fade 1.5s ease-in-out infinite alternate;
}
@keyframes splash-rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes splash-fade {
  from { opacity: 0.3; }
  to { opacity: 0.8; }
}

/* ===== 触摸涟漪效果 ===== */
.ripple {
  position: relative;
  overflow: hidden;
}
.ripple::after {
  content: '';
  position: absolute;
  border-radius: 50%;
  background: rgba(201,168,76,0.25);
  width: 100px;
  height: 100px;
  margin-top: -50px;
  margin-left: -50px;
  top: 50%;
  left: 50%;
  transform: scale(0);
  opacity: 1;
  pointer-events: none;
}
.ripple:active::after {
  animation: ripple-effect 0.5s ease-out;
}
@keyframes ripple-effect {
  0% { transform: scale(0); opacity: 0.5; }
  100% { transform: scale(3); opacity: 0; }
}

/* ===== 表单全局优化 ===== */
@media (max-width: 768px) {
  input, textarea, select {
    font-size: 16px !important; /* 防止iOS缩放 */
    min-height: 44px !important;
    border-radius: var(--m-radius-sm) !important;
  }
  .form-group {
    margin-bottom: 14px !important;
  }
  .form-label {
    font-size: 0.78rem !important;
    color: var(--m-text-muted) !important;
  }
  .btn-submit {
    width: 100% !important;
  }
}

/* ===== 触摸优化 ===== */
@media (hover: none) and (pointer: coarse) {
  *:hover {
    transform: none !important;
  }
  button, a, input, select, textarea {
    min-height: 44px !important;
    min-width: 44px !important;
  }
}

/* ===== PC端隐藏移动端专属元素 ===== */
@media (min-width: 769px) {
  .mobile-cta-bar {
    display: none !important;
  }
  .mobile-splash {
    display: none !important;
  }
  .mobile-menu-overlay {
    display: none !important;
  }
}
