body {
  /* Google Fonts 思源宋體 */
  font-family: 'Noto Sans TC', sans-serif;
  color: #595856;
}
 .text_en{	 
	font-family: 'Playfair Display', serif; 
 }
/* 初始透明導覽列 */
.navbar-custom {
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: background 0.6s ease, padding 0.6s ease;
  padding: 1rem 0;
}
@media (max-width: 800px) {
  .navbar-custom {
  padding:0 0 5px 0;
}
}

/* 滾動後固定導覽列 */
.navbar-custom.scrolled {
  position: fixed;
  background: rgba(0, 0, 0, 0.8); /* 滾動後變深色 */
  padding: 0.5rem 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.floating-buttons {
  position: fixed;
  bottom: 30px;
  right: 20px;
  gap: 5px; /* 按鈕間距 */
  z-index: 999;
}

/* 按鈕樣式 */
.float-btn {
  background: rgba(35, 35, 35, 0.7); /* 半透明 */
  color: #fff;
  border: none;
  width: 40px;
  height: 40px;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.3s, color 0.3s;
}

/* hover 效果 */
.float-btn:hover {
  background: rgba(35, 35, 35, 1); /* 半透明 */
}
 /* LOGO 縮放 */
	.navbar-brand img {
	  height: 30px;
	  width: auto;
	}

	@media (max-width: 800px) {
	  .navbar-brand img {
		height: 20px; /* 手機版縮小 */
	  }
	}
   /* menu */	  
    /* 透明導覽列 */
    .navbar-custom {
      background: rgba(0, 0, 0, 0.3);
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 10;
    }

    /* 導覽列文字 */
    .navbar-dark .navbar-nav .nav-link {
      color: rgba(255, 255, 255, 1);
      font-size: 16px;
		padding: 0 20px;
    }

    /* 搜尋欄桌面版 */
    .navbar .form-control {
      background: rgba(255, 255, 255, 0.8);
      border: none;
    }

    /* 輪播圖片全螢幕 */
    .carousel-item img {
      height: 100vh;
      object-fit: cover;
    }

    /* 桌面解析度字體大小調整 */
    @media (max-width: 1550.98px) {
      .navbar-dark .navbar-nav .nav-link {
        font-size: 14px;
		padding: 0 10px;
      }
    }
    @media (max-width: 991.98px) {
      .navbar-dark .navbar-nav .nav-link {
        font-size: 15px;
      }
    }

    /* 手機版右側語系 + 漢堡排列 */
    @media (max-width: 991.98px) {
      .navbar-right {
        display: flex;
        align-items: center;
        gap: 0.5rem;
      }
    }

    /* 漢堡按鈕樣式 */
    .hamburger {
      background: none;
      border: none;
      padding: 0;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      width: 24px;
      cursor: pointer;
    }

    .hamburger span {
      display: block;
      height: 2px;
      background: #fff;
      border-radius: 2px;
      transition: 0.3s ease;
    }
	/* 手機側邊選單整體透明質感 */
	  .offcanvas{
	  background: rgba(0, 0, 0, 0.5); /* 半透明黑色背景 */  
	  }
	.mobile-menu .offcanvas-header,
	.mobile-menu .offcanvas-body {
	
	  backdrop-filter: blur(10px); /* 毛玻璃效果 */
	}

	/* 去掉標題區的底線 */
	.mobile-menu .offcanvas-header {
	  border-bottom: none;
	}

	/* 選單項目排列 */
	.mobile-nav {
	  list-style: none;
	 padding: 0 10px;
	  margin: 0;
	  display: flex;
	  flex-direction: column;
	  gap: 0.2rem;
	}

	.mobile-nav .nav-link {
	  color: #fff;
	  font-size: 1.1rem;
	  font-weight: 500;
	  padding: 0.5rem 0;
	  transition: all 0.3s ease;
	  border-radius: 6px;
	}

	.mobile-nav .nav-link:hover,
	.mobile-nav .nav-link:active {
	  background: rgba(255, 255, 255, 0.1);
	  padding-left: 0.8rem;
	}
	  /* 手機側邊選單 X 改白色 */
	.mobile-menu .btn-close {
	  filter: invert(1); /* 將 X 反色成白色 */
	}
	  
	
/* menu */	 

/* 語系按鈕樣式 */
.lang-btn {
  background: none !important;   /* 無背景 */
  border: none !important;       /* 無邊框 */
  color: #fff ;                   /* 預設白色 */
  font-size: 16px;
  padding: 0;
}

/* 移除預設下拉箭頭 */
.lang-btn::after {
  display: none !important;
}

/* hover 效果：只改文字顏色 */
.lang-btn:hover,
.lang-btn:focus {
  color: #f0c04a; /* hover 變色 */
  background: none !important;
  box-shadow: none !important;
}

/* 下拉選單 */
.lang-menu {
  background: transparent;   /* 整體透明，靠子元素背景 */
  border-radius: 0;
  border: none;
  padding: 0;
  margin-top: 5px; /* 與按鈕的距離 */
  text-align: right;
}

/* 下拉項目 */
.lang-menu .dropdown-item {
  color: #fff;
  padding: 10px 16px;
  background: #232323;
  margin-bottom: 2px;   /* 留出縫隙 */
  border-radius: 0;
  font-weight: bold;
  transition: background 0.3s;
}

/* 最後一個不要空隙 */
.lang-menu .dropdown-item:last-child {
  margin-bottom: 0;
}

/* hover 效果 */
.lang-menu .dropdown-item:hover {
  background: #000;
}
/* 語系按鈕樣式 */
/* Modal選單花色總覽 */
.modal-body {
    padding: 0px;
}
@media (min-width: 576px) {
    .modal-dialog {
        max-width: 1920px;
        margin: 0px auto;
    }
	.modal-header {
		border-bottom: 0px;
	}
}

.menubg-container {
  max-width: 1920px;
  margin: 0 auto;
  background-image: url('./images/bg/menu_bg.jpg'); /* ← 你的圖片路徑 */
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100%; /* 高度100%、寬度等比例 */
  background-color: #ffffff; /* 可加背景色補空白 */

}

.product-img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.product-box {
  width: 20%; /* 每列 5 個 */
  padding: 0.5rem;
  overflow: hidden;	
  cursor:pointer;
}
.product-hover {
  position: relative;
}

.product-hover::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 黑色半透明 */
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1;
}

.overlay-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 16px;
  text-align: center;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  width: 100%; /* ★ 關鍵：讓它寬一點 */
}

/* 滑鼠移入效果 */
.product-hover:hover::after {
  opacity: 1;
}

.product-hover:hover .overlay-text {
  opacity: 1;
}


.product-text-box {
  position: relative;
  width: 20%;
  padding: 0.5rem;
  margin-top: 40px;
  right: -80px;
}
.product-text_en {
	font-size: 40px;
}
.product-text_ch {
	font-size: 30px;
}
.product-text {
  color: #9c6b3c;
 font-weight: 300;
}

@media (max-width: 1280px) {
	.menubg-container {
	  background-image: url(''); /* ← 你的圖片路徑 */

	}
	.product-text-box {
	  margin-top: 40px;
	  right: 0px;
	}
	.product-text_en {
	font-size: 30px;
	}
	.product-text_ch {
		font-size: 25px;
	}
}

@media (max-width: 850px) {			
  .product-box,
  .product-text-box {
	width: 50%; /* RWD：小螢幕每列 2 個 */
  }
  .product-text-box {
	  margin-top: 40px;
	  right: 0px;
	}
	.product-text_en {
	font-size: 25px;
	}
	.product-text_ch {
		font-size: 20px;
	}	
		}
/* Modal選單花色總覽 */
/* 產品花色*/
.btn-download {
  display: inline-block;
  padding: 10px 40px;          /* 上下內距 0.8em，左右 2em */
  color: #fff;                  /* 白色文字 */
  border: 2px solid #fff;       /* 白色邊框 */
  background-color: rgba(255, 255, 255, 0); /* 透明背景 */
  text-decoration: none;        /* 去掉底線 */
  font-size: 1.2rem;            /* 文字大小 */
  border-radius: 50px;           /* 圓角 */
  transition: all 0.3s ease;    /* 滑鼠滑過效果 */
}

.btn-download:hover {
  background-color: rgba(255, 255, 255, 0.2); /* 滑過時稍微亮背景 */
  color: #fff;
}
.custom-section {
  background-image: url(images/bg/bg_01.jpg);
  padding: 50px 20px;   /* 預設桌機 */
}

@media (max-width: 576px) {
  .custom-section {
    padding: 30px 20px; /* 手機 */
  }
}
/* 產品花色*/

/* 九宮格*/
.grid-index-container {
  padding: 0;
}
.grid-index-item {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.grid-index-item img {
  width: 100%;
  display: block;
}
/* 圖片下方文字黑底 */
.grid-index-item .caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: rgba(0,0,0,0.5);
  color: #fff;
  text-align: center;
  padding: 20px 0;
  font-size: 1rem;
  transition: all 0.3s ease;
}
/* 滑鼠移入覆蓋整格 */
.grid-index-item .overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.65);
  color: #fff;
  opacity: 0;
  transition: opacity 0.4s ease;
  padding: 20px;
}
.grid-index-item:hover .overlay {
  opacity: 1;
}

/* 紫底 VIEW PRODUCTS */
.overlay .btn-view {
  position: absolute;
  top: 15%;   /* 往下偏移 */
  left: 0;    /* 緊貼左邊 */
  background: #62678C;
  color: #fff;
  padding: 30px 60px;
  font-size: 0.9rem;
  text-transform: uppercase;
  font-weight: 600;
  display: inline-block;
}

/* 文字段落在紫底下方 */
.overlay .text-block {
  margin-top: calc(25% + 50px); /* 確保在紫底下方，50px 是紫底高度可調整 */
}
.overlay .text-block p {
  margin: 0 0 8px;
  font-size: 0.95rem;
  line-height: 1.5;
  padding: 0px 30px;
}

/* 移除格子間間距 */
.row.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.row.no-gutters > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}
	/* 只在桌機有 hover 效果 */
@media (max-width: 768px) {
.grid-index-item .overlay p {
display: none !important;
}
.grid-index-item .caption {     
  padding: 10px 0;
}
/* 紫底 VIEW PRODUCTS */
.overlay .btn-view {
  padding: 10px 20px;
}
}
/* 九宮格*/

/* 產品選色系統*/
 .banner-section {
  position: relative;
  overflow: hidden;
  height: 645px; /* 固定高度，可依需求調整 */
  background: url("./images/index/select_color.jpg") right center / cover no-repeat;
}
  .banner-content {
    position: absolute;
    top: 50%;
    right: 15%;
    transform: translateY(-50%);
    max-width: 360px;
    font-size: 1.25rem;
  }
  .text-brown {
    color: #8c6b44;
  }
   .text-tt {
	font-size: 2.5rem;
	padding-bottom: 20px;
  }
  .text-tt2 {
	font-size: 2.0rem;
	padding-bottom: 20px;
  }
 .text-tt3 {
	font-size: 1.5rem;
  }
  .btn-brown {
    background-color: #8c6b44;
	letter-spacing: 5px;   /* 標題字距加寬 */
    color: #fff;
    border-radius: 50px;
    text-decoration: none;
  }
  .btn-brown:hover {
    background-color: #6e5234;
    color: #fff;
  } 
/* 產品選色系統*/


/* footer*/
.footer_bg{
	background: #595856;
}
.footer_bg2{
	background: #f0f0f0;
}
.btn-footer {
	color: #8a8a8a;
	background-color: #1e1e1e;
	border-color: #1e1e1e;
	border-radius: 0rem;
	padding: 7px 5px;
}
.btn-footer:hover {
	color: #bcbcbc;
	background-color: #646464;
	border-color: #646464;
}
.btn-footer_ch {
	color: #bcbcbc;
	background-color: #646464;
	border-color: #646464;
	border-radius: 0rem;
	padding: 7px 5px;
}
.btn-footer_ch:hover {
	color: #bcbcbc;
	background-color: #646464;
	border-color: #646464;
	border-radius: 0rem;
	padding: 7px 5px;
}
.txt_footer{
	 font-size: 14px;
	 color: #bcbcbc;
 }
 .a_gl:link {
color: #bcbcbc !important;
text-decoration: none;
}

.a_gl:visited {
	color: #bcbcbc !important;
	text-decoration: none;
}

.a_gl:active {
	color: #bcbcbc !important;
	text-decoration: none;
}

.a_gl:hover {
	color: #fff !important;
	text-decoration:none;
}

.a_bk:link {
color: #505050 !important;
text-decoration: none;
}

.a_bk:visited {
	color: #505050 !important;
	text-decoration: none;
}

.a_bk:active {
	color: #505050 !important;
	text-decoration: none;
}

.a_bk:hover {
	color: #505050 !important;
	text-decoration:underline;
}


.line_footer{
 border-bottom: 1px solid #bcbcbc;
 max-width: 320px;
 padding: 10px 0;
}

@media (max-width: 991px) {
	.txt_footer{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	 .line_footer{
		width: 100%;
	}
	.line_footer2{
		 max-width: 320px;
		 padding: 10px 0;
		 width: 100%;
	}
}
@media (max-width: 768px) {
	.text-tt {
		font-size: 2rem;
		padding-bottom: 20px;
	}
	.text-tt2 {
		font-size: 1.5rem;
		padding-bottom: 20px;
	  }
	.text-tt3 {
	font-size: 1.2rem;
  }
	.txt_footer{
		font-size: 13px;
	}
	.line_footer2{
		padding: 0;
	}	
}
/* footer*/

.body_bg_gl{
	background: #ebeae9;
}		
.container_1440{
	 max-width: 1440px;
	 padding: 20px 
}
.container_1000{
	 max-width: 1000px;
	 padding: 20px 
}
.container_1280{
	 max-width: 1280px;
	 padding: 20px 
}
.container_1600{
	 max-width: 1600px;
	 padding: 20px 
}
.txt_banner_tt {
  font-size: 65px;  /* 預設給桌機 */
  font-weight: 600;
}

.about-banner p {
  font-size: 14px;
}

.banner-text {
  margin: 0 200px;   /* 預設給桌機 */
  max-width: 1200px;
  color: #fff;
}
.about_txt{
	font-size: 24px;
	line-height: 180%;
}

/* 內頁banner */
.about-banner {
  position: relative;
  overflow: hidden;
  min-height: 600px; /* 桌機 */
  background: url("./images/banner/about.jpg") center center / cover no-repeat;
}
.contact-banner { 
  min-height: 400px !important; 
}
.privacy-banner {
  position: relative;
  overflow: hidden;
  min-height: 400px; /* 桌機 */
  background: url("./images/banner/privacy.jpg") center center / cover no-repeat;
}
/* 平板 (小於等於1199px) */
@media (max-width: 1199px) {
  .banner-text {
     margin: 0 120px;
  }
  .txt_banner_tt {	 
	font-size: 45px;
	font-weight: 600;
  }
  .about-banner {
    min-height: 450px;
  }
  .contact-banner { 
    min-height: 300px !important; 
  }
  .privacy-banner {
    min-height: 300px;
  }
  .about_txt{
	font-size: 20px;
	line-height: 180%;
  }
}

/* 手機 (小於等於767px) */
@media (max-width: 767px) {
  .banner-text {
     margin: 0 20px;
  }
  .txt_banner_tt { 
	font-size: 30px;
	font-weight: 600;
  }
  .about-banner {
    min-height: 300px;
  }
  .contact-banner { 
    min-height: 300px !important; 
  }
  .privacy-banner {
    min-height: 250px;
  }
  .about_txt{
	font-size: 18px;
	line-height: 180%;
  }
	
}

.menu_tag{
	margin-top: 80px;
}
	
/* 手機 (小於等於767px) */
@media (max-width: 767px) {
	.btn-lg {
	  width: 120px;
	  padding: 8px 15px;
	  font-size: 1rem;
	}
	.menu_tag{
		margin-top: 45px;
	}
}
	
.link-more {
  color: #595856;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}
.link-more::after {
  content: "　→";
  display: inline-block;
  transition: transform 0.3s ease;
}
.link-more:hover {
  color: #595856;
}
.link-more:hover::after {
  transform: translateX(6px);
}
.link-more_pk {
  color: #ec5f99;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}
.link-more_pk::after {
  content: "　→";
  display: inline-block;
  transition: transform 0.3s ease;
}
.link-more_pk:hover {
  color: #ec5f99;
}
.link-more_pk:hover::after {
  transform: translateX(6px);
}
/* 圖片保持正常顯示 */
.image-link img {
  position: relative;
  height: auto;
  transition: transform 0.3s ease;
}
.image-link  {
  color: #3c3c3c;
  text-decoration: none;
  position: relative;
}
.image-link:hover img {
  top:2px;
}
.image-link:hover  {
  color: #3c3c3c;
  text-decoration: none;
  top:2px;
}

hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
	background:#3c3c3c;
    border: 0;
    opacity: .25;
}
.zoom-icon {
	position: absolute;
	bottom: 10px;   /* 調整距離圖片底部 */
	left: 10px;     /* 調整距離圖片左邊 */
	width: 35px;
	height: 35px;
	border-radius: 50%;
	background: rgba(128,128,128,0.85); /* 灰色圓圈 */
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ccc;    /* icon 白色 */
	font-size: 16px;
}
.link-slide {
  display: inline-block;
  color: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
}

.link-slide:hover {
  color: #fff;
  transform: translateX(5px);
}
					
/* 總容器設定 */
a.position-relative.d-block {
  overflow: hidden;      /* 避免放大超出邊界 */
}
/* 圖片 hover 放大效果 */
a.position-relative.d-block img {
  transition: transform 0.3s ease; /* 平滑放大 */
}
a.position-relative.d-block:hover img {
  transform: scale(1.05); /* 放大 5% */
  filter: brightness(0.8); /* 略微變暗，凸顯圖標 */
}
/* hover 顯示 icon */
a.position-relative.d-block:hover .zoom-icon {
  opacity: 1;
}
.txt_brown{
	color: #3e3a39;
}


.square-box {
  position: relative;
  width: 100%;
  padding-top: 100%; /* 高度 = 寬度，形成正方形 */
  overflow: hidden;
}

.square-box .square-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top left;
}