@charset "utf-8";
/* CSS Document */


@font-face {
    font-family: 'Chetta Vissto';
    src: url('../fonts/chettavissto.ttf') format('woff');
    font-weight: 400;
    font-style: normal;
}


.logo {
    color: #ffffff!important;
    font-family: Microsoft JhengHei;
    font-size: 1.7rem;
    font-weight: 900;
}

.ilogo {
	width: 110px;
	height: auto;
	clear: both;
}
.mlogo {
	width: 40%;
	clear: both;
	margin: 0 auto;
}
.mwlogo {
	width: 100%;
	clear: both;
	margin: 25 auto;
}
.container-fluid{
	margin: 0;
	padding: 0;
}

img{
	width: 100%;
}
/* body{
    font-family: BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Microsoft JhengHei", 微軟正黑體, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}	 */
body, h1, h2, h3, h4, h5, h6{
	line-height: 1.9;
}
h1, h2, h3, h4, h6{
	color: #14193c;
}
p{
	font-size: 1em;
	font-weight: 500
}
dl, ol, ol ol, ol ul, ul, ul ol, ul ul {
    margin-left: 0;
    padding-left: 0;
}
ul {
	margin-left: 30px; 
	padding-left: 0;
}
ul li {
    list-style: none;
	font-size: .9em;
}
.nav-tit {
	color: #fff;
	font-size: 1.4em;
	padding: .5rem 1rem;
	font-weight: 600!important
}
a {
	text-decoration: none;
}
table { 
	border:1px solid #666; 
	text-align:center;
	border-collapse:collapse;
	font-size: .9em;
} 
th { 
	background-color: #eee;
	color:#000;
} 
th, td { 
	border:1px solid #666;
	padding:15px;
}
mark {
	color:#d82a43;
	background-color: transparent;
}
.nav-link {
	font-size: 1rem;
}
.txt-red {
	color:#f8b500!important;
}
.pb-15 {
    padding-bottom: 15px;
}
.pt-15 {
    padding-top: 15px;
}
.mt-30 {
	margin-top: 30px;
}
.navbar-dark .navbar-nav .nav-link {
    color: rgba(255,255,255,1);
    font-size: 1.1rem;
    font-weight: 600;
}
a.nav-link:hover {
	color: #1979dc;
}
.caption {
	position: absolute;
    color: #000;
    top: 50%;
    right: 25%;
    transform: translateX(50%) translateY(-50%);
	background-color: rgba(255, 255, 255, 0.7);
	padding: 20px 40px;
	font-family: 'cwTeXFangSong', sans-serif;
}
.carousel-caption {
    bottom: 2rem;
}
.tit-li {
    font-size: 1rem;
    margin-left: -16px;
}

.style-li::before {
    content: "\25AA";
    color: #626262;
    font-size: 1.1rem;
    padding-right: 10px;
    margin-left: -16px;
}
.navbar-dark .navbar-toggler{
	border-color: #fff;
}
.navbar-dark .navbar-toggler-icon {
    background-image: url(../images/bars-solid.svg);
}
.bg-nav {
	/* background: rgba(0, 0, 0, 0.8); */
	background: #000;
	padding: 0;
    position: sticky;
    top: 0;
    z-index: 1000;
}

/* .swiper-button-next, .swiper-button-prev {
	color: #fff !important;
	background: -webkit-linear-gradient(bottom, #f8e276 5%, #fec10e 90%);
	background: -o-linear-gradient(top, #faebad 10%, #ffcc66 80%);
	background: -moz-linear-gradient(top, #faebad 10%, #ffcc66 80%);
	background: linear-gradient(top, #faebad 10%, #ffcc66 80%);
	font-family: 'cwTeXFangSong', sans-serif;
	padding: 6px 0;
	border-top: solid 5px #f7e886;
} */
.topic-section{
	padding: 30px 0 30px 0;
}

.topic-section .row{
	margin-right: 0;
	margin-left: 0;
}

.swiper {
    max-width: 1100px;
}

.carousel-swiper, .button-swiper, .mobile-product-card-swiper, .location-card-swiper {
	width: 100%;
	overflow: hidden;
	padding-right: 0;
	padding-left: 0;
}

/* .mobile-product-card-swiper .swiper-slide {
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
} */

.ai-flex {
	display: flex;
	align-items: center;
}
.ci-h {
	height: 70vh;
	background-repeat: no-repeat;
	background-position: center;
}
.ci-h2 {
	height: 60vh;
	background-repeat: no-repeat;
	background-position: center;
}
.ci-bg1, .ci-bg2, .ci-bg3, .ci-bg4 {
	background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; 
}
.ci-bg1 {
	background: url("../images/header_bg.jpg") center center / 100%;
}
.ci-bg2 {
	background: url("../images/yangtze_river_cruise_BN_1280x700_1.jpg") center center / cover;
	/* background: url("../images/yangtze_river_cruise_BN_1280x700-3.jpg") center center / cover; */
    background-repeat: no-repeat;
}

.ci-bg3 {
	/* background: url("../images/Main-Bohol.jpg") center center / 100%; */
	/* background: url("../images/island_2nd_KV_W.png") center center / 100%; */
	background: url("../images/island_2nd_KV_W.jpg") center center / 100%;
}
.ci-bg4 {
	background: url("../images/Main-Phuket.jpg") center center / 100%;
}
.ci-bg5 {
	background: url("../images/Main-Cebu.jpg") center center / 100%;
}

.fz-095{
	font-size: .95rem;
}
.text-grey{
	color: #626262;
}
.text-blue{
	color: #1BA7B1;
}
.carousel-swiper, .upper-button-swiper, .mobile-product-card-swiper, .location-card-swiper{
	position: relative;
}

.carousel-swiper .swiper-wrapper, .carousel-swiper .swiper-slide, .button-swiper .swiper-wrapper, .button-swiper .swiper-slide , .upper-button-swiper .swiper-wrapper, .upper-button-swiper .swiper-slide, .mobile-product-card-swiper .swiper-wrapper, .mobile-product-card-swiper .swiper-slide,.location-card-swiper .swiper-wrapper, .location-card-swiper .swiper-slide {
      height: fit-content;
}

.carousel-swiper .swiper-button-next, .carousel-swiper .swiper-button-prev, .button-swiper .swiper-button-next, .button-swiper .swiper-button-prev, .upper-button-swiper .swiper-button-next, .upper-button-swiper .swiper-button-prev, .mobile-product-card-swiper .swiper-button-next, .mobile-product-card-swiper .swiper-button-prev, .location-card-swiper .swiper-button-next, .location-card-swiper .swiper-button-prev {
	color: #fff !important;
	/* background-color: #E0D8C6; */
	font-family: 'cwTeXFangSong', sans-serif;
	padding: 25px;
	border-top: none;
	border-radius: 50%;
}
.carousel-swiper .swiper-button-next:after, .carousel-swiper .swiper-button-prev:after, .button-swiper .swiper-button-next:after, .button-swiper .swiper-button-prev:after, .upper-button-swiper .swiper-button-next:after, .upper-button-swiper .swiper-button-prev:after, .location-card-swiper .swiper-button-next:after, .location-card-swiper .swiper-button-prev:after {
    content: '';
	font-size: 1.5rem;
}

.button-swiper .nav-link, .button-section .nav-link {
	color: #835812;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	padding: 0;
}

.upper-button-section-position {
	margin-top: 60vh;
} 
.upper-button-swiper-position {
	margin-top: 45vh;
} 

.upper-button-swiper .nav-link {
	color: #fff;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	/* padding: 0; */
    padding: 0 5px;
    border-radius: 50px;
    border: 1px solid #fff;
    margin: 0 5px;
}

/* 修改swiper箭頭內容 用圖片 */
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
	content: 'prev';
}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: 'next';
}

.button-section .nav-link:hover {
	color: #076658 !important;
}
.upper-button-section .nav-link:hover {
	color: #82F1CC;
}

.button-section .nav-link {
	padding: 0 20px;
	text-shadow: 0 3px 6px rgb(103 35 217);
}
.upper-button-section .nav-link {
	padding: 0 26px;
	text-shadow: 0 3px 6px rgb(103 35 217);
    color: #fff;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	padding: 0 26px;
    border-radius: 50px;
    border: 1px solid #fff;
    margin: 0 5px;
}

/* swiper btn */

.upper-button-swiper .swiper-button-next,
.button-swiper .swiper-button-next, .mobile-product-card-swiper .swiper-button-next, .location-card-swiper .swiper-button-next {
    background-image: url('../images/arrow-right.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.upper-button-swiper .swiper-button-next::after,
.button-swiper .swiper-button-next::after, .mobile-product-card-swiper .swiper-button-next::after, .location-card-swiper .swiper-button-next::after {
    content: '';
}

.upper-button-swiper .swiper-button-prev,
.button-swiper .swiper-button-prev, .mobile-product-card-swiper .swiper-button-prev, .location-card-swiper .swiper-button-prev {
    background-image: url('../images/arrow-left.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.upper-button-swiper .swiper-button-prev::after,
.button-swiper .swiper-button-prev::after, .mobile-product-card-swiper .swiper-button-prev::after, .location-card-swiper .swiper-button-prev::after {
    content: '';
}
/* swiper btn */

.w-fit-content {
	width: fit-content;
}
.package-btn{
	position: relative;
} 
span.nav-label{
	position: absolute;
    background-color: #C99643;
    color: #fff;
    height: 20px;
    font-size: 12px;
    padding: 0 4px;
    margin: 4px 0 0 4px;
    right: -10px;
    top: -12px;
    font-weight: 500;
}
/* #easychat-floating-button{
	display: none !important;
} */

.pruple-light .intro-text, .text-content p{
	font-size: 1.2rem;
	color: #3E3A93;
    font-weight: 700;

}
@media screen and (max-width: 768px){
    .pruple-light .intro-text, .text-content p{
        font-size: 0.9rem}
}

@media screen and (max-width:1024px){
	.button-swiper .nav-link, .button-section .nav-link, .upper-button-section .nav-link {
		font-size: 1.5rem;
	}
	.swiper {
		max-width: 850px;
	}
}
@media screen and (max-width:992px){
	.button-swiper .nav-link, .button-section .nav-link, .upper-button-section .nav-link {
		font-size: 1.1rem;
	}
	.swiper {
		max-width: 760px;
	}
}
@media screen and (max-width:768px){
	.button-swiper .nav-link, .button-section .nav-link, .upper-button-swiper .nav-link {
		font-size: 1rem;
        text-shadow: 0 3px 6px rgb(103 35 217);
	}
	.swiper {
		max-width: 600px;
	}
}
.itinerary-intro h2{
	text-align: center;
	color: #C99643;
	font-weight: bold;
	font-size: 2.5rem;
	display: flex;
    justify-content: center;
    align-items: center;
}
.itinerary-intro h2::before, .itinerary-intro h2::after {
	content: "───";
}

.itinerary-intro-title {
	text-align: center;
}
.itinerary-intro-title img {
	/* max-width: 600px; */
	/* width: 400px; */
	width: 100%;
}
.itinerary-intro-title p {
	color: #626262;
}

.bottom-double {
	display: inline-block;
	color: #C99643;
    border-bottom: 1px double #626262;
	font-weight: normal;
    font-size: 3rem;
	line-height: 1.5;
}


@media screen and (min-width:768px){
	.itinerary-intro-card .left{
		padding-left: 0;
	}
	.itinerary-intro-card .right{
		padding-right: 0;
	}
}
@media screen and (max-width:767px){
	.itinerary-intro-card .left{
		padding-left: 0;
		padding-right: 0;
	}
	.itinerary-intro-card .right{
		padding-left: 0;
		padding-right: 0;
	}
	.bottom-double {
		font-size: 2.4rem;
	}

	/* 河輪 */
	#recommend-section .row{
		margin-right: 0.5rem;
		margin-left: 0.5rem;
	}
}


.cols-2 { grid-template-columns: repeat(2, 1fr); }

@media (min-width: 576px) {
  .cols-sm-4 { grid-template-columns: repeat(4, 1fr); }
  
}
@media (max-width: 576px) {
  .navbar .container{	
    padding-right: var(--bs-gutter-x, .75rem);
    padding-left: var(--bs-gutter-x, .75rem);
  }

  .container-no-padding, .row, .col-12{
	padding-right: 0;
	padding-left: 0;
	margin-left: 0;
    margin-right: 0;
  }
  .product-card-box{
	padding-right: 0;
	padding-left: 0;
  }
  
}

.ci-img {
	padding-top: 9rem;
	text-align: center;
}
.ci-img img {
	max-width: 525px;
	width: 100%;
}
.ci-txt {
	text-align: center;
	text-shadow: 0px 0px 10px #000;
}
.ci-txt h5 {
    font-size: 3rem;
    font-weight: 700;
}
.ci-txt h6 {
	font-size: 1.6rem;
	font-weight: 300;
	color: #000!important;
}
.ci-txt p {
	font-size: 1.8rem;
	font-weight: 200;
	margin-bottom: 0;
}
.on-txt h5 {
	font-size: 2rem;
	font-weight: 700;
}
.on-txt p {
	font-size: 1.2rem;
	font-weight: 200;
	margin: 0;
}
.text-brightblue{
	color: #1979dc;
}
.text-dark{
	color: #212529;
}
.bg-light {
    background-color: #F7F5F0 !important;
}
.bg-lightblue {
    background-color: #F0FFFD !important;
}
.bg-lightgray {
    background-color: #f7f7f7 !important;
}
.indlink {
	height: 16em;
	background-repeat: no-repeat;
	background-position: center center;	
	border: none;
	border-radius: 0;
	margin-top: 70px;
	color: #000;
	text-decoration: none;
	background-size: 100%;
}
.indtit {
	width: 25%;
	margin: 5em auto;
	background-color: rgba(255,255,255,0.9);
	text-align: center;
	justify-content: center;
	display: flex;
	align-items: center;
}
.il-bg1 {
	background-image: url("../images/indlink-01.jpg");
}
.il-bg2 {
	background-image: url("../images/indlink-02.jpg");
}
.il-bg3 {
	background-image: url("../images/indlink-03.jpg");
}
.indp {
	text-align: center;
}
.about-box{
	margin: 0 50px;
}
.about-box p {
	line-height: 1.5rem;
}
.about-icon {
    font-size: 2.5rem;
    margin: 0px auto;
    color: #d82a43;
    width: 2.5rem;
}
.itinerary-intro-card h5 {
	text-align: center;
	font-size: 1.7rem;
}
.itinerary-intro-card .subheading {
	text-align: center;
	margin-top: 1.1rem;
	margin-bottom: 0;
	color: #869A12;
}
.itinerary-intro-card li.style-li{
	font-size: 1.2rem;
}
.model {
    padding: 20px;
    background: #fff3f3;
    border: 0.3px #d82a43 solid;
    margin-bottom: 30px;
	color: #d82a43;
	font-weight: 700;
	text-align: center;
}
.ps {
	font-size: .8rem;
}
.med-a {
	border-radius: 0;
	border:none;
	box-shadow:0 0 20px 1px #cccccc;
}
.med-a img {
	border-radius: 0;
}
.med-a h5{
	font-weight: 700!important;
	margin: 0;
}
.med-a h6{
    font-size: 1em;
}
.med-a p {
	line-height: 1.8em;
    font-size: 0.9em;
}
.med-a a{
	color: #d82a43;
    border: 1px solid #d82a43;
	padding: .4em 1.8em;
	background: none;
	border-radius: 20px;
	float: none;
	margin: 0 auto;
	display: block;
	width: 50%;
}
.med-a a:hover{
	background-color: #d82a43;
	color: #fff;
    border: 1px solid #d82a43;
}
.sa-bg {
	height: 40vh;
	background-image: url("../images/sale-bg-01.jpg");
	background-repeat: no-repeat;	
	background-size: cover;
	background-position: center center;	
	display: flex;
    justify-content: center;
    align-items: center;
}
.mc-bg {
	height: 40vh;
	background-image: url("../images/mice-bg-01.jpg");
	background-repeat: no-repeat;	
	background-size: cover;
	background-position: center center;	
	display: flex;
    justify-content: center;
    align-items: center;
}
.sale-txt {
	text-align: center;
	color: #fff;
	font-size: 1.1em;
}
.sale-txt h5, .sale-txt h6 {
	text-shadow: 0px 0px 10px #000;
}
.sale-txt h5 {
	font-size: 1.8em!important;
}
.sale-txt h6 {
	font-size: 1.2em!important;
}
.sale {
	width: 90%;
	margin: 0 auto;
	padding-bottom: 3em;
}
.sale-box {
	padding: 1.5em;
}


.vi-h {
	height: 40vh;
	background-repeat: no-repeat;
	background-position: center center;
	padding-top: 150px;
	color: #fff;
	text-shadow:0px 0px 5px #000;
	font-weight: 500;
}
.vi-bg1 {
	background-image: url("../images/vi-bg01.jpg");
}

.sidenav-li {
    padding: 15px 0;
    border-bottom: #9e9f9f 0.8px dotted;
}

/* 單元標題 */
.titA {
	background: -webkit-linear-gradient(bottom, #f8e276 5%, #fec10e 90%);
	background: -o-linear-gradient(top, #faebad 10%, #ffcc66 80%);
	background: -moz-linear-gradient(top, #faebad 10%, #ffcc66 80%);
	background: linear-gradient(top, #faebad 10%, #ffcc66 80%);
	font-family: 'cwTeXFangSong', sans-serif;
	padding: 6px 0;
	border-top: solid 5px #f7e886;
}
.titA h2 {
	color: #fff;
	font-size: 3.6rem;
}
.titA h4 span {
	color: #1da36b;
	font-size: 1.8rem;
	border-top: solid 1px #1da36b; 
	padding: 10px 25px;
}

.fw-bold {
    color: #1979dc;
    font-size: 1.75rem;
	font-family: 'cwTeXFangSong', sans-serif;
	font-weight: 600!important;
}
.fw-7{
	font-weight: 700;
}
.fw-bold span {
    font-size: 1rem;
}

a.link-primary {
    color: #fff;
    font-size: 1.3rem;
	font-weight: 600!important
}

a.att {
	border-left: #fff solid 1px;
	color: #ffc124;
}

/* 行程卡片 */
.cardbox {
	background-color: #f7f7f7;
	margin: 2rem 0;
}
.card-body {
	padding: 2rem 3rem;
}
.card-body h5{
	margin-bottom: 1.8rem;
}
/* .card-body h5 a{
	color: #1979dc;
    width: 100%;
    padding: 0;
    border: none;
    line-height: 2rem;
    font-weight: 700;
}
.card-body h5 a:hover{
	border: none;
	border-radius: 0;
	color: #d82a43;
} */
.card-body span.tag {
	font-size: .8rem;
    color: #3E3A93;
    padding: 0.3rem 0.8rem;
    border-radius: 20px;
    margin-right: 10px;
    background-color: #79F0C8;
}
.tag-box {
	text-align: left;
	margin-bottom: .8rem;
	display: block;
}
.date-box {
	font-size: .8rem;
}
.date-box span.date-txt {
	padding: .4em;
	float: left;
}
.far {
	float: left;
}
a.more {
	border: none;
	display: block;
	float: left;
	color: #d82a43;
	padding: .4em .1em;
	background: none;
	margin: 0 auto;
	width: auto;
}
a.more:hover{
	background-color: #d82a43;
	border: none;
	border-radius: 0;
	color: #fff;
}
.date-txt {
	float: left;
}
.price {
		
}
.price a.pb {
	float: right;
	font-size: 1.4rem;
	border: none;
	clear: both;
	font-weight: 900;
	text-align: right;
	width: auto;
	padding: .2rem;
	color: #d82a43;
}
/* .price a.pb:hover {
	background-color: #d82a43;
	border: none;
	border-radius: 0;
	color: #fff;
} */
.price a.pb::before{
    content:"$";
    color:#000;
	font-weight: 400;
	font-size: .8rem;

}
.price a.pb::after{
    content:"元起";
    color:#000;
	font-weight: 400;
	font-size: .8rem;
}
.w-100 {
    width: 100%!important;
}
/* 行程內容 */
.topic::after {
    content: "";
    width: 50px;
    height: 4.5px;
    background: #d82a43;
    display: block;
    margin-top: 6px;
}
.datebox {
    background: #fff;
    padding: 20px 20px;
    box-shadow: #eee 10px 10px 30px;
    border: none;
    border-left: 8px #d82a43 solid;
    margin: 15px 0;
}

/* 基隆高雄母港出發 */
.pic {
    width: 100%;
    height: auto;
    padding: 5px;
    overflow: hidden;
}
.pic img {
    display: block;
    width: 100%;
    height: auto;
}
.word {
    width: 100%;
    height: auto;
    padding: 5%;
	line-height: 2rem;
}
.word h2 {
	font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    color: #0b1e42;
}
.word h3 {
	font-size: 1.3rem;
    text-align: center;
    color: #0b1e42;
    background: -webkit-linear-gradient(left, rgba(255, 232, 234, 0) 10%, #e1e8ea 35%, #e1e8ea 65%, rgba(255, 232, 234, 0) 90%);
}
.word a{
	color: #0080b3; 
    border: none;
    padding: 0px;
    background: none;
    border-radius: 0px;
    float: none;
    margin: 0 auto;
    display: block;
	width: 100%;
}
.word a:hover {
	color: #d82a43; 
	background-color: #fff;
    border: none;
}

.tar {
	text-align: right;
}



/* 遊輪線上報名 */
.bg-blue-light {
	background-color: #ecfbff!important;
}
.checkout-head {
    padding: 8px 20px 6px 20px;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
}
.checkout-body {
    padding: 30px 35px;
}
.h-center {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
}
.checkoutBox label {
    color: #333;
	font-size: .9rem;
}
sup {
    color: #d82a43;
    font-size: .8rem;
}

input, select, textarea {
    border: 1px solid #aaa;
    border-radius: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    outline: 0;
    color: #4b515e;
    background: 0 0;
    font-weight: 400;
    font-size: .9rem;
    width: 100%;
    margin: 5px 0 10px 0;
    padding: 14px 15px 8px 15px;
    letter-spacing: 1.1px;
    line-height: 18px;
    cursor: pointer;
}

label.checkbox-container input, label.radio-container input {
    width: 0;
}

.form-disabled:disabled{background-color:#e9ecef;opacity:1}
.radio-container{display:block;position:relative;padding-left:29px;margin:20px 0;cursor:pointer;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
.radio-container input{position:absolute;opacity:0;cursor:pointer}
.checkmark{position:absolute;top:0;left:0;height:18px;width:18px;border:1px solid #ddd;border-radius:50%;margin-top:2px}
.radio-container:hover input~.checkmark{background-color:#fff;border:1px #d82a43 solid}
.radio-container input:checked~.checkmark{background-color:#fff;border:#d82a43 1px solid}
.checkmark:after{content:"";position:absolute;display:none}
.radio-container input:checked~.checkmark:after{display:block}
.radio-container .checkmark:after{top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:#d82a43}
.checkbox-container{display:block;position:relative;padding-left:35px;margin-bottom:12px;cursor:pointer;font-size:14px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
.checkbox-container input{position:absolute;opacity:0;cursor:pointer}
.box-checkmark{position:absolute;top:0;left:0;height:18px;width:18px;border:1px solid #ddd}
.checkbox-container:hover input~.box-checkmark{background-color:#fff;border:1px #d82a43 solid}
.checkbox-container input:checked~.box-checkmark{background-color:#d82a43;border:1px #d82a43 solid}
.box-checkmark:after{content:"";position:absolute;display:none}
.checkbox-container input:checked~.box-checkmark:after{display:block}
.checkbox-container .box-checkmark:after{left:4.5px;top:.65px;width:7px;height:12px;border:solid #fff;border-width:0 3px 3px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}
label.label-control{font-size:.8rem;color:#d82a43;background-color:#fff;position:absolute;top:-6px;left:15px;width:auto;padding:1px 4px;margin:0 12px}
@media screen and (max-width:768px){
label.label-control{font-size:.73rem}
}
.form-group{margin-bottom:12px}
.input__arrowdown{width:100%;background-image:url(../../images/icons/arrows_down.svg);background-repeat:no-repeat;background-size:21px 21px;background-position:95% center}
.scrollMenu{background-color:#f8f8f8;overflow:auto;white-space:nowrap;display:flex;justify-content:space-between}
.scrollMenu a{display:inline-flex;color:#333;font-size:1rem;letter-spacing:.8px;text-align:center;padding:12px 0;text-decoration:none;transition:all .3s}
.scrollMenu a{position:relative}
.scrollMenu a:after{position:absolute;bottom:0;left:0;right:0;width:0%;height:4px;content:".";margin:auto;padding:0;font-size:0;color:transparent;background:#d82a43;transition:all .3s}
.scrollMenu a:hover{opacity:.85;transition:all .3s}
.scrollMenu a:hover:after{width:100%}
.carousel-indicators li{width:10px;height:10px;border-radius:50%;background-color:#fff;margin:0 10px}
.carousel-indicators .active{background-color:#d82a43}


label.label-control {
    font-size: .8rem;
    color: #d82a43;
    position: absolute;
    top: -6px;
    left: 15px;
    width: auto;
    padding: 1px 4px;
    margin: 0 12px;
    background-color: #fafafa;
}


.inlineb-item {
    margin-right: 25px!important;
}

.button.medium {
    font-size: .83rem;
    padding: 10px 37px 10px 37px;
    display: inline-block;
}

.button.small {
    padding: 2px 18px;
    display: inline-block;
}

.button.primary {
    background-color: #d82a43;
    color: #fff;
    border: 1px #d82a43 solid;
}

.button.brown {
    background-color: #CA9B19;
	box-shadow: #b1b1b1 0 6px 5px;
    color: #fff;
	font-size: 1rem;
	border-radius: 4px;
	font-weight: bold;
}

/* 表尾宣告 */
footer {
	font-size: .9rem;
	line-height: 1.6em;
}
footer span {
	clear: both;
	display: block;
	padding-top: .6rem;
	margin-bottom: 0.3rem;
	font-weight: 900;
}
.bg-foot {
    background-color: #f8f8f8;
}
.footer-ul{
	margin: 0;
}
.bg-primary {
    background-color: #d82a43!important;
}
.copyright {
    font-size: 13px;
	text-align: center;
	color: white;
}
#back-top {
    position: fixed;
    bottom: 80px;
    right: 18px;
    padding: 0;
    margin: 0;
    z-index: 20;
}
#back-top a {
    text-decoration: none;
    display: block;
    color: #fff;
    font-size: 26px;
    z-index: 999;
    padding: 5px;
    height: 42px;
    width: 42px;
    background: #9f7aea;
    border-radius: 50%;
}
#back-top a i{
	position:relative;
	left:8px;
	top:-4px;
	bottom:7px;
}
#purple-light, #video-section, #aurora-location, #prep-section, #productsAus, #productsNorthEU, #productsUC{
    scroll-margin-top: 80px;

}


/* 行程介紹產品卡片 */
/* * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Microsoft JhengHei", sans-serif;
}

body {
    background-color: #f5f5f5;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
} */

.product-card {
    background-color: #fff;
    height: 100%;
    /* display: flex;
    flex-direction: column; */
}

.card-image img {
    width: 100%;
    display: block;
    /* margin-bottom: 25px; */
}

#itinerary-intro .card-body {
    text-align: center;
	padding: 1rem;
}
.card-footer {
	padding: 0;
    background-color: rgba(255, 255, 255, 0.03);
	border-top: none;
}
.main-title, .main-title a {
    color: #3E3A93;
    font-size: 1.2rem;
    /* margin-bottom: 5px; */
	line-height: 1.2;
	text-align: left;
}

.sub-title {
    color: #076658;
    font-size: 24px;
    /* margin-bottom: 20px; */
}

.divider {
    height: 1px;
    background-color: #076658;
    /* opacity: 0.4; */
    margin: 5px 0;
}

.description {
    color: #333;
    font-size: 15px;
    line-height: 1.7;
    text-align: justify;
    margin-bottom: 0;
}

/* 底部區域：無縫連接設定 */
.card-footer {
    display: flex;
    align-items: center; /* 讓線條對準按鈕垂直中心 */
    gap: 0;              /* 核心：移除所有間隙 */
}

/* 底部線條 */
.footer-line {
    flex-grow: 1;
    height: 1px;
    background-color: #076658;
    opacity: 0.8;
}

/* 按鈕設定 */
.btn-more {
    /* background-color: #008b8b; */
    background: linear-gradient(90deg, #A17BFC, #79EFC9);
    color: white;
    text-decoration: none;
    padding: 0 14px;
    border-radius: 50px;
    font-size: 1rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
    margin: 0;
    transition: 0.3s;
}

.btn-more:hover {
    background-color: #006b6b;
}

.btn-more .arrow {
    font-size: 12px;
    margin-right: 2px;
}
/* 行程介紹產品卡片 */




/* .nav-btn:hover {
	display: none;
}

.nav-btn:hover {
	display: block;
} */

.ocean-cruise-icon-m {
	max-height: 49px; 
	width: auto;
}

@media  screen and (max-width: 576px){
	.ocean-cruise-icon-m {
		max-height: 18px;
	}	
}

@media (max-width: 991px) {
	.cruise-icon {
		max-height: 30px;
	}	
	span.nav-label{
		position: static;
		background-color: #C99643;
		color: #fff;
		height: 20px;
		font-size: 12px;
		padding: 0 4px;
		margin: 4px 0 0 4px;
		display: inline-block;
		vertical-align: text-bottom;
	}
}
@media (max-width: 992px) {
	.ci-h {
	height: 40vh;
	max-height: 500px;
	}
	.carousel-caption {
		bottom: 10rem;
	}
	.ci-txt h5 {
	font-size: 2.3rem;
	line-height: 2rem;	
	}
	.ci-txt p {
	font-size: 1.5rem;
	}
	.titA h2 {
		font-size: 2.3rem;
	}
	.titA h4 span {
		font-size: 1.2rem;
	}
	.fw-bold {
		font-size: 1.5rem;
	}
	.ci-img {
	padding-top: 5.5rem;
	}
	.ci-img img {
	width: 60%;	
	}
}

@media (max-width: 767px) {
	/* .button-swiper .nav-link{
		font-size: 1rem;
	} */
	
	/* .button-mobile .nav-link {
		color: #835812;
		text-align: center;
		font-size: 1.5rem;
		font-weight: 700;
		padding: 5px 0 5px 0;
	} */
	.itinerary-intro h2{
		font-size: 2.2rem;
	}

	.itinerary-intro h2::before, .itinerary-intro h2::after {
		font-size: 1.2rem;		
	}
}
@media (max-width: 768px) {
	.caption {
    right: 50%;
	padding: 20px;
	}
	.ci-txt {
	text-align: center;
	}
	.carousel-caption {
		bottom: 3.5rem;
	}
	.titA h2 {
	font-size: 1.8rem;
	}
	.mwlogo {
	margin: 0 auto;
	}
	.indtit {
		width: 60%;
	}
	.sale {
		width: 98%;
	}
	.ci-h {
	height: 30vh;
	max-height: 350px;
	}
	.ci-txt h5 {
	font-size: 1.4rem;
	margin-bottom: 0;
	line-height: 1.8rem;	
	}
	.ci-txt h6 {
	font-size: 1rem;
	}
	.ci-txt p {
	font-size: 1.1rem;
	}
	.card-body {
	padding: 1rem 1rem;
	}
	.ci-img {
	padding-top: 3.5rem;
	}
	.ci-img img {
	width: 60%;	
	max-width: 300px;	
	}
}

@media (max-width: 576px) {
	footer {
		text-align: center;
	}
	.mwlogo {
	width: 28%;
	}
	.titA h2 {
	font-size: 1.4rem;
	}
	.indtit {
		width: 35%;
	}
	.sale-txt h5 {
		font-size: 1.2em!important;
	}
	.sale-txt h6 {
		font-size: .9em!important;
	}
	.ci-h {
	height: 30vh;
	max-height: 200px;
	}
	.ci-txt h5 {
	line-height: 1.2rem;	
	}
	.card-body h5 {
	font-size: 1rem;
	}
	.card-body h5 a{
    line-height: 1.5rem;
	}	
	.ci-img {
	padding-top: 2.5rem;
	}
	.ci-img img {
	width: 50%;	
	}
}


/* 導覽列 */

.navbar .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-links {
    display: flex;
    list-style: none;
}

.nav-links li a {
    color: white;
    text-decoration: none;
    margin-left: 20px;
    font-size: 14px;
}

/* Hero Banner */
.hero {
    /* height: 100vh; */
	width: 100%;
    /* background: linear-gradient(rgba(0,0,0,0.3), #ffffff), url("../images/main-bg-1920-01.jpg") top center/cover; */
    /* background: url("../images/main-bg-1920-01.jpg") top center/cover; */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 60%, rgb(247 186 186) 100%), url(../images/main-bg-1920-01.jpg) top center / cover;
	display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.hero h1 {
    font-family: 'Noto Serif TC', serif;
    font-size: 80px;
    letter-spacing: 10px;
    margin: 20px 0;
}

.hero .year { font-size: 24px; letter-spacing: 5px; }

.hero-tags {
    display: flex;
    gap: 15px;
    justify-content: center;
    margin-top: 30px;
}

.hero-tags span {
    border: 1px solid #66fcf1;
    padding: 5px 15px;
    border-radius: 20px;
    font-size: 14px;
    color: #66fcf1;
}
.buttom-bg {
    background: linear-gradient(180deg, #FDF4FE, #EB598A, #E83A73);
    padding: 60px 0;
    text-align: center;
    height: 40vh;
}
.buttom-bg img{
    max-width: 300px;
    width: 100%;
}

/* 標題膠囊樣式 */
.section-title-pill {
    background: linear-gradient(90deg, #7b59d0, #b276e5);
    display: inline-block;
    padding: 10px 30px;
    border-radius: 50px;
    margin: 50px 0 30px;
    font-weight: bold;
}

.section-title-pill.light {
    background: linear-gradient(90deg, #48c6ef, #6f86d6);
}

/* 介紹區塊 */
.intro-section { text-align: center; padding: 40px 0; }
.intro-text { font-size: 18px; max-width: 800px; margin: 0 auto 40px; }

.video-placeholder {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    border: 5px solid #333;
}

.video-placeholder img { width: 100%; display: block; }

.play-btn {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    font-size: 60px; color: red; cursor: pointer;
}

/* 地點網格 */
.grid-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.location-card {
    flex: 1;
    min-width: calc(50% - 20px);
    background: #162447;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 30px;
}

.location-card img { width: 100%; height: 300px; object-fit: cover; }
.card-info { padding: 20px; text-align: center; }

.highlight-tag {
    background: #e91e63;
    padding: 3px 15px;
    border-radius: 5px;
    font-size: 14px;
    display: inline-block;
    margin: 10px 0;
}

/* 追光準備區 (漸層背景) */
.prep-section {
    background: linear-gradient(180deg, #7472F3, #A27CFD, #DDC9FE);
    padding: 60px 0;
    text-align: center;
    position: relative;
}
.products-container {
    background: linear-gradient(180deg, #DDC9FE, #FDF4FE);
    padding: 60px 0;
    text-align: center;
}
.products-container h6{
    margin-top: 4rem;
    font-size: 2rem;
    color: #3E3A93; text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
}

.timing-circles {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 40px 0;
}

.aurora-container {
    width: 100%;
    /* background-color: #a388ff; */
    padding: 60px 20px;        /* 上下內邊距 */
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 標題與線條設計 */
.aurora-title-line {
    color: white;
    font-family: 'Chetta Vissto', serif;
    font-size: 2rem;
    font-weight: 400;
    display: flex;
    align-items: center;
    text-align: center;
    white-space: nowrap; /* 防止小螢幕換行造成線條跑位 */
}

.aurora-title-line::before,
.aurora-title-line::after {
    content: "";
    flex: 1;             /* 讓線條自動填滿剩餘空間，或給予固定長度 */
    height: 1px;         /* 線條粗細 */
    background-color: rgba(255, 255, 255, 0.6); /* 白色半透明線條 */
    min-width: 100px;    /* 線條最短長度 */
}

/* 控制線條與文字的間距 */
.aurora-title-line::before {
    margin-right: 25px;
}

.aurora-title-line::after {
    margin-left: 25px;
}

.aurora-apps{
    line-height: 2.5;
    color: #fff;
}

@media (max-width: 768px) {
    .aurora-title-line {
        font-size: 1.6rem;
        line-height: 1;
    }
    .aurora-title-line::before,
    .aurora-title-line::after {
        min-width: 30px;
    }
    .aurora-apps{
    line-height: 1.5;
}
}

.circle {
    width: 400px;
    height: 400px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
    z-index: 2;
}

.circle h5{
    font-size: 2rem;
    color: #fff;
    line-height: 1.2
}
.circle p{
    font-size: 1.2rem;
    color: #fff;
}

@media screen and (max-width: 768px) {
    .circle {
        width: 200px;
        height: 200px;
    }
    .circle h5 {
        font-size: 1.2rem;
    }
    .circle p {
        font-size: 0.7rem;
    }
}

.circle-box {
    width: 420px;
    height: 420px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
	background-size: cover;
	background-position: center;
	padding: 3rem;
	margin: 2rem;
}

.circle-left {    
	background-image: url(../images/round-bg-01.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.circle-right {    
	background-image: url(../images/round-bg-02.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.circle-box img{
	max-width: 60px;
}
.circle-box h6{
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.3;
}
.circle-box p{
	font-size: 1.2rem;
	margin-top: 10px;
	margin-bottom: 0;
}

.icon-item h6{
    font-size: 1.5rem;
    color: #fff;
}
.icon-item p{
    max-width: 210px;
    font-size: 1rem;
    color: #fff;
}

.info-icons {
    display: flex;
    justify-content: space-around;
}

.icon-circle {
    width: 210px;
    height: 210px;
    background: #3f51b5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    margin: 0 auto 10px;
}
.icon-circle img {
    width: 110px;
}

@media screen and (max-width: 768px) {
    .icon-circle {
        width: 120px;
        height: 120px;
        font-size: 20px;
    }
    .icon-circle img {
        max-width: 80px;
    }

    .icon-item p {
        font-size: 0.9rem;
    }

}

/* 讓.circle文字 不要隨img輪播上下移動 */
.aurora-location-card .carousel-inner {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 比例 */
    overflow: hidden;
}

.aurora-location-card .carousel-inner .carousel-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.aurora-location-card .carousel-inner img {
    height: 100%;
    object-fit: cover;
}

/* 行程推薦卡片 */
.product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 25px;
    margin-bottom: 100px;
}

.product-card {
    background: #fff;
    color: #333;
    /* border-radius: 10px; */
    overflow: hidden;
}

.p-content { padding: 15px; }
.p-tags span {
    font-size: 12px;
    background: #eee;
    padding: 2px 8px;
    margin-right: 5px;
    border-radius: 3px;
}

.p-footer {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-top: 15px;
    border-top: 1px solid #eee;
    padding-top: 10px;
}

.price { color: #d32f2f; font-weight: bold; font-size: 20px; }
/* 待修改 */
/* .price span { font-size: 12px; color: #666; } */

/* RWD 響應式調整 */
@media (max-width: 767px) {
    .hero h1 { font-size: 40px; }
    
    .nav-links { display: none; } /* 手機版通常會改用漢堡選單，此處先隱藏 */
    
    .location-card {
        min-width: 100%;
    }
    
    .timing-circles {
        flex-direction: column;
        align-items: center;
    }
    
    .info-icons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 5px;
    }

    .hero-tags {
        flex-wrap: wrap;
    }
}



/* 極光divider測試 */

body, html {
    margin: 0;
    padding: 0;
    background-color: #050a15; 
    font-family: "Noto Serif TC";
}

/* 上方區塊：紫色漸層 */
.section-top {
    height: 60vh;
    background: linear-gradient(to bottom, #2d1b4e, #1a365d);
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
}

.wave-transition {
    width: 100%;
    height: 525px; /* 根據圖片比例調整高度 */
	
	background-image: url("../images/mask.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    
    margin-top: -265px; 
    margin-bottom: -265px;
    z-index: 10;
    position: relative;

    /* 效果優化 */
    mix-blend-mode: screen; 
    opacity: 0.8;   
    
}

/* 下方區塊：青藍色漸層 */
.section-bottom {
    height: 80vh;
    background: linear-gradient(to bottom, #1a365d, #1e4d4d, #0f2a2a);
    padding: 100px 0;
    color: white;
    text-align: center;
}

.content h1, .content h2 {
    font-size: 3rem;
    letter-spacing: 5px;
}



/* 重疊 */
.igloo-section {
    position: relative; /* 必備：讓內部的 absolute 元素以此為基準 */
    width: 100%;
    min-height: 500px;
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* 漸層背景色：參考圖片中的青綠色到淺藍 */
    background: linear-gradient(to bottom, #82F1CC, #3868E7, #5D6EEF, #7472F3); 
    overflow: hidden; /* 隱藏超出邊界的線條部分 */
}

/* --- 背景 PNG 線條定位 --- */
.bg-wave-lines {
    position: absolute;
    top: 20%;        
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;     
    opacity: 0.6;     
    z-index: 1;    
    pointer-events: none;
}
@media screen and (max-width: 768px) {
    .bg-wave-lines {
        top: 30%;
    }
    .igloo-section{
        background: linear-gradient(to bottom, #82F1CC, #7472F3);
    }
}
.preparation-section {
    position: relative; 
    width: 100%;
    min-height: 500px;
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(to bottom, #82F1CC, #3868E7, #5D6EEF, #7472F3); 
    overflow: hidden; 
}

/* --- 背景 PNG 線條定位 --- */
.bg-wave-lines-2 {
    position: absolute;
    top: 20%;          /* 置中定位 */
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;   
    opacity: 0.6;    
    z-index: 1;     
    
    pointer-events: none; 

}
.bg-wave-lines-3 {
    position: absolute;
    top: 10%;          /* 置中定位 */
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;   
    opacity: 0.6;    
    z-index: 1;     
    
    pointer-events: none; 

}

/* --- 內容層級 --- */
.info-container {
    position: relative;
    z-index: 2;        /* 放在第 2 層，確保在線條上面 */
    text-align: center;
    color: #fff;
    /* max-width: 800px; */
}

.text-content h2 {
	color: #fff;
    font-size: 1.8rem;
    margin-bottom: 20px;
    text-shadow: 0 3px 6px rgb(103 35 217);;
}

@media screen and (max-width: 768px){
    .text-content h2 {
        font-size: 1.6rem;
    }
}

.text-content p {
    line-height: 1.8;
    margin-bottom: 10px;
}

/* --- 漸層標題 --- */
.aurora-title {
	font-size: 2rem;
    display: inline-block;
    margin-top: 30px;
    padding: 0 50px;
    background: linear-gradient(90deg, #9f7aea, #81e6d9);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: bold;
    box-shadow: 0 0 20px rgba(159, 122, 234, 0.6);
    transition: transform 0.3s ease;
    position: relative;
    z-index: 2;
}
.aurora-title-sm {
	font-size: 1rem;
    display: inline-block;
    margin-top: 16px;
    padding: 6px 15px;
    background: linear-gradient(90deg, #4C0187, #E73A73);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: bold;
    /* box-shadow: 0 0 20px rgba(159, 122, 234, 0.6); */
    /* transition: transform 0.3s ease; */
}

@media screen and (max-width: 768px) {
    .aurora-title {
        font-size: 1.2rem;
        padding: 0 20px;
    }
    /* .aurora-title-sm {
        font-size: 0.85rem;
        padding: 4px 12px;
    } */
}
.linear-gradient-btn{
    font-size: 1rem;
    display: inline-block;
    padding: 0 15px;
    background: linear-gradient(90deg, #A17AFD, #0F4FFE);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: bold;
    box-shadow: 0 0 20px rgba(159, 122, 234, 0.6);
    transition: transform 0.3s ease;
    line-height: 1.8
}

.square-linear-gradient-btn{
    font-size: 1.2rem;
    display: inline-block;
    padding: 6px 15px;
    background: linear-gradient(90deg, #A17AFD, #0F4FFE);
    color: white;
    text-decoration: none;
    border-radius: 10px;
    font-weight: bold;
    box-shadow: 0 0 20px rgba(159, 122, 234, 0.6);
    transition: transform 0.3s ease;
}

.square-linear-gradient-btn .thin-text{
    font-size: 0.85rem;
    font-weight: 300;
}
.square-linear-gradient-btn img{
    width: 24px; 
}

.square-linear-gradient-btn .text{
    line-height: 1.2;
}
.aurora-location-card-box h6{
	font-size: 1.5rem;
	color: #fff;
}

.aurora-location-card p{
	margin-top: 1rem;
	margin-bottom: 1rem;
}

/* .aurora-title:hover {
    transform: scale(1.05);
} */

/* .aurora-title img{
	max-width: 20px;
} */
/* 極光divider測試 */




/* 影片輪播 */
.video-section{
	background: #82F1CC;
	background: linear-gradient(to bottom, #f7baba, #82F1CC);
    overflow: hidden;
}
.wrap {
    width: 650px;
    height: fit-content;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

.slidepic {
    position: relative;
    height: 365px;
}

.slidepic ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.slidepic li {
    position: absolute;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.15);
    background-color: #000;
    transition: filter 1.5s ease;
}

/* 非中心圖模糊縮小效果 */
.slidepic li:not(.active-center) {
    filter: blur(3px) brightness(0.8);
}

.slidepic li img, .slidepic li video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 控制按鈕樣式 */
.toggle {
    position: absolute;
    z-index: 100;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.toggle a {
    position: absolute;
    pointer-events: auto;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(8px);
    border-radius: 50%;
    text-align: center;
    line-height: 50px;
    color: #333;
    text-decoration: none;
    transition: all 0.5s;
}

.toggle .prev { left: -80px; }
.toggle .next { right: -80px; }
.toggle .prev::after { content: '❮'; }
.toggle .next::after { content: '❯'; }

@media (max-width: 768px) {
    .wrap {
        width: 88%;
        height: auto;
    }
    .toggle .prev { left: 0px; }
    .toggle .next { right: 0px; }

    .square-linear-gradient-btn .thin-text{
        font-size: 0.8rem;
        font-weight: 300;
    }
    .square-linear-gradient-btn .text-below{
        font-size: 1.2rem;
    }
}
