body::-webkit-scrollbar{ width:7px;height: 1px;}
body::-webkit-scrollbar-thumb{ background:#e74c3c;}
body::-webkit-scrollbar-track{ background:#2c3e50;}
/* 全局样式 */
:root {
--primary: #2c3e50;/* 深蓝 - 专业稳重 */
--secondary: #e74c3c;  /* 红色 - 强调色 */
--accent: #3498db; /* 蓝色 - 辅助色 */
--light: #ecf0f1;  /* 浅灰 */
--dark: #2c3e50;/* 深色 */
--text: #34495e;/* 正文颜色 */
--text-light: #7f8c8d; /* 浅色文字 */
--white: #fff;  /* 白色 */
--shadow: 0 4px 12px rgba(0,0,0,0.1);
--border-radius:6px;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;'Arial', sans-serif;
font-family: 'Roboto', sans-serif;
}

body {
line-height: 1.6;
color: var(--text);
background-color: #ecf0f1;
}

a {text-decoration: none;color: inherit;}

.container {
width: 100%;
max-width: 1310px;
margin: 0 auto;
padding: 0 15px;
}
/* 优化后的导航栏样式 */
header {
background-color: rgba(255, 255, 255, 0.98);
box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
position: sticky;
top: 0;
z-index: 100;
backdrop-filter: blur(8px);
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.header-container {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px 0;
max-width: 1310px;
margin: 0 auto;
}

.logo {
display: flex;
align-items: center;
font-size: 0; /* 隐藏文字，只显示图片 */
}

.logo-img {
height: 48px;
transition: transform 0.3s;
}

.logo:hover .logo-img {
transform: scale(1.05);
}

nav {
display: flex;
align-items: center;
}

.nav-links {
display: flex;
list-style: none;
}

.nav-links li {
margin-left:40px;
position: relative;
}

.nav-links a {
font-weight: 600;
font-size: 18px;
color: var(--dark-text);
padding: 8px 0;
position: relative;
transition: color 0.3s;
display: block;
}

.nav-links a:before {
content: '';
position: absolute;
width: 0;
height: 2px;
background: var(--primary-color);
bottom: 0;
left: 0;
transition: width 0.3s ease;
}

.nav-links a:hover {color: var(--primary-color);}
.nav-links a:hover:before {width: 100%;}
.nav-links a.active {color: var(--primary-color);}
.nav-links a.active:before {width: 100%;}
.language-switch {
margin-left: 30px;
padding: 8px 16px;
background-color: #f1f1f1;
border-radius: 20px;
font-size: 14px;
cursor: pointer;
transition: all 0.3s;
border: none;
font-weight: 500;
display: flex;
align-items: center;
}

.language-switch:hover {
background-color: var(--primary-color);
color: white;
}

.language-switch i {
margin-right: 6px;
}

/* 响应式导航 */
.menu-toggle {
display: none;
cursor: pointer;
font-size: 24px;
margin-left: 15px;
color: var(--dark-text);
padding: 8px;
border-radius: 4px;
transition: background-color 0.3s;
}
.menu-toggle:hover {background-color: #f1f1f1;}
@media (max-width: 992px) {.nav-links li {margin-left: 20px;}}
@media (max-width: 768px) {.menu-toggle {display: block;}
.nav-links {
position: fixed;
top: 72px;
left: -100%;
width: 100%;
height: calc(100vh - 72px);
background-color: rgba(255, 255, 255, 0.98);
flex-direction: column;
align-items: center;
padding-top: 30px;
transition: left 0.3s ease;
backdrop-filter: blur(8px);
}

.nav-links.active {left: 0;}
.nav-links li {margin: 15px 0;}
.nav-links a {padding: 10px 20px;font-size: 18px;}

.language-switch {
margin-left: auto;
margin-right: 20px;
}
}
/* 响应式导航 */
.menu-toggle {
display: none;
cursor: pointer;
font-size: 24px;
margin-left: 15px;
}

/* 轮播图样式 */
.slider {
width: 100%;
height:650px;
overflow: hidden;
position: relative;
}

.slide {
width: 100%;
height: 100%;
position: absolute;
opacity: 0;
transition: opacity 1s ease-in-out;
background-size: cover;
background-position: center;
}

.slide.active {
opacity: 1;
}

.slide-content {
position: absolute;
bottom: 80px;
left: 80px;
color: white;
background-color: rgba(0,0,0,0.7);
padding: 30px;
max-width: 600px;
border-radius: 8px;
}

.slide-content h2 {
font-size: 42px;
margin-bottom: 15px;
font-weight: 700;
}

.slide-content p {
font-size: 18px;
margin-bottom: 25px;
line-height: 1.6;
}

.btn {
display: inline-block;
padding: 12px 25px;
background-color: #e74c3c;
color: white;
border-radius: 4px;
font-weight: 600;
transition: all 0.3s;
}

.btn:hover {
background-color: #a01218;
transform: translateY(-2px);
}

		
/* About Section */
.about {
padding:60px 0;background-color: white;background: linear-gradient(to top, white, #f5f5f5);}
.about-content {display: flex;align-items: center;gap:30px;}
.about-text {flex: 1;}
.about-text {font-size: 18px;flex: 1;}		
.about-text h2 {
font-size: 26px;
color: #2c3e50;
margin-bottom:10px;
font-weight: 400;
}

.about-text p {
margin-bottom:10px;
color: #222;
}

.about-media {
flex: 1;
position: relative;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.video-container {
position: relative;
padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
height: 0;
overflow: hidden;
}

.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: none;
}

/* Responsive Design */
@media (max-width: 1024px) {
.hero {
height: 450px;
}

.hero-content h1 {
font-size: 36px;
}

.about-content {
flex-direction: column;
}

.about-media {
margin-top: 40px;
width: 100%;
}
}
		
/* 介绍部分 */
.intro-section {
padding: 100px 0;
background-color: white;
}

.intro-content {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 50px;
}

.intro-text {
flex: 1;
min-width: 300px;
}

.intro-text h2 {
font-size: 38px;
margin-bottom: 25px;
color: #335c67;
position: relative;
padding-bottom: 15px;
font-weight: 700;
}

.intro-text h2:after {
content: '';
position: absolute;
width: 80px;
height: 4px;
background: #335c67;
bottom: 0;
left: 0;
}

.intro-text p {
margin-bottom: 20px;
font-size: 17px;
line-height: 1.8;
color: #555;
}

.intro-video {
flex: 1;
min-width: 300px;
box-shadow: 0 15px 35px rgba(0,0,0,0.1);
border-radius: 10px;
overflow: hidden;
transition: transform 0.3s;
}

.intro-video:hover {transform: translateY(-5px);}
.video-container {
position: relative;
padding-bottom: 45.25%; /* 16:9 比例 */
height: 0;
overflow: hidden;
}

.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: none;
}

/* 旅游线路 */
.tours-section {
padding: 40px 0;
background-color: #ecf0f1;
}

.section-title {
text-align: center;
margin-bottom: 20px;
position: relative;
padding-bottom: 20px;
font-size: 2.0rem;
font-weight:500;
}
		
.section-title:after {
content: '';
position: absolute;
width: 80px;
height: 4px;
background: #d4af37;
border-radius:100px;
bottom: 10px;
left: 50%;
transform: translateX(-50%);
}

.tours-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
gap: 30px;
margin-bottom: 50px;
}

.tour-card {
border: 1px solid #eee;
border-radius: 10px;
overflow: hidden;
transition: transform 0.3s, box-shadow 0.3s;
background-color: white;
}

.tour-card:hover {
transform: translateY(-10px);
box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.tour-image {
height:240px;
background-size: cover;
background-position: center;
position: relative;
}

.tour-badge {
position: absolute;
top: 15px;
right: 15px;
background-color: #e74c3c;
color: white;
padding: 5px 10px;
border-radius: 4px;
font-size: 14px;
font-weight: 500;
}

.tour-info {padding: 20px;}

.tour-code {
text-align: center;
font-size: 16px;
color: #777;
margin-bottom: 8px;
font-weight:700;
}

.tour-name {
font-size: 16px;
margin-bottom: 15px;
color: #666;
font-weight:400;
}

.tour-desc {
font-size: 15px;
color: #666;
margin-bottom: 20px;
line-height: 1.6;
}

.tour-price {
color: #b22222;
font-size: 22px;
font-weight:600;
display: flex;
align-items: center;
justify-content: space-between;
}

.tour-price span {
font-size: 16px;
color: #999;
font-weight: normal;
}

/* 城市特定部分 */
.city-section {
margin-bottom: 60px;
}

.city-title {
font-size: 32px;
color: #335c67;
margin-bottom: 30px;
padding-bottom: 10px;
border-bottom: 2px solid #eee;
text-align: center;
font-weight:500;
}

/* 微信二维码部分 */
.wechat-section {
padding: 80px 0;
background-color: white;
text-align: center;
}

.wechat-box {
max-width: 600px;
margin: 0 auto;
padding: 40px;
background-color: #f9f9f9;
border-radius: 10px;
box-shadow: 0 10px 25px rgba(0,0,0,0.05);
}

.wechat-box h3 {
font-size: 28px;
margin-bottom: 20px;
color: #333;
font-weight: 700;
}

.wechat-box p {
margin-bottom: 30px;
color: #666;
font-size: 16px;
line-height: 1.6;
max-width: 500px;
margin-left: auto;
margin-right: auto;
}

.qr-code {
width: 180px;
height: 180px;
margin: 0 auto;
padding: 15px;
background-color: white;
border: 1px solid #eee;
border-radius: 8px;
}
.qr-code img {width: 100%;height: 100%;}

/* 联系方式部分 */
.contact {
padding:40px 0;
background-color: #fff;
text-align: center;
}

.contact-content {
max-width:800px;
margin: 0 auto;
}

.contact-methods {
display: flex;
justify-content: center;
gap:30px;
margin-top:30px;
flex-wrap: wrap;
}

.contact-method {
/* display: flex; */
align-items: center;gap: 10px;color: var(--text-color);}
.contact-method i {font-size: 1.2rem;color: var(--primary-color);}
.wechat-qr {
width: 180px;
/*  height: 180px; */
margin: 20px auto;
background-color: #fff;
padding: 15px;
border-radius:8px;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.wechat-qr img {
width: 100%;
height: 100%;
object-fit: contain;
}

.wechat-text {
margin-top: 15px;
color: var(--text-light);
font-size: 0.9rem;
}
		
.contact-section {
padding: 60px 0;
background-color: #335c67;
color: #ecf0f1;
text-align: center;
}

.contact-container {
max-width: 800px;
margin: 0 auto;
}
.contact-info {
margin-bottom:0px;
}

.contact-info h3 {
font-size: 28px;
margin-bottom: 30px;
color: white;
font-weight: 700;
}
.contact-details {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 40px;
}

.contact-item {
text-align: center;
min-width: 200px;
}
.contact-item i {
font-size: 32px;
color: #e74c3c;
margin-bottom: 15px;
display: block;
}
.contact-item h4 {
font-size: 20px;
margin-bottom: 10px;
color: white;
}

.contact-item p {
font-size: 16px;
color: #bdc3c7;
line-height: 1.6;
}

.copyright {
text-align: center;
font-size: 14px;
color: #bdc3c7;
}
 /* Footer */
footer {
background-color: #335c67;
color: #fff;
padding: 30px 0;
text-align: center;
}
.footer-links {
display: flex;
justify-content: center;
list-style: none;
margin-bottom: 20px;
flex-wrap: wrap;
}

.footer-links li {margin: 0 15px;}
.footer-links a {color: #fff;transition: color 0.3s;}
.footer-links a:hover {color: var(--primary-color);}
.copyright {
color: rgba(255, 255, 255, 0.7);
font-size: 0.9rem;
}

/* 图片轮播 */
.slider-container {
position: relative;
width: 100%;
height: 500px;
margin-bottom: 40px;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.slider {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
}

.slide {
position: absolute;
width: 100%;
height: 100%;
opacity: 0;
transition: opacity 0.5s ease;
background-size: cover;
background-position: center;
}

.slide.active {opacity: 1;}
.slider-nav {
position: absolute;
bottom: 20px;
left: 0;
right: 0;
text-align: center;
z-index: 10;
}

.slider-dot {
display: inline-block;
width: 12px;
height: 12px;
margin: 0 5px;
background-color: rgba(255,255,255,0.5);
border-radius: 50%;
cursor: pointer;
transition: background-color 0.3s;
}
.slider-dot.active {background-color: white;}
.slider-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 40px;
height: 40px;
background-color: rgba(0,0,0,0.3);
color: white;
border: none;
border-radius: 50%;
font-size: 20px;
cursor: pointer;
z-index: 10;
display: flex;
align-items: center;
justify-content: center;
transition: background-color 0.3s;
}

.slider-arrow:hover {background-color: rgba(0,0,0,0.5);}
.slider-arrow.prev {left: 20px;}
.slider-arrow.next {right: 20px;}		

/* 响应式设计 */
@media (max-width: 1200px) {
.slider {height: 500px;}
.slide-content {
left: 50px;
bottom: 50px;
max-width: 500px;
}
}

@media (max-width: 992px) {
.tours-grid {
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
.about {padding: 60px 0;background-color: white;}
.slider {height: 450px;}
.slide-content {left: 40px;bottom: 40px;max-width: 450px;padding: 25px;}
.slide-content h2 {font-size: 36px;}
.intro-section {padding: 80px 0;}
.section-title {font-size: 32px;}
}

@media (max-width: 768px) {
.menu-toggle {display: block;}
.about {padding: 40px 0;background-color: white;}
.nav-links {
position: fixed;
top: 80px;
left: -100%;
width: 100%;
height: calc(100vh - 80px);
background-color: rgba(255,255,255,0.98);
flex-direction: column;
align-items: center;
padding-top: 50px;
transition: left 0.3s;
backdrop-filter: blur(5px);
}

.nav-links.active {left: 0;}
.nav-links li {margin: 20px 0;}
.logo {font-size: 14px;}
.language-switch {margin-left: auto;margin-right: 20px;}
.slider {height: 400px;}
.slide-content {left: 30px;bottom: 30px;max-width: 80%;padding: 20px;}
.slide-content h2 {font-size: 28px;}
.slide-content p {font-size: 16px;}
.intro-content {flex-direction: column;gap: 30px;}
.intro-text h2 {font-size: 32px;}
.section-title {font-size: 28px;}
.city-title {font-size: 26px;}
.wechat-box {padding: 30px;}
.wechat-box h3 {font-size: 24px;}
}
@media (max-width: 576px) {
.slider {height: 300px;}
.about {padding: 30px 0;background-color: white;}
.slide-content {left: 20px;bottom: 20px;padding: 15px;}
.slide-content h2 {font-size: 24px;margin-bottom: 10px;}
.intro-section {padding: 60px 0;}
.intro-text h2 {font-size: 28px;}
.section-title {font-size: 24px;}
.city-title {font-size: 22px;}
.tours-grid {grid-template-columns: 1fr;}
.wechat-box {padding: 25px;}
.wechat-box h3 {font-size: 22px;}
.qr-code {width: 160px;height: 160px;}
.contact-details {flex-direction: column;gap: 30px;}
@media (max-width: 1024px) {
.about-content {flex-direction: column;}
.about-media {margin-top: 40px;width: 100%;}
}
	
/* 面包屑导航 */
.breadcrumb {
padding: 20px 0;
font-size: 14px;
color: #666;
}
.breadcrumb a {color: #335c67;transition: color 0.3s;}
.breadcrumb a:hover {color: #c8161d;}
.breadcrumb span {margin: 0 8px;color: #999;}

/* 图片轮播 */
.tour-gallery {
width: 100%;
position: relative;
margin-bottom: 40px;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.main-image {
width: 100%;
height: 500px;
background-size: cover;
background-position: center;
transition: background-image 0.5s ease;
}
.thumbnail-container {
display: flex;
overflow-x: auto;
padding: 15px 0;
background-color: #f1f1f1;
scrollbar-width: thin;
scrollbar-color: #c8161d #f1f1f1;
}
.thumbnail-container::-webkit-scrollbar {
height: 6px;
}
.thumbnail-container::-webkit-scrollbar-thumb {
background-color: #c8161d;
border-radius: 3px;
}

.thumbnail {
min-width: 100px;
height: 70px;
margin-right: 10px;
background-size: cover;
background-position: center;
cursor: pointer;
border: 2px solid transparent;
border-radius: 4px;
transition: all 0.3s;
}

.thumbnail:hover, .thumbnail.active {
border-color: #c8161d;
transform: scale(1.05);
}

/* 线路详情 */
.tour-detail {
display: flex;
flex-wrap: wrap;
margin-bottom: 60px;
}

.tour-main {
flex: 1;
min-width: 300px;
padding-right: 40px;
}

.tour-sidebar {
width: 350px;
min-width: 300px;
}

.tour-title {
font-size: 36px;
color: #335c67;
margin-bottom: 20px;
font-weight: 700;
}

.tour-subtitle {
font-size: 18px;
color: #666;
margin-bottom: 30px;
line-height: 1.6;
}

.tour-meta {
display: flex;
flex-wrap: wrap;
margin-bottom: 30px;
gap: 20px;
}

.meta-item {
display: flex;
align-items: center;
margin-bottom: 10px;
}

.meta-icon {
width: 24px;
height: 24px;
margin-right: 10px;
color: #c8161d;
}

.tour-section {
margin-bottom: 40px;
}

.tour-description p {
margin-bottom: 15px;
line-height: 1.8;
color: #555;
}

.highlight-box {
background-color: #f5f5f5;
border-left: 4px solid #c8161d;
padding: 20px;
margin: 25px 0;
border-radius: 0 4px 4px 0;
}

.itinerary-item {
margin-bottom: 30px;
position: relative;
padding-left: 30px;
}

.itinerary-time {
font-weight: 700;
color: #c8161d;
margin-bottom: 10px;
}

.itinerary-title {
font-size: 18px;
font-weight: 600;
margin-bottom: 10px;
color: #333;
}

.itinerary-desc {
color: #555;
line-height: 1.7;
}

.itinerary-item:before {
content: '';
position: absolute;
left: 0;
top: 5px;
width: 16px;
height: 16px;
background-color: #335c67;
border-radius: 50%;
}

.itinerary-item:after {
content: '';
position: absolute;
left: 7px;
top: 25px;
bottom: -35px;
width: 2px;
background-color: #ddd;
}
.itinerary-item:last-child:after {display: none;}

/* 预订侧边栏 */
.booking-box {
background-color: white;
border-radius: 8px;
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
padding: 30px;
position: sticky;
top: 100px;
}

.price-box {
text-align: center;
margin-bottom: 25px;
}

.price {
font-size: 36px;
color: #c8161d;
font-weight: 700;
margin-bottom: 5px;
}

.booking-form {margin-bottom: 25px;}
.form-group {margin-bottom: 15px;}

.form-group label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: #333;
}

.form-control {
width: 100%;
padding: 12px 15px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 16px;
transition: border-color 0.3s;
}

.form-control:focus {outline: none;border-color: #335c67;}
.btn-book {
display: block;
width: 100%;
padding: 15px;
background-color: #c8161d;
color: white;
border: none;
border-radius: 4px;
font-size: 18px;
font-weight: 600;
cursor: pointer;
transition: background-color 0.3s;
}

.btn-book:hover {background-color: #a01218;}
.inclusions {margin-top: 30px;}
.inclusion-item {display: flex;align-items: center;margin-bottom: 15px;}
.inclusion-icon {width:20px;height:20px;margin-right:10px;color:#335c67;}

/* 响应式设计 */
@media (max-width: 992px) {
.main-image {height: 400px;}
.p{font-size: 18px;}
.logo{font-size: 24px;}
.tour-title {font-size: 32px;}
}

@media (max-width: 768px) {
.menu-toggle {display: block;}
.p{font-size: 16px;}
.nav-links {
position: fixed;
top: 80px;
left: -100%;
width: 100%;
height: calc(100vh - 80px);
background-color: rgba(255,255,255,0.98);
flex-direction: column;
align-items: center;
padding-top: 50px;
transition: left 0.3s;
backdrop-filter: blur(5px);
}
.nav-links.active {left: 0;}
.nav-links li {margin: 20px 0;}
.language-switch {margin-left: auto;margin-right: 20px;}
.main-image {height: 350px;}
.tour-main {padding-right: 0;margin-bottom: 40px;}
.tour-sidebar {width: 100%;}
.tour-title {font-size: 28px;}
.logo{font-size: 20px;}
.section-title {font-size: 22px;}
}

@media (max-width: 576px) {
.main-image {height: 250px;}
.p{font-size: 14px;}
.tour-title {font-size: 24px;}
.logo{font-size: 16px;}
.price {font-size: 28px;}
.about {padding: 30px 0;background-color: white;}
.breadcrumb {font-size: 12px;}
@media (max-width: 430px) {
.main-image {height: 250px;}  
.p{font-size: 12px;}
.about {padding: 20px 0;background-color: white;}
.logo {font-size: 16px;color: var(--accent-color);display: flex;align-items: center;}
}
@media (max-width: 992px) {
.main-image-container {height: 400px;}
.tour-title {font-size: 32px;}
.tour-main {padding-right: 0;}
.tour-sidebar {width: 100%;margin-top: 40px;}
.booking-box {position: static;}
}