@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap');


body {
    font-family:"Noto Sans TC", serif;
    background: #f8f7f3;
}

.path p, .path p a{display: none;}


.bannerindex .swiper-banner .swiper-slide img {
    animation: none;
}

/*header格式*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.main_header_area .container {
    max-width: 80%;
}

.header_area {
    position: relative;
    background: #E6E6E6;
    position: sticky;
    top: 0px;
    transition: all 0.5s ease-in-out;
}

.header_area.sticky {
    background: #E6E6E6;
}

.navigation {
    display: flex;
    justify-content: center;
    align-items: center;
}

.me_tp_features {
display: none;
}

.tp_links a {
    background: #fff;
    padding: 10px;
    border-radius: 5px;
    position: relative;
}

.me_tp_features a i {
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1200px) {
.main_header_area .container {
    max-width: 90%;
}

}

/*Logo*/

.nav-brand img {
    max-width: 26%;
}

/*header文字*/

.stellarnav > ul > li > a{
    font-size: 14px;
    letter-spacing: 2px;
    color: #313e55;
    position: relative;
    padding: 0px 15px;
}
.stellarnav > ul > li a:hover {
    color: #ffffff;
}
.stellarnav li.has-sub > a:after{display: none;}
.stellarnav > ul > li > a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;  
    height: 100%;
    background-color: #6bb4c2;
    border-radius: 5px;
    z-index: -1;   
    opacity: 0;
    transform: scaleX(1); 
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
}

.stellarnav > ul > li > a:hover::before {
    opacity: 1;
    transform: scaleX(1);
    transform-origin: left;
}

.stellarnav > ul > li > a b:nth-of-type(2){
    font-size: 10px;
}

/*第二層*/

/* ==========================================================================
   純淨結構重構：StellarNav 下拉選單（無 !important / 窄版幾何細線風）
   ========================================================================== */

/* --- 1. 下拉選單主外框：大幅縮窄、加入微透光影與方正邊框 --- */
.stellarnav.stellarnav.desktop ul ul {
    background: #ffffff;
    width: 160px; /* 修長俐落的 160px 窄版比例 */
    padding: 10px 18px; /* 緊湊的內部幾何留白 */
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.03), 0 5px 15px rgba(0, 0, 0, 0.02); /* 層次感無形陰影 */
    border: 1px solid #e2e2e2; /* 勾勒空間輪廓的細邊框 */
}

/* 移除原廠幫每個 li 加的硬生生四週外框 */
.stellarnav.stellarnav.desktop li li {
    border: none;
    background: transparent;
}

/* --- 2. 條目結構優化：引入幾何垂直水平分割線 --- */
.stellarnav.stellarnav.desktop ul ul li {
    display: block;
    width: 100%;
    position: relative;
    padding: 0;
    margin: 0;
    border-bottom: 1px solid #f2f2f2; /* 條目間的極細灰色分割線 */
}

.stellarnav.stellarnav.desktop ul ul li:last-of-type {
    border-bottom: none; /* 最後一個項目不留底線 */
}

/* --- 3. 徹底隱藏切換鈕與原廠右側小箭頭 --- */
.stellarnav.stellarnav.desktop .dd-toggle,
.stellarnav.stellarnav.desktop li li.has-sub > a:after {
    display: none;
}

/* --- 4. 核心文字美學：調降字級、加寬字距與左側裝飾墨線 --- */
.stellarnav.stellarnav.desktop li li a {
    color: #2c2c2c; /* 微深的沉穩炭灰色 */
    font-size: 13px; /* 縮小字級，呈現高階品牌内斂感 */
    font-weight: 400;
    letter-spacing: 2px; /* 加寬字距，仿設計雜誌排版 */
    padding: 12px 0; /* 舒適的垂直呼吸空間 */
    display: block;
    width: 100%;
    position: relative;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 利用 ::before 在文字左側埋入一條 1px 的隱藏幾何墨線 */
.stellarnav.stellarnav.desktop li li a::before {
    content: '';
    position: absolute;
    left: -18px; /* 精準定位於選單左側內緣 */
    top: 50%;
    transform: translateY(-50%) scaleY(0); /* 預設垂直高度為 0 */
    width: 2px; /* 極細的建築感線條 */
    height: 14px;
    background-color: #E6E6E6; /* 高級純黑 */
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    transform-origin: center;
}

/* --- 5. 滑鼠懸停動態：文字右移、幾何線條優雅延伸顯現 --- */
.stellarnav.stellarnav.desktop li li:hover > a {
    color: #1a1a1a; /* 轉為純粹的深黑 */
    padding-left: 8px; /* 文字向右微幅推移，產生空間延伸感 */
}

/* 當滑鼠移入時，左側的 1px 細線會垂直展開（ScaleY 轉為 1） */
.stellarnav.stellarnav.desktop li li:hover > a::before {
    transform: translateY(-50%) scaleY(1);
}

/* --- 6. 第三層子選單：保持相同的俐落窄比例與物理縫隙 --- */
.stellarnav.stellarnav.desktop ul ul ul {
    top: -11px; /* 精準貼齊外層邊框頂端 */
    left: 100%;
    margin-left: 8px; /* 與主下拉選單拉開一個幾何孔隙 */
}

/*footer*/

.footer_info li p.tel2:before {
    display: none;
}
.tel2{
    pointer-events: none;
}
.footer_menu a:nth-of-type(1) {
    display: none;
}

.footer_info li:nth-child(1) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 5px;
    border-bottom: 1px solid #fff;
    padding: 15px 0px 30px 10px;
    width: 80%;
    gap: 5px 50px;
}

.footer_info li:nth-child(2) {
    padding: 0px;
    padding-top: 15px;
}

.footer {
    background: #c4c4c4;
}

.footer_info {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;
    padding: 50px;
}

.footer_info ul {
    width: 80%;
}

.footer_info li p {
    font-size: 12px;
    color: #fff;
}

.footer_info li p a {
     color: #fff;
}

.footer_menu {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

.footer_menu a {
    margin: 0;
    text-align: justify;
    transition: all 0.3s;
    border: none;
    margin-top: 13px;
    color: #fff;
    background: transparent;
    font-size: 12px;
    position: relative;
}

.footer_menu a:before {
    content: '';
    font-size: 10px;
    color: #e1bc90;
    letter-spacing: 1px;
    display: block;
    text-align: justify;
    padding-bottom: 8px;
    text-transform: uppercase;
}


.footer_menu a:hover {
    background: transparent;
    color: #e1bc90;
}

.box_link {
    display: none;
}

.copy {
    background: transparent;
    color: #fff;
    border: none;
    font-size: 10px;
    justify-content: flex-start;
    width: 1300px;
    max-width: 100%;
    margin: auto;
    padding: 20px 50px;
}

.copy a {
    color: #fff;
    transition: all 0.3s;
}

.copy a:hover {
    color: #b51c20;
}

.footer_logo img {
    width: 200px;
}


@media screen and (max-width: 1480px) {
    .footer_menu {
        grid-template-columns: repeat(auto-fit, minmax(min(60px, 100%), 1fr));
    }
}

@media screen and (max-width: 1024px) {

    .footer_info li:nth-child(1) {
        grid-template-columns: 1fr;
    }
    .footer_info li:nth-child(2) {
        padding-top: 35px
    }
}

@media screen and (max-width: 768px) {
        .footer_info {
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .footer_logo img {
        width: 164px;
    }
    .footer_info li:nth-child(1) {
        width: 100%;
    }
    .footer_info li:nth-child(2) {
        width: 100%;
        text-align: center;
    }
    .footer_menu {
        margin: 0;
        gap: 0px 20px;
        justify-content: center;
    }
    .box_link {
        position: relative;
        right: 0;
        top: 0;
        text-align: left;
        padding: 15px 0;
    }
    .copy {
        padding: 8px 3% 0 3%;
        text-align: center;
        border-top: 1px solid #d8d8d8;
        font-size: 9px;
        justify-content: center;
    }
    .footer {
        padding: 40px 0 30px;
    }
    .footer_info {
        flex-direction: column;
    }
    .footer_info ul {
        text-align: center;
        margin: 10px 0;
        border: none
    }
    .footer_logo {
        width: 134px;
        margin: 10px auto;
        margin-bottom: 9px;
        justify-content: center;
    }
    .footer_info li:nth-child(1) {
        border-left: none;
        padding: 0px 0px 30px;
    }
    .footer_info li:nth-child(2) {
        padding: 10px 0px 10px;
    }
    .footer_info {
            padding:40px;
    }

#bottom_menu li a em{
    display: none;
}

#bottom_menu li {
    background: #E6E6E6;
}
#bottom_menu li a i {
    color: #f3eeea;
}

#bottom_menu li a {
    padding: 10px 5px;
}

}


/* 商品下拉超過30個變大 */
.stellarnav.desktop li.bigMenu>ul{display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); left: 0; width: 100%; position: fixed; padding: 20px;}
.stellarnav.desktop li.bigMenu ul ul{top: 100%; left: 0; width: 100%; background: #efefef; height: auto; max-height: 300px; overflow: auto;}
.stellarnav.desktop li.bigMenu ul ul li{margin: 0;} 
.stellarnav.hasBigMenu li.bigMenu li.has-sub > a:after{border-left: 6px solid transparent; border-bottom:unset; border-right: 6px solid transparent; border-top: 6px solid #898989; right: 5px;}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

.main_part {
    height: 500px;
}
.product_page .main_part { max-width:1500px; }

.product_page .show_content,
.product_info_page .show_content { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; align-content: flex-start; width: 100%;}
ul.page { width: 100%;}

.ProdFilter_Item_Show { width: 100%;}
.Prods_Menulists { width: 100%; padding: 0;}
.Prods_Wrap { width: calc(100% - 270px);}

/* 篩選器-左手邊 / 產品分類-上面
.ProdFilter_ { order: 2;}
.Prods_Menulists { order: 1;}
.Prods_Wrap { order: 3;}
.ProdFilter_ { width: 250px; letter-spacing: 1px;}
.ProdFilter_ li { width: 100%;}
.ProdFilter_ li > a { background: #f3f3f3; border: none; border-bottom: 3px #ddd solid;}
.ProdFilter_ dl { position: static; width: 100%; display: block;}
*/

/* 產品分類-左手邊 / 篩選器-上面 */

.ProdFilter_ { order: 1; margin-bottom: 25px;}
.Prods_Menulists { order: 2;}
.Prods_Wrap { order: 3;}
.Prods_Menulists { width: 250px; letter-spacing: 1px;}
.Prods_Menulists ul {}
.Prods_Menulists > ul > li { width: 100%; flex-wrap: wrap;}
.Prods_Menulists ul ul { position: static; border: none;}
.Prods_Menulists ul li ul li {}
.Prods_Menulists li.has-sub.open > a {}

.product_info_page .half_box { width: 100%; float: none; padding-right: 0;}
.product_info_page .half_box li.btn_blankTop { margin-top: 50px; justify-content: space-between; display: flex;}
.product_info_page .half_box li.btn_blankTop input { width: calc(50% - 10px); background-image: none; padding: 0; text-align: center;}

@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 1024px) {
.product_main { display: block; width: 100%;}    
.sidebarBtn { display: block; width: 100%;}
}
@media screen and (max-width: 980px) {
}
@media screen and (max-width: 768px) {
/* 篩選器-左手邊 / 產品分類-上面
.Prods_Wrap { width: 100%;}
.ProdFilter_ { width: 100%;}
.ProdFilter_Item_Show { width: calc(100% - 110px);}
.ProdFilter_ { order: 1;}
.Prods_Menulists { order: 2;}
.ProdFilter_ li > a span { color: #333;}
*/

.Prods_Wrap { width: 100%; margin-top: 20px;}
.ProdFilter_ { width: 100%;}
.Prods_Menulists { opacity: 0; display: none;}

}
@media screen and (max-width: 600px) {
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */

.bannerindex { position: relative; height: auto;}
.bannerindex .swiper-banner { position: relative;}
/*.bannerindex ~ #content_main { margin-top: 0;}*/
@media screen and (max-width: 768px) {
.bannerindex { padding:  0 0;}
}

/*滑動輪播*/
.BannerHome02 { height: auto;}
.BannerHome02 .swiperBan02 { position: static; margin: 0;}
.BannerHome02 .swiperBan02 .swiper-slide img { height: auto;}
/* 2025.12.26 中間放大*/
.BannerHome02 .swiper-slide-active img { transform: scale(1);}
.BannerHome02 .swiperBan02 .swiper-slide img { transition: transform 5s ease-out; will-change: transform; transform: scale(1);}
.BannerHome02 .swiperBan02 .swiper-slide-active img { transform: scale(1.06);}
@media (max-width:1400px) { 
	.BannerHome02 { height: auto;}
}
@media (max-width:1024px) { 
	.BannerHome02 { height: auto;}
}
@media (max-width:768px) { 
	.BannerHome02 { height: auto;}
}

/*縮圖輪播*/
.BannerHome03 .thumbs03 .swiper-slide img { height: 100%;}
@media (max-width:1400px) { 
 .BannerHome03 .swiperBan03 .swiper-slide img { height: 100%;}
}
@media (max-width:1024px) { 
 .BannerHome03 .swiperBan03 .swiper-slide img { height: 100%;}
}
@media (max-width:768px) { 
 .BannerHome03 .swiperBan03 .swiper-slide img { height: 100%;}
}

.bannerindex {
  position: relative;
}

/*.bannerindex .swiper-slide:nth-child(1).swiper-slide-active::before {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
    background: url(https://pic03.eapple.com.tw/wannachange2021/title01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 13%;
    left: 10%;
    width: 17% !important;
    height: 100% !important;
    background-position: left;
    padding-bottom: calc(100% / 1 * 0.12);
    animation: nestFadeInUp 2s cubic-bezier(0.25, 1, 0.5, 1) both;
}

.bannerindex .swiper-slide:nth-child(1).swiper-slide-active::after {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
    background: url(https://pic03.eapple.com.tw//wannachange2021/title02.svg);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -7%;
    left: 10%;
    width: 12% !important;
    height: 100% !important;
    background-position: left;
    padding-bottom: calc(100% / 1 * 0.12);
        animation: nestFadeInUp 2s cubic-bezier(0.25, 1, 0.5, 1) both;
    animation-delay: 0.3s; 
}*/
/*
.bannerindex .swiper-slide:nth-child(2).swiper-slide-active::before {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
    background: url(https://pic03.eapple.com.tw//wannachange2021/title03.svg);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 13%;
    left: 10%;
    width: 17% !important;
    height: 100% !important;
    background-position: left;
    padding-bottom: calc(100% / 1 * 0.12);

  
    animation: nestFadeInUp 2s cubic-bezier(0.25, 1, 0.5, 1) both;
}*/

/*.bannerindex .swiper-slide:nth-child(2).swiper-slide-active::after {
    content: "";
    position: absolute;
    z-index: 999;
    pointer-events: none;
    background: url(https://pic03.eapple.com.tw//wannachange2021/title04.svg);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -7%;
    left: 10%;
    width: 17% !important;
    height: 100% !important;
    background-position: left;
    padding-bottom: calc(100% / 1 * 0.12);
	animation: nestFadeInUp 2s cubic-bezier(0.25, 1, 0.5, 1) both;
    animation-delay: 0.3s; 
}*/


/* 定義優雅進場動畫：漸顯 + 向上微幅平移 */
@keyframes nestFadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px); /* 從下方 20px 處開始 */
    }
    100% {
        opacity: 1;
        transform: translateY(0);    /* 回到原位 */
    }
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*表格排列版面*/
.blank_letter{font-family:"Noto Sans TC", serif;letter-spacing: 1px;font-size: 15px;font-weight: 400;}
.contact_content {padding: 80px 10px 20px;display: flex;justify-content: center;border-top: 1px solid #dadada;}
.contact_form li { grid-template-columns: 1fr; grid-gap: 10px;}
.contact_form li .form__label {display: flex;/* display: block; */max-width: 100%;text-align: left;width: 100%;font-weight: 400;flex-direction: row-reverse;justify-content: flex-end;gap: 3px;font-size: 13px;}
.contact_form  {grid-template-columns: repeat(12, 1fr);grid-gap: 35px 80px;align-items: start;margin: 0;padding-top: 80px;width: 100%;font-family: 'Noto Sans TC';}
.contact_form li {grid-template-columns: 1fr;grid-column: auto / span 6;grid-gap: 10px;}
.contact_form li:nth-child(n+5) { grid-column: auto / span 12;}
.form select {width: 100%;}
.contact_form li:has(input[type=checkbox]) .form__insert, .contact_form li:has(input[type=radio]) .form__insert {display: flex;grid-gap: 5px;font-size: 13px;}
input[type="checkbox"], input[type="radio"] {margin-right: 0px;}

.contact_content .information_left {  display: none;}

.star { padding: 0px;}
.contact_form li input.noborder { border: unset;  border-bottom: 1px solid #b0b0b0; background: transparent;}
.contact_form li textarea.noborder { border: 1px #b0b0b0 solid;  background: transparent;}
@media screen and (max-width: 1200px) {
.contact_content .information_right {width: 100%; padding-left: 0px; padding-top: 50px;}
}


@media screen and (max-width: 900px) {
  .contact_form{grid-gap: 20px;grid-template-columns: 1fr;}
.contact_content .information_left {width: 260px;}
	.contact_form li .form__label{background:transparent;}
	.contact_form li:has(input[type=checkbox]) .form__insert, .contact_form li:has(input[type=radio]) .form__insert{display: grid;}
  .contact_form li.last {
    gap: 10px;
}
}
@media screen and (max-width: 480px) {
  .contact_content .information_right {padding: 50px 0px;}
  .list_before.info li {width: 100%;}
  .contact_form li {grid-gap: 0px;grid-column: auto / span 12;}
  .contact_content {padding: 80px 10px 20px 10px;}
}
/* ==========================================================================
   室內設計美學 - 按鈕專用樣式 (13px, 高細節)
   ========================================================================== */

/* 按鈕容器列：加寬上方邊界，呈現大氣的留白 */
.contact_form.form li.last {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 32px;                /* 拉大按鈕之間的間隔，營造呼吸感 */
  margin-top: 30px;
  border-top: 1px solid #e5e2db; /* 仿清水模/大理石細縫的淡淡分割線 */
  padding-top: 35px;
}

/* 清除內建 <b> 標籤的預設粗體，改用更具現代感的 500 中黑體 */
.contact_form.form li.last b {
  font-weight: 400;
}

/* 通用按鈕基礎 */
.contact_form.form li.last button {
  background: transparent;
  border: none;
  font-size: 13px !important; /* 嚴格遵循 13px 規範 */
  letter-spacing: 2px;       /* 刻意拉開字距，展現高訂氣質 */
  cursor: pointer;
  padding: 0;
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); /* 絲滑的慢速物理動畫 */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  outline: none;
}

/* --------------------------------------------------------------------------
   1. 「重新填寫」按鈕 (極簡低調)
   -------------------------------------------------------------------------- */
button[type="reset"].animated-arrow.otherSty {
  color: #444444;            /* 溫和的泥灰色 */
  position: relative;
  padding: 10px 0;
}

/* 底部優雅細線滑動動效 */
button[type="reset"].animated-arrow.otherSty::after {
  content: '';
  position: absolute;
  bottom: 6px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #E6E6E6;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}

button[type="reset"].animated-arrow.otherSty:hover {
  color: #444444;            /* 懸停時轉為純黑 */
}

button[type="reset"].animated-arrow.otherSty:hover::after {
  transform: scaleX(1);
  transform-origin: left;
  background-color: #E6E6E6;
}

/* --------------------------------------------------------------------------
   2. 「送出」按鈕 (金屬古銅細邊框 / 奢華光影填滿)
   -------------------------------------------------------------------------- */
button[type="submit"].animated-arrow {
  color: #444444;
  border: 1px solid #bfa37a; /* 啞光古銅金（Champagne Bronze）細框 */
  padding: 12px 36px;        /* 寬扁比例，極具當代建築幾何感 */
  background-color: transparent;
  position: relative;
  overflow: hidden;          /* 用於光影填滿動效 */
  z-index: 1;
}

/* 懸停時背景由左至右優雅填滿 (類金屬鍍膜感) */
button[type="submit"].animated-arrow::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #E6E6E6 ; /* 懸浮時注入高雅的墨黑色 */
  z-index: -1;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.45s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 箭頭圖示微調 */
button[type="submit"].animated-arrow i.fa-arrow-right {
  font-size: 11px;
  margin-left: 10px;
  color: #bfa37a;            /* 箭頭維持古銅金色 */
  transition: transform 0.3s ease, color 0.3s ease;
}

/* 懸浮 (Hover) 狀態 */
button[type="submit"].animated-arrow:hover {
  color: #ffffff;            /* 文字優雅轉白 */
  border-color: #E6E6E6;     /* 邊框融入背景 */
}

button[type="submit"].animated-arrow:hover::before {
  transform: scaleX(1);      /* 背景填滿 */
}

button[type="submit"].animated-arrow:hover i.fa-arrow-right {
  color: #ffffff;            /* 箭頭轉白 */
  transform: translateX(4px); /* 箭頭精緻地向右滑動 4px，暗示「送出/前進」 */
}

/* --------------------------------------------------------------------------
   3. 手機版響應式微調
   -------------------------------------------------------------------------- */
@media (max-width: 600px) {
  .contact_form.form li.last {
    display: flex;
    flex-direction: row;     /* 手機版依然維持並排，但更精緻 */
    justify-content: space-between;
    gap: 16px;
    padding-top: 25px;
  }

  button[type="reset"].animated-arrow.otherSty {
    flex: 1;
    text-align: left;
    padding-left: 8px;
  }

  button[type="submit"].animated-arrow {
    flex: 2;                 /* 讓主要動作按鈕稍微顯眼一點 */
    padding: 12px 20px;
  }
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


.banner {
display: none;
}

.banner h5 {
display: none;
}
/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*文章A*/
h5.blog_le_t em {
    font-family: "Noto Sans TC", serif;
}
h5.blog_le_t {
    display: flex;
    flex-direction: column;
    align-items: center;
}
h5.blog_le_t span {
display: none;
}
.news_related{display: none;}
.submenu {background: #ffffff;}
.blog_page.article_a .blog_box {
    padding: 10px 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.h4.blog_category_title {display: none;}
.blog_page.article_a .blog_le {padding: 36px 0 0;}
.blog_page.article_a .blog_le, .blog_ri {margin-bottom: 1vw;}
.blog_page.article_a .blog_subbox {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 0px;
}
.blog_page.article_a .blog_box:after, .blog_box:before, .blog_subbox:before {content: none;}
.blog_page.article_a .subbox_item {
    width: 100%;
    margin: 0;
    padding: 36px;
    background: #fff;
}
.blog_page.article_a .subbox_item a {
    display: flex;
    flex-flow: row wrap;
    flex-wrap: nowrap;
    justify-content: center;
}
.blog_page.article_a .blog_list_le {
    width: auto;
    padding: 0;
    height: auto;
    aspect-ratio: 7/5;
    overflow: hidden;
    position: relative;
    border-radius: 10px;
}
.blog_page.article_a .blog_list_le img {
    min-width: 100%;
    display: block;
    width: 300px;
    margin: 0 auto;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: all 1.2s ease;
    max-width: 100%;
}
.blog_page.article_a .subbox_item a:hover .blog_list_le img{
    transform: scale(1.1);
    transition: all .6s ease;
}
.blog_page.article_a .blog_list_ri {
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    padding: 10px 0px;
    width: calc(100% - 305px);
    position: relative;
}
.blog_page.article_a .blog_list_ri h5 {
    color: #353535;
    font-weight: 400;
}
.blog_page.article_a .blog_list_ri em {
    order: 1;
    font-weight: 400;
    margin: 0;
    color: #afafaf;
    position: relative;
}
.blog_page.article_a .blog_list_ri p {
    line-height: 175%;
    margin: 16px 0;
    -webkit-line-clamp: 2;
    text-align: justify;
}
.blog_page.article_a .subbox_item a:hover .blog_list_ri em:after {letter-spacing: 1.6px;}
.blog_page.article_a .subbox_item a:before, .subbox_item a:after {content: none;}
.blog_le .accordion {border:none;border-radius: 0px;}
.accordion li .link {
    padding: 0px 16px;
    color: #746e6a;
    font-weight: 400;
    font-size: 15px;
    letter-spacing: 1px;
}
.accordion li .link, .accordion li:last-of-type {border-bottom: none;}
.accordion li {
    border-bottom: 1px solid #636363;
    transition: all 0.3s ease;
}
.blog_le .accordion > li:hover, .blog_le .accordion > li.open:hover,
.blog_le .accordion > li.on_this_category:hover {
    background: transparent !important;
}
.blog_le .accordion > li.open, .blog_le .accordion > li.on_this_category {
    background: transparent !important;
}
.blog_le .accordion > li.open .link a, .blog_le .accordion > li.open .link i {
    color: #404040 !important;
}
.blog_page.article_a .accordion li .link i, .accordion li .link a {
    color: #444 !important;
}
.blog_le .accordion > li:hover .link a, .blog_le .accordion > li.on_this_category .link a {
    color: #444 !important;
}
.accordion li .link a {
    font-size: 14px;
    font-weight: 400;
    font-family: "Noto Sans TC", sans-serif;
}
.blog_page.article_a .submenu {background: transparent;font-size: 14px;}
.blog_page.article_a .submenu a {
    color: #848484;
    letter-spacing: 0;
    font-weight: 400;
    padding: 14px 14px 12px 40px;
    border-left: #FFF 0 solid;
    transition: all .15s;
    background: transparent;
    letter-spacing: 1px;
    font-family: "Noto Sans TC", sans-serif;
}
.blog_page.article_a .submenu a:before {
    top: 13.5px;
    left: 16px;
    font-weight:var(--fa-style, 900);
}
.blog_page.article_a .submenu a:hover {
    background: transparent;
    color: #787878;
    border-left: transparent 8px solid;
}

.blog_page.article_a .blog_search input[type=search] {
    font-size: 13px;
    border-radius: 0;
    border: 1px solid #ccc;
}
.blog_page.article_a .blog_search input[type=submit] {
    height: 36px;
    /* 修正: 數值改為0-1之間 */
    filter: grayscale(1);
}
.submenu li.on_this_category a, .submenu a:hover {
    background: transparent;
    color: #4b4b4b;
    padding-left: 40px;
}
.accordion li+li .link {
    border-top: none;
}
.blog_le .accordion > li:hover .link i, .blog_le .accordion > li.on_this_category .link i {
color: #444;
}
.blog_le .submenu {
    background: transparent;
}
/*內頁*/
.edit {
    font-weight: 400;
    letter-spacing: 1px;
    color: #444;
    min-height: 0;
}
.blog_in_page h4.blog_category_title {
    display: block;
    border-bottom: 1px #9f9f9f solid;
    padding: 0 0 18px;
    margin-bottom: 20px;
    letter-spacing: 2px;
    font-size: 24px;
    color: #373737;
    font-weight: 400;
}
.blog_le .submenu li.on_this_category a, .submenu a:hover {
    background: transparent;
    color: #909090;
}
.blog_le .submenu a {
    font-family: "Noto Sans TC", sans-serif;
}
.blog_page.article_a .blog_in_page .blog_ri {padding-top: 36px;}
.blog_page.article_a .blog_box_edit * {line-height: 175%;}
.blog_page.article_a .blog_box_edit {
    font-size: 16px;
    color: #666;
}
.blog_page.article_a .blog_back {
    width: 100%;
    margin: 30px auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 10px;
    justify-content: center;
}
.blog_back a {width: 100%;transition: all .3s ease;}
.blog_back a.article_btn_next , .blog_back a.article_btn_prev, .blog_back a.article_btn_back {
    background: transparent;
    color: #4c3e31;
    border: 1px solid #d2d2d2;
    font-size: 14px;
}
.blog_back a:hover {background: #f0f0f0!important;color: #222222;}
.blog_back {
    grid-gap: 16px;
}


/* --- 1. 核心修正：強制文字與加號並排在同一行，並拉開到兩端 --- */
.accordion li .link {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100%;
    box-sizing: border-box;
}

/* --- 2. 圖示基礎定位設定 --- */
.blog_page.article_a .accordion li .link i {
    font-size: 0 !important; /* 隱藏原本樣式 */
    width: 12px;
    height: 12px;
    position: relative;
    display: inline-block !important; /* 確保維持區塊形態 */
    flex-shrink: 0; /* 防止圖示被文字擠壓變形 */
}

/* --- 3. 繪製「加減號 (+ / -)」幾何動態 --- */
.blog_page.article_a .accordion li .link i::before,
.blog_page.article_a .accordion li .link i::after {
    content: '';
    position: absolute;
    background-color: #1a1a1a;
    transition: transform 0.4s ease, opacity 0.4s ease;
}

.blog_page.article_a .accordion li .link i::before {
    top: 5px; 
    left: 0; 
    width: 12px; 
    height: 1px; /* 水平線 */
}

.blog_page.article_a .accordion li .link i::after {
    top: 0; 
    left: 5px; 
    width: 1px; 
    height: 12px; /* 垂直線 */
}

/* --- 4. 當選單展開時 (.open)，垂直線優雅轉化為減號 (-) --- */
/* 這裡擴充了選取器，確保在有 .open 類別時一定能觸發動態 */
.blog_page.article_a .accordion li.open .link i::after,
.blog_le .accordion > li.open .link i::after {
    transform: rotate(90deg);
    opacity: 0;
}

@media screen and (max-width: 1024px) {

.blog_page.article_a .module_i_news ul{grid-template-columns:1fr 1fr;}
.blog_page.article_a .blog_list_ri, .blog_list_le {width: 100%;}
.blog_page.article_a .blog_list_ri {padding: 16px;}
.blog_page.article_a .blog_box_edit {font-size: 15px;}
.blog_page.article_a .subbox_item a {
    display: flex;
    flex-wrap: wrap;
    
}

}

@media screen and (max-width: 980px) {
.blog_page.article_a .blog_subbox{grid-template-columns:1fr;}
}

@media screen and (max-width: 768px){
.blog_page.article_a h5.blog_le_t {display: block;}
.h4.blog_category_title{font-size: 24px;}
.h4.blog_category_title span{font-size: 20px;}
.blog_page.article_a .blog_le,.blog_page.article_a .blog_ri {margin-bottom: 0;}
.blog_page.article_a .blog_ri {padding: 0;width: 100%;}
.blog_page.article_a .subbox_item {padding: 32px 0 12px;}
.blog_page.article_a .blog_list_ri p {
line-height: 160%;
margin: 12px 0 16px;
-webkit-line-clamp: 3;
font-size: 14px;
}
.blog_page.article_a .subbox_item:first-of-type {padding-top:18px;}
.blog_page.article_a .blog_le {padding: 22px 0 0;}
.blog_in_page h4.blog_category_title {font-size: 20px;}
.blog_page.article_a .blog_in_page .blog_ri {padding: 16px 0 0 0;}
.blog_page.article_a .blog_list_ri h5 {
font-size: 19px;}

}

@media screen and (max-width: 600px){
.blog_page.article_a .module_i_news ul , .blog_subbox{grid-template-columns:1fr;}
.h4.blog_category_title{font-size: 20px;}
.h4.blog_category_title span{font-size: 18px;}


.blog_page.article_a .blog_list_le {
    width: auto;
}
}


/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*作品*/

.ProjSwiper li img {
    top: 50%;
    transform: translate(-50%, -50%) scale(1);
    width: 100%;
}

.ProjSwiper li > a:hover img {
    transform: translate(-50%, -50%) scale(1.2);
}


.module_i_projects {
    background: #f8f7f3;
}
.module_i_projects .title_i_box{display: none;}


.animated-arrow {
    background: #ffffff;
    color: #444444;
    border: 1px #cccccc solid;
    margin-top: 20px;
    width: 160px;
    height: 40px;
    line-height: 40px;
}

.animated-arrow b {
    font-weight: 400;
    font-size: 13px;
}


/* 原本的 h4 樣式 */
.ProjsDetail_Title h4 {
    font-weight: 400;
    letter-spacing: 2px;



/* --------------------------------------------------
   1. 卡片外框與基礎佈局設定
-------------------------------------------------- */
.StoreProjs_Post li {
    list-style: none;
    margin-bottom: 30px;
}

.StoreProjs_Post li a {
    position: relative;
    display: block;
    overflow: hidden; /* 確保圖片放大時不會溢出容器 */
    border-radius: 4px; /* 微圓角，增加細緻度 */
    text-decoration: none;
}

/* --------------------------------------------------
   2. 圖片緩慢放大效果（模擬鏡頭推進感）
-------------------------------------------------- */
.StoreProjs_Post li a img.responsive-img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1); /* 流暢的貝茲曲線 */
    will-change: transform;
    top: 50%;
    transform: translate(-50%,-50%) scale(1);
}

.StoreProjs_Post li a:hover img.responsive-img {
    top: 50%;
    transform: translate(-50%,-50%) scale(1);
}

/* --------------------------------------------------
   3. 暗色遮罩與文字層（Section）
-------------------------------------------------- */
.StoreProjs_Post li a section {
display: none;
}


/* --------------------------------------------------
   4. 文字內容（h6, strong, em）動態與字體設計
-------------------------------------------------- */
.StoreProjs_Post li a section h6 {
    color: #ffffff;
    margin: 0;
    text-align: center;
    
    /* 動畫起點：往下偏移 15px */
    transform: translateY(15px);
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

.StoreProjs_Post li a:hover section h6 {
    transform: translateY(0); /* Hover 時滑回原位 */
}

/* 規格與分類資訊 (strong) */
.StoreProjs_Post li a section h6 strong {
    display: block;
    font-weight: 300; /* 細體字更顯簡約 */
    font-size: 13px;
    letter-spacing: 2px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.9);
}

/* 瀏覽次數 (em) */
.StoreProjs_Post li a section h6 em {
    display: inline-block;
    font-style: normal;
    font-size: 11px;
    letter-spacing: 1.5px;
    color: rgba(255, 255, 255, 0.6);
    margin-top: 12px;
    padding: 3px 12px;
    border: 1px solid rgba(255, 255, 255, 0.25); /* 極細透光邊框 */
    border-radius: 20px;
}

/* --------------------------------------------------
   5. 下方主標題 (h4) 微動效
-------------------------------------------------- */
.StoreProjs_Post li h4 {
    font-size: 16px;
    font-weight: 400;
    color: #222222;
    margin-top: 14px;
    letter-spacing: 1.5px;
    transition: color 0.3s ease;
}

.StoreProjs_Post li:hover h4 {
    color: #888888; /* 懸停時主標題變灰 */
}

/* --------------------------------------------------
   1. 輪播卡片外框與基礎佈局
-------------------------------------------------- */
.ProjSwiper li > a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 4px;
    text-decoration: none;
}

/* --------------------------------------------------
   2. 圖片微放大效果
-------------------------------------------------- */
.ProjSwiper li > a img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
}

.ProjSwiper li > a:hover img {
     /* 微幅放大 5% */
}

.ProjSwiper li > a section {
    inset: 0;
    background: linear-gradient(
        to top, 
        rgba(15, 15, 15, 0.85) 0%, 
        rgba(15, 15, 15, 0.4) 60%, 
        rgba(15, 15, 15, 0.1) 100%
    );
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 20px;
    box-sizing: border-box;

    /* 預設隱藏 */
    opacity: 0;
    backdrop-filter: blur(2px);

    /* 修正關鍵：明確指定 opacity，並加入 cubic-bezier 讓退回時同樣順暢 */
    
    
    /* 預先防範繪圖卡頓 */
    will-change: opacity;
    align-content: flex-start;
    flex-direction: column;
}

.ProjSwiper li > a:hover section {
    opacity: 1;
}

/* --------------------------------------------------
   2. 標題與規格資訊 (h6)：強制 3D 渲染層避免跳動
-------------------------------------------------- */
.ProjSwiper li > a section h6 {
    color: #ffffff;
    margin: 0;
    text-align: center;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 2.5px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    transform: translate3d(0, 15px, 0);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
}

/* Hover 進入狀態 */
.ProjSwiper li > a:hover section h6 {
    transform: translate3d(0, 0, 0);
}

/* 規格詳細資訊 (strong) */
.ProjSwiper li > a section h6 strong {
    font-size: 12px;                          /* 規格字體縮小，建立大小對比 */
    font-weight: 300;                         /* 細體字 */
    letter-spacing: 2px;                      /* 增加字距質感 */
    color: rgba(255, 255, 255, 0.75);         /* 微調透明度，凸顯主標題 */
    border-top: 1px solid rgba(255, 255, 255, 0.2); /* 加一條極細分隔線 */
    padding-top: 10px;
    margin-top: 4px;
    width: 100%;
    max-width: 240px;                         /* 控制分隔線長度 */
}
.ProjSwiper li > a:after{display: none;}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */


/*相簿****************************/

/*首頁相簿*/

.module_i_album {
    background: url(https://pic03.eapple.com.tw/luspacedesign/bg.jpg) no-repeat center center;
    background-size: cover; position: relative;
}
.module_i_album .title_i_box { display: none;}

/***/

.show-list .item { position: relative;}
.show-list .show_pic {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.show-list li p { display: flex; justify-content: center; align-items: center; box-sizing: border-box;
    position: absolute; left: 0; bottom: 0;
    color: #1a1a1a; font-weight: 400; letter-spacing: 1px; text-align: center; background: #ffffff94; 
	padding: 3px 10px; width: 100%; height: 40px; 
	transition: all 0.3s ease-in-out;    
}
.show-list li:hover p {
    color: #000;
    height: 100%;
    background: #ffffffb4;
}

.subalbum-menu h2 { 
	display: none;
}
.album_fixed_title { 
	color: #fff; 
	background: transparent;
}
.overlay { 
	display: none;
}
.show-list .item:hover .overlay {}

@media screen and (max-width: 600px) {
	.show_content {
		padding: 0 0;
	}	
	.show-list {
		grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	}
}


/*瀑布流*/

ul.show-list,
.other_subalbum {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.pic-list .show_pic img {
    display: block;
    position: relative;
    transform: unset;
    left: 0;
    top: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: unset;
    margin-top: 10px;
    border-radius: 20px;
}

.pic-list .show_pic {
    aspect-ratio: auto;
}

.pic-list {
    display: block;
    column-count: 3;
    column-gap: 10px;
}

.pic-list .item h6 {
    display: none;
}

.album_info_page .main_part {
    max-width: 1500px;
}

/*觀看更多*/

.other_album_choice {
    margin: 7px auto 30px;
}

@media screen and (max-width: 768px) {
    ul.show-list, .other_subalbum {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.pic-list {
    column-count: 2;
}
}

/* = = = 分隔線 = = = = = = = = = == = = = = = = = = = = = = = = == = = */





@media screen and (max-width: 768px) {
/* 開啟手機板下方按鈕所需設定 */
#bottom_menu {display: flex;}
.footer.with_shopping_mode { padding:30px 0 70px; }
#to_top { display: none !important;}
    .stellarnav.mobile {
        top: 15px;
    }
    .stellarnav > ul > li > a:before{display: none;}
.stellarnav .menu-toggle span.bars span {
    height: 2px;
    background: #fff;
}
.stellarnav li li > a, .stellarnav li li.has-sub > a {
    padding: 8px 9px 8px 20px;
        border-left: 1px solid #E6E6E6;
    margin-left: 30px;
}
.stellarnav .menu-toggle:after{display: none;}
.stellarnav.mobile li.open li.open {
    padding: 0px;
    background: #E6E6E6;
}
.stellarnav.mobile.right .close-menu, .stellarnav.mobile.left .close-menu {
    background: #f8f7f3;
}
    .stellarnav.mobile li.open {
        background: #E6E6E6;
        padding: 20px;
    }
  .stellarnav.mobile ul ul ul {
    margin-left: 30px;
  }

    .stellarnav.mobile > ul > li > a {
        display: flex;
        align-items: flex-start;
        border: none;
        flex-direction: column;
    }
    .stellarnav.mobile li a {
    font-size: 13px;
}
.stellarnav.mobile ul {
    background: #f8f7f3;
}
.stellarnav > ul > li > a b:nth-of-type(2) {
    font-size: 8px;
}
.stellarnav.mobile li li.has-sub a {
        padding: 8px 9px 8px 20px;}

.stellarnav.mobile.left > ul {
top: -1px; 
background: #E6E6E6;
}
.stellarnav.mobile > ul > li {
    padding: 20px;
}

.stellarnav.mobile > ul > li > a.dd-toggle {
    top: 20px;
}

.stellarnav a.dd-toggle .icon-plus:after,.stellarnav a.dd-toggle .icon-plus:before {
    border-bottom: solid 2px #fff;
}

}

@media screen and (max-width: 570px) { 

        .stellarnav.mobile {
        top: 26px;
    }

}


