
:root {
  --main-blue: #004899;
  --submenu-bg: rgba(255,255,255,0.96);
  --header-height: 74px;
}
html, body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body { 
	margin:0; 	
  	
	font-family:  "Noto Sans TC", "Microsoft JhengHei", Arial, Helvetica, "Segoe UI", sans-serif;
}



    /* ===== News list style ===== */
    .new-news-section{
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 0px;
    padding-bottom: 80px;
}
    .new-news-list{
    display: flex;
    flex-direction: column;
    margin: 0px;
    padding: 0px;
    gap: 22px;
}
    .new-news-item{ background:transparent; border:none; display:flex; gap:30px; font-size:1.22rem; padding:28px 38px; align-items:flex-start; transition: background .22s, box-shadow .23s, transform .22s; position:relative; z-index:1; }
    .new-news-item.bg{ background:#f5f9fd; }
    .new-news-item:hover{ background:#eaf3fa !important; box-shadow:0 4px 24px rgba(32,78,156,0.09); cursor:pointer; transform:translateY(-3px) scale(1.025); }
    .new-news-item:hover .new-news-text{ color:#666; }
    .new-news-item:hover .new-news-date{ color:#0087ce; font-weight:bold; }
    .new-news-date{ flex-shrink:0; color:#666666; font-size:1.18rem; min-width:110px; font-weight:500; letter-spacing:1px; margin-top:2px; transition:color .18s; }
    .new-news-text{ color:#0087ce; line-height:1.6; letter-spacing:.5px; word-break:break-all; transition:color .18s; font-size:18px; margin:0; }
    .new-news-bar{ margin-top:8px; }

    .new-news-more{ display:inline-block; font-size:14px; padding:6px 12px; border-radius:20px; background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%); color:#fff; text-decoration:none; font-weight:600; transition: box-shadow .25s ease, transform .25s ease; }

    .new-news-more:hover{box-shadow: 0 4px 10px rgba(0,0,0,.2); transform:translateY(-1px); }


    @media (max-width: 900px){ .new-news-item{ padding:22px 20px; } }



    .new-news-detail-wrap{
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 80px;
    }

    .new-news-date{
    font-size: 15px;
    color: #666;
    margin-bottom: 10px;
    letter-spacing: 1px;
    text-align: center;
    }
    .new-news-title{
    font-size: 30px;
    font-weight: 800;
    margin: 0 0 24px;
    color: #0087ce;
    line-height: 1.4;
    text-align: center;
    }
    .new-news-image{
      margin:0 0 24px; border-radius:8px; overflow:hidden;
    }
    .new-news-image img{
      width:100%; height:auto; display:block; object-fit:cover;
    }
    .new-news-content{
      font-size:17px; color:#666;
    }
    .new-news-content p{ margin:0 0 16px; }

   .new-news-back {
  margin-top: 40px;
  text-align: center; /* 讓裡面的 inline-block 置中 */
}
.new-news-back a {
  display: inline-block;
  font-size: 17px;
  padding: 8px 18px;
  border-radius: 20px;
  background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: box-shadow .25s ease, transform .25s ease;
	box-shadow: 0 4px 10px rgba(0, 0, 0, .1);
}
.new-news-back a:hover {
  transform: translateY(-1px);
}


    .new-news-nav{
      display:flex; justify-content:space-between; margin-top:60px; gap:20px;
    }
    .new-news-nav a{
      flex:1; text-align:center; font-size:14px; padding:10px 16px; border-radius:20px;
      background:#f0f0f0; color:#333; text-decoration:none; font-weight:600;
      transition: background .25s ease, transform .25s ease;
    }
    .new-news-nav a:hover{ background:#e0e0e0; transform:translateY(-1px); }


.new-product-wrap{ max-width:1200px; margin:0 auto; padding:40px 20px 80px; }


.new-product-grid{
    list-style: none;
    padding: 0;
    margin: 0px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}
@media (min-width: 720px){ .new-product-grid{ grid-template-columns: repeat(2, 1fr);} }
@media (min-width: 1024px){ .new-product-grid{ grid-template-columns: repeat(3, 1fr);} }


.new-product-item{
position:relative; overflow:hidden; border-radius: 12px;
background: #f9f9f9;
box-shadow: 0 4px 16px rgba(0,0,0,.1);
transition: transform .3s ease, box-shadow .3s ease;
display:flex; flex-direction:column;
}
.new-product-item:hover{ transform: translateY(-4px); box-shadow: 0 6px 24px rgba(0,0,0,.15); }


.new-product-media{ position:relative; aspect-ratio: 4/3; overflow:hidden; flex-shrink:0; }
.new-product-media img{ width:100%; height:100%; object-fit:cover; display:block; transition: transform .6s ease; }
.new-product-item:hover .new-product-media img{ transform: scale(1.05); }


.new-product-content{ padding: 16px; }
.new-product-name{ margin:0; font-size: 18px; font-weight:700; letter-spacing:.02em; color:#222222; }


.new-product-bar{ display:flex; justify-content:flex-end; padding:0 16px 16px; }
.new-product-cta{
display:inline-flex; align-items:center; gap:.5em; padding:8px 14px; border-radius: 999px;
background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
color:#fff; text-decoration:none; font-size:14px; font-weight:600;
transition: transform .25s ease, box-shadow .25s ease;
}
.new-product-item:hover .new-product-cta{ transform: translateY(-1px); box-shadow:0 4px 12px rgba(0,0,0,.2); }


.coming{
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}


.coming h1{
    color: #000000;
    font-size: 36px;
    text-align: center;
}
.coming img{
    width: 100%;
    height: auto;
    vertical-align: middle; /* 或 top / bottom，都能移除那條縫 */
}
::selection {
    background: #1e7cc4;
    color: #fff;
}

    .product-top.no-desc {
      justify-content: center;
      gap: 0;
    }
    .product-top.no-desc .product-image {
      margin: 0 auto;
      min-width: 0;
      align-items: center;
      max-width: 100%;
    }
.product-main-title {
    font-size: 34px;
    font-weight: bold;
    color: #000;
    padding-bottom: 0px;
    line-height: 1.12;
    white-space: nowrap;
    text-align: center;
    margin-top: 15px;
    margin-bottom: 0px;
}
}

@media (max-width: 640px) {
  .product-main-title {
    font-size: 16px;
    margin-top: 14px;
    margin-bottom: 6px;
  }
}
    .product-top.no-desc ~ .product-content {
      display: none;
    }


  .main-banner {
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
  /* 不設定寬度，讓內容決定 */
  padding: 36px 0 12px 0; /* 為了置中視覺 */
  background: transparent;
}
.main-banner-text {
    display: inline-block;
    background: #08338e;
    color: #fff;
    font-size: 34px;
    font-weight: bold;
    letter-spacing: 2px;
    padding-top: 9px;
    padding-right: 32px;
    padding-left: 32px;
    padding-bottom: 9px;
    line-height: 1.18;  
	box-shadow: 0 2px 10px rgba(0,0,0,0.07); 
	
}
@media (max-width: 640px) {
  .main-banner-text {
    font-size: 27px;
	  letter-spacing: 0px;
  }
	.product-main-title {
    font-size: 30px;
}
	
   
.product-table-title {
    font-size: 22px!important;
}
}

    .main-wrap {
      max-width:1024px;
      margin: 0 auto;
      padding: 0 20px;
    }
    .product-top {
      display: flex;
      gap: 44px;
      align-items: flex-start;
      margin-top: 36px;
      margin-bottom: 50px;
    }
    .product-image {
      flex: 0 0 480px;
      background: #fff;
      display: flex;
      align-items: flex-start;
      justify-content: center;
      min-width: 300px;
    }
    .product-image img {
      max-width: 100%;
      max-height: 480px;
      object-fit: contain;
      display: block;
    }



    .product-content {
    flex: 1 1 0;
    min-width: 0;
    margin-top: 80px;
    }

    /* 單行標題（型號+分選機） */
    .product-title-row {
      display: flex;
      align-items: flex-end;
      gap: 14px;
      margin-bottom: 18px;
      position: relative;
      flex-wrap: wrap;
    }
    .model-goldline-wrap {
      position: relative;
      display: inline-block;
      line-height: 1.13;
    }
    .model-title {
    font-size: 34px;
    font-weight: bold;
    color: #000;
    position: relative;
    z-index: 2;
    background: transparent;
    display: inline-block;
    padding-bottom: 0px;
    margin-bottom: 15px;
    }
    .model-goldline {
    height: 2.5px;
    background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0px;
    z-index: 1;
    pointer-events: none;
    }
    .product-title-desc {
      font-size: 34px;
      font-weight: bold;
    color:#000;
       padding-bottom: 0px;
    margin-bottom:15px;
      line-height: 1.12;
      white-space: nowrap;
    }

    .product-feature-list {
    list-style: disc;
    margin: 0px;
    padding: 0;
    color: #666;
    font-size: 17px;
    list-style: none;
    }


.product-feature-list li {
    margin-bottom: 12px;
   
  position: relative;
  padding-left: 16px; 
}

.product-feature-list li::before {
    content: '';
  position: absolute;
  left: 0;
  top: 8px; 
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #08338e;
  display: block;
}
.product-table-group {
    background: #292e37 !important;
    color: #fff !important;
    text-align: left!important;
}

    /* Table Section */
    .product-table-section {
      margin-bottom: 60px;
    }
    .product-table-title {
    font-size: 28px;
    font-weight: bold;
    color: #08338e;
    margin-bottom: 22px;
    text-align:center;
    }
    .product-table-wrap {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(32,40,90,0.07);
    border: 1px solid #E2E5EB;
    }
    .product-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 680px;
    }
    .product-table th, .product-table td {
    padding-top: 10px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 10px;
    font-size: 16px;
    text-align: left;
    border-bottom: 1px solid #E2E5EB;
    color: #666;
    line-height: 1.7;
    }
    .product-table th {
    background: #08338e;
  color: #fff;
  font-weight: bold;
  width: 180px;
  font-size: 16px;
  letter-spacing: 1px;
  border-bottom: 1px solid #E2E5EB;
  text-align: center;
  border-right: none;  /* 預設不顯示 */
    }
/* 只對同一列的第一個 th 加右邊框 */
.product-table tr:first-child th:first-child {
  border-right: 1px solid #fff;
}

    .product-table tr:nth-child(even) td {
      background: #f5f8fd;
    }
    .product-table tr:nth-child(odd) td {
      background: #fff;
    }
    .product-table tr:last-child th, .product-table tr:last-child td {
      border-bottom: none;
    }
    @media (max-width: 900px) {
      .product-top {
        flex-direction: column;
        gap: 26px;
        align-items: stretch;
      }
      .product-image {
        margin: 0 auto;
        min-width: 0;
        width: 90%;
      }
      .product-table { min-width: 0; }
    }
    @media (max-width: 640px) {
		
		.product-table-wrap {
    margin-left: 4%;
    margin-right: 4%;
}
		
		
		.product-top {
          gap:0px!important;
    }
  .product-content {
    margin-top: 0px;
    margin-left: 4%;
    margin-right: 4%;
}
	.product-image {
    flex: 0 0 420px;
}
		
      .main-banner { font-size: 17px; }
      .main-wrap {
    padding: 0px;
}
      .product-table th, .product-table td { padding: 10px 8px; font-size: 17px; }
      .model-title { font-size: 26px; }
      .product-title-desc { font-size: 26px; }
      .product-image { padding: 0px; 
		width: 96%;
		}
      .product-table-section { margin-bottom: 20px;}
    }

.contact-img {
    width: 23px;
    height: 23px;
    margin-top: 8px;
}


    .contact-bg-wrap {
    max-width: 1280px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 80px;
    padding: 30px 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    }
    .contact-inner {
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: stretch;  /* 關鍵：讓兩側卡片等高 */
      gap: 48px;  
      width: 100%;
      max-width:1280px;
    }
    .contact-card {
      background: #f5f8fd;
      border-radius: 20px;
      box-shadow: 0 6px 32px rgba(8,51,142,0.09);
      display: flex;
      flex-direction: column;
      flex: 1 1 0;
      min-height: 0;
    }

    .contact-logo {
    background-image: url(../images/logo.png);
    background-repeat: no-repeat;
    background-position: right bottom;
		    background-size: 80%;
    }
    .contact-form-card {
      min-width: 480px;
      flex: 1 1 640px;
      max-width: 830px;
      padding: 40px 42px 38px 40px;
    }
    .contact-info-card {
      min-width: 330px;
      flex: 0 0 420px;
      max-width: 480px;
      align-items: flex-start;
      padding: 50px 38px;
    }
    /* 表單區 */
    .contact-form-desc {
      font-size: 17px;
      margin-bottom: 38px;
      color: #666;
      line-height: 1.7;
    }
    .contact-form {
      width: 100%;
    }
    .contact-row {
      display: flex;
      align-items: center;
      margin-bottom: 20px;
    }
    .contact-label {
      width: 80px;
      flex-shrink: 0;
      font-size: 17px;
      color: #666;
      margin-right: 12px;
      letter-spacing: 1px;
    }
    .contact-input, .contact-textarea {
      flex: 1 1 0;
      font-size:18px;
      border-radius: 10px;
      border: 1.5px solid #d2e3f5;
      padding: 14px 18px;
      background: #fff;
      color: #333;
      outline: none;
      transition: border 0.2s;
      font-family: inherit;
    }
    .contact-input:focus, .contact-textarea:focus {
      border-color: #41a1e6;
    }
    .contact-textarea {
      height: 160px;
      min-height: 100px;
      max-height: 320px;
      resize: vertical;
      line-height: 1.7;
    }
    .contact-verify {
      margin-bottom: 32px;
      align-items: center !important;
    }

    /* 驗證碼專用樣式 */
    .captcha-container {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .captcha-input-row {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      flex-wrap: wrap;
    }

    .contact-input[name="captcha"] {
      flex: 1;
      min-width: 120px;
    }

    .captcha-image-wrapper {
      display: flex;
      align-items: center;
      gap: 8px;
      background: #f9fafb;
      padding: 6px;
      border: 1px solid #ddd;
      border-radius: 8px;
      flex-shrink: 0;
    }

    .captcha-help {
      font-size: 12px;
      color: #666;
      margin-left: 0;
      line-height: 1.4;
    }

    .captcha-refresh-btn:hover {
      background: #f3f4f6 !important;
      border-color: #9ca3af !important;
    }

    /* 桌面版設置固定寬度 */
    @media (min-width: 641px) {
      .contact-input[name="captcha"] {
        width: 120px;
        flex-shrink: 0;
      }
    }

    /* 手機版響應式設計 */
    @media (max-width: 640px) {

      /* 強制顯示驗證碼相關的所有容器 */
      .contact-row.contact-verify {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        margin-bottom: 32px !important;
        gap: 12px !important;
      }

      .captcha-container {
        flex: 1;
        display: flex !important;
        flex-direction: column;
        gap: 8px;
        visibility: visible !important;
        opacity: 1 !important;
        min-width: 0;
      }

      .captcha-input-row {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        width: 100%;
        max-width: 100%;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
      }

      .captcha-input-row .contact-input[name="captcha"] {
        order: 1;
        width: 100%;
      }

      .captcha-input-row .captcha-image-wrapper {
        order: 2;
        align-self: center;
        margin-top: 8px;
      }

      .captcha-image-wrapper {
        align-self: center;
        justify-content: center;
        max-width: 280px;
        width: auto;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
      }

      .contact-input[name="captcha"] {
        width: 100%;
        max-width: 100%;
        text-align: center;
        font-size: 16px;
        padding: 12px;
        box-sizing: border-box;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        min-height: 48px;
      }

      .captcha-help {
        text-align: center;
        font-size: 13px;
        word-wrap: break-word;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin: 8px 0;
      }

      /* 確保 contact-verify 容器可見 */
      .contact-verify {
        max-width: 100%;
        display: flex !important;
        flex-direction: row;
        gap: 12px;
        align-items: center !important;
        visibility: visible !important;
        opacity: 1 !important;
      }

      .contact-verify .contact-label {
        width: 80px !important;
        flex-shrink: 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin-bottom: 0 !important;
        align-self: center !important;
      }

      /* 驗證碼圖片和按鈕的強制顯示 */
      #captcha-image, #captcha-refresh-btn {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
      }

      /* 修正手機版送出按鈕被壓縮的問題 */
      .contact-submit-wrap {
        margin-top: 32px !important;
        margin-bottom: 16px !important;
        padding-bottom: 16px !important;
      }

      .contact-submit-btn {
        width: 100% !important;
        min-height: 52px !important;
        font-size: 18px !important;
        padding: 16px 12px !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
      }

      /* 確保表單容器有足夠高度 */
      .contact-form {
        min-height: auto !important;
        padding-bottom: 24px !important;
      }

      .contact-form-card {
        min-height: auto !important;
        padding-bottom: 32px !important;
      }
    }
    .contact-verify { margin-bottom: 32px;}
    .contact-submit-wrap { margin-top: 18px; }
    .contact-submit-btn {
    width: 100%;
    font-size: 17px;
    font-weight: 600;
    border: none;
    border-radius: 10px;
    padding-top: 10px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 10px;
    background: linear-gradient(90deg, #2d4e8e 0%, #1091ca 100%);
    color: #fff;
    letter-spacing: 6px;
    cursor: pointer;
    transition: filter 0.15s;
    box-shadow: 0 1px 6px rgba(8,51,142,0.09);
    }
    .contact-submit-btn:hover { filter: brightness(1.08);}
    /* 聯絡資訊卡片 */
    .contact-info-title {
      color: #08338e;
      font-size: 34px;
      font-weight: 600;
      margin: 0 0 34px 0;
    }
    .info-group {
      margin-bottom: 34px;
    }
    .info-group-title {
      display: inline-block;
      font-size: 16px;
      font-weight: 700;
      color: #fff;
      background: linear-gradient(90deg, #2d4e8e 0%, #1091ca 100%);
      padding: 4px 12px 4px 12px;
      margin-bottom: 12px;
    }
    .info-list {
      margin: 0;
      padding: 0;
      list-style: none;
      font-size: 18px;
      color: #666;
      line-height: 2.2;
    }
    .info-list li {
      display: flex;
      align-items: flex-start;
      gap: 11px;
      margin-bottom: 2px;
      font-size: 17px;
    }

    .info-list li a{
    color: #666;
    text-decoration: none;
    }


    .info-list li a:hover{
    color: #6dabb4;
  text-decoration: underline solid;
    }

    .info-list svg {
      width: 22px;
      height: 22px;
      color: #b7bfc9;
      flex-shrink: 0;
      margin-top: 2px;
    }
    /* RWD */
    @media (max-width: 1200px) {
      .contact-inner { gap: 24px;}
      .contact-form-card { min-width: 0; padding-left: 20px; padding-right: 20px;}
      .contact-info-card { min-width: 0; padding-left: 20px; padding-right: 20px;}
    }
    @media (max-width: 900px) {
      .contact-inner { flex-direction: column; gap: 24px;}
      .contact-form-card, .contact-info-card {
        max-width: 100vw;
       /* width: 96vw;*/
        min-width: 0;
        border-radius: 16px;
      }
    }
    @media (max-width: 650px) {
      .contact-bg-wrap { padding: 0;}
      .contact-form-card, .contact-info-card { padding: 16px 3vw;}
      .contact-info-title { font-size:30px;}
      .info-group-title { font-size: 13px;}
    }

    .quality-policy-section {
    position: relative;
    padding-top: 120px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 410px;
    z-index: 1;
    overflow: hidden;
    background-image: url(../images/about-img3.jpg);
    background-color: #f7f7f7;
    background-repeat: no-repeat;
    background-position: center bottom;
		background-size:70%;
    }
    .quality-policy-header {
      text-align: center;
      margin-bottom: 22px;
      position: relative;
      z-index: 2;
    }
    .quality-policy-header .en-title {
      font-size: 18px;
      color: #c8c8c8;
      font-weight: 600;
      letter-spacing:  1.2px;
    margin-bottom: -8px;
    }
    .quality-policy-header .zh-title {
      font-size:40px;
      color: #08338e;
      font-weight: 600;
      letter-spacing: 1.2px;
      margin-bottom: 0;
    }
    .quality-policy-cards-wrap {
      display: flex;
      justify-content: center;
      gap: 48px;
      max-width: 1680px;
      margin: 0 auto;
      padding: 0 40px;
      position: relative;
      z-index: 2;
    }
    .quality-policy-card {
        background: rgba(8, 51, 142, 0.92);
      border-radius: 24px;
      box-shadow: 0 8px 32px rgba(8,51,142,0.10), 0 2px 8px rgba(8,51,142,0.06);
      flex: 1 1 0;
      min-width: 320px;
      max-width: 710px;
      padding: 42px 44px 34px 44px;
      color: #fff;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
      box-sizing: border-box;
    }
    .quality-policy-card h3 {
      margin: 0 0 18px 0;
      font-size: 28px;
      font-weight: 600;
      line-height: 1.3;
      display: flex;
      align-items: center;
    }
    .quality-policy-card .card-divider {
    width: 138px;
    height: 2.5px;
    border: none;
    background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
    margin-top: 0px;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 4px;
    display: block;
    }
    .quality-policy-card p {
      font-size: 18px;
      line-height: 2;
      letter-spacing: 0.2px;
      margin: 0;
      color: #fff;
    }

    /* 握手底圖 */
    .quality-handshake-bg {
      position: absolute;
      left: 0; right: 0; bottom: 0;
      width: 100vw;
      height: 370px;
      z-index: 1;
      background: url('關於我們-品質政策.jpg') center 100%/auto 370px no-repeat;
      pointer-events: none;
      opacity: 1;
      /* 如果要淡一點，可以再調整 opacity */
    }

    /* RWD: 平板 */
    @media (max-width: 1024px) {
      .quality-policy-cards-wrap {
        flex-direction: column;
        gap: 32px;
        padding: 0 20px;
      }
      .quality-policy-card {
        max-width: 100%;
        padding: 36px 20px 28px 20px;
      }
    }
    /* RWD: 手機 */
    @media (max-width: 640px) {
      .quality-policy-header .en-title {
        font-size: 18px;
      }
      .quality-policy-header .zh-title {
        font-size: 30px;
      }
      .quality-policy-card h3 {
        font-size: 24px;
      }
      .quality-policy-card p {
        font-size: 16px;
      }
      .quality-policy-card {
    padding-top: 26px;
    padding-right: 16px;
    padding-left:  16px;
    padding-bottom:  26px;
    border-radius: 16px;
      }
      .quality-handshake-bg {
        height: 120px;
        background-size: auto 120px;
      }
    }
.policy-bg {
  background: #08338e;
  margin: 0;
  padding: 20px 0;
}
.policy-section {
  display: flex;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 5vw;
  align-items: center;
  position: relative;
  z-index: 1;
  gap: 0;
}
    .policy-left {
      flex: 1 1 52%;
      padding: 80px 0 80px 0;
      z-index: 2;
      min-width: 300px;
    }
    .policy-en {
    font-size: 18px;
    color: #c8c8c8;
    letter-spacing: 1.2px;
    font-weight: 600;
    margin-bottom: 0px;
    text-transform: uppercase;
    margin-left: 4px;
}
    .policy-title-wrap {
      display: inline-block;
      position: relative;
      margin-bottom: 32px;
    }
    .policy-title {
          font-size: 40px;
    color: #fff;
    font-weight: 600;
    letter-spacing: 1.2px;
    margin-top: -8px;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
    line-height: 1.2;
    display: block;
}
    
    .policy-title::after {
      content: '';
      display: block;
      height: 3px;
      width: 100%;
      margin-top: 12px;
     background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
      position: absolute;
      left: 0;
      bottom: -28px;
      z-index: 0;
    }
    .policy-desc {
      font-size: 18px;
      line-height: 2;
      letter-spacing: 0.2px;
      color: #fff;
      margin-bottom: 2.5em;
      opacity: 0.93;
    }

    .policy-desc p {
    margin-top: 0px;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
    }


  .policy-desc ul {
    margin-top: 20px;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 20px;
    padding-bottom: 0px;
    }

  .policy-desc ul li {
    margin: 0px;
    padding: 0px;
    line-height: 1.5;
    }


    .policy-foot {
      font-size: 1.08rem;
      line-height: 2.1;
      color: #dde7f6;
      opacity: 0.86;
      letter-spacing: 0.2px;
    }
    .policy-right {
      flex: 1 1 48%;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      min-width: 300px;
      padding: 40px 0 40px 24px;
      z-index: 3;
      box-sizing: border-box;
    }
    .policy-honeycomb-img {
      max-width: 100%;
      width: 600px;
      aspect-ratio: 882/785;
      display: block;
      object-fit: contain;
      filter: drop-shadow(0 8px 32px rgba(32,51,142,0.13));
      border-radius: 18px;
      background: transparent;
    }
   @media (max-width: 1199.98px) {
      .policy-section {
        flex-direction: column;
        padding: 0 3vw;
        min-height: unset;
      }
      .policy-right {
        justify-content: center;
        padding: 24px 0 48px 0;
      }
      .policy-honeycomb-img {
        width: 80vw;
        max-width: 480px;
      }
      .policy-title { font-size: 2.1rem; }
      .policy-title::after { height: 3px; margin-top: 7px; bottom: -8px;}
    }
    @media (max-width: 720px) {
      .policy-section {
        flex-direction: column;
        padding: 0 1vw;
      }
      .policy-left {
        padding: 44px 0 12px 0;
      }
      .policy-title { font-size: 1.32rem; }
      .policy-title::after { height: 2px; margin-top: 5px; bottom: -5px;}
      .policy-honeycomb-img {
        width: 92vw;
        max-width: 99vw;
      }
}
    }


    .aboutus-wrap {
      margin: 0 auto;
      padding: 0;
    }
.aboutus-header {
  text-align: center;
  margin-top: 80px;
  margin-bottom: 60px;
}
.aboutus-ch {
  color: #08338e;
  font-size: 30px;
  font-weight: 700;
  margin-bottom: -10px;   /* 負邊距！重疊感調這裡 */
  position: relative;
  z-index: 2;
}
.aboutus-en {
  font-size: 70px;
  color: #ebebeb;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
  margin-top: -14px;
  margin-bottom: 0;
  opacity: 1;
  position: relative;
  z-index: 1;
}
    .aboutus-main {
    display: flex;
    max-width: 1280px;
    margin: 0 auto 80px auto;
    box-sizing: border-box;
    align-items: stretch;
    background: #fff;
    border-radius: 0;
    justify-content: center;
    }
    .aboutus-imgbox {
      flex: 0 0 50.2%;
      width: 50.2%;
      max-width: 50.2%;
      min-width: 0;
      aspect-ratio: 960/700;
      display: flex;
      align-items: center;
      justify-content: center;
    }
.aboutus-imgbox img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
box-shadow: 0 16px 36px -8px rgba(32,51,142,0.16);
}


    .aboutus-content {
      flex: 1 1 0;
      min-width: 0;
      width: 49.8%;
      max-width: 49.8%;
      padding: 66px 48px 60px 48px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      background: #fff;
      border-radius: 0;
    }
    .aboutus-philo-en {
    font-size: 18px;
    color: #c8c8c8;
    letter-spacing: 1.2px;
    font-weight: 600;
    margin-bottom: 0px;
    text-transform: uppercase;
    margin-left: 2px;
    }
    .aboutus-title-box {
      display: inline-block;
      width: fit-content;
      margin-bottom: 0;
    }
    .aboutus-title {
    font-size: 40px;
    color: #08338e;
    font-weight: 600;
    letter-spacing: 1.2px;
    margin-top: -8px;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
    line-height: 1.2;
    display: block;
    }
    .aboutus-gold-line {
    height: 3px;
    width: 100%;
    background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
    border: none;
    display: block;
    margin-top: 30px;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 5px;
    padding: 0;
    }
    .aboutus-text {
      color: #666;
      font-size: 18px;
      line-height: 2;
      margin-top: 0;
      margin-bottom: 0;
      letter-spacing: 0.2px;
      word-break: break-word;
    }
    .aboutus-text + .aboutus-text {
      margin-top: 18px;
    }
    /* 響應式 */
   @media (max-width: 1199.98px) {
      .aboutus-main {
		  flex-direction: column;
	       max-width: 900px;
	   
	   }
      .aboutus-imgbox, .aboutus-content {
          max-width:900px;
		  width: 100%;
      }
      .aboutus-imgbox {
        aspect-ratio: 1.3/1;
        min-height: 190px;
      }
     .aboutus-content {
    padding: 20px;
    max-width: 900px;    /* 可以保留，但不要加 !important */
    width: 100%;         /* 一定要加，才能自適應 */
    box-sizing: border-box;
  }
  .policy-section {
    max-width: 900px;    /* 用 max-width 就好 */
    width: 100%;         /* 同上，讓他隨螢幕變化 */
    box-sizing: border-box;
  }
    }
 @media (max-width: 900px) {

.aboutus-imgbox img {
    width: 80%;
    height:auto;
}
	
	    
	 .policy-section {
         width: 100%!important;
}
	 .policy-honeycomb-img {
    width: 700px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    }
}

    @media (max-width: 640px) {
	
	    
	 .policy-section {
        width: 600px;
}
	 .policy-honeycomb-img {
    width:96%;
    }
		
		.policy-right {
    justify-content: center;
    padding: 0px;
    }
		
.policy-desc {
    
    margin-bottom: 0px;
}

		
		 .policy-bg {
    padding-top: 20px;
    padding-right: 4%;
    padding-left:4%;
    padding-bottom: 20px;
}
		
		.policy-title {
     margin-top: -5px;
}
		.policy-title {
        font-size: 30px;
    }
		.policy-en {  
    margin-left: 2px;
}
		
		.quality-policy-section {   
    background-size: 100%;
    padding-bottom: 160px;
    padding-top:60px;
}
      .aboutus-header {margin-top: 36px; margin-bottom: 18px;}
      .aboutus-ch {font-size: 30px;
		    margin-bottom: 8px;
		  		
		}
      .aboutus-en {
    font-size: 24px;
}
      .aboutus-content {
    padding-top: 20px;
    padding-right: 4%;
    padding-left: 4%;
    padding-bottom: 20px;
    max-width: 600px;    /* 可以保留，但不要加 !important */
    width: 100%;         /* 一定要加，才能自適應 */
}
		.policy-section {
    max-width: 600px;    /* 用 max-width 就好 */
    width: 100%;         /* 同上，讓他隨螢幕變化 */
    box-sizing: border-box;
  }
		
      .aboutus-title {font-size: 30px;}
      .aboutus-gold-line {height: 2px; margin: 7px 0 18px 0;}
      .aboutus-imgbox {aspect-ratio: 1.2/1;}
      .aboutus-main {margin-bottom: 32px;}
    }


.cooperation-section-bg {
  background: #08338e;
  width: 100%;
  padding: 50px 0;
}

.cooperation-section {
  display: flex;
  align-items: stretch;
  background: #173e90;
  border-radius: 30px;
  box-shadow: 0 10px 36px 0 rgba(40,60,120,0.13), 0 1.5px 9px 0 rgba(0,0,0,0.08);
  width: 90vw;         /* RWD 時保留左右間距 */
  max-width: 1280px;
  min-width: 320px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  min-height: 430px;
}

}

@media (max-width: 320px) {

      .aboutus-content {
    padding-top: 20px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 20px;
     max-width: 300px;    /* 可以保留，但不要加 !important */
    width: 100%;         /* 一定要加，才能自適應 */
}
		.policy-section {
    max-width:300px;    /* 用 max-width 就好 */
    width: 100%;         /* 同上，讓他隨螢幕變化 */
    box-sizing: border-box;
  }
	}
@media (max-width: 1024px) {
  .cooperation-section {
    flex-direction: column;
    border-radius: 24px;
    min-height: unset;
    width: 96vw;
    margin: 0 auto;
  }
  .cooperation-section-bg {
    padding: 32px 0;
  }
}
  @media (max-width: 640px) {
  .cooperation-section {
    border-radius: 12px;
    width: 100vw;
    min-width: unset;
  }
  .cooperation-section-bg {
    padding-top: 16px;
    padding-bottom: 16px;
  }
}


    .coop-img1, .coop-img2 {
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .coop-img1 {
      flex: 0 0 17%;
      min-width: 160px;
      max-width: 200px;
      border-radius: 40px 0 0 0;
      margin-right: 28px;
    }
    .coop-img2 {
      flex: 0 0 28%;
      min-width: 260px;
      max-width: 360px;
      margin-right: 38px;
      border-radius: 0;
    }
    .coop-img1 img,
    .coop-img2 img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      opacity: 0.8;
      display: block;
    }
    .coop-text-block {
      flex: 1 1 0;
      color: #fff;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 54px 48px 42px 0;
      min-width: 240px;
    }
    .coop-title-tw {
      font-size:44px;
      font-weight: 600;
      margin-bottom: 10px;
      line-height: 1.25;
      letter-spacing: 0.5px;
    }


@media (max-width: 1200px) {
	.coop-title-tw {
      font-size:44px;
    }
	 .coop-img1 img,
    .coop-img2 img {
   
      display: block!important;
    }
	 }
	

@media (max-width: 900px) {
	
	 .coop-img1 img   {
   
      display: none!important;
    }
	.coop-img2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 90%;  /* 上方為主 */
    opacity: 0.8;
    display: block;
}
	 }
.coop-title-underline {
  display: inline-block;
  padding-bottom: 4px;
  margin-bottom: 2px;
  line-height: 1.2;
  margin-left: 143px; /* 依你的設計，建議用em會更RWD */
  position: relative;
}

.coop-title-underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 3px; 
  width: 100%;
 background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
  z-index: 1;
  pointer-events: none;
}
    .coop-title-en {
      font-size:18px;
      font-weight: 600;
      margin-bottom: 26px;
      letter-spacing: 1.2px;
      display: block;
    }
    .coop-desc {
      font-size:18px;
      font-weight: 400;
      line-height: 1.9;
      letter-spacing: 0.5px;
      margin-bottom: 0;
    }
    /* RWD */
    @media (max-width: 1024px) {
      .cooperation-section {
        flex-direction: column;
        border-radius: 32px;
        min-height: unset;
        padding: 0;
      }
      .coop-img1, .coop-img2 {
        min-width: 100%;
        max-width: 100%;
        margin: 0;
        border-radius: 32px 32px 0 0;
        height: 160px;
      }
      .coop-img2 {
        border-radius: 0;
        height: 170px;
      }
      .coop-text-block {
        padding: 32px 22px 32px 22px;
      }
    }
     @media (max-width: 640px) {
      .cooperation-section {
        border-radius: 0px;
      }
      .coop-img1, .coop-img2 {
    height: 120px;
    border-radius: 0px;
      }
      .coop-text-block {
    padding: 10px;
      }
      .coop-title-tw { font-size: 34px; }
      .coop-title-en { font-size: 18px; }
      .coop-desc { font-size: 18px; }
      .coop-title-underline {
        margin-left: 0px; 
        border-bottom-width: 4px;
      }
    }

    .footer {
      background: #f3f5f8;
      padding: 48px 0 0 0;
      color: #666666;
      position: relative;
    }
    .footer-wrap {
      max-width: 1280px;
      margin: 0 auto;
      padding: 0 48px;
      position: relative;
    }
    .footer-logo {
      height: 54px;
      margin: 0 0 24px 0;
      display: block;
    }
    .footer-row {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      gap: 60px;
      justify-content: flex-start;
      width: 100%;
    }
    .footer-info-block {
      min-width: 250px;
      max-width: 330px;
      flex: 0 0 330px;      
      font-size: 14px;
      line-height: 2;
		
    }
.footer-info-block a {
    color: #666;
    text-decoration: none;
    transition: color .18s;
}
.footer-info-block a:hover {
  color: #6dabb4;
  text-decoration: underline solid;
}

    .footer-label {
    display: inline-block;
    background: #98999b;
    color: #fff;
    padding-top: 1px;
    padding-right: 14px;
    padding-left: 14px;
    padding-bottom: 1px;
    font-weight: bold;
    margin-bottom: 4px;
    font-size: 14px;
    }
    .footer-cols {
      display: flex; 
      flex: 1 1 0;
      gap: 50px;
      min-width: 0;
    }
    .footer-col {
      min-width: 110px;
      flex: 1 1 0;
    }
    .footer-col h4,
    .footer-col ul li {
      position: relative;
      cursor: pointer;
      transition: color 0.2s;
    }
    .footer-col h4 {
      font-weight: 600;
      font-size: 16px;
      margin: 0 0 12px 0;
      padding-bottom: 2px;
    }
    .footer-col ul {
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .footer-col li {
      color: #666666;
      margin-bottom: 8px;
      font-size: 15px;
      padding-bottom: 2px;
    }
    /* underline 動畫，只跟字寬一致！ */
    .footer-col h4 span,
    .footer-col ul li span {
      display: inline-block;
      position: relative;
      transition: color 0.2s;
    }
    .footer-col h4 span::after,
    .footer-col ul li span::after {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      bottom: -3px;
      width: 100%;
      height: 1px;
      background: #08338e;
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 0.35s cubic-bezier(.44,0,.19,1);
    }
    .footer-col h4:hover span,
    .footer-col ul li:hover span {
      color: #08338e;
    }
    .footer-col h4:hover span::after,
    .footer-col ul li:hover span::after {
      transform: scaleX(1);
    }


/* === Footer 連結 === */
.footer-col h4 a,
.footer-col li a {
  position: relative;       /* 讓 ::after 定位用 */
  color: inherit;
  text-decoration: none;
  display: inline-block;
  transition: color 0.2s;
}

/* === hover 下劃線動畫 === */
.footer-col h4 a::after,
.footer-col li a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background: #08338e;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.35s cubic-bezier(.44, 0, .19, 1);
}

.footer-col h4 a:hover::after,
.footer-col li a:hover::after {
  transform: scaleX(1);   /* 滑鼠移入時展開 */
}


    @media (max-width:700px){
      .footer-col h4 span::after,
      .footer-col ul li span::after {
        display: none;
		 
      }
    }
    /* SNS */
    .footer-sns {
      flex: 0 0 160px;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      justify-content: flex-end;
      min-width: 120px;
      position: absolute;
      right: 48px;
      bottom: 0;
      margin-top: 0;
    }

.footer-sns-icons {
  display: flex;
  gap: 8px;
}

.footer-sns-icons .sns-link {
  display: inline-block;
  line-height: 0;
  border-radius: 6px;
  transition: background 0.2s;
}

.footer-sns-icons .sns-link img {
  width: 28px;
  height: 28px;
  display: block;
  transition: filter 0.18s;
}

.footer-sns-icons .sns-link:hover img {
  filter: brightness(1.1) saturate(1.2);  
}

    .footer-bottom {
      margin-top: 40px;
      background: #174893;
      color: #fff;
      text-align: center;
      padding: 16px 0 10px 0;
      font-size: 13px;
      letter-spacing: 0.03em;
    }
.footer-bottom a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 0.02em;
    transition: color 0.18s;
}
.footer-bottom a:hover {
  color: #fdd835;  
  text-decoration: underline;
}
    @media (max-width: 1200px) {
      .footer-wrap {
        padding: 0 14px;
      }
      .footer-row, .footer-cols {
        gap: 26px;
      }
      .footer-sns {
        position: static;
        align-items: flex-start;
        margin-top: 16px;
      }
    }
    @media (max-width: 900px) {
      .footer-row, .footer-cols {
        flex-direction: column;
        gap: 0;
      }
      .footer-row {
        flex-direction: column;
        gap: 32px!important;
      }
    }
    @media (max-width: 640px) {
      .footer-wrap {
        padding: 0 12px;
      }
      .footer-logo { margin: 0 auto 20px auto; display: block;}
      .footer-row, .footer-cols {
    flex-direction: column;
    gap: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
      }
      .footer-info-block, .footer-col {
        width: 100%;
        min-width: 0;
        max-width: 100%;
		  
      }
      .footer-sns {
    position: static;
    margin-top: 16px;
    align-items: flex-start;
	  justify-content: center; /* 水平置中 */
      }
		.footer-sns-icons .sns-link img {
    width: 40px;
    height: 40px;
}
	.footer-info-block {   
    flex: 0 0 320px;
	font-size: 16px;
}
   .footer-col li { 
   font-size: 16px;
}
    }

.contact-bg {
  width: 100%;
  min-height: 390px;
  background-image: url(../images/index-contact-bg.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}
    .contact-overlay {
    max-width: 1180px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding-top: 56px;
    padding-right: 50px;
    padding-left: 50px;
    padding-bottom: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    background: linear-gradient(90deg, rgba(20,28,55,0.4) 75%, rgba(20,28,55,0.6) 100%);
    box-shadow: 0 10px 40px rgba(20,30,55,0.20);
    top: 90px;
		  align-items: center;
    }

.contact-divider {
  width: 1px;
  height: 72px; /* 或設成 70~80px, 視需求 */
  background: #ccc;
  margin: 0 18px;
  opacity: 0.65;
}
@media (max-width: 900px) {
  .contact-overlay {
    flex-direction: column;
    gap: 24px;
  }
  .contact-divider {
    display: none;  /* RWD下自動隱藏 */
  }
}


    .contact-info-block {
      flex: 1 1 0;
      min-width: 230px;
      display: flex;
      flex-direction: column;
      gap: 0px;
      color: #fff;
    }
    .contact-title-en {
    font-size: 18px;
    font-weight: 600;
    color: #b6c7e5;
    letter-spacing: 1.2px;
    margin-left: 4px;
    }
    .contact-title-tw {
    font-size: 44px;
    font-weight: 600;
    line-height: 1.1;
    position: relative;
    margin-bottom: 8px;
    display: inline-block;
    letter-spacing: 1px;
    margin-top: -8px;
    }
    .contact-title-tw::after {
      content: '';
      display: block;
      width: 176px;
      height: 2px;
    background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
      margin-top: 10px;
    }.contact-phone-block {
  flex: 2 1 0;
  min-width: 340px;
  display: flex;
  align-items: center;
  gap: 16px;
  color: #fff;
  justify-content: center;
}
.contact-phone-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.phone-img {
    width: 40px;
    height: 40px;
    margin-top: 3px;
}

.mail-img {
    width: 28px;
    height: 28px;
}
.phone-code {
  font-size: 1.1rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.1;
}
.phone-number {
    font-size: 44px;
    font-weight: bold;
    color: #fff;
    line-height: 1.18;
    white-space: nowrap;
    margin-top: -8px;
}
.contact-phone-meta {
  font-size: 1.1rem;
  color: #b6c7e5;
  font-weight: 400;
  letter-spacing: 0.03em;
}
    .contact-btn-block {
      flex: 1 1 0;
      display: flex;
      justify-content: flex-end;
    }
    .contact-btn {
    display: flex;
    align-items: center;
    background: #0a45b4;
    color: #fff;
    font-size: 18px;
    padding-top: 12px;
    padding-right: 45px;
    padding-left: 45px;
    padding-bottom: 12px;
    border-radius: 30px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    gap: 14px;
    transition: background 0.18s;
    box-shadow: 0 4px 24px rgba(0,0,0,0.12);
    letter-spacing: 0.05em;
    outline: none;
    border: 0;
    }
    .contact-btn:hover {
      background: #204e9c;
    }

    @media (max-width: 900px) {
      .contact-overlay {
        flex-direction: column;
        gap: 28px;
        padding: 36px 12px 36px 12px;
        top: 0;
      }
      .contact-btn-block {
        justify-content: center;
        width: 100%;
      }
      .contact-btn {
        width: 100%;
        justify-content: center;
      }
      .contact-phone-block {
      justify-content: center;
        width: 100%;
        font-size: 18px;
		  
      }
		.footer-logo {
    height: 70px;
    margin-left: auto;
    margin-right: auto;
}
		
		.aboutus-main {
      max-width: 100%;
}
		
    }
     @media (max-width: 640px) {
      .contact-title-tw {
        font-size: 30px;
		 margin-top: -5px;
      }
      .contact-phone-number {
        font-size: 1.3rem;
      }
      .contact-overlay {
    padding-top: 50px;
    padding-right: 5vw;
    padding-left: 5vw;
    padding-bottom: 20px;
    border-radius: 12px;
      }
      .contact-btn {
        padding: 12px 16px;
        font-size: 1rem;
      }
		.contact-title-en {
        margin-left: 2px;
}
    }

    .news-section {
      margin-right: auto;
      margin-left: auto;
      margin-bottom: 0;
      padding-top: 0;
      padding-right: 32px;
      padding-left: 32px;
      display: flex;
      gap: 0;
      align-items: center;		
      max-width: 1280px;
    }
    .news-section .news-left {
      flex: 0 0 370px;
      padding: 44px 0 0 0;
      text-align: left;
      min-width: 250px;
    }
/* Large (桌機，992px ~ 1199px) */
@media (max-width: 1199.98px) {
  /* 桌機樣式 */
	 .news-section .news-left {
      flex: 0 0 300px;
    }
	.contact-overlay {
        gap: 15px;
}
	.contact-btn {
    
    padding-right: 25px;
    padding-left: 25px;
}
}


    .news-section .core-title {
    color: #ccc;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1.2px;
    margin-left: 4px;
    margin-bottom: -8px;
    }
    .news-section .zh-title {
      font-size: 44px;
      font-weight: 600;
      color: #08338e;
      margin-bottom: 24px;
      letter-spacing: 1px;
      line-height: 1.12;
    }

    /* 最新消息-了解更多按鈕 */
    .about-btn-inner {
      display: inline-flex;
      align-items: center;
      background: linear-gradient(90deg, #edc05f 0%, #cc9846 100%);
      color: #fff;
      border: none;
      border-radius: 30px;
      padding: 0 16px 0 36px;
      height: 54px;
      font-size: 18px;
      font-weight: 500;
      box-shadow: 0 4px 18px rgba(252,200,87,0.11);
      cursor: pointer;
      gap: 44px;
      min-width: 220px;
      transition: background .22s;
      margin-top: 44px;
    }
    .about-btn-inner:hover {
      background: linear-gradient(90deg, #a6a6a6 0%, #888888 100%);
    }
    .about-btn-text {
      color: #fff;
      letter-spacing: 0px;
      margin-right: 0;
      font-size: 18px;
      white-space: nowrap;
      transition: color .18s;
    }
    .about-btn-arrowwrap {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 22px;
      width: 90px;
      height: 35px;
      color: #cd9846;
      transition: background .2s;
      box-shadow: 0 2px 8px rgba(252,200,87,0.09);
    }
    .about-btn-arrowwrap svg {
      width: 30px;
      height: 30px;
      display: block;
      stroke-width: 1.7;
      fill: none;
    }

    .news-section .news-divider {
      width: 1px;
      background: #0087ce;
      margin: 0 40px 0 0;
      height: 60%;
      align-self: center;
      min-height: 300px;
      border-radius: 3px;
    }
    .news-section .news-right {
      flex: 1 1 0%;
      padding: 32px 0;
      display: flex;
      flex-direction: column;
      gap: 32px;
    }
    .news-list {
      display: flex;
      flex-direction: column;
      gap: 22px;
    }
    .news-list .news-item {
      background: transparent;
      border: none;
      display: flex;
      gap: 30px;
      font-size: 1.22rem;
      padding: 28px 38px;
      align-items: flex-start;
      transition: background 0.22s, box-shadow 0.23s, transform 0.22s;
      position: relative;
      z-index: 1;
    }
    .news-list .news-item.bg {
      background: #f5f9fd;
    }

    /* hover 效果：底色、陰影、文字顏色、浮起 */

    .news-list .news-item:hover {
    background: #eaf3fa !important;
    box-shadow: 0 4px 24px rgba(32,78,156,0.09);
    cursor: pointer;
    transform: translateY(-3px) scale(1.025);
    text-decoration: none!important;
    }
    .news-list .news-item:hover .news-text {
      color: #666;
		 text-decoration: none!important;
    }
    .news-list .news-item:hover .news-date {
      color: #0087ce;
      font-weight: bold;
		 text-decoration: none!important;
    }
    .news-date {
      flex-shrink: 0;
      color: #666666;
      font-size:15px;
      min-width: 110px;
      font-weight: 500;
      letter-spacing: 1px;
      margin-top: 2px;
      transition: color .18s;
    }
 .news-text  {
    color: #0087ce;
    line-height: 1.6;
    letter-spacing: 0.5px;
    word-break: break-all;
    transition: color .18s;
    font-size: 18px;
    }

.news-link {
  color: #0087ce;          /* 與新聞文字顏色一致 */
  text-decoration: none;   /* 移除底線 */
  transition: color .18s;
}

.news-link:hover {
  color: #666;          /* hover 深藍色 */
  text-decoration: none; 
}


.news-link-date {
  color: #666;          /* 與新聞文字顏色一致 */
  text-decoration: none;   /* 移除底線 */
  transition: color .18s;
}

.news-link-date:hover {
  color: #0087ce;           /* hover 深藍色 */
  text-decoration: none; 
}



    @media (max-width: 990px) {
      .news-section {
        flex-direction: column;
        padding: 0 2vw 44px;
        box-shadow: 0 3px 20px rgba(0,60,140,0.07);
      }
      .news-section .news-left {
    padding-top: 34px;
    text-align: center;
    margin-bottom: 14px;
    flex: 0 0 80px;
      }
      .news-section .news-divider {
        display: none;
      }
      .news-section .news-right {
        padding: 0;
      }
      .about-btn-inner {
        margin-top: 24px;
      }
    }
      @media (max-width: 640px) {
      .news-section {
        border-radius: 0 0 18px 18px;
        padding: 0 0vw 0px;
      }
      .news-section .zh-title {
        font-size: 30px;
        margin-bottom: 16px;
      }
	  .news-section .core-title {
      margin-bottom: -6px;
}
		  
      .news-list {
        gap: 14px;
      }
      .news-list .news-item,
      .news-list .news-item.bg {
        padding: 15px 14px;
        gap: 16px;
        font-size: 1.01rem;
      }
      .news-date {
        font-size: 1.01rem;
        min-width: 90px;
      }
      .about-btn-inner {
        min-width: 140px;
        height: 44px;
        font-size: 15px;
        padding: 0 8px 0 18px;
        gap: 20px;
      }
      .about-btn-arrowwrap {
        width: 44px;
        height: 27px;
        border-radius: 18px;
      }
      .about-btn-arrowwrap svg {
        width: 22px;
        height: 22px;
      }
    }


.header-title {
  font-size: 2rem;
  color: var(--main-blue);
  margin-bottom: 8px;
  font-weight: bold;
  letter-spacing: 2px;
}
.header-desc {
  color: var(--gray);
  font-size: 1rem;
  margin-bottom: 4px;
  letter-spacing: 1px;
}



    .products-section {
    margin: 0px;
    padding-top: 75px;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 50px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #f5f8fd;
    }

    /* ===== 上方標題區 ===== */
    .carousel-header {
      text-align: center;
      margin-bottom: 44px;
      margin-top: 0;
    }
    .carousel-header-label {
       color: #c1c1c1;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1.2px;
      margin-bottom: 0px;
    }
    .carousel-header-title-wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
      margin-bottom: 14px;
    }
    .carousel-header-underline {
      width: 150px;
      height: 8px;
      border-radius: 6px;
      background: linear-gradient(90deg, #1858a6 0%, #ffca5f 100%);
      margin: 0 auto;
      margin-top: 0.4em;
    }
    .carousel-header-desc {
      font-size: 18px;
      color: #666;
      line-height: 1.7;
      margin-top: 22px;
      margin-bottom: 0;
      font-weight: 400;
      max-width: 680px;
      margin-left: auto;
      margin-right: auto;
	  letter-spacing: 0.5px;
    }

    /* ===== 輪播卡片 ===== */
    .carousel-track {
      display: flex;
      gap: 36px;
      width: 100%;
      overflow: hidden;
      scroll-behavior: smooth;
    }
    .product-card {
    flex: 0 0 340px;
    background: #fff;
    border-radius: 30px;
    box-shadow: 0 6px 30px rgba(26,46,73,.07);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    transition: box-shadow .18s;
    min-width: 700px;
    max-width: 640px;
    margin-bottom: 40px;
    }
    .product-card img {
      width: 100%;
      aspect-ratio: 4/3;
      object-fit: cover;
      border-radius: 30px 30px 0 0;
      display: block;
    }
    .product-info {
      padding: 24px 24px 22px 24px;
    }
    .product-title {
      font-weight: 700;
      font-size:24px;
      color: #333;
      margin-bottom: 10px;
    }
    .product-desc {
      font-size: 18px;
      color: #666;
      line-height: 1.7; 
	  letter-spacing: 0.5px;
    }
    .carousel-arrow {
      position: absolute;
      top: 60%;
      transform: translateY(-50%);
      z-index: 2;
      background: #000;
      border: none;
      border-radius: 50%;
      box-shadow: 0 2px 10px rgba(50,80,140,0.08);
      width: 46px;
      height: 46px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      cursor: pointer;
      transition: background .14s, color .14s, box-shadow .17s;
    }
    .carousel-arrow svg {
      width: 28px; height: 28px;
      display: block;
    }
    .carousel-arrow.prev { left: 80px; }
    .carousel-arrow.next { right:80px; }
    .carousel-arrow:active { background: #f2f5fa; color: #08338e; }



   @media (max-width: 1199.98px) {
     .products-section {
    padding-top: 40px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 40px;
		 }
      .product-card { min-width: 420px; max-width: 420px; }
      .carousel-track { gap: 16px; }
      .carousel-header-title { font-size: 1.6rem; }
      .carousel-header-underline { width: 80px; height: 5px; }
    }
    @media (max-width: 800px) {
    
      .product-card { min-width: 78vw; max-width: 78vw; }
      .carousel-track { gap: 12px; }
      .carousel-header-title { font-size: 1.25rem; }
      .carousel-header-underline { width: 52px; height: 3px; }
    }
      @media (max-width: 640px) {
		
    
      .product-card { min-width: 92vw; max-width: 92vw; }
      .carousel-arrow { width: 38px; height: 38px; }
      .carousel-arrow svg { width: 18px; height: 18px; }
     
      .carousel-header-title { font-size: 1rem; }
      .carousel-header-underline { width: 36px; height: 2px; }
      .carousel-header-desc { font-size: 18px; }
		
    .carousel-arrow.prev { left: 10px; }
    .carousel-arrow.next { right:10px; }
		
.carousel-track {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}
.product-card {
  scroll-snap-align: start;
}
		.news-section .news-left {
    flex: 0 0 60px;
    padding: 44px 0 0 0;
    text-align: left;
    min-width: 0px;
}
    }
	  
	  .carousel-header-title {
  font-size: 44px;
     color: #08338e;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1.18;
  margin: 0;
  display: inline-block;
  position: relative;
}

.carousel-cowos {
  display: inline-block;
  position: relative;
}
.carousel-cowos-underline {
  display: block;
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
    z-index: 1;
}
}

/* RWD也要補： */
@media (max-width: 800px) {
  .carousel-header-title { font-size: 1.25rem; }
  .carousel-cowos-underline { height: 3px; bottom: -3px; }
}
  @media (max-width: 640px) {
  .carousel-header-title { font-size: 30px; }
  .carousel-cowos-underline { height: 2px; bottom: -2px; }
}

.trust-section {
  display: flex;
  align-items: stretch;
  background: var(--trust-blue);
  border-radius: var(--section-radius);
  width: 100%;
  max-width: 1400px;
  margin: 40px auto;
  min-height: 420px;
  overflow: hidden;
  box-sizing: border-box;
  box-shadow: 0 2px 18px rgba(0,0,0,0.07);
}

.trust-images {
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 38%;
  min-width: 290px;
  justify-content: center;
  align-items: stretch;
  padding: 48px 0 48px 48px;
  box-sizing: border-box;
}

.trust-images .img-main {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  /* 左上、左下直角，右上、右下30px圓角 */
  border-top-right-radius: var(--img-radius);
  border-bottom-right-radius: var(--img-radius);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  background: #eee;
  display: block;
}
.trust-images .img-sub {
  width: 88%;
  margin-left: auto;
  margin-right: 0;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--img-radius);
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
  background: #eee;
  display: block;
}

.trust-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  padding: 60px 60px 60px 40px;
}

.trust-title {
  font-size: 2.6rem;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 2px;
  margin-bottom: 22px;
}
.highlight-underline {
  display: inline-block;
  position: relative;
  padding-bottom: 7px;
}
.highlight-underline::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 7px;
  border-radius: 4px;
  background: linear-gradient(90deg, #ffc371 0%, #ff5f6d 90%);
  z-index: 1;
}

.trust-en {
  font-size: 1.18rem;
  font-weight: 600;
  margin-bottom: 22px;
  color: #b8d0ff;
  letter-spacing: 0.5px;
}
.trust-desc {
  font-size: 1.1rem;
  line-height: 2;
  color: #e7ecfa;
}

/* RWD */
@media (max-width: 1020px) {
  .trust-section {
    flex-direction: column;
    border-radius: 26px;
    min-height: unset;
    padding: 0;
  }
  .trust-images {
    flex-direction: row;
    gap: 14px;
    width: 100%;
    min-width: unset;
    padding: 24px 24px 0 24px;
  }
  .trust-images .img-main, .trust-images .img-sub {
    aspect-ratio: 16/11;
  }
  .trust-images .img-sub {
    width: 68%;
  }
  .trust-text {
    padding: 34px 22px 38px 22px;
  }
  .trust-title { font-size: 2rem; }
}

  @media (max-width: 640px) {
  .trust-section {
    border-radius: 14px;
    margin: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  }
  .trust-images {
    padding: 12px 8px 0 8px;
    gap: 8px;
  }
  .trust-text {
    padding: 18px 8px 24px 8px;
  }
  .trust-title {
    font-size: 1.25rem;
  }
  .trust-en {
    font-size: 0.92rem;
  }
  .trust-desc {
    font-size: 0.96rem;
  }
}




/* ----------- RWD ----------- */
@media (max-width: 900px) {
	
 
  .trust-img, .trust-text {
    flex: unset;
    width: 100%;
    max-width: unset;
    padding: 0;
  }
  .trust-img img {
    margin: 32px 0 0 0;
    max-width: 260px;
  }
  .trust-text {
    padding: 0px;
  }
  .news-inner {
    flex-direction: column;
    gap: 16px;
  }
  .footer-inner {
    flex-direction: column;
    gap: 20px;
  }
  .contact-inner {
    flex-direction: column;
    gap:60px;
  }
}

  @media (max-width: 640px) {
  .header-title { font-size: 1.23rem; }
  .trust-title { font-size: 1.23rem; }
  
  .footer { padding: 18px 0 0px 0; font-size: 0.88rem;}
	
}
.about-section {
    max-width: 1280px;
    margin: 60px auto;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    position: relative;
    min-height: 440px;
    background: #fff; 
    z-index: 1;
}

.about-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url(../images/index-about-bg.jpg) no-repeat center center;
    background-size: contain; /* 保持整張圖完整顯示 */
    background-repeat: no-repeat;
    background-position: right center;
    z-index: -1; /* 放到最底層 */
}

.about-section::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 80%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center right;
    opacity: 0.07;
    pointer-events: none;
    z-index: 1;
}


.about-content{
    margin-top: 45px;
    margin-right: 20px;
    margin-left: 50px;
    margin-bottom: 20px;
	}
.about-img {
  flex: 0 0 50%;
  min-width: 0;
  max-width: 52%;
  background: #222;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: stretch;

  border-radius: 30px;   /* 給外框圓角 */
  overflow: hidden;      /* 讓圖片跟著被裁切 */
}

.about-img img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 320px;
  object-fit: cover;
}


.about-label {
    color: #c1c1c1;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1.2px;
    margin-bottom: -8px;
    margin-left: 4px;
}

.about-title-wrap {
  display: flex;
  align-items: flex-end;
  gap:0em;
  font-size: 2.7rem;
  font-weight: 600;
  margin-bottom: 28px;
  line-height: 1.13;
}
.about-title-prefix {
  color: #08338e;
  font-size: 44px;
  letter-spacing: 1px;
}
.about-title-main {
  color:#08338e;
  position: relative;
  display: inline-block;
  font-size:44px;
  letter-spacing: 1px;
}
.about-title-underline {
  display: block;
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #ecbf5e 0%, #ce9a46 100%);
  z-index: 1;
}

.about-desc {
  color: #666;
  font-size: 18px;
  line-height: 2.1;
  margin: 0 0 44px 0;
	letter-spacing: 0.5px;
}

.about-btn-outer {
  margin-top: 18px;
}
.about-btn {
  display: inline-flex;
  align-items: center;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: inherit;
}
	  
    .about-btn-inner {
      display: inline-flex;
      align-items: center;
      background: linear-gradient(90deg, #edc05f 0%, #cc9846 100%);
      color: #fff;
      border: none;
      border-radius: 30px;
      padding: 0 16px 0 36px;
      height: 54px;
      font-size: 18px;
      font-weight: 500;
      box-shadow: 0 4px 18px rgba(252,200,87,0.11);
      cursor: pointer;
      gap: 44px;
      min-width: 220px;
      transition: background 0.18s;
		box-shadow: 0 4px 10px rgba(0,0,0,.1); transform:translateY(-1px); 
    }
    .about-btn-inner:hover {
      background: linear-gradient(90deg, #a6a6a6 0%, #888888 100%);
    }
    .about-btn-text {
      color: #fff;
      letter-spacing: 0px;
      margin-right: 0;
      font-size: 18px;
      white-space: nowrap;
      transition: color 0.18s;
    }
    .about-btn-arrowwrap {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 22px;
      width: 90px;
      height: 35px;
      color: #cd9846;
      transition: background .2s;
      box-shadow: 0 2px 8px rgba(252,200,87,0.09);
    }
    .about-btn-arrowwrap svg {
      width:30px;
      height: 30px;
      display: block;
      stroke-width: 1.7;
      fill: none;
    }
	  
/* RWD */
  @media (max-width: 640px) {
  .aboutus-section { padding: 0 7vw 36px; }
  .about-title-wrap { font-size: 1.38rem; margin-bottom: 16px;}
  .about-title-underline { height: 2px; bottom: -4px;}
  .about-btn-inner {  }
  .about-btn-arrowwrap { width: 27px; height: 27px; margin-left: 4px;}
 
}

@media (max-width: 400px) {
  .about-btn-inner {   }
}

/* RWD */
@media (max-width: 950px) {
  .about-section {
    flex-direction: column;
    min-height: unset;
  }
  .about-img {
    max-width: 100%;
  }
  .about-img img {
    border-radius: var(--card-radius) var(--card-radius) 0 0;
    min-height: 220px;
  }
}
  @media (max-width: 640px) {
  .about-section {
    margin: 0px;
    border-radius: 0;
  }
  .about-img img, .about-img {
    border-radius: 0;
  }
	
	  .about-content {
    margin-top: 30px!important;
    margin-right: 10px!important;
    margin-left: 10px!important;
    margin-bottom: 20px!important;
}
	  .carousel-header {
    margin-right: 10px!important;
    margin-left: 10px!important;
    text-align: left;
}
	  .carousel-header-title-wrap {
       align-items: flex-start; /* 文字靠左 */
}
}

 /* 網頁標頭選單 */


.main-header {
  position: fixed;
  top: 0; left: 0; width: 100vw;
  z-index: 999;
  background: rgba(20,30,55, 0.75);
  backdrop-filter: blur(6px);
  transition: background 0.2s;
  box-shadow: 0 4px 16px rgba(0,0,0,0.07);
}
  .main-header {
  left: 0;
  right: 0;
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
}
.nav-wrap {
  max-width: 1400px;
  height: var(--header-height);
  margin: 0 auto;
  display: flex; align-items: center;
  justify-content: space-between;
  padding: 0 28px;
}



/* ===== LOGO 區：SVG 100%高，無縫對齊 header ===== */
.logo {
  height: var(--header-height);
  display: flex;
  align-items: stretch;
}
.logo svg {
  height: 100%;
  width: auto;
  display: block;
}
.main-nav ul {
  display: flex;
  list-style: none;
  margin: 0; padding: 0;
}
.main-nav > ul > li {
  position: relative;
}
.main-nav > ul > li > a {
  display: block;
  padding: 0 30px;
  font-size: 18px;
  font-weight:500;
  color: #e7e7e7;
  line-height: var(--header-height);
  transition: color 0.15s;
  letter-spacing: 0.05em;
  text-decoration: none;
}
.main-nav > ul > li:hover > a,
.main-nav > ul > li:focus-within > a {
  color: #6dabb4;
}
.main-nav ul .submenu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0; min-width: 160px;
 background: rgba(24, 36, 57, 0.8);
  border-radius: 0 0 10px 10px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.11);
  padding: 12px 0;
  z-index: 10;
}
.main-nav > ul > li:hover > .submenu,
.main-nav > ul > li:focus-within > .submenu {
  display: block;
}
.main-nav ul .submenu li a {
  display: block;
  color: #e7e7e7;
  padding: 10px 28px 10px 20px;
  text-decoration: none;
  font-size: 1rem;
  white-space: nowrap;
}
.main-nav ul .submenu li a:hover {
  background: #eaf0fa;
  color: var(--main-blue);
}

/* ========== EN/JA 語言切換區塊 ========== */
.lang-switch {
    display: flex;
    align-items: center;
    gap: 0;
    background: rgba(24,41,62,0.7);
    border-radius: 0;
    padding-top: 0;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 0;
    min-width: 86px;
    height: var(--header-height);
    box-shadow: 0 1px 8px rgba(0,0,0,0.3);
    position: relative;
}
.lang-switch .globe {
    margin-right: 7px;
    display: block;
}
.lang-switch-img {
    width: 28px;
    height: 28px;
    margin-top: 3px;
}


.lang-switch a {
  color: #fff;
  font-size: 16px;
  opacity: 1;
  text-decoration: none;
  padding: 2px 13px;
  margin: 0 0 0 2px;
  transition: background 0.2s, color 0.2s;
  font-weight: 500;
  position: relative;
  z-index: 1;
  letter-spacing: 0.01em;
}
.lang-switch a:hover,
.lang-switch a.active {
    color: #6dabb4;
}

/* Hamburger mobile (動畫含 X) */
.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  gap: 5px;
  margin-left: 14px;
  width: 40px; height: 40px;
  position: relative;
  z-index: 103;
}
.nav-toggle span {
  display: block;
  width: 28px; height: 3px;
  background: #fff;
  border-radius: 2px;
  margin: 0;
  transition: all 0.32s cubic-bezier(.71,.3,.3,.85);
  position: relative;
}
.nav-toggle.open span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}
.nav-toggle.open span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0.6);
}
.nav-toggle.open span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);

}



/* 筆電 / 桌機 (992px ~ 1199px) */
@media (max-width: 1199.98px) {
  /* 大型裝置樣式 */
	.nav-wrap {
  padding: 0 0px;
}
	
  .logo {
    height: 100%;
    min-width: 340px;
	}
	
	.logo svg {
  height: 80%;
  width: auto;
  display: block;
}
	 .coop-img1 img {
  
    display: none;
}
	.main-nav > ul > li > a {
    display: block;
    padding: 0 20px!important;
	font-size: 17px!important;
}
	.about-img {
    margin-left: 20px!important;
    margin-right: 20px!important;
}
}


/* ========== RWD ========== */
@media (max-width: 900px) {
  .nav-wrap {
    padding-top: 0;
    padding-right:8px;
    padding-left: 0px;
    padding-bottom: 0;
    height: 58px;
  }
  .logo { height: 100%;  }
  .logo svg { height: 100%; }
  .main-nav ul {
    gap: 10px;
  }
  .main-nav > ul > li > a { padding: 0 11px; font-size: 1rem; line-height: 58px;}
	
.banner {
    margin-top: 54px;
}
.about-img {
    margin-left: 0px!important;
    margin-right: 0px!important;
}

}
@media (max-width: 900px) {
  :root { --header-height: 54px;}
  .main-header {
    backdrop-filter: blur(0);
	   background: rgba(20, 30, 55, 1);
  }
	.about-content {   
    margin-right: 50px;
    margin-left: 50px;
}
	.footer-info-block {
     flex: 0 0 0px;
    font-size: 16px!important;
    line-height: 2;
}
  .nav-wrap { height: 54px; }
  .logo { height:100%;   }
  .logo svg { height: 100%; }
  .main-nav {
    position: fixed;
    left: 0; top: var(--header-height);
    width: 100vw;
     background: rgba(24, 36, 57, 0.96);
  box-shadow: 0 4px 24px rgba(0,0,0,0.11);
    display: none;
    flex-direction: column;
    z-index: 102;
  }
  .main-nav.open { display: flex; }
  .main-nav ul {
    flex-direction: column;
    width: 100%;
  }
  .main-nav > ul > li {
    width: 100%;
  }
  .main-nav > ul > li > a {
    line-height: 1.7;
    padding-top: 14px!important;
    padding-right: 24px!important;
    padding-left: 24px!important;
    padding-bottom: 14px!important;
    color: #fff;
    border-bottom: 1px solid #374054;
    font-size: 1.09rem;
  }
  .main-nav ul .submenu {
    position: static;
    background: rgba(24, 36, 57, 0.7)!important;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    margin: 0;
  }
  .main-nav ul .submenu li a {
    padding: 13px 34px;
    font-size: 16px;
    color:#e7e7e7;
    border-bottom: 1px solid #374054;
  }
 .lang-switch {
    position: absolute;
    right: 58px;
    top: 0;
    gap: 11px;
    height: var(--header-height);
    padding-top: 0;
    padding-right:5px;
    padding-left: 5px;
    padding-bottom: 0;
    min-width: 70px;
    border-radius: 0;
	   background: none; 
  }
  .nav-toggle {
    display: flex;
  }
	.lang-switch a {
    padding-top: 2px;
    padding-right: 6px;
    padding-left: 6px;
    padding-bottom: 2px;
}
	
.lang-switch .globe {
    margin-right: 0px;
    display: none;
}
}

/* Banner */
.banner {
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 0; 
	display: block;
}

.banner img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}


.banner_m {
 
	display: none;
}

  @media (max-width: 640px) {

	
.banner_m {
    width: 100%;
    margin-top: 54px;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
    padding: 0;
    line-height: 0;
    display: block;
}

.banner_m img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}


.banner { 
	display: none;
}
}
