@charset "gb2312";
/* CSS Document */
@charset "gb2312";
/* CSS Document */
div,ul,dl,dd,p,form,h1,h2,h3,h4,h5,h6{margin:0;padding:0;}
ul li{list-style:none;}
*{padding:0; margin:0;}
body{ font-family:����;color:#000;background:#fff; font-size:12px;}
img{border:none; vertical-align: middle;}
.hong{color:#e60012;}
.over{overflow:hidden; zoom:1;}
.clear{clear:both;}
.left{float:left;}
i, em{ font-style:normal;}
.right{float:right;}
a{color:#010000; text-decoration:none;}
a:hover{text-decoration:underline;}
.blank{ clear:both; height:10px; overflow:hidden; font-size:0px;}
.main{ width:1398px; margin:0 auto; padding-bottom:30px}

.head1{ height:34px; line-height:34px; width:100%; background:#4a4a4a;font-family:΢���ź�;color:#FFF; font-size:13px;}
.head1_1{float:left;}
.head1_1 em{color:#e2e2e2;}
.head1_2{ float:right; margin-right:20px; display:inline; background:url(../images/index_01.jpg) no-repeat left center; height:34px; padding-left:18px; color:#e2e2e2;}
.head1_2 a{ color:#FFF;}

.head2{ width:100%; padding:15px 0px; background:#FFF; height:60px;}
.head2_1{ float:left; margin-right:40px; display:inline;}
.head2_2{ float:left; height:60px;}
.head2_2 ul li{ float:left; height:60px; margin-right:10px; display:inline;}
.head2_2 ul li img{ float:left; margin-top:8px; display:inline;}
.head2_2 ul li p{ float:left; font-size:12px;color:#575757; padding-left:5px; padding-top:13px; line-height:17px;}
.head2_3{ float:right; margin-left:30px; display:inline; margin-top:5px;}
.head2_4{ float:left; margin-left:400px; display:inline; margin-top:5px;}

.head3{ width:100%; height:60px; background:#008892; line-height:60px;display:block}
.head3_1 {
    width: 990px;
    margin-left: 12%;
    float: left;
    margin-right: 6px;
    display: inline;
}
.head3_1 ul li{ float:left; width:100px; height:60px;margin-left:30px}
.head3_1 ul li a {width:110px; height:60px; line-height:60px;color:#FFF; display:block; float:left; font-size:16px; font-weight:bold;list-style:none}
.head3_1 ul li a:hover{ background:none;}

/*banner*/
.focusBox{position:relative;width:100%;text-align:center;height:100%;overflow:hidden;}
.focusBox .pic{position:relative;z-index:0;text-align: center;width:100%;}
.focusBox .pic img{display:block;margin:0 auto; }
.focusBox .hd{width:100%;position:absolute;bottom:8px; left:48%;}
.focusBox .hd li{width: 12px;height: 12px;background:#b1b0ad;float: left;margin-left: 12px;cursor: pointer;}
.focusBox .hd .on{background:#027ad3;}
.focusBox .prev,.focusBox .next{  display:block;  position:absolute; z-index:1; top:50%; margin-top:-30px; left:13%;  z-index:1; width:56px;height:56px; background:url(../images/ad_ctr.png) no-repeat 0 0; cursor:pointer; filter:alpha(opacity=50);opacity:0.5; display:none;  }
.focusBox .next{ left:auto; right:13%; background-position:-56px 0px;}

.head4{ width:100%; padding:20px 0px; height:205px;}
.head41, .head42, .head43, .head44, .head45{ float:left; width:192px; height:205px; margin-right:8px; display:inline;}

/*������*/
.frame {width:192px; height:205px;  float:left; margin-right:8px; display:inline; overflow:hidden;}
.wrap {width:192px; height:205px; position:relative; overflow:hidden;}

.wrap div {width:192px; height:320px; padding:300px 0px 10px 0px; position:absolute; left:0; top:0; background:url(../images/trans.gif);}
.wrap div b {display:block; width:192px; height:315px; position:absolute; left:0; top:300px; z-index:1; background:url(../images/index_14.jpg) no-repeat; font-family:΢���ź�; font-size:17px; text-align:center; padding-top:15px;}
.wrap div b a{ color:#FFF;}
.wrap div span {position:relative; z-index:500; position:absolute;}
.wrap div p {font-size:12px; color:#fff; top:140px; position:absolute; left:23px; float:left; width:150px;}
.wrap div p em{ float:left;width:50px; height:25px; line-height:25px; text-align:center;}
.wrap div p a{ color:#FFF; padding:0px 2px;}
.wrap div img{ position:absolute; top:65px; left:62px;}

.frame2 {width:192px; height:205px;  float:left; margin-right:8px; display:inline; overflow:hidden;}
.wrap2 {width:192px; height:205px; position:relative; overflow:hidden;}
.wrap2 div {width:192px; height:320px; padding:300px 0px 10px 0px; position:absolute; left:0; top:0; background:url(../images/trans.gif);}
.wrap2 div b {display:block; width:192px; height:315px; position:absolute; left:0; top:300px; z-index:1; background:url(../images/index_15.jpg) no-repeat; font-family:΢���ź�; font-size:17px; text-align:center; padding-top:15px;}
.wrap2 div b a{ color:#FFF;}
.wrap2 div span {position:relative; z-index:500; position:absolute;}
.wrap2 div p {font-size:12px; color:#fff; top:140px; position:absolute; left:8px; float:left; width:180px;}
.wrap2 div p em{ float:left;width:60px; height:25px; line-height:25px; text-align:center;}
.wrap2 div p a{ color:#FFF;padding:0px 2px;}
.wrap2 div img{ position:absolute; top:65px; left:62px;}

.frame3 {width:192px; height:205px;  float:left; margin-right:8px; display:inline; overflow:hidden;}
.wrap3 {width:192px; height:205px; position:relative; overflow:hidden;}
.wrap3 div {width:192px; height:320px; padding:300px 0px 10px 0px; position:absolute; left:0; top:0; background:url(../images/trans.gif);}
.wrap3 div b {display:block; width:192px; height:315px; position:absolute; left:0; top:300px; z-index:1; background:url(../images/index_16.jpg) no-repeat; font-family:΢���ź�; font-size:17px; text-align:center; padding-top:15px;}
.wrap3 div b a{ color:#FFF;}
.wrap3 div span {position:relative; z-index:500; position:absolute;}
.wrap3 div p {font-size:12px; color:#fff; top:140px; position:absolute; left:0px; float:left; width:180px;}
.wrap3 div p em{ float:left;width:60px; height:25px; line-height:25px; text-align:center;}
.wrap3 div p a{ color:#FFF;padding:0px 2px;}
.wrap3 div img{ position:absolute; top:65px; left:62px;}

.frame4 {width:192px; height:205px;  float:left; margin-right:8px; display:inline; overflow:hidden;}
.wrap4 {width:192px; height:205px; position:relative; overflow:hidden;}
.wrap4 div {width:192px; height:320px; padding:300px 0px 10px 0px; position:absolute; left:0; top:0; background:url(../images/trans.gif);}
.wrap4 div b {display:block; width:192px; height:315px; position:absolute; left:0; top:300px; z-index:1; background:url(../images/index_17.jpg) no-repeat; font-family:΢���ź�; font-size:17px; text-align:center; padding-top:15px;}
.wrap4 div b a{ color:#FFF;}
.wrap4 div span {position:relative; z-index:500; position:absolute;}
.wrap4 div p {font-size:12px; color:#fff; top:140px; position:absolute; left:7px; float:left; width:190px;}
.wrap4 div p em{ float:left;width:57px; height:25px; line-height:25px; text-align:center;}
.wrap4 div p a{ color:#FFF;padding:0px;}
.wrap4 div img{ position:absolute; top:65px; left:62px;}

.frame5 {width:192px; height:205px;  float:left; margin-right:8px; display:inline; overflow:hidden;}
.wrap5{width:192px; height:205px; position:relative; overflow:hidden;}
.wrap5 div {width:192px; height:320px; padding:300px 0px 10px 0px; position:absolute; left:0; top:0; background:url(../images/trans.gif);}
.wrap5 div b {display:block; width:192px; height:315px; position:absolute; left:0; top:300px; z-index:1; background:url(../images/index_18.jpg) no-repeat; font-family:΢���ź�; font-size:17px; text-align:center; padding-top:15px;}
.wrap5 div b a{ color:#FFF;}
.wrap5 div span {position:relative; z-index:500; position:absolute;}
.wrap5 div p {font-size:12px; color:#fff; top:140px; position:absolute; left:15px; float:left; width:190px;}
.wrap5 div p em{ float:left;width:47px; height:25px; line-height:25px; text-align:center;}
.wrap5 div p a{ color:#FFF;padding:0px 2px;}
.wrap5 div img{ position:absolute; top:65px; left:62px;}

/*foot*/
.foot{ width:100%; height:350px; background:url(../images/index_41.jpg) repeat-x;margin-bottom:64px;}
.foot1{ float:left; width:300px; background:url(../images/index_25.jpg) no-repeat right 30px; height:250px; text-align:center; padding-top:52px;}
.foot12{margin-top:18px;}
.foot13{ padding-top:15px;}
.foot2{ float:left; width:585px;  height:250px; padding-top:25px;margin-left:40px;margin-top:20px;}
.foot2 dl{ float:left; width:117px;  height:232px; text-align:center; overflow:hidden;}

.foot2 dl:nth-child(1){  background:url(../images/index_28.jpg) no-repeat top center; }
.foot2 dl:nth-child(2){  background:url(../images/index_31.jpg) no-repeat top center; }

.foot2 dl:nth-child(3){  background:url(../images/index_29.jpg) no-repeat top center; }

.foot2 dl:nth-child(4){  background:url(../images/index_30.jpg) no-repeat top center; }

.foot2 dl:nth-child(5){  background:url(../images/index_32.jpg) no-repeat top center; }

.foot2 dl img{ padding-top:15px;}
.foot2 dl dt{  height:23px; line-height:23px; width:91px;margin:50px auto 8px; text-align:center;}
.foot2 dl dt a{ font-size:12px; color:#000; font-weight:bold;}
.foot2 dl dd{ float:left; width:117px;}
.foot2 dl dd a{ width:117px; float:left; text-align: center; height:25px; line-height:25px;color:#000; font-size:12px; overflow:hidden;}
.foot3{ width:175px; float:left; text-align:center; padding-top:25px;}
.foot3 p{ float:left; font-size:12px; color:#FFF; line-height:23px; width:150px; text-align:left; margin-left:12px; display:inline; margin-top:5px;}
.foot31{ width:175px; float:left; margin-top:10px; display:inline;}
.foot31 img{ padding:0px 2px;}
.foot4{ width:1000px; height:47px; line-height:21px; font-size:12px; color:#000; text-align:center;margin:0 auto;}


/*��������ͷ��*/
#head1{ position:fixed; top:0px; z-index:999; height:34px;}
.head2_21{ float:left; width:410px; text-align:center; /*padding-top:3px;*/}
.mhead2{ width:100%; padding:15px 0px; background:#fff; height:60px;}
.leader{ width:978px; height:49px; border:1px solid #e5e5e5; background:#f1f1f1; float:left; padding:0px 10px;color:#000; line-height:49px;}
.leader1{ float:left; background:url(../images/index_108.jpg) no-repeat left 16px; height:49px; padding-left:25px; width:700px; overflow:hidden;}
.leader1 a{ color:#000;}
.leader2{ float:right; width:248px; height:30px; margin-top:10px; display:inline; overflow:hidden;}
.leader21{ width:152px; height:28px; border:1px solid #d5d5d5; float:left; background:url(../images/index_109.jpg) no-repeat 10px center #fff; padding-left:30px;color:#b1b1b1; line-height:28px;}
.leader3{ float:left; width:64px; height:30px; border:none; background:url(../images/index_110.jpg) no-repeat; cursor:pointer;}



.tj{ width:299px; float:left;border:none;border-bottom:1px solid #e5e5e5;}
.youb{ float:left; width:265px; padding:5px 17px 20px;}
.youb1{ float:left; width:264px; height:30px; background:url(../images/index_111.jpg) no-repeat; margin-bottom:15px; display:inline;}
.youb1 strong{ float:left; width:140px; padding-top:8px; text-align:center; font-size:14px;}
.youb1 a{ float:right; width:50px; margin-top:5px; margin-right:8px; display:inline; height:20px; border-radius:5px; background:#c4c4c4; text-align:center; line-height:20px; color:#FFF;}
.rd1{ float:left; width:82px; height:69px; background:#1ec4b6; text-align:center; line-height:69px; font-size:14px; margin-right:3px; display:inline;}
.rd1 a, .rd2 a, .rd3 a, .rd4 a{color:#FFF;}
.rd2{ float:left; width:177px; height:69px; background:#3eb3e3; text-align:center; line-height:69px; font-size:14px; margin-right:3px; display:inline;}
.rd3{ float:left; width:177px; height:147px;margin-right:3px; display:inline; margin-top:3px;font-size:14px;}
{ color:#FFF;}
.rd31{ float:left; width:177px; height:69px; background:#b1b1b1; text-align:center; line-height:69px;}
.rd32{ float:left; width:82px; height:75px; background:#86c445; text-align:center;margin-right:3px; display:inline; margin-top:3px; line-height:75px;}
.rd33{ float:left; width:92px; height:75px; background:#3eb3e3; text-align:center; line-height:75px;margin-top:3px;}
.rd4{ float:left; width:82px; height:147px;display:inline; margin-top:3px;}
.rd41{ float:left; width:82px; height:35px; background:#f2ab01; text-align:center; line-height:35px;}
.rd42{ float:left; width:82px; height:71px; background:#d05b6e; text-align:center; line-height:71px;display:inline; margin-top:3px;}
.rd43{ float:left; width:82px; height:35px; background:#b1b1b1; text-align:center; line-height:35px;display:inline; margin-top:3px;}
.mydc{ float:left; width:264px; height:64px;}
.dcz{ float:left; width:13px; height:64px; background:url(../images/index_119.jpg) no-repeat; cursor:pointer;}
.dcm{ float:left; width:238px; height:64px; position:relative; overflow:hidden;}
.dcm ul{ position:absolute;}
.dcm ul li{ float:left; width:55px; height:64px;cursor:pointer; margin-right:0px; margin-left:4px; display:inline; overflow:hidden;}
.dcy{ float:right; width:13px; height:64px; background:url(../images/index_120.jpg) no-repeat; cursor:pointer;}
.dcb{ width:264px; float:left; height:216px; overflow:hidden; position:relative; margin-top:10px; display:inline;}
.dcb ul{ height:216px; position:absolute;}
.dcb ul li{ float:left; position:relative;}
.dcm ul li img{ float:left;}
.dcm ul li.cur img{ border:1px solid #a1a1a1;}
.dct{ float:left; width:100%; text-align:center; padding-top:10px;}
.qwjs{ float:left; width:264px; overflow:hidden; font-family:΢���ź�; font-size:18px;}
.qwjs em{ font-size:12px;}
.qwjs ul li{ float:left; width:264px; margin-bottom:1px; display:inline; overflow:hidden;}
.qwjs ul li a{ text-decoration:none;}
.qwjs ul li .kjy_a{ float:left; width:254px; display:block; height:31px; padding:5px; background:url(../images/index_125.jpg) no-repeat; color:#FFF;}
.qwjs ul li .kjy{ float:left; width:254px; display:block; height:31px; padding:5px; background:url(../images/index_126.jpg) no-repeat;}
.qwjs ul li img{ float:left;}
.qwjs ul li span{ float:left; padding-top:5px; padding-left:10px;}
.qwzj1{ float:left; margin-top:5px; margin-bottom:5px; display:inline;}
.add{ font-size:12px; width:264px; line-height:21px; padding-top:5px; float:left;}

.anzx{ float:left; width:267px; margin-left:16px; margin-top:10px; display:inline;}
.anzx ul li{ float:left; width:71px; height:71px; margin:10px 9px 0px; display:inline;}
.anzx1{ width:100%; text-align:center; padding-top:10px; float:left;}

.zjdf1{ float:left; width:651px; border:1px solid #e5e5e5; border-right:none;  border-top:none; padding:24px;}
.zjdf2{ float:right; width:298px; height:1837px; border:none; border-right:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5; overflow:hidden;}

#bottom_external{z-index: 9999;}


.banner { overflow: hidden; zoom: 1; }

#focusindex { height:450px; overflow: hidden; position: relative; width: 100% }

#focusindex li { height:450px; overflow: hidden; position: absolute; width: 100%; }

#focusindex li a { display: block; height: 450px; position: absolute; width: 100%; z-index: 2 }

#focusindex .btn { position: absolute; width: 100%; height: 30px; bottom: 0; text-align: center; z-index: 9 }

#focusindex .btn span { display: inline-block; _display: inline; _zoom: 1; width: 14px; height: 14px; _font-size: 0; margin: 5px 10px; cursor: pointer; background: #bebebd; z-index: 8; border-radius: 50% }

#focusindex .btn span.on { background: #f07a06; z-index: 9 }

#focusindex .preNext { width: 44px; height: 44px; position: absolute; top: 180px; background: url(../images/xz-sprite.png) no-repeat left bottom; cursor: pointer; z-index: 9; opacity: 0; transition: all 0.3s linear 0s; }

#focusindex .pre { left: 0%; z-index: 9 }

#focusindex .next { right: 0%; background-position: right bottom; z-index: 9 }

#focusindex:hover .preNext { opacity: 0.5; }

#focusindex:hover .pre { left: 10%; }

#focusindex:hover .next { right: 10%; }

#focusindex .pre:hover, #focusindex .next:hover { opacity: 1; }


.banner { background: url(../images/banner.jpg) no-repeat center; }
.banner_gyjj { background: url(../images/banner_gyjj.jpg) no-repeat center; }
.banner1 { background: url(../images/banner1.jpg) no-repeat center; }
.banner2 { background: url(../images/banner2.jpg) no-repeat center; }
.banner3 { background: url(../images/banner3.jpg) no-repeat center; }


.d-footer {
   margin: 0 auto;
    min-height: 100px;
    text-align: center;
    background-color: #fff;
    /* border-top: 1px solid #e6e6e6; */
    z-index: 1030;
    width: 77%;
    padding: 30px;
}

.d-footer ._xx {
    position: relative;
    
    border-bottom: 1px solid #e6e6e6;
    height:160px
}

.d-footer ._xx ._if {
    float: left;
    width: 45%;
    line-height: 2;
    font-size: 16px;
    text-align: left
}

.d-footer ._xx ._wm {
    float: right;
    display: flex
}

.d-footer ._xx ._wm li {
    float: left;
    padding-left: 2rem;
    display: flex;
    flex-direction: column
}

.d-footer ._xx ._wm img {
    width: 60px
}

.d-footer ._xx em {
    display: block;
    position: absolute;
    z-index: 1;
    zoom:1;width: 40%;
    left: 50%;
    top: 0;
    bottom: 0;
    transform: translate(-50%);
    background: url(../img/logo.74995bc2.png) 50% no-repeat;
    background-size: 50% 35%
}

.d-footer ._copy {
   padding: 0 .5rem;
    font-size: 16px;
}

.d-footer ._copy span {
 
}
.icpimg {
    width: 20px;
    height: 20px
}

.d-footer ._gm {
    padding-bottom: 50px
}

.d-footer ._gm a {
    padding: 0 .5rem
}
.icp_img {
    height: 20px;
    width: 20px;
}
.el-footer {
    --el-footer-padding: 0 20px;
    --el-footer-height: 60px;
    box-sizing: border-box;
    flex-shrink: 0;
    height: var(--el-footer-height);
    padding: var(--el-footer-padding);
}

footer {
    display: block;
    unicode-bidi: isolate;
    background-color: white;
    padding: 15px;
}

/* Header skeleton styles */
.header-skeleton {
    width: 100%;
    padding: 22px 20px;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.header-skeleton-inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    align-items: center;
}

.header-logo-skeleton {
    width: 313px;
    height: 58px;
    border-radius: 6px;
}

.header-contact-skeleton {
    width: 207px;
    height: 45px;
    border-radius: 6px;
}

.menu-skeleton {
    display: flex;
    justify-content: center;
    padding: 15px 0;
}

.menu-item-skeleton {
    width: 100px;
    height: 24px;
    margin: 0 15px;
    border-radius: 4px;
}

@media (max-width: 768px) {
    .header-logo-skeleton {
        width: 200px;
        height: 40px;
    }

    .header-contact-skeleton {
        width: 150px;
        height: 35px;
    }

    .menu-item-skeleton {
        width: 70px;
        height: 20px;
        margin: 0 5px;
    }
}

.menu-link {
    text-decoration: none;
    color: inherit;
    display: block;
    padding: 0 20px;
}

.menu-link:hover {
    color: #007bff;
}

.el-carousel__item h3 {
    color: #475669;
    opacity: 0.75;
    line-height: 150px;
    margin: 0;
    text-align: center;
}

.carousel-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.5);
    padding: 20px;
    text-align: center;
}

.carousel-caption h3 {
    color: white;
    margin: 0;
    font-size: 24px;
    font-weight: bold;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
}

.el-carousel__item:nth-child(2n) {
    background-color: #99a9bf;
}

.el-carousel__item:nth-child(2n + 1) {
    background-color: #d3dce6;
}

#homeBanner {
    margin-bottom: 20px;
}

.el-carousel__container {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* News skeleton styles */
.news-skeleton {
    padding: 20px;
}

.news-item-skeleton {
    display: flex;
    margin-bottom: 25px;
    padding: 20px;
    border-radius: 8px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.news-image-skeleton {
    width: 140px;
    height: 100px;
    margin-right: 20px;
    border-radius: 6px;
}

.news-content-skeleton {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.news-title-skeleton {
    height: 22px;
    margin-bottom: 12px;
    border-radius: 3px;
}

.news-text-skeleton {
    height: 16px;
    margin-bottom: 8px;
    border-radius: 3px;
}

/* News list styles */
.news-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.news-item {
    display: flex;
    margin-bottom: 25px;
    padding: 20px;
    border-radius: 8px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.news-item:hover {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.news-item img {
    width: 140px;
    height: 100px;
    margin-right: 20px;
    border-radius: 6px;
    object-fit: cover;
}

.news-item .news-title {
    font-size: 18px;
    font-weight: 500;
    color: #333;
    text-decoration: none;
    display: flex;
    align-items: center;
}

.news-item .news-title:hover {
    color: #007bff;
}

/* Environment gallery skeleton styles */
.environment-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
    padding: 20px 0;
}

.env-item {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.env-image-skeleton {
    width: 100%;
    height: 160px;
    border-radius: 0;
}

.env-text-skeleton {
    width: 80%;
    height: 20px;
    margin: 15px auto;
    border-radius: 3px;
}

/* Removed map skeleton styles */

/* Compact environment gallery */
.environment-gallery.compact .env-item {
    text-align: center;
    padding: 10px;
    transition: all 0.3s ease;
}

.environment-gallery.compact .env-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.environment-gallery.compact .env-item p {
    margin: 15px 0 0;
    font-size: 15px;
    color: #555;
    font-weight: 500;
    line-height: 1.4;
}

.image-slot {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: #f5f7fa;
    color: #909399;
}

.dot {
    animation: dot 2s infinite steps(3, start);
    overflow: hidden;
}

@keyframes dot {
    0% {
        width: 0;
    }
    100% {
        width: 1em;
    }
}

/* Skeleton animation */
.el-skeleton__item {
    background: linear-gradient(
        90deg,
        #f0f0f0 25%,
        #e0e0e0 50%,
        #f0f0f0 75%
    );
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
}

.header-skeleton .el-skeleton__item {
    background: linear-gradient(
        90deg,
        #e0e0e0 25%,
        #f0f0f0 50%,
        #e0e0e0 75%
    );
    background-size: 200% 100%;
    animation: loading 1.2s infinite;
}

@keyframes loading {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Map container styles */
.map-container {
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

#map-container {
    position: relative;
    z-index: 1;
}

/* Map section styles */
.hospital-location {
    padding: 60px 0;
    background-color: #f8f9fa;
}

.hospital-location .container {
    max-width: 80%;
    margin: 0 auto;
    padding: 0 20px;
}

.hospital-location h2,
.hospital-environment h2,
.news-header h2 {
    text-align: center;
    font-size: 32px;
    color: #333;
    margin-bottom: 30px;
    position: relative;
}

.hospital-location h2:after,
.hospital-environment h2:after,
.news-header h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #007bff;
    margin: 10px auto 0;
}

.location-content {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.location-info {
    flex: 1;
    min-width: 300px;
}

/* Hospital environment styles */
.hospital-environment {
    padding: 60px 0;
    background-color: #fff;
}

.hospital-environment .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.hospital-environment h2 {
    text-align: center;
    font-size: 32px;
    color: #333;
    margin-bottom: 30px;
    position: relative;
}

.hospital-environment h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #007bff;
    margin: 10px auto 0;
}

@media (max-width: 768px) {
    .location-info-overlay {
        max-width: calc(100% - 40px);
        left: 20px;
        right: 20px;
    }

    .news-item {
        flex-direction: column;
    }

    .news-item img {
        width: 100%;
        height: auto;
        margin-right: 0;
        margin-bottom: 15px;
    }

    .hospital-location .container,
    .hospital-environment .container {
        max-width: 100%;
        padding: 0 15px;
    }

    .header-main {
        height: auto;
        padding: 10px;
    }

    .header-top {
        flex-direction: column;
        align-items: center;
    }

    .header-skeleton-inner {
        flex-direction: column;
        align-items: center;
    }

    .header-logo-skeleton,
    .header-contact-skeleton {
        margin-bottom: 10px;
    }

    .menu-item-skeleton {
        width: 60px;
        margin: 0 5px;
    }

    .header-logo,
    .header-contact {
        margin-bottom: 10px;
    }

    .menu-link {
        padding: 0 10px;
    }
}

.info-card {
    background: transparent;
    padding: 25px;
    border-radius: 8px;
    box-shadow: none;
    margin-bottom: 25px;
}

.location-info-overlay .info-card {
    background: transparent;
    padding: 20px;
    box-shadow: none;
    margin-bottom: 0;
}

.info-card h3 {
    font-size: 22px;
    color: #333;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.route-info h3 {
    font-size: 22px;
    color: #333;
    margin: 25px 0 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.location-info-overlay .route-info h3 {
    margin-top: 15px;
    margin-bottom: 15px;
}

.info-item {
    margin-bottom: 15px;
    line-height: 1.6;
}

.info-item label {
    display: inline-block;
    width: 80px;
    font-weight: bold;
    color: #555;
}

.info-item span {
    color: #666;
}

.map-wrapper {
    flex: 2;
    min-width: 100%;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    position: relative;
}

.location-info-overlay {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 100;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    max-width: 400px;
}
 .el-header {
        background-color: #fff;
        color: #333;

        margin-bottom: 20px;
        height: auto;
      }

      .header-main {
        transition: opacity 0.3s ease;
      }

      .header-main {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 22px 20px;
        width: 60%;
        margin: 0 auto;
      }
      .header-logo,
      .header-contact {
        display: flex;
        align-items: center;
      }

      .header-top {
        display: flex;
        justify-content: space-between;
        width: 100%;
        margin-bottom: 20px;
      }

      .el-menu-demo {
        border-bottom: none !important;
        display: flex;
        justify-content: center;
        width: 100%;
      }

      /* Header skeleton styles */
      .header-skeleton {
        width: 100%;
        padding: 22px 20px;
        background-color: #fff;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      }

      .header-skeleton-inner {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px;
        align-items: center;
      }

      .header-logo-skeleton {
        width: 313px;
        height: 58px;
        border-radius: 6px;
      }

      .header-contact-skeleton {
        width: 207px;
        height: 45px;
        border-radius: 6px;
      }

      .menu-skeleton {
        display: flex;
        justify-content: center;
        padding: 15px 0;
      }

      .menu-item-skeleton {
        width: 100px;
        height: 24px;
        margin: 0 15px;
        border-radius: 4px;
      }