@charset "UTF-8";
.container{background-image:linear-gradient(to bottom right,#eff6ff,#fff,#eff6ff);letter-spacing:1px}
.container .no-data{color:#c9c9c9;font-size:1.2rem}
.ts-banner .swiper-item{width:100%;height:22rem;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#eef3f7}
.ts-banner .swiper-item img,.ts-banner .swiper-item video{width:100%;height:100%;object-fit:cover;display:block}
/* 真实图片加载完成后，按图片比例自适应高度 */
.ts-banner .swiper-item.is-loaded{height:auto;max-height:none}
.ts-banner .swiper-item.is-loaded img{height:auto;object-fit:contain}
.ts-wrapper{padding:2rem}

/* 信息 */
.ts-information .imt-top{justify-content:space-between;margin-bottom:1rem}
.ts-information .imt-top .imt-title{font-size:2.4rem;font-weight:700;color:#333}
.ts-information .imt-top .themeName{font-size:1.2rem;padding:.4rem 1rem;border-radius:.5rem;background-image: linear-gradient(to right, #0084e0 0%, #6ab0b3 100%);color:#fff}
.ts-information .subTitle{font-size:1.4rem;color:#666}
.ts-information .imt-btm{margin-top:1.5rem;gap:1rem 2rem;white-space:nowrap}
.ts-information .imt-btm .dec-item{display:flex;align-items:center;gap:1rem}
.ts-information .imt-btm .dec-item>i{font-size:2.4rem;color:#4aa5de}
.ts-information .imt-btm .dec-item .item-dec>p{color:#6b7280;font-size:1.2rem;margin-bottom:.5rem}
.ts-information .imt-btm .dec-item .item-dec>b{font-size:1.6rem;color:#333}
.ts-information .imt-intro{margin-top:1.5rem;color:#777;letter-spacing:1px}
.ts-information .imt-intro .intro-min{overflow: hidden;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;}
.ts-information .imt-intro .intro-max{-webkit-line-clamp: unset;}
.ts-information .imt-intro >p{line-height: 1.5;margin: .5rem auto 0;padding: .5rem 2rem;width: max-content;color: #999;font-size: 12px;}
.ts-information .imt-intro >p i{vertical-align: -1px;display: inline-block;}
.ts-information .imt-intro >p i.flip{transform: rotate(180deg);}
/* tab 切换 */
.ts-tabs{position:relative;position:sticky;top:0;left:0;width:100%;z-index:91}
.ts-tabs .t-tabs{background-color:#fff;border-radius:0 0 10px 10px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.ts-tabs .t-tabs .tab-item{flex:1;padding:1.5rem;text-align:center;font-weight:600;color:#4b5563;cursor:pointer}
.ts-tabs .t-tabs .tab-item i{margin-right:3px}
.ts-tabs .t-tabs .tab-active{color:#1a6dba;border-bottom:3px solid #1a6dba;background-color:#f0f8ff}
.ts-tabs-content{padding:3rem 2rem}
.ts-tabs-content .tab-cont{display:none;animation:fadeIn .5s ease}
.ts-tabs-content .tab-cont .card{display:block}
.ts-tabs-content .tab-cont-active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}
to{opacity:1;transform:translateY(0)}
}

/* 线路 */
.cont-route{gap:2rem}
.cont-route .route-item{padding:0;overflow:hidden;position:relative;border-radius:1rem;box-shadow:0 1px 10px rgba(0,0,0,.4);border:1px solid #fff}
.cont-route .route-item .route-img{height:20rem}
.cont-route .route-item .route-img img{width:100%;height:100%;object-fit:cover}
.cont-route .route-item .route-info{position:absolute;bottom:0;left:0;width:100%;height:100%;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,.2),transparent);color:#fff;justify-content:flex-end;gap:.5rem}
.cont-route .route-item .route-foot{display:flex;justify-content:space-between;align-items: center;}
.cont-route .route-item .route-foot .date{font-size: 1.2rem;color: #eee8e6;}
.cont-route .route-item .route-foot .price{width:max-content;border-radius:5px;display:inline-block;background-color:#ff6c00;padding:.2rem 1rem;border:1px solid #fff;font-size:1.2rem;white-space: nowrap;}
.cont-route .route-item .route-foot .price .num{font-size:1.6rem;margin:0 1px;font-weight:600}

/* 房型 */
.cont-room{display:flex;flex-direction:column;gap:2rem}
.cont-room .room-item{display:block;background-color:#fff;border:1px solid #e6e6e6;border-radius:1rem;overflow:hidden;color:#4b5563}
.cont-room .room-item:hover,.cont-room .room-item:focus,.cont-room .room-item:active{color:#4b5563;text-decoration:none}
.cont-room .room-item .room-img{height:18rem;overflow:hidden;background:#eef3f7}
.cont-room .room-item .room-img img{display:block;width:100%;height:100%;object-fit:cover}
.cont-room .room-item .room-info{padding:1.8rem 1.5rem}
.cont-room .room-item .room-info .room-name{font-size:1.6rem;color:#333;margin-bottom:2rem}
.cont-room .room-item .room-info .room-desc{display:grid;grid-template-columns:repeat(2,1fr);font-size:1.4rem;color:#6b7280;gap:1.2rem;white-space:nowrap}
.cont-room .room-item .room-info .room-desc p{display:flex;align-items:center;gap:0.5rem}
.cont-room .room-item .room-info .room-desc p>span{max-width: 100px; overflow: hidden; text-wrap: nowrap;text-overflow: ellipsis;display: inline-block; color:#333;font-weight:500;}

/* 设施 */
.cont-facility{gap:2rem}
.cont-facility .fl-item{border-radius:1rem;position:relative;border:1px solid #fff}
.cont-facility .fl-item .fl-img{height:18rem}
.cont-facility .fl-item .fl-img img{width:100%;height:100%;object-fit:cover}
.cont-facility .fl-item .fl-info{position:absolute;bottom:0;left:0;width:100%;height:50%;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,.4),transparent);align-items:flex-end;color:#fff}

/* 其他 */
.cont-other{gap:2rem}
.cont-other .other-item{border-radius:1.2rem;background-color:#fff;border:1px solid #e2e8f0;padding:2rem}
.cont-other .other-item .other-title{font-size:1.6rem;font-weight:700;color:#333;margin-bottom:2rem}
.cont-other .other-item .other-desc{font-size:1.4rem;color:#6b7280;line-height:1.6}

/* 底部按钮 */
.footButton{color:#555;background-color:#fff;position:fixed;bottom:0;left:0;right:0;box-shadow:0 0 1rem #ddd;gap:1rem;padding:1rem 1.5rem;z-index:109;max-width:640px;margin:0 auto;padding-bottom:calc(constant(safe-area-inset-bottom) + 2rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2rem)}
.footButton .ftb_left{min-width:40%;text-align:center;font-size: 12px;gap: 1.5rem;}
.footButton .ftb_left a{color: #666;}
.footButton .ftb_left a i{color: #0084e0;}
.footButton .ftb_right{flex:1;gap:.7rem}
.footButton .ftb_right .ftbtn{padding:1rem 0;flex:1;text-align:center;border-radius:5px;background:linear-gradient(135deg, #40a3ff 0%, #2d87c8 100%);color:#fff;cursor:pointer;font-size:1.5rem;font-weight: 600;}
.footButton .ftb_right .ftbtn>i{vertical-align:-1px;margin-right:5px;font-weight: 400;}
.footButton .ftb_right .goOrder{background:linear-gradient(-90deg,#f70 0,#ffa50a 100%)}
