/* roulang page: index */
:root {
      --color-primary: #1B4D3E;
      --color-primary-dark: #132A24;
      --color-secondary: #4E8773;
      --color-accent: #E07A5F;
      --color-bg-base: #F7F9F6;
      --color-text-main: #11221C;
      --color-text-body: #33413B;
      --color-text-muted: #6B7A72;
    }
    body {
      background-color: var(--color-bg-base);
      color: var(--color-text-body);
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    .custom-container {
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1rem;
      padding-right: 1rem;
    }
    @media (min-width: 640px) { .custom-container { padding-left: 1.5rem; padding-right: 1.5rem; } }
    @media (min-width: 1024px) { .custom-container { padding-left: 2rem; padding-right: 2rem; } }
    
    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease-out, opacity 0.3s ease;
      opacity: 0;
    }
    .faq-item.active .faq-answer {
      max-height: 300px;
      opacity: 1;
    }
    .faq-item.active .faq-icon {
      transform: rotate(180deg);
    }
    .touch-target {
      min-height: 44px;
      min-width: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
