/* ==========================================
   工具类样式 - 用于替代内联样式
   ========================================== */

/* 文本对齐 */
.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

/* 背景样式 - 纯色深灰 */
.bg-gradient-dark {
    background: #151515 !important;
}

.bg-gradient-blue {
    background: var(--gradient-blue);
}

.bg-gradient-purple {
    background: var(--gradient-purple);
}

.bg-gradient-orange {
    background: linear-gradient(135deg, #ff6b35 0%, #ff8c42 100%);
}

/* 颜色 */
.color-white {
    color: var(--color-white);
}

.color-cyan {
    color: var(--color-cyan);
}

.color-purple-light {
    color: var(--color-purple-light);
}

.color-gray-light {
    color: var(--color-gray-light);
}

/* 字体大小 */
.font-size-xl {
    font-size: 3rem;
}

.font-size-lg {
    font-size: 2.5rem;
}

.font-size-md {
    font-size: 2rem;
}

.font-size-normal {
    font-size: 1.1rem;
}

.font-size-sm {
    font-size: 0.9rem;
}

/* 字体粗细 */
.font-weight-600 {
    font-weight: 600;
}

.font-weight-700 {
    font-weight: 700;
}

/* 间距 */
.mb-1 {
    margin-bottom: 1rem;
}

.mb-05 {
    margin-bottom: 0.5rem;
}

.mb-08 {
    margin-bottom: 0.8rem;
}

.mb-15 {
    margin-bottom: 1.5rem;
}

.mb-2 {
    margin-bottom: 2rem;
}

.mt-05 {
    margin-top: 0.5rem;
}

.mt-1 {
    margin-top: 1rem;
}

.mt-3 {
    margin-top: 3rem;
}

/* 时间轴标题 */
.timeline-title {
    color: var(--color-white);
    margin-bottom: 0.5rem;
}

/* 特殊样式 */
.max-width-900 {
    max-width: 900px;
}

.max-width-800 {
    max-width: 800px;
}

.max-width-600 {
    max-width: 600px;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.padding-3 {
    padding: 3rem;
}

.padding-2 {
    padding: 2rem;
}

/* 数据展示样式 */
.stat-number {
    color: var(--color-gold);
    font-size: 3rem;
    margin-bottom: 1rem;
}

.stat-title {
    color: var(--color-white);
    font-weight: 600;
    font-size: 1.1rem;
}

.stat-desc {
    margin-top: 0.5rem;
}

/* 步骤编号 */
.step-number {
    font-size: 2.5rem;
    color: var(--color-gold);
    margin-bottom: 1rem;
}

/* 图标大小 */
.icon-xl {
    font-size: 3rem;
    margin-bottom: 1.5rem;
}

.icon-xxl {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

/* Flex布局 */
.flex {
    display: flex;
}

.flex-gap-15 {
    gap: 1.5rem;
}

.justify-center {
    justify-content: center;
}

.flex-wrap {
    flex-wrap: wrap;
}

/* CTA按钮容器 */
.cta-buttons {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* 圆形头像容器 */
.avatar-circle {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
}

.avatar-gradient-blue {
    background: var(--gradient-blue);
}

.avatar-gradient-purple {
    background: var(--gradient-purple);
}

/* 隐藏元素（用于打字机效果） */
.visibility-hidden {
    visibility: hidden;
}

/* 行高 */
.line-height-2 {
    line-height: 2;
}

.line-height-18 {
    line-height: 1.8;
}

/* 页面hero背景 */
.page-hero-bg-visual {
    background: linear-gradient(135deg, rgba(26, 26, 46, 0.9), rgba(22, 33, 62, 0.9)), 
                url('data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1200 600%22><rect fill=%22%231a1a2e%22 width=%221200%22 height=%22600%22/><g fill=%22%234a90e2%22 opacity=%220.1%22><circle cx=%22200%22 cy=%22150%22 r=%2280%22/><circle cx=%22800%22 cy=%22400%22 r=%22120%22/><circle cx=%22600%22 cy=%22200%22 r=%2260%22/></g></svg>');
    background-size: cover;
    background-position: center;
}

.page-hero-bg-vr {
    background: linear-gradient(135deg, rgba(26, 26, 46, 0.9), rgba(22, 33, 62, 0.9)), 
                url('data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1200 600%22><rect fill=%22%231a1a2e%22 width=%221200%22 height=%22600%22/><g fill=%22%239d4edd%22 opacity=%220.1%22><rect x=%22100%22 y=%22100%22 width=%22200%22 height=%22200%22 transform=%22rotate(45 200 200)%22/><rect x=%22700%22 y=%22250%22 width=%22150%22 height=%22150%22 transform=%22rotate(30 775 325)%22/></g></svg>');
    background-size: cover;
    background-position: center;
}

.page-hero-bg-immersive {
    background: linear-gradient(135deg, rgba(26, 26, 46, 0.9), rgba(22, 33, 62, 0.9)), 
                url('data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1200 600%22><rect fill=%22%231a1a2e%22 width=%221200%22 height=%22600%22/><g fill=%22%2300d4ff%22 opacity=%220.1%22><path d=%22M0,300 Q300,100 600,300 T1200,300%22 stroke=%22%2300d4ff%22 stroke-width=%2220%22 fill=%22none%22/></g></svg>');
    background-size: cover;
    background-position: center;
}

.page-hero-bg-cultural {
    background: linear-gradient(135deg, rgba(26, 26, 46, 0.9), rgba(22, 33, 62, 0.9)), 
                url('data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1200 600%22><rect fill=%22%231a1a2e%22 width=%221200%22 height=%22600%22/><g fill=%22%23ff6b35%22 opacity=%220.1%22><polygon points=%22200,100 300,300 100,300%22/><polygon points=%22900,200 1000,450 800,450%22/><polygon points=%22500,50 650,200 350,200%22/></g></svg>');
    background-size: cover;
    background-position: center;
}

/* CTA按钮 - 毛玻璃渐变边框设计 */
.btn-white {
    background: var(--gradient-gold) !important;
    color: #2d1810 !important;
    position: relative;
    overflow: hidden;
    font-weight: 700;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    z-index: 10;
    border: none;
    box-shadow: 0 4px 15px rgba(230, 191, 136, 0.35);
}

.btn-white::before {
    display: none;
}

.btn-white::after {
    display: none;
}

.btn-white:hover {
    background: var(--gradient-gold-light) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 30px rgba(230, 191, 136, 0.55), 0 0 40px rgba(230, 191, 136, 0.35) !important;
}

.btn-white:active {
    transform: translateY(-1px) !important;
}

/* 宽度100% */
.width-100 {
    width: 100%;
}

/* 卡片内容样式组合 */
.card-center {
    text-align: center;
}

/* footer链接颜色 */
.footer-link-gray {
    color: var(--color-gray-light);
}

/* CTA区域样式 - 与"为什么选择我们"统一背景色 */
.cta-section {
    background: #151515 !important;
    text-align: center;
    padding: 6rem 0;
    position: relative;
    overflow: hidden;
}

.cta-section::before {
    display: none;
}

@keyframes cta-glow {
    0%, 100% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
    }
    50% {
        transform: translate(-5%, -5%) scale(1.1);
        opacity: 0.8;
    }
}

.cta-section::after {
    display: none;
}

.cta-section h2 {
    color: var(--color-white);
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    position: relative;
    z-index: 10;
    background: linear-gradient(135deg, 
        #ffffff 0%, 
        #f0d0a0 50%,
        #e6bf88 100%
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: 0.5px;
}

.cta-section p {
    color: rgba(255, 255, 255, 0.85);
    font-size: 1.25rem;
    margin-bottom: 3rem;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 10;
    line-height: 1.8;
    font-weight: 400;
}

.cta-purple {
    background: #151515 !important;
}

.cta-purple::before {
    display: none;
}

.cta-orange {
    background: #151515 !important;
}

.cta-orange::before {
    display: none;
}

/* 内边距 */
.py-5 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

/* 响应式 */
@media (max-width: 768px) {
    .font-size-xl {
        font-size: 2rem;
    }
    
    .font-size-lg {
        font-size: 1.8rem;
    }
}

