@charset "UTF-8";

.clearfix:before, .clearfix:after, .dl-horizontal dd:before, .dl-horizontal dd:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after, .form-horizontal .form-group:before, .form-horizontal .form-group:after, .btn-toolbar:before, .btn-toolbar:after, .btn-group-vertical>.btn-group:before, .btn-group-vertical>.btn-group:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after, .pager:before, .pager:after, .panel-body:before, .panel-body:after, .modal-header:before, .modal-header:after, .modal-footer:before, .modal-footer:after {
	display: table;
	content: " ";
}

.clearfix:before, .clearfix:after, .dl-horizontal dd:before, .dl-horizontal dd:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after, .form-horizontal .form-group:before, .form-horizontal .form-group:after, .btn-toolbar:before, .btn-toolbar:after, .btn-group-vertical>.btn-group:before, .btn-group-vertical>.btn-group:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after, .pager:before, .pager:after, .panel-body:before, .panel-body:after, .modal-header:before, .modal-header:after, .modal-footer:before, .modal-footer:after {
	display: table;
	content: " ";
}

.clearfix:after, .dl-horizontal dd:after, .container:after, .container-fluid:after, .row:after, .form-horizontal .form-group:after, .btn-toolbar:after, .btn-group-vertical>.btn-group:after, .nav:after, .navbar:after, .navbar-header:after, .navbar-collapse:after, .pager:after, .panel-body:after, .modal-header:after, .modal-footer:after {
	clear: both;
}

.top-bar {
	position: -webkit-sticky; /* 兼容旧版 Safari */
	position: sticky;
	/* 2. 设置触顶距离 (0 表示紧贴顶部) */
	top: 0;
	background-color: #FFF;
	color: #000;
	background: rgba(255, 255, 255, 1);
	border-bottom: 1px solid #eee;
	/* box-shadow: 0px 5px 5px rgba(217, 217, 217, 0.75); */
	z-index: 199;
}

.top-bar div.logo {
	margin-right: 15px;
	display: flex;
}

.logo a {
	display: inline-block;
	/* background-color: #0009; */
}

.logo img.logo_img {
	height: auto;
	width: 115px;
}

.top-bar .container {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

.top-bar .container .row {
	display: flex;
	align-items: center;
	flex-direction: row;
	min-height: 80px;
	width: 100%;
	padding: 0px 0px;
}

ul.nav {
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.nav li {
	float: left;
	padding: 0;
	position: relative;
	transition: all .2s ease-in-out;
}

ul.nav li a {
	border-bottom: #FFFFFF solid 2px;
	display: inline-block;
	padding: 0;
	margin: 0 20px;
	line-height: 67px;
	position: relative;
	font-size: 17px;
	color: #525252;
	text-decoration: none;
}

ul.nav>li.active a, ul.nav>li:hover a {
	border-bottom: #009b3f solid 2px;
	color: #009b3f;
}

.top-bar-right {
	/* position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%); */
	margin-left: auto;
}

.top-bar-right .language {
	text-align: right;
	margin-right: 5px;
	margin-bottom: 5px;
}

.top-bar-right .book-ticket a {
	display: inline-block;
	text-decoration: none;
	height: 36px;
	line-height: 35px;
	background-color: #FFF;
	color: #009b3f;
	font-size: 14px;
	padding: 0 15px;
	margin-left: 15px;
	cursor: pointer;
	border: solid #009b3f 1px;
	border-radius: 5px;
}

.top-bar-right .book-ticket a.active {
	background-color: #009b3f !important;
	color: #FFF !important;
}

.big-pic-container .big-pic {
	width: 100%;
}

.main-content .main-wrap {
	display: flex;
	/* 可选：防止子元素换行 */
	flex-wrap: nowrap;
	width: 100%;
}

.main-content .main-wrap .main {
	flex: 1;
	position: relative;
}

.main-content .main-wrap .side {
	flex-shrink: 0; /* 关键：防止空间不足时被压缩 */
	width: 292px;
	margin-left: 15px;
}

.tab-content>.tab-pane.active {
	display: block;
}

.tab-content>.tab-pane {
	display: none;
}

.fade {
	opacity: 0;
	-webkit-transition: opacity .15s linear;
	-o-transition: opacity .15s linear;
	transition: opacity .15s linear;
}

.fade.in {
	opacity: 1;
	transition: opacity .15s linear;
}

.newscon {
	margin-top: 15px;
}

.bor {
	background-color: #FFF;
	border-radius: 5px;
}

.p1520 {
	padding: 10px 20px;
}

.tit, .cpsq .flogo-right a, .cpsq .flogo-right span, #menu ul li {
	border-color: #009b3f;
}

.tit {
	font-size: 16px;
	line-height: 1;
	padding-left: 10px;
	border-left: solid #009b3f 3px;
	font-weight: normal;
	margin: 15px 0;
}

.news-list li {
	width: 50%;
	float: left;
	display: inline-block;
	height: 32px;
	line-height: 32px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.news-list li:nth-child(2n+1) {
	padding-right: 20px;
	border-right: #eeeeee solid 1px;
}

.news-list li:nth-child(2n) {
	padding-left: 20px;
}

.news-list li a::before {
	content: '';
	position: absolute;
	left: 1px;
	top: 50%;
	width: 5px;
	height: 5px;
	margin-top: -3px;
	background-color: #e11440;
}

.cpsq .flogo-right span.active, #count-down-wrapper, .suspension .a, .login_w button, .news-list li a::before, .countdown span, #menu ul li.active a, #menu ul li:hover a, .menu {
	background-color: #009b3f;
}

.news-list li span {
	float: right;
	color: #9c9c9c;
	min-width: 50px;
}

a {
	color: #000;
}

.news-list li a {
	padding-left: 12px;
	position: relative;
	text-decoration: none;
}

a:hover, .cpsq .flogo-right a, .cpsq .flogo-right span, a.fbzh, .cpsq .flogo h1, .cpsq .flogo h2, .rdfx i.icon-huo, .itop #dropdownMenu1 .dropdown-menu a:hover {
	color: #000000;
}

a.btn.btn-bright-darker:focus,
a.btn.btn-bright-darker:hover,
a.btn.btn-bright-darker:active {
	color: #ffffff;
}

.zhnews {
	margin: 15px 0 0;
}

.bor {
	background-color: #FFF;
	border-radius: 5px;
}

.clear {
	clear: both;
}

#count-down-wrapper {
	background-color: #e11440;
}

#count-down-wrapper {
	display: block;
	width: 100%;
	height: 190px;
	/* background: url(../images/timer_bg_7ffa5c6.png) left bottom no-repeat; */
	color: #fff;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	behavior: url(../css/ie-css3.htc);
}

.cpsq .flogo-right span.active, #count-down-wrapper, .suspension .a, .login_w button, .news-list li a::before, .countdown span, #menu ul li.active a, #menu ul li:hover a, .menu {
	background-color: #009b3f;
}

#count-down-wrapper .bg-img-container {
	width: 100%;
	height: 190px;
}

#count-down-wrapper .count-down-title {
	/* background: url(../images/timer_e8d3888.png) 18px 21px no-repeat; */
	padding: 20px 10px 0 40px;
	font-size: 18px;
}

#count-down-wrapper li {
	list-style: none;
}

#count-down-wrapper .days-container .days {
	font-size: 48px;
	text-align: center;
}

p {
	margin: 0 0 0 0;
}

#count-down-wrapper .time_ref {
	color: #dfdfdf;
}

#count-down-wrapper .days-container .days_ref {
	font-size: 13.21px;
	text-align: center;
	margin-bottom: 0;
}

#count-down-wrapper .info-content {
	display: none;
	width: 100%;
	font-size: 28px;
	text-align: center;
	margin-top: 38px;
	margin-bottom: 37px;
}

#count-down-wrapper .info-content .info-title {
	font-size: 22px;
	margin-bottom: 15px;
}

#count-down-wrapper .time-container {
	text-align: center;
}

#count-down-wrapper .time-container li {
	display: inline-block;
}

#count-down-wrapper .time-container li .time-content {
	font-size: 38px;
}

#count-down-wrapper .time-container li .time_ref {
	font-size: 13.21px;
}

#count-down-wrapper .time-container li.seperator {
	position: relative;
	top: -33px;
	font-size: 28px;
}

.rdfx {
	line-height: 30px;
}

.fr {
	float: right;
}

.rdfx span {
	display: inline-block;
	background-color: #f4f4f4;
	padding: 0 5px;
	border-radius: 5px;
	position: relative;
}

.rdfx i {
	font-size: 22px;
}

.rdfx span i {
	color: #10bd28;
}

img {
	border: 0;
}

img {
	vertical-align: middle;
}

.newscon img {
	max-width: 100%;
}

.rdfx span img {
	display: none;
	position: absolute;
	right: 0;
	top: 30px;
}

.nobg {
	background: none;
	border: 0;
	margin-bottom: 0;
}

.footer {
	padding: 20px 0;
}

.footer .row .copyright {
	text-align: center;
}

/* --- 基础样式 --- */
.carousel-wrapper,
.carousel-wrapper * { 
	box-sizing: border-box; 
}

/* --- 主轮播图容器 --- */
        .carousel-wrapper {
            position: relative;
            width: 100%;
            max-width: 1200px; /* 限制最大宽度 */
            /* 高度由 JS 动态控制，或者固定一个值 */
            /* background: #000; */
            /* border-radius: 12px; */
            overflow: hidden; 
            /* box-shadow: 0 10px 30px rgba(0,0,0,0.5); */
        }

        /* --- 轨道：使用 Flex 布局以支持滑动 --- */
        .carousel-track {
            display: flex;
            height: 185px;
            transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            /* 关键：不自动换行，让 JS 控制显示数量 */
            flex-wrap: nowrap; 
            /* gap: 14px;  */
           /*  grid-template-rows: 1fr; 
             grid-template-columns: repeat(3, 1fr); */
        }

        /* --- 单个幻灯片 --- */
        .slide {
            /* 宽度由 JS 动态计算 (100% / 3) */
            /* flex: 0 0 33.333%; */
            flex-shrink: 0; 
            height: 100%;
            position: relative;
            cursor: pointer;
            display: flex;
            justify-content: center;
            align-items: center;
           /*  background: #222; */
            /* border-right: 5px solid #fff; */ /* 分割线 */
            width: calc((100% - 28px) / 3);
            margin-right: 14px;
        }
        
        /* 去掉最后一个元素的右边框 */
        .slide:last-child { 
        	border-right: none;
        	margin-right: 0; /* 最后一个元素去掉右边距 */
         }

        .slide img, .slide video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            pointer-events: none;
            display: block;
            border-radius: 5px;
        }
        
        .slide video {
        	overflow: hidden;
        }

        .video-icon {
            position: absolute;
            font-size: 20px;
            color: rgba(255, 255, 255, 0.9);
            background: rgba(0,0,0,0.5);
            border-radius: 50%;
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            pointer-events: none;
            z-index: 2;
        }

        /* --- 导航按钮 --- */
        .nav-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(0, 0, 0, 0.6);
            color: white;
            border: none;
            cursor: pointer;
            z-index: 10;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            font-size: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: 0.3s;
        }
        .nav-btn:hover { background: rgba(255, 255, 255, 0.3); }
        .prev-main { left: 15px; }
        .next-main { right: 15px; }

        /* --- 灯箱样式 --- */
        .lightbox {
            display: none;
            position: fixed;
            z-index: 2000;
            left: 0; top: 0;
            width: 100%; height: 100%;
            background-color: rgba(0, 0, 0, 0.95);
            justify-content: center;
            align-items: center;
            opacity: 0;
            transition: opacity 0.3s;
        }
        .lightbox.show { display: flex; opacity: 1; }
        
        .lightbox-content {
            max-width: 90%;
            max-height: 90%;
            box-shadow: 0 0 20px rgba(0,0,0,0.8);
        }

        .close-lightbox {
            position: absolute;
            top: 20px; right: 30px;
            color: #fff;
            font-size: 40px;
            cursor: pointer;
            z-index: 2001;
        }

        .lightbox-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255,255,255,0.1);
            color: white;
            border: none;
            width: 50px; height: 50px;
            border-radius: 50%;
            font-size: 24px;
            cursor: pointer;
            z-index: 2001;
        }
        .prev-lightbox { left: 30px; }
        .next-lightbox { right: 30px; }
        
        .lightbox video {
        	margin: 0 auto;
    		display: block;
        }

        /* --- 响应式调整 --- */
        @media (max-width: 768px) {
            .nav-btn { width: 30px; height: 30px; font-size: 16px; }
            .lightbox-nav { width: 40px; height: 40px; }
        }
        
section.f4msg {
	padding: 1rem 0;
    border: 2px solid #009b3f;
    border-radius: 5px;
    background-color: white;
    margin: 0 auto;
    margin-top: 0.5rem;
}

section.f4msg>div.msg-item:first-child {
	padding-left: 0;
	border-left: none;
}

section.f4msg>div.msg-item {
	padding: 0 0.5rem;
	text-align: center;
	border-left: 0.5px solid #009b3f;
}

section.f4msg>div.msg-item>h1,
section.f4msg>div.msg-item>h2,
section.f4msg>div.msg-item>h3 {
    font-size: 1.6rem;
    color: #009b3f;
}

section.f4msg>div.msg-item>p {
	font-size: 1rem;
	margin: 0.5rem 0 0 0;
}

.copyright p,
.copyright p a {
	text-decoration: none;
	color: #5e5e5e;
	font-size: 0.9rem;
	margin: 0;
}

:root {
    --color-header-bg: #001845;
    --color-dark-bg: #1f1f1f;
    --color-booth: #3a3a3a;
    --color-white: #fff;
    --color-black: #000;
    --color-accent: #f63;
    --color-accent-hover: #009b3f;
    --color-notice-bg: #fdb;
    --color-lightest-bg: #e8e8e8;
    --color-light-bg: #c5c5c5;
    --color-tender-stroke: rgba(0, 0, 0, 0.05);
    --color-tender-stroke-hover: rgba(0, 0, 0, 0.1);
    --color-success: #188a57;
    --color-error-main: #d00;
    --color-error-bg: #d99;
    --color-disabled-main: #666;
    --color-disabled-bg: #d6dae2;
    --z-index-header: 100;
    --z-index-filters: calc(var(--z-index-header) - 10);
    --z-index-floating-event-head: calc(var(--z-index-header) + 10);
    --z-index-event-sharer: calc(var(--z-index-floating-event-head) + 1000);
    --z-index-dialog-curtain: calc(var(--z-index-event-sharer) - 100);
    --z-index-mobile-menu: calc(var(--z-index-dialog-curtain) + 10);
    --z-index-auth-overlay: calc(var(--z-index-mobile-menu) - 5);
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    /* font-size: 100%; */
    vertical-align: baseline;
    /* background: transparent; */
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

section, .dialog-box {
    margin: 0;
    padding: 0 11px;
    position: relative;
}

@media (min-width: 960px) {
    section, .dialog-box,
    .top-bar,
    .main-content {
        padding: 0 20px;
    }
}

@media (min-width: 1440px) {
    section, .dialog-box,
    .top-bar,
    .main-content {
        padding: 0 30px;
    }
}

section.event-head {
    border-style: solid;
    border-width: 0 0 1px;
    border-color: var(--color-tender-stroke);
}

section.event-head .dimmer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-size: 200%;
}

section.event-head .dimmer-img {
    filter: blur(23px);
    z-index: 7;
    width: calc(100% + 100px + 100px);
    height: calc(100% + 100px + 100px);
    margin-left: -100px;
    margin-top: -100px;
}

section.event-head .dimmer-curtain {
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 8;
}

section .dialog-box-layout, section .main-column, .dialog-box .dialog-box-layout, .dialog-box .main-column {
    width: 100%;
    max-width: 1218px;
    margin: 0 auto;
    padding: 20px 0;
}

@media (min-width: 800px) {
    section .dialog-box-layout, section .main-column, .dialog-box .dialog-box-layout, .dialog-box .main-column {
        padding: 25px 0;
    }
}

@media (min-width: 960px) {
    section .dialog-box-layout, section .main-column, .dialog-box .dialog-box-layout, .dialog-box .main-column {
        padding: 30px 0;
    }
}

@media (min-width: 1280px) {
    section .dialog-box-layout, section .main-column, .dialog-box .dialog-box-layout, .dialog-box .main-column {
        padding: 40px 0;
    }
}

section.event-head .main-column {
    position: relative;
    z-index: 9;
}

@media (min-width: 800px) {
    section.event-head.event-head-image .main-column {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

.event-head-layout {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

@media (min-width: 800px) {
    .event-head-layout {
        display: grid;
        grid-template-columns: 66.66fr 33.33fr;
        flex-direction: row;
        gap: 30px;
    }
}

@media (min-width: 1024px) {
    .event-head-layout {
        gap: 30px;
    }
}

@media (min-width: 800px) {
    .event-head-layout .part-header {
        min-width: 0;
    }
}

.event-head-layout .part-header img {
    max-width: 100%;
    height: auto;
    display: block;
}

@media (min-width: 800px) {
    section.event-head.event-head-image .part-info {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

@media (min-width: 1024px) {
    section.event-head.event-head-image .part-info {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

/* @media (min-width: 800px) { */
    .event-head-layout .event-head-info-layout {
        display: flex;
        flex-direction: column;
        gap: 10px;
        justify-content: space-between;
        min-height: 100%;
    }
/* } */

section.event-head.event-head-has-dimmer .part-info .part-top {
    color: #fff !important;
}

.event-head-layout .event-title {
    font-size: 22px;
    line-height: 1.4;
    font-weight: 900;
    margin: 0;
    padding: 0;
}

@media (min-width: 800px) {
    .event-head-layout .event-title {
        font-size: 32px;
    }
}

/* .event-head-layout .event-period, .event-head-layout .event-geo {
    font-weight: 100;
    font-size: 32px;
    line-height: 38px;
    margin-top: 13px;
} */

.event-head-layout .event-period, .event-head-layout .event-geo {
    font-weight: 100;
    font-size: 32px;
    line-height: 38px;
    margin-top: 13px;
}

.event-head-layout .event-geo {
    font-weight: 300;
    font-size: 18px;
    line-height: 21px;
}

.event-head-layout .part-info .event-geo {
    position: relative;
    padding-left: 36px;
}

.event-head-layout .part-info .event-geo::before {
    display: inline-block;
    vertical-align: baseline;
    margin-left: -36px;
    content: "";
    background-repeat: no-repeat;
    width: 36px;
    height: 20px;
    background-position: left bottom;
    background-size: contain;
    background-image: url(../../icon/icon-mappingrey.svg);
    margin-bottom: -2px;
}

.event-head-layout .part-info .event-geo.hall-name::before {
	background-image: none;
}

.event-head-layout .part-info .event-geo > *:not(:last-child)::after {
    content: ", ";
}

section.event-head .counter {
    margin-bottom: 15px;
    padding: 12.5px;
    border-radius: 4px;
    background-color: var(--color-notice-bg);
}

section.event-head .counter > .headline {
	font-size: 18px;
      /* margin-bottom: 5px; */
      line-height: 3;
}

section.event-head .counter > .place {
	display: flex;
      flex-direction: row;
      justify-content: flex-start;
      gap: 15px;
      color: var(--color-black);
      position: relative;
}

.event-head-layout .event-head-actions {
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
    justify-content: flex-start;
    align-items: center;
}

@media (min-width: 1060px) {
    .event-head-layout .event-head-info-layout .part-bottom .event-head-actions {
        justify-content: flex-end;
        display: grid;
        /* grid-template-columns: 50fr 50fr 50px;
        grid-template-columns: 160px 1fr; */
    }
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

.btn {
    display: inline-block;
    vertical-align: baseline;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-style: solid;
    border-width: 0;
    margin: 0;
    cursor: pointer;
    transition: all 0.2s;
    background-color: var(--color-accent);
    color: var(--color-white);
    line-height: 1;
    position: relative;
    font-weight: 700;
    font-size: 16px;
    border-radius: 4px;
    padding: 8px 16px;
    text-decoration: none;
}

@media (min-width: 720px) {
    .btn {
        padding: 15px 22px;
    }
}

.btn-bright, .btn-bright-darker, .btn-dark {
    opacity: 1;
}

.btn-bright-darker {
    background-color: var(--color-accent-hover);
}

.btn:hover, .btn:focus {
    outline: none;
    opacity: 1;
}

.btn-bright-darker:hover, .btn-bright-darker:focus {
    background-color: #009b3f;
    transform: scale(0.96);
}

@media (min-width: 1060px) {
    .event-head-layout .event-head-info-layout .part-bottom .event-head-actions .btn {
        text-align: center;
        padding-left: 5px;
        padding-right: 5px;
    }
}

.row.main-column{
	padding: 0px 0px;
}

.btn-circle {
	display: inline-block;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	border: 0.8px solid #fff;
	margin-left: 20px;
	position: relative;
}

.btn-circle img,
.btn-circle svg {
  position: absolute; /* 绝对定位，使两张图完全重叠 */
  top: 50%;          /* 3. 将元素的左上角移动到父容器垂直方向的50%处 */
  left: 50%;         /* 4. 将元素的左上角移动到父容器水平方向的50%处 */
  transform: translate(-50%, -50%); /* 5. 将元素自身向左、向上各移动自身宽高的一半 */
  width: 20px;
  height: 20px;
  transition: opacity 0.3s ease-in-out; /* 添加平滑过渡效果 */
}

.img-default {
  opacity: 1; /* 默认完全显示 */
}

.img-hover {
  opacity: 0; /* 默认完全透明（隐藏） */
}

.btn-circle:hover {
	background-color: #ffffff;
}

/* 鼠标悬停在容器上时，切换透明度 */
.btn-circle:hover .img-default {
  opacity: 0;
}

.btn-circle:hover .img-hover {
  opacity: 1;
}

.page-visit {
	margin-left: 20px;
}

.page-visit span {
	color: #6d6dde;
	opacity: 0.85;
}
