/**
 * 舊站品牌：右側固定捷徑 + 頁尾聯絡區（與現有 Bootstrap3 版型相容）
 */

/* ---- 頁首 Logo（舊站 image/logo.png） ---- */
.site-brand-logo {
  max-height: 66px;
  width: auto;
  display: block;
}

@media (max-width: 767px) {
  .site-brand-logo {
    max-height: 42px;
  }
}

/* ---- 右側固定：線上估價、Facebook、LINE、電話、回頂 ---- */
.eurotech-float-actions {
  position: fixed;
  right: 0;
  bottom: 28%;
  z-index: 10050;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 48px;
  box-shadow: -2px 2px 8px rgba(0, 0, 0, 0.15);
}

.eurotech-float-actions li {
  margin: 0;
  padding: 0;
}

.eurotech-float-actions a,
.eurotech-float-actions button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 0;
  text-decoration: none;
  color: #fff;
  padding: 0;
}

.eurotech-float-actions a:hover,
.eurotech-float-actions a:focus,
.eurotech-float-actions button:hover {
  color: #fff;
  opacity: 0.92;
}

.eurotech-float-actions .efb-quote {
  background: #c49a2c;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
}

.eurotech-float-actions .efb-quote-text {
  display: block;
  transform: scale(0.92);
}

.eurotech-float-actions .efb-line {
  background: #00b900;
}

.eurotech-float-actions .efb-facebook {
  background: #5b7dbf;
}

.eurotech-float-actions .efb-facebook svg {
  display: block;
}

.eurotech-float-actions .efb-line img {
  width: 28px;
  height: auto;
  display: block;
}

.eurotech-float-actions .efb-phone {
  background: #cf000e;
  font-size: 22px;
  line-height: 1;
}

/* 避免純炭灰（如 #333 / #2b2b2b），與導航列暖棕一致 */
.eurotech-float-actions .efb-top {
  background: #715b44;
  cursor: pointer;
  font-size: 20px;
}

@media (max-width: 767px) {
  .eurotech-float-actions {
    bottom: 56px;
    right: 6px;
    width: 44px;
  }

  .eurotech-float-actions a,
  .eurotech-float-actions button {
    width: 44px;
    height: 44px;
  }
}

/* ---- 線上估價表單 ---- */
.quote-form .quote-form-intro {
  margin: 0 0 18px;
  color: #666;
}

.quote-form .quote-option {
  display: inline-block;
  margin: 0 14px 10px 0;
  font-weight: normal;
  cursor: pointer;
}

.quote-form .quote-option input {
  margin-right: 4px;
  vertical-align: -2px;
}

.quote-form .captcha-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.quote-form .captcha-input {
  max-width: 160px;
}

.quote-form .captcha-image {
  cursor: pointer;
  border: 1px solid #ddd;
  border-radius: 3px;
  vertical-align: middle;
}

/* ---- 主導航：多欄目情境下壓縮間距，避免擠成兩行 ---- */
.main__menu {
  white-space: nowrap;
}

.main__menu > li {
  margin: 0 9px;
}

.main__menu > li > a {
  font-size: 13px;
  letter-spacing: 0.02em;
}

@media (min-width: 1200px) {
  .main__menu > li {
    margin: 0 12px;
  }
}

/* ---- 主導航下拉：避免 Bootstrap .dropdown 類名衝突導致子選單常駐顯示 ---- */
.main__menu > li.drop {
  position: relative;
}

.main__menu > li.drop > .main-menu-dropdown {
  position: absolute;
  left: 0;
  top: 100%;
  z-index: 10020;
  display: none;
  min-width: 180px;
  margin: 0;
  padding: 8px 0;
  list-style: none;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

.main__menu > li.drop:hover > .main-menu-dropdown,
.main__menu > li.drop:focus-within > .main-menu-dropdown {
  display: block;
}

.main__menu > li.drop > .main-menu-dropdown > li > a {
  display: block;
  padding: 9px 16px;
  color: #444;
  white-space: nowrap;
}

.main__menu > li.drop > .main-menu-dropdown > li > a:hover,
.main__menu > li.drop > .main-menu-dropdown > li > a:focus {
  color: #715b44;
  background: #f5efe7;
}

/* ---- 前台卡片：只在首頁與明確列表頁使用 flex，不再全局覆蓋舊版左右欄 ---- */
.htc__category__area .product__list,
.ftr__product__area .product__wrap,
.case-list-page,
.store-list,
.ht__blog__wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.htc__category__area .product__list > [class*="col-"],
.ftr__product__area .product__wrap > [class*="col-"],
.case-list-page > [class*="col-"],
.store-list > [class*="col-"],
.ht__blog__wrap > [class*="col-"] {
  float: none;
  display: flex;
  flex-direction: column;
}

.htc__category__area .product__list::before,
.htc__category__area .product__list::after,
.ftr__product__area .product__wrap::before,
.ftr__product__area .product__wrap::after,
.case-list-page::before,
.case-list-page::after,
.store-list::before,
.store-list::after,
.ht__blog__wrap::before,
.ht__blog__wrap::after {
  content: none;
}

.htc__category__area .product__list .category,
.ftr__product__area .product__wrap .category,
.case-list-page .product_img,
.store-card,
.ht__blog__wrap .blog {
  width: 100%;
}

.product_img .opacity_img,
.ht__cat__thumb img,
.blog__thumb img {
  width: 100%;
  object-fit: cover;
}

.product_img .opacity_img,
.ht__cat__thumb img {
  height: 155px;
}

.htc__category__area,
.ftr__product__area {
  position: relative;
  z-index: 1;
  clear: both;
}

.htc__category__area .htc__product__container,
.ftr__product__area .product__wrap {
  clear: both;
}

.htc__category__area .category,
.ftr__product__area .category {
  margin-bottom: 28px;
}

.htc__category__area .fr__product__inner h4,
.ftr__product__area .fr__product__inner h4 {
  min-height: 44px;
  line-height: 1.35;
  overflow: hidden;
}

.htc__good__sale {
  position: relative;
  z-index: 0;
  clear: both;
  overflow: hidden;
  padding-top: 70px;
  padding-bottom: 70px;
}

.htc__good__sale .row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.htc__good__sale .row::before,
.htc__good__sale .row::after {
  content: none;
}

.htc__good__sale [class*="col-"] {
  float: none;
}

.prize__inner,
.prize__thumb {
  position: relative;
}

.prize__thumb img {
  display: block;
  max-width: 100%;
  height: auto;
}

.legacy-two-column {
  clear: both;
  overflow: hidden;
}

.legacy-two-column > .row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.legacy-two-column > .row::before,
.legacy-two-column > .row::after {
  content: none;
}

.legacy-two-column .legacy-sidebar-col,
.legacy-two-column .legacy-content-col {
  float: none;
}

.legacy-two-column .list_box,
.legacy-two-column .contents,
.legacy-two-column .feedback {
  min-width: 0;
  overflow-wrap: break-word;
}

.legacy-two-column .left_h1,
.legacy-two-column .contents_title {
  line-height: 1.2;
  margin-top: 0;
  word-break: keep-all;
}

.legacy-two-column .contents img,
.legacy-two-column .product_img img {
  max-width: 100%;
  height: auto;
}

.product-detail-page .product-detail-summary {
  clear: both;
  margin-left: -15px;
  margin-right: -15px;
  overflow: hidden;
}

.product-detail-page .product-detail-summary::before,
.product-detail-page .product-detail-summary::after {
  display: table;
  content: " ";
}

.product-detail-page .product-detail-summary::after {
  clear: both;
}

.product-detail-page .showpic_box,
.product-detail-page .proinfo_box {
  position: relative;
  min-height: 1px;
}

.product-detail-page .showpic_flash,
.product-detail-page .bx-wrapper {
  max-width: 100% !important;
}

.product-detail-page .showpic_flash img,
.product-detail-page .showpic_box img {
  display: block;
  max-width: 100%;
  height: auto;
}

.product-detail-page .product_con,
.product-detail-page .point,
.product-detail-page .list_related {
  clear: both;
}

.product-detail-page .related_list {
  overflow: hidden;
}

@media (max-width: 991px) {
  .htc__category__area,
  .ftr__product__area,
  .htc__blog__area {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .htc__category__area .product__list,
  .ftr__product__area .product__wrap,
  .ht__blog__wrap {
    display: block;
    clear: both;
    overflow: hidden;
    position: static !important;
    height: auto !important;
    min-height: 0 !important;
    transform: none !important;
  }

  .htc__category__area .product__list > [class*="col-"],
  .ftr__product__area .product__wrap > [class*="col-"],
  .ht__blog__wrap > [class*="col-"] {
    display: block;
    float: none !important;
    width: 100% !important;
    max-width: 100%;
    clear: both;
    margin-bottom: 22px;
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
  }

  .htc__category__area .category,
  .ftr__product__area .category,
  .ht__blog__wrap .blog {
    display: block;
    width: 100%;
    margin-bottom: 0;
    overflow: hidden;
    background: #fff;
  }

  .htc__category__area .ht__cat__thumb,
  .ftr__product__area .ht__cat__thumb,
  .ht__blog__wrap .blog__thumb {
    display: block;
    width: 100%;
    overflow: hidden;
  }

  .htc__category__area .ht__cat__thumb img,
  .ftr__product__area .ht__cat__thumb img,
  .ht__blog__wrap .blog__thumb img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    object-fit: cover;
  }

  .htc__category__area .fr__product__inner,
  .ftr__product__area .fr__product__inner,
  .ht__blog__wrap .blog__details {
    position: static;
    display: block;
    clear: both;
    padding: 14px 10px 18px;
    min-height: 0;
    text-align: center;
  }

  .htc__category__area .fr__product__inner h4,
  .ftr__product__area .fr__product__inner h4,
  .ht__blog__wrap .blog__details h2 {
    min-height: 0;
    max-height: none;
    margin: 0 0 8px;
    font-size: 18px;
    line-height: 1.35;
    overflow: visible;
  }

  .htc__category__area .fr__pro__prize,
  .ftr__product__area .fr__pro__prize {
    margin: 0;
    padding: 0;
  }

  .htc__good__sale {
    clear: both;
    margin-top: 0;
    padding-top: 42px;
    padding-bottom: 42px;
    overflow: hidden;
  }

  .htc__good__sale .row {
    display: block;
  }

  .htc__good__sale [class*="col-"] {
    float: none !important;
    width: 100% !important;
    clear: both;
  }

  .htc__good__sale .pointer__tooltip,
  .htc__good__sale .banner__info {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .htc__category__area .product__list,
  .ftr__product__area .product__wrap,
  .case-list-page,
  .store-list,
  .ht__blog__wrap,
  .htc__good__sale .row,
  .legacy-two-column > .row {
    display: block;
  }

  .htc__category__area .product__list > [class*="col-"],
  .ftr__product__area .product__wrap > [class*="col-"],
  .case-list-page > [class*="col-"],
  .store-list > [class*="col-"],
  .ht__blog__wrap > [class*="col-"] {
    display: block;
    float: none;
    width: 100%;
  }

  .htc__good__sale {
    padding-top: 45px;
    padding-bottom: 45px;
  }
}

.fr__product__inner,
.product_img .product_title,
.product_img .product_desc {
  text-align: center;
}

.related_list {
  clear: both;
}

.page-data-card {
  min-height: 150px;
  margin-bottom: 20px;
  padding: 18px;
  border: 1px solid #e6e0d6;
  background: #fff;
  box-shadow: 0 2px 8px rgba(92, 72, 51, 0.06);
}

.page-data-card h3 {
  margin-top: 0;
  color: #715b44;
  font-size: 18px;
}

.store-list {
  display: flex;
  flex-wrap: wrap;
}

.store-list > [class*="col-"] {
  float: none;
  display: flex;
}

.store-card {
  width: 100%;
}

/* ---- 頁尾：聯絡區 + 版權整段同一卡其底；!important 蓋過舊快取／其它表內炭灰底 ---- */
.site-footer-merged {
  background-color: #89755d !important;
  background-image: none !important;
  margin-top: 24px;
  color: #dac4a8;
}

.site-footer-merged .eurotech-site-footer,
.site-footer-merged .eurotech-site-footer .container,
.site-footer-merged .eurotech-site-footer .footer-contact-row,
.site-footer-merged .eurotech-site-footer .footer-contact-row > [class*="col-"] {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.site-footer-merged > footer {
  margin-top: 0 !important;
  padding: 18px 12px 28px !important;
  text-align: center;
  font-size: 13px;
  line-height: 1.65;
  color: #dac4a8;
  background: transparent;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.site-footer-merged > footer .copyright a {
  color: #f5e6c8;
}

.site-footer-merged > footer .copyright a:hover,
.site-footer-merged > footer .copyright a:focus {
  color: #ffffff;
}

.eurotech-site-footer {
  color: #dac4a8;
  padding: 26px 0 10px;
  font-size: 14px;
  line-height: 1.65;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

/* 三欄聯絡區：桌面並列等高；左兩欄為一般地圖在上、文字在下（與右欄街景一致） */
@media (min-width: 768px) {
  .eurotech-site-footer .footer-contact-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .eurotech-site-footer .footer-contact-row > [class*="col-"] {
    float: none;
  }
}

@media (min-width: 992px) {
  .eurotech-site-footer .footer-contact-row > .col-md-4 {
    width: 33.33333333%;
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
    display: flex;
    flex-direction: column;
  }
}

.eurotech-site-footer h4 {
  color: #fffaf2;
  font-size: 16px;
  margin: 0 0 12px;
  border-left: 4px solid #cf000e;
  padding-left: 10px;
  font-weight: 600;
}

.eurotech-site-footer a {
  color: #f5d49a;
}

.eurotech-site-footer a:hover,
.eurotech-site-footer a:focus {
  color: #ffffff;
}

.eurotech-site-footer .footer-map {
  flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: 4px;
  height: 200px;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.22);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

.eurotech-site-footer .footer-col-address .footer-map {
  margin-bottom: 14px;
}

.eurotech-site-footer .footer-col-panorama .footer-map-streetview {
  margin-bottom: 14px;
}

.eurotech-site-footer .footer-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.eurotech-site-footer .footer-side-links {
  margin-top: 8px;
}

.eurotech-site-footer .footer-side-links a {
  color: #f5e6c8;
}

.eurotech-site-footer .footer-side-links a:hover,
.eurotech-site-footer .footer-side-links a:focus {
  color: #ffffff;
}

.eurotech-site-footer .footer-side-links img {
  width: 22px;
  height: auto;
  vertical-align: text-bottom;
  margin-right: 4px;
}

.eurotech-site-footer .muted {
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
}

.eurotech-site-footer .footer-contact-lines {
  margin: 0;
}

.eurotech-site-footer .footer-contact-line {
  margin: 0 0 8px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  line-height: 1.55;
}

.eurotech-site-footer .footer-contact-line:last-child {
  margin-bottom: 0;
}

.eurotech-site-footer .footer-contact-icon {
  flex-shrink: 0;
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
}

.eurotech-site-footer .footer-contact-muted-inline {
  font-size: inherit;
}

@media (max-width: 767px) {
  .eurotech-site-footer .footer-contact-row > [class*="col-"] {
    margin-bottom: 22px;
  }

  .eurotech-site-footer .footer-contact-row > [class*="col-"]:last-child {
    margin-bottom: 0;
  }
}

.eurotech-site-footer .footer-streetview-fallback {
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.45;
}

.eurotech-site-footer .footer-streetview-fallback a {
  color: rgba(255, 255, 255, 0.82);
  text-decoration: underline;
}

.eurotech-site-footer .footer-streetview-fallback a:hover,
.eurotech-site-footer .footer-streetview-fallback a:focus {
  color: #ffffff;
}

.eurotech-site-footer .footer-qr-row {
  margin-top: 4px;
  margin-left: -6px;
  margin-right: -6px;
}

.eurotech-site-footer .footer-qr-cell {
  text-align: center;
  padding-left: 6px;
  padding-right: 6px;
}

.eurotech-site-footer .footer-qr-img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 8px;
  border-radius: 4px;
  background: #fff;
  padding: 6px;
  box-sizing: border-box;
}

.eurotech-site-footer .footer-qr-caption {
  font-size: 12px;
  line-height: 1.45;
  color: #dac4a8;
  margin: 0;
}

.eurotech-site-footer .footer-qr-cell a {
  display: inline-block;
}

/* ---- PC：主選單與頂部搜尋字級（模板 style 769px 為 12px／13px） ---- */
@media screen and (min-width: 769px) {
  .navbar-default .navbar-nav > li > a {
    font-size: 15px !important;
  }

  .navbar-default .navbar-nav .nav_small > li > a {
    font-size: 14px !important;
  }

  header #topsearch .search_group input.form-control {
    font-size: 15px !important;
    min-height: 40px;
    height: auto !important;
    line-height: 1.35;
  }

  header #topsearch .search_group input.form-control::-webkit-input-placeholder {
    font-size: 15px;
  }

  header #topsearch .search_group input.form-control::-moz-placeholder {
    font-size: 15px;
  }

  header #topsearch .search_group input.form-control:-ms-input-placeholder {
    font-size: 15px;
  }
}

/* ---- 產品／案例列表縮圖：固定取景框比例，來源長寬不一時仍對齊（object-fit cover） ---- */
.product_list .product_img > a {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  margin-bottom: 10px;
  padding-right: 15px;
  box-sizing: border-box;
}

.product_list .product_img > a img.opacity_img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  margin: 0;
  padding: 0;
  max-width: none;
  max-height: none;
}

/* ---- 案例列表：卡片加寬、標題固定兩行 ---- */
.case-list-page .product_img {
  min-height: 300px;
}

.case-list-page .product_title {
  height: 42px;
  line-height: 21px;
  margin: 12px 0 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.case-list-page .product_title a {
  display: block;
}

/* ---- 旧站两栏统一布局：父模板控制列宽，侧栏 partial 不再自带栅格 ---- */
.legacy-two-column {
  margin-top: 22px;
  clear: both;
}

.legacy-two-column > .row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.legacy-two-column > .row::before,
.legacy-two-column > .row::after {
  content: none;
}

.legacy-two-column .legacy-sidebar-col,
.legacy-two-column .legacy-content-col {
  float: none !important;
  min-width: 0;
}

.legacy-two-column .legacy-sidebar-col {
  order: 1;
}

.legacy-two-column .legacy-content-col {
  order: 2;
}

.legacy-two-column .left_nav,
.legacy-two-column .left_news,
.legacy-two-column .contact_left {
  width: 100%;
  margin-bottom: 22px;
  overflow: hidden;
}

.legacy-two-column .left_h1 {
  margin: 0 0 12px;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: 0;
  word-break: keep-all;
}

.legacy-two-column .left_nav_ul,
.legacy-two-column .left_snav_ul,
.legacy-two-column .index_news,
.legacy-two-column .list_news {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
}

.legacy-two-column .left_nav_ul li,
.legacy-two-column .index_news li,
.legacy-two-column .list_news li {
  clear: both;
  min-width: 0;
  line-height: 1.65;
  overflow: hidden;
  word-break: break-word;
}

.legacy-two-column .left_nav_ul a,
.legacy-two-column .index_news a,
.legacy-two-column .list_news a {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.legacy-two-column .news_time {
  margin-left: 8px;
  color: #777;
  white-space: nowrap;
}

.legacy-two-column .list_box,
.legacy-two-column .contents,
.legacy-two-column .feedback,
.legacy-two-column .product_con {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: break-word;
}

.legacy-two-column .contents img,
.legacy-two-column .product_con img,
.legacy-two-column .list_box img {
  max-width: 100%;
  height: auto;
}

.legacy-card-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin-left: -15px;
  margin-right: -15px;
}

.legacy-card-grid::before,
.legacy-card-grid::after {
  content: none;
}

.legacy-card-grid > .product_img {
  float: none !important;
  display: flex;
  flex-direction: column;
  margin-bottom: 28px;
}

.product_list.legacy-card-grid .product_img > a {
  width: 100%;
  padding-right: 0;
}

.legacy-card-grid .product_title {
  min-height: 42px;
  margin: 10px 0 6px;
  line-height: 1.4;
  text-align: center;
}

.legacy-card-grid .product_desc {
  flex: 1 1 auto;
  min-height: 44px;
  margin-bottom: 0;
  line-height: 1.55;
  color: #666;
  text-align: center;
}

.quote-form .form-group {
  clear: both;
  margin-bottom: 16px;
}

.quote-form .control-label {
  white-space: normal;
  word-break: keep-all;
}

.quote-form .quote-option {
  line-height: 1.6;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .legacy-two-column .legacy-sidebar-col {
    width: 25%;
  }

  .legacy-two-column .legacy-content-col {
    width: 75%;
  }
}

@media (max-width: 991px) {
  .main__menu > li {
    margin: 0 6px;
  }

  .main__menu > li > a {
    font-size: 12px;
  }

  .legacy-two-column .left_h1 {
    font-size: 24px;
  }

  .quote-form .quote-option {
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .legacy-two-column {
    margin-top: 14px;
  }

  .legacy-two-column > .row {
    display: block;
  }

  .legacy-two-column .legacy-sidebar-col,
  .legacy-two-column .legacy-content-col {
    display: block;
    width: 100% !important;
    clear: both;
  }

  .legacy-two-column .legacy-sidebar-col {
    margin-bottom: 24px;
  }

  .legacy-two-column .left_h1 {
    font-size: 22px;
    line-height: 1.25;
  }

  .legacy-card-grid {
    display: block;
    margin-left: 0;
    margin-right: 0;
  }

  .legacy-card-grid > .product_img {
    display: block;
    width: 100% !important;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 24px;
  }

  .product_list.legacy-card-grid .product_img > a {
    aspect-ratio: 16 / 10;
  }

  .legacy-card-grid .product_title,
  .legacy-card-grid .product_desc {
    min-height: 0;
  }

  .legacy-two-column .news_time {
    display: inline-block;
    margin-left: 6px;
  }

  .quote-form.form-horizontal .control-label {
    text-align: left;
    margin-bottom: 8px;
  }

  .quote-form .quote-option {
    display: block;
    margin-right: 0;
  }
}

/* ---- 2026 brand system ---- */
:root { --brand-ink:#25231f; --brand-muted:#716b62; --brand-paper:#f8f6f1; --brand-surface:#fffdf9; --brand-line:#e8e1d6; --brand-wood:#80664d; --brand-accent:#b68b55; --brand-shadow:0 18px 50px rgba(49,39,28,.08); }
html { scroll-behavior:smooth; }
body { background:var(--brand-paper); color:var(--brand-ink); font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif; font-size:16px; line-height:1.8; }
a { color:var(--brand-wood); transition:color .2s ease,background-color .2s ease,transform .2s ease; }
a:hover,a:focus { color:var(--brand-ink); }
.container { max-width:1240px; }
.site-header { position:relative; z-index:1000; background:rgba(255,253,249,.96); box-shadow:0 1px 0 var(--brand-line); }
.site-header__notice { background:var(--brand-ink); color:#f8f4ec; font-size:12px; letter-spacing:.08em; }
.site-header__notice-inner,.site-header__main-inner { display:flex; align-items:center; justify-content:space-between; }
.site-header__notice-inner { min-height:34px; }
.site-header__notice-contact a { color:#e5c28f; margin-left:8px; }
.site-header__main { min-height:88px; }
.site-brand { display:inline-flex; align-items:center; min-width:180px; }
.site-brand img { display:block; max-width:170px; max-height:54px; width:auto; height:auto; }
.site-nav > ul { display:flex; align-items:center; gap:5px; margin:0; padding:0; list-style:none; white-space:nowrap; }
.site-nav > ul > li { flex:0 0 auto; }
.site-nav li { position:relative; }
.site-nav > ul > li > a { display:block; padding:29px 13px; color:var(--brand-ink); font-size:14px; letter-spacing:.05em; }
.site-nav > ul > li > a:hover,.site-nav > ul > li > a.is-active { color:var(--brand-wood); }
.site-nav > ul > li > a.is-active { box-shadow:inset 0 -3px var(--brand-accent); }
.site-nav__dropdown { position:absolute; top:calc(100% - 4px); left:0; display:none; min-width:190px; padding:8px; margin:0; list-style:none; background:var(--brand-surface); border:1px solid var(--brand-line); box-shadow:var(--brand-shadow); }
.site-nav li:hover > .site-nav__dropdown,.site-nav li:focus-within > .site-nav__dropdown { display:block; }
.site-nav__dropdown a { display:block; padding:7px 12px; color:var(--brand-ink); font-size:14px; }
.site-nav__dropdown a:hover { background:var(--brand-paper); }
.site-header__actions { display:flex; align-items:center; gap:12px; }
.site-search { display:flex; border-bottom:1px solid var(--brand-line); }
.site-search input { width:100px; padding:6px 2px; border:0; background:transparent; outline:0; font-size:13px; }
.site-search button { border:0; background:transparent; color:var(--brand-wood); font-size:20px; }
.site-header__quote,.site-button { display:inline-flex; align-items:center; justify-content:center; padding:10px 19px; border-radius:2px; background:var(--brand-wood); color:#fff; font-size:13px; letter-spacing:.06em; }
.site-header__quote:hover,.site-button:hover { background:var(--brand-ink); color:#fff; }
.site-menu-toggle,.site-mobile-nav { display:none; }
.slider__container { background:var(--brand-ink); }
.slider__fixed--height { height:clamp(300px,50vw,610px); min-height:0; padding:0; }
.slider__fixed--height img { filter:none; }
.section__title--2 { max-width:700px; margin:0 auto 40px; }
.section__title--2 .title__line { margin-bottom:13px; color:var(--brand-ink); font-size:clamp(28px,3vw,42px); letter-spacing:.08em; }
.section__title--2 p { color:var(--brand-muted); }
.htc__category__area,.ftr__product__area,.htc__blog__area { background:var(--brand-paper); }
.htc__category__area .product__list,.ftr__product__area .product__wrap,.htc__blog__area .ht__blog__wrap { display:flex; flex-wrap:wrap; align-items:stretch; }
.htc__category__area .product__list > [class*="col-"],.ftr__product__area .product__wrap > [class*="col-"],.htc__blog__area .ht__blog__wrap > [class*="col-"] { display:flex; margin-bottom:30px; }
.htc__category__area .category,.ftr__product__area .category,.ht__blog__wrap .blog { overflow:hidden; display:flex; flex:1 1 auto; flex-direction:column; width:100%; height:100%; border:1px solid var(--brand-line); background:var(--brand-surface); transition:transform .25s ease,box-shadow .25s ease; }
.htc__category__area .fr__product__inner,.ftr__product__area .fr__product__inner,.ht__blog__wrap .blog__details { display:flex; flex:1 1 auto; flex-direction:column; }
.htc__category__area .fr__pro__prize,.ftr__product__area .fr__pro__prize,.ht__blog__wrap .blog__btn { margin-top:auto; }
.htc__category__area .category:hover,.ftr__product__area .category:hover,.ht__blog__wrap .blog:hover { transform:translateY(-5px); box-shadow:var(--brand-shadow); }
.ht__cat__thumb img,.blog__thumb img { aspect-ratio:4 / 3; object-fit:cover; }
.fr__product__inner { padding:17px 19px 20px; }
.fr__product__inner h4 { min-height:2.8em; margin:0 0 8px; line-height:1.4; }
.fr__product__inner h4 a { color:var(--brand-ink); }
.fr__pro__prize { color:var(--brand-muted); font-size:12px; }
.htc__good__sale { background:#e9e1d5; }
.fr__prize__inner { padding:50px 20px; }
.fr__prize__inner h2 { font-size:clamp(28px,3vw,44px); line-height:1.3; }
.legacy-two-column { padding:58px 0 90px; }
.legacy-sidebar-col { display:none; }
.legacy-content-col { width:100%; float:none; }
.legacy-content-col .list_box { max-width:1080px; margin:0 auto; padding:0; background:transparent; }
.left_h1 { margin:0 0 12px; color:var(--brand-ink); font-size:clamp(30px,4vw,48px); line-height:1.25; letter-spacing:.05em; }
.left_h1::after { content:""; display:block; width:46px; height:3px; margin-top:18px; background:var(--brand-accent); }
.path_title { margin:22px 0 34px !important; color:var(--brand-muted); }
.product_list,.case-list-page { display:flex !important; flex-wrap:wrap; gap:24px 0; margin-top:30px; }
.product_list > .product_img { float:none; width:33.333%; padding:0 12px; }
.product_img > a { display:block; overflow:hidden; background:#eee8de; }
.product_img .opacity_img { height:auto; aspect-ratio:4 / 3; transition:transform .5s ease; }
.product_img:hover .opacity_img { transform:scale(1.04); }
.product_title { margin:15px 0 2px; font-size:18px; font-weight:600; }
.product_title a { color:var(--brand-ink); }
.product_desc { color:var(--brand-muted); font-size:13px; }
.page-data-card { height:100%; padding:23px; border:1px solid var(--brand-line); background:var(--brand-surface); }
.contents_title { font-size:clamp(24px,3vw,38px); }
.site-footer { background:var(--brand-ink); color:#d8d0c5; }
.site-footer__grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1.35fr; gap:50px; padding-top:65px; padding-bottom:58px; }
.site-footer h2 { margin:0 0 18px; color:#f5eee3; font-size:13px; letter-spacing:.14em; }
.site-footer a { display:block; margin:5px 0; color:#d8d0c5; font-size:14px; }
.site-footer a:hover { color:#e5c28f; }
.site-footer__brand img { max-width:180px; max-height:54px; margin-bottom:15px; filter:brightness(0) invert(1); }
.site-footer__brand p,.site-footer__contact p { margin:0 0 8px; color:#a99f92; font-size:13px; }
.site-footer__social { display:flex; gap:18px; margin-top:20px; }
.site-footer__social a { color:#e5c28f; }
.site-button--light { display:inline-flex !important; margin-top:16px !important; background:#e5c28f; color:var(--brand-ink) !important; }
.site-footer__bottom { border-top:1px solid rgba(255,255,255,.12); padding:17px 0; color:#92887b; font-size:12px; }
.site-footer__bottom .container { display:flex; justify-content:space-between; }
.site-footer__bottom a { display:inline; font-size:12px; }
.eurotech-float-actions { border-radius:4px 0 0 4px; overflow:hidden; box-shadow:0 8px 25px rgba(0,0,0,.15); }
.eurotech-float-actions .efb-quote { background:var(--brand-accent); }
.eurotech-float-actions .efb-top { background:var(--brand-wood); }
.quote-form { padding:30px; border:1px solid var(--brand-line); background:var(--brand-surface); box-shadow:var(--brand-shadow); }
.quote-form .form-group { padding:14px 0; border-bottom:1px solid var(--brand-line); }
.quote-form .control-label { color:var(--brand-ink); font-weight:600; }
.quote-form .form-control { height:44px; border:1px solid #d8d0c5; border-radius:2px; box-shadow:none; }
.quote-form textarea.form-control { height:auto; }
.quote-form .quote-option { padding:7px 12px; border:1px solid var(--brand-line); border-radius:2px; background:var(--brand-paper); }
.quote-form .quote-option:has(input:checked) { border-color:var(--brand-accent); background:#f5eadb; }
.quote-form .page-btn { border:0; background:var(--brand-wood); padding:12px 28px; }
.quote-progress { display:flex; gap:6px; margin-bottom:24px; }
.quote-progress span { flex:1; padding:8px 10px; border-bottom:2px solid var(--brand-line); color:var(--brand-muted); font-size:13px; text-align:center; }
.quote-progress span.is-current { border-color:var(--brand-accent); color:var(--brand-wood); font-weight:700; }

.page-intro { max-width:700px; margin:0 0 34px; color:var(--brand-muted); font-size:18px; }
.case-filters { display:flex; flex-wrap:wrap; gap:8px; }
.case-filters a { display:inline-block; padding:6px 14px; border:1px solid var(--brand-line); background:var(--brand-surface); }
.case-filters a:hover { border-color:var(--brand-accent); background:#f5eadb; }
.empty-state { width:100%; padding:28px; border:1px dashed var(--brand-line); color:var(--brand-muted); text-align:center; }
.page-cta { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:60px; padding:30px 34px; background:#e9e1d5; }
.page-cta h2 { margin:0 0 5px; font-size:24px; }
.page-cta p { margin:0; color:var(--brand-muted); }
.design-intro { display:flex; align-items:center; justify-content:space-between; gap:30px; max-width:900px; padding:25px 0 40px; }
.design-intro p { max-width:650px; margin:0; font-size:18px; }
.subsection-title { margin:55px 0 25px; font-size:28px; }
.process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.process-card { min-height:180px; padding:22px; border:1px solid var(--brand-line); background:var(--brand-surface); }
.process-card span { color:var(--brand-accent); font-size:13px; letter-spacing:.1em; }
.process-card h3 { margin:10px 0 8px; font-size:20px; }
.process-card p { margin:0; color:var(--brand-muted); font-size:14px; }
@media (max-width:767px) { .page-cta,.design-intro { display:block; } .page-cta .site-button,.design-intro .site-button { margin-top:18px; } .process-grid { grid-template-columns:1fr; } }

.site-eyebrow { margin:0 0 15px; color:#e5c28f; font-size:12px; letter-spacing:.18em; }
.content-hub-hero { padding:72px 0 58px; background:#e9e1d5; }
.content-hub-hero h1 { margin:5px 0 12px; font-size:clamp(38px,5vw,64px); line-height:1.15; letter-spacing:.06em; }
.content-hub-hero p { max-width:680px; margin:0; color:var(--brand-muted); font-size:17px; }
.content-hub-hero__row { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; }
.content-hub-search { display:flex; width:min(380px,100%); padding:5px; background:var(--brand-surface); border:1px solid var(--brand-line); }
.content-hub-search input { flex:1; min-width:0; padding:10px 13px; border:0; background:transparent; outline:0; }
.content-hub-search button { padding:10px 20px; border:0; background:var(--brand-wood); color:#fff; }
.content-hub { padding:45px 0 95px; }
.content-filter { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:38px; }
.content-filter a { padding:7px 16px; border:1px solid var(--brand-line); background:var(--brand-surface); color:var(--brand-muted); font-size:14px; }
.content-filter a:hover,.content-filter a.is-active { border-color:var(--brand-wood); background:var(--brand-wood); color:#fff; }
.content-search-summary { margin:-15px 0 30px; color:var(--brand-muted); }
.content-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.content-card { overflow:hidden; display:flex; flex-direction:column; height:100%; background:var(--brand-surface); border:1px solid var(--brand-line); transition:transform .25s ease,box-shadow .25s ease; }
.content-card:hover { transform:translateY(-5px); box-shadow:var(--brand-shadow); }
.content-card__media { position:relative; display:block; overflow:hidden; aspect-ratio:16 / 10; background:#e8e1d6; }
.content-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.content-card:hover .content-card__media img { transform:scale(1.04); }
.content-card__featured-label { position:absolute; left:16px; top:16px; padding:5px 10px; background:var(--brand-accent); color:#fff; font-size:11px; letter-spacing:.08em; }
.content-card__body { display:flex; flex:1 1 auto; flex-direction:column; padding:22px 23px 25px; }
.content-card__meta { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; color:var(--brand-muted); font-size:12px; letter-spacing:.04em; }
.content-card__meta span { color:var(--brand-wood); }
.content-card h2 { min-height:2.8em; margin:0 0 12px; font-size:20px; line-height:1.4; }
.content-card h2 a { color:var(--brand-ink); }
.content-card__body > p { min-height:5.4em; margin:0 0 18px; color:var(--brand-muted); font-size:14px; line-height:1.8; }
.content-card__more { display:inline-block; margin-top:auto; color:var(--brand-wood); font-size:13px; font-weight:600; }
.content-card--featured { grid-column:span 2; display:grid; grid-template-columns:1.2fr 1fr; }
.content-card--featured .content-card__media { aspect-ratio:auto; min-height:340px; }
.content-card--featured h2 { min-height:0; font-size:27px; }
.content-card--featured .content-card__body { display:flex; flex-direction:column; justify-content:center; padding:34px; }
.content-empty { grid-column:1 / -1; padding:75px 30px; border:1px dashed var(--brand-line); background:var(--brand-surface); text-align:center; }
.content-empty > span { color:var(--brand-accent); font-size:12px; letter-spacing:.2em; }
.content-empty h2 { margin:10px 0; font-size:28px; }
.content-empty p { margin-bottom:22px; color:var(--brand-muted); }
.content-pagination { margin-top:42px; text-align:center; }
.content-hub-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:75px; padding:40px 45px; background:var(--brand-ink); color:#fff; }
.content-hub-cta h2 { margin:3px 0 8px; color:#fff; font-size:28px; }
.content-hub-cta p:not(.site-eyebrow) { max-width:700px; margin:0; color:#bdb4a8; }
.content-hub-cta .site-button { flex:0 0 auto; background:var(--brand-accent); }
@media (max-width:991px) { .content-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .content-card--featured { grid-column:span 2; } }
@media (max-width:767px) { .content-hub-hero { padding:45px 0 38px; } .content-hub-hero__row,.content-hub-cta { display:block; } .content-hub-search { margin-top:25px; } .content-card-grid { grid-template-columns:1fr; } .content-card--featured { grid-column:auto; display:block; } .content-card--featured .content-card__media { min-height:0; aspect-ratio:16 / 10; } .content-card--featured .content-card__body { padding:22px 23px 25px; } .content-hub-cta { padding:30px 24px; } .content-hub-cta .site-button { margin-top:22px; } }

@media (min-width:992px) and (max-width:1199px) {
  .site-header__main-inner { gap:10px; }
  .site-brand { min-width:135px; }
  .site-brand img { max-width:135px; }
  .site-nav { flex:1 1 auto; min-width:0; }
  .site-nav > ul { justify-content:center; gap:0; }
  .site-nav > ul > li > a { padding:29px 7px; font-size:12px; letter-spacing:0; }
  .site-search { display:none; }
  .site-header__actions { flex:0 0 auto; }
  .site-header__quote { padding:10px 13px; font-size:12px; white-space:nowrap; }
}
@media (max-width:991px) {
  .site-header__notice-contact,.site-nav,.site-header__actions { display:none; }
  .site-header__notice-inner { justify-content:center; }
  .site-header__main { min-height:70px; }
  .site-header__main-inner { padding:0 18px; }
  .site-brand { min-width:135px; }
  .site-brand img { max-width:135px; }
  .site-menu-toggle { display:block; padding:8px; border:0; background:transparent; color:var(--brand-ink); font-size:24px; }
  .site-mobile-nav { display:block; padding:12px 0 22px; border-top:1px solid var(--brand-line); background:var(--brand-surface); }
  .site-mobile-nav[hidden] { display:none; }
  .site-mobile-nav a { display:block; padding:8px 0; color:var(--brand-ink); }
  .site-mobile-nav__item { border-bottom:1px solid var(--brand-line); }
  .site-mobile-nav__children { margin:-2px 0 8px; padding:0 0 0 16px; list-style:none; border-left:2px solid var(--brand-line); }
  .site-mobile-nav__children a { padding:5px 0; color:var(--brand-muted); font-size:13px; }
  .site-mobile-nav__item > a.is-active { color:var(--brand-wood); font-weight:700; }
  .site-mobile-nav a.is-active { color:var(--brand-wood); font-weight:700; }
  .site-mobile-nav__quote { margin-top:8px; padding:10px 15px !important; background:var(--brand-wood); color:#fff !important; text-align:center; }
}
@media (max-width:767px) { .slider__fixed--height { height:72vw; min-height:0; max-height:360px; padding:0; } .legacy-two-column { padding:38px 15px 65px; } .product_list > .product_img,.case-list-page > .product_img { width:100%; padding:0; } .quote-form { padding:18px 15px; } .quote-form .form-group { margin-left:0; margin-right:0; } .site-footer__grid { grid-template-columns:1fr 1fr; gap:30px 20px; padding:42px 18px; } .site-footer__brand,.site-footer__contact { grid-column:1 / -1; } .site-footer__bottom .container { padding:0 18px; } }
