/* 量化公司首页：本地光场、矢量标志、统一图标和动效。 */

:root {
    --bg-deep: #ffffff;
    --bg-base: #ffffff;
    --bg-elev-1: #ffffff;
    --bg-elev-2: #f4f7fb;
    --bg-paper: #ffffff;
    --tx-primary: #0e1116;
    --tx-secondary: #2c3544;
    --tx-muted: #5c6b7c;
    --accent-gold: #163a73;
    --accent-gold-2: #1d4f9c;
    --accent-violet: #163a73;
    --accent-navy: #0e1116;
    --accent-magenta: #163a73;
    --glass-line: rgba(14, 17, 22, 0.1);
    --glass-line-2: rgba(14, 17, 22, 0.16);
    --f-serif: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
    --f-sans: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
}

html { background: #fff; }

body {
    background: #fff;
    color: #2c3544;
    font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body::before {
    background: #fff !important;
    background-image: none !important;
}

body::after { display: none !important; }

.mesh-stage { display: none !important; }

.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #111;
    transform: scaleX(0);
    transform-origin: left center;
    z-index: 3000;
    pointer-events: none;
}

/* 导航：白、薄、标志很小 */
.navbar {
    background: rgba(255, 255, 255, 0.82) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(14, 17, 22, 0.06);
    box-shadow: none !important;
}

.navbar.scrolled {
    background: rgba(255, 255, 255, 0.96) !important;
    border-bottom-color: rgba(14, 17, 22, 0.1);
}

.nav-logo a {
    display: flex;
    align-items: center;
    gap: 10px;
    width: auto;
    height: auto;
    overflow: visible;
    line-height: 1;
    text-decoration: none;
}

.nav-logo img {
    width: auto;
    height: 56px;
    max-width: none;
    object-fit: contain;
    margin: 0;
    background: transparent;
    display: block;
}

.nav-logo span {
    color: #0e1116;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    white-space: nowrap;
}

.nav-link {
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    color: #1a1f27 !important;
}

.nav-link::after {
    background: #111 !important;
    height: 1px !important;
}

.nav-toggle span { background: #0e1116 !important; }

@media (max-width: 768px) {
    .nav-menu {
        background: #fff !important;
    }
    .nav-link { color: #1a1f27 !important; }
}

/* 行情条贴在导航下，浅底，不抢首屏 */
.market-ticker {
    top: 78px;
    height: 34px;
    background: rgba(255, 255, 255, 0.72);
    border-bottom: 1px solid rgba(14, 17, 22, 0.06);
    box-shadow: none;
    color: #3d4b5c;
    backdrop-filter: blur(10px);
}

.market-ticker::before {
    background: linear-gradient(90deg, #fff, transparent);
}
.market-ticker::after {
    background: linear-gradient(-90deg, #fff, transparent);
}

.ticker-symbol { color: #0e1116; }

/* 首屏：AE 星场循环。画面本身在动，不做透明度闪烁，也不缩放整层。 */
.hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #f7f8fa;
    padding: 140px 24px 90px;
    overflow: hidden;
    background: #05070d !important;
    background-image: none !important;
}

.hero-sky-shift { display: none !important; }

.hero-video {
    display: block !important;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1 !important;
    z-index: 0;
    pointer-events: none;
    background: #05070d;
    animation: none !important;
    transform: none !important;
}

.hero-light,
.hero-panel { display: none !important; }

.pointer-glow {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.35s ease;
    background: radial-gradient(460px circle at var(--gx, 50%) var(--gy, 42%), rgba(17, 17, 17, 0.08), rgba(17, 17, 17, 0) 68%);
}
.pointer-glow.on { opacity: 1; }

.hero .pointer-glow {
    background: radial-gradient(560px circle at var(--gx, 50%) var(--gy, 42%), rgba(255, 255, 255, 0.22), rgba(180, 200, 255, 0) 66%);
}

.hero-background { display: none !important; }

.hero-content {
    width: min(980px, 100%);
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
    animation: none !important;
    filter: none !important;
    transition: transform 0.45s cubic-bezier(.16, 1, .3, 1);
}

.hero-content::before { display: none !important; }

.hero-kicker {
    display: block;
    margin: 0 0 1.25rem;
    padding: 0;
    border: none;
    border-radius: 0;
    background: none;
    color: rgba(244, 247, 251, 0.72);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-shadow: none;
}

.hero-title {
    font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
    font-weight: 700;
    font-size: clamp(2.5rem, 5.6vw, 4.75rem);
    line-height: 1.12;
    letter-spacing: -0.035em;
    max-width: 12em;
    margin: 0 auto 1.1rem;
    color: #f7f8fa;
    background: none;
    -webkit-text-fill-color: #f7f8fa;
    text-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

.hero-subtitle,
.hero-subtitle.hero-lead {
    color: rgba(244, 247, 251, 0.84);
    font-size: 1.05rem;
    line-height: 1.75;
    font-weight: 400;
    max-width: 36rem;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.hero-buttons {
    justify-content: center;
    margin-top: 1.8rem;
}

.hero-kicker { animation: riseIn 1.5s 0.08s both !important; }
.hero-title { animation: riseIn 1.7s 0.28s both !important; }
.hero-subtitle { animation: riseIn 1.5s 0.62s both !important; }
.hero-subtitle + .hero-subtitle { animation-delay: 0.86s !important; }
.hero-buttons { animation: riseIn 1.5s 1.08s both !important; }

.course-header-content {
    position: relative;
    z-index: 2;
    animation: none !important;
    filter: none !important;
    transition: transform 0.45s cubic-bezier(.16, 1, .3, 1);
}
.course-header-content > * { animation: riseIn 1.35s both !important; }
.course-header-content > *:nth-child(1) { animation-delay: 0.05s; }
.course-header-content > *:nth-child(2) { animation-delay: 0.14s; }
.course-header-content > *:nth-child(3) { animation-delay: 0.24s; }
.course-header-content > *:nth-child(4) { animation-delay: 0.34s; }
.course-header-content > *:nth-child(5) { animation-delay: 0.44s; }
.course-header-content > *:nth-child(6) { animation-delay: 0.54s; }
.course-header-content > *:nth-child(7) { animation-delay: 0.64s; }

.learn-hero h1 { animation: riseIn 0.85s 0.08s both; }
.learn-hero p { animation: riseIn 0.85s 0.24s both; }

.ln,
.ln-in,
.play .ln-in,
.fx-char,
.fx-char.is-on {
    display: inline;
    overflow: visible !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    animation: none !important;
}

@keyframes riseIn {
    from { opacity: 0; transform: translateY(46px); }
    to { opacity: 1; transform: none; }
}

.hero-scroll {
    color: rgba(255, 255, 255, 0.82);
    z-index: 2;
    animation: bob 1.8s ease-in-out infinite !important;
}
.hero-scroll i { color: rgba(255, 255, 255, 0.82); }

.hero .btn-primary {
    background: #f7f8fa !important;
    color: #0e1116 !important;
}
.hero .btn-primary:hover {
    background: #d9e6f5 !important;
    color: #0e1116 !important;
}
.hero .btn-outline {
    background: transparent !important;
    color: #f7f8fa !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
}
.hero .btn-outline:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
}

@keyframes bob {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(14px); }
}

.btn {
    border-radius: 999px;
    font-weight: 500;
    letter-spacing: 0;
    box-shadow: none;
}

.btn::before { display: none !important; }

.btn-primary,
.btn-course,
.btn-order {
    background: #0e1116 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}

.btn-primary:hover,
.btn-course:hover,
.btn-order:hover {
    background: #333 !important;
    color: #fff !important;
    box-shadow: none !important;
}

.btn-outline {
    background: rgba(255, 255, 255, 0.45) !important;
    color: #0e1116 !important;
    border: 1px solid rgba(14, 17, 22, 0.35) !important;
    border-radius: 999px !important;
    backdrop-filter: none;
}

.btn-outline:hover {
    background: #fff !important;
    color: #0e1116 !important;
}

/* 正文区：白底，标题是黑体，不再用金线和纸纹 */
.about-section::before,
.method-section::before,
.research-section::before,
.path-section::before,
.courses-section::before,
.features-section::before,
.trial-section::before,
.faq-section::before,
.contact-section::before,
.complaint-section::before {
    background: transparent !important;
}

.method-section,
.path-section,
.faq-section {
    background: #f7f7f7 !important;
}

.section-header { position: static; }

.section-title,
.about-card h3,
.course-card h3,
.feature-item h3,
.path-card h3,
.method-step h3 {
    font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.03em !important;
    background: none !important;
    color: #0e1116 !important;
    -webkit-text-fill-color: #0e1116 !important;
}

.studio-stamp { display: none !important; }

.title-underline {
    display: block !important;
    width: 56px !important;
    height: 2px !important;
    margin: 0.85rem auto 1rem !important;
    border-radius: 0 !important;
    background: #111 !important;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.7s cubic-bezier(.16, 1, .3, 1) !important;
}

.section-header.is-visible .title-underline {
    transform: scaleX(1);
}

.about-icon {
    display: block !important;
    width: 36px;
    height: 36px;
    margin: 0 0 0.9rem;
    background: none !important;
    box-shadow: none !important;
}

.about-icon img,
.feature-icon img {
    width: 32px;
    height: 32px;
    display: block;
}

.about-card,
.method-step,
.path-card,
.feature-item,
.course-card,
.research-note,
.faq-item {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.about-card,
.method-step,
.feature-item,
.path-card,
.research-note,
.faq-item,
.contact-item,
.learn-card,
.trial-card,
.sidebar-card,
.detail-section,
.outline-week {
    transition: transform 0.45s cubic-bezier(.16, 1, .3, 1), box-shadow 0.45s ease, background 0.45s ease, border-color 0.45s ease !important;
}

.about-content,
.features-grid,
.path-grid {
    gap: 2.5rem;
}

.about-card,
.feature-item,
.path-card {
    text-align: left;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(14, 17, 22, 0.12) !important;
}

.method-steps {
    gap: 1.5rem;
}

.method-step {
    padding: 0.25rem 0.2rem 0.5rem;
    border-top: 1px solid rgba(14, 17, 22, 0.14) !important;
    background: transparent !important;
}

.method-step-num {
    width: auto;
    height: auto;
    margin-bottom: 0.65rem;
    padding: 0;
    border-radius: 0;
    background: none !important;
    color: #111 !important;
    font-family: "Noto Sans SC", sans-serif;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    box-shadow: none;
}

.feature-icon {
    width: auto !important;
    height: auto !important;
    margin: 0 0 0.75rem !important;
    background: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: #111 !important;
    font-size: 1.15rem !important;
    display: block;
}

.course-card {
    background: #fff !important;
    border: 1px solid #e6ebf2 !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    overflow: hidden;
}

.about-card:hover,
.method-step:hover,
.feature-item:hover,
.path-card:hover,
.research-note:hover,
.faq-item:hover,
.contact-item:hover,
.course-card:hover,
.learn-card:hover,
.trial-card:hover,
.sidebar-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 18px 40px rgba(16, 42, 90, 0.1) !important;
    background: #fff !important;
}

.content-item {
    border-radius: 12px;
    transition: background 0.3s ease, transform 0.3s ease !important;
}
.content-item:hover {
    background: #fff !important;
    transform: translateX(6px) !important;
}

.course-badge,
.course-badge-top,
.course-badge-large {
    background: transparent !important;
    color: #111 !important;
    border: 1px solid rgba(22, 58, 115, 0.28) !important;
    box-shadow: none !important;
    border-radius: 999px !important;
}

.course-price,
.course-price-large,
.price {
    background: none !important;
    color: #0e1116 !important;
    -webkit-text-fill-color: #0e1116 !important;
}

/* 课程页头：同一条星场 */
.course-header,
body[data-page="arbitrage"] .course-header {
    position: relative;
    background: #05070d !important;
    background-image: none !important;
    color: #f7f8fa !important;
    text-align: left;
    padding: 150px 24px 88px !important;
    overflow: hidden;
}

.course-header::before { display: none !important; }

.course-header::after { display: none !important; }

.course-header .container::before,
.hero-content::before {
    display: none !important;
    content: none !important;
    background: none !important;
}

.course-price-large::before {
    content: none !important;
    display: none !important;
}

.course-header .container { position: relative; z-index: 1; }

.course-header h1,
.course-subtitle,
.course-header .hero-subtitle,
.course-header .course-price-large,
.course-header .course-meta,
.course-header .course-badge-large {
    color: #f7f8fa !important;
    -webkit-text-fill-color: #f7f8fa !important;
    background: none !important;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
    font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
}
.course-header .course-badge-large {
    border-color: rgba(255, 255, 255, 0.45) !important;
}

.course-header h1 {
    font-weight: 700 !important;
    letter-spacing: -0.03em !important;
}

.course-subtitle,
.course-header .hero-subtitle {
    color: #333 !important;
}

.course-price-large {
    border-top-color: rgba(14, 17, 22, 0.16) !important;
}

.course-price-large::before {
    background: transparent !important;
    color: #111 !important;
    -webkit-text-fill-color: #111 !important;
}

.info-item {
    grid-template-columns: 1fr !important;
}
.info-item > img {
    display: none !important;
}

.detail-section,
.outline-week,
.feature-box,
.sidebar-card {
    background: #ffffff !important;
    border: 1px solid #e6ebf2 !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    color: #2c3544 !important;
}

.sidebar-card h3,
.content-text h3,
.detail-section h2,
.outline-week h3 {
    color: #0e1116 !important;
    -webkit-text-fill-color: #0e1116 !important;
    background: none !important;
}

.fx-char {
    display: inline-block;
    opacity: 0;
    transform: translateY(0.55em);
    filter: blur(8px);
}

.fx-char.is-on {
    opacity: 1;
    transform: none;
    filter: none;
    animation: fxFlash 0.7s cubic-bezier(.16, .84, .28, 1) forwards;
}

@keyframes fxFlash {
    0% { opacity: 0; transform: translateY(0.62em); filter: blur(10px); }
    55% { opacity: 1; filter: blur(0); }
    100% { opacity: 1; transform: none; filter: none; }
}

img.ae-icon,
.about-icon,
.content-icon img { display: none !important; }

.content-icon {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
}

.content-list { counter-reset: ae; }
.content-item { counter-increment: ae; }
.content-icon::before {
    content: counter(ae, decimal-leading-zero);
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 0.12em;
    color: #e10600;
}

.content-icon {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    width: 36px !important;
    height: 36px !important;
}

.content-icon::after { display: none !important; }

.content-icon img,
.content-item .ae-icon {
    width: 32px;
    height: 32px;
    margin: 0;
}

.detail-section h2 .ae-icon,
.outline-week h3 .ae-icon,
.sidebar .ae-icon {
    width: 22px;
    height: 22px;
}

body,
.course-details,
.details-main,
.learn-container,
.trial-container,
.complaint-section,
.mycourses-page {
    background-color: #fff !important;
}

.auth-page,
.success-page {
    background: #fff !important;
    background-image: none !important;
}

footer {
    background: #fff !important;
    background-image: none !important;
    color: #666 !important;
    border-top: 1px solid #eee;
}

[data-reveal] {
    opacity: 0 !important;
    filter: none !important;
    transform: translateY(36px);
    transition: opacity 0.7s cubic-bezier(.16, 1, .3, 1), transform 0.7s cubic-bezier(.16, 1, .3, 1) !important;
}

[data-reveal].is-visible {
    opacity: 1 !important;
    filter: none !important;
    transform: none;
}

/* 子页里后写的紫色 / 金色块，统一回同一套冷白 */
.learn-hero {
    position: relative;
    overflow: hidden;
}

.learn-hero,
.trial-landing,
.trial-page,
.learn-page,
.quiz-page,
.complaint-section,
.research-page,
.auth-page,
.mycourses-page {
    background: #fff !important;
    background-image: none !important;
    color: #222 !important;
}

.learn-hero h1,
.learn-hero p,
.quiz-title,
.trial-card h3 {
    color: #0e1116 !important;
}

.learn-card-header {
    background: #0e1116 !important;
    color: #fff !important;
}

.quiz-container,
.auth-card,
.trial-card,
.complaint-card {
    background: #fff !important;
    border: 1px solid #e6ebf2 !important;
    box-shadow: none !important;
}

.quiz-submit,
.quiz-modal-btn {
    background: #0e1116 !important;
    color: #fff !important;
}

.trial-banner {
    background: #f6f6f6 !important;
    color: #222 !important;
    border-left: 2px solid #111 !important;
}

.trial-card:hover {
    border-color: #111 !important;
}

.btn:hover,
.nav-link:hover {
    transform: translateY(-1px);
}

@media (max-width: 1100px) {
    .hero { flex-direction: column; align-items: flex-start; padding: 120px 24px 64px; }
    .hero-panel { position: relative; right: auto; top: auto; width: min(100%, 560px); margin-top: 12px; }
    .hero-light { display: none; }
}

@media (max-width: 768px) {
    [data-reveal] { transform: translateY(24px) !important; }
    [data-reveal].is-visible { transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
    .hero-kicker,
    .hero-subtitle,
    .hero-buttons,
    .course-header-content > *,
    .learn-hero h1,
    .learn-hero p {
        animation-name: riseIn !important;
        animation-duration: 1.5s !important;
        animation-fill-mode: both !important;
        transition-duration: 0.8s !important;
    }

    .hero-title {
        animation-name: riseIn !important;
        animation-duration: 1.7s !important;
        animation-fill-mode: both !important;
    }

    .hero-scroll {
        animation-name: bob !important;
        animation-duration: 1.8s !important;
        animation-iteration-count: infinite !important;
    }

    [data-reveal] {
        opacity: 0 !important;
        transform: translateY(40px) !important;
        transition: opacity 0.9s cubic-bezier(.16, 1, .3, 1), transform 0.9s cubic-bezier(.16, 1, .3, 1) !important;
    }

    [data-reveal].is-visible {
        opacity: 1 !important;
        transform: none !important;
    }
}

.about-card:hover,
.method-step:hover,
.feature-item:hover,
.path-card:hover,
.research-note:hover,
.faq-item:hover,
.contact-item:hover,
.course-card:hover,
.learn-card:hover,
.trial-card:hover,
.sidebar-card:hover {
    transform: translateY(-8px) !important;
}
