/* roulang page: index */
:root {
            --c-primary: #0F2438;
            --c-accent: #F26522;
            --c-logic: #10B981;
            --c-dark: #0B132B;
            --c-surface: #F8FAFC;
            --c-border: #E2E8F0;
            --c-text: #0F172A;
            --c-subtext: #334155;
            --radius-sm: 4px;
            --radius-md: 8px;
        }

        html {
            scroll-behavior: smooth;
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: #FFFFFF;
            color: var(--c-text);
        }

        body {
            overflow-x: hidden;
            line-height: 1.75;
        }

        .container-custom {
            max-width: 1200px;
            margin-left: auto;
            margin-right: auto;
            padding-left: 1.25rem;
            padding-right: 1.25rem;
        }

        .section-split {
            border-top: 1px solid var(--c-border);
        }

        .btn-brand-accent {
            background-color: var(--c-accent);
            color: #FFFFFF;
            transition: all 0.2s ease-in-out;
        }
        .btn-brand-accent:hover {
            background-color: #D95314;
            transform: translateY(-1px);
            box-shadow: 0 4px 12px rgba(242, 101, 34, 0.28);
        }

        .btn-brand-outline {
            border: 1px solid #CBD5E1;
            color: #FFFFFF;
            background: rgba(15, 36, 56, 0.6);
            backdrop-filter: blur(4px);
            transition: all 0.2s ease;
        }
        .btn-brand-outline:hover {
            border-color: #FFFFFF;
            background: rgba(15, 36, 56, 0.9);
        }

        .card-tech {
            background-color: #FFFFFF;
            border: 1px solid var(--c-border);
            border-radius: var(--radius-md);
            transition: transform 0.2s ease, box-shadow 0.2s ease;
        }
        .card-tech:hover {
            transform: translateY(-3px);
            box-shadow: 0 10px 20px -5px rgba(15, 36, 56, 0.08);
            border-color: #CBD5E1;
        }

        .badge-status {
            display: inline-flex;
            align-items: center;
            font-size: 0.75rem;
            font-weight: 600;
            padding: 0.2rem 0.65rem;
            border-radius: var(--radius-sm);
        }

        .coupon-notch {
            position: relative;
            background: #FFFFFF;
            border: 1px dashed #CBD5E1;
        }
        .coupon-notch::before, .coupon-notch::after {
            content: '';
            position: absolute;
            top: 50%;
            width: 16px;
            height: 16px;
            background: #F8FAFC;
            border-radius: 50%;
            transform: translateY(-50%);
        }
        .coupon-notch::before { left: -9px; }
        .coupon-notch::after { right: -9px; }

        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }
        .accordion-item.active .accordion-content {
            max-height: 240px;
        }
        .accordion-item.active .accordion-icon {
            transform: rotate(180deg);
        }

        /* 移动端菜单控制 */
        #mobile-menu {
            transition: transform 0.3s ease-in-out;
        }
        #mobile-menu.hidden-menu {
            transform: translateX(100%);
        }
