html, body { height: 100%; }
body { margin: 0; background: #fff; color: #1f2329; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.nav { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.nav-left { display: flex; align-items: center; gap: 12px; }
.nav-center { flex: 1; display: flex; align-items: center; justify-content: center; }
.logo { font-weight: 600; font-size: 18px; letter-spacing: .5px; color: #336AFF; }
.nav-right { display: flex; align-items: center; gap: 16px; }
.user { display: flex; align-items: center; gap: 8px; }
.auth { display: flex; align-items: center; gap: 8px; }
.pc-menu { display: none; }
.mobile-menu { display: block; }
.pc-menu { font-size: 16px; }
@media (min-width: 768px) {
    .pc-menu { display: block; }
    .mobile-menu { display: none; }
}
.footer { height: 56px; display: flex; align-items: center; justify-content: center; }
.section-title { font-size: 22px; font-weight: 600; margin-bottom: 16px; }
.section-title-group { position: relative; text-align: center; margin: 16px 0 24px; min-height: 160px; }
.section-title-en { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 80px; line-height: 80px; font-size: 80px; font-family: "SourceHanSansCN-Heavy", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif; font-weight: 800; letter-spacing: 6px; background: linear-gradient(180deg, rgba(235, 235, 235, 0.7) 0%, rgba(243, 243, 243, 0) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: rgba(238, 238, 238, 1); opacity: .9; pointer-events: none; user-select: none; z-index: 1; }
.section-title-group .section-title { position: absolute; top: 80px; left: 50%; transform: translateX(-50%); margin: 0; padding: 0; font-size: 32px; font-family: "PingFangSC-Medium", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif; font-weight: 600; color: rgba(51, 51, 51, 1); line-height: 32px; z-index: 2; }
@media (max-width: 767px) {
    .section-title-group { min-height: 50px; margin: 8px 0 16px; }
    .section-title-en { font-size: 32px; height: 32px; line-height: 32px; letter-spacing: 3px; }
    .section-title-group .section-title { top: 24px; font-size: 22px; line-height: 22px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .section-title-group { min-height: 140px; margin: 12px 0 20px; }
    .section-title-group .section-title { top: 72px; font-size: 26px; line-height: 26px; }
    .section-title-en { font-size: 72px; height: 72px; line-height: 72px; letter-spacing: 4px; }
}
.adv-grid { margin-top: 8px; }
.adv-card { display: flex; align-items: center; gap: 24px; }
.adv-icon { width: 40px; height: 40px; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #336AFF, #5985ff); color: #fff; }
.adv-content { flex: 1; }
.adv-title { font-size: 22px; font-weight: 600; margin-bottom: 4px; }
.section-inner { padding: 0; }
.carousel-wrap { width: 100%; }
.carousel-slide { height: 60vh; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 28px; font-weight: 600; }
.slide-1 { background: linear-gradient(135deg, #336AFF, #5985ff); }
.slide-2 { background: linear-gradient(135deg, #2955cc, #5985ff); }
.slide-3 { background: linear-gradient(135deg, #1e3a8a, #336AFF); }
@media (max-width: 767px) {
    .carousel-slide { height: 40vh; font-size: 20px; }
    .container { padding: 0 20px; }
    .section { padding: 28px 0; }
    .container .n-grid { margin-left: 0 !important; margin-right: 0 !important; }
    .container .n-grid .n-grid-item { padding-left: 0 !important; padding-right: 0 !important; }
    .section-inner { padding: 0 12px; }
    .scene-img img { width: 100%; height: auto; margin-right: 0; }
}
@media (min-width: 768px) {
    .section-inner { padding: 0 12px; }
}
@media (min-width: 1024px) {
    .section-inner { padding: 0 16px; }
}
@media (min-width: 1280px) {
    .section-inner { padding: 0 16px; }
}
.hero { 
    background: url(../../images/home/banner.png) no-repeat center center #00062C; 
    background-size: cover; 
    color: #fff; 
    position: relative;
    height: 500px; /* Default for large screens */
}
.hero-inner { 
    position: absolute; 
    top: 0; 
    left: 50%; 
    transform: translateX(-50%);
    width: 100%; 
    max-width: 1200px;
    height: 100%; 
    padding: 0 20px; 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    gap: 24px; 
    z-index: 1; 
    box-sizing: border-box;
}
.hero-title { font-size: 32px; font-weight: 700; line-height: 1.2; }
.hero-sub { margin-top: 8px; font-size: 16px; opacity: .95; }
.hero-actions { margin-top: 16px; display: flex; gap: 12px; }
@media (max-width: 767px) {
    .hero { 
        height: 150px; 
        background-position: 85% center;
    }
    .hero-inner { flex-direction: column; align-items: flex-start; justify-content: center; }
    .hero-title { font-size: 18px; } /* Reduce font size for small height */
    .hero-title { display: none;}
    .hero-sub { display: none; } /* Hide subtext to save space */
    .hero-actions { display: none; } /* Hide actions or make them smaller */
    .features-icon { width: 64px; height: 64px; margin-left: 0; }
    .adv-card { gap: 12px; }
}

/* Tablet adaptation */
@media (min-width: 768px) and (max-width: 1279px) {
    .hero { height: 300px; background-position: 70% center; }
}
.features-icon { width: 80px; height: 80px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: transparent; color: #336AFF; overflow: hidden; }
.features-icon img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* Advantages Section */
.advantage-wrapper { display: flex; flex-direction: column; gap: 0; }
.function-item3 { text-align: left; display: flex; align-items: center; justify-content: center; padding: 40px 0; flex-direction: column; }
.function-item3.reversed { flex-direction: column; } /* Mobile always column */

.function-item3 .item-img { width: 100%; max-width: 480px; height: auto; object-fit: contain; margin-bottom: 30px; }

.function-item3 .item-container { width: 100%; max-width: 490px; text-align: center; }

.function-item3 .title { position: relative; margin-bottom: 24px; display: inline-block; }
.function-item3 .title p { font-size: 28px; font-weight: 600; color: #333; line-height: 1.4; position: relative; z-index: 1; margin: 0; }
.function-item3 .title::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 12px; background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(51,106,255,0.15) 100%); z-index: 0; }

.function-item3 .desc { margin-top: 16px; font-size: 16px; font-weight: 400; color: #666; line-height: 28px; }

@media (min-width: 1024px) {
    .function-item3 { flex-direction: row; justify-content: space-between; padding: 80px 0; min-height: 400px; }
    .function-item3.reversed { flex-direction: row-reverse; }
    
    .function-item3 .item-img { width: 45%; margin-bottom: 0; }
    .function-item3 .item-container { width: 45%; text-align: left; }
    
    .function-item3 .title p { font-size: 36px; color: rgba(51,106,255,1); line-height: 54px; letter-spacing: 1px; }
    .function-item3 .title::after { display: none; } /* Hide mobile underline if not needed, or adjust */
    
    /* Target style adaptation */
    .function-item3 .title p { color: #333; } /* Use dark color as per image, or blue if preferred */
    .function-item3 .desc { margin-top: 39px; font-size: 18px; line-height: 30px; width: 450px; }
}

/* Fixed Header Styles */
.site-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; background: #fff; }
.main-content { padding-top: 64px; }