@charset "utf-8";
/* CSS Document */

html, body {
  margin: 0;
  padding: 0;
  /* overflow-x: hidden;  */    /* 防止整頁被橫向捲動 */
  font-family: Arial, sans-serif;
}

#mobile{display: none;}

    .carousel {
      position: relative;
      width: 100%;
      max-width: 100%;
      overflow: hidden;
      height: auto;
      aspect-ratio: 16 / 4; /* 建議比例，如不支援可改用高度 */
      margin-top: 40px;
    }

    .slides {
      display: flex;
      width: 100%;
      height: 100%;
      transition: transform 0.5s ease;
    }

    .slide {
      flex: 0 0 100%;
      height: 100%;
    }

    .slide img {
      width: 100%;
      height: 100%;
      object-fit:cover; /*不要放大裁切，完整顯示圖片 */
      object-position: center;
      display: block;
    }


    .prev, .next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background-color: rgba(0,0,0,0.4);
      color: white;
      font-size: 1rem;
      border: none;
      padding: 10px;
      cursor: pointer;
      z-index: 10;
    }
    .prev { left: 10px; }
    .next { right: 10px; }


    .menu{display: flex; justify-content: center;height: auto; padding-top: 10px; position: sticky; top: 40px; z-index: 998; background-color: #fff; /* 防止透明或重疊 */box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* 可選：加入陰影更明顯 */ opacity: 0.95;}
    .choose{float: left; height: auto; margin: 4px; padding: 6px 12px;list-style-type:none;border-radius:30px;cursor: pointer;}
    .choose a{text-decoration:none; color: #ffffff; font-weight:500; font-size: 1.1rem;}
    .choose a:hover{color: #ffffff;}
    .choose:hover{transform: scale(1.05); opacity: 0.9;}

    .blue{background-color: rgba(0, 110, 255, 0.978);}
    .pink{background-color: rgba(255, 0, 149, 0.978);}
    .orange{background-color: rgb(255, 42, 42);}
    .green{background-color: rgb(0, 186, 22);}
    .yellow{background-color: rgb(255, 111, 0);}
    .purple{background-color: rgb(161, 19, 255);}
    .cyanblue{background-color: rgb(4, 166, 188);}
    .deepgreen{background-color: rgb(0, 181, 222);}
    .red{background-color: rgb(192, 6, 0);}
    .bluegreen{background-color: rgb(0, 181, 159);}

    .star , .list{width: 84%; max-width: 980px;}

    .section-title {
      text-align: center;
      font-size: 1.4rem;
	  font-weight: bold;
      margin: 10px 0 20px;
    }
	  .products {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 10px;
      padding: 0 20px 40px;
    }
    .card {
      border: 1px solid #ccc;
      border-radius: 10px;
      overflow: hidden;
      display: flex;
      flex-direction: column;
    }

    .card a{
      text-decoration: none;
      color: #3d3d3d;
    }

    .card a:hover{
      box-sizing: border-box;
      color: #3d3d3d;
      border: 3px solid orangered;
      border-radius: 5px;
    }

    .card img {
      width: 100%;
      height: 150px;
      object-fit: cover;
    }
    .card-content {
      padding: 10px;
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
	    line-height: 20px;
    }

    .card-content h3{
      font-weight: bold;
      font-size: 20px;
      text-align: center;
    }

    .highlight{
      background-color: #cc0000;
      color: #ffffff;
      font-size: 18px;
      font-weight: 500;
      line-height: 28px;
      width: 100%;
      text-align: center;
    }

    .highlight-s{
      background-color: #cc0000;
      color: #ffffff;
      font-size: 16px;
      font-weight: 500;
      line-height: 24px;
      width: 100%;
      text-align: center;
    }

    .card-content .cons{
      padding-top: 5px;
      font-size: 16px;
      line-height: 22px;
    }

    .price {
      color: red;
      font-weight: 600;
      margin: 5px 0;
      font-size: 22px;
      text-align: center;
      line-height: 28px;
      letter-spacing: -1px;
    }
    
    .price2 {
      color: red;
      font-weight: 600;
      margin: 5px 0;
      font-size: 18px;
      text-align: center;
      line-height: 20px;
      letter-spacing: -1px;
    }

    .image-container {
      position: relative;
      display: inline-block;
      width: 100%; /* 可依需求調整寬度 */
      max-width: 600px;
    }

    .image-container img {
      width: 100%;
      height: auto;
      display: block;
    }

    .text-overlay {
      position: absolute;
      bottom: 5px;  /* 調整文字位置 */
      left: 5px;
      background-color: rgba(0, 0, 0, 0.6); /* 黑色透明色塊 */
      color: white;
      padding: 3px 10px;
      font-size: 1.2rem;
      border-radius: 5px;
    }


    .text-overlay2 {
      position: absolute;
      bottom: 5px;  /* 調整文字位置 */
      left: 12px;
      background-color: rgba(0, 0, 0, 0.6); /* 黑色透明色塊 */
      color: white;
      padding: 10px 10px;
      font-size: 1.1rem;
      border-radius: 5px;
      text-align: center;
    }
  .card.sold-out {
    position: relative;
    pointer-events: none; /* 禁用所有點擊行為 */
    opacity: 0.9; /* 整張卡片變淡（可選） */
  }

  .sold-out-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 20;
    border-radius: 10px;
  }

  .sold-out-label {
    color: white;
    font-size: 32px;
    font-weight: bold;
    padding: 10px 20px;
    border: 3px solid white;
    border-radius: 10px;
  }

	.smtx{font-size: 14px; font-weight:500;color: black;}
  .smtx2{font-size: 16px; font-weight:500;color: black;}
  .smtx3{font-size: 14px; font-weight:500;color: rgb(255, 255, 255);}
  .smtx4{font-size: 12px; color: black;}
  .smtx5{font-size: 14px; color: rgb(250, 79, 21);}
  .order-btn {background-color: orangered; color: #ffffff; border-radius: 30px; font-size: 16px; font-weight:700; border: none; padding: 6px; width: 10rem; text-align: center;cursor: pointer;}
	.order-btn-list{background-color: orangered; color: #ffffff; border-radius: 10px; font-size: 12px; font-weight:400; border: none;text-align: center; cursor: pointer;}
  .order-btn:hover ,.order-btn-list:hover{background-color: #ae0000;}

  .flight{display: flex; width: 100%;  border-top:1px solid #c2c2c2; padding-top: 8px;}
  .flight a{flex-grow: 1;width: 23%; border:1px solid #3d3d3d;text-align: center;line-height: 16px;margin: 2px; padding: 2px;text-decoration:none;}
  .flight a:hover{background-color: rgb(255, 248, 227); border:1px solid #ff6600;}
  .price_s{display: block; color: #cc0000; padding: 2px;}

  .godate{display: flex; width: 100%;  border-top:1px solid #c2c2c2; padding: 8px;}
  .godate a{flex-grow: 1; width: 30%; border:1px solid #2499ff; border-radius:5px; text-align: center;line-height: 1.1rem;margin: 3px; padding:8px;text-decoration:none; font-size: 0.9rem; }
  .godate a:hover{box-sizing: border-box; border:1px solid #f99109;color: #f95d09;}
  .day{text-align: left;font-weight: 800;font-size: 12px;}

  .pro_more{font-size: 0.9rem; font-weight: 500; margin-left: 20px; padding: 5px; color: #2499ff; border: 1px solid #2499ff;}

  .list-content th{font-size: 16px; color: #ffffff; font-weight: 500;padding-left: 15px;}
	.list-content td{font-size: 15px;}
	.list-content tr{border-bottom:1px dashed #009FCC;}

  .adb{width: 80%;}
  .adb img{width: 100%;}

  .adb-txt{width:74%; display: flex;flex-direction: row;justify-content: center;max-width: 980px;background-color: #2499ff;}
  .adb-left{width: 30%; text-align: right;}
  .adb-left img{width: 100%;}
  .adb-right{width: 70%; text-align: left; font-size: 15px; color: #ffffff;padding-left: 10px;font-weight: 500;}

  .links {display: flex; flex-direction: row; justify-content: center; width: 60%; max-width: 980px; text-align: center;margin-bottom: 30px;}
  .more a{background-color: #ff7003; font-size: 1rem;padding: 10px; color: #ffffff; border-radius: 8px;text-decoration: none;margin: 0 10px;white-space:nowrap;}
  .more a:hover {background-color: rgb(0, 158, 84); color: #ffffff; }

  .intro{width: 80%; text-align: center; }
  .pointlist{margin-bottom: 20px;}
  .point{display: flex;flex-direction: row; margin-bottom: 10px;}
  .ppic{width: 30%;}
  .ppic-m{width: 30%;}
  .point img{width:100%;}
  .pname{font-size: 3rem; opacity: 0.8; color: #004b8d;}
  .space{width: 5%;}
  .ptxt{width: 50%;text-align: left;}

.edm{display: block; text-align: center; margin-top: 40px; width: 80%;}
.edm img{width: 100%; margin-bottom: 20px;}

.intropic{width: 80%;}
.intropic img{width: 100%;}

.footer {clear: both;}


/* 回頁首 */
a#jump {display: none \9;}
a#jump div {width: 50px; height: 50px; background-color: #cc0000; color: #ffffff; font-size: 16px; line-height: 16px; font-weight: bold; font-family: Arial, Helvetica, sans-serif; text-align: center; text-decoration: none; opacity: 0.7; filter: alpha(opacity=70); cursor: pointer; position: fixed; right: 15px; bottom: 15px; border-radius: 50%; z-index: 6; _display: none; transition: background-color 0.2s linear, opacity 0.2s linear, filter 0.2s linear, transform 0.1s linear;}
a#jump:hover div {background-color: #ff00ff; opacity: 1; filter: alpha(opacity=100); transform: scale(1.25,1.25); box-shadow: 0 2px 6px rgba(0,0,0,0.7);}
a#jump b {display: block; font-size: 24px; line-height: 24px; font-family: Verdana, Geneva, sans-serif; position: relative; top: 5px;}


@media screen and (max-width: 980px) {

		.star , .list, .intropic{width: 94%;}
}
	
@media screen and (max-width: 768px) {

  .carousel {
    aspect-ratio: 16 / 7; /* 建議比例，如不支援可改用高度 */
    margin-top: 40px;
  }

  .prev, .next {
    font-size: 1rem;
    padding: 5px;
  }

  .menu{gap: 6px;}
	.choose{margin:4px 10px; padding: 4px 8px;}
  .choose a{text-decoration:none; color: #ffffff; font-weight:500; font-size:0.9rem;}
	.choose:hover{transform: scale(1.1); opacity: 0.9;}


  .more a{font-size: 0.8rem;padding: 10px; color: #ffffff; border-radius: 8px;text-decoration: none;margin: 0 10px;white-space:nowrap;}
  
  .adb{width: 98%;}
  .adb-txt{width:90%;}
  .adb-left{display: none;}
  .adb-right{width: 100%; font-size: 14px; padding: 10px;font-weight: 500;}

	.star , .list, .intropic{width: 98%;}
	.list-content th{font-size: 14px; color: #ffffff; font-weight: 500; padding-left: 10px;}
	.list-content td{font-size: 13px;}
	.order-btn-list{border-radius: 5px; White-space: nowrap; padding: 3px; cursor: pointer;}
}


@media screen and (max-width: 520px) {  

	.menu{margin: 0;}
  .choose{margin:4px 8px; padding: 2px 8px;}
  .choose a{font-weight:500; font-size:0.9rem;}

  .section-title {
      font-size: 1rem;
    }

  .star , .list, .intropic{width: 100%;}
	.products-wrapper {padding: 0 20px;}
  /* .products {display: flex; min-width: unset; overflow-x: auto; flex-wrap: nowrap; gap: 10px;} */
  /* .card {width: 250px;flex-shrink: 0;} */

  .godate a{font-size: 0.8rem; }

  .highlight-s{font-size: 14px;}

  #pro_more{display: none;}

  .point{display: flex; flex-direction: column; margin-bottom: 10px;}
  .ppic,.space{display: none;}
  .ppic-m{width: 96%;}
  .ptxt{width: 94%;}
  .pname{font-size: 2rem;}

}

@media screen and (max-width: 424px) {

	.choose{margin:2px; padding: 5px 6px; font-weight:400; font-size: 0.5rem;}
  
}

