/* roulang page: index */
:root {
      --color-obsidian: #0B0D11;
      --color-coldblack: #161920;
      --color-mint: #00D284;
      --color-bg-alt: #F7F9FB;
      --color-border: #E2E8F0;
      --color-text-main: #1F2937;
      --color-text-muted: #4B5563;
      --transition-smooth: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    }
    html {
      scroll-behavior: smooth;
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
    }
    .custom-shadow {
      box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
    }
    .custom-shadow-hover:hover {
      box-shadow: 0 12px 28px -4px rgba(0, 210, 132, 0.12);
      transform: translateY(-4px);
    }
    .carousel-slide {
      display: none;
      transition: opacity 0.5s ease-in-out;
    }
    .carousel-slide.active {
      display: block;
    }
    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease, padding 0.35s ease;
    }
    .faq-item.open .faq-answer {
      max-height: 240px;
    }
    .faq-item.open .faq-arrow {
      transform: rotate(180deg);
    }
