@font-face {
    font-family: 'FontAwesome';
    src: url('./fonts/fa-solid-900.woff2') format('woff2'),
         url('./fonts/fa-solid-900.ttf') format('truetype');
    font-weight: 900;
    font-display: swap;
}
@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fa-regular-400.woff2') format('woff2'),
         url('../fonts/fa-regular-400.ttf') format('truetype');
    font-weight: 400;
    font-display: swap;
}
:root {
    --primary-color: #1a73e8;
    --secondary-color: #0d5bb5;
    --menu-hover: #e8f0fe;
    --card-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    --border-color: #e0e0e0;
    --fa-style-family: 'FontAwesome';
    --primary-green: #2ecc71;
    --dark-green: #27ae60;
    --light-green: #d5f5e3;
}
/* 提高模态框的z-index */
.modal {
  z-index: 9999 !important;
}
body.modal-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}
.banner-container {position: relative;margin-bottom: 30px;overflow: hidden;border-radius: 10px;}
.banner-slider {display: flex;transition: transform 0.5s ease-in-out;width: 200%;}
.banner {flex: 0 0 50%;display: flex;background-color: white;min-height: 350px;}
.banner-image {flex: 1;background-size: cover;background-position: center;}
.banner-content {flex: 1;padding: 40px;display: flex;flex-direction: column;justify-content: center;}
.banner-title {font-size: 1.8rem;color: #2c3e50;margin-bottom: 20px;font-weight: 700;}
.banner-text {font-size: 1.1rem;margin-bottom: 25px;color: #555;}
.banner-contact {font-size: 1.2rem;font-weight: 600;color: #e74c3c;}
.banner1 .banner-image {background-image: url('../images/banner.avif');}
.banner2 .banner-image {background-image: url('../images/banner1.avif');}
.highlight {color: #e74c3c;font-weight: 700;}
.slider-nav {position: absolute;top: 50%;width: 100%;display: flex;justify-content: space-between;transform: translateY(-50%);z-index: 10;}
.slider-btn {background-color: rgba(255,255,255,0.7);border: none;width: 40px;height: 40px;border-radius: 50%;display: flex;align-items: center;justify-content: center;cursor: pointer;font-size: 20px;color: #2c3e50;margin: 0 15px;transition: all 0.3s;}
.slider-btn:hover {background-color: white;transform: scale(1.1);}
.slider-dots {display: flex;justify-content: center;margin-top: 20px;padding-bottom: 10px;}
.dot {width: 12px;height: 12px;border-radius: 50%;background-color: #ccc;margin: 0 5px;cursor: pointer;transition: all 0.3s;}
.dot.active {background-color: #3498db;transform: scale(1.2);}

.app-body {display: flex;min-height: 600px;}
/* 左侧菜单样式 */
.left-menu {width: 200px;border-right: 1px solid var(--border-color);padding: 20px 0;position: relative;z-index: 10;}
.menu-header {padding: 0 25px 15px;font-size: 18px;font-weight: 500;color: #555;border-bottom: 1px solid #eee;margin-bottom: 15px;}
.menu-list {list-style: none;padding: 0;margin: 0;}
.menu-item {padding: 12px 25px;color: #444;cursor: pointer;position: relative;transition: all 0.25s ease;font-size: 16px;display: flex;align-items: center;border-left: 3px solid transparent;}
.menu-item i {width: 24px;font-size: 18px;color: #777;margin-right: 12px;transition: all 0.3s;}
.menu-item:hover {background-color: var(--menu-hover);color: var(--primary-color);}
.menu-item:hover i {color: var(--primary-color);}
.menu-item.active {background-color: var(--menu-hover);color: var(--primary-color);border-left: 3px solid var(--primary-color);font-weight: 500;}
.menu-item.active i {color: var(--primary-color);}

/* 右侧内容区域 */
.right-content {flex: 1;padding: 30px;}
.content-section {display: none;animation: fadeIn 0.4s ease;}
.content-section.active {display: block;}
.section-title {font-size: 20px;font-weight: 600;color: var(--primary-color);margin-bottom: 25px;padding-bottom: 15px;border-bottom: 1px solid var(--border-color);position: relative;text-align: left;}
.section-title:after {content: "";position: absolute;left: 0;bottom: -1px;width: 60px;height: 2px;background: var(--primary-color);}
.content-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 20px;}
.content-item {background: white;border-radius: 8px;box-shadow: var(--card-shadow);border: 1px solid #eee;padding: 20px;transition: all 0.3s ease;position: relative;overflow: hidden;}
.content-item:before {content: "";position: absolute;left: 0;top: 0;height: 100%;width: 4px;background: var(--primary-color);opacity: 0;transition: all 0.3s;}
.content-item:hover {transform: translateY(-5px);box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);}
.content-item:hover:before {opacity: 1;}
.item-title {font-size: 16px;font-weight: 500;color: #333;margin-bottom: 10px;display: flex;align-items: center;}
.item-title i {margin-right: 10px;color: var(--primary-color);}
.item-desc {font-size: 14px;color: #666;line-height: 1.6;}
.stats-badge {position: absolute;top: 15px;right: 15px;background: #f0f7ff;color: var(--primary-color);font-size: 12px;font-weight: 600;padding: 4px 10px;border-radius: 20px;}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.app-footer {padding: 20px 30px;text-align: center;color: #7a7f8c;font-size: 14px;border-top: 1px solid var(--border-color);background: #fafbfd;}

/* 为什么选择我们 */
.advantages-container {display: flex;flex-wrap: wrap;justify-content: space-between;}
.advantage {flex:1 1 33.33%;margin-bottom: 25px;padding: 15px 40px;box-sizing: border-box;}
.advantage-icon {width: 100px;height: 100px;font-size: 40px;color: #fff;margin-right: 15px;min-width: 30px;text-align: center;border-radius: 100%;display: flex;justify-content: center;align-items: center;margin: 0 auto 30px;background-color: var(--primary-color);}
.advantage-title {font-size: 18px;font-weight: bold;margin-bottom: 10px;color: #333;text-align: center;}
.advantage-desc {font-size: 14px;line-height: 1.6;color: #666;}

/* 服务流程 */
.process-container {display: flex;flex-direction: column;margin: 0 auto;}
.process-row {display: flex;justify-content: space-between;margin-bottom: 30px;}
.process-step {width: 22%;text-align: center;padding: 20px 10px;background-color: white;border-radius: 10px;box-shadow: 0 4px 12px rgba(0,0,0,0.08);transition: transform 0.3s, box-shadow 0.3s;}
.process-step:hover {transform: translateY(-5px);box-shadow: 0 8px 16px rgba(0,0,0,0.12);}
.process-step i {font-size: 36px;margin-bottom: 15px;color: #3498db;}
.process-step h3 {margin: 10px 0 5px;color: #2c3e50;font-size: 16px;}
.arrow {display: flex;align-items: center;font-size: 24px;color: #95a5a6;padding: 0 10px;}
.detailed-process {background-color: white;padding: 30px;padding-bottom: 10px;border-radius: 10px;box-shadow: 0 4px 12px rgba(0,0,0,0.08);}
.detailed-process h2 {color: #2c3e50;border-bottom: 2px solid #3498db;padding-bottom: 10px;margin-top: 0;}
.detailed-process ol {margin: 0;}
.detailed-process li {margin-bottom: 20px;line-height: 1.6;font-size: 15px;position: relative;}
.detailed-process li strong {color: #2c3e50;}

/* 常见问题 */
.faq-container {margin: 0 auto;border-radius: 10px;padding: 30px 40px;padding-top: 0;}
.faq-header {text-align: center;margin-bottom: 30px;padding-bottom: 15px;border-bottom: 2px solid var(--primary-color);}
.faq-header h1 {color: var(--primary-color);font-size: 28px;margin-bottom: 10px;}
.faq-header p {color: #666;font-size: 16px;}
.faq-item {margin-bottom: 25px;border-bottom: 1px solid #eee;padding-bottom: 20px;}
.faq-item:last-child {border-bottom: none;}
.faq-question {font-weight: bold;font-size: 18px;color: var(--primary-color);margin-bottom: 10px;display: flex;align-items: center;}
.faq-question:before {content: "Q";display: inline-block;width: 24px;height: 24px;background-color: var(--primary-color);color: white;border-radius: 50%;text-align: center;line-height: 24px;font-size: 14px;margin-right: 10px;}
.faq-answer {background-color: #f5f9ff;padding: 15px;border-radius: 8px;font-size: 16px;position: relative;}
.faq-answer:before {content: "A";display: inline-block;width: 24px;height: 24px;background-color: var(--primary-green);color: white;border-radius: 50%;text-align: center;line-height: 24px;font-size: 14px;position: absolute;left: -12px;top: -12px;}
.success-rate {background-color: #e8f5e9;padding: 3px 8px;border-radius: 4px;font-weight: bold;}

/* 联系我们 */
.contact-info {margin-top: 25px;font-size: 18px;line-height: 1.6;}
.contact-method {margin-bottom: 25px;display: flex;align-items: center;justify-content: center;gap: 15px;text-align: left;}
.contact-icon {width: 50px;height: 50px;background-color: #e8f0fe;border-radius: 50%;display: flex;align-items: center;justify-content: center;color: var(--primary-color);font-size: 20px;flex-shrink: 0;}
.contact-details {flex-grow: 1;}
.contact-label {font-weight: bold;color: #555;display: block;margin-bottom: 5px;font-size: 16px;}
.contact-value {color: #333;font-size: 18px;}
.contact-value a {color: var(--primary-color);text-decoration: none;transition: color 0.3s;}
.contact-value a:hover {color: #0d5bba;text-decoration: underline;}

/* Animation classes */
.fade-in {opacity: 0;transition: opacity 0.8s ease-in;}
.fade-in.visible {opacity: 1;}
.slide-up {transform: translateY(50px);opacity: 0;transition: all 0.8s ease-out;}
.slide-up.visible {transform: translateY(0);opacity: 1;}

/* Banner 轮播样式 */
.banner-carousel,.xiao-banner-carousel {position: relative;overflow: hidden;height: 600px;margin-bottom: 60px;}
.banner-slide,.xiao-banner-slide{position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-size: cover;background-position: center;opacity: 0;transition: opacity 1s ease-in-out;display: flex;align-items: center;color: white;}
.banner-slide.active,.xiao-banner-slide.active { opacity: 1;}
.banner-slide h1 {font-weight: 700;margin-bottom: 20px;font-size: 2.8rem;text-shadow: 1px 1px 3px rgba(0,0,0,0.5);line-height: 1.3;}
.banner-slide::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background-color: rgba(0,0,0,0.5);}
.banner-content1,.xiao-banner-content1 {position: relative;z-index: 1;padding: 0 15%;width: 100%;}
.banner-indicators,.xiao-banner-indicators {position: absolute;bottom: 30px;left: 0;right: 0;text-align: center;z-index: 2;}
.banner-indicator,.xiao-banner-indicator {display: inline-block;width: 12px;height: 12px;border-radius: 50%;background-color: rgba(255,255,255,0.5);margin: 0 5px;cursor: pointer;transition: all 0.3s;}
.banner-indicator.active,.xiao-banner-indicator.active {background-color: white;transform: scale(1.2);}


.btn-primary {background-color: var(--primary-green);border-color: var(--primary-green);padding: 10px 25px;font-weight: 600;}
.btn-primary:hover {background-color: var(--dark-green);border-color: var(--dark-green);}
/* 统计部分样式 */
.stats {background-color: var(--light-green);padding: 80px 0;margin: 60px 0;text-align: center;        }
.stat-number {font-size: 3.5rem;font-weight: 700;color: var(--dark-green);margin-bottom: 10px;}
.stats p {font-size: 1.2rem;color: #555;}
/* 关于我们部分 */
.about-section {padding: 100px 0;background-color: #f9f9f9;}
.about-img {border-radius: 10px;box-shadow: 0 10px 30px rgba(0,0,0,0.1);max-height: 400px;width: 100%;object-fit: cover;object-position:top;}
/* 服务部分 */
.services-section {padding: 80px 0;}
.service-card {border: none;border-radius: 10px;overflow: hidden;box-shadow: 0 5px 15px rgba(0,0,0,0.05);margin-bottom: 30px;transition: all 0.3s;height: 100%;}
.service-card:hover {transform: translateY(-10px);box-shadow: 0 15px 30px rgba(0,0,0,0.1);}
.service-icon {font-size: 2.5rem;color: var(--primary-green);margin-bottom: 20px;}
/* 图片占位样式 */
.img-placeholder {background-color: #eee;display: flex;align-items: center;justify-content: center;color: #999;font-weight: bold;border: 1px dashed #ccc;}
/* 认证标志部分 */
.cert-badge {height: auto;margin: 15px;transition: all 0.3s;border: 1px dashed #ccc;padding:15px 0;}
.cert-badge img{width:150px;height:50px;}
.cert-badge:hover {transform: scale(1.1);}
/* 承诺部分 */
.promise-section {background-color: var(--dark-green);color: white;padding: 80px 0;margin-bottom: 60px;}
.promise-icon {font-size: 3.5rem;margin-bottom: 20px;color: white;}
/* 关于我们下面的banner */
.xiao-banner-carousel {height: 330px;margin-bottom:0;}
.xiao-banner-slide{height:300px;border-radius: 10px;}
.xiao-banner-indicator{background-color: var(--light-green);}
.xiao-banner-indicators{bottom:0;}
.xiao-banner-indicator.active {background-color: var(--dark-green);}
.lead span{transform: scale(1.2);}

/* 响应式设计 - 窄屏 */
@media (max-width: 768px) {
    .banner {flex-direction: column;min-height: auto;}
    .banner-image {min-height: 220px;}
    .header h1 {font-size: 2rem;}
    .header .subtitle {font-size: 1rem;}
    .banner-title {font-size: 1.5rem;}
    .slider-btn {width: 30px;height: 30px;font-size: 16px;}
    .faq-container {padding: 20px;}
    .faq-question {font-size: 16px;}
    .faq-answer {font-size: 15px;}
    .banner-carousel {height: 400px;}
    .banner-content1 {padding: 0 5%;text-align: center;}
    .banner-slide h1 {font-size: 1.8rem;}
    .stat-number {font-size: 2.5rem;}
}
/* 响应式设计 - 窄屏 */
@media (max-width: 1200px) {
    .app-body {flex-direction: column;}
    .left-menu {width: 100%;border-right: none;border-bottom: 1px solid var(--border-color);}
    .menu-header {padding: 0 20px 10px;}
    .menu-list {display: flex;flex-wrap: wrap;padding: 0 15px;}
    .menu-item {padding: 10px 15px;font-size: 14px;border-left: none;border-bottom: 3px solid transparent;margin-right: 5px;}
    .menu-item.active {border-left: none;border-bottom: 3px solid var(--primary-color);}
    .right-content {padding: 20px;}
    .section-title {font-size: 18px;margin-bottom: 20px;}
}

/* 响应式调整 */
@media (max-width: 992px) {
    .banner-carousel {height: 500px;}
    .banner-content1 {padding: 0 10%;}
    .banner-slide h1 {font-size: 2.2rem;}
}

