/* roulang page: index */
/* 自定义CSS变量与全局基础 */
    :root {
      --deep-black: #0A0E17;
      --warm-gold: #D4A853;
      --deep-gold: #C49A3C;
      --soft-white: #F0E6D2;
      --card-bg: #141A24;
      --border-muted: #2A2F3A;
      --text-body: #B0B8C1;
      --faq-expand: #1A1F2B;
      --transition-base: 0.3s ease;
    }
    
    * {
      box-sizing: border-box;
    }
    
    body {
      margin: 0;
      font-family: 'Inter', 'SF Pro Display', 'PingFang SC', 'Microsoft YaHei', 'Noto Sans SC', sans-serif;
      background-color: var(--deep-black);
      color: var(--text-body);
      line-height: 1.7;
      -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 var(--transition-base);
    }
    
    button, .btn {
      cursor: pointer;
      font-family: inherit;
      outline: none;
      border: none;
      background: none;
    }
    
    /* 自定义滚动条（横向场景） */
    .hide-scrollbar::-webkit-scrollbar {
      display: none;
    }
    .hide-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    
    /* 淡入上浮动效 */
    @keyframes fadeUpStagger {
      0% { opacity: 0; transform: translateY(24px); }
      100% { opacity: 1; transform: translateY(0); }
    }
    .hero-text-stagger span {
      display: inline-block;
      opacity: 0;
      animation: fadeUpStagger 0.8s forwards ease;
    }
    
    /* H2下划线伸展 */
    .section-title-underline {
      position: relative;
      display: inline-block;
    }
    .section-title-underline::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: -8px;
      width: 100%;
      height: 3px;
      background: var(--warm-gold);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 0.6s ease;
    }
    .section-title-underline.visible::after {
      transform: scaleX(1);
    }
    
    /* 数字递增样式预备（js控制） */
    .count-up {
      transition: all 0.1s linear;
    }
    
    /* 导航当前项高亮 */
    .nav-capsule.active {
      background-color: var(--warm-gold);
      color: var(--deep-black) !important;
      font-weight: 600;
    }
    
    /* 卡片悬停效果 */
    .card-hover {
      transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
    }
    .card-hover:hover {
      transform: translateY(-4px);
      border-color: var(--warm-gold);
      box-shadow: 0 12px 32px rgba(0,0,0,0.5);
    }
    
    /* FAQ手风琴动画 */
    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.4s ease-in-out, background-color 0.2s;
    }
    .faq-item.open .faq-answer {
      max-height: 300px; /* 足够容纳内容 */
      background-color: var(--faq-expand);
    }
    
    /* 移动端底部导航适配 */
    @media (max-width: 767px) {
      .desktop-nav { display: none !important; }
      .mobile-bottom-nav { display: flex !important; }
      body { padding-bottom: 80px; }
      .section-padding { padding: 80px 0; }
    }
    @media (min-width: 768px) {
      .mobile-bottom-nav { display: none !important; }
      .desktop-nav { display: flex !important; }
      .section-padding { padding: 120px 0; }
    }
    
    /* 其他辅助 */
    .gold-text { color: var(--warm-gold); }
    .bg-gold-glow { background: radial-gradient(circle at center, rgba(212,168,83,0.08) 0%, rgba(10,14,23,0) 70%); }

@keyframes float { 0% { transform: translateY(0px); } 50% { transform: translateY(-8px); } 100% { transform: translateY(0px); } }
