/* roulang page: index */
:root {
      --brand-primary: #0F356B;
      --brand-secondary: #0284C7;
      --brand-dark: #0A192F;
      --brand-light: #F8FAFC;
      --brand-card-border: #E2E8F0;
      --text-main: #0F172A;
      --text-muted: #475569;
      --text-sub: #64748B;
      --card-shadow: 0 10px 25px -5px rgba(15, 53, 107, 0.06), 0 8px 10px -6px rgba(15, 53, 107, 0.04);
      --card-shadow-hover: 0 20px 35px -5px rgba(15, 53, 107, 0.12), 0 10px 10px -5px rgba(15, 53, 107, 0.05);
    }
    html { scroll-behavior: smooth; }
    body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif; background-color: var(--brand-light); color: var(--text-main); line-height: 1.75; }
    .hero-portal-bg {
      background: linear-gradient(135deg, rgba(15, 53, 107, 0.94) 0%, rgba(10, 25, 47, 0.98) 100%), url('/assets/images/d27184573a91dd21.jpg') center/cover no-repeat;
    }
    .custom-card-shadow { box-shadow: var(--card-shadow); transition: transform 0.28s ease, box-shadow 0.28s ease; }
    .custom-card-shadow:hover { transform: translateY(-4px); box-shadow: var(--card-shadow-hover); }
    .code-term-bg { background-color: #0d1b2a; border-left: 4px solid var(--brand-secondary); }
    .accordion-content { max-height: 0; overflow: hidden; transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
    .accordion-open .accordion-content { max-height: 500px; }
