/* =====================================================================
   NOAQ SITE CSS — Global + Header/Footer + Shared HM + Homepage
   ===================================================================== */

/* ---------- style.css ---------- */
body {
  font-family: "微軟正黑體", Arial, MS Gothic;
  background-color: #fff;
  /*height: 200vh;*/
  position: relative; }
  body:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    opacity: 0;
    visibility: hidden;
    z-index: 1; }
  body.offcanvas-menu:before {
    opacity: 1;
    visibility: visible; }

p {
  /*color: #000000;*/
  font-weight: bold;
    font-size:14pt;}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "微軟正黑體", Arial, MS Gothic; }

a {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease; }
  a, a:hover {
    text-decoration: none !important; }

img {
    -moz-user-select : none;
    -webkit-user-select: none;
}

.left {
	text-align: left;
}

@media(max-width:767px){
.m-left {
	text-align: left;
}
}
.site-navbar {
  margin-bottom: 0px;
  z-index: 1999;
  position: absolute;
  top: 0;
  width: 100%; }
  .site-navbar .site-logo {
    position: relative;
    left: 0;
    font-size: 24px;
z-index:20;
  width:130px;}
.site-navbar .site-logo a{
  display:block;
  width:130px;
  position:relative;
  z-index:20;
}

.site-navbar .site-logo img{
  display:block;
  width:130px;
  height:auto;
}
  .site-navbar .site-navigation .site-menu {
    margin-bottom: 0;
padding-left:0px}
    .site-navbar .site-navigation .site-menu .active {
      color: #007bff;
      display: inline-block;
      padding: 20px 20px; }
    .site-navbar .site-navigation .site-menu a {
      text-decoration: none !important;
      display: inline-block; }
    .site-navbar .site-navigation .site-menu > li {
      display: inline-block; }
      .site-navbar .site-navigation .site-menu > li > a {
        padding: 20px 8px;
        font-size: 15px;
          font-weight:bold;
        text-transform: uppercase;
        display: inline-block;
        text-decoration: none !important; }
        .site-navbar .site-navigation .site-menu > li > a:hover {
          color: #007bff; }
      .site-navbar .site-navigation .site-menu > li.social > a {
        padding-left: 5px;
        padding-right: 5px; }
    .site-navbar .site-navigation .site-menu .has-children {
      position: relative; }
      .site-navbar .site-navigation .site-menu .has-children > a {
        position: relative;
        padding-right: 20px; }
        .site-navbar .site-navigation .site-menu .has-children > a:before {
          position: absolute;
          content: "\e313";
          font-size: 16px;
          top: 50%;
          right: 0;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          font-family: 'icomoon'; }
      .site-navbar .site-navigation .site-menu .has-children .dropdown {
        visibility: hidden;
        opacity: 0;
        top: 100%;
        position: absolute;
        text-align: left;
        border-top: 2px solid #007bff;
        -webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
        box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
        padding: 0px 0;
        margin-top: 20px;
        margin-left: 0px;
        background: #fff;
        -webkit-transition: 0.2s 0s;
        -o-transition: 0.2s 0s;
        transition: 0.2s 0s; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top {
          position: absolute; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
            bottom: 100%;
            left: 20%;
            border: solid transparent;
            content: " ";
            height: 0;
            width: 0;
            position: absolute;
            pointer-events: none; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
            border-color: rgba(136, 183, 213, 0);
            border-bottom-color: #fff;
            border-width: 10px;
            margin-left: -10px; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown a {
          text-transform: none;
          letter-spacing: normal;
          -webkit-transition: 0s all;
          -o-transition: 0s all;
          transition: 0s all;
          color: #000; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown .active {
          color: #007bff !important; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown > li {
          list-style: none;
          padding: 0;
          margin: 0;
          min-width: 230px; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li > a {
            padding: 9px 20px;
            display: block; }
            .site-navbar .site-navigation .site-menu .has-children .dropdown > li > a:hover {
              background: #eff1f3;
              color: #000; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > a:before {
            content: "\e315";
            right: 20px; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > .dropdown, .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > ul {
            left: 100%;
            top: 0; }
      .site-navbar .site-navigation .site-menu .has-children:hover > a, .site-navbar .site-navigation .site-menu .has-children:focus > a, .site-navbar .site-navigation .site-menu .has-children:active > a {
        color: #fff; }
      .site-navbar .site-navigation .site-menu .has-children:hover, .site-navbar .site-navigation .site-menu .has-children:focus, .site-navbar .site-navigation .site-menu .has-children:active {
        cursor: pointer; }
        .site-navbar .site-navigation .site-menu .has-children:hover > .dropdown, .site-navbar .site-navigation .site-menu .has-children:focus > .dropdown, .site-navbar .site-navigation .site-menu .has-children:active > .dropdown {
          -webkit-transition-delay: 0s;
          -o-transition-delay: 0s;
          transition-delay: 0s;
          margin-top: 0px;
          visibility: visible;
          opacity: 1; }

.site-mobile-menu {
  width: 300px;
  position: fixed;
  right: 0;
  z-index: 2000;
  padding-top: 20px;
  background: #fff;
  height: calc(100vh);
  -webkit-transform: translateX(110%);
  -ms-transform: translateX(110%);
  transform: translateX(110%);
  -webkit-box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
  box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
  -webkit-transition: .3s all ease-in-out;
  -o-transition: .3s all ease-in-out;
  transition: .3s all ease-in-out; }
  .offcanvas-menu .site-mobile-menu {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%); }
  .site-mobile-menu .site-mobile-menu-header {
    width: 100%;
    float: left;
    padding-left: 20px;
    padding-right: 20px; }
    .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close {
      float: right;
      margin-top: 8px; }
      .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close span {
        font-size: 30px;
        display: inline-block;
        padding-left: 10px;
        padding-right: 0px;
        line-height: 1;
        cursor: pointer;
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }
    .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo {
      float: left;
      margin-top: 10px;
      margin-left: 0px; }
      .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a {
        display: inline-block;
        text-transform: uppercase; }
        .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a img {
          max-width: 70px; }
        .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a:hover {
          text-decoration: none; }
  .site-mobile-menu .site-mobile-menu-body {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    position: relative;
    padding: 0 20px 20px 20px;
    height: calc(100vh - 52px);
    padding-bottom: 150px; }
  .site-mobile-menu .site-nav-wrap {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative; }
    .site-mobile-menu .site-nav-wrap a {
      padding: 10px 20px;
      display: block;
      position: relative;
      color: #212529; }
      .site-mobile-menu .site-nav-wrap a:hover {
        color: #007bff; }
    .site-mobile-menu .site-nav-wrap li {
      position: relative;
      display: block; }
      .site-mobile-menu .site-nav-wrap li .active {
        color: #007bff; }
    .site-mobile-menu .site-nav-wrap .social {
      /*display: inline-block;*/
    }
    .site-mobile-menu .site-nav-wrap .arrow-collapse {
      position: absolute;
      right: 0px;
      top: 10px;
      z-index: 20;
      width: 36px;
      height: 36px;
      text-align: center;
      cursor: pointer;
      border-radius: 50%; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse:hover {
        background: #f8f9fa; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse:before {
        font-size: 12px;
        z-index: 20;
        font-family: "icomoon";
        content: "\f078";
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(-180deg);
        -ms-transform: translate(-50%, -50%) rotate(-180deg);
        transform: translate(-50%, -50%) rotate(-180deg);
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse.collapsed:before {
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
    .site-mobile-menu .site-nav-wrap > li {
      display: block;
      position: relative;
      float: left;
      width: 100%; }
      .site-mobile-menu .site-nav-wrap > li.social {
        float: none !important;
        width: auto !important; }
      .site-mobile-menu .site-nav-wrap > li > a {
        padding-left: 20px;
        font-size: 20px; }
      .site-mobile-menu .site-nav-wrap > li > ul {
        padding: 0;
        margin: 0;
        list-style: none; }
        .site-mobile-menu .site-nav-wrap > li > ul > li {
          display: block; }
          .site-mobile-menu .site-nav-wrap > li > ul > li > a {
            padding-left: 40px;
            font-size: 16px; }
          .site-mobile-menu .site-nav-wrap > li > ul > li > ul {
            padding: 0;
            margin: 0; }
            .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li {
              display: block; }
              .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li > a {
                font-size: 16px;
                padding-left: 60px; }
    .site-mobile-menu .site-nav-wrap[data-class="social"] {
      float: left;
      width: 100%;
      margin-top: 30px;
      padding-bottom: 5em; }
      .site-mobile-menu .site-nav-wrap[data-class="social"] > li {
        width: auto; }
        .site-mobile-menu .site-nav-wrap[data-class="social"] > li:first-child a {
          padding-left: 15px !important; }

.sticky-wrapper {
  position: absolute;
  z-index: 100;
  width: 100%; }
  .sticky-wrapper .site-navbar {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease; }
  .sticky-wrapper .site-navbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
border-top:3px #0068b7 solid;}
    .sticky-wrapper .site-navbar .site-menu-toggle {
      color: #fff; }
    .sticky-wrapper .site-navbar .site-logo a {
      color: #fff; }
    .sticky-wrapper .site-navbar .site-menu > li > a {
      color: rgba(255, 255, 255, 1)  }
      .sticky-wrapper .site-navbar .site-menu > li > a:hover, .sticky-wrapper .site-navbar .site-menu > li > a.active {
        color: #fff  }
  .sticky-wrapper.is-sticky .site-navbar {
    background: #fff;
    border-bottom: 1px solid transparent;
    -webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.3);
    box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.3); }
    .sticky-wrapper.is-sticky .site-navbar .site-menu-toggle {
      color: #000; }
    .sticky-wrapper.is-sticky .site-navbar .site-logo a {
      color: #007bff; }
    .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a {
      color: #000 !important; }
      .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a:hover, .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a.active {
        color: #007bff !important; }

.index img {
    width:100%;
}

h2.title{
    width: 100%;
    text-align:center;
    color:#b60005;
    font-weight: bold;
    font-size:26pt;
}

h2.title::after{
    content: ''; 
    display: block; 
    width: 64px; 
    height: 8px; 
    margin:0 auto;
    margin-top:12px;
    margin-bottom:30px;
    background: #76b6ff;
}

.m-top40 {
    margin-top:80px;
}

.p20 {
    padding:20px;
}

.p0 {
    padding:0px;
}

@media (max-width: 600px) {
  .banner {
  position: relative;
  height: 600px; /* 設定 Banner 的高度 */
  overflow: hidden; /* 隱藏超出部分的內容 */
}
	
	.case_top {
		margin-top:120px;
	}
}

@media (min-width: 601px) {
  .banner {
  position: relative;
  height: 800px; /* 設定 Banner 的高度 */
  overflow: hidden; /* 隱藏超出部分的內容 */
	}
	
	  .case_top {
		margin-top:-50px;
	}
}


.banner video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* 按比例填充 Banner 的內容 */
  z-index: -1; /* 把影片放到最下層 */
}

.banner .img_b {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* 按比例填充 Banner 的內容 */
  z-index: -1; /* 把影片放到最下層 */
}
.banner .filter {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
    background-color: #000;
    background-image: url(https://www.transparenttextures.com/patterns/shine-dotted.png);
    opacity: .2;
    z-index: 1;
}
.banner .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  /*text-shadow: 0 0 10px #000, 0 0 20px #000, 0 0 30px #000;*/
z-index: 2;
}
.banner img {
  width: 300px; /* 設定圖片的寬度 */
  height: auto; /* 讓高度隨比例自適應 */
  margin-bottom: 20px;
}

.banner_text {
    position: absolute;
  bottom: 0;
    margin-bottom:50px;
}
    
.banner_text_1 {
  font-size: 30px; /* 設定標題的字體大小 */
  /*text-shadow: -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff;
  color: red;*/
    letter-spacing: 3px;
    color:#FFF;
    background-color: #0068b7;
    padding:15px;
    border-radius: 8px;
}
.banner_text_2 {
  /*font-size:28px; 
  text-shadow: -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff;    
  color: #bc0404;
    -webkit-text-stroke: 2px white;
  letter-spacing: 5px;*/
}

.banner_text_2{
      color: #bc0404;
      font-size:28px;
    letter-spacing: 5px;
      position: relative;
      z-index: 0;
    }
        .banner_text_2::before,
        .banner_text_2::after {
            content: attr(data-storke);
            position: absolute;
            left: 0;
            z-index: -1;
        }

        .banner_text_2::after {
            -webkit-text-stroke: 3px white;
        }

.main_con {
    display: flex; /* 將 wrapper 設定為 flex container */
    flex-wrap: wrap;
    align-items: stretch; /* 將 flex item 的高度延展至父元素的高度 */
}

.main_con h1 {
    font-size:24pt;
    color:#0068b7;
    font-weight:bold;
}


.main_con img {
    border-radius: 0px 30px 0px 30px;
}

.product_con {
    display: flex; /* 將 wrapper 設定為 flex container */
    flex-wrap: wrap;
    align-items: stretch; /* 將 flex item 的高度延展至父元素的高度 */
    margin-top:20px;
}

.v-center {
    display: flex; /* 將 container 設定為 flex container */
    flex-wrap: wrap;
  align-items: center; /* 將 flex item 垂直置中 */    
}

#feature, #principle, #specification, #use, #package {
    padding: 40px 0px 20px 0px;
}

#feature .col-xs-6 {
    padding:20px;
    text-align: center;
}

/*#feature .col-xs-6 img {
  border-radius: 50%; 
  border: 5px solid white; 
  box-shadow: 0 0 0 4px #b60005; 
}*/

#feature .col-xs-6 p, #feature .col-sm-6 p {
    font-size: 16pt;
    font-weight:bold;
    line-height: 150%;
    margin-top:15px;
}

#use .col-xs-6 {
    padding:20px;
    text-align: center;
}

/*#use .col-xs-6 img {
  border-radius: 50%; 
  border: 5px solid white; 
  box-shadow: 0 0 0 4px #4499e9; 
}*/

#use .col-xs-6 p, #use .col-sm-6 p {
    font-size: 16pt;
    font-weight:bold;
    line-height: 150%;
    margin-top:15px;
}

#principle, #package {
    background: #EEE;  
}

#product_spec_up {
    text-align:center;
}

#product_spec_up .list {
	clear: both;
	margin: 0;
	padding-left:0px;
	list-style: none;
}

#product_spec_up .list li {
	float: left;
	width: 50%;
	/*padding-right: 18px;*/
}



#product_spec_up .list img {
	margin-top:0px;
	width:150px;
	height:150px;

}

#product_spec_up .list .last {
	padding: 0 0 0 1px;
}

#specification{
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+39,75ccff+100 */
background: #ffffff; /* Old browsers */
/*background: -moz-linear-gradient(top,  #ffffff 39%, #75ccff 100%);*/ /* FF3.6-15 */
/*background: -webkit-linear-gradient(top,  #ffffff 39%,#75ccff 100%);*/ /* Chrome10-25,Safari5.1-6 */
/*background: linear-gradient(to bottom,  #ffffff 39%,#75ccff 100%);*/ /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#75ccff',GradientType=0 );*/ /* IE6-9 */

}

.spec_table2 {
    margin:8px;
}

.spec_table table, .spec_table2 table{
  width: 100%;
  border-collapse: collapse;
}

.spec_table table tr, .spec_table2 table tr{
  border-bottom: solid 2px white;
}

.spec_table table tr:last-child, .spec_table2 table tr:last-child{
  border-bottom: none;
}

.spec_table table th, .spec_table2 table th{
  position: relative;
  width: 30%;
  background-color: #7d7d7d;
  color: white;
  text-align: center;
  padding: 10px 0;
}

.spec_table table th:after, .spec_table2 table th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #7d7d7d;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.spec_table table td, .spec_table2 table td{
  text-align: left;
  width: 70%;
  text-align: center;
  background-color: #eee;
  padding: 10px 0;
}

#size {
    border: #0068b7 2px solid;
    border-radius: 0px 0px 20px 20px;
    margin-top:-2px;
    padding-top:2px;
    background: #FFF;
}

.dialog-box {
  position: relative;
background: #b60005;
    color:#FFF;
  width: 200px;
  height: 46px;
    font-size:16pt;
    text-align:center;
    margin:0 auto;
    margin-bottom:50px;
    padding-top:8px;
    margin-top:20px;
}

.dialog-box::after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -30px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 30px 0 30px;
  border-color: #b60005 transparent transparent transparent;
    
}

.product_title {
    color:#b60005;
    font-weight:bold;
}

.product_title2 {
    font-size:16pt;
    color:#b60005;
    font-weight:bold;
    text-align: center;
}

.award .col-xs-6 {
}

.award .card {
    box-shadow: 0 5px 30px rgba(0,0,0,.1);
    text-align: center;
}

.award .card p {
    font-size:12pt;
}

.award .card img {
    width:60%;
    margin:10px auto;
}

.use img {
    width:100%;
}

.use .text {
  box-sizing: border-box;  /* 設定盒模型為 border-box */
  border: 1px solid white;  /* 加上 1 像素的黑色實線框線 */
    text-align: center;
    font-size:16pt;
    font-weight: bold;
    color:#FFF;
    letter-spacing: 5px;
}

.blue1 {
    background: #4499e9;
}

.blue2 {
    background: #3e8dd7;
}

.blue3 {
    background: #397fc1;
}

.blue4 {
    background: #397fc1;
}

.reg {
    float:none;
    margin:0 auto;
    border:#0068b7 4px solid;
}



.video-container {
  position: relative;
    margin:0 auto;
  width: 80%;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
    margin-top:20px;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pack_square {
    width: 50%;
  padding-top: 50%;
  background-color: red;
    display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.b_no_r img {
    border-radius: 0px;
}

@media (max-width: 780px) {
	.pc-n {display:none}
	}
	
@media (min-width: 781px) {
	.sp-n {display:none}
	}

.scrolldown {
  position: relative;
  width: 24px;
  height: 24px;
    margin:0 auto;
}

.chevron {
  position: absolute;
  width: 28px;
  height: 8px;
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
  animation: move 3s ease-out infinite;
}

.chevron:first-child {
  animation: move 3s ease-out 1s infinite;
}

.chevron:nth-child(2) {
  animation: move 3s ease-out 2s infinite;
}

.chevron:before,
.chevron:after {
  content: ' ';
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: #fff;
}

.chevron:before {
  left: 0;
  transform: skew(0deg, 30deg);
}

.chevron:after {
  right: 0;
  width: 50%;
  transform: skew(0deg, -30deg);
}

@keyframes move {
  25% {
    opacity: 1;

  }
  33% {
    opacity: 1;
    transform: translateY(30px);
  }
  67% {
    opacity: 1;
    transform: translateY(40px);
  }
  100% {
    opacity: 0;
    transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
  }
}

@keyframes pulse {
  to {
    opacity: 1;
  }
}


.youtube {
	position:absolute;
	top:50%;
	left:50%;
    transform: translate(-50%, -50%);
	z-index:999;
	}
	
.youtube img {
	width:60px;
	}

.video {
    display: flex; /* 將 wrapper 設定為 flex container */
    flex-wrap: wrap;
    align-items: stretch; /* 將 flex item 的高度延展至父元素的高度 */
}

.video .col-sm-4 {
    margin-top:30px;    
    border-bottom:#0068b7 1px solid;
}

.video_text {
    padding:10px;
    font-size:18px;
}

.video_text_sor {
    font-size:15px;
}

.case .col-sm-4 {
    margin-top:30px; 
	padding-bottom: 30px;
    border-bottom:#0068b7 1px solid;
}

#qa {
    width:100%;
}

.faq {
    padding:0px;
}
.faq li { padding: 20px 0px;
list-style:none}

.faq li.q {
  background:#FFF;
  font-weight: bold;
  font-size: 120%;
  border-bottom: 1px #ddd solid;
  cursor: pointer;
}

.faq li.q:hover{
    color:#FF0000;
    }

.faq li.q img{
  vertical-align:inherit;
}

.faq li.a {
  background: #3BB0D6;
  display: none;
  color:#fff;    
  font-size: 110%;
    padding:15px;
}

#announcement {
    width:100%;
	line-height: 200%;	
}

#announcement p {
    font-weight: normal;
	/*text-align: left;*/
}

#announcement p a {
    color: #000;
}

#announcement .b {
    font-weight: bold;
}

#announcement .u {
    text-decoration: underline;
}

#announcement .blue {
    color: #0068b7;
}

#announcement .red {
    color: #F00;
}

#announcement ul {
	margin-top: 40px;
    font-size: 14pt;
}

#announcement li {
	padding-bottom:20px;;
}

#announcement .final {
	font-size:18pt;
	
}
.rotate {
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
@media (min-width: 768px){
.about .intro_left {
    padding:0px 0px 0px 30px;
}

.about .intro_right {
    padding:0px 30px 0px 0px;
}
}

.about .intro_text {
    background:#0068b7;
    color:#FFF;
    padding:15px;
}

.about .intro_text h2 {
    font-size:24px;
    margin-bottom:14px;
    font-weight:bold;
}

.about .intro_text p {
    font-weight:normal;
    font-size:13pt;
}

#performance {
    margin-top:60px;
}

#performance .title, #contact .title,  .noaq-history-wrap .title {
    display: flex;
    align-items: center;
    justify-content: center;
}

#contact .title {
    margin-top:40px;
        margin-bottom:40px;
}

#performance .left, #contact .left {
    width: 80px;
    height: 1px;
    margin-right: 20px;
    background-color: black;
}

#performance h2, #contact h2 {
    margin: 0 2px;
    font-size:24px;
    font-weight: bold;
}

#performance .right, #contact .right, .noaq-history-wrap .right{
    width: 80px;
    height: 1px;
    margin-left: 20px;
    background-color: black;
}

#performance .p_text, #contact .p_text {
    width:90%;
    padding:20px 0px;
    margin:0 auto;
    font-size:18px;
}

#product .col-sm-4 {
    margin-bottom: 40px;
}

#product .col-sm-4 img {
    width:100%;
    border-radius: 10px;
}

#product .item_title {
	color:#F00;
	font-weight:bold;
	font-size:14pt;
	margin-top:10px;
	text-align:center;
	}
	
#product .item_pay {
	color:#666;
	font-weight:bold;
	font-size:12pt;
	margin-top:10px;
	text-align:center;
	}

.btn {
  border-radius: 30px;
  font: 300 14px/26px 微軟正黑體, "Poppins", sans-serif;
  padding: 2px 33px 0;
  color: #b4bcc3;
  border-color: #e1e4e7;
}

.btn:hover, .btn:focus {
  background: #374048;
  border-color: #374048;
  color: #fff;
}

.btn-block {
  font: 600 19px/63px 微軟正黑體, "Poppins", sans-serif;
  text-transform: uppercase;
  border: none;
  transition: all 300ms linear 0s;
  border-radius: 0;
  background: #3698d4;
  color: #FFF;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 767px) {
  .btn-block.btn-rounded {
    font: 600 18px/60px 微軟正黑體, "Poppins", sans-serif;
  }
}

#iframe-container {
  position: relative;
  width: 100%;
  padding-top: 100%; /* 設置高度為寬度的百分之百，讓iframe元素呈正方形 */
}

#iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.about_text2 {
	font-size:12pt;
	line-height:150%;
	color:#333;
    padding: 38px 40px 34px;
  width: 100%;
  margin: 0;
    line-height: 250%;
	}
	
.about_text2 a {
	color:#666;
	}
	
.about_text2 a:hover {
	color:#666;
	text-decoration:underline;
	}

/*============= Form Control - Form input Styles =============*/
.form-control {
  border-radius: 0;
  box-shadow: none;
  font: 300 17px/24px 微軟正黑體, "Poppins", sans-serif;
  padding: 12px 18px;
  height: 50px;
  border-color: #e0e8ee;
  background: #f8fbfd;
}

.form-control::-moz-placeholder {
  opacity: 1;
  font: 300 17px/24px 微軟正黑體, "Poppins", sans-serif;
  color: #c0cad0;
}

.form-control:-ms-input-placeholder {
  font: 300 17px/24px 微軟正黑體, "Poppins", sans-serif;
  color: #c0cad0;
}

.form-control::-webkit-input-placeholder {
  font: 300 17px/24px 微軟正黑體, "Poppins", sans-serif;
  color: #c0cad0;
}

.form-control:focus {
  background: transparent;
  box-shadow: none;
}

.form-control.alt {
  background: #FFF;
  border-color: #CCCCCC;
}

textarea.form-control {
  resize: none;
}

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

.has-error .form-control,
.has-error .form-control:focus {
  box-shadow: none;
  border-color: #F96152;
  background: #fff;
}

#specs table{
	border:#0068B6 2px solid;
	margin:0 auto;
	}
	
#specs td{
	border-right:#0068B6 1px solid;
	border-bottom:#0068B6 1px solid;
	padding:10px;
	}
	
#specs .noright{
	border-right:#0068BF 0px solid;
    text-align: center;
	}


/*footer*/
.g-footer {
  background: #292929;
  padding-top: 0px;
}
.g-footer__top {
  max-width: 990px;
  margin: 0 auto 50px;
}
.g-footer__top .columnCommon {
  float: left;
}
.g-footer__top .columnCommon .leadTxt {
  margin-bottom: 11px;
}
.g-footer__top .columnCommon .leadTxt a {
  font-size: 18px;
  color: #FFF;
  transition: .4s;
}
.g-footer__top .columnCommon .leadTxt a:hover {
  opacity: 0.7;
}
.g-footer__top .columnCommon .leadTxt--addMb {
  margin-bottom: 48px;
}
.g-footer__top .columnCommon .linkTxt a {
  font-size: 14px;
  color: #FFF;
  transition: .4s;
}
.g-footer__top .columnCommon .linkTxt a:hover {
  opacity: 0.7;
}
.g-footer__top .columnCommon .list li {
  margin-bottom: 5px;
}
.g-footer__top .columnCommon .list li a {
  display: inline-block;
  font-size: 14px;
  color: #FFF;
  transition: .4s;
}
.g-footer__top .columnCommon .list li a:hover {
  opacity: .7;
}
.g-footer__top .columnCommon .list--addMb {
  margin-bottom: 25px;
}
.g-footer__top .column01 {
  width: 17.57%;
  margin-right: 9.6%;
}
.g-footer__top .column02 {
  width: 15.15%;
  margin-right: 12.12%;
}
.g-footer__top .column03 {
  width: 16.16%;
  margin-right: 11.01%;
}
.g-footer__top .column04 {
  width: 13.53%;
}
.g-footer__banner {
  max-width: 990px;
  margin: 0 auto;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.g-footer__banner li {
  width: 22.73%;
}
.g-footer__banner li a {
  display: block;
  transition: .4s;
}
.g-footer__banner li a:hover {
  opacity: 0.7;
}
.g-footer__banner li a img {
  max-width: 100%;
  height: auto;
  border-radius: 5px;
}
.g-footer__foot {
  border-top: 1px solid #fff;
  padding-top: 25px;
  padding-bottom: 25px;
}
.g-footer__foot__caption {
  text-align: center;
  font-size: 10pt;
  color: #FFF;
  line-height: 1.3;
  margin-bottom: 12px;
}
.g-footer__foot .copyright {
  display: block;
  text-align: center;
  font-size: 14px;
  color: #FFF;
  line-height: 1.3;
  font-family: '微軟正黑體','Avenir','Helvetica Neue','Helvetica','Arial';
}
.g-footer__foot .copyright .pc-none {
  display: none;
}

.footer_social {
    text-align: center;
    padding-bottom: 10px;
}

.footer_social{
    text-align:center;
    padding-bottom:10px;
}

.footer_social a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0 3px;
}

.footer_social img{
    display:block;
    width:35px;
    height:auto !important;
    object-fit:contain;
}

.copyright img{
  width:120px !important;
  height:auto !important;
  object-fit:contain !important;
  display:inline-block;
}


ul, li {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.abgne_tab {
		clear: left;
		width: 480px;
	}
	ul.tabs {
		width: 100%;
		height: 30px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		margin-top:25px;
		/*border-bottom: 1px solid #999;
		border-left: 1px solid #999;*/
	}
	ul.tabs li {
		float: left;
		width:250px;
		height: 40px;
		line-height: 36px;
		overflow: hidden;
		position: relative;
		margin-right:5px;
		margin-bottom: -1px;	/* 讓 li 往下移來遮住 ul 的部份 border-bottom */
		background: #0068b7;
		margin-top:15px;
		
	}
	ul.tabs li a {
		font-family:微軟正黑體;
		display: block;
		text-align:center;
		color: #FFF;
		/*border: 1px solid #f6f6f6;*/
		text-decoration: none;
		
	}
	ul.tabs li a:hover {
		background: #ededed;
		color:#E50011;
	}
	ul.tabs li.active  {
		font-weight:bold;
		background: #E50011;

		/*border-bottom: 1px solid #fff;*/
	}
	ul.tabs li.active a:hover {
		background: #ededed;
		
	}

.more_case {
	width:150px;
	margin:0 auto;
	border: #0068b7 2px solid;
	text-align:center;
	margin-top:25px;
	border-radius: 10px;
	letter-spacing: 3px;
}

.more_case:hover {
	background: #0068b7;
	color:#FFF;
}

.more_case_text {
	padding:10px 0px;
	font-weight:bold;
	font-size:14pt;
}

	.bd_bottom {border-bottom:1px #ccc dashed;}

@media (min-width: 767px) {
	.bd_right {border-right:1px #ccc dashed;}
	}

@media (max-width: 768px) {
	.bd_right {border-right:0px #ccc dashed;}
	}

.sa_h p {
	background: #179fed;
	color:#FFF;
	border-radius: 10px;
	width: fit-content;
	padding:10px;
	margin:15px auto;
}

/* 外層灰色框 */
.feature-box{
  background:#EEE;
  border-radius:16px;
  overflow:hidden;
  margin-bottom:25px;
  display:flex;
  align-items:stretch;
}

/* 讓 bootstrap float 不干擾 */
.feature-box > [class*="col-"]{
  float:none;
}

/* 左側圖片 */
.feature-img{
  padding:20px;
}

.feature-img img{
  width:100%;
  border-radius:12px;
  display:block;
}

/* 文字區 */
.feature-text{
  position:relative;
  padding:30px;
  display:flex;
  align-items:center; /* 桌機文字垂直置中 */
}

/* 桌機右上角大數字 */
.step-bg-number{
  position:absolute;
  right:20px;
  top:10px;
  font-size:120px;
  font-weight:700;
  color:#999;
  line-height:1;
}

/* 文字 */
.step-content{
  font-size:16px;
  line-height:1.8;
}

.step-text p{
  margin:0 0 8px 0;
	color:#0068b7;
}

.step-mobile-number{
  display:none;
}

/* 手機版 */
@media (max-width:767px){

  .feature-box{
    display:block;
  }

  .feature-text{
    display:block;
    padding:20px;
  }

  .step-bg-number{
    display:none;
  }

  .step-content{
    display:flex;
    align-items:flex-start;
  }

  .step-mobile-number{
    display:block;
    font-size:40px;
    font-weight:700;
    color:#999;
    margin-right:12px;
    line-height:1;
  }

}



.noaq-history-wrap{
  padding: 20px 0 40px;
	margin-top: 50px;
}

.noaq-section-title{
  margin: 0;
  font-size: 30px;
  font-weight: 700;
  color: #222;
  letter-spacing: 1px;
}

.noaq-section-line{
  width: 70px;
  height: 3px;
  background: #da0000;
  margin: 12px 0 28px;
}

/* 榮耀卡片 */
.noaq-honor-row{
  margin-bottom: 50px;
}

.noaq-honor-card{
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 14px;
  padding: 24px 22px;
  margin-bottom: 25px;
  min-height: 220px;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
  transition: all .25s ease;
  position: relative;
  overflow: hidden;
}

.noaq-honor-card:before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
	background: #0068b7;
  /*background: linear-gradient(90deg,#c79a3b,#e5c57c);*/
}

.noaq-honor-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
}

.noaq-year{
  font-size: 34px;
  font-weight: 700;
  color: #c79a3b;
  line-height: 1;
  margin-bottom: 14px;
}

.noaq-card-title{
  font-size: 20px;
  font-weight: 700;
  color: #222;
  margin-bottom: 10px;
}

.noaq-honor-card p{
  margin: 0;
  color: #555;
  line-height: 1.9;
  font-size: 15px;
}

/* 發展時間軸 */
.noaq-dev-block{
  margin-top: 10px;
}

.noaq-timeline{
  position: relative;
  padding-left: 40px;
}

.noaq-timeline:before{
  content: "";
  position: absolute;
  left: 12px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #d9d9d9;
}

.noaq-timeline-item{
  position: relative;
  margin-bottom: 26px;
  padding-bottom: 10px;
}

.noaq-timeline-item:before{
  content: "";
  position: absolute;
  left: -34px;
  top: 8px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #c79a3b;
  box-shadow: 0 0 0 5px rgba(199,154,59,.15);
}

.noaq-timeline-year{
  font-size: 24px;
  font-weight: 700;
	color:#0068b7;
  /*color: #c79a3b;*/
  margin-bottom: 8px;
  line-height: 1.2;
}

.noaq-timeline-content{
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 14px;
  padding: 22px 24px;
}

.noaq-timeline-content h3{
  margin: 0 0 10px;
  font-size: 21px;
  font-weight: 700;
  color: #222;
}

.noaq-timeline-content p{
  margin: 0 0 10px;
  color: #555;
  line-height: 1.95;
  font-size: 15px;
}

.noaq-timeline-content p:last-child{
  margin-bottom: 0;
}

/* 平板以下 */
@media (max-width: 991px){
  .noaq-honor-card{
    min-height: auto;
  }
}

/* 手機版 */
@media (max-width: 767px){
  .noaq-history-wrap{
    padding: 10px 0 30px;
  }

  .noaq-section-title{
    font-size: 26px;
  }

  .noaq-year{
    font-size: 30px;
  }

  .noaq-card-title{
    font-size: 18px;
  }

  .noaq-timeline{
    padding-left: 28px;
  }

  .noaq-timeline:before{
    left: 8px;
  }

  .noaq-timeline-item:before{
    left: -26px;
    width: 12px;
    height: 12px;
  }

  .noaq-timeline-year{
    font-size: 21px;
  }

  .noaq-timeline-content{
    padding: 18px 18px;
  }

  .noaq-timeline-content h3{
    font-size: 18px;
  }
}

.sigurd-photo{
    position: relative;
}

.sigurd-photo img{
    width:100%;
    display:block;
}

/* 左下角文字 */
.photo-caption{
    position:absolute;
    left:0px;
    bottom:0px;
    background:rgba(255,255,255,0.8);
    color:#000;
	font-weight: bold;
    padding:8px 14px;
    font-size:14px;
    border-radius:0px;
    letter-spacing:0.5px;
}


#site-logo{
    transition: all .3s ease;
}


/* Storm Anchor */

.storm-anchor-section{
  padding:60px 0;
}

.storm-anchor-box{
  display:flex;
  align-items:stretch;
  border-radius:18px;
  overflow:hidden;
  background:#1f2d3a;
}

/* 左側文字 */

.storm-anchor-text{
  width:50%;
  background:linear-gradient(135deg,#223344 0%,#18232d 100%);
  color:#fff;
}

.storm-anchor-inner{
  padding:55px 45px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  height:100%;
}

.storm-anchor-subtitle{
  font-size:13px;
  letter-spacing:2px;
  color:#caa24a;
  margin-bottom:15px;
  font-weight:700;
}

.storm-anchor-text h2{
  font-size:32px;
  margin:0 0 18px;
  line-height:1.35;
  color:#fff;
}

.storm-anchor-text p{
  font-size:16px;
  line-height:1.9;
  color:rgba(255,255,255,.85);
  margin-bottom:28px;
}

/* 按鈕 */

.storm-anchor-btn{
  display:inline-block;
  border:1px solid #caa24a;
  padding:12px 26px;
  border-radius:30px;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  transition:.25s;
}

.storm-anchor-btn:hover{
  background:#caa24a;
  color:#1f2d3a;
}

/* 右側圖片 */

.storm-anchor-image{
  width:50%;
}

.storm-anchor-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* 手機 */

@media (max-width:767px){

  .storm-anchor-box{
    display:block;
  }

  .storm-anchor-text,
  .storm-anchor-image{
    width:100%;
  }

  .storm-anchor-inner{
    padding:30px 22px;
  }

  .storm-anchor-text h2{
    font-size:24px;
  }

}



/* 運用範圍廣 */
#use{
  padding: 20px 0 10px;
}

#use .title{
  margin-bottom: 30px;
}

#use .use-item{
  padding: 10px;
}

#use .use-card{
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  background: #f5f5f5;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}

#use .use-card img{
  width: 100%;
  display: block;
  transition: transform .4s ease;
}

#use .use-card p{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  margin: 0;
  padding: 12px 16px;
  background: rgba(0,0,0,.5);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1.4;
}

#use .use-card:hover img{
  transform: scale(1.06);
}

#use .use-card:hover p{
  background: rgba(0,0,0,.68);
}

/* 手機版 */
@media (max-width: 767px){
  #use .use-item{
    padding: 6px;
  }

  #use .use-card{
    border-radius: 10px;
  }

  #use .use-card p{
    font-size: 15px;
    padding: 10px 12px;
  }
}


/* 獎項認證 */
#award{
  padding: 20px 0 30px;
}

#award .title{
  margin-bottom: 30px;
}

#award .award-grid{
  width: 100%;
  margin: 0 auto;
}

#award .award-row{
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  margin-bottom: 20px;
}

#award .award-col{
  padding: 10px;
  box-sizing: border-box;
}

/* 桌機排版：100% / 50% 50% / 25% 25% 25% 25% */
#award .award-row-1 .award-col{
  width: 100%;
}

#award .award-row-2 .award-col{
  width: 50%;
}

#award .award-row-4 .award-col{
  width: 25%;
}

/* 卡片共用設計 */
#award .award-card{
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(0,0,0,.08);
  border: 1px solid #ececec;
  height: 100%;
  transition: transform .3s ease, box-shadow .3s ease;
}

#award .award-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(0,0,0,.12);
}

/* 圖片區 */
#award .award-img{
  background: #f8f8f8;
  text-align: center;
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* VdS 100% 卡片 */
#award .award-card-vds .award-img{
  min-height: 210px;
}

/* VdS LOGO 左、文字右，整組置中 */
#award .vds-inner{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
  width: 100%;
}

#award .vds-logo{
  width: 190px;
  flex: 0 0 190px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#award .vds-logo img{
  max-width: 190px;
  max-height: 120px;
  width: auto;
  height: auto;
  display: block;
}

#award .vds-text{
  text-align: left;
  flex: 0 1 auto;
}

#award .vds-title{
  margin: 0 0 8px;
  color: #0068b7;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
}

#award .vds-desc{
  margin: 0;
  color: #555;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}

/* 第二排大卡 */
#award .award-card-lg .award-img{
  min-height: 330px;
}

#award .award-card-lg .award-img img{
  max-width: 100%;
  max-height: 280px;
  width: auto;
  height: auto;
  display: inline-block;
}

/* 第三排小卡 */
#award .award-card-sm .award-img{
  min-height: 220px;
}

#award .award-card-sm .award-img img{
  max-width: 100%;
  max-height: 165px;
  width: auto;
  height: auto;
  display: inline-block;
}

/* 文字區 */
#award .award-text{
  padding: 16px 18px;
  text-align: center;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#award .award-text p{
  margin: 0;
  color: #333;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}

/* 手機版：100% / 50% 50% / 50% 50% / 50% 50% */
@media (max-width: 767px){
  #award .award-row{
    flex-wrap: wrap;
    margin-bottom: 0;
  }

  #award .award-col{
    padding: 6px;
  }

  #award .award-row-1 .award-col{
    width: 100%;
  }

  #award .award-row-2 .award-col,
  #award .award-row-4 .award-col{
    width: 50%;
  }

  #award .award-card{
    border-radius: 12px;
  }

  /* 手機版 VdS：LOGO 上、文字下 */
  #award .award-card-vds .award-img{
    min-height: 210px;
    padding: 18px 14px;
  }

  #award .vds-inner{
    flex-direction: column;
    gap: 10px;
  }

  #award .vds-logo{
    width: 160px;
    flex: 0 0 auto;
  }

  #award .vds-logo img{
    max-width: 160px;
    max-height: 95px;
  }

  #award .vds-text{
    text-align: center;
  }

  #award .vds-title{
    font-size: 20px;
    margin-bottom: 5px;
  }

  #award .vds-desc{
    font-size: 13px;
    line-height: 1.5;
  }

  #award .award-card-lg .award-img{
    min-height: 220px;
    padding: 14px;
  }

  #award .award-card-lg .award-img img{
    max-height: 180px;
  }

  #award .award-card-sm .award-img{
    min-height: 155px;
    padding: 12px;
  }

  #award .award-card-sm .award-img img{
    max-height: 115px;
  }

  #award .award-text{
    min-height: 76px;
    padding: 12px 10px 14px;
  }

  #award .award-text p{
    font-size: 14px;
    line-height: 1.5;
  }
}

/* 小手機微調 */
@media (max-width: 420px){
  #award .award-card-lg .award-img{
    min-height: 205px;
  }

  #award .award-card-lg .award-img img{
    max-height: 165px;
  }

  #award .award-card-sm .award-img{
    min-height: 145px;
  }

  #award .award-card-sm .award-img img{
    max-height: 105px;
  }

  #award .award-text p{
    font-size: 13px;
  }
}

/* 產品特色 */
#feature{
  padding: 20px 0 30px;
}

#feature .title{
  margin-bottom: 30px;
}

/* 上排四張特色卡 */
#feature .feature-grid{
  margin-left: -8px;
  margin-right: -8px;
}

#feature .feature-item{
  padding: 0 8px;
  margin-bottom: 16px;
}

#feature .feature-card{
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(0,0,0,.07);
  height: 100%;
  transition: transform .3s ease, box-shadow .3s ease;
}

#feature .feature-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(0,0,0,.12);
}

#feature .feature-img{
  overflow: hidden;	
  padding:0px;
}


#feature .feature-img img{
  width: 100%;
  display: block;
  transition: transform .4s ease;	
  border-radius:0px;
}

#feature .feature-card:hover .feature-img img{
  transform: scale(1.05);
}

#feature .feature-text{
  padding: 16px 14px 18px;
  text-align: center;
  min-height: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#feature .feature-text p{
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  color: #333;
}

/* 下排大區塊 */
#feature .feature-bottom{
  margin-top: 14px;
}

#feature .feature-bottom-item{
  margin-bottom: 16px;
}

#feature .feature-highlight{
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  height: 100%;
}

#feature .feature-media{
  position: relative;
  overflow: hidden;
}

#feature .feature-media img{
  width: 100%;
  display: block;
}

#feature .feature-video-box .feature-media img:first-child{
  transition: transform .45s ease;
}

#feature .feature-video-box:hover .feature-media img:first-child{
  transform: scale(1.03);
}

#feature .feature-play{
  position: absolute;
  left: 50%;
  top: 50%;
  width: 74px;
  transform: translate(-50%, -50%);
}

#feature .feature-play img{
  width: 100%;
  display: block;
}

#feature .feature-desc{
  padding: 20px 22px 22px;
}

#feature .feature-desc p{
  margin: 0;
  font-size: 17px;
  line-height: 1.8;
  color: #444;
}

/* 手機版 */
@media (max-width: 767px){
  #feature .feature-item{
    margin-bottom: 12px;
  }

  #feature .feature-card{
    border-radius: 12px;
  }

  #feature .feature-text{
    min-height: 72px;
    padding: 12px 10px 14px;
  }

  #feature .feature-text p{
    font-size: 15px;
    line-height: 1.45;
  }

  #feature .feature-highlight{
    border-radius: 14px;
  }

  #feature .feature-play{
    width: 58px;
  }

  #feature .feature-desc{
    padding: 16px 16px 18px;
  }

  #feature .feature-desc p{
    font-size: 15px;
    line-height: 1.7;
  }
}



/* 總代理聲明頁 */
.announcement-page{
  max-width: 1080px;
  margin: 0 auto;
  padding: 30px 15px 60px;
  color: #333;
}

.announcement-hero{
  text-align: center;
  background: linear-gradient(135deg, #f7f9fc 0%, #ffffff 100%);
  border: 1px solid #e8edf3;
  border-radius: 22px;
  padding: 42px 30px;
  box-shadow: 0 10px 28px rgba(0,0,0,.05);
  margin-bottom: 28px;
}

.announcement-label{
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  color: #1f4f8a;
  background: rgba(31,79,138,.08);
  padding: 7px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}

.announcement-hero h1{
  margin: 0 0 18px;
  font-size: 38px;
  line-height: 1.4;
  font-weight: 700;
  color: #12263f;
}

.announcement-intro{
  max-width: 860px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.9;
  color: #555;
	text-align: center;
}

.announcement-intro a{
  color: #1f4f8a;
  font-weight: 700;
  text-decoration: underline;
}

.highlight-blue{
  color: #1f4f8a;
  font-weight: 700;
}

.highlight-red{
  color: #c62828;
  font-weight: 700;
}

.announcement-banner{
  text-align: center;
  margin: 0 0 30px;
}

.announcement-banner span{
  display: inline-block;
  background: linear-gradient(90deg, #d62828 0%, #ef5350 100%);
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  padding: 16px 28px;
  border-radius: 999px;
  box-shadow: 0 8px 18px rgba(214,40,40,.2);
}

.announcement-section-title{
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  color: #12263f;
  margin: 0 0 24px;
}

.announcement-cards{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.announcement-card{
  display: flex;
  align-items: stretch;
  background: #fff;
  border: 1px solid #e9edf2;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}

.announcement-card-icon{
  width: 90px;
  min-width: 90px;
  background: #1f4f8a;
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.announcement-card-content{
  padding: 24px 26px;
  flex: 1;
}

.announcement-card-content h3{
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.4;
  color: #12263f;
  font-weight: 700;
}

.announcement-card-content p{
  margin: 0;
  font-size: 17px;
  line-height: 1.9;
  color: #555;
}

.warning-card .announcement-card-icon{
  background: #4f6f8f;
}

.alert-card{
  border-color: #f1d3d3;
  background: #fffafa;
}

.alert-card .announcement-card-icon{
  background: #c62828;
}

.announcement-final{
  margin: 34px 0 26px;
  text-align: center;
}

.announcement-final p{
  display: inline-block;
  margin: 0;
  padding: 14px 24px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.7;
  color: #1f4f8a;
  background: #f4f8fc;
  border-radius: 16px;
}

.announcement-photo{
  text-align: center;
}

.announcement-photo img{
  width: 100%;
  max-width: 900px;
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
  display: inline-block;
}

/* 手機版 */
@media (max-width: 767px){

  .announcement-page{
    padding: 20px 12px 40px;
  }

  .announcement-hero{
    padding: 28px 18px;
    border-radius: 16px;
  }

  .announcement-hero h1{
    font-size: 28px;
  }

  .announcement-intro{
    font-size: 16px;
    line-height: 1.8;
  }

  .announcement-banner span{
    font-size: 18px;
    padding: 12px 18px;
    border-radius: 18px;
  }

  .announcement-section-title{
    font-size: 24px;
  }

  .announcement-card{
    display: block;
  }

  .announcement-card-icon{
    width: 100%;
    min-width: 100%;
    height: 58px;
    font-size: 24px;
  }

  .announcement-card-content{
    padding: 18px 18px 20px;
  }

  .announcement-card-content h3{
    font-size: 20px;
  }

  .announcement-card-content p{
    font-size: 15px;
    line-height: 1.8;
  }

  .announcement-final p{
    font-size: 18px;
    padding: 12px 16px;
  }

  .announcement-photo img{
    border-radius: 14px;
  }
}

.container2 {
    max-width: 95%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  }



/* NOAQ Engineering Section */

.noaq-engineering{
background: linear-gradient(135deg,#0f2746,#163a66);
color:#fff;
padding:90px 0;
}

.engineering-title{
text-align:center;
font-size:38px;
font-weight:700;
margin-bottom:60px;
letter-spacing:1px;
color:#fff;
}

.engineering-grid{
margin-left:-15px;
margin-right:-15px;
}

.engineering-item{
padding:25px 30px;
margin-bottom:35px;
border-left:3px solid rgba(255,255,255,.15);
transition:all .3s ease;
}

.engineering-big{
font-size:46px;
font-weight:700;
color:#7fb3ff;
margin-bottom:8px;
letter-spacing:1px;
}

.engineering-item h3{
font-size:22px;
margin-bottom:10px;
font-weight:600;
color:#fff;
}

.engineering-item p{
font-size:16px;
line-height:1.7;
color:rgba(255,255,255,.85);
margin:0;
}

.engineering-item:hover{
border-left:3px solid #7fb3ff;
}

.engineering-item:hover .engineering-big{
color:#fff;
}

/* 平板 */

@media (max-width:991px){

.noaq-engineering{
padding:70px 0;
}

.engineering-title{
font-size:30px;
margin-bottom:40px;
}

.engineering-item{
padding:20px 20px;
}

.engineering-big{
font-size:36px;
}

.engineering-item h3{
font-size:18px;
}

.engineering-item p{
font-size:14px;
}

}

/* 手機 */

@media (max-width:767px){

.noaq-engineering{
padding:55px 0;
}

.engineering-title{
font-size:24px;
margin-bottom:30px;
}

.engineering-item{
padding:15px 12px;
margin-bottom:20px;
}

.engineering-big{
font-size:28px;
}

.engineering-item h3{
font-size:16px;
margin-bottom:6px;
}

.engineering-item p{
font-size:13px;
line-height:1.6;
}

}


/* =========================
   使用實例：9張圖案例牆排版 Grid 版
   電腦：50% + 25% + 25% 交錯
   手機：大圖 + 雙欄小圖
========================= */

/* 外層改用 Grid，強制蓋掉 Bootstrap row/col 排版 */
#case ul.first {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 0 !important;
  padding: 0 !important;
}

/* 清掉外掛 / Bootstrap 加在 li 上的寬度 */
#case ul.first > li {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

/* 電腦版：第 1、6、7 張做橫向大圖 */
@media (min-width: 768px) {
  #case ul.first > li:nth-child(1),
  #case ul.first > li:nth-child(6),
  #case ul.first > li:nth-child(7) {
    grid-column: span 2;
  }
}

/* 縮圖共用樣式 */
#case .bspImgWrapper {
  width: 100%;
  height: auto !important;
  aspect-ratio: 4 / 3;
  border-radius: 14px;
  overflow: hidden;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  transition: transform .3s ease, box-shadow .3s ease;
}

/* 電腦版大圖：寬度變 50% 後，用 8:3 剛好高度會接近小圖高度 */
@media (min-width: 768px) {
  #case ul.first > li:nth-child(1) .bspImgWrapper,
  #case ul.first > li:nth-child(6) .bspImgWrapper,
  #case ul.first > li:nth-child(7) .bspImgWrapper {
    aspect-ratio: 8 / 3;
  }
}

#case .bspImgWrapper:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0,0,0,.13);
}

/* 手機版：2欄，但第 1、6、9 張滿版 */
@media (max-width: 767px) {
  #case ul.first {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  #case ul.first > li:nth-child(1),
  #case ul.first > li:nth-child(6),
  #case ul.first > li:nth-child(9) {
    grid-column: span 2;
  }

  #case .bspImgWrapper {
    aspect-ratio: 4 / 3;
    border-radius: 12px;
  }

  #case ul.first > li:nth-child(1) .bspImgWrapper,
  #case ul.first > li:nth-child(6) .bspImgWrapper,
  #case ul.first > li:nth-child(9) .bspImgWrapper {
    aspect-ratio: 16 / 9;
  }
}

/* 小手機：避免圖片太扁 */
@media (max-width: 420px) {
  #case .bspImgWrapper {
    aspect-ratio: 1 / 1;
  }

  #case ul.first > li:nth-child(1) .bspImgWrapper,
  #case ul.first > li:nth-child(6) .bspImgWrapper,
  #case ul.first > li:nth-child(9) .bspImgWrapper {
    aspect-ratio: 4 / 3;
  }
}

/* ---------- home-immersive.css ---------- */
:root {
  --blue: #0068b7;
  --deep: #061827;
  --red: #c51c25;
  --text: #12283e;
  --muted: #5f7183;
  --bg: #f5f7fa;
  --line: #dbe5ee
}

* {
  box-sizing: border-box
}

.home-im-page {
  font-family: "Noto Sans TC", sans-serif;
  color: var(--text);
  background: #fff
}

.home-im-page p {
  font-weight: 500
}

.home-im-page::before {
  display: none
}

.home-im-page .site-logo img {
  width: 130px
}

.home-im-page .sticky-wrapper {
  z-index: 2100
}

.home-im-page .sticky-wrapper .site-navbar {
  border-top: 3px solid var(--blue)
}

.home-im-page .sticky-wrapper.is-sticky .site-navbar {
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 8px 26px rgba(0, 0, 0, .08)
}

.home-im-page .sticky-wrapper.is-sticky .site-menu>li>a {
  color: #10283f!important
}

.home-im-page .sticky-wrapper.is-sticky .site-menu>li>a:hover {
  color: var(--red)!important
}

.hm-wrap {
  width: min(1240px, calc(100% - 48px));
  margin: auto
}

.hm-center {
  text-align: center
}

.hm-reveal {
  opacity: 0;
  transform: translateY(42px);
  transition: opacity .9s ease, transform .9s ease
}

.hm-reveal.is-visible {
  opacity: 1;
  transform: none
}

.hm-kicker, .hm-section-title>span, .hm-title>span {
  display: inline-block;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .15em;
  color: var(--red);
  margin-bottom: 16px
}

.hm-kicker.light {
  color: #9dd5ff
}

.hm-section-title h2, .hm-title h2, .hm-center h2 {
  font-size: clamp(42px, 6vw, 76px);
  line-height: 1.12;
  font-weight: 900;
  letter-spacing: -.04em;
  margin: 0
}

.hm-section-title p, .hm-title p, .hm-center p {
  max-width: 760px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.9;
  margin: 24px auto 0;
}

.hm-hero {
  position: relative;
  height: 100svh;
  min-height: 760px;
  overflow: hidden;
  background: #000
}

.hm-hero-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hm-hero-media, .hm-hero-media img, .hm-hero-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%
}

.hm-hero-media img {
  object-fit: cover;
  object-position: center
}

.hm-hero-shade {
  background: linear-gradient(90deg, rgba(3, 14, 24, .68), rgba(3, 14, 24, .22) 45%, rgba(3, 14, 24, .05)), linear-gradient(0deg, rgba(3, 14, 24, .34), transparent 50%)
}

.hm-hero-copy {
  position: absolute;
  z-index: 2;
  left: max(6vw, 40px);
  bottom: 12vh;
  color: #fff;
  max-width: 760px
}

.hm-hero-copy>span {
  font-size: 18px;
  letter-spacing: .18em;
  font-weight: 700;
  color: #bfe2ff;
  padding-left: 5px;
}

.hm-hero-copy h1 {
  font-size: clamp(32px, 4.2vw, 58px);
  line-height: .98;
  font-weight: 900;
  letter-spacing: -.055em;
  margin: 18px 0 22px;
  color: #fff
}

.hm-hero-copy p {
  font-size: clamp(20px, 2.3vw, 32px);
  color: rgba(255, 255, 255, .88)
}

.hm-hero-actions {
  display: flex;
  gap: 14px;
  margin-top: 30px
}

.hm-hero-actions a, .hm-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 26px;
  border-radius: 999px;
  font-weight: 800
}

.hm-hero-actions a:first-child {
  background: #fff;
  color: var(--deep)
}

.hm-hero-actions a:last-child {
  border: 1px solid rgba(255, 255, 255, .65);
  color: #fff
}

.hm-scroll {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 26px;
  transform: translateX(-50%);
  color: #fff;
  font-size: 12px;
  letter-spacing: .15em
}

.hm-scroll span {
  display: block;
  width: 1px;
  height: 42px;
  background: rgba(255, 255, 255, .7);
  margin: 10px auto 0
}

.hm-brand {
  padding: 150px 0 120px
}

.hm-brand-visual {
  width: min(1480px, calc(100% - 40px));
  height: min(70vw, 760px);
  margin: 80px auto 0;
  overflow: hidden;
  border-radius: 32px
}

.hm-brand-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.hm-brand-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 68px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line)
}

.hm-brand-stats div {
  padding: 32px 24px;
  border-right: 1px solid var(--line)
}

.hm-brand-stats div:last-child {
  border-right: 0
}

.hm-brand-stats strong {
  display: block;
  font-size: 36px;
  color: var(--blue);
  font-weight: 900
}

.hm-brand-stats span {
  color: var(--muted)
}

.hm-core-product {
  padding: 140px 0;
  background: #f4f6f8
}

.hm-title {
  max-width: 840px;
  margin-bottom: 54px
}

.hm-title p {
  margin-left: 0
}

.hm-core-stage {
  position: relative;
  width: min(1480px, calc(100% - 40px));
  height: min(67vw, 760px);
  margin: auto;
  overflow: hidden;
  border-radius: 34px;
  background: #111
}

.hm-core-stage>img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.hm-core-copy {
  position: absolute;
  left: 6%;
  bottom: 8%;
  color: #fff
}

.hm-core-copy strong {
  display: block;
  font-size: clamp(60px, 9vw, 120px);
  line-height: .9;
  font-weight: 900
}

.hm-core-copy span {
  display: block;
  font-size: 24px;
  margin: 12px 0 24px
}

.hm-core-copy a {
  display: inline-flex;
  padding: 14px 22px;
  border-radius: 999px;
  background: #fff;
  color: var(--deep);
  font-weight: 800
}

.hm-products, .hm-applications {
  padding: 140px 0;
  overflow: hidden
}

.hm-section-title {
  /*max-width: 900px;*/
  margin-bottom: 58px
}

.hm-horizontal {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 max(6vw, 24px) 30px;
  cursor: grab;
  scrollbar-width: none
}

.hm-horizontal::-webkit-scrollbar {
  display: none
}

.hm-product-story {
  flex: 0 0 min(78vw, 720px);
  scroll-snap-align: center
}

.hm-product-story a {
  display: block;
  color: #fff;
  position: relative;
  height: min(68vw, 620px);
  border-radius: 30px;
  overflow: hidden;
  background: #111
}

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

.hm-product-story a:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(2, 18, 32, .85), rgba(2, 18, 32, .05) 58%)
}

.hm-product-story div {
  position: absolute;
  z-index: 2;
  left: 36px;
  right: 36px;
  bottom: 34px
}

.hm-product-story span {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #addcff
}

.hm-product-story h3 {
  font-size: clamp(30px, 4vw, 52px);
  color: #fff;
  font-weight: 900;
  margin: 8px 0
}

.hm-product-story p {
  color: rgba(255, 255, 255, .8);
  font-size: 17px
}

.hm-why {
  padding: 150px 0;
  background: var(--deep);
  color: #fff
}

.hm-why .hm-center h2 {
  color: #fff
}

.hm-why-stage {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 68px;
  margin-top: 74px;
  align-items: center
}

.hm-why-image {
  height: 680px;
  border-radius: 30px;
  overflow: hidden
}

.hm-why-image img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.hm-why-list article {
  padding: 6px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .16)
}

.hm-why-list strong {
  display: block;
  font-size: 44px;
  color: #8fd0ff;
  font-weight: 900
}

.hm-why-list h3 {
  color: #fff;
  font-size: 26px;
  font-weight: 800;
  margin: 4px 0
}

.hm-why-list p {
  color: rgba(255, 255, 255, .68);
  line-height: 1.8
}

.hm-app-track article {
  position: relative;
  flex: 0 0 min(70vw, 520px);
  height: min(70vw, 520px);
  scroll-snap-align: center;
  border-radius: 28px;
  overflow: hidden
}

.hm-app-track img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.hm-app-track article:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(2, 18, 32, .72), transparent 55%)
}

.hm-app-track span {
  position: absolute;
  z-index: 2;
  left: 26px;
  bottom: 22px;
  color: #fff;
  font-size: 28px;
  font-weight: 900
}

.hm-trust {
  padding: 150px 0;
  background: #f5f7fa
}

.hm-logo-carousel {
  position: relative;
  margin-top: 68px
}

.hm-logo-viewport {
  overflow: hidden
}

.hm-logo-pages {
  display: flex;
  transition: transform .65s cubic-bezier(.22, .61, .36, 1)
}

.hm-logo-page {
  flex: 0 0 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--line)
}

.hm-logo-page>div {
  min-height: 125px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px
}

.hm-logo-page img {
  max-width: 100%;
  max-height: 62px;
  object-fit: contain
}

.hm-logo-prev,
.hm-logo-next {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);

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

  width: 48px;
  height: 48px;
  padding: 0 0 4px;
  line-height: 1;

  border-radius: 50%;
  border: 0;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
  font-size: 30px;
}

.hm-logo-prev {
  left: -24px
}

.hm-logo-next {
  right: -24px
}

.hm-logo-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 24px
}

.hm-logo-dots button {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 0;
  background: #aab7c4
}

.hm-logo-dots button.active {
  width: 28px;
  border-radius: 99px;
  background: var(--blue)
}

.hm-certifications {
  padding: 150px 0
}

.hm-cert-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px
}

.hm-cert-grid article {
  background: #f6f8fa;
  border-radius: 24px;
  padding: 26px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 270px
}

.hm-cert-grid img {
  max-width: 100%;
  max-height: 150px;
  object-fit: contain
}

.hm-cert-grid h3 {
  font-size: 18px;
  font-weight: 800;
  margin-top: 16px
}

.hm-cert-main {
  grid-column: 1/-1;
  display: grid!important;
  grid-template-columns: 240px 1fr;
  gap: 40px;
  text-align: left!important;
  align-items: center!important
}

.hm-cert-main img {
  max-height: 180px
}

.hm-cert-main h3 {
  font-size: 34px
}

.hm-cert-main p {
  color: var(--muted)
}

.hm-cta {
  padding: 100px 0;
  background: linear-gradient(120deg, var(--blue), #0b4f8c);
  color: #fff
}

.hm-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px
}

.hm-cta span {
  font-size: 12px;
  letter-spacing: .16em;
  color: #cfe9ff
}

.hm-cta h2 {
  font-size: clamp(38px, 5vw, 64px);
  color: #fff;
  font-weight: 900;
  margin: 10px 0
}

.hm-cta p {
  color: rgba(255, 255, 255, .82);
  font-size: 18px
}

.hm-cta a {
  background: #fff;
  color: var(--blue);
  white-space: nowrap
}

.home-im-page .g-footer__foot {
  border-top: 0
}

@media(max-width:991px) {
  .hm-brand-stats {
    grid-template-columns: repeat(2, 1fr)
  }
  .hm-brand-stats div:nth-child(2) {
    border-right: 0
  }
  .hm-brand-stats div:nth-child(-n+2) {
    border-bottom: 1px solid var(--line)
  }
  .hm-why-stage {
    grid-template-columns: 1fr
  }
  .hm-why-image {
    height: 520px
  }
  .hm-cert-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width:767px) {
  .home-im-page .site-logo img {
    width: 112px
  }
  .hm-wrap {
    width: min(100% - 36px, 1240px)
  }
  .hm-hero {
    min-height: 700px
  }
  .hm-hero-copy {
    left: 20px;
    right: 20px;
    bottom: 80px
  }
  .hm-hero-copy h1 {
    font-size: 52px
  }
  .hm-hero-copy p {
    font-size: 19px
  }
  .hm-hero-actions {
    flex-direction: column;
    align-items: stretch
  }
  .hm-hero-actions a {
    width: 100%
  }
  .hm-brand, .hm-products, .hm-applications, .hm-trust, .hm-certifications, .hm-core-product, .hm-why {
    padding: 90px 0
  }
  .hm-brand-visual, .hm-core-stage {
    width: calc(100% - 20px);
    border-radius: 22px
  }
  .hm-brand-stats strong {
    font-size: 28px
  }
  .hm-core-stage {
    height: 620px
  }
  .hm-core-copy {
    left: 26px;
    right: 26px;
    bottom: 32px
  }
  .hm-core-copy strong {
    font-size: 64px
  }
  .hm-product-story {
    flex-basis: 88vw
  }
  .hm-product-story a {
    height: 560px;
    border-radius: 22px
  }
  .hm-product-story div {
    left: 22px;
    right: 22px;
    bottom: 22px
  }
  .hm-why-image {
    height: 400px
  }
  .hm-app-track article {
    flex-basis: 82vw;
    height: 460px
  }
  .hm-logo-page {
    grid-template-columns: repeat(2, 1fr)
  }
  .hm-logo-page>div {
    min-height: 110px
  }
  .hm-logo-prev, .hm-logo-next {
    display: none
  }
  .hm-cert-grid {
    grid-template-columns: 1fr
  }
  .hm-cert-main {
    grid-template-columns: 1fr!important;
    text-align: center!important
  }
  .hm-cta-inner {
    display: block
  }
  .hm-cta a {
    margin-top: 28px;
    width: 100%
  }
  .hm-section-title h2, .hm-title h2, .hm-center h2 {
    font-size: 42px
  }
}

@media(prefers-reduced-motion:reduce) {
  *, *:before, *:after {
    animation-duration: .01ms!important;
    transition-duration: .01ms!important
  }
  .hm-reveal {
    opacity: 1;
    transform: none
  }
}

@media (max-width:767px) {
  .hm-scroll {
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 0;
  }
  .hm-scroll span {
    display: block;
  }
  .hm-hero-copy h1 {
    font-size: clamp(24px,  7vw,  34px);
    line-height: 1.25;
    white-space: nowrap;
  }
}

/* Smoother horizontal sliders */
.hm-scroll-shell {
  position: relative
}

.hm-horizontal {
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scroll-padding-left: max(6vw, 24px);
  scroll-padding-right: max(6vw, 24px)
}

.hm-horizontal.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none
}

.hm-scroll-arrow {
  position: absolute;
  z-index: 5;
  top: 50%;
  transform: translateY(-50%);
  width: 54px;
  height: 54px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .94);
  color: var(--deep);
  font-size: 34px;
  line-height: 1;
  box-shadow: 0 12px 30px rgba(2, 18, 32, .18);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .25s ease, opacity .25s ease, background .25s ease;
  backdrop-filter: blur(8px);
  padding-bottom: 12px;
}

.hm-scroll-arrow:hover {
  transform: translateY(-50%) scale(1.06);
  background: #fff
}

.hm-scroll-arrow:disabled {
  opacity: .28;
  cursor: default;
  transform: translateY(-50%)
}

.hm-scroll-prev {
  left: 22px
}

.hm-scroll-next {
  right: 22px
}

@media(max-width:767px) {
  .hm-scroll-arrow {
    width: 44px;
    height: 44px;
    font-size: 28px;
    top: auto;
    bottom: -4px
  }
  .hm-scroll-prev {
    left: calc(50% - 52px)
  }
  .hm-scroll-next {
    right: calc(50% - 52px)
  }
  .hm-scroll-shell {
    padding-bottom: 58px
  }
  .hm-horizontal {
    padding-bottom: 14px
  }
}

/* ===== 2026-07 homepage refinements ===== */
/* Hero buttons: stronger contrast and motion */
.hm-hero-actions a {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transition: color .3s ease, border-color .3s ease, transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.hm-hero-actions a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  transform: translateX(-102%);
  transition: transform .38s cubic-bezier(.2, .75, .25, 1);
}

.hm-hero-actions a:first-child::before {
  background: var(--blue)
}

.hm-hero-actions a:last-child::before {
  background: #fff
}

.hm-hero-actions a:hover::before {
  transform: translateX(0)
}

.hm-hero-actions a:first-child:hover {
  color: #fff;
  transform: none;
  box-shadow: 0 14px 32px rgba(0, 104, 183, .32);
}

.hm-hero-actions a:last-child:hover {
  color: var(--deep);
  border-color: #fff;
  transform: none;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .18);
}

/* Products: show all four at once */
.hm-product-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.hm-product-grid .hm-product-story {
  min-width: 0;
  flex: none;
}

.hm-product-grid .hm-product-story a {
  height: clamp(420px, 42vw, 560px);
  border-radius: 26px;
  transition: transform .42s cubic-bezier(.2, .75, .25, 1), box-shadow .42s ease;
}

.hm-product-grid .hm-product-story img {
  transition: transform .65s cubic-bezier(.2, .75, .25, 1), filter .4s ease;
}

.hm-product-grid .hm-product-story a::after {
  transition: background .4s ease;
}

.hm-product-grid .hm-product-story div {
  left: 24px;
  right: 24px;
  bottom: 24px;
  transform: translateY(28px);
  transition: transform .4s cubic-bezier(.2, .75, .25, 1);
}

.hm-product-grid .hm-product-story h3 {
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.25;
}

.hm-product-grid .hm-product-story p {
  font-size: 15px;
  line-height: 1.65;
}

.hm-product-grid .hm-product-story b {
  display: inline-flex;
  margin-top: 18px;
  color: #fff;
  font-size: 14px;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .35s ease, transform .35s ease;
}

.hm-product-grid .hm-product-story a:hover {
  transform: translateY(-8px);
  box-shadow: 0 22px 50px rgba(5, 29, 49, .20);
}

.hm-product-grid .hm-product-story a:hover img {
  transform: scale(1.06);
  filter: saturate(1.08);
}

.hm-product-grid .hm-product-story a:hover::after {
  background: linear-gradient(0deg, rgba(2, 18, 32, .93), rgba(2, 18, 32, .12) 68%);
}

.hm-product-grid .hm-product-story a:hover div {
  transform: translateY(0)
}

.hm-product-grid .hm-product-story a:hover b {
  opacity: 1;
  transform: none
}

/* Brand introduction */
.hm-about {
  padding: 150px 0;
  background: #fff;
  overflow: hidden;
}

.hm-about-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: 78px;
  align-items: center;
}

.hm-about-copy h2 {
  margin: 0 0 28px;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -.045em;
}

.hm-about-copy p {
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.95;
}

.hm-about-copy .hm-about-lead {
  color: var(--text);
  font-size: 21px;
  font-weight: 700;
}

.hm-about-highlights {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 28px 0 32px;
}

.hm-about-highlights span {
  padding: 9px 14px;
  border-radius: 999px;
  background: #eef5fa;
  color: var(--blue);
  font-size: 14px;
  font-weight: 800;
}

.hm-about-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--blue);
  font-weight: 900;
  font-size: 16px;
}

.hm-about-link i {
  font-style: normal;
  transition: transform .25s ease;
}

.hm-about-link:hover {
  color: var(--red)
}

.hm-about-link:hover i {
  transform: translateX(6px)
}

.hm-about-visual {
  position: relative;
  min-height: 620px;
  border-radius: 34px;
  overflow: hidden;
  background: #e9eef3;
}

.hm-about-visual img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  object-position: center;
  transition: transform .8s ease;
}

.hm-about-visual:hover img {
  transform: scale(1.035)
}

.hm-about-caption {
  position: absolute;
  left: 24px;
  bottom: 24px;
  padding: 14px 18px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 12px 34px rgba(0, 0, 0, .12);
  backdrop-filter: blur(8px);
}

.hm-about-caption strong, .hm-about-caption span {
  display: block
}

.hm-about-caption strong {
  font-size: 18px;
  color: var(--text)
}

.hm-about-caption span {
  font-size: 13px;
  color: var(--muted);
  margin-top: 2px
}

/* CTA: decorative rings and animated button */
.hm-cta {
  position: relative;
  overflow: hidden;
}

.hm-cta::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -120px;
  top: -190px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .16);
  box-shadow: 0 0 0 70px rgba(255, 255, 255, .04), 0 0 0 140px rgba(255, 255, 255, .025);
  pointer-events: none;
}

.hm-cta-inner {
  position: relative;
  z-index: 2
}

.hm-cta a {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transition: color .3s ease, transform .3s ease, box-shadow .3s ease;
}

.hm-cta a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--red);
  transform: translateX(-102%);
  transition: transform .38s cubic-bezier(.2, .75, .25, 1);
}

.hm-cta a:hover {
  color: #fff;
  transform: none;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .18);
}

.hm-cta a:hover::before {
  transform: translateX(0)
}

@media(max-width:1199px) {
  .hm-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  .hm-product-grid .hm-product-story a {
    height: 520px
  }
}

@media(max-width:991px) {
  .hm-about-grid {
    grid-template-columns: 1fr;
    gap: 48px
  }
  .hm-about-visual {
    min-height: 520px
  }
}

@media(max-width:767px) {
  .hm-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: calc(100% - 24px)
  }
  .hm-product-grid .hm-product-story a {
    height: 360px;
    border-radius: 18px
  }
  .hm-product-grid .hm-product-story div {
    left: 14px;
    right: 14px;
    bottom: 14px;
    transform: none
  }
  .hm-product-grid .hm-product-story h3 {
    font-size: 18px;
    margin: 6px 0
  }
  .hm-product-grid .hm-product-story span {
    font-size: 10px
  }
  .hm-product-grid .hm-product-story p {
    font-size: 12px;
    line-height: 1.5
  }
  .hm-product-grid .hm-product-story b {
    display: none
  }
  .hm-about {
    padding: 90px 0
  }
  .hm-about-copy h2 {
    font-size: 40px
  }
  .hm-about-copy .hm-about-lead {
    font-size: 18px
  }
  .hm-about-copy p {
    font-size: 15px
  }
  .hm-about-visual {
    min-height: 430px;
    border-radius: 24px
  }
  .hm-cta::before {
    width: 280px;
    height: 280px;
    right: -110px;
    top: -110px;
    box-shadow: 0 0 0 48px rgba(255, 255, 255, .04), 0 0 0 96px rgba(255, 255, 255, .025)
  }
}

@media(max-width:420px) {
  .hm-product-grid .hm-product-story a {
    height: 330px
  }
  .hm-product-grid .hm-product-story h3 {
    font-size: 16px
  }
  .hm-product-grid .hm-product-story p {
    font-size: 11px
  }
}



/* =====================================================================
   2026 GLOBAL FIXES
   ===================================================================== */

/* Desktop dropdown arrow — CSS only, no icomoon dependency */
.site-navbar .site-navigation .site-menu .has-children > a:before{
  content:"" !important;
  position:absolute;
  top:50%;
  right:3px;
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  font-family:inherit !important;
  transform:translateY(-68%) rotate(45deg) !important;
}

/* Nested desktop dropdown arrow */
.site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > a:before{
  content:"" !important;
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  font-family:inherit !important;
  transform:translateY(-50%) rotate(-45deg) !important;
}

/* Mobile submenu arrow */
.site-mobile-menu .site-nav-wrap .arrow-collapse:before{
  content:"" !important;
  width:8px;
  height:8px;
  border-right:2px solid #555;
  border-bottom:2px solid #555;
  font-family:inherit !important;
  transform:translate(-50%,-65%) rotate(45deg) !important;
  transition:transform .3s ease !important;
}

.site-mobile-menu .site-nav-wrap .arrow-collapse:not(.collapsed):before{
  transform:translate(-50%,-35%) rotate(225deg) !important;
}

/* Mobile hamburger */
.site-menu-toggle .icon-menu{
  position:relative;
  display:inline-block;
  width:28px;
  height:20px;
  font-size:0;
}
.site-menu-toggle .icon-menu:before,
.site-menu-toggle .icon-menu:after{
  content:"";
  position:absolute;
  left:0;
  width:28px;
  height:2px;
  border-radius:999px;
  background:currentColor;
}
.site-menu-toggle .icon-menu:before{
  top:2px;
  box-shadow:0 8px 0 currentColor;
}
.site-menu-toggle .icon-menu:after{
  bottom:2px;
}

/* Mobile close */
.site-mobile-menu-close .icon-close2{
  position:relative;
  display:inline-block;
  width:28px;
  height:28px;
  font-size:0;
}
.site-mobile-menu-close .icon-close2:before,
.site-mobile-menu-close .icon-close2:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:22px;
  height:2px;
  border-radius:999px;
  background:currentColor;
}
.site-mobile-menu-close .icon-close2:before{
  transform:translate(-50%,-50%) rotate(45deg);
}
.site-mobile-menu-close .icon-close2:after{
  transform:translate(-50%,-50%) rotate(-45deg);
}

/* Entire logo is clickable */
.site-navbar .site-logo,
.site-navbar .site-logo a{
  position:relative;
  z-index:20;
  width:130px;
}
.site-navbar .site-logo a,
.site-navbar .site-logo img{
  display:block;
}
.site-navbar .site-logo img{
  width:130px;
  height:auto;
}
.site-navbar .row > .col-6.col-xl-1{
  z-index:20;
}


/* =====================================================================
   2026 HEADER / LOADING / MOBILE NAV FIXES
   ===================================================================== */

/* Homepage loading screen — fixed overlay, always above header/menu */
#page-loader{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#061827;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .42s ease, visibility .42s ease;
}

#page-loader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.page-loader-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.page-loader-inner img{
  display:block;
  width:150px !important;
  max-width:150px !important;
  height:auto !important;
  margin:0 auto 24px;
}

.page-loader-inner > span{
  position:relative;
  display:block;
  width:116px;
  height:2px;
  overflow:hidden;
  background:rgba(255,255,255,.18);
}

.page-loader-inner > span::before{
  content:"";
  position:absolute;
  inset:0;
  background:#fff;
  transform:translateX(-100%);
  animation:noaq-page-loading 1.05s ease-in-out infinite;
}

@keyframes noaq-page-loading{
  from{transform:translateX(-100%)}
  to{transform:translateX(100%)}
}

/* Header icons must not inherit generic page img sizing */
.site-navbar .site-navigation .site-menu > li.nav-icon-item > a{
  padding-left:5px;
  padding-right:5px;
  vertical-align:middle;
}

.site-navbar .site-navigation .site-menu .nav-icon-item img{
  display:block;
  width:auto !important;
  max-width:none !important;
  object-fit:contain;
}

.site-navbar .site-navigation .site-menu .nav-fb img{
  height:30px !important;
}

.site-navbar .site-navigation .site-menu .nav-sweden img{
  height:38px !important;
}

.site-navbar .site-navigation .site-menu .nav-line img{
  height:30px !important;
}

/* Dropdown parent labels are controls, not page links */
.site-navbar .site-navigation .site-menu .has-children > .nav-parent-toggle{
  cursor:pointer;
}

/* Mobile: tapping the text itself opens/closes submenu */
.site-mobile-menu .site-nav-wrap .has-children > .nav-parent-toggle{
  cursor:pointer;
}

/* Icons in mobile menu: keep their intended scale and vertical order.
   Since LINE is after Sweden in the source menu, the cloned mobile menu
   naturally places LINE directly below Sweden. */
.site-mobile-menu .site-nav-wrap > li.nav-icon-item > a{
  display:flex;
  align-items:center;
  min-height:48px;
}

.site-mobile-menu .site-nav-wrap .nav-icon-item img{
  width:auto !important;
  max-width:none !important;
  height:auto !important;
}

.site-mobile-menu .site-nav-wrap .nav-fb img{
  height:28px !important;
}

.site-mobile-menu .site-nav-wrap .nav-sweden img{
  height:34px !important;
}

.site-mobile-menu .site-nav-wrap .nav-line img{
  height:30px !important;
}

/* Requested: no "向下探索" on mobile for these three product pages */
@media(max-width:767px){
  .page-storm-anchor .np-scroll,
  .page-boxpool .np-scroll,
  .page-tubewall .np-scroll{
    font-size:0 !important;
    bottom:26px;
  }

  .page-storm-anchor .np-scroll span,
  .page-boxpool .np-scroll span,
  .page-tubewall .np-scroll span{
    display:block !important;
    width:1px;
    height:42px;
    margin:0 auto;
    background:rgba(255,255,255,.7);
  }
}


/* =====================================================================
   V2 restart — evenly spaced mobile hamburger lines
   ===================================================================== */

/* 20px icon: line tops at 0px / 9px / 18px, giving equal visual gaps. */
.site-menu-toggle .icon-menu:before{
  top:0 !important;
  box-shadow:0 9px 0 currentColor !important;
}

.site-menu-toggle .icon-menu:after{
  bottom:0 !important;
}


.mobile-br{
  display:none;
}

.desktop-comma{
  display:inline;
}

@media(max-width:767px){
  .mobile-br{
    display:block;
  }

  .desktop-comma{
    display:none;
  }
}

.desktop-title-space{
  display:inline;
}

@media(max-width:767px){
  .desktop-title-space{
    display:none;
  }
}

.hm-scroll-arrow:focus{
  outline:none;
}

.hm-scroll-arrow:focus-visible{
  outline:2px solid var(--blue);
  outline-offset:3px;
}


@media(max-width:767px){

  /* 四格固定 2x2，不因內容高度不同而歪掉 */
  .hm-product-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:1fr;
    align-items:stretch !important;
    gap:10px !important;
  }

  .hm-product-grid .hm-product-story{
    width:100% !important;
    min-width:0 !important;
    height:100% !important;
    margin:0 !important;
    align-self:stretch !important;
  }

  /* 原本 330 / 360 太高，縮到 270 */
  .hm-product-grid .hm-product-story > a{
    width:100% !important;
    height:270px !important;
    min-height:270px !important;
    margin:0 !important;
  }

  /* 圖片保持滿版，但卡片變矮後會看到更多原圖 */
  .hm-product-grid .hm-product-story img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
  }

  /* 文字區位置統一 */
  .hm-product-grid .hm-product-story div{
    left:14px !important;
    right:14px !important;
    bottom:14px !important;
    transform:none !important;
  }

  /* 四個商品標題固定兩行高度 */
  .hm-product-grid .hm-product-story h3{
    min-height:44px;
    margin:6px 0 !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }

  /* 四段說明固定高度 */
  .hm-product-grid .hm-product-story p{
    min-height:36px;
    margin:0 !important;
    font-size:11px !important;
    line-height:1.55 !important;
  }
}


@media(max-width:767px){

  /* 手機側選單永遠壓在 sticky header 上面 */
  .site-mobile-menu{
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:10000 !important;
  }

  /* 選單打開後，原本 sticky header 降到下面 */
  body.offcanvas-menu .sticky-wrapper,
  body.offcanvas-menu .site-navbar{
    z-index:100 !important;
  }

  /* 手機選單頂部區域 */
  .site-mobile-menu .site-mobile-menu-header{
    position:relative;
    z-index:10002;
    height:60px;
  }

  /* X 的整個區域都可以點，不只點到那條線才有效 */
  .site-mobile-menu .site-mobile-menu-close{
    position:absolute;
    top:8px;
    right:12px;
    z-index:10003;
    width:46px;
    height:46px;
    margin:0 !important;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .site-mobile-menu .site-mobile-menu-close .js-menu-toggle{
    display:block;
    width:46px;
    height:46px;
    padding:0 !important;
    cursor:pointer;
  }

}

.desktop-model-separator{
  display:inline;
}

@media(max-width:767px){
  .desktop-model-separator{
    display:none;
  }
}

@media(max-width:767px){

  .bw-noaq-family{
    display:none !important;
  }

}


/* =========================================================
   Context Back Button
   ========================================================= */

.context-back-btn{
  position:fixed;
  left:24px;
  bottom:24px;
  z-index:1500;

  display:inline-flex;
  align-items:center;
  gap:8px;

  padding:11px 18px;

  border-radius:999px;
  background:rgba(6,24,39,.90);

  color:#fff !important;
  font-size:14px;
  font-weight:700;
  line-height:1;

  text-decoration:none !important;

  box-shadow:0 8px 28px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);

  transition:background .25s ease;
}

.context-back-btn:hover{
  background:var(--blue);
  color:#fff !important;
}

.context-back-arrow{
  font-size:18px;
  line-height:1;
}


@media(max-width:767px){

  .context-back-btn{
    left:14px;
    bottom:18px;

    padding:10px 14px;

    font-size:13px;
  }

}




/* =====================================================================
   Product submenu — same typography as other submenus, wider to prevent wrap
   ===================================================================== */
@media(min-width:1200px){
  .site-navbar .site-navigation .site-menu .has-children .dropdown.product-dropdown{
    min-width:430px;
  }

  .site-navbar .site-navigation .site-menu .has-children .dropdown.product-dropdown > li{
    min-width:430px;
  }

  .site-navbar .site-navigation .site-menu .has-children .dropdown.product-dropdown > li > a{
    white-space:nowrap;
    font-size:16px;
    padding-left:20px;
    padding-right:20px;
  }
}

@media(max-width:1199px){
  .site-mobile-menu .site-nav-wrap .product-dropdown > li > a{
    white-space:nowrap;
    font-size:16px;
    letter-spacing:normal;
    padding-left:40px;
    padding-right:8px;
  }
}


/* =====================================================================
   Product dropdown: Boxwall parent with second-level submenu
   ===================================================================== */
.site-navbar .site-navigation .site-menu .product-dropdown > li{
  min-width: 250px;
}

.site-navbar .site-navigation .site-menu .product-dropdown > li > a,
.site-navbar .site-navigation .site-menu .product-dropdown .dropdown > li > a{
  white-space: nowrap;
}

.site-navbar .site-navigation .site-menu .product-dropdown > li.has-children > .dropdown{
  min-width: 320px;
}

.site-navbar .site-navigation .site-menu .product-dropdown > li.has-children > a{
  padding-right: 34px;
}

.site-navbar .site-navigation .site-menu .product-dropdown > li.has-children > a:before{
  right: 14px;
}

.site-mobile-menu .site-nav-wrap > li > ul > li > ul > li > a{
  white-space: normal;
}


/* === v5 menu dropdown refinement === */
.site-navbar .site-navigation .site-menu .product-dropdown > li{
  min-width: 0 !important;
}
.site-navbar .site-navigation .site-menu .has-children .dropdown.product-dropdown{
  min-width: 240px !important;
}
.site-navbar .site-navigation .site-menu .product-dropdown > li > a{
  font-size: 16px !important;
  white-space: nowrap !important;
}
.site-navbar .site-navigation .site-menu .product-dropdown > li.has-children > .dropdown,
.site-navbar .site-navigation .site-menu .dropdown.product-model-dropdown{
  min-width: 320px !important;
}
.site-navbar .site-navigation .site-menu .product-dropdown .dropdown > li > a{
  font-size: 16px !important;
  white-space: nowrap !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}
@media(max-width:1199px){
  .site-mobile-menu .site-nav-wrap .product-dropdown > li > a,
  .site-mobile-menu .site-nav-wrap .product-dropdown > li > ul > li > a{
    white-space: normal !important;
    line-height: 1.4 !important;
    font-size: 16px !important;
    word-break: keep-all;
    padding-right: 14px !important;
  }
}


/* =====================================================================
   v6 Product navigation hierarchy
   Desktop: Boxwall second-level menu clearly flies out to the right.
   Mobile: keep nested items readable and fully visible.
   ===================================================================== */
@media(min-width:1200px){
  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown{
    min-width:236px !important;
    overflow:visible !important;
  }

  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li{
    min-width:236px !important;
  }

  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li > a{
    padding:11px 18px !important;
    font-size:16px !important;
    white-space:nowrap !important;
  }

  .site-navbar .site-navigation .site-menu .product-model-parent{
    position:relative;
  }

  .site-navbar .site-navigation .site-menu .product-model-parent > .nav-parent-toggle{
    padding-right:38px !important;
    font-weight:700;
  }

  .site-navbar .site-navigation .site-menu .product-model-parent > .nav-parent-toggle:before{
    right:16px !important;
  }

  .site-navbar .site-navigation .site-menu .product-model-parent > .product-model-dropdown{
    left:calc(100% + 8px) !important;
    top:-2px !important;
    min-width:320px !important;
    margin-top:0 !important;
    border-top:2px solid var(--blue);
    border-radius:0 0 10px 10px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(6,24,39,.14);
  }

  .site-navbar .site-navigation .site-menu .product-model-dropdown > li{
    min-width:320px !important;
  }

  .site-navbar .site-navigation .site-menu .product-model-dropdown > li > a{
    padding:11px 18px !important;
    font-size:16px !important;
    white-space:nowrap !important;
  }

  .site-navbar .site-navigation .site-menu .product-model-dropdown > li > a:hover{
    background:#f3f7fb;
    color:var(--blue) !important;
  }

  /* small visual bridge so pointer can move right without submenu closing */
  .site-navbar .site-navigation .site-menu .product-model-parent:after{
    content:"";
    position:absolute;
    top:0;
    right:-10px;
    width:12px;
    height:100%;
  }
}

@media(max-width:1199px){
  .site-mobile-menu .site-nav-wrap .product-dropdown > li > a{
    padding-left:40px !important;
    padding-right:42px !important;
    font-size:16px !important;
    line-height:1.45 !important;
    white-space:normal !important;
    word-break:keep-all;
  }

  .site-mobile-menu .site-nav-wrap .product-dropdown > li > ul > li > a{
    padding-left:58px !important;
    padding-right:10px !important;
    font-size:15px !important;
    line-height:1.45 !important;
    white-space:normal !important;
    word-break:keep-all;
  }

  .site-mobile-menu .site-nav-wrap .product-model-parent > .arrow-collapse{
    right:2px;
  }
}


/* =====================================================================
   v7 small fixes
   ===================================================================== */
@media(min-width:1200px){
  /* keep Boxwall text visible when hovering into second-level submenu */
  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li.product-model-parent:hover > .nav-parent-toggle,
  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li.product-model-parent:focus-within > .nav-parent-toggle{
    color: var(--blue) !important;
    background:#f3f7fb !important;
  }

  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li.product-model-parent:hover > .nav-parent-toggle:before,
  .site-navbar .site-navigation .site-menu .dropdown.product-dropdown > li.product-model-parent:focus-within > .nav-parent-toggle:before{
    color: var(--blue) !important;
  }
}

/* Homepage Boxwall height badges */
.hm-product-grid .hm-product-story .hm-product-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 12px;
  border-radius:999px;
  margin-bottom:10px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  color:#fff;
  line-height:1;
}

.hm-product-grid .hm-product-story .hm-product-badge-102{
  background:linear-gradient(135deg,#0f84d6 0%, #0068b7 100%);
}

.hm-product-grid .hm-product-story .hm-product-badge-52{
  background:linear-gradient(135deg,#2aa2ea 0%, #1590d8 100%);
}

@media(max-width:767px){
  .hm-product-grid .hm-product-story .hm-product-badge{
    min-height:26px;
    padding:5px 10px;
    margin-bottom:8px;
    font-size:11px;
  }
}


/* =====================================================================
   v8 Mobile menu: keep Boxwall model submenu on one line
   ===================================================================== */
@media(max-width:1199px){
  .site-mobile-menu{
    width:min(90vw,390px) !important;
  }

  .site-mobile-menu .site-nav-wrap .product-dropdown > li > ul > li > a{
    padding-left:54px !important;
    padding-right:8px !important;
    font-size:16px !important;
    line-height:1.4 !important;
    white-space:nowrap !important;
    word-break:normal !important;
  }
}


/* =====================================================================
   v9 FINAL mobile product menu sizing
   ===================================================================== */
@media(max-width:1199px){
  .site-mobile-menu{
    width:calc(100vw - 16px) !important;
    max-width:420px !important;
  }

  .site-mobile-menu .site-mobile-menu-body{
    padding-left:14px !important;
    padding-right:14px !important;
    overflow-x:hidden !important;
  }

  .site-mobile-menu .site-nav-wrap .product-dropdown > li > ul > li > a{
    display:block !important;
    padding-left:44px !important;
    padding-right:4px !important;
    font-size:16px !important;
    line-height:1.4 !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
}


/* =====================================================================
   v10 small fixes
   ===================================================================== */

/* Homepage BW102 / BW52 height badges: no bottom gap */
.hm-product-grid .hm-product-story .hm-product-badge{
  margin-bottom:0 !important;
}

/* 首頁 Hero 影片暗化遮罩 */
.hm-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.28);
  z-index:2;
  pointer-events:none;
}

.hm-hero-video{
  z-index:1;
}

.hm-hero-copy{
  position:absolute;
  z-index:3;
}