/*1792px*/
:root {
	--px1:0.055804vw;
	--px2:0.111607vw;
	--px3:0.167411vw;
	--px4:0.223214vw;
	--px5:0.279018vw;
	--px6:0.334821vw;
	--px7:0.390625vw;
	--px8:0.446429vw;
	--px9:0.502232vw;
	--px10:0.558036vw;
	--px11:0.613839vw;
	--px12:0.669643vw;
	--px13:0.725446vw;
	--px14:0.781250vw;
	--px15:0.837054vw;
	--px16:0.892857vw;
	--px17:0.948661vw;
	--px18:1.004464vw;
	--px19:1.060268vw;
	--px20:1.116071vw;
	--px21:1.171875vw;
	--px22:1.227679vw;
	--px23:1.283482vw;
	--px24:1.339286vw;
	--px25:1.395089vw;
	--px26:1.450893vw;
	--px27:1.506696vw;
	--px28:1.562500vw;
	--px29:1.618304vw;
	--px30:1.674107vw;
	--px31:1.729911vw;
	--px32:1.785714vw;
	--px33:1.841518vw;
	--px34:1.897321vw;
	--px35:1.953125vw;
	--px36:2.008929vw;
	--px37:2.064732vw;
	--px38:2.120536vw;
	--px39:2.176339vw;
	--px40:2.232143vw;
	--px41:2.287946vw;
	--px42:2.343750vw;
	--px43:2.399554vw;
	--px44:2.455357vw;
	--px45:2.511161vw;
	--px46:2.566964vw;
	--px47:2.622768vw;
	--px48:2.678571vw;
	--px49:2.734375vw;
	--px50:2.790179vw;
	--px51:2.845982vw;
	--px52:2.901786vw;
	--px53:2.957589vw;
	--px54:3.013393vw;
	--px55:3.069196vw;
	--px56:3.125000vw;
	--px57:3.180804vw;
	--px58:3.236607vw;
	--px59:3.292411vw;
	--px60:3.348214vw;
	--px61:3.404018vw;
	--px62:3.459821vw;
	--px63:3.515625vw;
	--px64:3.571429vw;
	--px65:3.627232vw;
	--px66:3.683036vw;
	--px67:3.738839vw;
	--px68:3.794643vw;
	--px69:3.850446vw;
	--px70:3.906250vw;
	--px71:3.962054vw;
	--px72:4.017857vw;
	--px73:4.073661vw;
	--px74:4.129464vw;
	--px75:4.185268vw;
	--px76:4.241071vw;
	--px77:4.296875vw;
	--px78:4.352679vw;
	--px79:4.408482vw;
	--px80:4.464286vw;
	--px81:4.520089vw;
	--px82:4.575893vw;
	--px83:4.631696vw;
	--px84:4.687500vw;
	--px85:4.743304vw;
	--px86:4.799107vw;
	--px87:4.854911vw;
	--px88:4.910714vw;
	--px89:4.966518vw;
	--px90:5.022321vw;
	--px91:5.078125vw;
	--px92:5.133929vw;
	--px93:5.189732vw;
	--px94:5.245536vw;
	--px95:5.301339vw;
	--px96:5.357143vw;
	--px97:5.412946vw;
	--px98:5.468750vw;
	--px99:5.524554vw;
	--px100:5.580357vw;
}
body {
    font-family: 'Noto Sans TC', sans-serif;
    background-color: #000;
    letter-spacing: .15em;
}
section{
	padding: 80px 0px;
}
hr{
	background-color: #555;
	opacity: .7;
}
img{
	vertical-align: middle;
	width: 100%;
}
.pic{
	position: relative;
}
.img_txt{
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 99;
	color: #fff;
	font-size: 12px;
	text-shadow: 1px 1px 2px #333;
}
.box{
	width: 90%;
	max-width: 1440px;
	margin: 0 auto;
}
/*============slick-slide============*/
/* the slides */
.slick-slide {
    /*margin: 0 5px;*/
}
/* the parent */
.slick-list {
    /*margin: 0 -5px;*/
}
.slick-dotted.slick-slider {
    margin-bottom: 0px;
}
.slick-dots {
	bottom: 20px;
}
.slick-dots li button:before{
	font-size: 14px;
	color: #fff;
	opacity: 1;
}
.slick-dots li.slick-active button:before{
	color: #604c3f;
	opacity: 1;
}
.slick-one .img{
	position: relative;
}

/*===========================*/
/*============文字============*/
/*===========================*/

.hidden{
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.text-size-lg{
	font-size: var(--px40);
	font-weight: 500;
	line-height: 1.5;
	color: #F0E4D6;
	letter-spacing: .2em;
}
.text-size-md{
    font-size: var(--px34);
    font-weight: 500;
    line-height: 1.5;
    color: #F0E4D6;
    letter-spacing: .2em;
}
.text-size-sm{
    font-size: var(--px28);
    font-weight: 400;
    line-height: 1.5;
    color: #F0E4D6;
    letter-spacing: .2em;
}
.text-size-xs{
    font-size: var(--px24);
    font-weight: 400;
    line-height: 1.5;
    color: #F0E4D6;
    letter-spacing: .2em;
}
.text-size-xxs{
    font-size: var(--px18);
    font-weight: 400;
    line-height: 1.5;
    color: #F0E4D6;
    letter-spacing: .2em;
}
.text-size-mini{
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: #F0E4D6;
    letter-spacing: .15em;
}
.en-fontstyle{
	font-family: Malayalam MN;
	color: #777777;
}
p{
    text-align: justify;
    text-justify: inter-ideograph;
}
/*=====手機下方選單=====*/
.menu_mobile{
	justify-content: space-between;
    position: sticky;
    bottom: -2px;
    z-index: 999;
    width: 100%;
    text-align: center;
	background-color: #000;
    z-index: 99999;
    border-top:0px solid #fff; 
}
.menu_mobile a{
    text-decoration: none;
    color: #B5B5B6;
    font-size: 12px;
    font-weight: 500 !important;
	display: block;
	width: 100%;
	padding: 10px 0;
}
.menu_mobile a + a{
	border-left: 1px solid #595757;
}
.menu_mobile i{
	display: block;
	margin-bottom: 10px;
	font-size: 16px;
}
.menu_mobile{
	display: none;
}

/*=============================*/
/*=============頁首=============*/
/*=============================*/

header{
	width: 100%;
	position: sticky;
	top: 0;
	z-index: 9;
	background-color: rgba(0, 0, 0, .8);
}
header .menu-toggle{
	display: none;
}
header .top-bar{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 5% 50px 2% 50px;
	padding: 20px 50px;
}
header .top-bar .logo{
	width: 300px;
}
header .top-bar nav{
	display: flex;
	align-items: center;
	gap: 50px;
}
header .top-bar nav .item{
	position: relative;
	padding-bottom: 10px;
	transition: all .3s;
}
header .top-bar nav .item > a{
	font-size: 15px;
	color: #fff;
	text-decoration: none;
}
header .top-bar nav .item:hover > a{
	color: #E3AD7C;
}
header .top-bar nav .item .sub-item{
	background-color: #544A3E;
	position: absolute;
	left: 50%;
	top: calc(100% + 0px);
  	transform: translateX(-50%) scaleY(0);
  	transform-origin: top;
	padding: 20px;
	border-radius: 10px;
	transition: all .3s;
}
header .top-bar nav .item:hover .sub-item{
	transform: translateX(-50%) scaleY(1);
}
header .top-bar nav .item .sub-item a{
	display: block;
	text-decoration: none;
	white-space: nowrap;
	color: #9E8F7C;
	transition: all .3s;
}
header .top-bar nav .item .sub-item a:hover{
	color: #E3AD7C;
}
header .top-bar nav .item .sub-item a + a{
	margin-top: 15px;
}
header .top-bar nav .item .sub-item a + a:before{
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #9E8F7C;
	margin-bottom: 15px;
}
header .top-bar nav .item.social{
	display: flex;
	align-items: center;
	gap: 6px;
	color: #7CD8FF;
}
header .top-bar nav .item.social a{
	transition: all .3s;
}
header .top-bar nav .item.social a:hover{
	transform: scale(1.3);
}
header .top-bar nav .item.social a i{
	font-size: 16px;
	color: #7CD8FF;
}
header .contact-item{
	position: absolute;
	right: 40px;
	padding: 20px 8px 20px 10px;
	border-radius: 50px;
	background-color: rgba(255, 255, 255, .1);
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
header .contact-item a{
	text-decoration: none;
	display: block;
	transition: all .3s;
}
header .contact-item a:hover{
	transform: scale(1.3);
}
header .contact-item a i{
	font-size: 18px;
	color: #fff;
}

/*=============================*/
/*=============頁尾=============*/
/*=============================*/

footer{
	padding: 15% 50px 30px 50px;
	background: linear-gradient(to bottom,  rgba(0,0,0,1) 0%,rgba(69,48,37,1) 100%); 
}
footer .flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	color: #F0E4D6;
	font-size: 14px;
}
footer .flex:nth-child(1){
	border-bottom: 1px solid #F0E4D6;
	padding-bottom: 30px;
	margin-bottom: 10px;
}
footer .flex:nth-child(2){
	font-size: 12px;
}
footer .flex .company{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
footer .flex .info{
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-align: right;
}
footer .flex .info .address{
	margin-bottom: 15px;
}
footer .flex .link{
	display: flex;
	align-items: center;
	gap: 10px;
}
footer .flex .top-btn{
	display: flex;
	align-items: center;
	gap: 5px;
	cursor: pointer;
}
footer .flex .top-btn .pic{
	width: 20px;
	transition: all .3s;
}
footer .flex .top-btn:hover .pic{
	transform: scale(1.3);
}

/*=============================*/
/*=============首頁=============*/
/*=============================*/

body.index .kv{
	padding: 0;
	width: 100%;
	position: relative;
}
body.index .kv .t1{
	position: absolute;
	z-index: 2;
	width: 50%;
	top: 25%;
	left: 50%;
	transform: translate(-45%,0%);
}
body.index .kv video{
	width: 100%;
	height: auto;
	display: block;
}
body.index .kv .text{
	position: relative;
	margin-top: -10%;
	z-index: 5;
}
body.index .kv .text:after{
	content: '';
	width: 10%;
	height: 1px;
	background-color: #6D5145;
	position: absolute;
	bottom: 0%;
	left: 50%;
	transform: translate(-50%,50px);
}
body.index .kv .text h1{
	text-align: center;
	margin-bottom: var(--px30);
}
body.index .kv .text h1 span{
	display: inline-block;
	width: var(--px50);
}
body.index .kv .text p{
	text-align: center;
}
/**/
body.index .s1{
	padding: 0;
	padding-top: 3%;
	position: relative;
}
body.index .s1:after{
	content: '';
	width: 10%;
	aspect-ratio: 1 / 1;
	background-color: #000;
	position: absolute;
	z-index: 3;
	bottom: 0;
	right: 0;
}
body.index .s1 .map-video{
	position: relative;
}
body.index .s1 .map-video video{
	width: 100%;
	height: auto;
	display: block;
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	mix-blend-mode: screen;
}
/**/
body.index .carousel-case{
	overflow: hidden;
}
body.index .carousel-case .title{
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	margin-bottom: var(--px80);
}
body.index .carousel-case .slider{
	position: relative;
}
body.index .carousel-case .slider .right-arr{
	position: absolute;
	z-index: 8;
	width: 80px;
	top: 50%;
	right: 28%;
	transform: translate(50%,-150%);
	transition: all .3s;
	cursor: pointer;
}
body.index .carousel-case .slider .right-arr:hover{
	transform: translate(55%,-150%);
}
body.index .carousel-case .slider .desc-card{
	position: relative;
	z-index: 3;
	width: 23%;
	margin: 0 auto;
	margin-top: -7%;
	transform: translateX(-50%);
	background-color: rgba(30, 22, 18, .8);
	padding: 50px;
	border-radius: 20px;
}
body.index .carousel-case .slider .desc-card h2,
body.index .carousel-case .slider .desc-card h3,
body.index .carousel-case .slider .desc-card p{
	color: #DADADA;
}
body.index .carousel-case .slider .desc-card h3{
	margin-bottom: 15px;
}
body.index .carousel-case .slider .desc-card .city{
	background-color: rgba(128, 128, 128, .7);
	padding: 3px 12px;
	border-radius: 50px;
	position: absolute;
	top: 10px;
	right: 10px;
}
body.index .carousel-case .slick-centerMode {
	overflow: visible; /* slick 預設會把外面裁切掉，這行很關鍵 */
}
body.index .carousel-case .slick-centerMode .item {
	padding: 0 50px;  /* 兩張之間的間距 */
}     
body.index .carousel-case .slick-centerMode .pic img{
	width: 100%;
	display: block;
	border-radius: 15px; /* 可要可不要 */
}
/**/

/*======================================*/
/*=============共用=============*/
/*======================================*/

body.base section.con{
	padding-top: 0;
}
body.base .box{
	max-width: 1200px;
}
body.base .title{
	padding: 20px 50px;
	display: flex;
	flex-direction: column;
}
body.base .breadcrumbs{
	padding: 20px 50px;
	text-align: right;
}

/*======================================*/
/*=============熱銷個案=============*/
/*======================================*/


body.best-selling .box{
	display: flex;
	align-items: flex-start;
	gap: 5%;
	margin-top: 50px;
}
body.best-selling .menu{
	width: 15%;
}
body.best-selling .menu nav .item{
	padding: 10px 20px 10px 50px;
	border-left: 1px solid #F0E4D6;
	cursor: pointer;
}
body.best-selling .menu nav .item.active,
body.best-selling .menu nav .item:hover{
	color: #E3AD7C;
	border-left: 1px solid #E3AD7C;
}
body.best-selling .menu nav .item.fake{
	cursor: unset;
}
body.best-selling .menu nav .item.fake:hover{
	border-left: 1px solid #F0E4D6;
}
body.best-selling .case-block{
	width: 85%;
}
body.best-selling .case + .case{
	margin-top: 10%;
}
body.best-selling .case .hero img{
	border-radius: 15px;
}
body.best-selling .case .info{
	width: 80%;
	margin: 0 auto;
	margin-top: 30px;
}
body.best-selling .case .info .case-head{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 15px;
}
body.best-selling .case .info .case-head h2{
	width: fit-content;
	padding: 0 20px;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
	line-height: 1;
}
body.best-selling .case .info .case-head .case-year{
	width: fit-content;
	background-color: rgba(128, 128, 128, .7);
	border-radius: 12px;
	line-height: 1;
	padding: 5px 10px;
}
body.best-selling .case .info .info-grid {
	display: grid;
	/* 定義三欄：寬度依比例分配 (也可以設 auto 或 px) */
	grid-template-columns: 1fr 1fr .8fr; 
	/* 上下左右的間距 */
	gap: 10px 20px;
	margin-top: 15px;
}
body.best-selling .case .info .item {
	display: flex;
	align-items: center;
}
body.best-selling .case .info .label {
	color: #E3AD7C; /* 深金標題色 */
	white-space: nowrap; /* 防止標題換行 */
	margin-right: 10px;
}
/* 讓最後一個項目跨越兩欄 */
body.best-selling .case .info .span-2 {
 	grid-column: span 2;
}

/* RWD: 手機版變成單欄 */
@media (max-width: 768px) {
	.info-grid {
		grid-template-columns: 1fr; /* 手機變一欄 */
	}
	.span-2 {
		grid-column: span 1; /* 手機取消跨欄 */
	}
}

/*======================================*/
/*=============即將公開=============*/
/*======================================*/

body.coming-soon .con > .title{
	display: none;
}
body.coming-soon .con .breadcrumbs{
	margin-top: 7%;
}
body.coming-soon .con .box{
	position: relative;
}
body.coming-soon .con .box .menu{
	position: absolute;
	top: 0;
	left: -5%;
}
body.coming-soon .con .box .menu:before{
	content: '';
	display: block;
	width: 1px;
	height: 30px;
	background-color: #F0E4D6;
}
body.coming-soon .con .box .menu:after{
	content: '';
	display: block;
	width: 1px;
	height: 250px;
	background-color: #F0E4D6;
}
body.coming-soon .con .box .menu .g-line{
	width: 1px;
	height: 60px;
	background-color: #E3AD7C;
}
body.coming-soon .con .box .title h1,
body.coming-soon .con .box .title h2{
	text-align: center;
}
body.coming-soon .con .box .case-block{
	width: 80%;
	margin: 0 auto;
	margin-top: 50px;
}
body.coming-soon .con .box .case-block .case + .case{
	margin-top: 10%;
}
body.coming-soon .con .box .case-block .case .hero img{
	border-radius: 15px;
}


/*======================================*/
/*=============歷年實績=============*/
/*======================================*/


body.past-achievements .box{
	display: flex;
	align-items: flex-start;
	gap: 5%;
	margin-top: 50px;
}
body.past-achievements .menu{
	width: 15%;
}
body.past-achievements .menu nav .item{
	padding: 10px 20px 10px 50px;
	border-left: 1px solid #F0E4D6;
	cursor: pointer;
}
body.past-achievements .menu nav .item.active,
body.past-achievements .menu nav .item:hover{
	color: #E3AD7C;
	border-left: 1px solid #E3AD7C;
}
body.past-achievements .menu nav .item.fake{
	cursor: un;
}
body.past-achievements .menu nav .item.fake:hover{
	border-left: 1px solid #F0E4D6;
}
body.past-achievements .case-block{
	width: 85%;
	display: flex;
	flex-wrap: wrap;
	gap: 80px 10%;
}
body.past-achievements .case{
	width: calc(50% - 5%);
}
body.past-achievements .case .hero img{
	border-radius: 15px;
}
body.past-achievements .case .info{
	margin-top: 30px;
}
body.past-achievements .case .info .case-head{
	margin-bottom: 15px;
}
body.past-achievements .case .info .info-items .item + .item{
	margin-top: 15px;
}
body.past-achievements .case .info .label {
	color: #E3AD7C; /* 深金標題色 */
	white-space: nowrap; /* 防止標題換行 */
	margin-right: 10px;
	/* --- 以下是新增的對齊語法 --- */
    
    /* 1. 必須改成 inline-block 才能設定寬度 */
    display: inline-block;
    
    /* 2. 設定固定的寬度 */
    /* 這邊設 4.5em 大約是 4 個中文字加一點間隙的寬度，請依實際字體大小微調 */
    width: 4.5em; 
    
    /* 3. 這是針對多行文字的對齊 */
    text-align: justify;
    
    /* 4. 這是關鍵：強制最後一行（也就是單行）也要分散對齊 */
    text-align-last: justify;
    
    /* 兼容性寫法：針對舊版瀏覽器 (可選) */
    -moz-text-align-last: justify;
}

/*======================================*/
/*=============影音專區=============*/
/*======================================*/


body.multimedia-zone .box{
	max-width: 1440px;
	margin-top: 50px;
}
body.multimedia-zone .box .items{
	display: flex;
	flex-wrap: wrap;
	gap: 50px 2%;
}
body.multimedia-zone .box .items .item{
	width: calc(33.333333% - 2%);
	position: relative;
	cursor: pointer;
}
body.multimedia-zone .box .items .item .cover-img{
	border-radius: 12px 12px 0px 0px;
	background-size: cover;
	background-position: center;
	padding-bottom: 50%;
}
body.multimedia-zone .box .items .item .pic img{
	border-radius: 0px 0px 12px 12px;
}
body.multimedia-zone .box .items .item h2{
	margin-top: 15px;
}
body.multimedia-zone .box .items .item .play-btn{
	width: 60px;
	height: 60px;
	background-color: rgba(255, 255, 255, .5);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-80%);
	transition: all .3s;
}
body.multimedia-zone .box .items .item .play-btn i{
	font-size: 40px;
	color: #fff;
}
body.multimedia-zone .box .items .item:hover .play-btn{
	transform: translate(-50%,-70%) scale(1.5);
	background-color: rgba(255, 255, 255, 1);
}
body.multimedia-zone .box .items .item:hover .play-btn i{
	color: #ccc;
}

/*======================================*/
/*=============資訊分享=============*/
/*======================================*/


body.information-sharing .box{
	max-width: 1200px;
	margin-top: 50px;
}
body.information-sharing .box .items .item{
	display: flex;
	align-items: flex-end;
	gap: 5%;
	cursor: pointer;
	text-decoration: none;
}
body.information-sharing .box .items .item + .item{
	margin-top: 8%;
}
body.information-sharing .box .items .item .image{
	width: 45%;
}
body.information-sharing .box .items .item .image img{
	border-radius: 12px;
}
body.information-sharing .box .items .item .text{
	width: 55%;
}
body.information-sharing .box .items .item .text h2{
	margin-bottom: 15px;
	border-left: 1px solid #F0E4D6;
	padding-left: 20px;
	transition: all .3s;
}
body.information-sharing .box .items .item:hover .text h2{
	padding-left: 30px;
}
body.information-sharing .box .items .item .text .view-more{
	color: #7CD6FF;
	letter-spacing: .1em;
	width: fit-content;
	margin-left: auto;
	margin-top: 10px;
	position: relative;
}
body.information-sharing .box .items .item .text .view-more:after{
	content: '';
	width: 100%;
	height: 1px;
	background-color: #7CD6FF;
	position: absolute;
	bottom: -5px;
	left: 0;
	transform: scale(0);
	transform-origin: left;
	transition: all .3s;
}
body.information-sharing .box .items .item:hover .text .view-more:after{
	transform: scale(1);
}


/*======================================*/
/*=============專業服務=============*/
/*======================================*/

body.our-services .con > .title{
	display: none;
}
body.our-services .con .breadcrumbs{
	margin-top: 7%;
}
body.our-services .con .box .title h1,
body.our-services .con .box .title h2,
body.our-services .con .box p{
	text-align: center;
}
body.our-services .con .box p{
	line-height: 2;
	margin-top: 30px;
}
body.our-services .services-icon{
	width: 70%;
	margin: 0 auto;
	margin-top: 10%;
	position: relative;
}
body.our-services .services-icon .icon-0{
	filter: brightness(2);
}
body.our-services .services-icon .icon-x{
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	transition: all .3s;
	transition: all .5s ease; /* 動化時間 */
    opacity: 1;               /* 預設隱藏 */
    transform: scale(1);      /* 預設大小 */
    filter: brightness(1);
}
/* 啟動時的樣子 */
body.our-services .services-icon .icon-x.active {
    opacity: 1;
    transform: scale(1.1);    /* 放大 1.2 倍 */
    filter: brightness(2);
}
/*body.our-services .services-icon .icon-0{
	transition: all .3s;
}*/
/*body.our-services .services-icon .sense{
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 4;
	opacity: 0;
}
body.our-services .services-icon .sense .cls-2{
	cursor: pointer;
}*/
/*body.our-services .services-icon:has(.sense-1:hover) .icon-1,
body.our-services .services-icon:has(.sense-3:hover) .icon-2,
body.our-services .services-icon:has(.sense-4:hover) .icon-3,
body.our-services .services-icon:has(.sense-6:hover) .icon-4,
body.our-services .services-icon:has(.sense-2:hover) .icon-5,
body.our-services .services-icon:has(.sense-5:hover) .icon-6{
	transform: scale(1.06);
	filter: brightness(2);
}
body.our-services .services-icon:has(.sense-1:hover) .icon-0,
body.our-services .services-icon:has(.sense-3:hover) .icon-0,
body.our-services .services-icon:has(.sense-4:hover) .icon-0,
body.our-services .services-icon:has(.sense-6:hover) .icon-0,
body.our-services .services-icon:has(.sense-2:hover) .icon-0,
body.our-services .services-icon:has(.sense-5:hover) .icon-0{
 	filter: brightness(2);
}*/

/*======================================*/
/*=============品牌精神=============*/
/*======================================*/

body.wowpan-story .con > .title{
	display: none;
}
body.wowpan-story .con .breadcrumbs{
	margin-top: 7%;
}
body.wowpan-story .con .box .title h1,
body.wowpan-story .con .box .title h2,
body.wowpan-story .con .box h3,
body.wowpan-story .con .box p,
body.wowpan-story .con .box .en-fontstyle{
	text-align: center;
}
body.wowpan-story .con .box h3{
	margin-top: 30px;
	margin-bottom: 15px;
}
body.wowpan-story .con .box h3 span{
	display: inline-block;
	width: 20px;
}
body.wowpan-story .con .box p{
	line-height: 2;
}
body.wowpan-story .con .box .en-fontstyle{
	margin-top: 0px;
}
body.wowpan-story .con .box .en-fontstyle.en-slogan{
	margin-top: 30px;
	color: #F0E4D6;
}
body.wowpan-story .con .box .en-fontstyle.en-slogan > div{
	display: inline-block;
}
body.wowpan-story .con .box .en-fontstyle.en-slogan > div.a:after{
	content: ' — ';
}
body.wowpan-story .carousel-case{
	overflow: hidden;
}
body.wowpan-story .carousel-case .slider{
	position: relative;
}
body.wowpan-story .carousel-case .slider .right-arr{
	position: absolute;
	z-index: 8;
	width: 80px;
	top: 50%;
	right: 28%;
	transform: translate(50%,-50%);
	transition: all .3s;
	cursor: pointer;
}
body.wowpan-story .carousel-case .slider .right-arr:hover{
	transform: translate(55%,-50%);
}
body.wowpan-story .carousel-case .slider .left-arr{
	position: absolute;
	z-index: 8;
	width: 80px;
	top: 50%;
	left: 24%;
	transform: translate(50%,-50%);
	transition: all .3s;
	cursor: pointer;
}
body.wowpan-story .carousel-case .slider .left-arr:hover{
	transform: translate(45%,-50%);
}
body.wowpan-story .carousel-case .slick-centerMode {
	overflow: visible; /* slick 預設會把外面裁切掉，這行很關鍵 */
}
body.wowpan-story .carousel-case .slick-centerMode .item {
	padding: 0 50px;  /* 兩張之間的間距 */
}     
body.wowpan-story .carousel-case .slick-centerMode .pic img{
	width: 100%;
	display: block;
	border-radius: 15px; /* 可要可不要 */
}


:root {
    --bg-dark: #0f0d0c;      /* 極深咖啡背景 */
    --accent-gold: #9E8F7C;  /* 品牌金銅色 */
    --text-white: #ffffff;
    --text-gray: #a1a1a1;
}
/* 時間軸主容器 */
body.wowpan-story .timeline-container {
	padding: 0;
    position: relative;
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    margin-top: 80px;
}
/* 垂直中心線 */
body.wowpan-story .timeline-container::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background-color: var(--accent-gold);
    transform: translateX(-50%);
    z-index: 1;
}
/* 大圓標（年份區間） */
body.wowpan-story .period-marker {
    position: relative;
    width: 110px;
    height: 110px;
    background-color: var(--accent-gold);
    border-radius: 50%;
    margin: 60px auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 5;
    color: #1a1a1a;
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.2;
    letter-spacing: 1px;
}
body.wowpan-story .period-marker .divider {
    width: 1px;
    height: 15px;
    background-color: #1a1a1a;
    margin: 2px 0;
}
/* 事件條目 */
body.wowpan-story .timeline-item {
    position: relative;
    width: 50%;
    margin-bottom: 50px;
    padding: 10px 60px;
    z-index: 2;
}
/* 水平連線：精確連接到中心線，無空隙 */
body.wowpan-story .timeline-item::before {
    content: '';
    position: absolute;
    top: 27px;
    width: 60px; /* 與 padding 相同，確保連至中心線 */
    height: 1px;
    background-color: var(--accent-gold);
}
body.wowpan-story .de.timeline-item::before {
	width: 0px;
}
/* 左側佈局 */
body.wowpan-story .timeline-item.left {
    left: 0;
    text-align: right;
}
body.wowpan-story .timeline-item.left::before {
    right: 0;
}
/* 右側佈局 */
body.wowpan-story .timeline-item.right {
    left: 50%;
    text-align: left;
}
body.wowpan-story .timeline-item.right::before {
    left: 0;
}
/* 圓點定位：精確落在中心線上 */
body.wowpan-story .timeline-item::after {
    content: '';
    position: absolute;
    top: 27px;
    border-radius: 50%;
    z-index: 10;
}
body.wowpan-story .timeline-item.left::after {
    left: 100%; 
    transform: translate(-50%, -50%);
}
body.wowpan-story .timeline-item.right::after {
    left: 0;
    transform: translate(-50%, -50%);
}
/* 樣式 A：雙環圓點 (Ring + Dot) */
body.wowpan-story .dot-ring::after {
    width: 10px;
    height: 10px;
    background-color: var(--accent-gold);
    box-shadow: 
        0 0 0 4px var(--bg-dark), 
        0 0 0 5px var(--accent-gold);
}
/* 樣式 B：實心圓點 (Solid) */
body.wowpan-story .dot-solid::after {
    width: 10px;
    height: 10px;
    background-color: var(--accent-gold);
}
/* 年份與內容文字 */
body.wowpan-story .item-year {
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--text-white);
    margin-bottom: 8px;
    display: block;
    letter-spacing: 1px;
}
body.wowpan-story .item-content {
    font-size: 1rem;
    color: var(--text-gray);
    line-height: 1.6;
    letter-spacing: 2px;
    font-weight: 300;
}
body.wowpan-story .item-content strong {
    color: var(--text-white);
    font-weight: 500;
    margin-right: 4px;
}
/* 底部裝飾線 */
body.wowpan-story .timeline-footer {
    text-align: center;
    margin-top: 40px;
    position: relative;
    z-index: 5;
}
body.wowpan-story .footer-line {
    width: 1px;
    height: 100px;
    background: linear-gradient(to bottom, var(--accent-gold), transparent);
    margin: 0 auto;
}
/* 動畫 */
body.wowpan-story .animate-in {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease-out;
}
body.wowpan-story .animate-in.visible {
    opacity: 1;
    transform: translateY(0);
}
/* 手機版適應 */
@media (max-width: 768px) {
    body.wowpan-story .timeline-container::before { left: 30px; }
    body.wowpan-story .period-marker { margin-left: -25px; }
    body.wowpan-story .timeline-item { width: 100%; left: 0 !important; text-align: left !important; padding-left: 70px; }
    body.wowpan-story .timeline-item::before { left: 30px !important; width: 40px; }
    body.wowpan-story .timeline-item::after { left: 30px !important; }
}

body.wowpan-story .story p{
	text-align: center;
	line-height: 1.8;
	width: 70%;
	margin: 0 auto;
}

body.wowpan-story .ball {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    margin-top: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    /* 增加邊界保護，防止球體超出 */
    padding: 30px; 
}
body.wowpan-story .ball svg {
    width: 100%;
    height: 100%;
    /* 允許內容溢出繪製，防止漂浮時被裁切 */
    overflow: visible; 
    filter: drop-shadow(0 20px 30px rgba(0,0,0,0.7));
}
/* 漂浮動畫：只保留位移，移除旋轉以確保文字視覺穩定 */
@keyframes floating {
    0% { transform: translate(0, 0); }
    50% { transform: translate(0, -20px); }
    100% { transform: translate(0, 0); }
}
body.wowpan-story .ball-group {
    cursor: pointer;
    transition: filter 0.3s ease;
    transform-box: fill-box;
    transform-origin: center;
}
body.wowpan-story .ball-group:hover {
    filter: brightness(1.3) drop-shadow(0 0 15px rgba(255,255,255,0.2));
}
body.wowpan-story .ball-text {
    fill: #ffffff;
    font-weight: bold;
    pointer-events: none; /* 防止文字干擾滑鼠事件 */
    text-shadow: 0 2px 5px rgba(0,0,0,0.8);
    user-select: none;
    /* 確保文字永遠水平 */
    transform: rotate(0deg); 
}
/* 滑鼠點擊時的視覺回饋 */
body.wowpan-story .ball-group:active {
    transform: scale(0.95);
}

/*======================================*/
/*=============聯絡我們=============*/
/*======================================*/


body.contact-us .box{
	max-width: 1200px;
	margin-top: 50px;
}
body.contact-us .form{
	background-color: rgba(84, 74, 62, .5);
	padding: 5%;
	border-radius: 20px;
}
body.contact-us .form form{
	width: 100%;
}
body.contact-us input:focus {
	outline: none;
	border: none;
}
body.contact-us input[name='phone'],
body.contact-us input[name='email'],
body.contact-us textarea{
	background-color: transparent;
	width: 100%;
	border: 0px;
}
body.contact-us .form .name-block input[name='name']{
	background-color: transparent;
	width: 50%;
	border: 0;
}
body.contact-us textarea{
	height: 300px;
}
body.contact-us .form .input-block{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}
body.contact-us .form .name-block{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: rgba(255, 255, 255, .5);
	padding: 20px;
}
body.contact-us .form .phone-block,
body.contact-us .form .email-block{
	width: calc(50% - 10px);
	background-color: rgba(255, 255, 255, .5);
	padding: 20px;
}
body.contact-us .form .msg-block{
	width: 100%;
	background-color: rgba(255, 255, 255, .5);
	padding: 20px;
}
body.contact-us ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: rgba(0, 0, 0, .5) !important;
}
body.contact-us :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: rgba(0, 0, 0, .5) !important;
}
body.contact-us ::-ms-input-placeholder { /* Microsoft Edge */
  color: rgba(0, 0, 0, .5) !important;
}
body.contact-us .modal.fade h3{
	color: #333;
}
body.contact-us .modal-body h5{
	margin-bottom: 10px;
	color: #333;
}
body.contact-us .modal-body li{
	line-height: 2;
}
body.contact-us .privacy-check{
	color: #fff;
	margin-top: 20px;
}
body.contact-us .privacy-check a{
	text-decoration: none;
	color: #7CD6FF;
}
body.contact-us .reg_btn{
	padding: 10px;
	background-color: transparent;
	color: #fff;
	display: block;
	margin-left: auto;
	font-size: 20px;
	border: 1px solid #686868;
}
body.contact-us .reg_btn i{
	display: inline-block;
	transition: all .3s;
}
body.contact-us .reg_btn:hover i{
	transform: translateX(5px);
}
body.contact-us .map-block{
	display: flex;
	align-items: center;
	margin-top: 50px;
	gap: 15%;
}
body.contact-us .gmap{
	width: 50%;
}
body.contact-us .gmap iframe{
	border-radius: 15px;
}
body.contact-us .business-id{
	width: 50%;
	color: #fff;
}
body.contact-us .business-id h3{
	text-align: center;
	color: rgba(255, 255, 255, .5);
	margin-bottom: 30px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, .5);
}
body.contact-us .business-id .item{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
}
body.contact-us .business-id .item + .item{
	margin-top: 30px;
}
body.contact-us .business-id .item span{
	font-size: 16px;
	font-weight: 300;
}



