.souvenir_index{width: 100%;z-index: 3; margin-top:30px;}

.souvenir_index_bg1{
  height: 888px;
  background: url(../img/souvenir/bg1.jpg) no-repeat top;
}

.souvenir_index_bg2{
  height: 1362px;
  background: url(../img/souvenir/bg2.jpg) no-repeat top;
}

.souvenir_index_bg3{
  height: 1089px;
  background: url(../img/souvenir/bg3.jpg) no-repeat top;
}

.souvenir_index_bg4{
  height: 962px;
  background: url(../img/souvenir/bg4.jpg) no-repeat top;
}

.souvenir_index_has_content{
  height:auto !important;
  background:none !important;
  padding-top:24px;
}

.souvenir_hero_box{
  margin:0 auto;
}

.souvenir_hero_box img{
  max-width:100%;
  height:auto;
}

.souvenir_hero_title{
  text-align:center;
  color:#1661b7;
  font-size:28px;
  font-weight:700;
  line-height:1.25;
  margin-bottom:4px;
}

.souvenir_hero_subtitle{
  text-align:center;
  font-size:22px;
  color:#333;
  line-height:1.35;
}

.souvenir_apps_hero{
  position:relative;
  padding:6px 0 10px;
}

.souvenir_apps_hero:before,
.souvenir_apps_hero:after{
  content:"";
  position:absolute;
  top:78px;
  width:150px;
  height:230px;
  background:linear-gradient(180deg, rgba(63,153,255,.35), rgba(24,109,224,.75));
  opacity:.9;
  z-index:0;
}

.souvenir_apps_hero:before{
  left:-120px;
  border-radius:0 120px 120px 0;
  transform:rotate(10deg);
}

.souvenir_apps_hero:after{
  right:-120px;
  border-radius:120px 0 0 120px;
  transform:rotate(-12deg);
}

.souvenir_apps_card{
  position:relative;
  z-index:1;
  margin-top:18px;
  background:#f1f0fb;
  border-radius:18px;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
  padding:18px 22px;
}

.souvenir_apps_grid{
  display:grid;
  grid-template-columns:140px 1fr 140px 1fr;
  gap:18px 18px;
  align-items:stretch;
}

.souvenir_apps_media{
  width:126px;
  height:126px;
  border-radius:50%;
  overflow:hidden;
  justify-self:center;
  box-shadow:0 6px 16px rgba(0,0,0,.12);
  background:#fff;
}

.souvenir_apps_media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.souvenir_apps_text{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:172px;
  font-size:13px;
  line-height:1.7;
  color:#333;
}

.souvenir_apps_text strong{
  display:block;
  min-height:36px;
  color:#1661b7;
  margin-bottom:4px;
}

.souvenir_apps_text p{
  margin:0 0 8px;
}

.souvenir_apps_text p:last-child{
  margin-bottom:0;
}

.souvenir_section_text{
  text-align:center;
  margin-bottom:10px;
}

.souvenir_section_text h3{
  font-size:22px;
  font-weight:700;
  color:#333;
  margin:0 0 10px;
}

.souvenir_section_text .text-muted{
  color:#666;
  max-width:880px;
  margin:0 auto 8px;
  line-height:1.7;
}

.souvenir_info_block{
  padding:10px 10px 0;
  color:#333;
}

.souvenir_info_item{
  margin-bottom:18px;
  line-height:1.75;
}

.souvenir_info_item strong{
  display:block;
  font-size:20px;
  margin-bottom:6px;
}

.souvenir_process_title{
  text-align:center;
  font-size:26px;
  font-weight:700;
  color:#333;
  margin:28px 0 20px;
}

.souvenir_process_wrap{
  display:grid;
  grid-template-columns:1fr 320px 1fr;
  grid-template-rows:1fr 1fr;
  gap:14px;
  align-items:stretch;
}

.souvenir_process_side{
  display:contents;
}

.souvenir_process_card{
  position:relative;
  min-height:152px;
  background:linear-gradient(135deg, #0d63e6, #0c50c6);
  color:#fff;
  padding:24px 18px 18px;
  overflow:hidden;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.souvenir_process_wrap > .souvenir_process_side:first-child > .souvenir_process_card:first-child{
  grid-column:1;
  grid-row:1;
}

.souvenir_process_wrap > .souvenir_process_side:first-child > .souvenir_process_card:last-child{
  grid-column:1;
  grid-row:2;
}

.souvenir_process_wrap > .souvenir_process_side:last-child > .souvenir_process_card:first-child{
  grid-column:3;
  grid-row:1;
}

.souvenir_process_wrap > .souvenir_process_side:last-child > .souvenir_process_card:last-child{
  grid-column:3;
  grid-row:2;
}

.souvenir_process_card em{
  position:absolute;
  top:8px;
  right:14px;
  font-size:38px;
  font-style:normal;
  font-weight:700;
  color:rgba(255,255,255,.18);
  line-height:1;
}

.souvenir_process_badge{
  display:inline-block;
  align-self:flex-start;
  background:#fff;
  color:#3d6eb7;
  border-radius:999px;
  padding:6px 18px;
  font-size:13px;
  font-weight:700;
  margin-bottom:18px;
}

.souvenir_process_card p{
  margin:0;
  line-height:1.85;
}

.souvenir_process_center{
  width:320px;
  height:320px;
  border-radius:50%;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  justify-self:center;
  grid-column:2;
  grid-row:1 / span 2;
  align-self:center;
}

.souvenir_process_center img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.souvenir_culture_block{
  display:flex;
  align-items:flex-start;
  gap:28px;
  padding:8px 0 18px;
}

.souvenir_culture_media{
  width:430px;
  flex-shrink:0;
}

.souvenir_culture_media img{
  width:100%;
  display:block;
}

.souvenir_culture_text{
  flex:1;
  color:#444;
}

.souvenir_culture_item{
  margin-bottom:56px;
  line-height:1.8;
}

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

.souvenir_culture_item strong{
  display:block;
  font-size:22px;
  margin-bottom:8px;
  color:#333;
}

.souvenir_section_title_only{
  text-align:center;
  margin-top:18px;
}

.souvenir_section_title_only h3{
  font-size:28px;
  color:#1661b7;
  font-weight:700;
  margin:0 0 12px;
}

.souvenir_section_title_only p{
  max-width:880px;
  margin:0 auto;
  color:#666;
  line-height:1.8;
}

.souvenir_route_block{
  display:flex;
  align-items:center;
  gap:36px;
  padding:8px 0 12px;
}

.souvenir_route_text{
  flex:1;
  color:#444;
  line-height:1.85;
}

.souvenir_route_text h3{
  font-size:30px;
  color:#1661b7;
  font-weight:700;
  margin:0 0 18px;
}

.souvenir_route_text ul{
  padding-left:18px;
  margin:10px 0 16px;
}

.souvenir_route_media{
  width:520px;
  flex-shrink:0;
}

.souvenir_route_media img{
  width:100%;
  display:block;
}

/* Extend the two decorative images to the page edges while keeping text
   aligned with the site's Bootstrap/Metronic content widths. */
@media (min-width: 993px){
  .souvenir_hero_container_3,
  .souvenir_hero_container_4{
    --souvenir-content-width:940px;
    width:100%;
    padding-left:0;
    padding-right:0;
  }

  .souvenir_hero_container_3 .souvenir_culture_block{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 430px 28px calc(var(--souvenir-content-width) - 458px) minmax(0, 1fr);
    gap:0;
  }

  .souvenir_hero_container_3 .souvenir_culture_media{
    grid-column:1 / 3;
    width:100%;
  }

  .souvenir_hero_container_3 .souvenir_culture_text{
    grid-column:4;
    min-width:0;
  }

  .souvenir_hero_container_4 .souvenir_route_block{
    display:grid;
    grid-template-columns:minmax(0, 1fr) calc(var(--souvenir-content-width) - 556px) 36px 520px minmax(0, 1fr);
    gap:0;
  }

  .souvenir_hero_container_4 .souvenir_route_text{
    grid-column:2;
    min-width:0;
  }

  .souvenir_hero_container_4 .souvenir_route_media{
    grid-column:4 / 6;
    width:100%;
  }
}

@media (min-width: 1200px){
  .souvenir_hero_container_3,
  .souvenir_hero_container_4{
    --souvenir-content-width:1140px;
  }
}

@media (min-width: 1260px){
  .souvenir_hero_container_3,
  .souvenir_hero_container_4{
    --souvenir-content-width:min(1240px, calc(100% - 30px));
  }
}


/* Souvenir list */
.souvenir_list{margin-left:-7.5px;margin-right:-7.5px;}
.souvenir_list>[class^="col-"]{padding-left:7.5px;padding-right:7.5px;}

.souvenir_card{background:#fff;border:none;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.06);padding-bottom:54px;position:relative;}
/* 统一图片展示尺寸，保持比例不变形（裁切以填满容器） */
.souvenir_image{display:block;width:100%;overflow:hidden;background:#fff;}
.souvenir_image{aspect-ratio:4/3;}
.souvenir_image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
/* 兼容不支持 aspect-ratio 的旧浏览器 */
@supports not (aspect-ratio: 4/3){
  .souvenir_image{height:180px;}
}
.souvenir_title{font-size:18px;text-align:center;margin-top:12px;min-height:48px;padding:0 10px;}
.souvenir_price{display:flex;justify-content:flex-end;align-items:baseline;gap:8px;margin-top:6px;padding-right:12px;}
.souvenir_price_from{color:#999;}
.souvenir_price_num{color:#ff3b30;font-weight:700;}
.souvenir_btn{position:absolute;right:12px;bottom:12px;border-radius:20px;padding:6px 18px;display:inline-block;background-color:#ff6611;border-color:#ff6611;color:#fff;}
.souvenir_btn:hover{background-color:#eb6100;border-color:#eb6100;color:#fff;}

.souvenir_badge{position:absolute;left:50%;top:0;width:32px;height:32px;border-radius:50%;background:#666;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;z-index:2;transform:translate(-50%,-50%);} 
.souvenir_card:nth-child(1) .souvenir_badge{background:#666;}

.souvenir_index_bg4 a.col-md-12.mt20::after{content:"";display:table;clear:both;}
.souvenir_related_goods a.col-md-12.mt20::after{content:"";display:table;clear:both;}
.china_li_img_label{width: 54px; height: 52px; background: url(../img/travel/china_li_img_label.png) no-repeat; position: absolute; top: -3px; left: 10px; z-index: 5;}
.china_li_img_box{position:relative;overflow:hidden;background:#fff;height:220px;}
.china_li_img_container{position:relative;width:100%;height:100%;overflow:hidden;}
.china_li_img_container > img.img-responsive{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:220px;max-width:none;max-height:none;object-fit:cover !important;object-position:center;display:block;}

@media (max-width: 767px){
  .china_li_img_box{height:180px;}
}
@media (max-width: 480px){
  .china_li_img_box{height:160px;}
}
.des_detail_li_title_box{align-items: flex-end;}
.des_detail_symbol{width: 42px; height: 50px; background: url(../img/des_detail/des_detail_symbol.jpg) no-repeat center center; background-size: cover;}
.des_detail_symbol_num{font-size: 1.25rem; color: #fff; text-align: center; line-height: 42px;}
.des_detail_li_title{font-size: 1.25rem; line-height: 1.75rem; margin-left: 10px;}
.travel_li_des{color: #9c1c1c;}
.travel_li_symbol{width: 7px; height: 7px; background-color: #202020; margin-top: 10px;}
.travel_li_simple_txt{
    width: calc(100% - 7px - 15px);
    line-height: 1.5;
    margin-left:10px;
}
.des_detail_li_des_box{align-items: flex-start; align-content: flex-start; margin-top: 10px;}
.price_label{padding: 10px; margin-top: 10px; color:#e60012;}
.price_label b{font-size: 1.25rem;}
.china_li_price_box{justify-content: flex-end; background-color: #ededed; margin-top: 10px;}

.well img {max-width: 100%; height: auto;}




/* Five columns on large screens */
@media (min-width: 1200px){
  .col-lg-1-5{float:left;width:20%;}
}
@media (max-width: 1199px){
  .col-lg-1-5{width:25%;}
}
@media (max-width: 992px){
  .col-lg-1-5{width:33.3333%;}
  .souvenir_apps_grid{
    grid-template-columns:120px 1fr;
  }
  .souvenir_apps_text{
    min-height:auto;
  }
  .souvenir_process_wrap,
  .souvenir_culture_block,
  .souvenir_route_block{
    display:block;
  }
  .souvenir_process_center,
  .souvenir_culture_media,
  .souvenir_route_media{
    width:100%;
    max-width:420px;
    margin:0 auto 18px;
  }
  .souvenir_process_side{
    margin-bottom:14px;
  }
}
@media (max-width: 768px){
  .col-lg-1-5{width:50%;}
  .souvenir_apps_grid{
    grid-template-columns:1fr;
  }
  .souvenir_apps_media{
    margin-top:4px;
  }
  .souvenir_apps_hero:before,
  .souvenir_apps_hero:after{
    display:none;
  }
  .souvenir_apps_card{
    padding:16px 14px;
  }
  .souvenir_hero_title{
    font-size:24px;
  }
  .souvenir_hero_subtitle{
    font-size:18px;
  }
  .souvenir_process_title,
  .souvenir_route_text h3,
  .souvenir_section_title_only h3{
    font-size:24px;
  }
  .souvenir_info_item strong,
  .souvenir_culture_item strong{
    font-size:18px;
  }
}
@media (max-width: 480px){
  .col-lg-1-5{width:100%;}
  .souvenir_process_card{
    min-height:auto;
  }
  .souvenir_process_center{
    height:auto;
    aspect-ratio:1/1;
  }
}
