@font-face {
  font-display: swap;
}
@import url(https://fonts.googleapis.com/css?family=Roboto+Slab:400);
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200..900);

body p {
  margin-bottom: 0;
}

:root {
--page-max-width: 980px;
--ec-bg-dark: #000000;
--ec-bg-light: #f5f5f7;
--ec-text-main: #1d1d1f;
--ec-text-light: #f5f5f7;
--ec-accent-blue: #0071e3;
--ec-line-green: #449d44;
--ec-secondary: #888;
--font-sans: system-ui, BlinkMacSystemFont, 'Noto Sans TC','微軟正黑體', '蘋方', sans-serif;
--line-height-tight: 1.08;
--radius-card: 18px;
--shadow-soft: 0 18px 45px rgba(0, 0, 0, 0.35);
--shadow-sm: 0 5px 10px rgba(0, 0, 0, 0.35);
}

*, *::before, *::after {
  box-sizing: border-box;
}
a {
  text-decoration: none;
}
.LinkTxtNO {
  text-decoration: none;
  color: currentColor;
}
.FontSerif {
  font-family: 'Noto Serif TC', serif !important;
}
.FontBold {
  font-family: 'Noto Sans CJK TC Black', Helvetica !important;
}


/*E38區塊*/
.MainhdBk_E38{background-color:#F0F2F4; background-image: url(../images/client/event/e38/hd_bk_pic_s.png); background-repeat: no-repeat; background-size: cover; background-position: center top; padding: 15% 0 3% 0; }
.Mainhdsub_E38{ padding: 10px 5px 0px 5px; font-size: 1em; letter-spacing:0px; font-weight: 800; }
.HandSidePicWd { width:18.5vw; }

.ec-hdtitile{
	font-size: clamp(1.5em, 2.3vw, 2.5em);
	font-weight: 800; 
	line-height: 1.2em;
}
.ec-subtitle{
	font-size: clamp(1.25em, 1.8vw, 1.3em);
	line-height: 1.2em;
	letter-spacing: 1px;
	/*opacity: 0.9;*/
}
.BoxWt{ background-color:#F0F2F4; padding: 8px 15px; margin-bottom:8px; border-radius: 12px;font-size: clamp(1em, 1.8vw, 1.3em);  }
.BoxLpl{ background-color: #DADBF1; border:1px solid #C0C1D7; border-radius: 12px; }
.step-circle {
  width: 45px;
  height:45px;
  border-radius: 50%;
  background: #4f57c8;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #fff;
  font-size: 1.2em;
  font-weight: 700;
	margin-right: 10px;
}

.CS_BOX_E38{ background-color: #fff; border-radius: 12px; padding: 20px;  }
.E38_BoxHdA{ border-radius: 12px; padding: 5%; background-color: #17012C; color:#fff; }
.E38_BoxHdB{ border-radius: 12px; padding: 5%; background-color: #FF9700; color:#fff; }
.HoldPenSidePic { position: absolute; right: 0; }
.HoldPenSidePic > img{  width:18.5vw; }
.CS_BOX_E38LOG{ background-color: #FCE2CF; border-radius: 8px; padding:10px; border:1px solid #dec1ac;}

.price-old{
	color:#A8A8A8;
  text-decoration-line: line-through;
  text-decoration-thickness: 3px;     /* 線條粗細 */
  text-decoration-color: #A8A8A8;        /* 線條顏色 */
  text-decoration-skip-ink: none;     /* 不被文字避開（很重要） */
}

.btn-darkpurple {
    --bs-btn-color: #fff;
    --bs-btn-bg: #17012C;
    --bs-btn-border-color: #17012C;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #52346d;
    --bs-btn-hover-border-color: #373b3e;
    --bs-btn-focus-shadow-rgb: 66, 70, 73;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #17012C;
    --bs-btn-active-border-color: #373b3e;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-dorange {
    --bs-btn-color: #fff;
    --bs-btn-bg: #FF9700;
    --bs-btn-border-color: #e89722;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #c47f1b;
    --bs-btn-hover-border-color: #8b5b16;
    --bs-btn-focus-shadow-rgb: 66, 70, 73;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #FF9700;
    --bs-btn-active-border-color: #8b5b16;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.bg-darkpurple {
    background-color: #1B13A5;
}
.LightDisc > li {
	margin-bottom: 10px; padding-bottom: 5px; border-bottom: 1px dotted #d8cada;
}
.LightDisc > li::marker {
	color:#d8cada;
} 
ul.mb-3.LightDisc {	padding-left: 1.5rem; 
 }

/* ===============================
   Accordion 外框：一整塊大卡片
================================ */
.accordion{
  border-radius: 14px;
  overflow: hidden;
  background-color: #DADBF1;
  box-shadow: none;
}

/* ===============================
   每一列 item：不要各自圓角 / 不要間距
================================ */
.accordion-item{
  border: 0;
  border-radius: 0;
  margin: 0;                  /* 關鍵：不要 item 間距 */
  background-color: transparent;
  box-shadow: none;
}

/* 內部分隔線（只有中間有線） */
.accordion-item + .accordion-item{
  border-top: 1px solid #8A8FE3;  /* 關鍵：改成 top 線，像清單分隔 */
}

/* ===============================
   標題按鈕（收合/展開同色系）
================================ */
.accordion-button{
  background-color: #DADBF1;
  color: #1B13A5;
  font-weight: 600;
  padding: 18px 22px;
  border: none;
  box-shadow: none !important;
  font-size: 1.2rem;
  letter-spacing: 0.3px;
  transition: background-color .25s ease, color .25s ease;
}

/* 收合狀態 */
.accordion-button.collapsed{
  background-color: #DADBF1;
  color: #1B13A5;
}

/* Hover */
.accordion-button:hover{
  background-color: #E6E7F7;
  color: #1B13A5;
}

/* 展開狀態（仍維持同底色，只做微差） */
.accordion-button:not(.collapsed){
  background-color: #DADBF1;
  color: #1B13A5;
}

/* 移除 focus 外框 */
.accordion-button:focus{
  box-shadow: none !important;
}

/* ===============================
   內容區
================================ */
.accordion-body{
  background-color: #ffffff;
  color: #2b2b2b;
  padding: 20px 24px;
  line-height: 1.7;
  font-size: 1.05em;
}

/* ===============================
   箭頭顏色（深藍）
================================ */
.accordion-button::after{
  filter: invert(12%) sepia(85%) saturate(4500%) hue-rotate(235deg);
  opacity: 1;
}

/* （可選）讓按鈕左右邊不要有 Bootstrap 預設圓角感 */
.accordion-button{
  border-radius: 0 !important;
}




/*---------我們的服務---------*/
.ServiceBox{ padding: 0 10px 0 20px;  border-left: 1px solid #d6b680; }
.S-num{ font-size: 3em; font-weight: 300; color:#d6b680; padding-right: 15px;}
.S-title {font-weight: 800; font-size: 1.2em; color:#98473a; }
/*---------END我們的服務---------*/

@media (min-width: 480px) and (max-width: 767px) {
	.Mainhdsub_E38{ font-size: 1.4em;letter-spacing:1px;}
	.HandSidePicWd { width:15vw; }
}
@media (min-width: 768px) and (max-width: 979px) {
.MainhdBk_E38{background-image: url(../images/client/event/e38/hd_bk_pic_l.png); background-position: center; padding: 8% 0 3% 0; }
.Mainhdsub_E38{ padding: 3%; font-size: 1.5em; letter-spacing: 1px; font-weight:400;}
.HandSidePicWd { width:11.5vw; }
.step-circle {  width: 50px;	height:50px;}
.HoldPenSidePic { right:11%; margin-top: 1.5%;z-index:0; }
.HoldPenSidePic > img{  width:13.5vw; }
}
@media (min-width: 980px) and (max-width: 1199px) {
.MainhdBk_E38{background-image: url(../images/client/event/e38/hd_bk_pic_l.png); background-position: center; padding: 5% 0 3% 0; }
.Mainhdsub_E38{ padding: 3%; font-size: 1.5em; letter-spacing: 1px;font-weight:400;}
.HandSidePicWd { width:10.5vw; }
.BoxWt{ padding: 15px 15px;}
.step-circle {  width: 55px;	height:55px;  font-size: 1.58em;}
.HoldPenSidePic { right:11%; margin-top: -1.9%;z-index: 0; }
.HoldPenSidePic > img{  width:13.5vw; }
}
@media (min-width: 1200px) {
.MainhdBk_E38{background-image: url(../images/client/event/e38/hd_bk_pic_l.png); background-position: center; padding: 5% 0 3% 0; }
.Mainhdsub_E38{ padding: 3%; font-size: 1.5em; letter-spacing: 1px;font-weight:400;}
.HandSidePicWd { width:10.5vw; }
.BoxWt{ padding: 15px 15px;}
.step-circle {  width: 55px;	height:55px;  font-size: 1.5em;}
.HoldPenSidePic { right:15%; margin-top: -3.5%;z-index: 0; }
.HoldPenSidePic > img{  width:13.5vw; }
}
@media (min-width: 1400px) {
.MainhdBk_E38{background-image: url(../images/client/event/e38/hd_bk_pic_l.png); background-position: center left; padding: 5% 0 3% 0; }
.Mainhdsub_E38{ padding: 3%; font-size: 1.5em; letter-spacing: 1px;font-weight:400;}
.HandSidePicWd { width:10.5vw; }
.BoxWt{ padding: 15px 15px;}
.step-circle {  width: 55px;	height:55px;  font-size: 1.5em;}
.HoldPenSidePic { right:15%; margin-top: -5%;z-index: 0; }
.HoldPenSidePic > img{  width:13.5vw; }
}
@media (min-width: 1600px) {
.MainhdBk_E38{background-image: url(../images/client/event/e38/hd_bk_pic_l.png); background-position: center left; padding: 5% 0 3% 0; }
.Mainhdsub_E38{ padding: 3%; font-size: 1.5em; letter-spacing: 1px; font-weight:400;}
.HandSidePicWd { width:10.5vw; }
.BoxWt{ padding: 15px 15px;}
.step-circle {  width: 55px;	height:55px; font-size: 1.5em;}
.HoldPenSidePic { right:18%; margin-top: -5%;z-index: 0; }
.HoldPenSidePic > img{  width:13.5vw; }
}