    .error {
        color: red;  /* 設置文字顏色為紅色 */
        font-size: 14px;  /* 設置字體大小，根據需求調整 */
        margin-top: 5px;
        display: none;  /* 初始隱藏錯誤訊息 */
    }


/* 產品介紹 確保圖片不會超出容器 */
#show-image, .regular img {
  max-width: 100%;
  text-align: center; /* 讓內容居中 */
  height: auto;
  border-radius: 5px; /* 可選，讓圖片邊角變圓滑 */
}
/* 電腦與手機版通用樣式 */
.modal-body {
    max-width: 100%; /* 撐滿容器 */
    text-align: center; /* 居中內容 */
    padding: 15px;

}


/* 調整圖片樣式 */
.modal-content img {
    max-width: 100%; /* 確保圖片不超出容器 */
    height: auto; /* 維持比例 */
    margin: 0 auto; /* 置中 */
    display: block;
}

/* 修正電腦版的容器樣式 */
.container-fluid {
    padding-left: 15px;
    padding-right: 15px;
}

.row {
    margin-left: 0;
    margin-right: 0;
}


/* 手機版調整 */
@media (max-width: 768px) {
    .modal-dialog {
        margin: 10px; /* 小螢幕適當外邊距 */
    }
    .modal-body {
        padding: 10px; /* 減少內邊距 */
    }
}




/*-----------------------------*/


body {
    background: #f8f8f8;
    text-align: center;
    font-family: 'Open Sans', sans-serif;
    color: #888;
    font-size: 14px;
    font-weight: 400;
}

.colored-text { color: #E50011; }

a {
    color: #B3EEFD;
    text-decoration: none;
    -o-transition: all .3s; -moz-transition: all .3s; -webkit-transition: all .3s; -ms-transition: all .3s; transition: all .3s;
}
a:hover, a:focus { color: #888; text-decoration: none; }

strong { font-weight: bold; }

img { max-width: 100%; }

h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 30px;
    color: #5d5d5d;
    line-height: 40px;
    font-weight: bold;
}

h2 {
	margin: 0;
    background: rgba(179, 239, 253, 0.2); /* 這裡的0.5表示背景顏色50%的透明度 */
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    color: #5d5d5d;
    line-height: 40px;
    font-weight: bold;
    text-align: left;
	/*display: inline-block;  /* 讓背景只延伸到內容 */
}

h3, h4 {
	font-family: 'Montserrat', sans-serif;
    color: #5d5d5d;
    line-height: 20px;
    font-weight: bold;
    text-transform: uppercase;
    text-shadow: 0 1px 0 rgba(255,255,255,.7);
}


@media only screen and (max-width: 768px) {
    .about-us-container .about-us-text h3 {
        font-size: 1.5rem; /* 縮小標題字體大小 */
        line-height: 1.8;  /* 增加標題行距 */
    }

    .about-us-container .about-us-text p {
        font-size: xx-large;   /* 縮小段落字體大小 */
        line-height: 1.6;  /* 增加段落行距 */
        margin-bottom: 1rem; /* 增加段落間的間距 */
		
    }
}

::-moz-selection { background: #B3EEFD; color: #fff; text-shadow: none; }
::selection { background: #B3EEFD; color: #fff; text-shadow: none; }


/***** Big links / buttons *****/

a.big-link-1 {
	display: inline-block;
    padding: 5px 22px;
    background: #B3EEFD;
    color: #fff;
    font-style: italic;
    text-decoration: none;
    -moz-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}

a.big-link-1:hover {
    -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;
}

a.big-link-1:active {
    -moz-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}

a.big-link-2 {
    display: inline-block;
    width: 35px;
    height: 35px;
    padding-top: 9px;
    background: #1d1d1d; /* browsers that don't support rgba */
    background: rgba(0, 0, 0, .7);
    font-size: 16px;
    color: #fff;
    line-height: 16px;
    -moz-border-radius: 19px; -webkit-border-radius: 19px; border-radius: 19px;
    -moz-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}

a.big-link-2:hover {
    background: #B3EEFD;
    -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;
}

a.big-link-2:active {
    -moz-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}

a.big-link-3 {
	display: inline-block;
    padding: 5px 22px;
    background: #B3EEFD;
    font-size: 18px;
    color: #fff;
    font-style: italic;
    line-height: 24px;
    text-decoration: none;
    -moz-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 1px 25px 0 rgba(0,0,0,.05) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}

a.big-link-3:hover {
    -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;
}

a.big-link-3:active {
    -moz-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 5px 10px 0 rgba(0,0,0,.15) inset, 0 -1px 25px 0 rgba(0,0,0,.05) inset;
}


/***** Top menu *****/


.navbar {
    z-index: 99;
    margin-bottom: 0;
    background-image: url('../img/flash15.jpg'); /* 背景圖片路徑 */
	
    background-size: cover; /* 確保圖片覆蓋整個區域 */
    background-repeat: no-repeat; /* 防止圖片重複 */
    /*background-position: center; /* 圖片置中 */
	background-position:90% 40%;
    border: 0;
    -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    color: #fff; /* 修改文字顏色以配合背景圖片 */

}

ul.navbar-nav {
    font-size: 14px;
    color: #888;
    text-transform: uppercase;
}

ul.navbar-nav li a {
    padding: 23px 20px;
    background: rgba(255, 255, 255, 0.5); /* 半透明背景 */
    border-top: 5px solid rgba(255, 255, 255, 1); /* 邊框與背景同樣透明度 */
    color: #fff; /* 預設文字顏色 */
    text-align: center;
    transition: background 0.3s, color 0.3s; /* 添加過渡效果 */
	
}

ul.navbar-nav li.active a {
    background: rgba(255, 255, 255, 0.7); /* 增強透明背景 */
    border-color: rgba(179, 238, 253, 0.7); /* 藍色邊框帶透明 */
    color: #B3EEFD; /* 預設文字顏色 */
}

ul.navbar-nav li a:hover,
ul.navbar-nav li a:focus {
    background: rgba(179, 238, 253, 0.5); /* 鼠標懸停時背景顏色改變 */
    border-color: rgba(179, 238, 253, 0.5); /* 鼠標懸停時邊框顏色 */
    color: #fff; /* 白色文字 */
    outline: 0;
}

ul.navbar-nav li a span {
    line-height: 35px;
    color: #fff;
}

ul.navbar-nav li.active a span{
   
    color: #B3EEFD; /* 預設文字顏色 */
}

ul.navbar-nav li a:hover span,
ul.navbar-nav li a:focus span {
    color: #fff;
}

.dropdown-menu {
    border: 0;
    -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
    -moz-box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
    background: rgba(255, 255, 255, 0.8); /* 半透明下拉選單背景 */
}

.dropdown-menu > .active > a {
    background: rgba(255, 255, 255, 0.5);
    color: #5d5d5d;
}

.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
    background: rgba(179, 238, 253, 0.5);
    color: #fff;
}

ul.navbar-nav li .dropdown-menu a {
    padding-top: 15px;
    padding-bottom: 15px;
}

.navbar>.container .navbar-brand {
    margin-left: 0;
}

.navbar-brand {
    width: 173px;
    height: 106px;
    background: url('../img/logo.png') left center no-repeat;
	background-size: contain; /* 確保圖片按比例縮放且完全顯示 */
    text-indent: -99999px;
}






/* 確保按鈕文字清晰可見 */
ul.navbar-nav li a {
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); /* 增加文字陰影以提升可讀性 */
}

/* 自訂手機版導航按鈕顏色 */
.navbar-toggle {
    background-color: rgba(255, 255, 255, 0.5); /* 設定按鈕背景顏色 */
    border: none; /* 取消按鈕邊框 */
}

.navbar-toggle .icon-bar {
    background-color: #fff; /* 設定三條橫線顏色 */
}


/***** Slider *****/



.slider-container {
    margin: 0 auto;
    -moz-box-shadow: 0 -5px 15px 0 rgba(0,0,0,.05) inset;
    -webkit-box-shadow: 0 -5px 15px 0 rgba(0,0,0,.05) inset;
    box-shadow: 0 -5px 15px 0 rgba(0,0,0,.05) inset;
}

.slider {
    padding: 0;
    overflow: hidden;
}

.flexslider {
    margin: 0;
    background: none;
    border: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.flexslider .slides > li {
    position: relative;
    /* Ensure images take full width of their container */
    display: block;
    width: 100%;
}

.flex-caption {
    position: absolute;
    left: 0;
    bottom: 50px;
    width: 30%;
    padding: 10px 20px;
    background: #b3eefd; /* browsers that don't support rgba */
    
    font-size: 14px;
    line-height: 24px;
    color: #808080;
    text-align: left;
    font-style: italic;
}

.flex-direction-nav a {
    width: 60px;
    height: 60px;
    padding-top: 17px;
    background: #B3EEFD;
    color: #fff;
    text-shadow: none;
	/*silder左右透明度*/
	opacity: 0.7 !important;
    transition: opacity 0.3s ease !important;
}


.flex-direction-nav a:before {
    font-size: 26px;
}

.flex-direction-nav .flex-prev,
.flex-direction-nav .flex-next {
    text-align: center;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

/***** 設置響應式調整 *****/

/* 將圖片設置為全寬並保持比例 */
@media only screen and (max-width: 768px) {
    .flexslider .slides img {
        width: 100%; /* 讓圖片根據容器寬度縮放 */
        height: auto; /* 保持圖片的原始比例 */
    }

    /* 優化標題顯示 */
    .flex-caption {
        bottom: 10px; /* 避免遮擋圖片過多 */
        font-size: 12px; /* 減小字體大小以適應小屏幕 */
    }
}

/* 在大屏幕（桌面）上保留原來的樣式 */
@media only screen and (min-width: 769px) {
    .flexslider .slides img {
        width: 100%;
        height: auto;
    }

    .flex-caption {
        bottom: 50px;
        font-size: 14px;
    }
}


/***** Presentation *****/

.presentation-container {
    margin-top: 30px;
}

.presentation-container p {
    font-size: 18px;
    font-style: italic;
}


/***** Services *****/

.services-container {
    margin-top: 10px;
}

.services-title {
	margin-top: 40px;
}

.services-title h2 {
    width: 200px;
}

.service {
	margin-top: 40px;
    padding: 15px 15px 20px 15px;
    background: #fff;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
}

.service .service-icon {
    font-size: 50px;
    line-height: 50px;
    color: #5d5d5d;
}

.service .service-icon span { vertical-align: middle; }

.service h3 {
    margin-top: 13px;
    font-size: 14px;
}

.service p {
    padding-bottom: 7px;
    line-height: 24px;
}


/***** Latest work *****/

.work-container {
    margin-top: 50px;
}

.work-title h2 {
    width: 220px;
}

.work {
	position: relative;
    margin-top: 40px;
    padding-bottom: 20px;
    background: #fff;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
}

.work .work-bottom {
	position: absolute;
    top: 10px;
    right: 10px;
}

.work h3 {
    margin-top: 20px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 14px;
}

.work p {
	padding-left: 15px;
    padding-right: 15px;
    line-height: 24px;
    font-style: italic;
}


/***** Testimonials *****/

.testimonials-container {
    margin-top: 50px;
    padding-bottom: 70px;
}

.testimonials-title h2 {
    width: 180px;
}

.testimonial-list {
    margin-top: 30px;
    text-align: left;
}

.testimonial-list .tab-pane { overflow: hidden; }

.testimonial-list .testimonial-image {
	float: left;
	width: 17%;
	margin: 10px 0 0 0;
}
.testimonial-list .testimonial-image img {
	max-width: 120px;
	-moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%;
}

.testimonial-list .testimonial-text {
	float: left;
	width: 83%;
    line-height: 30px;
    font-style: italic;
}

.testimonial-list .nav-tabs {
    border: 0;
    text-align: right;
}

.testimonial-list .nav-tabs li {
	float: none;
	display: inline-block;
	margin-left: 5px;
    margin-right: 5px;
}

.testimonial-list .nav-tabs li a {
    width: 14px;
    height: 14px;
    padding: 0;
    background: #eaeaea;
    border: 0;
    -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
}

.testimonial-list .nav-tabs li a:hover { border: 0; background: #ddd; }
.testimonial-list .nav-tabs li.active a { background: #B3EEFD; }
.testimonial-list .nav-tabs li.active a:focus { border: 0; }

.testimonial-icon {
	padding-top: 20px;
	font-size: 100px;
	color: #eaeaea;
	line-height: 100px;
	overflow: hidden;
}

.testimonial-icon div {
	-ms-transform: rotate(20deg); -moz-transform: rotate(20deg); -webkit-transform: rotate(20deg); transform: rotate(20deg);
}


/***** Footer *****/

footer {
    /*margin: 0 auto;*/
    /*padding-bottom: 10px;*/
    background: #333;
    color: #bbb;
	position: relative; /* 讓footer元素不會被其他元素擠出 */
    z-index: 10; /* 確保footer在頁面上方 */
	margin-bottom: 0; /* 確保沒有多餘的底部邊距 */
    padding-bottom: 0; /* 確保沒有過多的內邊距 */
	
}

.footer-box {
    margin-top: 20px;
    text-align: left;
	visibility: visible; /* 確保footer內容可見 */
    display: block; /* 確保內容被正確顯示 */
}

.footer-box h4 {
    margin-top: 20px;
    font-size: 14px;
    color: #eee;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
	visibility: visible; /* 確保footer內容可見 */
    display: block; /* 確保內容被正確顯示 */
}

.footer-box-text p {
    line-height: 24px;
}

.footer-box-text-contact span {
    padding-right: 7px;
    color: #5d5d5d;
}

.footer-box-text-subscribe form {
	padding-bottom: 10px;
}

.footer-box-text-subscribe input[type="text"] {
	width: 95%;
	height: 26px;
	border-color: #5d5d5d;
	color: #ccc;
}

/* Flickr feed */
.flickr-feed {
    margin: 16px 0 0 0;
}

.flickr-feed a {
	display: inline-block;
	width: 54px;
	margin: 0 4px 4px 0;
}
.flickr-feed a:hover { opacity: 0.7; }
.flickr-feed a img { border: 2px solid #444; }


.footer-border {
    margin-top: 30px;
    border-top: 1px dashed #444;
}

.footer-copyright {
    margin-top: 15px;
    line-height: 24px;
    text-align: left;
}

.footer-social {
    margin-top: 10px;
    text-align: right;
}
.footer-social a { margin: 0 0 0 10px; font-size: 26px; color: #666; }
.footer-social a:hover, .footer-social a:focus { color: #B3EEFD; }


/***** Page title *****/

.page-title-container {
    margin: 0 auto;
    padding: 35px 0 0 0;
}

.page-title {
	padding-bottom: 35px;
	border-bottom: 1px solid #eaeaea;
}

.page-title-container h1 {
    display: inline;
    margin-left: 10px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .7);
    vertical-align: middle;
}

.page-title-container p {
    display: inline;
    margin-left: 5px;
    vertical-align: middle;
}

.page-title-container span {
    font-size: 46px;
    color: #ddd;
    vertical-align: middle;
}


/* ----- ABOUT PAGE ----- */

/***** About us text *****/

.about-us-container {
    margin-top: 20px;
}

.about-us-text {
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: left;
}

.about-us-text h3 {
    margin-top: 25px;
    font-size: 16px;
}

.about-us-text p {
    line-height: 28px;
}

/***** Meet our team *****/

.team-container {
    margin-top: 30px;
}

.team-title h2 {
    width: 220px;
}

.team-box {
	position: relative;
    margin-top: 40px;
    padding-bottom: 20px;
    background: #fff;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
}

.team-box h3 {
	font-family: 'Montserrat', sans-serif;
    margin-top: 20px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 20px;
	text-align: left;
}

.team-box p {
	font-family: 'Montserrat', sans-serif;
	padding-left: 15px;
    padding-right: 15px;
    line-height: 24px;
    font-style: italic;
}

.team-social {
	position: absolute;
    top: 10px;
    right: 10px;
    max-width: 100%;
    opacity: 0;
    -o-transition: all .3s; -moz-transition: all .3s; -webkit-transition: all .3s; -ms-transition: all .3s; transition: all .3s;
}

.team-box:hover .team-social { opacity: 1; }


/* ----- CONTACT PAGE ----- */

/***** Form *****/

.contact-us-container {
    margin-top: 20px;
    padding-bottom: 50px;
    text-align: left;
}

.contact-us-container h3 {
    margin-top: 25px;
    font-size: 16px;
}

.contact-us-container p {
    line-height: 28px;
}

.contact-form {
    padding-top: 25px;
    padding-bottom: 30px;
}

.contact-form form {
    margin-top: 25px;
}

.contact-form form .form-group {
	margin-bottom: 20px;
}

.contact-form input[type="text"] { width: 95%; height: 34px; }
.contact-form textarea { width: 95%; height: 170px; padding-top: 8px; padding-bottom: 8px; }
.contact-form label { font-weight: 400; }
.contact-form label .error-label { font-style: italic }
.contact-form button { margin-top: 5px; padding: 0 45px; }

/***** Google map *****/

.contact-address {
	padding-bottom: 15px;
}

.contact-address .map {
    margin: 20px 0 40px 0;
    height: 300px;
}


/* ----- SERVICES PAGE ----- */

/***** Services full width text *****/

.services-full-width-container {
    margin-top: 20px;
}

.services-full-width-text {
    padding-top: 10px;
    text-align: left;
}

.services-full-width-text h3 {
    margin-top: 25px;
    font-size: 16px;
}

.services-full-width-text p {
    line-height: 28px;
}

/***** Services half width text *****/

.services-half-width-container {
    margin-top: 20px;
}

.services-half-width-text {
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: left;
}

.services-half-width-text h3 {
    margin-top: 25px;
    font-size: 16px;
}

.services-half-width-text p {
    line-height: 28px;
}

/***** Call to action *****/

.call-to-action-container {
    margin-top: 20px;
    padding-bottom: 50px;
}

.call-to-action-text {
    padding-top: 25px;
    padding-bottom: 15px;
    background: #fff;
    text-align: left;
    overflow: hidden;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
}

.call-to-action-text p {
    float: left;
    width: 80%;
    padding-left: 25px;
    line-height: 30px;
    font-size: 18px;
    font-style: italic;
}

.call-to-action-text .call-to-action-button {
    float: left;
    width: 20%;
    padding-right: 25px;
    margin-bottom: 10px;
    text-align: right;
}


/* ----- product PAGE ----- */

.product-container {
    margin-top: 20px;
    padding-bottom: 50px;
	display: flex;
    justify-content: center; /* 讓整體內容水平居中 */
    padding: 30px 0; /* 可以根據需要調整間距 */
}

.product-filters {
	padding-top: 35px;
	padding-bottom: 10px;
	font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    color: #5d5d5d;
    font-weight: bold;
    text-align: left;
    text-transform: uppercase;
    text-shadow: 0 1px 0 rgba(255,255,255,.7);
}

.product-filters a { color: #5d5d5d; }
.product-filters a:hover, .product-filters a.active { color: #B3EEFD; }

.product-box {
	width: 255px;
	margin: 40px 15px 0 15px;
}

.product-box-container {
	position: relative;
	background: #fff;
    -moz-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.05);
}

.product-box-container .embed-responsive.embed-responsive-16by9 {
	padding-bottom: 69.5%;
}

.product-box-icon {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 35px;
    height: 35px;
    padding-top: 7px;
    background: #1d1d1d; /* browsers that don't support rgba */
    background: rgba(0, 0, 0, .7);
    font-size: 20px;
    color: #fff;
    line-height: 20px;
    -moz-border-radius: 19px; -webkit-border-radius: 19px; border-radius: 19px;
}

.product-box-text {
	padding: 0 15px 20px 15px;
}

.product-box-text h3 {
	cursor: pointer;
    margin-top: 20px;
    font-size: 20px;
}

.product-box-text p {
    line-height: 24px;
    font-size: 16px;
    font-style: normal;
    color: gray; /* 預設文字顏色為灰色 */
    transition: color 0.3s ease; /* 增加過渡效果 */
}

.product-box-text p:hover,
.product-box-text p:active {
    color: lightblue; /* 游標經過或點擊後顯示淺藍色 */
}

.contact-address .map2 {
    margin: 20px 0 40px 0;
    height: 300px;
}



 .portfolio-filters {
	padding: 25px 0 20px 0;
	font-size: 18px;
    line-height: 22px;
    text-transform: uppercase;
}

.portfolio-filters a { color: #222222; }
.portfolio-filters a:hover, .portfolio-filters a.active { color: #F05F40; }
.portfolio-filters a.active { font-weight: 700; }

  .portfolio-box .portfolio-box-caption {
    position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    opacity: 0;
    color: white;
    background: rgba(240, 95, 64, 0.9);
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s; }
    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content {
      position: absolute;
      top: 50%;
      width: 100%;
      transform: translateY(-50%);
      text-align: center; }
      .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category,
      .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
        padding: 0 15px;
        font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif,Noto Sans TC; }
      .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
        font-size: 14px;
        font-weight: 600;
        text-transform: uppercase; }
      .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
        font-size: 18px; }
  .portfolio-box:hover .portfolio-box-caption {
    opacity: 1; }
  .portfolio-box:focus {
    outline: none; }
  @media (min-width: 768px) {
    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
      font-size: 16px; }
    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
      font-size: 22px; } }
	  
	  

	  
	  
	  
	  


.call-to-action {
  padding: 50px 0; }
  .call-to-action h2 {
    margin: 0 auto 20px; }

.text-primary {
  color: #F05F40 !important; }

.no-gutter > [class*='col-'] {
  padding-right: 0;
  padding-left: 0; }

.btn-default {
  color: #222222;
  border-color: white;
  background-color: white; }
  .btn-default.focus, .btn-default:focus {
    color: #222222;
    border-color: #bfbfbf;
    background-color: #e6e6e6; }
  .btn-default:hover {
    color: #222222;
    border-color: #e0e0e0;
    background-color: #e6e6e6; }
  .btn-default.active, .btn-default:active,
  .open > .btn-default.dropdown-toggle {
    color: #222222;
    border-color: #e0e0e0;
    background-color: #e6e6e6; }
    .btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover, .btn-default:active.focus, .btn-default:active:focus, .btn-default:active:hover,
    .open > .btn-default.dropdown-toggle.focus,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle:hover {
      color: #222222;
      border-color: #bfbfbf;
      background-color: #d4d4d4; }
  .btn-default.active, .btn-default:active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled.focus, .btn-default.disabled:focus, .btn-default.disabled:hover, .btn-default[disabled].focus, .btn-default[disabled]:focus, .btn-default[disabled]:hover,
  fieldset[disabled] .btn-default.focus,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default:hover {
    border-color: white;
    background-color: white; }
  .btn-default .badge {
    color: white;
    background-color: #222222; }

.btn-primary {
  color: white;
  border-color: #F05F40;
  background-color: #F05F40; }
  .btn-primary.focus, .btn-primary:focus {
    color: white;
    border-color: #a4270d;
    background-color: #eb3812; }
  .btn-primary:hover {
    color: white;
    border-color: #e13612;
    background-color: #eb3812; }
  .btn-primary.active, .btn-primary:active,
  .open > .btn-primary.dropdown-toggle {
    color: white;
    border-color: #e13612;
    background-color: #eb3812; }
    .btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary:active.focus, .btn-primary:active:focus, .btn-primary:active:hover,
    .open > .btn-primary.dropdown-toggle.focus,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle:hover {
      color: white;
      border-color: #a4270d;
      background-color: #c93110; }
  .btn-primary.active, .btn-primary:active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled.focus, .btn-primary.disabled:focus, .btn-primary.disabled:hover, .btn-primary[disabled].focus, .btn-primary[disabled]:focus, .btn-primary[disabled]:hover,
  fieldset[disabled] .btn-primary.focus,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary:hover {
    border-color: #F05F40;
    background-color: #F05F40; }
  .btn-primary .badge {
    color: #F05F40;
    background-color: white; }
	
.btn-circle {font-size: 26px;width: 55px;height: 55px;margin-top: 15px;line-height: 38px;-webkit-transition: background 0.3s ease-in-out;-moz-transition: background 0.3s ease-in-out;transition: background 0.3s ease-in-out;color: #F05F40;border: 2px solid #F05F40;border-radius: 100% !important;background: transparent; }.btn-circle:focus, .btn-circle:hover {color: white;outline: none;background: #F05F40; }

.btn {
  font-weight: 700;
  text-transform: uppercase;
  
  border-radius: 300px;
  font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif,Noto Sans TC; }

.btn-xl {
  padding: 15px 30px; }

.wow {
    visibility: visible !important; /* 確保 WOW 元素直接顯示 */
    animation-delay: 0s !important; /* 不延遲動畫 */
}
/*------------------------------------------------------*/
.product-masonry {
    display: grid;
    gap: 10px;  /* 兩個元素之間的間隔 */
    width: 100%;
    box-sizing: border-box;  /* 確保寬度計算正確 */
	/* 假設每個 product-box 寬度為 250px */
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	
grid-auto-rows: minmax(100px, auto);  /* 設置自動行高，避免不均勻 */
   
    align-items: start;  /* 保證所有元素都在同一位置對齊 */
}
.product-box {
    /* 讓高度自動調整，並設置最小高度 */
    /*height: auto;  */
    min-height: 320px;
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	width: 240px; 
	
	
}

/* 螢幕寬度小於 1200px 時顯示 3 欄 */
@media (max-width: 1200px) {
    .product-masonry {
        grid-template-columns: repeat(3, 1fr);  /* 顯示 3 欄 */
    }
}

/* 螢幕寬度小於 768px 時顯示 2 欄 */
@media (max-width: 768px) {
    .product-masonry {
        grid-template-columns: repeat(2, 1fr);  /* 顯示 2 欄 */
    }
}

/* 螢幕寬度小於 480px 時顯示 1 欄 */
@media (max-width: 480px) {
    .product-masonry {
        grid-template-columns: 1fr;  /* 顯示 1 欄 */
    }
}
/*------------------------------------------------------*/
/* 浮動按鈕 */
.floating-btn {
    position: fixed;
    top: 25%;
    left: 10px;
    background-color: #fff;
    color: white;
    font-weight: bold;
    padding: 15px;
    border: none;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0,0,0,0.5);
    z-index: 1001;
	display: block; /* 預設顯示 */
}

/* 左側選單 */
.sidebar {
    height: 100%;
    width: 300px;
    position: fixed;
    top: 0;
    left: -300px;
    background-color: #f8f9fa;
    overflow-x: hidden;
    transition: 0.3s;
    padding: 15px;
    box-shadow: 2px 0 5px rgba(0,0,0,0.5);
    z-index: 1000;
    color: #333;
}

/* 關閉按鈕 */
.close-btn {
    font-size: 36px;
    position: absolute;
    top: 10px;
    right: 20px;
    background: none;
    border: none;
    cursor: pointer;
}

/* 產品列表 */
.products-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
	
}

.products-list div {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
	
}

.products-list div:hover {
    background-color: #b3eefd;
}



/* 返回頂部按鈕 */
.btn-scroll-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: #f8f9fa;
    color: #000000;
    font-weight: bold;
    border: none;
    height: 50px;
    width: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1; /* 確保行高不影響垂直對齊 */
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.5);
    cursor: pointer;
    z-index: 1000;
    transition: background-color 0.3s ease;
    padding: 0; /* 移除多餘內邊距 */
}

/* 懸停效果 */
.btn-scroll-top:hover {
    background-color: #b3eefd;
    color: #fff;
}

/* 當按鈕不在視窗內隱藏 */
.btn-scroll-top {
    display: none;
}

/* 當按鈕出現 */
body.show-scroll-top .btn-scroll-top {
    display: flex;
}









