html{font-size: 16px;}
*{box-sizing: border-box;}
body{font-family: "Roboto", "Open Sans", "PingFang SC", "Microsoft YaHei", Arial, Helvetica, sans-serif;}
body{-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-x: hidden;margin: 0;padding: 0;font-size: 1rem;}
img{display: block;}
a{transition: all 0.25s;color: #333; text-decoration: none;}
a:hover {color: #115cff;transition: color 0.3s ease;}
a:focus{color: #5a3f9d;}
ul,ol{list-style: none;margin:0;padding:0;}
div{position: relative;}
main.content{position: relative;}

/*后台样式*/
.bootstrap-switch .bootstrap-switch-handle-on, .bootstrap-switch .bootstrap-switch-handle-off, .bootstrap-switch .bootstrap-switch-label{height:auto;}

/*Tools*/
.test{display:none;}

.container1200{width: 1200px; margin-left:auto; margin-right:auto; padding-left:15px; padding-right: 15px;}
.container1180{width: 1180px; margin-left:auto; margin-right:auto; padding-left:15px; padding-right: 15px;}

.text_center{text-align: center;}
.text_right{text-align: right;}
.text_left{text-align: left;}
.flexbox{display: flex;flex-wrap: wrap;}
.flexbox_left{display: flex;flex-wrap: wrap; align-items: flex-start;}
.flexbox_baseline{display: flex;flex-wrap: wrap;align-items:baseline;}
.flexbox_center{display: flex;flex-wrap: wrap;justify-content:center;align-items:center;}
.flexbox_around{display: flex;flex-wrap: wrap;justify-content:space-around;align-items:center;}
.flexbox_between{display: flex;flex-wrap: wrap;justify-content:space-between;align-items:center;}
.flexbox_cloumn{display: flex;flex-wrap: wrap;flex-direction: column;}

.divide{width:100%;height:10px}
.fdivide{width:100%;height:10px;float:left}

.cr { border-radius: 6px; background-color: #fff; border: #dfdfdf solid 1px; }
.lrc { border-radius: 50px; }
.crn { border-radius: 6px; }
.crs { border-radius: 6px; background-color: #fff; border: #dfdfdf solid 1px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
.s { box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
.crns { border-radius: 6px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
.crt { border-top-left-radius: 6px; border-top-right-radius: 6px; }
.crts { border-top-left-radius: 6px; border-top-right-radius: 6px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
.crb { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; }
.crbs { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.2); }
.bs { box-shadow: 0 8px 8px rgba(0, 0, 0, 0.3); }
.inset_left_shadow { box-shadow: 100px 0 50px rgba(0, 0, 0, 0.2) inset; }
.ts { text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4); }

.w100{width: 100%;}
.wh100 { width: 100%; display: block; }
.wh120 { width: 120%; }
.he100 { height: 100%; }
.p50{padding: .50rem;}
.p75{padding: .75rem;}
.p10 { padding: 0 10px; }
.ptb10 { padding: 10px 0; }
.ptb20 { padding: 20px 0; }
.ptb25 { padding: 25px 0; }
.np{padding: 0;}
.nm{margin: 0;}
.npl { padding-left: 15px; }
.npln{padding-left: 0;}
.nprn{padding-right: 0;}
.npl3{padding-left: 3.75px;}
.npr3{padding-right: 3.75px;}
.nplr3{padding: 0 3.75px;}
.npln_response{padding-left: 0px;}
.pln_response{padding-left: 15px;}
.ml5{margin-left: 5px;}
.ml10{margin-left: 10px;}
.ml20{margin-left: 20px;}
.mt7{margin-top: 7.5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt30{margin-top: 30px;}
.mt43{margin-top: 43px;}
.mt47{margin-top: 47px;}
.mt50{margin-top: 50px;}
.mt70{margin-top: 70px;}
.mb15 { margin-bottom: 15px; }
.mb10 { margin-bottom: 10px; }
.mtb10 { margin: 10px 0; }
.mtb30 { margin: 30px 0; }
.lh2{line-height: 2rem;}
.white_font { color: #fff; }
.white_bg { background-color: white; }
.sea_blue { background-color: #d7f5ff; }
.fr { float: right; position: relative; }
.fl100 { width: 100%; float: left; clear: both; }
.text_indent { text-indent: 2em; }

.divide_symbol{float: left; width: 0px; height: 30px; border-left:#ccc solid 1px; margin-top: 5px;}
a.top_stick{bottom:120px !important; right: 10px !important;}

.tran{transition: all 2s;}

/*public*/
/**:before, *:after, *:focus { transform: translateZ(0); }*/
.form-control:focus{box-shadow:2px 2px 8px rgba(0,0,0,0.3) !important;}
/* 保留类名以备他处使用，但不改变 overflow，避免滚动条闪动 */
.no-scroll{cursor: default;}
.fbold{font-weight: bold;}
.fbold500{font-weight: 500;}
span.vdivide{border-right:#d2d2d2 solid 1px;}
span.red{color:#f00 !important;font-weight: bold;}
span.red2{color:#f00;}
span.red3{color:#ff5458;}
span.font_normal{font-size:13px;}
span.font_big{font-size:18px;}
span.green{color:#009c16;}
span.yellow{color:#ff6611;}
span.gray2{color:#d8d8d8;}
span.blue{color:#2e20b2;}

img.img-noresponsive{max-width:auto;}

table.data_table_style th{text-align: center;}
table.data_table_style td,table.data_table_style th{min-height: 51px;}

/*layout*/
/*头部*/
.head_container{justify-content:space-between;margin-right: auto; align-items: center;}
.head_logo{height: 132px;}
.head_logo img{max-height: 132px;}

.head_right{width: 370px;margin-left:auto;}
.top_search_btn{cursor: pointer;}

.language_select_box{margin-left:10px;cursor: pointer;}
.language_select img{margin-left:5px;}

ul.language_select_ul{padding: 3px; min-width: 100px; background-color: #eaeaea; position: absolute; left: 0; top:25px;border:#666 solid 1px; display: none;}

/*菜单*/
.menu_bg,.mobile_menu_bg{width: 100%; z-index: 10; background: linear-gradient(to bottom, #e5540b, #d94607);box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2); z-index: 20; /* 效果图中的橙色渐变背景 */}

/* 新的菜单容器布局 */
.menu_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px 0;
}

/* Logo区域 */
.menu_logo {
    flex-shrink: 0;
}

.menu_logo_img {
    height: 60px;
    width: auto;
}

/* 菜单导航区域 */
.menu_nav_area {
    flex: 1;
    display: flex;
    justify-content: center;
    margin: 0 20px;
}

/* 右侧功能区域 */
.menu_right_area {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 15px;
}

/* 搜索框样式 */
.menu_search_box {
    position: relative;
    display: flex;
    align-items: center;
}

.menu_search_input {
    width: 150px;
    height: 41px;
    padding: 8px 35px 8px 12px;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 20px;
    background-color: rgba(255,255,255,0.1);
    color: #fff;
    font-size: 14px;
}

.menu_search_input::placeholder {
    color: rgba(255,255,255,0.7);
}

.menu_search_input:focus {
    outline: none;
    border-color: rgba(255,255,255,0.5);
    background-color: rgba(255,255,255,0.2);
}

.menu_search_icon {
    position: absolute;
    right: 12px;
    color: rgba(255,255,255,0.7);
    cursor: pointer;
}

/* List按钮样式 */
.menu_list_btn {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 8px 15px;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 20px;
    background-color: rgba(255,255,255,0.1);
    color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
}

.menu_list_btn:hover {
    background-color: rgba(255,255,255,0.2);
    border-color: rgba(255,255,255,0.5);
}

.menu_list_icon {
    font-size: 16px;
}

.menu_list_text {
    font-size: 14px;
    white-space: nowrap;
}

/* 用户头像样式 */
.menu_user_avatar {
    cursor: pointer;
}

.user_avatar_circle {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    transition: all 0.3s ease;
}

.user_avatar_circle:hover {
    background-color: rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.5);
}

/* 更新的菜单样式 */
ul.menu_ul{
    height: auto;
    display: flex;
    align-items: center;
    gap: 50px; /* 增加间距从30px到50px */
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.menu_ul li{
    position: relative;
}

ul.menu_ul>li{
    height: 60px;
    display: flex;
    align-items: center;
}

ul.menu_ul li a{
    display: flex;
    align-items: center;
    padding: 10px 0;
    font-size: 1rem;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.3s ease;
    /* 统一下划线为 3px，使用 border-bottom 避免 text-decoration 厚度兼容问题 */
    border-bottom: 3px solid transparent;
}

ul.menu_ul li a:link{color:#fff;}
ul.menu_ul li a:visited{color:#fff;}
/* 取消变色，仅在 hover/active 时显示下划线 */
ul.menu_ul li a:hover{color:#fff; border-bottom-color:#fff;}
ul.menu_ul li a:active{color:#f00;}

ul.menu_ul li>a{padding:0;}

/* 当前激活（展开二级菜单）的一极菜单样式：下划线 */
.menu_item_active{ border-bottom-color:#fff !important; }
/* 当前页面（线路行程相关页）的一极菜单常驻下划线 */
.menu_item_current{ border-bottom-color:#fff !important; }
/* 新的二级菜单样式 */
.menu_sub{
    /* 改为全屏铺满的下拉层 */
    position: fixed;
    left: 0;
    right: 0;
    top: 58px; /* 与顶部菜单高度对齐 */
    width: 100vw;
    max-width: 100vw;
    background-color: rgba(255, 255, 255, 0.98);
    display: none;
    border-radius: 0; /* 全宽时无需圆角，避免两侧留白 */
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    /* 让内部内容区域在全屏背景中居中对齐（与 1180 宽度一致） */
    padding: 0 max(15px, calc((100vw - 1180px) / 2));
    z-index: 9999;
    min-height: 515px; /* 最小高度不少于 515px */
    overscroll-behavior: contain; /* 阻止滚动链传导，避免滚轮穿透 */
}

/* 当菜单显示时使用flex布局（不要用 :hover 强制显示，否则 JS 关闭时鼠标仍在其上会立刻又显示） */
.menu_sub.show{
    display: flex !important;
}

.menu_sub_left {
    width: 280px;
    background-color: #f8f8f8;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
    padding: 15px 0;
    border-right: 1px solid #e0e0e0;
    min-height: 515px;
}

.menu_sub_right {
    flex: 1;
    padding: 20px 25px;
    background-color: #fff;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    display: flex;
    flex-direction: column;
    min-height: 515px;
    padding-bottom: 30px; /* 底部预留 30px 间距 */
}

.menu_sub_down_arrow { display: none; }

.menu_sub_up_arrow { display: none; }

.menu_sub_li{
    padding: 10px 20px;
    margin: 1px 0;
    transition: background-color 0.3s ease;
    cursor: pointer;
    border-bottom: 1px solid #eeeeee;
    padding-right: 28px; /* 预留箭头的空间 */
    position: relative;
}

.menu_sub_li:hover, .menu_sub_li.active {
    background-color: #ffffff;
    border-left: 3px solid #e5540b;
    padding-left: 17px;
}

/* 二级菜单右侧小箭头 */
.menu_sub_li::after{
    content: '›';
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #bdbdbd;
    font-size: 18px;
}
.menu_sub_li:hover::after,
.menu_sub_li.active::after{ color: #e5540b; }

.menu_sub_li a{
    color: #333333 !important;
    text-decoration: none;
    display: block;
    padding: 0;
    font-size: 0.9rem;
    font-weight: normal;
}

.menu_sub_li a:hover {
    color: #333333 !important;
    text-decoration: none;
}

.menu_sub_li a:link,
.menu_sub_li a:visited {
    color: #333333 !important;
}

.menu_sub_li.highlight {
    background-color: #ffeb3b;
    border-radius: 4px;
    margin: 4px 10px;
}

/* 子菜单内容区域 */
.submenu_content {
    display: none;
    flex: 1;
    flex-direction: column; /* 让 footer 能吸底 */
}

.submenu_content.active,
.submenu_content:first-child {
    display: flex;
    flex-direction: column;
}

.submenu_content_main {
    flex: 1;
    display: flex;
    gap: 20px;
}

.submenu_links_section {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* 右侧内容列布局要求 */
.destinations_content .submenu_links_section{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 20px; }
.themed_content .submenu_links_section{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px 20px; }
.hotels_content .submenu_links_section{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 20px; }

/* places 与 activities 用图标网格容器控制列数 */
.places_content .icon_links_grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px 20px; }
.activities_content .icon_links_grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px 20px; }

.submenu_content h4 {
    color: #333;
    margin-bottom: 15px;
    font-size: 1.1rem;
    font-weight: 600;
}

.submenu_content p {
    color: #666;
    margin-bottom: 15px;
    line-height: 1.5;
    font-size: 0.9rem;
}

.content_link {
    display: block;
    color: #333333 !important;
    text-decoration: none;
    padding: 10px 0 !important; /* 缩小 <a> 的 block 可点击高度，减少误触 */
    border-bottom: 1px solid #f0f0f0;
    transition: color 0.3s ease;
    font-size: 0.9rem;
    line-height: 1.4;
    min-height: auto !important; /* 重置min-height */
    height: auto !important; /* 重置height */
}

.content_link:hover,
.content_link:link,
.content_link:visited {
    color: #333333 !important;
    text-decoration: none;
}

.content_link:hover {
    color: #e5540b !important;
    text-decoration: none;
}

.submenu_image_placeholder {
    width: 200px;
    height: 120px;
    background-color: #f5f5f5;
    border: 2px dashed #ddd;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333333 !important; /* 改为黑色，更清晰可见 */
    font-size: 0.8rem;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.3s ease, border-color 0.3s ease;
    align-self: center; /* 相对父容器垂直居中 */
}

.submenu_image_placeholder:hover {
    background-color: #f0f0f0;
    border-color: #ccc;
    color: #222222 !important; /* 悬停时更深的黑色 */
    text-decoration: none;
}

.submenu_image_placeholder:link,
.submenu_image_placeholder:visited {
    color: #333333 !important; /* 确保所有状态都是黑色 */
}

.submenu_content_footer {
    margin-top: auto; /* 将按钮推至 submenu_content 底部 */
    text-align: center;
    border-top: 1px solid #f0f0f0;
    padding-top: 15px;
}

/* 图标网格布局 */
.icon_links_grid {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.icon_link_item {
    display: flex;
    align-items: center;
    padding: 10px 0 !important; /* 缩小 <a> 的 block 可点击高度，减少误触 */
    cursor: pointer;
    transition: color 0.3s ease;
    text-decoration: none;
    color: #333333 !important;
    border-bottom: 1px solid #f0f0f0;
    min-height: auto !important; /* 重置min-height */
    height: auto !important; /* 重置height */
}

.icon_link_item:hover,
.icon_link_item:link,
.icon_link_item:visited {
    color: #333333 !important;
    text-decoration: none;
}

.icon_link_item:hover {
    color: #e5540b !important;
    text-decoration: none;
}

.content_icon {
    font-size: 18px;
    margin-right: 10px;
    width: 25px;
    text-align: center;
}

/* New标签 */
.new_tag {
    background-color: #e5540b;
    color: #fff;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 10px;
    margin-right: 8px;
    font-weight: bold;
}

/* 菜单图标 */
.menu_icon {
    font-size: 16px;
    margin-right: 8px;
    vertical-align: middle;
}

/* 子菜单底部 - 移除左侧的footer，只在右侧显示 */
.menu_sub_footer {
    display: none; /* 隐藏左侧的footer */
}

.view_all_btn {
    display: inline-flex;
    padding: 10px 25px;
    background-color: transparent;
    border: 2px solid #e5540b;
    color: #e5540b !important;
    text-decoration: none;
    border-radius: 0; /* 方形，无圆角 */
    font-weight: 500;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    margin: 0 auto; /* 水平居中 */
    min-height: auto !important; /* 重置min-height */
    height: auto !important; /* 重置height */
    text-align: center; /* 文字居中 */
    max-width: 260px; /* 不占满全屏 */
    width: 100%;
    align-items: center; /* 垂直居中内容 */
    justify-content: center; /* 水平居中内容 */
    border-bottom: 2px solid #e5540b !important;
}

/* Featured Hotels 的按钮样式：方形边框、居中、非全宽 */
.hotels_content .view_all_btn{
    border-radius: 0; /* 保持与全局一致的方形 */
    padding: 10px 18px;
    max-width: 260px;
    width: auto;
}

.view_all_btn:link,
.view_all_btn:visited {
    color: #e5540b !important;
}

.view_all_btn:hover {
    background-color: #e5540b;
    color: #fff !important;
    text-decoration: none;
}

/* FREE Inquiry 统一样式 - 与其他一级菜单保持一致 */
.free_inquiry_btn {
    /* 移除特殊样式，保持与其他一级菜单一致 */
    background-color: transparent !important;
    padding: 0 !important;
    /* 不能用 border:none，否则 hover 设置 border-bottom-color 不会生效 */
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    color: #fff !important;
    transition: color 0.3s ease !important;
}

.free_inquiry_btn:hover {
    background-color: transparent !important;
    color: #ff6611 !important; /* 与其他一级菜单悬停颜色一致 */
    border-bottom-color:#fff !important; /* FREE Inquiry hover 也显示 3px 下划线 */
}

.free_inquiry_btn:link,
.free_inquiry_btn:visited {
    color: #fff !important;
}
/*手机版菜单*/
.mobile_menu_bg{min-height: 44px; margin:10px 0; display: none;}
.mobile_menu_bg_font{color:#fff; position: absolute; left: 0; top: 0; width: 100%; line-height: 44px; text-align: center; z-index: 5;font-size: 1.125rem;}

.menu-toggler {cursor: pointer;opacity: 0.7;filter: alpha(opacity=70);width: 24px;height: 24px;background-repeat: no-repeat;background-position: center center;background-image: url("../images/sidebar_toggler_icon_light2.png");position: relative;z-index: 10;display:block;}
.menu-toggler:hover {filter: alpha(opacity=100);opacity: 1;}
.menu-toggler.responsive-toggler {
    /* 默认隐藏：只在手机端显示 */
    display: none;
    float: right;
    /* margin: 9px 10px 0 6px; */
    width: 25px;
    height: 22px;
    background-image: none !important;
    background: transparent !important;
    opacity: 1;
    filter: alpha(opacity=100);
}
.menu-toggler.responsive-toggler:before{
    content: '';
    position: absolute;
    left: 0;
    top: 3px;
    width: 100%;
    height: 2px;           /* 粗横线 */
    background: #fff;      /* 白色 */
    border-radius: 2px;
    box-shadow: 0 8px 0 #fff, 0 16px 0 #fff; /* 中/下两条线 */
}

@media (max-width: 991px){
    .menu-toggler.responsive-toggler{
        display: block;
    }

    /* 手机/平板：下拉菜单满屏 & 紧贴橙色头部下沿 */
    .page-sidebar-wrapper{
        position: fixed;
        top: var(--menu-bg-height, 70px);
        left: 0;
        right: 0;
        width: 100%;
        margin: 0;
        padding: 0;
        z-index: 9998; /* 处于 menu_bg(9999) 之下，但盖住页面内容 */
        box-sizing: border-box;
    }
    .page-sidebar.navbar-collapse{
        width: 100% !important;
        max-width: none;
        margin: 0;
        padding: 0;
    }
    .page-sidebar{
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important; /* 覆盖主题在 <=991px 时的 margin:20px */
    }
    /* 覆盖主题：展开状态会给 .in 再加 margin:20px，导致看起来只有一条窄栏 */
    .page-sidebar.navbar-collapse.in{
        margin: 0 !important;
        max-height: calc(100vh - var(--menu-bg-height, 70px));
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }
    .page-sidebar .page-sidebar-menu{
        margin: 0 !important; /* 去掉主题默认 10px 顶部外边距 */
        border-radius: 0;
    }
}

.page-sidebar-wrapper{display: none;}
.page-sidebar .page-sidebar-menu{background-color: #f8f8f8;margin:0;}
.page-sidebar .page-sidebar-menu>li{border-bottom: #ccc solid 1px;width:100%;}
.page-sidebar .page-sidebar-menu>li.open>a>.title{font-weight: bold;}
.page-sidebar .page-sidebar-menu>li>a>.title{color:#333;}
.page-sidebar .page-sidebar-menu>li>a>.title:link{color:#333;}
.page-sidebar .page-sidebar-menu>li>a>.title:visited{color:#333;}
.page-sidebar .page-sidebar-menu>li>a>.title:hover{color:#ff6611;}
.page-sidebar .page-sidebar-menu>li>a>.title:active{color:#f00;}
.page-sidebar .page-sidebar-menu>li>a>.arrow{color:#333;}
.page-sidebar .page-sidebar-menu>li>a>.arrow.open{color:#5f5f5f;}
.page-sidebar .page-sidebar-menu .sub-menu li {border-bottom: #ccc dashed 1px;}
.page-sidebar .page-sidebar-menu .sub-menu li>a>.title{color:#5f5f5f;}
.page-sidebar .page-sidebar-menu .sub-menu li>a>.title:link{color:#5f5f5f;}
.page-sidebar .page-sidebar-menu .sub-menu li>a>.title:visited{color:#5f5f5f;}
.page-sidebar .page-sidebar-menu .sub-menu li>a>.title:hover{color:#ff6611;}
.page-sidebar .page-sidebar-menu .sub-menu li>a>.title:active{color:#f00;}

/* Mobile 端三级菜单底部“View all”按钮 */
.page-sidebar .page-sidebar-menu .sub-menu li.mobile_view_all_item{
    border-bottom: none;
    padding: 12px 15px;
    display: flex;
    justify-content: center;
    background: #f8f8f8;
}
.page-sidebar .page-sidebar-menu .sub-menu li.mobile_view_all_item .mobile_view_all_btn{
    display: flex; /* 让 width/max-width 生效并可居中 */
}

/* 轮播图 开始 ↓ */
.carousel-inner .item{width:100%;}
.carousel-inner .item img{width:100%;}
/* 轮播图 结束 ↑ */

/* 定制游简易表单 开始 ↓ */
.customized_tour_simple{width: 100%;background: url("../../../assets/img/common/customized_tour_simple_bg.jpg") no-repeat top; background-size: cover; padding-bottom:62px;}
.form_title_label_text{font-size:3rem;}
.customized_tour_simple_bg{background-color: #3ca5d5; border: #04bcf5 solid 3px;}

.customized_simple_label{color:#fff;}
.captchaImg{cursor: pointer;margin-left:10px; height: 34px;}
.submitBtn{background-color: #337ab7; color:#fff; border-color: #327eb2;}

/* 自定义 tagsinput 宽度 */
.bootstrap-tagsinput {width: 100%;}

.form-horizontal .form-group{margin: 0;}
/* 定制游简易表单 结束 ↑ */

/* 提示框 开始 ↓ */
.alert_bar_style{position:fixed; z-index:20000; left:0px; right:0px; top:45%; margin:auto; display:none;}
/* 提示框 结束 ↑ */

/* 提示分享 开始 ↓ */
.help_share{ position:fixed; z-index:999; left:0px; top:0px; width:100%; height:100%; background: rgba(0,0,0,0.7); display:none;}
.help_share img{width:100%;}
/* 提示分享 结束 ↑ */

/*音乐播放 开始 ↓*/
/*#audio_btn{position:absolute;right:10px;top:10px;z-index:200;width:50px;height:50px}*/
/*.loading_background,.loading_yinfu,.off,.play_yinfu{background-position:center center}*/
/*#audio_btn,.loading_yinfu,.off,.play_yinfu{background-repeat:no-repeat}*/
/*.loading_yinfu,.rotate{position:absolute;left:10px;top:10px;width:30px;height:30px}*/
/*.play_yinfu{background-image:url(../images/music.gif);background-size:60px 60px}*/
/*.off,.rotate{background-image:url(../images/music_off.png)}*/
/*.rotate{background-size:100% 100%;-webkit-animation:rotating 1.2s linear infinite;-moz-animation:rotating 1.2s linear infinite;-o-animation:rotating 1.2s linear infinite;animation:rotating 1.2s linear infinite}*/
/*@-webkit-keyframes rotating{*/
/*	from{-webkit-transform:rotate(0)}*/
/*	to{-webkit-transform:rotate(360deg)}*/
/*}*/
/*@keyframes rotating{*/
/*	from{transform:rotate(0)}*/
/*	to{transform:rotate(360deg)}*/
/*}*/
/*@-moz-keyframes rotating{*/
/*	from{-moz-transform:rotate(0)}*/
/*	to{-moz-transform:rotate(360deg)}*/
/*}*/
/*.off{background-size:30px 30px}*/
/*音乐播放 结束 ↑*/

/*mask*/
.blockOverlay{opacity:.6 !important;}

.data_table_style td{vertical-align: middle !important;}

/*面包屑*/
.crumbs_bg{background-color: #f9f9f9;}
.crumbs{height:60px;}
.crumbsContainer{float:left; margin-top: 19px;}
.crumbsIcon{float:left;}
.crumbsPath{float:left; display: inline; margin: 2px 0 0 11px; color:#f25c05;}
.crumbsPath a:link{color:#0000ff;}
.crumbsPath a:visited{color:#0000ff;}
.crumbsPath a:hover{color:#ff6611;}
.crumbsPath a:active{color:#f00;}
.crumbsBottom{width:100%; height: 8px; float:left; margin-top:16px; background: url("../../../assets/img/symbol/crumbsBottom.jpg") repeat-x;}

/*右边版块固钉模块1*/
.goodsFixMod{width:100%;}
.goodsFixMod.inFixed{position: fixed;top: 0px;width: 270px;}
.goodsFixTitle{width:100%; background-color: #00a676; color:#fff; font-weight: bold; text-align: center; border-top-left-radius: 20px; border-top-right-radius: 20px; padding: 8px 0;}
.goodsFixTitle span.goodsFixTitleFont{font-size:24px;}
.goodsFixTitle span.goodsFixTitleSubFont{font-size:18px;}
.goodsFixBox{width: 100%; background-color: #f2f2f2; border-bottom: #d8d8d8 solid 1px; text-align: center; min-height: 87px;}
.goodsFixBox a{width:100%; text-align: center; display: block;}

/*旅游详情页固钉按钮*/
.travelFixBtn{width:420px; height: 34px; line-height: 32px; text-align: center; background-color: #eb6100; border-radius:20px; position: fixed; bottom:5px; left: 30%; font-size: 18px; display: none;}
.travelFixBtn.show{display: block;}
.travelFixBtn:link{color:#fff;}
.travelFixBtn:visited{color:#fff;}
.travelFixBtn:hover{color:#fff;}
.travelFixBtn:active{color:#fff;}

/*右边固钉按钮组*/
.fixedBtnGroup{width:56px; position: fixed; top: 60%; right:10px; z-index: 10;}
.fixedBtnGroup a{display: block; width: 100%;}
.fixedBtnGroup a img{width:100%;}
.returnTopBtn{border-bottom: #a7a7a7 solid 1px;}

/*单页面*/
.pageTitleBox{width: 100%; margin: 50px 10px; font-size: 24px; text-align: center;}
.pageContentBox{width: 100%; margin: 50px 10px;}
.pageContentBox a{color: #0b69be; text-decoration: underline;}
.pageContentBox img{max-width: 100%; object-fit: contain;}

/*提交表单成功后的模态框*/
.submit_modal_content{
	background: url(../../../assets/img/symbol/submit_modal.png) no-repeat;
	background-color: transparent;
	background-size: contain;
	min-height: 404px;
	box-shadow: none;
	border:none;
}
.submit_close_modal{
	width:44px;
	height: 44px;
	background: url(../../../assets/img/symbol/close.png) no-repeat;
	border:none;
	position: absolute;
	top:-20px;
	right:-20px;
}
.modal_body{padding:0 58px; color: #fff;}
.submit_success_title{margin-top: 100px; font-size: 28px;width:100%;float:left;}
.submit_success_content{width:100%;float:left; margin-top:20px;}


/* 评论区样式 */
.commentBg{background-color: #eee;}
.commentHead{padding-top:15px; padding-bottom: 15px;}
.commentHeadFlex{display: flex; align-items: center; padding: 0;}
.commentSymbol{font-size: 30px;}
.commentTitle{font-size: 20px;}
.commentScore{display: flex; align-items: center;}
.commentScoreSymbol{font-size: 20px;}
.commentScoreNum{font-size:20px;}

.commentBody{
    padding: 10px 0;
}
.commentLi{background-color: #fff; margin-bottom: 15px; padding-bottom: 15px;}
.commentUser{padding:15px; display: flex; flex-direction: column; align-items: center;}
.commentUserAvatar{width: 60px; height: 60px; border-radius: 50%;}
.commentUserName{
	width: 100%;
	text-align: center;
	margin-top: 5px;
	overflow: hidden;  /* 将超出部分隐藏 */
	text-overflow: ellipsis;  /* 显示省略号 */
	white-space: nowrap;  /* 禁止换行 */
}
.commentScoreLi{padding: 15px 0 10px 0;}
.commentContent{
	width: 100%;
	height: 70px;
	overflow: hidden;
	position: relative;
	text-overflow: ellipsis;
	white-space: normal; /* 允许空白符处换行 */
	word-wrap: break-word; /* 允许长单词或URL换行 */
	/*word-break: break-all; !* 允许在长单词的任意位置断开以实现换行 *!*/
	overflow-wrap: break-word; /* 允许在必要时换行 */
}
.commentContentMore{position: absolute; bottom: 0; right: 0; color: #00a676; padding-left: 25px; cursor: pointer;background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff, #fff, #fff); font-size: 18px; display: none;}

.commentDropMore{display: flex; align-items: center; flex-direction: column; margin-bottom: 15px;}
.commentDropMoreBtn{font-size: 16px;}
.commentDropMoreSymbol{color:#3598dc;font-size: 30px;}

.commentWrite{background-color: #fff;}
.commentWriteTitle{font-size: 24px; text-align: center; color: #0166c0; margin-top:20px;}
.commentRaidoInline{padding-left: 8px;}
.commentSubmitBtn{background-color: #008a49; color:#fff; border-radius: 20px;margin-left:auto; margin-right:auto; min-width: 233px;display: block;}
.commentSubmitBtn[disabled]{color:#333;}
/* 评论区样式 结束 ↑ */

/*新闻框*/
.whatsNewsBox{
	border: 5px dashed #d2d2d2;
	margin-block-start: 20px;
	min-height: 90px;
	margin-block-end: 20px;
	position: relative;
	padding: 30px 15px 0 15px;
	border-radius: 15px;
}
.whatsNewsBox img {
	position: absolute;
	top: -45px;
	width: 125px;
}

/*瀑布流*/
.waterfall {
	column-count: 6; /* 根据需要调整列数 */
	column-gap: 0; /* 列之间的间隙 */
}

.waterfall img {
	width: 100%; /* 图片宽度 */
	margin: 1px; /* 图片之间的间隙 */
	object-fit: cover; /* 保持图片长宽比 */
	transition: transform 0.3s; /* 图片悬停效果 */
}

.waterfall img:hover {
	transform: scale(1.05); /* 图片悬停放大效果 */
}

.commonTitle{font-size: 25px; line-height: 50px; margin:20px 0;}
.wechatList{flex: 0 0 calc((100% - 80px)/4);}
.coopLi{max-width: 60px; margin: 0 10px;}

.total_count_text{font-size: 1.5rem; font-weight: bold;}

/* 响应式布局调整 */
@media (min-width: 992px) {

}
@media (min-width: 1200px) {

}
@media (min-width: 1400px) {

}

@media (max-width: 3840px) {

}
@media (max-width: 1200px) {
	html {font-size: 14px; /* 调整为较小基准值 */}
	.waterfall {column-count: 3;}
    .container1180{width: 970px;}
}
@media (max-width: 992px) {
	.container1200{width: 970px;}
	.container1180{width: 750px;}
	.waterfall {column-count: 2;}
	.npln_response{padding-left: 15px;}
	.pln_response{padding-left: 0px;}
}
@media (max-width: 768px) {
	html {font-size: 12px; /* 更小屏幕的基准值 */}
	.container1200{width: 750px;}
	.container1180{width: 100%;}
	.waterfall {column-count: 1;}
	.travelFixBtn{left:25%;}
}
/* 新菜单响应式样式 */
@media (max-width: 1200px) {
	.main_nav_left {
		width: 240px;
	}
	.sub_menu_grid {
		gap: 20px;
	}
	.main_nav_container {
		min-height: 350px;
	}
}

@media (max-width: 992px) {
	.main_nav_container {
		flex-direction: column;
		min-height: auto;
	}
	.main_nav_left {
		width: 100%;
	}
	.main_nav_right {
		min-height: 300px;
	}
	.sub_menu_grid {
		flex-direction: column;
		gap: 15px;
	}
}

@media (max-width: 768px) {
	.main_nav_container {
		display: none; /* 在小屏幕上隐藏新菜单，使用移动端菜单 */
	}
	.sub_menu_grid {
		gap: 10px;
	}
	.sub_menu_item {
		font-size: 0.9rem;
		padding: 6px 0;
	}
}

@media (max-width: 768px) {
	/* 手机端隐藏菜单导航区域 */
	.menu_nav_area {
		display: none !important;
	}
	
	/* 调整菜单容器在手机端的布局 */
	.menu_container {
		justify-content: space-between;
		flex-wrap: nowrap;
		gap: 12px;
	}

	.menu_logo {
		flex: 1 1 auto;
		min-width: 0;
	}

	.menu_logo_img {
		height: 52px;
		max-width: 190px;
		object-fit: contain;
	}

	.menu_right_area {
		flex: 0 0 auto;
		flex-wrap: nowrap;
		gap: 12px;
	}
	
	/* 显示手机端菜单 */
	.mobile_menu_bg, .page-sidebar-wrapper{
		display: block;
	}
}

@media (max-width: 768px) {
	/* 手机版隐藏菜单导航区域 */
	.menu_nav_area {
		display: none !important;
	}
	
	/* 调整菜单容器在手机版的布局 */
	.menu_container {
		justify-content: space-between;
		flex-wrap: nowrap;
		gap: 12px;
	}

	.menu_logo {
		flex: 1 1 auto;
		min-width: 0;
	}

	.menu_logo_img {
		height: 52px;
		max-width: 190px;
		object-fit: contain;
	}

	.menu_right_area {
		flex: 0 0 auto;
		flex-wrap: nowrap;
		gap: 12px;
	}
	
	/* 显示手机端菜单 */
	.mobile_menu_bg, .page-sidebar-wrapper {
		display: block !important;
	}
}

@media (max-width: 480px) {
	.container1200{width: auto;}
	.container1180{width: auto;}
	.goodsFixMod, .menuBg{display: none;}
	.fixedBtnGroup{width:35px;}
	.submit_success_title{margin-top: 20px;font-size: 20px;}
	.submit_success_content{margin-top:10px;font-size: 12px;}
	.submit_close_modal{right: 0;}
	.travelFixBtn{width:95%; left:2.5%;}
	.wechatList{flex:1;}
	.coopLi{max-width: none;}
	
	/* 手机端隐藏菜单导航区域 */
	.menu_nav_area {
		display: none !important;
	}

	.menu_container {
		flex-wrap: nowrap;
		gap: 10px;
	}

	.menu_logo {
		flex: 1 1 auto;
		min-width: 0;
	}

	.menu_logo_img {
		height: 50px;
		max-width: 165px;
		object-fit: contain;
	}

	.menu_right_area {
		flex: 0 0 auto;
		flex-wrap: nowrap;
		gap: 10px;
	}

	.menu_search_input {
		width: 145px;
		height: 39px;
	}
	
	/* 显示手机端菜单 */
	.mobile_menu_bg, .page-sidebar-wrapper{
		display: block;
	}
}

@media (max-width: 390px) {
	.menu_logo_img {
		max-width: 145px;
	}

	.menu_search_input {
		width: 128px;
	}

	.menu_right_area {
		gap: 8px;
	}
}

/* 页脚样式 */
.footer{margin-top:50px}
.footer-partners{background:#fff;color:#333;padding:44px 0 48px}
.footer-partners-inner{position:relative;max-width:920px;margin:0 auto;text-align:center;overflow:visible}
.footer-partners-bg-text{position:absolute;top:-16px;left:50%;transform:translateX(-50%);width:100%;color:#f5f5f5;font-size:42px;font-weight:700;line-height:1.2;text-transform:uppercase;white-space:nowrap;pointer-events:none;z-index:0}
.footer-partners-title{position:relative;z-index:1;margin:0 0 36px;color:#333;font-size:30px;font-weight:700;line-height:1.25}
.footer-partners-list{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));align-items:center;justify-items:center;gap:34px 44px}
.footer-partner-item{display:flex;align-items:center;justify-content:center;width:100%;height:58px}
.footer-partner-item img{max-width:100%;max-height:58px;object-fit:contain;display:block}
.footer-bg{background:#2c3e50;color:#fff;padding:40px 0 20px 0}
.footer-content{max-width:100%}
.about-section{margin-bottom:30px}
.about-title{text-align:left;margin-bottom:15px}
.footer-logo{text-align:left;margin-bottom:15px}
.footer-logo-img{height:60px}
.footer-desc{text-align:left;font-size:14px;color:#fff;margin-bottom:15px;line-height:1.6}
.footer-sections{margin-bottom:30px}
.footer-section{margin-bottom:20px}
.footer-title{color:#fff;font-size:14px;font-weight:700;margin-bottom:15px;}
.footer-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.footer-links li{margin-bottom:0}
.footer-link{color:#fff;font-size:13px;text-decoration:none;transition:color 0.3s}
.footer-link:hover{color:#3498db;text-decoration:none}
.payment-methods{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.payment-item{display:flex;align-items:center;gap:8px;color:#fff;font-size:13px}
.payment-item i{font-size:16px;color:#3498db}
.service-info{margin-bottom:20px}
.service-item{margin-bottom:8px}
.service-label{color:#fff;font-size:12px;display:block}
.service-value{color:#fff;font-size:13px;font-weight:600}
.social-links{display:flex;gap:10px}
.social-link{display:inline-block;width:32px;height:32px;background:#34495e;border-radius:50%;text-align:center;line-height:32px;color:#fff;transition:all 0.3s;margin:0 5px;}
.social-link img,.social-link svg{width:32px;height:32px;display:block;border-radius:50%}
.social-link:hover{background:#3498db;color:#fff;text-decoration:none}
.footer-bottom{border-top:1px solid #34495e;padding-top:20px;text-align:center}
.language-selector,.currency-selector{margin-bottom:10px}
.language-selector select,.currency-selector select{background:#34495e;color:#fff;border:1px solid #34495e;border-radius:4px;padding:5px 10px;font-size:12px;width:100%}
.copyright{color:#95a5a6;font-size:12px; display: flex; align-items: center; justify-content: center; gap: 10px;}
.copyright p{margin:0}

/* 顶部菜单吸顶样式 */
.menu_bg_fixed{position:fixed;top:0;left:0;right:0;z-index:9999;width:100%;transition:transform .2s ease-out, opacity .2s ease-out}
.menu_bg_hidden{transform:translateY(-100%); opacity:0}

@media (max-width: 768px) {
	.footer-partners{padding:34px 0 38px}
	.footer-partners-bg-text{top:-8px;font-size:28px}
	.footer-partners-title{margin-bottom:26px;font-size:24px}
	.footer-partners-list{grid-template-columns:repeat(2,minmax(120px,1fr));gap:22px 26px}
	.footer-partner-item{height:52px}
	.footer-partner-item img{max-height:52px}
	.footer-bottom{text-align:center}
	.social-links{justify-content:center}
}

@media (max-width: 480px) {
	.footer-partners-list{grid-template-columns:1fr;gap:18px}
	.footer-partners-title{font-size:22px}
}

/* 顶部导航联系方式 */
.menu_contact {
    position: relative;
    flex: 0 0 auto;
}

.menu_contact_trigger {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 41px;
    padding: 0 13px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 21px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .2s ease, border-color .2s ease;
}

.menu_contact_trigger:hover,
.menu_contact_trigger:focus {
    color: #fff;
    background-color: rgba(255, 255, 255, .16);
    border-color: #fff;
    text-decoration: none;
}

.menu_contact_trigger:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

.menu_contact_trigger .fa-phone {
    font-size: 16px;
}

.menu_contact_popover {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 10001;
    width: 285px;
    padding-top: 10px;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.menu_contact:hover .menu_contact_popover,
.menu_contact:focus-within .menu_contact_popover {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.menu_contact_popover_panel {
    padding: 17px 18px;
    background: #2c3e50;
    border-radius: 3px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .24);
    color: #fff;
}

.menu_contact_popover_panel:before {
    position: absolute;
    top: 4px;
    right: 23px;
    width: 12px;
    height: 12px;
    background: #2c3e50;
    content: '';
    transform: rotate(45deg);
}

.menu_contact_popover_panel h2 {
    margin: 0 0 13px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}

.menu_contact_detail {
    margin: 0 0 10px;
    color: #fff;
    font-size: 13px;
    line-height: 1.35;
}

.menu_contact_detail:last-child {
    margin-bottom: 0;
}

.menu_contact_detail span,
.menu_contact_detail a {
    display: block;
}

.menu_contact_detail span {
    margin-bottom: 3px;
}

.menu_contact_detail a {
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

.menu_contact_detail a:hover,
.menu_contact_detail a:focus {
    color: #fff;
    text-decoration: underline;
}

@media (max-width: 991px) {
    .menu_contact_trigger {
        width: 41px;
        padding: 0;
    }

    .menu_contact_label,
    .menu_contact_popover {
        display: none;
    }
}

@media (max-width: 480px) {
    .menu_container {
        gap: 8px;
    }

    .menu_logo {
        flex: 0 1 auto;
    }

    .menu_logo_img {
        max-width: 120px;
    }

    .menu_right_area {
        gap: 8px;
    }

    .menu_contact_trigger {
        width: 38px;
        height: 38px;
    }

    .menu_search_input {
        width: 120px;
        height: 38px;
    }
}

@media (max-width: 390px) {
    .menu_logo_img {
        max-width: 100px;
    }

    .menu_right_area {
        gap: 6px;
    }

    .menu_search_input {
        width: 98px;
    }
}
