/* ===================================
    About
====================================== */

/*
    Theme Name: MegaOne
    Theme URI:
    Author: Themes Industry
    Author URI:
    Description: One Page Parallax Template
    Tags: one page, multipurpose, parallax, creative, html5

 */

/* ===================================
    Table of Content
====================================== */

/*  - Fonts
    - General
    - Fonts
    - Social Icon Hover
    - Header And Navigation
    - Slider
    - About
    - Team
    - Portfolio
    - Price
    - Parallax
    - Testimonial
    - Client
    - Blog
    - Contact
    - Map
    - Footer
    - Loader
    - Media Queries   */

/* ===================================
    Google font
====================================== */

@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500;700&display=swap");

.main-font {
  font-family: "Roboto", sans-serif;
}
.alt-font {
  font-family: "Oswald", sans-serif;
}

html {
  scroll-behavior: smooth;
}

/*#style-customizer input{*/
/*    max-width: inherit;*/
/*}*/

/* ===================================
    General
====================================== */

body {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  color: #2b2b2b;
  font-weight: 300;
  line-height: 25px;
  width: 100%;
  overflow-x: hidden;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
  font-weight: 500;
  font-family: "Oswald", sans-serif;
}
a,
*::before,
*::after,
img,
span,
input,
button,
.navbar,
.fixedmenu,
.tp-bullet,
.owl-dot,
.owl-prev,
.owl-next {
  transition: ease-in-out 0.2s;
  -webkit-transition: ease-in-out 0.2s;
  -moz-transition: ease-in-out 0.2s;
  -ms-transition: ease-in-out 0.2s;
  -o-transition: ease-in-out 0.2s;
}
section,
.section-padding {
  position: relative;
  overflow: hidden;
}
.section-top-margin {
  margin-top: 7.5rem;
}
a {
  color: inherit;
  text-decoration: none;
}
.rev_slider_wrapper {
  width: 100% !important;
}
.btn.focus,
.btn:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #ffffff;
}
p {
  font-weight: 400;
}
p:last-child {
  margin-bottom: 0 !important;
}
.fa,
.far,
.fas {
  display: inline;
}
a:active,
a:hover {
  color: #ff431e;
}
blockquote {
  border-left: 2px solid;
  padding: 10px 15px 10px 35px;
  margin: 25px 0;
  font-size: 18px;
  line-height: 28px;
  margin-top: 32px;
  margin-bottom: 32px;
}
blockquote > cite {
  font-weight: 400;
  font-size: 14px;
  display: block;
}
.hidden {
  display: none;
}
section {
  padding: 5.5rem 0;
}

.subtitle,
.title,
.title-summary {
  font-weight: bold;
  color: #202020;
  padding: 10px;
  text-align: center;
  display: flex;
  justify-content: center;
}

.title {
  font-size: 60px;
  white-space: nowrap;
}

.subtitle {
  font-size: 18px;
}

.title-summary {
  font-size: 20px;
  line-height: 1.5;
  text-align: left;
}

.general-center {
  margin-bottom: 50px;
}

/* transition none */
.no-transition * {
  transition-timing-function: initial;
  -moz-transition-timing-function: initial;
  -webkit-transition-timing-function: initial;
  -o-transition-timing-function: initial;
  -ms-transition-timing-function: initial;
  transition-duration: 0s;
  -moz-transition-duration: 0s;
  -webkit-transition-duration: 0s;
  -o-transition-duration: 0s;
  -ms-transition-duration: 0s;
}

/* overlay */
.bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* opacity */
.opacity-full {
  opacity: 1;
}
.opacity-3 {
  opacity: 0.3;
}
.opacity-4 {
  opacity: 0.4;
}
.opacity-5 {
  opacity: 0.5;
}
.opacity-6 {
  opacity: 0.6;
}
.opacity-7 {
  opacity: 0.7;
}
.opacity-8 {
  opacity: 0.8;
}
.opacity-9 {
  opacity: 0.9;
}

/*font-weight*/
.font-weight-100 {
  font-weight: 100;
}
.font-weight-300 {
  font-weight: 300;
}
.font-weight-500 {
  font-weight: 500;
}
.font-weight-600 {
  font-weight: 600;
}

/* button */
.btn {
  -webkit-appearance: inherit;
  appearance: none;
  overflow: hidden;
  position: -webkit-sticky;
  position: sticky;
  z-index: 2;
  display: inline-block;
  font-size: 17px;
  border: 2px solid transparent;
  letter-spacing: 0.5px;
  line-height: inherit;
  border-radius: 0;
  text-transform: capitalize;
  width: auto;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease !important;
  transition: all 0.5s ease !important;
}
/* button size */
.btn.btn-small {
  font-size: 12px;
  padding: 4px 1.8em;
}
.btn.btn-medium {
  font-size: 12px;
  padding: 6px 1.8em;
}
.btn.btn-large {
  font-size: 14px;
  padding: 9px 34px;
  line-height: 1.8em;
}
.btn.btn-rounded {
  border-radius: 50px;
}

/* button background */
.btn.btn-white {
  background: #ffffff;
  border-color: #ffffff;
  color: #585858;
}
.btn.btn-white:hover,
.btn.btn-white:focus {
  background: transparent !important;
  border-color: #ffffff;
  color: #ffffff !important;
}
.btn.btn-transparent-white {
  background: transparent;
  border-color: #ffffff;
  color: #ffffff;
}
.btn.btn-transparent-white:hover,
.btn.btn-transparent-white:focus {
  background: #ffffff !important;
  color: #585858 !important;
}
.btn.btn-transparent-black {
  background: transparent;
  border-color: #2b2b2b;
  color: #2b2b2b;
}
.btn.btn-transparent-black:hover,
.btn.btn-transparent-black:focus {
  background: #2b2b2b !important;
  color: #ffffff !important;
}
.btn.btn-transparent-purple {
  background: transparent;
  border-color: #a07bf7;
  color: #a07bf7;
}
.btn.btn-transparent-purple:hover,
.btn.btn-transparent-purple:focus {
  background: #a07bf7 !important;
  color: #ffffff !important;
}
.btn.btn-black {
  background: #2b2b2b;
  border-color: #2b2b2b;
  color: #ffffff;
}
.btn.btn-black:hover,
.btn.btn-black:focus {
  background: transparent !important;
  border-color: #2b2b2b;
  color: #2b2b2b !important;
}
.btn.btn-purple {
  background: #a07bf7;
  border-color: #a07bf7;
  color: #ffffff;
}
.btn.btn-purple:hover,
.btn.btn-purple:focus {
  background: transparent !important;
  border-color: #a07bf7;
  color: #a07bf7 !important;
}
.btn.btn-hvr-white:hover,
.btn.btn-hvr-white:focus {
  background: #ffffff !important;
  border-color: #ffffff;
  color: #585858 !important;
}

/*Slightly desaturated orange btn*/
.standard-btn {
  font-size: 12px;
  font-family: "Poppins", sans-serif;
  padding: 10px 25px;
  color: #ffffff;
  font-weight: 600;
  background-color: #ff431e;
  border: 1px solid transparent;
  border-radius: 0px;
  -webkit-transition: 0.8s ease !important;
  -o-transition: 0.8s ease !important;
  transition: 0.8s ease !important;
}
.standard-btn:hover {
  color: #ffffff;
  background-color: #000000 !important;
}

.secondary-btn {
  font-size: 12px;
  font-family: "Poppins", sans-serif;
  padding: 10px 25px;
  color: #ffffff;
  font-weight: 600;
  background-color: #ff431e;
  border: 1px solid transparent;
  border-radius: 0px;
  -webkit-transition: 0.8s ease !important;
  -o-transition: 0.8s ease !important;
  transition: 0.8s ease !important;
}
.secondary-btn:hover {
  color: #000000;
  background-color: #ffffff !important;
}

/* background color */
.bg-main {
  background: #c29e75;
}
.bg-black {
  background: #000000;
}
.bg-light-black {
  background: #000000;
}
.bg-dark {
  background-color: #1d1d21 !important;
}
.bg-blue {
  background-color: #a07bf7;
}
.bg-pink {
  background-color: #f033b5;
}
.bg-purple {
  background-color: #9556f5;
}
/* .mix-gradient {background: linear-gradient(to right, #1d56bf 0%, #07164a 100%);} */

/* text-color */
.main-color {
  color: #c29e75;
}

/*Max Width*/
.mx-570 {
  max-width: 570px;
  display: inline-block;
}

/* ===================================
   Social Icon Bg
====================================== */

.social-icon-bg a i.fa-facebook-f {
  background-color: #3b5998;
}
.social-icon-bg a i.fa-twitter {
  background-color: #a07bf7;
}
.social-icon-bg a i.fa-google-plus {
  background-color: #dd4b39;
}
.social-icon-bg a i.fa-linkedin-in {
  background-color: #0976b4;
}
.social-icon-bg a i.fa-instagram {
  background-color: #c13584;
}
.social-icon-bg a i.fa-youtube {
  background-color: #dd4b39;
}
.social-icon-bg a i.fa-pinterest-p {
  background-color: #b7242a;
}
.social-icon-bg a i.fa-instagram {
  background-color: #e8715c;
}
.social-icon-bg a i.fa-vimeo {
  background-color: #1ab7ea;
}
.social-icon-bg a i.fa-vk {
  background-color: #4c75a3;
}
.social-icon-bg a i.fa-youtube {
  background-color: #cd201f;
}
.social-icon-bg a i.fa-pinterest {
  background-color: #bd081c;
}
.social-icon-bg a i.fa-tumblr {
  background-color: #34465d;
}
.social-icon-bg a i.fa-behance {
  background-color: #131418;
}
.social-icon-bg a i.fa-dribbble {
  background-color: #ea4c89;
}
.social-icon-bg a i.fa-google-plus {
  background-color: #dd4b39;
}
.social-icon-bg a i.fa-xing {
  background-color: #026466;
}
.social-icon-bg a i.fa-yelp {
  background-color: #af0606;
}
.social-icon-bg a i.fa-vine {
  background-color: #00b489;
}

/* ===================================
   Social Icon Bg Hover
====================================== */

.social-icon-bg-hvr a:hover i.fa-facebook-f {
  background-color: #3b5998;
}
.social-icon-bg-hvr a:hover i.fa-twitter {
  background-color: #a07bf7;
}
.social-icon-bg-hvr a:hover i.fa-google-plus {
  background-color: #dd4b39;
}
.social-icon-bg-hvr a:hover i.fa-linkedin-in {
  background-color: #0976b4;
}
.social-icon-bg-hvr a:hover i.fa-instagram {
  background-color: #c13584;
}
.social-icon-bg-hvr a:hover i.fa-youtube {
  background-color: #dd4b39;
}
.social-icon-bg-hvr a:hover i.fa-pinterest-p {
  background-color: #b7242a;
}
.social-icon-bg-hvr a:hover i.fa-instagram {
  background-color: #e8715c;
}
.social-icon-bg-hvr a:hover i.fa-vimeo {
  background-color: #1ab7ea;
}
.social-icon-bg-hvr a:hover i.fa-vk {
  background-color: #4c75a3;
}
.social-icon-bg-hvr a:hover i.fa-youtube {
  background-color: #cd201f;
}
.social-icon-bg-hvr a:hover i.fa-pinterest {
  background-color: #bd081c;
}
.social-icon-bg-hvr a:hover i.fa-tumblr {
  background-color: #34465d;
}
.social-icon-bg-hvr a:hover i.fa-behance {
  background-color: #131418;
}
.social-icon-bg-hvr a:hover i.fa-dribbble {
  background-color: #ea4c89;
}
.social-icon-bg-hvr a:hover i.fa-google-plus {
  background-color: #dd4b39;
}
.social-icon-bg-hvr a:hover i.fa-xing {
  background-color: #026466;
}
.social-icon-bg-hvr a:hover i.fa-yelp {
  background-color: #af0606;
}
.social-icon-bg-hvr a:hover i.fa-vine {
  background-color: #00b489;
}

/* ===================================
   Social Icon Color
====================================== */

.social-icon-clr a i.fa-facebook-f {
  color: #3b5998;
}
.social-icon-clr a i.fa-twitter {
  color: #0976b4;
}
.social-icon-clr a i.fa-google-plus {
  color: #dd4b39;
}
.social-icon-clr a i.fa-linkedin-in {
  color: #0976b4;
}
.social-icon-clr a i.fa-instagram {
  color: #c13584;
}
.social-icon-clr a i.fa-youtube {
  color: #dd4b39;
}
.social-icon-clr a i.fa-pinterest-p {
  color: #b7242a;
}
.social-icon-clr a i.fa-instagram {
  color: #e8715c;
}
.social-icon-clr a i.fa-vimeo {
  color: #1ab7ea;
}
.social-icon-clr a i.fa-vk {
  color: #4c75a3;
}
.social-icon-clr a i.fa-youtube {
  color: #cd201f;
}
.social-icon-clr a i.fa-pinterest {
  color: #bd081c;
}
.social-icon-clr a i.fa-tumblr {
  color: #34465d;
}
.social-icon-clr a i.fa-behance {
  color: #131418;
}
.social-icon-clr a i.fa-dribbble {
  color: #ea4c89;
}
.social-icon-clr a i.fa-google-plus {
  color: #dd4b39;
}
.social-icon-clr a i.fa-xing {
  color: #026466;
}
.social-icon-clr a i.fa-yelp {
  color: #af0606;
}
.social-icon-clr a i.fa-vine {
  color: #00b489;
}

/* ===================================
   Social Icon Hover
====================================== */

.social-icon-clr-hvr a i:hover.fa-facebook-f {
  color: #3b5998;
}
.social-icon-clr-hvr a i:hover.fa-twitter {
  color: #0976b4;
}
.social-icon-clr-hvr a i:hover.fa-google-plus {
  color: #dd4b39;
}
.social-icon-clr-hvr a i:hover.fa-linkedin-in {
  color: #0976b4;
}
.social-icon-clr-hvr a i:hover.fa-instagram {
  color: #c13584;
}
.social-icon-clr-hvr a i:hover.fa-youtube {
  color: #dd4b39;
}
.social-icon-clr-hvr a i:hover.fa-pinterest-p {
  color: #b7242a;
}
.social-icon-clr-hvr a i:hover.fa-instagram {
  color: #e8715c;
}
.social-icon-clr-hvr a i:hover.fa-vimeo {
  color: #1ab7ea;
}
.social-icon-clr-hvr a i:hover.fa-vk {
  color: #4c75a3;
}
.social-icon-clr-hvr a i:hover.fa-youtube {
  color: #cd201f;
}
.social-icon-clr-hvr a i:hover.fa-pinterest {
  color: #bd081c;
}
.social-icon-clr-hvr a i:hover.fa-tumblr {
  color: #34465d;
}
.social-icon-clr-hvr a i:hover.fa-behance {
  color: #131418;
}
.social-icon-clr-hvr a i:hover.fa-dribbble {
  color: #ea4c89;
}
.social-icon-clr-hvr a i:hover.fa-google-plus {
  color: #dd4b39;
}
.social-icon-clr-hvr a i:hover.fa-xing {
  color: #026466;
}
.social-icon-clr-hvr a i:hover.fa-yelp {
  color: #af0606;
}
.social-icon-clr-hvr a i:hover.fa-vine {
  color: #00b489;
}

/* ===================================
        Header
   ====================================== */

/* nav top default */

header a.logo {
  padding: 10px;
  position: absolute;
  top: 10%;
  left: 10vh;
}

header a.logo img {
  max-width: 80px;
  display: none;
}
.header-appear a.logo {
  background-color: transparent;
  /*padding-top: 25px;*/
  /*padding-bottom: 35px;*/
  /*padding-right: 20px;*/
  /*padding-left: 20px;*/
  padding: 10px;
  text-align: center;
}

.header-appear a.logo img {
  max-width: 70px;
  display: flex;
}

header .inner-nav-wrap {
  display: flex;
  align-items: flex-start;
  width: 100%;
  margin-top: 30px;
}

.agency-num {
  position: absolute;
  right: 15px;
  display: inline-block;
  top: 47%;
  color: #ff431e;
  font-family: "Oswald", sans-serif;
  font-size: 22px;
  font-weight: normal;
}

.company-slogan {
  position: absolute; /* 定位文字 */
  right: 15px; /* 靠右對齊 */
  text-align: center; /* 統一文字右對齊 */
  font-family: "Oswald", sans-serif; /* 統一字體 */
  transform: translate(-5%, -30%); /* 移動至完全置中的位置 */
  top: 50px;
}

.header-appear .company-slogan {
  transform: translate(-5%, -50%); /* 移動至完全置中的位置 */
  top: 50px;
}

.company-slogan .slogan-ch {
  display: block; /* 中文口號單獨一行 */
  margin-bottom: 5px; /* 中文和英文之間的間距 */
  font-size: 24px; /* 中文略大，突出層次 */
  font-weight: bold; /* 強調中文 */
  color: #333; /* 統一中文顏色 */
}

.company-slogan .slogan-en {
  display: block; /* 英文口號單獨一行 */
  font-size: 20px; /* 英文略小，作為補充 */
  color: #1c96d4; /* 統一英文顏色 */
  font-weight: normal;
}

.navbar-top-default {
  position: absolute;
  top: 0;
  z-index: 99;
  /*overflow: hidden;*/
  /*height: 90px;*/
  width: 100%;
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
  background-color: #ffffff;
  padding-bottom: 25px;
}

.manage-space {
  margin-top: 150px;
}

.header-appear .navbar-top-default {
  height: 100px;
  position: fixed;
  z-index: 99;
  background: #ffffff;
  -webkit-animation-name: animationFade;
  animation-name: animationFade;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);
}
/*Header Appear*/
.header-appear .navbar-top-default {
  background: #ffffff;
}
/*Logo color change on header apppear*/
.navbar .logo .logo-dark {
  display: none;
}
.header-appear .navbar .logo .logo-dark {
  display: block;
}
.header-appear .navbar .logo .logo-white {
  display: none;
}
/*navbar color change on header appear */
.header-appear .navbar-simple .navbar-nav .nav-link {
  font-size: 15px;
  color: #2b2b2b;
  font-weight: 500;
  text-align: center;
  padding: 0.4rem 1.5rem;
}
/*handburger color chnage on header appear*/
.header-appear .sidemenu_btn span {
  background-color: #2b2b2b;
}

.header-appear .inner-nav-wrap {
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 30px;
  padding-bottom: 5px;
}

.navbar-simple .navbar-nav .nav-link {
  font-size: 15px;
  color: #000000;
  font-weight: 500;
  text-align: center;
  padding: 0.4rem 1.5rem;
  font-family: "Oswald", sans-serif;
}

.navbar-top-default #megaone {
  margin-right: -30px;
}

/*Navbar Simple*/

.navbar-simple .navbar-nav .nav-link {
  font-size: 15px;
  color: #000000;
  font-weight: 500;
  text-align: center;
  padding: 0.4rem 1.5rem;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  transition: 0.8s ease;
}

.navbar-nav .nav-link .num:first-child {
  transform: translateX(2px);
}
.navbar-nav .nav-link .num {
  color: #cbcbcb;
  font-size: 50px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
}
.navbar-nav .nav-link .num-width {
  width: 30px;
}

.navbar-nav .nav-link:hover .num,
.navbar-nav .nav-link.active .num {
  color: #1c96d4;
}

/* ===================================
    Side Menu
====================================== */

.side-menu {
  width: 20%;
  position: fixed;
  left: 0;
  top: 0;
  background: #ffffff;
  z-index: 1032;
  height: 100%;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  -o-transition: -o-transform 0.5s ease;
  -o-transition: transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  overflow: hidden;
}
.side-menu.left {
  right: 0;
  left: auto;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.side-menu.before-side {
  width: 280px;
}
.side-menu.side-menu-active,
.side-menu.before-side {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.pul-menu .side-menu.side-menu-active {
  visibility: visible;
  opacity: 1;
}
.side-menu .navbar-brand {
  margin: 0 0 2.5rem 0;
}

/*Side overlay*/
#close_side_menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  -webkit-transition: opacity 300ms cubic-bezier(0.895, 0.03, 0.685, 0.22);
  -o-transition: opacity 300ms cubic-bezier(0.895, 0.03, 0.685, 0.22);
  transition: opacity 300ms cubic-bezier(0.895, 0.03, 0.685, 0.22);
  display: none;
  z-index: 1031;
  opacity: 0.4;
}

/*side clode btn*/
.side-menu .btn-close {
  height: 33px;
  width: 33px;
  display: inline-block;
  text-align: center;
  position: absolute;
  top: 30px;
  right: 15px;
  cursor: pointer;
}
.side-menu.before-side .btn-close {
  display: none;
}
.side-menu .btn-close::before,
.side-menu .btn-close::after {
  position: absolute;
  left: 16px;
  content: " ";
  height: 24px;
  width: 2px;
  background: #2b2b2b;
  top: 5px;
}
.side-menu .btn-close:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-menu .btn-close:after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*side open btn*/

.sidemenu_btn {
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  transition: all 0.3s linear;
  width: 36px;
  padding: 6px;
  margin-right: 1rem;
  position: absolute;
  left: 15px;
  display: inline-block;
  top: 40%;
}

.header-appear .sidemenu_btn {
  top: 45%;
}

.sidemenu_btn span {
  height: 2px;
  width: 100%;
  background: #000000;
  display: block;
}

.sidemenu_btn span:nth-child(2) {
  margin: 4px 0;
}

.side-menu .inner-wrapper {
  padding: 3.5rem 5rem;
  height: 100%;
  position: relative;
  overflow-y: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: left;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pul-menu.pushwrap .side-menu .inner-wrapper {
  padding: 3.5rem 2.5rem;
}
.side-menu .side-nav {
  margin-bottom: 30px;
  display: block;
}
.side-nav .navbar-nav .nav-item {
  display: block;
  margin: 10px 0;
  padding: 0 !important;
  opacity: 0;
  -webkit-transition: all 0.8s ease 500ms;
  -o-transition: all 0.8s ease 500ms;
  transition: all 0.8s ease 500ms;
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
}

.side-nav .navbar-nav .nav-item .nav-link:hover span {
  color: #1c96d4;
}

.side-nav .navbar-nav .nav-item:first-child {
  -webkit-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
.side-nav .navbar-nav .nav-item:nth-child(2) {
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
.side-nav .navbar-nav .nav-item:nth-child(3) {
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.side-nav .navbar-nav .nav-item:nth-child(4) {
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
.side-nav .navbar-nav .nav-item:nth-child(5) {
  -webkit-transition-delay: 0.5s;
  -o-transition-delay: 0.5s;
  transition-delay: 0.5s;
}
.side-nav .navbar-nav .nav-item:nth-child(6) {
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
.side-nav .navbar-nav .nav-item:nth-child(7) {
  -webkit-transition-delay: 0.7s;
  -o-transition-delay: 0.7s;
  transition-delay: 0.7s;
}
.side-nav .navbar-nav .nav-item:nth-child(8) {
  -webkit-transition-delay: 0.8s;
  -o-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
.side-nav .navbar-nav .nav-item:nth-child(9) {
  -webkit-transition-delay: 0.9s;
  -o-transition-delay: 0.9s;
  transition-delay: 0.9s;
}
.side-menu.side-menu-active .side-nav .navbar-nav .nav-item {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}
.side-nav .navbar-nav .nav-link {
  display: inline-table;
  color: #2b2b2b;
  padding: 2px 0 3px 0 !important;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: normal;
  position: relative;
  border-radius: 0;
}
.side-nav .navbar-nav .nav-link::after {
  content: "";
  position: absolute;
  background: #fff;
  display: inline-block;
  width: 0;
  height: 3px;
  bottom: 0;
  left: 0;
  overflow: hidden;
  -webkit-transition: all 0.5s cubic-bezier(0, 0, 0.2, 1);
  -o-transition: all 0.5s cubic-bezier(0, 0, 0.2, 1);
  transition: all 0.5s cubic-bezier(0, 0, 0.2, 1);
}

.side-nav .navbar-nav .nav-link:hover::after,
.side-nav .navbar-nav .nav-link:focus::after,
.side-nav .navbar-nav .nav-link.active::after {
  width: 100%;
}
.side-nav .navbar-nav .nav-link.active {
  background: transparent;
}
.side-menu p {
  margin-top: 0.5rem;
  margin-bottom: 0;
}

.social-icons-simple {
  margin-bottom: 0;
  margin-left: -10px;
}

.social-icons-simple li {
  display: inline-block;
}

.social-icons-simple li a {
  display: block;
  font-size: 16px;
  height: 36px;
  line-height: 38px;
  border: 1px solid transparent;
  text-align: center;
  width: 36px;
  border-radius: 50%;
  position: relative;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
  color: #2b2b2b;
}
.social-icons-simple li a:hover {
  background-color: #2b2b2b;
  color: #ffffff;
}

.side-footer p {
  color: #2b2b2b;
}

.social-icons-simple li.animated-wrap a:hover {
  background-color: transparent;
  color: #ffffff;
}
@-webkit-keyframes animationFade {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes animationFade {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

/* ===================================
   Banner
====================================== */
/* Slider 區域背景與結構 */
.slider-area {
  background-image: url("../img/Scetion1/1762.jpg"); /* 背景圖 */
  height: 100vh; /* 滿高 */
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

/* Slider 內容區域 */
.slider-area .slider-content {
  position: absolute; /* 使用絕對定位 */
  top: 50%; /* 垂直居中 */
  left: 0; /* 靠左 */
  transform: translateY(-50%); /* 調整垂直居中的定位 */
  padding-left: 5%; /* 添加內邊距，讓內容不緊貼左邊 */
}

/* Logo 與公司資訊容器 */
.logo-and-info {
  display: flex; /* 水平排列 */
  align-items: center; /* 垂直居中對齊 */
  margin-bottom: 20px;
}

/* Logo 圖片樣式 */
.logo-img {
  max-width: 150px; /* 限制 Logo 寬度 */
  margin-right: 20px; /* 與文字的水平間距 */
}

/* 公司資訊文字區域 */
.company-info {
  letter-spacing: 1px; /* 增加字元間距 */
  text-align: left;
  margin: auto;
}

/* 公司中文名稱樣式 */
.company-text {
  font-size: 48px;
  font-weight: bold;
  color: #ffffff; /* 白色文字 */
}

/* 公司英文名稱樣式 */
.company-text-en {
  font-size: 24px;
  font-weight: normal;
  color: #ffffff; /* 白色文字 */
}

/* 標題樣式 */
.heading {
  letter-spacing: 1px; /* 增加字元間距 */
  font-size: 52px;
  font-weight: bold;
  color: #ffffff;
  margin-bottom: 10px;
}

/* 文字段落樣式 */
.text {
  letter-spacing: 1px; /* 增加字元間距 */
  font-size: 22px;
  font-weight: bold;
  color: #ffffff;
  margin-top: 30px;
}

/* ===================================
        Real State Form
====================================== */

.real-state-form .select2-container--default .select2-selection--single {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #ffffff;
  border-radius: 0;
  width: 189px;
}

.real-state-form
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #ffffff;
}

.real-state-form
  .select2-container
  .select2-selection--single
  .select2-selection__rendered {
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: flex;
  font-weight: 300;
  font-size: 16px;
}
.real-state-form
  .select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: #fff transparent transparent;
}

.real-state-form {
  padding: 50px 30px 50px 30px;
  background-color: rgba(255, 255, 255, 0.07);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  position: absolute;
  z-index: 1;
  right: 14%;
  top: 50%;
  transform: translateY(-40%);
  max-width: 500px;
}

.book-property .booking-heading {
  font-size: 28px;
  font-weight: bold;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  color: #ffffff;
}

.real-state-form .contact-form .form-control {
  color: #ffffff;
}

.real-state-form .contact-form input {
  background-color: transparent;
  border-bottom: 1px white solid;
}

.real-state-form .contact-form select {
  background-color: transparent;
  border-bottom: 1px white solid;
  color: #ffffff;
}

.real-state-form .contact-form select option {
  color: #000000;
}
/*placeholder for input*/

.real-state-form .contact-form input::placeholder,
.real-state-form .contact-form .form-group select::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #ffffff;
  font-size: 16px;
  opacity: 1; /* Firefox */
}
/* Internet Explorer 10-11 */
.real-state-form .contact-form input:-ms-input-placeholder,
.real-state-form .contact-form .form-group select:-ms-input-placeholder {
  color: #ffffff;
  font-size: 16px;
}

/* Microsoft Edge */
.real-state-form .contact-form input::-ms-input-placeholder,
.real-state-form .contact-form .form-group select::-ms-input-placeholder {
  color: #ffffff;
  font-size: 16px;
}

/* ===================================
        About Section
====================================== */

/* 標題樣式 */
.team-name {
  margin-top: 15px;
  font-size: 18px;
  font-weight: bold;
  color: #333;
  text-align: center;
}

.team-section {
  background-color: #ffffff;
  padding-bottom: 0;
}
.team-section .stats-heading-area .sub-heading {
  font-family: Roboto, sans-serif;
  font-size: 18px;
  color: #202020;
  font-weight: bold;
  margin-bottom: 20px;
}

.team-section .stats-heading-area .heading {
  color: #202020;
  font-family: Oswald, sans-serif;
  font-size: 60px;
  font-weight: 700;
}

.team-section .stats-heading-area .heading span.color {
  display: inline-block;
  color: #1c96d4;
}

.team-section .stats-heading-area .heading span {
  display: block;
}

.team-section .stats-heading-area .text {
  color: #202020;
  font-size: 18px; /* 字體大小 */
  text-align: left; /* 水平靠左對齊 */
  padding: 10px 15px; /* 添加左右內邊距，增強結構感 */
  line-height: 1.5; /* 調整行高，讓段落更易閱讀 */
  display: flex; /* 使用彈性盒模型 */
  justify-content: center; /* 水平靠左對齊 */
  margin-bottom: 60px;
}

.team-section .team-member-area {
  margin-top: 40px;
  margin-bottom: 40px;
}

.team-section .image-holder {
  cursor: pointer;
}

.team-section .image-holder:hover ~ .team-name {
  color: #1c96d4;
}

.team-member-area {
  display: flex;
  justify-content: center; /* 水平居中 */
  gap: 100px; /* 圖片之間的水平和垂直間距 */
}

.image-holder {
  width: 250px;
  height: 250px;
  overflow: hidden;
  border-radius: 50%;
  background-color: #fcfcfc;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  margin: 0 auto; /* 保證容器居中 */
  display: flex;
  justify-content: center;
  align-items: center;
}

.image-holder img {
  max-width: 80%;
  object-fit: contain;
  transition: transform 0.3s ease-in-out;
  cursor: pointer;
}

.image-holder img:hover,
.team-name:hover {
  transform: scale(1.1); /* 滑過時稍微放大 */
  color: #1c96d4;
}
.team-section .team-name {
  margin-top: 20px;

  transition: 0.5s ease all;
  font-weight: bold;
}

.fadeInDown {
  margin-top: 25%;
}

.about-row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
}

/* 模態框的背景和整體樣式 */
.imageModal {
  display: none; /* 預設隱藏 */
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);

  /* Flexbox 居中對齊 */
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/* 模態框內的圖片樣式 */
.modalImage {
  max-width: 80%;
  max-height: 80%;
  border-radius: 5px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  background-color: rgba(255, 255, 255, 100);
}

/* 放大動畫效果 */
@keyframes zoom {
  from {
    transform: scale(0.7);
  }
  to {
    transform: scale(1);
  }
}

/* 統一關閉與左右按鈕樣式 */
.close,
.prev,
.next {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.8); /* 半透明背景 */
  color: #333; /* 按鈕文字顏色 */
  border: 2px solid #333; /* 邊框 */
  border-radius: 50%; /* 圓形按鈕 */
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  cursor: pointer; /* 鼠標變為點擊狀態 */
  transition: all 0.3s ease; /* 加入平滑的過渡效果 */
  user-select: none;
  z-index: 1000;
}

/* 滑鼠懸停效果 */
.close:hover,
.prev:hover,
.next:hover {
  background-color: rgba(255, 255, 255, 1);
  transform: scale(1.1);
}

/* 點擊效果 */
.close:active,
.prev:active,
.next:active {
  transform: scale(0.9);
}

/* 鍵盤焦點效果 */
.close:focus,
.prev:focus,
.next:focus {
  outline: 3px solid #ff6600;
}

/* 關閉按鈕專屬樣式 */
.imageModal .close {
  top: 10px;
  right: 10px;
  width: 60px; /* 按鈕大小 */
  height: 60px;
  font-size: 40px; /* 文字大小 */
}

/* 左右按鈕專屬樣式 */
.imageModal .prev,
.imageModal .next {
  top: 50%;
  transform: translateY(-50%);
  width: 70px; /* 調整按鈕寬度 */
  height: 70px; /* 調整按鈕高度 */
  font-size: 30px; /* 調整按鈕字體大小 */
  line-height: 50px; /* 讓文字垂直居中 */
  margin-top: -25px; /* 高度的一半，讓按鈕居中 */
  background: rgba(0, 0, 0, 0.5); /* 增加半透明背景 */
  color: white;
  text-align: center; /* 文字居中 */
}

/* 左按鈕位置 */
.imageModal .prev {
  left: 5%; /* 距離左側 */
}

/* 右按鈕位置 */
.imageModal .next {
  right: 5%; /* 距離右側 */
}

/* 圖片描述文字樣式 */
.caption {
  margin-top: 15px; /* 與圖片保持適當距離 */
  text-align: center;
  color: white;
  font-size: 28px;
  font-weight: bold;
  max-width: 80%; /* 與圖片保持一致的寬度 */
}

/* 模態框樣式 certification-Modal*/
.certification-Modal {
  display: none; /* 預設隱藏 */
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 100;
  overflow: auto;
}

.certification-Image {
  max-width: 1000px; /* 確保圖片不貼滿容器 */
  max-height: 1000px;
  object-fit: contain; /* 保持圖片比例 */
}

.certification-modal-header {
  width: 100%;
  height: 10%;
  background-color: #1c96d4; /* 綠色背景 */
  display: flex;
  justify-content: center; /* 水平置中 */
  align-items: center; /* 垂直置中 */
  position: relative;
}

.certification-slider-item {
  display: flex;
  justify-content: center; /* 水平置中 */
  height: auto; /* 確保父容器有高度 */
  width: auto; /* 充滿父容器 */
  position: relative;
  box-sizing: border-box; /* 確保 padding 不影響尺寸 */
}

/* 左右按鈕專屬樣式 */
.certification-modal-header .prev,
.certification-modal-header .next {
  top: 50%;
  transform: translateY(-50%);
  width: 50px; /* 調整按鈕寬度 */
  height: 50px; /* 調整按鈕高度 */
  font-size: 30px; /* 調整按鈕字體大小 */
  line-height: 50px; /* 讓文字垂直居中 */
  background: rgba(255, 255, 255, 0); /* 增加半透明背景 */
  border: 2px solid #ffffff; /* 邊框 */
  color: white;
  text-align: center; /* 文字居中 */
}

/* 關閉按鈕專屬樣式 */
.certification-modal-header .close {
  margin: auto;
  color: white;
  background: rgba(255, 255, 255, 0); /* 增加半透明背景 */
  border: 2px solid #ffffff; /* 邊框 */
  opacity: 1;
  width: 50px; /* 調整按鈕寬度 */
  height: 50px; /* 調整按鈕高度 */
}

.certification-modal-header .prev {
  margin-right: 10%;
}

.certification-modal-header .next {
  margin-left: 10%;
}

/* 模態框樣式 galleryModal*/
.galleryModal {
  display: none; /* 預設隱藏 */
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 1000;
}

.modal-header {
  width: 100%;
  height: 10%;
  background-color: #1c96d4; /* 綠色背景 */
  display: flex;
  justify-content: center; /* 水平置中 */
  align-items: center; /* 垂直置中 */
  position: relative;
}

/* 內容區域 */
.modal-content {
  text-align: center;
  padding: 20px;
  overflow-y: auto; /* 允許垂直滑動 */
}

.modal-title {
  font-weight: bold;
  padding: 10px;
  margin-bottom: 10px;
}

.modal-description {
  font-size: 1.2rem;
  color: #000000;
}

/* 當前圖片位置計數器 */
.modal-counter {
  position: absolute;
  right: 2%;
  color: white;
  font-size: 20px;
}

.gallery-slider-item {
  display: flex;
  justify-content: center; /* 水平置中 */
  height: auto; /* 確保父容器有高度 */
  width: auto; /* 充滿父容器 */
  position: relative;
  box-sizing: border-box; /* 確保 padding 不影響尺寸 */
}

.galleryImage {
  max-width: 1000px; /* 確保圖片不貼滿容器 */
  max-height: 1000px;
  object-fit: contain; /* 保持圖片比例 */
}

/* 左右按鈕專屬樣式 */
.modal-header .prev,
.modal-header .next {
  top: 50%;
  width: 50px; /* 調整按鈕寬度 */
  height: 50px; /* 調整按鈕高度 */
  font-size: 30px; /* 調整按鈕字體大小 */
  line-height: 50px; /* 讓文字垂直居中 */
  margin-top: -25px; /* 高度的一半，讓按鈕居中 */
  background: rgba(255, 255, 255, 0); /* 增加半透明背景 */
  border: 2px solid #ffffff; /* 邊框 */
  color: white;
  text-align: center; /* 文字居中 */
}

/* 關閉按鈕專屬樣式 */
.modal-header .close {
  margin: auto;
  color: white;
  background: rgba(255, 255, 255, 0); /* 增加半透明背景 */
  border: 2px solid #ffffff; /* 邊框 */
  opacity: 1;
  width: 50px; /* 調整按鈕寬度 */
  height: 50px; /* 調整按鈕高度 */
}

.modal-header .prev {
  margin-right: 10%;
}

.modal-header .next {
  margin-left: 10%;
}

.modal-content .content-wrapper {
  display: flex;
  justify-content: space-between; /* 左右對齊 */
  align-items: flex-start; /* 避免內容被拉伸 */
  max-width: 1000px; /* 限制最大寬度，避免過度擴展 */
  margin: 0 auto; /* 置中顯示 */
  padding-top: 20px;
}

.modal-content .content-text {
  width: 65%;
  font-size: 16px;
  line-height: 1.6;
  text-align: justify; /* 讓文字左右對齊 */
  color: #000000;
}

.modal-content .content-info {
  width: 30%;
  font-size: 16px;
  color: #000000;
  font-weight: bold;
  text-align: justify;
}

.gmodal-content .content-info table {
  width: 100%;
  border-collapse: collapse;
}

.modal-content .content-info td {
  padding: 0px 10px 20px 10px;
}

.modal-content .content-info strong {
  font-weight: bold;
}

/* ===================================
    Project section css
====================================== */
.project-sec {
  position: relative;
  padding-bottom: 0;
}
.project-sec .row {
  margin: 0 !important;
}
.project-sec .project-area {
  position: relative;
}
.project-sec .project-area .project-img img {
  height: 100%;
  width: 100%;
}
.project-sec .project-area .project-detail {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: white;
}
.project-sec .project-area .project-detail .project-sub-heading {
  font-family: Roboto, sans-serif;
  font-size: 16px;
  color: #ff431e;
  margin-bottom: 35px;
  display: inline-block;
  font-weight: bold;
}
.project-sec .project-area .project-detail .project-sub-heading span {
  display: inline-block;
  width: 30px;
  height: 2px;
  background-color: #ff431e;
  margin-right: 8px;
  margin-bottom: 4px;
}
.project-sec .project-area .project-detail .project-heading {
  font-size: 30px;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  color: white;
  font-weight: 500;
  margin-bottom: 40px;
}

.project-sec .project-area .project-detail .project-heading span {
  display: block;
}

.project-sec .project-area .project-detail .project-text {
  font-family: Roboto, sans-serif;
  font-weight: lighter;
  font-size: 15px;
  color: #cccccc;
  margin-bottom: 33px;
  width: 75%;
}
.project-sec .project-links {
  position: absolute;
  top: 90%;
  left: 42%;
  transform: translate(-50%, -50%);
  z-index: 1111;
  cursor: pointer;
}
.project-sec .project-links a i {
  color: #ffffff;
  font-size: 22px;
  transition: 0.8s ease;
}
.project-sec .project-links a:hover i {
  color: #f73859;
}
.project-sec .owl-item.active .project-area .project-detail .animate-fade {
  animation: 1.5s slideInUp;
}
.project-sec .owl-item.active .project-area .project-detail .animate-box {
  animation: 2s slideInLeft;
}
.project-sec .owl-item.active .project-area .project-detail .animate-roll {
  animation: 2s slideInLeft;
}
.project-sec .owl-item.active .project-area .project-detail .animate-in {
  animation: 2s fadeIn;
}

.project-sec .owl-item.active .project-area .project-detail .animate-fate-in {
  animation: 1.5s fadeIn;
}

.color-black {
  color: black !important;
}
.bg-black {
  background-color: black !important;
}
.color-white {
  color: white !important;
}

.project-box {
  background: rgba(32, 32, 32, 0.9);
  padding: 25px;
}

/* ===================================
    dividing-line
====================================== */

.dividing-line {
  height: 1px;
  background-color: #cccccc;
  margin-top: 10px;
}
/* ===================================
    GALLARY SECTION
====================================== */

.gallary-sec {
  padding-bottom: 0;
  background-color: rgb(255, 255, 255);
}

.gallary-sec .stats-heading-area .sub-heading {
  font-family: Roboto, sans-serif;
  font-size: 22px;
  color: #202020;
  font-weight: bold;
  margin-bottom: 20px;
}

.gallary-sec .stats-heading-area .heading {
  color: #202020;
  font-family: Oswald, sans-serif;
  font-size: 60px;
  font-weight: 700;
  margin-bottom: 50px;
}

.gallary-sec .stats-heading-area .heading {
  margin-bottom: 60px;
}

.gallary-sec .stats-heading-area .heading span.color {
  display: inline-block;
  color: #ff431e;
}

.gallary-sec .stats-heading-area .heading span {
  display: block;
}

.gallary-sec .stats-heading-area .text {
  color: #202020;
  width: auto;
  margin: 0 auto;
}

.gallary-sec .gallary-content-top {
  margin-bottom: 80px;
}

.gallary-sec .gallary-manage-top {
  margin-top: 80px;
}

.property-details h5 {
  color: #202020;
}

.user-rating {
  list-style: none;
  margin-bottom: 0;
}

.user-rating li {
  display: inline-block;
  color: #ffc600;
}

.property-price {
  color: #ff431e;
}

.gallary-contact-btn a {
  margin-top: 80px;
}

.first-row,
.second-row {
  display: flex;
  gap: 5%;
  margin-bottom: 20px;
  justify-content: center;
  flex-wrap: nowrap;
}
.second-row {
  margin-bottom: 5%;
}

.card {
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  flex: 0 0 35%; /* Four cards per row */
  box-sizing: border-box;
}

.card-img-top {
  height: 200px; /* 固定高度 */
  object-fit: fill;
}

.other-img-fit {
  object-fit: revert;
}

.gallary-container {
  width: 100%;
}

.card .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.5s ease;
  cursor: pointer;
}

.card:hover .overlay {
  opacity: 1;
}

.overlay .text {
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  animation: fadeIn 0.8s ease;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 四角裝飾 */
.overlay::before,
.overlay::after {
  content: "";
  position: absolute;
  border: 5px solid #fff;
  animation: borderEffect 0.8s ease-in-out infinite;
}

.overlay::before {
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  border-right: none;
  border-bottom: none;
}

.overlay::after {
  bottom: 0;
  right: 0;
  width: 50px;
  height: 50px;
  border-left: none;
  border-top: none;
}

.page-content {
  display: none; /* 預設隱藏所有內容 */
}

.page-content.active {
  display: block; /* 加上 active 顯示 */
}

/* ===================================
    Product Section
=================================== */

.product-item {
  background-color: #ffffff;
  margin-top: 1.5rem;
  padding: 0;
  -webkit-box-shadow: 1px 1px 8px #e1e1e1;
  box-shadow: 1px 1px 8px #e1e1e1;
  -webkit-transition: 0.8s ease;
  -o-transition: 0.8s ease;
  transition: 0.8s ease;
}

.product_header {
  background-color: #002450;
  padding: 20px 0 20px 0;
  -webkit-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
  border-bottom: 1px solid transparent;
}

.product_header_text {
  z-index: 1;
  font-size: 26px;
  position: relative;
  font-weight: normal;
  color: #fff;
  font-weight: bold;
}
.actual_product {
  font-weight: bold;
  margin-top: 10px;
  padding: 20px;
  font-size: 24px;
}
.actual_price {
  font-size: 36px;
  z-index: 1;
  color: #002450;
  text-align: center;
  padding-top: 40px;
  position: relative;
  font-weight: 600;
}

.small_font {
  font-size: 16px;
  font-weight: bold;
}

.product-list {
  padding-bottom: 10px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: center;
}

.product-list li {
  padding: 8px;
  text-align: left; /* 文字左對齊 */
  font-size: 20px;
  color: #000000;
  font-weight: bold;
}

.product-item-center {
  background-color: #ffffff;
  padding: 0;
  -webkit-box-shadow: 1px 1px 8px #e1e1e1;
  box-shadow: 1px 1px 8px #e1e1e1;
  -webkit-transition: 0.8s ease;
  -o-transition: 0.8s ease;
  transition: 0.8s ease;
}

.product_header-center {
  padding-top: 40px;
  padding-bottom: 40px;
  background: #00b7ff; /* fallback for old browsers */
  background: -webkit-linear-gradient(
    to left,
    #0176ff,
    #00b7ff
  ); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(
    to left,
    #0176ff,
    #00b7ff
  ); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.product-item .btn.btn-medium,
.product-item-center .btn.btn-medium {
  padding: 12px 42px;
}

.btn-blue-dark-white {
  background-color: #002450;
  color: #fff;
}

/* Center Price Button */
.btn:hover {
  background-position: right center;
  color: #ffffff;
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transform: scale(1.1);
}

.btn .btn-primary {
  border: none;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  background-size: 200% auto;
  background-image: -o-linear-gradient(
    left,
    #00b7ff 0%,
    #0176ff 51%,
    #00b7ff 100%
  );
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#00b7ff),
    color-stop(51%, #0176ff),
    to(#00b7ff)
  );
  background-image: linear-gradient(
    to right,
    #00b7ff 0%,
    #0176ff 51%,
    #00b7ff 100%
  );
}

/* product Hover Effect */
.product-item,
.product-item-center {
  position: relative;
  overflow: hidden;
  vertical-align: bottom;
  transition: color 0.3s ease-out;
  z-index: 0;
}

.product-item::before,
.product-item-center::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  transform: translateX(calc(-100% - 0px));
  width: 100%;
  height: 100%;
  transition: transform 0.25s ease-out;
}

.product-item::before {
  background: #00b6ff;
}

.product-item-center::before {
  background: #002450;
}

.product-item:hover *,
.product-item-center:hover * {
  color: #ffffff;
}

.product-item:hover::before,
.product-item-center:hover::before {
  transform: translateY(0);
  transition: transform 0.25s ease-out;
}
/* =========================
   Policy Section
========================= */
/* 卡片群組：不滿版、左右留白 */
.policy-cards {
  max-width: 1100px;
  margin: 40px auto 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

/* 單張卡片 */
.policy-card {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
  overflow: hidden;
}

/* 卡片標題列 */
.policy-card-head {
  width: 100%;
  background: #002450;
  padding: 22px 24px;
  display: flex;
  align-items: center;
  gap: 14px;
}

/* Icon（白色，搭深藍底） */
.policy-card-head .p-icon {
  font-size: 1.25rem;
  color: #ffffff;
}

/* 標題文字（白色，只有標題例外） */
.policy-card-head .p-title {
  font-size: 1.3rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.3px;
}

/* 內容區：白底、黑字 */
.policy-card-body {
  padding: 18px 24px 24px;
}

/* 內文段落 */
.policy-card-body p {
  font-size: 1.05rem;
  line-height: 1.8;
  color: #000000;
  margin-bottom: 12px;
}

/* 清單文字 */
.policy-card-body li {
  font-size: 1.05rem;
  line-height: 1.8;
  color: #000000;
  margin-bottom: 6px;
  font-weight: 400;
}

/* 清單 */
.policy-list {
  padding-left: 18px;
  margin-top: 8px;
}
/* ===================================
    News Section
=================================== */
.new {
  display: flex;
  justify-content: center; /* 讓 `.list-group` 置中 */
  width: 100%;
}

/* 讓列表整體更寬 */
.list-group {
  width: 1000px;
  margin: 0 auto; /* 讓 `.list-group` 確保置中 */
}

/* 讓 .list-content 內的項目可以換行 */
.list-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap; /* 允許內容換行，避免跑版 */
  padding: 15px 20px;
  border-bottom: 1px solid #ddd;
}

/* 左側數字 */
.index {
  font-weight: bold;
  text-align: right;
}

/* 中間標題 (讓字變粗) */
.alt-features-title {
  flex: 1;
  padding: 0 15px; /* 增加內距 */
  font-weight: bold; /* 讓標題變粗 */
  font-size: 18px; /* 讓標題稍微變大 */
}

/* 右側日期 */
.date {
  text-align: right;
  white-space: nowrap;
  font-weight: bold;
  font-size: 16px; /* 讓日期稍微變大 */
}

/* 列表項目懸停時變色 */
.list-group-item:hover {
  background-color: #f8f9fa;
  transition: background 0.3s ease-in-out;
  color: #1c96d4;
}

/* "更多資訊" 置右 */
.more-info {
  width: 90%; /* 讓它與 .list-group 一致 */
  max-width: 1000px; /* 確保與新聞列表對齊 */
  margin: 15px auto 0 auto; /* 讓它置中，但靠左 */
  text-align: right; /* 讓文字靠左對齊 */
}

.more-info a {
  display: inline-block;
  text-decoration: underline;
  font-size: 16px;
  font-weight: bold;
  color: #000;
  padding: 5px 10px;
}

/* ===================================
    contact Section
=================================== */
.contact-general-center {
  margin-bottom: 25px;
}
.company-map-text {
  color: #000;
}

.col-md-6-contact {
  flex: 0 0 75%;
}

.container {
  max-width: 1100px;
}

.contact-content {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: 15%; /*增加左右間距 */
}

.col-md-6 .contact {
  flex: 0 0 65%;
}
/* 左側地圖 */
.map-container {
  width: 800px;
  height: auto;
  background-color: #f2f2f2;
}

.map-container img {
  width: auto;
  height: auto;
  object-fit: contain;
}

/* 右側聯絡資訊 */
.contact-info {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  margin-left: 20px;
}

.contact-title {
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 10%;
}

.contact-time {
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 10%;
}

.info-item {
  display: flex;
  margin-bottom: 10%;
}

.fas {
  font-size: 36px;
  margin-right: 15px;
  color: #1c96d4;
}

.info-item a {
  text-decoration: none;
  font-weight: bold;
  transition: all 0.3s ease; /* 平滑過渡效果 */
  font-size: 28px;
}

/* 滑鼠懸停效果 */
.info-item a:hover {
  text-decoration: underline; /* 滑鼠懸停時加底線 */
  color: #1c96d4; /* 改變顏色 */
  font-size: 1.8em; /* 稍微增大字體 */
  transform: translateY(-3px); /* 稍微向上移動 */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* 增加陰影效果 */
}

/* ===================================
   testimonial
====================================== */

.our-testimonial {
  padding-bottom: 0;
}

.parallax-disable {
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}

.page-header {
  background-position: center center;
  -webkit-background-size: cover;
  background-size: cover;
  background-attachment: fixed;
  width: 100%;
}

.testimonial-bg {
  background: url("../img/testimonial-banner.jpg") no-repeat;
  min-height: 300px;
}

.testimonial-content {
  padding-top: 85px;
  color: #ffffff;
}

.testimonial-content h2 {
  font-family: "Oswald", sans-serif;
  font-size: 50px;
  font-weight: 500;
  text-transform: uppercase;
}

.bg-testimonial,
#testimonial-slider .owl-nav {
  position: relative;
}

#testimonial-slider {
  margin-top: -60px;
  margin-bottom: 0;
}

.bg-transparent {
  background: transparent;
}

.bg-testimonial::after {
  height: 55%;
  left: 0;
  top: 0;
  position: absolute;
  background: url(../img/testimonial-banner.jpg) no-repeat center center;
  -webkit-background-size: cover;
  background-size: cover;
  z-index: -1;
}

.bg-testimonial::after,
.testi-box .testimonial-round > img {
  width: 100%;
}

.testi-box .testimonial-round {
  height: 180px;
  width: 180px;
  overflow: hidden;
}

.testi-box .testimonial-round,
.testi-box .testimonial-round > img {
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

.testi-box.no-rounded .testimonial-round,
.testi-box.no-rounded .testimonial-round > img {
  -webkit-border-radius: 0 !important;
  border-radius: 0 !important;
  border: 1px solid #24cdd5;
}

.testi-box .testimonial-round:hover > img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
}

.testimonial-round > img {
  pointer-events: none;
}

#testimonial-slider .owl-nav {
  width: 300px;
  display: inline-block;
  height: 30px;
  -webkit-transform: translateY(-150%);
  -moz-transform: translateY(-150%);
  -ms-transform: translateY(-150%);
  -o-transform: translateY(-150%);
  transform: translateY(-150%);
  margin-left: 2%;
  position: absolute;
  z-index: 5;
}

/*styling for star rating*/

.test-star {
  font-size: 12px;
  color: #ffc13c;
  cursor: pointer;
}

#rattingIcon .fa-star {
  color: #ffc107;
  font-size: 16px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

#ratingText {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.rating-part {
  margin-top: 100px;
}

.our-testimonial .owl-carousel .owl-nav button.owl-next {
  position: absolute;
  right: 0;
}

.our-testimonial .owl-carousel .owl-nav button.owl-prev {
  position: absolute;
  left: 0;
}

@media (max-width: 992px) {
  #testimonial-slider .owl-nav {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%);
    margin-left: 1%;
  }
}
/*----- Testimonial ends home page-----*/

/* ===================================
   Contact Us
====================================== */

.slider-form-area .contact-form {
  max-width: 750px;
  display: block;
  text-align: center;
  margin: 0 auto;
}

.slider-form-area .contact-form .form-control {
  border: none;
  border-bottom: 1px solid #e2e2e2;
  padding: 12px 0;
  color: #ffffff;
  letter-spacing: 0.7px;
  font-weight: 300;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  height: 44px;
  font-size: 14px;
  position: relative;
  -webkit-transition: border 0.9s ease;
  -o-transition: border 0.9s ease;
  transition: border 0.9s ease;
}

.slider-form-area .contact-form textarea {
  min-height: 175px;
  resize: none;
}

.slider-form-area .contact-form .form-group {
  margin-bottom: 1.5rem;
}

/*#client-nav button:hover > span{*/
/*    color: #fff;*/
/*}*/

/* ===================================
   Footer
====================================== */

/* ===================================
      Contact sec css
====================================== */

.contact-sec {
  padding-bottom: 0;
  background-color: #cccccc;
}

.contact-sec .heading {
  color: #202020;
  font-size: 40px;
  margin-bottom: 40px;
}
.contact-sec .contact-form {
  width: 95%;
}
.contact-sec .contact-form input {
  color: #8799a3;
  font-size: 16px;
  height: 50px;
  padding: 25px;
}
.contact-sec .contact-form .form-control {
  border-radius: 0;
  border: solid 2px #eceef2;
}
.contact-sec .contact-form input::placeholder {
  color: #8799a3;
  font-size: 16px;
}
.contact-sec .contact-form textarea {
  padding: 13px;
  padding-left: 25px;
  height: 202px;
  color: #8799a3;
  font-size: 16px;
}
.contact-sec .contact-form .purple-btn {
  margin-top: 15px;
}

/*contact details*/
.contact-sec .contact-background {
  position: absolute;
  right: 0;
  top: -35px;
  z-index: -1;
}
.contact-sec .contact-details {
  font-family: Roboto, sans-serif;
  width: 90%;
  margin-left: 20px;
}
.contact-sec .contact-details .heading {
  margin-bottom: 35px;
}
.contact-sec .contact-details .text {
  color: #18212e;
  /*opacity: .8;*/
}
.contact-sec .contact-details ul {
  padding-left: 0;
  margin-bottom: 0;
  margin-top: 50px;
}
.contact-sec .contact-details ul li {
  color: #18212e;
  /*opacity: .8;*/
  list-style: none;
  margin-bottom: 22px;
  font-size: 16px;
  display: flex;
  align-items: center;
}
.contact-sec .contact-details ul li:first-child {
  width: 70%;
}
.contact-sec .contact-details ul li span {
  display: inline-block;
  padding-right: 30px;
}
.contact-sec .contact-details ul li span:last-child {
  padding-right: 0;
}
.contact-sec .contact-details ul li i {
  font-size: 30px;
  margin-right: 20px;
  margin-bottom: 8px;
  color: #ff431e;
}
.contact-sec .contact-details ul li i.email {
  transform: rotate(-30deg);
}

/* ===================================
   Footer
====================================== */

.footer-style-1 {
  padding: 5rem 0;
}

.footer-social ul {
  margin: 0;
  padding: 0;
}

.footer-social li {
  display: inline-block;
}

.footer-social a {
  display: block;
  width: 45px;
  height: 45px;
  text-align: center;
  line-height: 45px;
  border-radius: 50px;
  font-size: 17px;
  margin: 0 10px 0 0;
  border: 1px solid transparent;
  -webkit-transition: background-color 0.2s ease-in-out;
  -o-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
}

.footer-social li:nth-last-child(1) a {
  margin-right: 0;
}

.footer-social li a:hover {
  background-color: #39c5de;
  color: #ffffff;
}

.company-about {
  font-size: 14px;
}

/* ===================================
   Scroll Top
====================================== */
.fa-angle-up {
  color: #ffffff;
  margin: 0;
}

.scroll-top-arrow,
.scroll-top-arrow:focus {
  font-size: 25px;
  line-height: 50px;
  color: #ffffff;
  background-color: #1c96d4;
  display: none;
  height: 45px;
  width: 45px;
  cursor: pointer;
  padding: 0;
  position: fixed;
  bottom: 20px;
  right: 20px;
  text-align: center;
  text-decoration: none;
  z-index: 80;
  border-radius: 50px;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.scroll-top-arrow:hover {
  background-color: #1c96d4;
}

/* ===================================
    Cursor
====================================== */

.magic {
  display: none !important;
}
.aimated-cursor {
  position: absolute;
  left: 0;
  display: none;
  top: 0;
  width: 30px;
  height: 30px;
  pointer-events: none;
  z-index: 10000;
  -webkit-transition: opacity 0.2s ease-in-out 0.5s;
  -o-transition: opacity 0.2s ease-in-out 0.5s;
  transition: opacity 0.2s ease-in-out 0.5s;
}

.cursor-light:hover ~ .aimated-cursor {
  display: inline-block;
  z-index: 9999999;
}
.cursor {
  position: fixed;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;
  border: 2px solid rgb(255, 255, 255);
  /*border: 2px solid rgb(0, 0, 0);*/
  border-radius: 50%;
  pointer-events: none;
  opacity: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 999999999;
}

/*slider social*/

.slider-social {
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 11;
  color: #ffffff;
}
.side-nav-menu .slider-social {
  right: auto;
}
.slider-social li {
  list-style: none;
}

.slider-social a {
  text-decoration: none;
  width: 40px;
  height: 40px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 30px;
  border-radius: 50px;
  font-size: 16px;
  margin: 2px;
  border: 1px solid transparent;
  -webkit-transition: background-color 0.2s ease-in-out;
  -moz-transition: background-color 0.2s ease-in-out;
  -o-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
  position: relative;
}

/*Social Icon Hover Bg Hover */
.facebook_bg_hvr2:hover {
  color: #ffffff !important;
  background: #4267b2 !important;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.twitter_bg_hvr2:hover {
  color: #ffffff !important;
  background: #00a7e6;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.linkdin_bg_hvr2:hover {
  color: #ffffff !important;
  background: #1682ab;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.googleplus_bg_hvr2:hover {
  color: #ffffff !important;
  background: #d5463a;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.pintrest_bg_hvr2:hover {
  color: #ffffff !important;
  background: #c8232c;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.instagram_bg_hvr2:before {
  content: "";
  position: absolute;
  left: -1px;
  right: -1px;
  bottom: -1px;
  top: -1px;
  opacity: 0;
  visibility: hidden;
  background: radial-gradient(
    circle at 30% 107%,
    #fdf497 0%,
    #fdf497 5%,
    #fd5949 45%,
    #d6249f 60%,
    #285aeb 90%
  ) !important;
  border-radius: inherit;
  z-index: -1;
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.instagram_bg_hvr2:hover {
  color: #ffffff !important;
  z-index: 999;
}
.instagram_bg_hvr2:hover:before {
  opacity: 1;
  visibility: visible;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/**/
/*STAND ALONE PAGE*/

/* ===================================
   Other Page
====================================== */
.standalone-background-img {
  background: url("../img/project-banner1.jpg");
}

.listing-background-img {
  background: url("../img/listing-background.jpg");
}

.detail-background-img {
  background: url("../img/detail-background.jpg");
}

.page-title {
  position: relative;
  text-align: center;
  padding: 125px 0px 125px;
  background-size: cover;
  background-position: top center;
}

.standalone-content {
  /*position: absolute;*/
  /*top: 50%;*/
  /*left: 50%;*/
  /*transform: translate(-50%,-50%);*/
  margin-top: 150px;
}

.page-title .auto-container {
  position: relative;
}

.page-title h2 {
  position: relative;
  color: #ffffff;
  font-weight: 600;
  line-height: 1.2em;
  margin-bottom: 10px;
  font-size: 3.5rem;
  text-transform: capitalize;
}

.page-breadcrumb {
  position: relative;
}

.page-breadcrumb li {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  padding-right: 15px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 400;
  text-transform: capitalize;
}

.page-breadcrumb li:after {
  position: absolute;
  content: "\f101";
  right: -5px;
  top: 1px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
}

.page-breadcrumb li:last-child::after {
  display: none;
}

.page-breadcrumb li:last-child {
  padding-right: 0px;
  margin-right: 0px;
}

.page-breadcrumb li a {
  color: #fff;
  font-weight: 400;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}

.page-breadcrumb li a .icon {
  margin-right: 4px;
  color: #ff431e;
}

.page-breadcrumb li a:hover {
  color: #ffffff;
}

.standalone-row:not(:last-child) {
  margin-bottom: 3rem;
}
.standalone-row .stand-img-des {
  padding-left: 30px;
  text-align: center;
}
.standalone-row:nth-child(2) .stand-img-des {
  padding-left: 0;
  padding-right: 30px;
}
.standalone-detail .sub-heading {
  color: #c29e75;
  margin-bottom: 10px;
}
.standalone-area .sub-heading {
  color: #c29e75;
  margin-bottom: 8px;
}
.standalone-detail .heading {
  margin-bottom: 20px;
  font-size: 56px;
  color: #2b2b2b;
  font-weight: 500;
  font-family: "Oswald", sans-serif;
}

.standalone-detail .para_text {
  color: #2b2b2b;
  font-family: "Roboto", sans-serif;
  text-align: center;
  font-size: 15px;
  margin: 0 auto;
  line-height: 2.1;
}

.standalone-detail {
  padding-bottom: 100px;
}
.standalone-area .gradient-text1 {
  font-weight: 500;
  margin-bottom: 12px;
  font-family: "Oswald", sans-serif;
  font-size: 45px;
}
.standalone-area .stand-img-des .para_text {
  font-family: "Roboto", sans-serif;
  color: #2b2b2b;
}

/**/

/* ===================================
           Propperty Listing
======================================*/

/*slider form*/

.filter-form {
  background-color: #f1f1f1;
}
.filter-form .contact-form {
  padding: 15px 0;
}
.filter-form .contact-form .form-group {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  width: 95%;
}
.filter-form .contact-form label {
  margin-bottom: 0;
  color: gray;
  position: relative;
  left: -6px;
  top: -1px;
  z-index: 11;
  font-size: 22px;
}
.filter-form .contact-form input {
  color: gray;
  font-size: 16px;
  height: 50px;
  padding: 25px;
}
.filter-form .contact-form .form-control {
  border-radius: 0;
  border: solid 2px transparent;
  margin-bottom: 0;
  border-right: solid 2px #eceef2;
  background-color: transparent;
}
.filter-form .contact-form .form-control:last-child {
  border-right: none;
}
.filter-form .contact-form input::placeholder {
  color: #8799a3;
  font-size: 16px;
}
.filter-form .green-btn {
  padding: 15px 35px;
}
.filter-form .form-control:focus {
  border-color: #80bdff00;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0);
}

.filter-form .select2-container {
  width: 100% !important;
}

.filter-form .select2-container--default .select2-selection--single {
  background-color: transparent;
  border: none;
  border-radius: 0;
  width: 100%;
}

.filter-form
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: gray;
}

.product-filter-nav {
  position: -webkit-sticky;
  position: sticky;
  top: 95px;
  z-index: 111;
}

.change-position {
  position: relative;
}

/**********************************/
/* START PRODUCT DETAIL PAGE */
/***********************************/

.about_content {
  padding-top: 80px;
  padding-bottom: 0;
}

.product-body .breadcrumb {
  background-color: transparent;
  padding-left: 0px;
  padding-right: 0px;
}
.breadcrumb-item + .breadcrumb-item::before {
  content: "|";
}

.product-body .breadcrumb .breadcrumb-item a {
  color: #000000;
  font-size: 14px;
  font-family: "Poppins", sans-serif;
  font-weight: normal;
}
.product-body .pro-detail-sec .pro-heading {
  font-size: 60px;
  font-family: "Oswald", sans-serif;
  font-weight: normal;
  color: #202020;
  margin-bottom: 15px;
  text-transform: uppercase;
}

.product-detail {
  margin-top: 50px;
}

.product-body .product-list .product-item .p-item-img {
  position: relative;
}
.product-body .product-list .product-item .p-item-img img {
  height: 100%;
  width: 100%;
}
.product-body .product-list .product-item .p-item-img .p-item-overlay {
  position: absolute;
  background-color: #00000080;
  top: 0;
  bottom: 0;
  left: 15px;
  right: 15px;
  -webkit-transition: 0.8s ease;
  -o-transition: 0.8s ease;
  transition: 0.8s ease;
  cursor: pointer;
  opacity: 0;
}
.product-body .product-list .product-item:hover .p-item-img .p-item-overlay {
  opacity: 1;
}

.product-body .product-list .product-item .p-item-img .p-item-overlay .btn {
  padding: 4px 15px 3px 15px;
  font-size: 10px;
  border: solid 1px transparent;
  display: block;
}
.product-body .product-list .product-item .p-item-img .p-item-overlay .q-btn {
  background-color: #03a9f5;
  padding: 4px 20px 3px 20px;
  color: #ffffff;
  margin-bottom: 3px;
}
.product-body .product-list .product-item .p-item-name {
  font-size: 14px;
  color: #000000;
  font-family: Poppins, sans-serif;
  font-weight: normal;
  margin-top: 15px;
  margin-bottom: 8px;
}
.product-body .product-list .product-item .p-item-price {
  font-size: 16px;
  color: #03a9f5;
  font-family: Poppins, sans-serif;
  font-weight: normal;
  text-align: center;
}

.product-section-body .product-body .p-featured-footer p {
  font-size: 16px;
  color: #000000;
  font-family: "Poppins", sans-serif;
  font-weight: lighter;
  margin-bottom: 20px;
}
.product-section-body .product-body .p-featured-footer .terms h4 {
  font-size: 18px;
  color: #000000;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}
.product-section-body .product-body .p-featured-footer .terms p {
  font-family: Poppins, sans-serif;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 1.5px;
  color: #000000;
}

/*Product Detail*/

.product-detail-slider img {
  width: 100%;
}

.product-slider .swiper-slide img {
  height: auto;
}

.product-body .product-list .product-single-price {
  margin-bottom: 10px;
}

.product-body .product-list .product-single-price h4 {
  font-size: 18px;
  font-family: Poppins, sans-serif;
  font-weight: normal;
  color: #d9d9d9;
  margin-bottom: 10px;
}

.product-body .product-list .product-single-price h4 .real-price {
  color: #ff431e;
}

.pro-description {
  font-size: 14px;
  font-weight: normal;
}

.product-body .product-detail .product-checklist {
  margin-top: 20px;
}

.product-body .product-detail .product-checklist ul {
  padding-left: 0px;
  margin-bottom: 20px;
}
.product-body .product-detail .product-checklist ul li {
  list-style: none;
  color: #000000;
  font-size: 12px;
  font-family: Poppins, sans-serif;
  font-weight: 500;
  margin-bottom: 5px;
}

.product-body .product-detail .product-checklist ul li i {
  color: #ff431e;
}
.product-body .product-list .product-detail .product-single-price {
  margin-top: 20px;
}

.product-body .product-list .product-quantity .qty .our-btn {
  position: relative;
}

.product-body .product-list .product-tags-list .breadcrumb .breadcrumb-item p {
  font-size: 14px;
  color: #000000;
  font-weight: normal;
}

.product-body .product-list .product-tags-list .breadcrumb .breadcrumb-item a {
  color: #ff431e;
  font-size: 12px;
}

.comma-separtor {
  color: #03a9f5;
}

.product-body .product-list .share-product-details .share-product-icons {
  padding: 0px;
}

.product-body .product-list .share-product-details .share-product-icons li p {
  color: #000000;
  font-size: 14px;
  font-weight: normal;
}

.product-body .product-list .share-product-details .share-product-icons li {
  display: inline-block;
  list-style: none;
  margin-right: 15px;
}
.product-body .product-list .share-product-details .share-product-icons li a {
  color: #000000;
  padding: 2px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: block;
  text-align: center;
  line-height: 27px;
  border: 1px solid transparent;
  transition: none;
}

.facebook-bg-hvr:hover {
  background: #4267b2 !important;
  color: #fff !important;
  border: 1px solid transparent !important;
}
.twitter-bg-hvr:hover {
  background: #1da1f2 !important;
  color: #fff !important;
  border: 1px solid transparent !important;
}
.instagram-bg-hvr:hover {
  color: #ffffff !important;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#aa2fb5),
    color-stop(93%, #f1762c)
  ) !important;
  background: -o-linear-gradient(top, #aa2fb5 0%, #f1762c 93%) !important;
  background: linear-gradient(to bottom, #aa2fb5 0%, #f1762c 93%) !important;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.linkedin-bg-hvr:hover {
  background: #0077b5 !important;
  color: #fff !important;
  border: 1px solid transparent !important;
}

#map {
  height: 300px;
}

/*nav tabs*/

.product-all-details {
  margin-top: 50px;
  margin-bottom: 50px;
}

.nav-tabs {
  border: none;
  background-color: #eceff6;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
  color: white;
  background-color: #ff431e;
  /*border-color: none;*/
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
  border: none;
  border-left: none;
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
  border: none;
}
.nav-tabs .nav-item {
  padding-left: 0px;
  padding-right: 0px;
  border-left: 1px solid #ffffff;
  margin-bottom: 0px;
}

.nav-tabs .nav-item:first-child {
  border-right: none;
}

.nav-tabs .nav-link {
  text-align: center;
  border: none;
  border-top-left-radius: 0px !important;
  border-top-right-radius: 0px !important;
  font-family: Poppins, sans-serif;
  font-size: 14px;
  font-weight: normal;
  color: #8b8d96;
}

.tab-content {
  border-left: 0.5px solid #eceff6;
  border-right: 0.5px solid #eceff6;
  border-bottom: 0.5px solid #eceff6;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.table td,
.table th {
  padding: 0.5rem;
}

.tab-content .reviews .media {
  margin-bottom: 15px;
}

.user-rating {
  padding: 0px;
  margin: 0px;
}

.user-rating li {
  display: inline-block;
  list-style: none;
}
.tab-content .reviews .media .user-rating li a {
  color: #f5c136;
}

.tab-content .reviews .media .media-body {
  border-left: 1px solid #eceff6;
  padding-left: 25px;
  padding-right: 25px;
  /*margin-left: -45px;*/
}

.tab-content .reviews .media .media-body span {
  font-family: Poppins, sans-serif;
  font-size: 12px;
  color: lightgrey;
  font-weight: lighter;
}

/*form*/
.tab-content .text-nowrap {
  font-size: 18px;
  font-family: Poppins, sans-serif;
  font-weight: 500;
}

textarea {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

textarea:focus {
  outline: none !important;
  border: 1px solid #ececec;
}

/*SWIPER SLIDER CODE*/
.wrapper {
  max-height: 360px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}
.product-detail-slider .swiper-slide {
  width: 96%;
}
.product-detail-slider .swiper-slide img {
  display: block;
  height: 100%;
  width: 100%;
  margin: 0 auto;
  -o-object-fit: cover;
  object-fit: cover;
  cursor: pointer;
}

.Thumbs {
  -ms-flex-preferred-size: 100px;
  flex-basis: 100px;
}
.Thumbs .swiper-slide {
  opacity: 0.4;
}
.Thumbs .swiper-slide-active {
  opacity: 1;
}

.remove-margins {
  margin: 0;
}

.property-addtional-info {
  list-style-position: outside;
  padding: 0;
  margin: 0 0 0;
  margin-left: 25px;
  list-style: none;
}

.property-addtional-info li {
  margin-bottom: 10px;
}

.property-addtional-info li i {
  display: inline-block;
  margin-right: 2px;
  color: #ff431e;
}

.property-addtional-info li p {
  display: inline-block;
  font-size: 17px;
}

.lastest_arrivals .user-rating {
  font-size: 14px;
}

/* ===================================
        MODEL WINDOW FORM
 ====================================== */

.quote-content {
  text-align: center;
  max-width: 900px;
  padding: 50px 150px;
  overflow: visible;
}

.quote-content .contact-form .form-control {
  border-radius: 0;
  padding: 0;
}

.quote-content #quote_submit_btn {
  margin-bottom: -120px;
}

/*CheckBox*/

.quote-content .form-check {
  padding: 50px 0 8px 0;
  text-align: center;
  margin-bottom: -15px;
}

.checkbox-lable {
  display: inline-block;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  font-size: 14px;
  line-height: 25px;
  font-weight: 400;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.checkbox-lable input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  border: 1px dotted #d4d4d4;
}

.checkbox-lable:hover input ~ .checkmark {
  background-color: #ccc;
}

.checkbox-lable input:checked ~ .checkmark {
  background-color: #ff431e;
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.checkbox-lable input:checked ~ .checkmark:after {
  display: block;
}

.checkbox-lable .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.quote-content .fancybox-close-small {
  top: 15px;
  right: 15px;
  width: 45px;
  height: 45px;
  border-radius: 50px;
  background: #1c96d4;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.quote-content .fancybox-close-small:hover,
.quote-content .fancybox-close-small:focus {
  background: #1c96d4;
}

.quote-content .fancybox-close-small:after {
  width: 35px;
  height: 35px;
  line-height: 35px;
  margin-top: -1px;
  font: initial;
  font-size: 35px;
  color: #fff;
}

.fancybox-close-small:focus:after {
  outline: none;
}

.quote-content .fancybox-close-small:hover:after,
.quote-content .fancybox-close-small:focus:after {
  background-color: transparent;
}

.quote-content .contact-form .form-control {
  border: none;
  border-bottom: 1.5px solid #e2e2e2;
  padding: 10px 0;
  background: #fff;
  font-weight: normal;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  height: 44px;
  color: #9b9b9b;
  font-size: 14px;
  position: relative;
  font-family: "Roboto", sans-serif;
  -webkit-transition: border 0.9s ease;
  -o-transition: border 0.9s ease;
  transition: border 0.9s ease;
}

.quote-content .contact-form textarea {
  min-height: 130px;
  resize: none;
}

.property-id {
  font-family: Roboto, sans-serif;
  font-size: 18px;
  color: #202020;
  font-weight: 400;
}

/* ===================================
    LOADER
   ====================================== */
.preloader {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: #fff;
  z-index: 999;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.3s ease;
}
.preloader.hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.centrize {
  display: table;
  table-layout: fixed;
  height: 100%;
  position: relative;
}
.full-width {
  max-width: 100%;
  width: 100%;
}
.vertical-center {
  display: table-cell;
  vertical-align: middle;
}

/* ===================================
   SVG
====================================== */
svg {
  width: 66vw;
  height: 30vh;
  overflow: visible;
  display: inline-block;
}

/* ===================================
   Cloud / Soil / Grass Reveal
====================================== */
/* ===== 顏色給 path，不跟遮罩混在一起 ===== */
.loading.ha-logo path.Cloud {
  fill: #2ea7e0;
}
.loading.ha-logo path.Soil {
  fill: #2ea7e0;
}
.loading.ha-logo path.Grass {
  fill: #22ac38;
}

/* ===== 遮罩與動畫全部套在 Layer（<g>） ===== */
.loading.ha-logo .CloudLayer,
.loading.ha-logo .SoilLayer,
.loading.ha-logo .GrassLayer {
  transform-box: fill-box;
  transform-origin: center;
  will-change: -webkit-mask-size, mask-size;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

/* 初始狀態 */
/* 雲：上 → 下 */
.loading.ha-logo .CloudLayer {
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 0%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 0%);
  -webkit-mask-size: 100% 0%;
  mask-size: 100% 0%;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
}
/* 土：左 → 右 */
.loading.ha-logo .SoilLayer {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 12%);
  mask-image: linear-gradient(to right, transparent 0%, black 12%);
  -webkit-mask-size: 0% 100%;
  mask-size: 0% 100%;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
}
/* 草：下 → 上（重點：position 在底部 0 100%） */
.loading.ha-logo .GrassLayer {
  -webkit-mask-image: linear-gradient(to top, transparent 0%, black 20%);
  mask-image: linear-gradient(to top, transparent 0%, black 20%);
  -webkit-mask-size: 100% 0%;
  mask-size: 100% 0%;
  -webkit-mask-position: 0 100%;
  mask-position: 0 100%;
}

/* 動畫 Keyframes（目標都是 100% 100%） */
@keyframes maskDown {
  from {
    -webkit-mask-size: 100% 0%;
    mask-size: 100% 0%;
  }
  to {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}
@keyframes maskRight {
  from {
    -webkit-mask-size: 0% 100%;
    mask-size: 0% 100%;
  }
  to {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}
@keyframes maskUp {
  from {
    -webkit-mask-size: 100% 0%;
    mask-size: 100% 0%;
  }
  to {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}

/* 觸發（.show 加在 Layer 上） */
.loading.ha-logo .CloudLayer.show {
  animation: maskDown 1.2s ease forwards;
}
.loading.ha-logo .SoilLayer.show {
  animation: maskRight 1.2s ease 0.15s forwards;
}
.loading.ha-logo .GrassLayer.show {
  animation: maskUp 1.2s ease 0.3s forwards;
}

/* 行動裝置減少動態 */
@media (prefers-reduced-motion: reduce) {
  .loading.ha-logo .CloudLayer,
  .loading.ha-logo .SoilLayer,
  .loading.ha-logo .GrassLayer {
    animation: none !important;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}

/* ===================================
   Media Queries (依照 Chrome DevTools 分類)
====================================== */

/* 1. Mobile S (max-width: 320px) */
@media screen and (max-width: 320px) {
  .slider-area .slider-content .heading {
    font-size: 32px;
    letter-spacing: 0.1em;
  }
  .side-menu {
    width: auto;
  }

  .side-menu.side-menu-active .side-nav .navbar-nav .nav-item {
    margin: 16px 0;
  }
  .side-nav .navbar-nav .nav-link {
    font-size: 24px;
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }
  /*home*/
  .company-text {
    font-size: 28px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 14px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(0%, 10%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 20px;
  }
  .company-slogan .slogan-en {
    font-size: 18px;
  }

  .subtitle {
    font-size: 12px;
  }
  .title-summary {
    font-size: 22px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 26px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  /* 讓容器可以換行而不是一路擠成一排 */
  .team-member-area {
    padding: 0 10px;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 14px 12px; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 120px;
    height: 120px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }
  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }

  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 8px; /* 卡片間距 */
    margin: 20px 6px 12px; /* 內外距縮小，避免超出螢幕 */
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 20px;
    width: 40px;
    height: 40px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 40px;
    height: 40px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }
  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .general-center .title {
    font-size: 22px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }
  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 14px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 12px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 18px;
    margin-bottom: 10px;
  }
  #contact .contact-time {
    font-size: 14px;
    margin-bottom: 12px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 12px;
  }
  #contact .info-item .fas {
    font-size: 16px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 14px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }

  .policy .policy-cards {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 0 12px; /* 手機左右留一點空 */
  }

  .policy .policy-cards {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 0 10px;
  }

  .policy .policy-card-head .p-title {
    font-size: 16px;
  }

  .policy .policy-card-body {
    font-size: 15px;
    line-height: 1.7;
  }
}

/* 2. Mobile M (321px - 375px) */
@media screen and (min-width: 321px) and (max-width: 375px) {
  .slider-area .slider-content .heading {
    font-size: 32px;
    letter-spacing: 0.1em;
  }
  .side-menu {
    width: auto;
  }

  .side-menu.side-menu-active .side-nav .navbar-nav .nav-item {
    margin: 16px 0;
  }
  .side-nav .navbar-nav .nav-link {
    font-size: 24px;
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }

  /*home*/
  .company-text {
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 20px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(0%, 10%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 20px;
  }
  .company-slogan .slogan-en {
    font-size: 18px;
  }

  .slider-area .slider-content .heading {
    font-size: 38px;
    letter-spacing: 0.1em;
  }
  .side-menu {
    width: auto;
  }

  .subtitle {
    font-size: 16px;
  }
  .title-summary {
    font-size: 28px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 28px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  .team-section .team-member-area {
    padding: 0 10px;
    margin-bottom: 55%;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 12% 10%; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }
  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }
  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 30px; /* 按鈕寬度 */
    height: 30px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 8px; /* 卡片間距 */
    margin: 20px 6px 12px; /* 內外距縮小，避免超出螢幕 */
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 20px;
    width: 40px;
    height: 40px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 40px;
    height: 40px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }
  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }
  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 14px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 12px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  #contact .contact-time {
    font-size: 18px;
    margin-bottom: 20px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  #contact .info-item .fas {
    font-size: 24px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 18px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }

  .policy .policy-cards {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 0 12px;
  }

  .policy .policy-card-head .p-title {
    font-size: 17px;
  }

  .policy .policy-card-body {
    font-size: 16px;
  }
}

/* 3. Mobile L (376px - 425px) */
@media screen and (min-width: 376px) and (max-width: 425px) {
  .side-menu {
    width: auto;
  }

  .side-menu.side-menu-active .side-nav .navbar-nav .nav-item {
    margin: 16px 0;
  }
  .side-nav .navbar-nav .nav-link {
    font-size: 24px;
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }

  /*home*/
  .company-text {
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 20px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(0%, 10%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 20px;
  }
  .company-slogan .slogan-en {
    font-size: 18px;
  }

  .slider-area .slider-content .heading {
    font-size: 44px;
    letter-spacing: 0.1em;
  }

  .title {
    font-size: 28px;
  }
  .subtitle {
    font-size: 18px;
  }
  .title-summary {
    font-size: 28px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 32px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  .team-section .team-member-area {
    padding: 0 10px;
    margin-bottom: 45%;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 12% 10%; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }
  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }
  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 30px; /* 按鈕寬度 */
    height: 30px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 8px; /* 卡片間距 */
    margin: 20px 6px 12px; /* 內外距縮小，避免超出螢幕 */
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 20px;
    width: 40px;
    height: 40px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 40px;
    height: 40px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }
  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 14px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 12px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  #contact .contact-time {
    font-size: 18px;
    margin-bottom: 20px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  #contact .info-item .fas {
    font-size: 24px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 18px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }
  .policy .policy-cards {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 0 14px;
  }

  .policy .policy-card-head .p-title {
    font-size: 18px;
  }

  .policy .policy-card-body {
    font-size: 16.5px;
  }
}

/* 4. Tablet (426px - 768px) */
@media screen and (min-width: 426px) and (max-width: 768px) {
  .navbar-nav li {
    margin: 16px 0;
  }
  .navbar-nav a {
    font-size: 18px; /* 手機上字大一點 */
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }
  /*home*/
  .company-text {
    font-size: 46px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 28px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(0%, 10%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 20px;
  }
  .company-slogan .slogan-en {
    font-size: 18px;
  }

  .slider-area .slider-content .heading {
    font-size: 48px;
    letter-spacing: 0.1em;
  }

  .side-menu {
    width: auto;
  }

  .subtitle {
    font-size: 34px;
  }
  .title-summary {
    font-size: 32px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 32px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  .team-section .team-member-area {
    padding: 0 10px;
    margin-bottom: 45%;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 12% 10%; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }

  .col-md-3 {
    max-width: 100%;
  }

  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }
  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 30px; /* 按鈕寬度 */
    height: 30px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 10px; /* 卡片間距 */
    margin: 20px 0px 20px 0px;
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 26px;
    width: 50px;
    height: 50px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 50px;
    height: 50px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  .offset-md-1 {
    margin-left: 0%;
  }

  .col-md-10 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }
  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 14px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 12px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  #contact .contact-time {
    font-size: 18px;
    margin-bottom: 20px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  #contact .info-item .fas {
    font-size: 24px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 18px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }

  .policy .policy-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    padding: 0 16px;
    max-width: 720px;
  }

  .policy .policy-card-head .p-title {
    font-size: 18px;
  }

  .policy .policy-card-body {
    font-size: 17px;
  }
}

/* 5. Laptop (769px - 1024px) */
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .navbar-top-default #megaone {
    margin-right: 20%;
  }

  .navbar-nav .nav-link .num {
    font-size: 40px;
  }

  .navbar-nav li {
    margin: 16px 0;
  }
  .navbar-nav a {
    font-size: 18px; /* 手機上字大一點 */
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }
  /*home*/
  .company-text {
    font-size: 46px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 28px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(0%, 70%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 26px;
  }
  .company-slogan .slogan-en {
    font-size: 20px;
  }

  .slider-area .slider-content .heading {
    font-size: 48px;
    letter-spacing: 0.1em;
  }

  .side-menu {
    width: auto;
  }

  .subtitle {
    font-size: 34px;
  }
  .title-summary {
    font-size: 32px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 32px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  .team-section .team-member-area {
    padding: 0 10px;
    margin-bottom: 45%;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 12% 10%; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }

  .col-md-3 {
    max-width: 100%;
  }

  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }
  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 30px; /* 按鈕寬度 */
    height: 30px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 10px; /* 卡片間距 */
    margin: 20px 0px 20px 0px;
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 26px;
    width: 50px;
    height: 50px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 50px;
    height: 50px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  .offset-md-1 {
    margin-left: 0%;
  }

  .col-md-10 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }

  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 22px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 18px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  #contact .contact-time {
    font-size: 18px;
    margin-bottom: 20px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  #contact .info-item .fas {
    font-size: 24px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 18px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }
  .policy .policy-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    max-width: 900px;
  }

  .policy .policy-card-head .p-title {
    font-size: 19px;
  }

  .policy .policy-card-body {
    font-size: 17.5px;
  }
}

/* 6. Laptop L (1025px - 1440px) */
@media screen and (min-width: 1025px) and (max-width: 1440px) {
  .navbar-top-default #megaone {
    margin-right: 20%;
  }

  .navbar-nav li {
    margin: 16px 0;
  }
  .navbar-nav a {
    font-size: 18px; /* 手機上字大一點 */
  }

  .side-menu .side-nav {
    margin-bottom: 0px;
  }
  /*home*/
  .company-text {
    font-size: 46px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 5px;
  }
  .company-text-en {
    font-size: 28px;
    word-spacing: 0.1em;
    letter-spacing: 0.1em;
  }
  .company-slogan {
    top: 0px;
    transform: translate(-5%, 70%);
    right: 0;
  }
  .company-slogan .slogan-ch {
    font-size: 36px;
    margin-bottom: 10px;
  }
  .company-slogan .slogan-en {
    font-size: 26px;
  }

  .slider-area .slider-content .heading {
    font-size: 48px;
    letter-spacing: 0.1em;
  }

  .side-menu {
    width: auto;
  }

  .subtitle {
    font-size: 34px;
  }
  .title-summary {
    font-size: 32px;
    text-align: justify;
  }

  .general-center .title {
    font-size: 32px; /* 標題縮小 */
    white-space: normal; /* 允許換行 */
    word-wrap: break-word; /* 避免超出螢幕 */
    text-align: center; /* 手機置中對齊 */
  }

  .general-center {
    margin-bottom: 0px;
  }

  .team-section .team-member-area {
    padding: 0 10px;
    margin-bottom: 45%;
  }

  /* 用 CSS Grid 做兩欄 */
  .team-member-area .about-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 欄 */
    gap: 12% 10%; /* 上下/左右間距 */
    justify-items: center; /* 卡片置中 */
  }

  /* 如果原本有 nowrap，把它蓋掉 */
  .about-row {
    flex-wrap: wrap !important;
  }

  /* 圓形頭像縮小，避免撐破寬度 */
  .image-holder {
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  }

  .col-md-3 {
    max-width: 100%;
  }

  .image-holder img {
    max-width: 80%;
  }

  /* 標題縮小、行距調整 */
  .team-name {
    margin-top: 8px;
    font-size: 22px;
    line-height: 1.2;
    white-space: normal; /* 允許換行 */
    word-break: keep-all; /* 中文不要亂斷字 */
  }

  /* 取消大螢幕的進場動效，避免小螢幕晃動太強 */
  .image-holder.fadeInDown {
    margin-top: 0;
  }
  /* 關閉按鈕縮小 */
  .imageModal .close {
    right: 20px;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .imageModal .prev,
  .imageModal .next {
    width: 30px; /* 按鈕寬度 */
    height: 30px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 左右間距更緊貼邊緣 */
  .imageModal .prev {
    left: 6px;
  }
  .imageModal .next {
    right: 6px;
  }

  header a.logo {
    display: none;
  }

  .first-row,
  .second-row {
    display: flex;
    flex-wrap: wrap; /* 換行 */
    gap: 10px; /* 卡片間距 */
    margin: 20px 0px 20px 0px;
    justify-content: center;
  }

  .card {
    flex: 1 1 calc(50% - 8px); /* 兩欄佔比 */
    max-width: calc(50% - 8px);
    border-radius: 6px;
  }

  .image-holder-gallary {
    position: relative;
  }

  .card-img-top {
    height: 120px; /* 控制高度，不要太高 */
    object-fit: cover; /* 保持比例 */
  }

  .modal-header .prev,
  .modal-header .next {
    margin-top: 0%;
    top: 50%; /* 往下到中間 */
    transform: translateY(-50%);
    font-size: 26px;
    width: 50px;
    height: 50px;
  }

  .modal-header .next {
    margin-left: 40%;
  }
  .modal-header .close {
    width: 50px;
    height: 50px;
  }

  .modal-header .prev {
    margin-right: 40%;
  }

  .modal-title {
    font-size: 26px;
  }
  .galleryImage {
    max-width: 100%;
  }

  /* 關閉按鈕縮小 */
  .certification-modal-header .close {
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    border-radius: 50%;
  }

  /* 左右切換按鈕縮小 */
  .certification-modal-header .prev,
  .certification-modal-header .next {
    width: 40px; /* 按鈕寬度 */
    height: 40px; /* 按鈕高度 */
    font-size: 20px;
    line-height: 48px;
    top: 50%;
    transform: translateY(-50%);
  }

  .offset-md-1 {
    margin-left: 0%;
  }

  .col-md-10 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  /* 左右間距更緊貼邊緣 */
  .certification-modal-header .prev {
    margin-right: 45%;
  }
  .certification-modal-header .next {
    margin-left: 45%;
  }

  .certification-Image {
    max-width: 100%;
  }

  .modal-content .content-wrapper {
    align-items: center;
  }

  .modal-content .content-info table,
  .modal-content .content-info tbody,
  .modal-content .content-info tr,
  .modal-content .content-info td {
    display: block; /* 改成直向堆疊 */
    width: 100%;
  }

  .modal-content .content-info td {
    padding: 6px 0;
    font-size: 16px;
    font-weight: normal;
  }

  .modal-content .content-info strong {
    display: block; /* 標題獨立一行 */
    margin-bottom: 2px;
    color: #333;
  }
  .overlay {
    padding: 4px;
  }
  .overlay .text {
    font-size: 12px; /* 手機字體縮小一點 */
    line-height: 1.2;
  }

  /* 特殊圖片也強制等比裁切 */
  .card-img-top.other-img-fit {
    object-fit: cover !important;
  }

  .product-item,
  .product-item-center {
    margin-bottom: 28px; /* 卡片與卡片之間空間 */
    padding: 16px 12px; /* 內距，避免字貼邊 */
    border-radius: 8px; /* 稍微圓角，看起來更清楚分區 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
  /* 標題字體縮小一點 */
  .product_header_text {
    font-size: 16px;
  }

  /* 次標題字體 */
  .actual_product {
    font-size: 14px;
    margin-bottom: 8px;
  }

  /* 列表與按鈕間距 */
  .product-list {
    margin-bottom: 14px;
  }

  /* 按鈕置中，與列表保持距離 */
  .learn-more {
    margin-top: 6px;
  }

  .new {
    width: auto;
  }

  #news .list-group {
    padding: 0 20px; /* 左右留白 */
  }

  #news .list-group-item {
    padding: 10px 0;
  }

  /* 兩欄排版：左標題，右日期 */
  #news .list-content {
    gap: 2px;
  }

  /* 標題靠左，允許換行 */
  #news .alt-features-title {
    font-size: 22px;
  }

  /* 日期固定靠右 */
  #news .date {
    font-size: 18px;
    white-space: nowrap; /* 日期不換行 */
    color: #666;
  }

  #news .index {
    margin-right: 4px;
  }

  #contact .contact-content {
    display: flex;
    flex-direction: column; /* 改為直向排列 */
    gap: 20px; /* 上下區塊留白 */
    padding: 10px;
  }

  /* 地圖置頂，滿版顯示 */
  #contact .map-container {
    order: 1; /* 強制排在最上 */
    width: 100%;
  }
  #contact .map-container img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px; /* 圓角（可拿掉） */
  }

  /* 聯絡資訊放在下方 */
  #contact .contact-info {
    order: 2;
    text-align: left;
  }
  #contact .contact-title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  #contact .contact-time {
    font-size: 18px;
    margin-bottom: 20px;
    color: #555;
  }

  /* 單行項目調整 */
  #contact .info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  #contact .info-item .fas {
    font-size: 24px;
    color: #1c96d4;
    margin-top: 5px;
    margin-right: 10px;
  }
  #contact .info-item a {
    font-size: 18px;
    line-height: 1.4;
    word-break: break-word;
    text-decoration: none;
  }
  #contact .info-item a:hover {
    text-decoration: underline;
  }
  .policy .policy-cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1100px;
  }

  .policy .policy-card-head .p-title {
    font-size: 20px;
  }

  .policy .policy-card-body {
    font-size: 18px;
  }
}
