/* roulang page: index */
:root {
      --color-primary: #1e2a38;
      --color-accent: #c8a97e;
      --color-accent-hover: #b8945e;
      --color-bg: #f7f5f2;
      --color-text-primary: #1a1a1a;
      --color-text-secondary: #4a4a4a;
      --color-text-muted: #8c8c8c;
      --color-emerald: #2d6a4f;
      --color-border-light: #e8e5e0;
      --color-border-input: #d4d0ca;
      --font-sans: 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif;
      --font-mono: 'SF Mono', 'Menlo', 'Monaco', 'Consolas', monospace;
    }

    * {
      box-sizing: border-box;
    }

    body {
      font-family: var(--font-sans);
      background-color: #ffffff;
      margin: 0;
      padding: 0;
      color: var(--color-text-secondary);
      line-height: 1.75;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    img {
      max-width: 100%;
      height: auto;
      display: block;
    }

    a {
      text-decoration: none;
      color: inherit;
      transition: color 0.2s ease;
    }

    button, input, textarea {
      font-family: inherit;
    }

    .container {
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1.5rem;
      padding-right: 1.5rem;
    }

    @media (min-width: 1024px) {
      .container {
        padding-left: 2rem;
        padding-right: 2rem;
      }
    }

    /* 导航分屏联动 */
    .nav-split {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
    }

    .nav-left {
      width: 55%;
      display: flex;
      align-items: center;
    }

    .nav-right {
      width: 45%;
      display: flex;
      align-items: center;
      justify-content: flex-end;
    }

    @media (max-width: 1023px) {
      .nav-left, .nav-right {
        width: auto;
      }
    }

    /* Hero 分屏 */
    .hero-split {
      display: flex;
      align-items: center;
      gap: 2rem;
      padding: 100px 0 80px;
      background-color: var(--color-bg);
    }

    .hero-left {
      width: 55%;
    }

    .hero-right {
      width: 45%;
      display: flex;
      justify-content: center;
    }

    @media (max-width: 1023px) {
      .hero-split {
        flex-direction: column;
        padding: 60px 0 60px;
      }
      .hero-left, .hero-right {
        width: 100%;
      }
      .hero-right {
        order: -1;
        margin-bottom: 2rem;
      }
    }

    /* 手风琴过渡 */
    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.4s ease, padding 0.4s ease;
    }
    .faq-item.active .faq-answer {
      max-height: 300px;
    }

    /* 卡片悬浮 */
    .card-hover {
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .card-hover:hover {
      transform: translateY(-4px);
      box-shadow: var(--tw-shadow-card-hover, 0 8px 30px rgba(30,42,56,0.10), 0 2px 8px rgba(0,0,0,0.06));
    }

    /* 汉堡菜单 */
    .mobile-menu {
      display: none;
    }
    @media (max-width: 1023px) {
      .desktop-nav {
        display: none;
      }
      .mobile-menu {
        display: block;
      }
    }

    /* 图片占位风格 */
    .img-placeholder {
      background-color: #e8e5e0;
      border: 2px dashed #d4d0ca;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #8c8c8c;
      font-size: 14px;
      border-radius: 12px;
      overflow: hidden;
    }
