/* Reset & Common */ body { font-family: "Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", sans-serif; color: #333; -webkit-font-smoothing: antialiased; line-height: 1.6; } a { transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); } a:hover, a:focus { text-decoration: none; } /* Navbar */ .navbar-default { background-color: rgba(255, 255, 255, 0.95); box-shadow: 0 4px 12px rgba(0,0,0,0.05); border: none; padding: 15px 0; transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); backdrop-filter: blur(10px); } .navbar-default.navbar-scrolled { padding: 8px 0; background-color: rgba(255, 255, 255, 0.98); box-shadow: 0 6px 20px rgba(0,0,0,0.1); } .navbar-brand { font-size: 26px; font-weight: 800; color: #409EFF !important; padding-top: 10px; letter-spacing: -0.5px; transition: all 0.3s; } .navbar-scrolled .navbar-brand { font-size: 24px; } .navbar-nav > li > a { font-size: 16px; font-weight: 500; color: #303133 !important; padding-top: 20px; padding-bottom: 20px; position: relative; transition: color 0.3s; } /* Navbar Link Underline Animation */ .navbar-nav > li > a::after { content: ''; position: absolute; bottom: 12px; left: 50%; width: 0; height: 2px; background-color: #409EFF; transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); transform: translateX(-50%); } .navbar-nav > li:hover > a::after, .navbar-nav > li.active > a::after { width: 80%; } .navbar-nav > li.active > a, .navbar-nav > li > a:hover { color: #409EFF !important; background-color: transparent !important; } /* Mobile Toggle Button */ .navbar-toggle { border: none; background-color: transparent !important; margin-top: 18px; } .navbar-toggle .icon-bar { background-color: #303133; width: 24px; height: 2px; border-radius: 1px; transition: all 0.3s; } .navbar-toggle:hover .icon-bar { background-color: #409EFF; } /* When opened */ .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2) { transform: rotate(45deg) translate(5px, 5px); } .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3) { opacity: 0; } .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4) { transform: rotate(-45deg) translate(5px, -5px); } .navbar-btn { margin-top: 12px; border-radius: 20px; padding: 8px 25px; font-weight: 500; box-shadow: 0 4px 6px rgba(64, 158, 255, 0.2); transition: all 0.3s; border: none; background: linear-gradient(135deg, #409EFF 0%, #3a8ee6 100%); } .navbar-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 12px rgba(64, 158, 255, 0.3); background: linear-gradient(135deg, #66b1ff 0%, #409EFF 100%); } /* Hero Carousel */ .carousel-inner .item { height: 650px; background-size: cover; background-position: center; } .carousel-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.5)); } .carousel-caption { bottom: 25%; padding-bottom: 30px; } .carousel-caption h1 { font-size: 56px; font-weight: 800; text-shadow: 0 4px 8px rgba(0,0,0,0.3); margin-bottom: 25px; letter-spacing: 1px; } .carousel-caption p { font-size: 22px; margin-bottom: 40px; text-shadow: 0 2px 4px rgba(0,0,0,0.3); font-weight: 300; } .btn-lg { padding: 12px 35px; font-size: 18px; border-radius: 30px; } /* Sections */ .section-container { padding: 100px 0; } .section-title { font-size: 40px; font-weight: 700; margin-bottom: 15px; color: #303133; position: relative; display: inline-block; } .section-subtitle { font-size: 18px; color: #909399; margin-bottom: 40px; } .section-divider { width: 60px; height: 5px; background-color: #409EFF; margin: 20px auto; border-radius: 3px; } .bg-gray { background-color: #f5f7fa; } /* Service Cards */ .service-card { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 18px rgba(0,0,0,0.06); transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); margin-bottom: 30px; height: 340px; border: 1px solid #ebeef5; } .hover-lift:hover { transform: translateY(-12px); box-shadow: 0 20px 40px rgba(0,0,0,0.12); } .service-icon-wrapper { height: 140px; display: flex; align-items: center; justify-content: center; color: #fff; position: relative; } .service-icon-wrapper::after { content: ''; position: absolute; bottom: -20px; left: 0; right: 0; height: 40px; background: #fff; transform: skewY(-4deg); } .service-icon { font-size: 56px; z-index: 1; } .service-content { padding: 25px; text-align: center; } .service-content h3 { margin-top: 10px; margin-bottom: 15px; font-size: 22px; font-weight: 600; color: #303133; } .service-content p { color: #606266; margin-bottom: 20px; height: 48px; overflow: hidden; font-size: 15px; } /* Data Section */ .data-section { background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%); color: #fff; position: relative; background-attachment: fixed; } .section-title.text-white { color: #fff; } .section-divider.bg-white { background-color: #fff; opacity: 0.8; } .data-item { margin-bottom: 40px; padding: 20px; } .data-item .number { font-size: 56px; font-weight: 800; font-family: 'DIN Alternate', 'Arial', sans-serif; margin-bottom: 10px; background: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; text-shadow: 0 5px 15px rgba(0,0,0,0.15); } .data-item .label { font-size: 20px; opacity: 0.9; font-weight: 300; } /* Footer */ .footer { background-color: #26292e; color: #909399; padding: 80px 0 30px; font-size: 14px; } .footer h3 { font-size: 18px; color: #fff; margin-bottom: 30px; font-weight: 600; position: relative; padding-bottom: 15px; letter-spacing: 0.5px; } .footer h3::after { content: ''; position: absolute; bottom: 0; left: 0; width: 30px; height: 2px; background-color: #409EFF; } .footer p { margin-bottom: 15px; line-height: 1.8; } .footer ul.list-unstyled li { margin-bottom: 12px; } .footer a { color: #909399; text-decoration: none; transition: all 0.3s; display: inline-block; } .footer a:hover { color: #409EFF; padding-left: 5px; } .footer-bottom { margin-top: 60px; padding-top: 30px; border-top: 1px solid rgba(255,255,255,0.05); font-size: 13px; color: #606266; } /* Back to Top */ #back-to-top { position: fixed; bottom: 40px; right: 40px; z-index: 9999; width: 50px; height: 50px; text-align: center; line-height: 46px; background: #409EFF; color: #fff; cursor: pointer; border-radius: 50%; display: none; font-size: 20px; box-shadow: 0 4px 15px rgba(64, 158, 255, 0.4); transition: all 0.3s; } #back-to-top:hover { background: #66b1ff; transform: translateY(-3px); box-shadow: 0 6px 20px rgba(64, 158, 255, 0.5); } /* Responsive Fixes */ @media (max-width: 768px) { .navbar-brand { font-size: 22px; } .carousel-inner .item { height: 400px; } .carousel-caption h1 { font-size: 32px; margin-bottom: 10px; } .carousel-caption p { font-size: 16px; margin-bottom: 20px; } .section-container { padding: 60px 0; } .section-title { font-size: 30px; } .data-item .number { font-size: 36px; } .footer { padding: 40px 0 20px; } .footer h3 { margin-top: 30px; } }