/*
Theme Name: GeneratePress Child
Template: generatepress
*/

/* ========== header 主選單 ========== */
/* header 選單間距 */
  .main-navigation .main-nav > ul > li > a {
    padding: 0 20px 0 0;
  }

/* header 選單icon間距 */
.menu-item-has-children .dropdown-menu-toggle {
    padding-left: 4px;
}

/* header 內距 */
.inside-header {
    padding: 10px;
}
@media (max-width: 768px) {
    .inside-header {
        padding: 0 20px;
    }
}
.main-navigation .main-nav ul li a {
    line-height: 50px;
}

/* 主選單右側加入自訂 icon 小人頭 購物 商品搜尋 */
.main-navigation .custom-menu-icon {
    display: flex;
    align-items: center;
    position: relative;
}

.main-navigation .custom-menu-icon a,
.main-navigation .header-search-details summary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    margin: 0;
    height: 100%;
    line-height: 1;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    list-style: none;
    background: transparent;
    border: 0;
}

.main-navigation .header-search-details {
    position: relative;
    display: flex;
    align-items: center;
}

.main-navigation .header-search-details summary::-webkit-details-marker {
    display: none;
}

.main-navigation .header-search-details summary::marker {
    display: none;
}

.main-navigation .custom-menu-icon svg,
.main-navigation .header-search-details summary svg {
    display: block;
    width: 20px;
    height: 20px;
}

.main-navigation .custom-menu-icon a:hover,
.main-navigation .header-search-details summary:hover {
    color: #ffe566;
}

.main-navigation .header-product-search-form {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    width: 320px;
    max-width: calc(100vw - 32px);
    padding: 10px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0,0,0,.12);
    border-radius: 8px;
    z-index: 9999;
    box-sizing: border-box;
}

.main-navigation .header-product-search-form input[type="search"] {
    flex: 1;
    min-width: 0;
    height: 40px;
    padding: 0 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 14px;
    box-sizing: border-box;
}

.main-navigation .header-product-search-form button[type="submit"] {
    height: 40px;
    padding: 0 14px;
    border: 0;
    border-radius: 6px;
    background: #4a587a;
    color: #fff;
    cursor: pointer;
    white-space: nowrap;
}

@media (max-width: 768px) {
    .main-navigation .header-product-search-form {
        position: fixed;
        top: 88px;
        left: 16px;
        right: 16px;
        width: auto;
        max-width: none;
    }
}

/* 下拉選單容器 */
.main-navigation .main-nav ul ul {
    border-radius: 8px;
    padding-top: 14px;
    padding-bottom: 14px;
}

/* 小三角形 */
.main-navigation .main-nav > ul > li > ul::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 24px;
    border-width: 0 8px 8px 8px;
    border-style: solid;
    border-color: transparent transparent #4a587a transparent;
}

/* 漢堡選單 icon */
button.menu-toggle .gp-icon.icon-menu-bars {
    font-size: 28px; /* svg 用 1em，所以改 font-size 控制大小 */
}
button.menu-toggle .gp-icon.icon-menu-bars {
    position: relative;
    top: 4px; /* 往下移*/
}

/* ========== 百可 全站通用樣式 ========== */
html, body, button, input, select, textarea{
  font-family:-apple-system,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;
}

html, body{
  margin:0;
  padding:0;
  overflow-x:hidden;
}

.bk-page,
.bk-page *{
  box-sizing:border-box;
}

.bk-page{
  color:#222;
  line-height:1.7;
  width:100%;
}

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

/* Section 基礎 */
.bk-section{
  padding:80px 24px;
  max-width:1280px;
  margin:0 auto;
}

.bk-section-alt,
.bk-section-gray{
  padding:80px 24px;
}

/* 滿版背景區塊 */
.bk-fullbleed{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.bk-section-alt{
  background:#fafafa;
}

.bk-section-gray{
  background:#f5f5f5;
}

.bk-inner{
  max-width:1280px;
  margin:0 auto;
}

.bk-inner-narrow{
  max-width:900px;
  margin:0 auto;
  text-align:center;
}

/* 標題系統 */
.bk-eyebrow{
  text-align:center;
  color:#c9a227;
  font-size:14px;
  letter-spacing:6px;
  text-transform:uppercase;
  margin-bottom:8px;
  font-weight:500;
}

.bk-h2{
  text-align:center;
  font-size:clamp(24px,3vw,36px);
  margin:0 0 14px;
  color:#1a1a1a;
  letter-spacing:2px;
}

.bk-lead{
  text-align:center;
  max-width:760px;
  margin:0 auto 50px;
  color:#555;
  font-size:26px;
  line-height:1.6;
}

.bk-text{
  font-size:18px;
  color:#444;
  margin:0 auto;
  max-width:720px;
  line-height:1.9;
}

.bk-highlight{
  display:inline-block;
  background:#fff4d1;
  padding:3px 10px;
  border-radius:4px;
  color:#8a6500;
  font-weight:500;
  margin:6px 0;
}

/* Hero 滿版 */
.bk-hero{
  position:relative;
  min-height:480px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  color:#fff;
  background:#1a1a1a center/cover no-repeat;
  padding:80px 24px;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.bk-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.35) 50%,rgba(0,0,0,.65));
}

.bk-hero-inner{
  position:relative;
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding-left:20px;
  padding-right:20px;
}

.bk-hero h1{
  font-size:clamp(40px,4.5vw,52px);
  font-weight:500;
  margin:0 0 8px;
  letter-spacing:2px;
  text-shadow:0 2px 12px rgba(0,0,0,.5);
}

.bk-hero p{
  font-size:clamp(16px,1.8vw,20px);
  margin:0 0 12px;
  opacity:.95;
  letter-spacing:1px;
}

.bk-hero .bk-slogan{
  font-size:clamp(18px,2vw,24px);
  font-weight:500;
  margin:24px 0 12px;
  letter-spacing:8px;
  color:#ffd54a;
}

/* 卡片元件 */
.bk-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px;
  margin-top:20px;
}

.bk-card{
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 4px 20px rgba(0,0,0,.06);
  transition:transform .3s, box-shadow .3s;
  min-width:0;
}

.bk-card:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}

.bk-card-img{
  aspect-ratio:4/3;
  overflow:hidden;
  background:#eee;
}

.bk-card-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}

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

.bk-card-body{
  padding:24px;
}

.bk-card h3{
  margin:0 0 12px;
  font-size:24px;
  color:#1a1a1a;
  letter-spacing:1px;
}

.bk-card p{
  margin:0;
  color:#555;
  font-size:18px;
  line-height:1.75;
}

/* 合作夥伴 */
.bk-partners-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:32px;
  margin-top:40px;
}

.bk-partner-group{
  background:#fff;
  border-radius:10px;
  padding:32px 30px;
  box-shadow:0 2px 12px rgba(0,0,0,.04);
  border-top:4px solid #c9a227;
  min-width:0;
}

.bk-partner-group h4{
  margin:0 0 20px;
  font-size:22px;
  color:#1a1a1a;
  letter-spacing:2px;
  padding-bottom:12px;
  border-bottom:1px solid #eee;
}

.bk-partner-group ul{
  list-style:none;
  padding:0;
  margin:0;
  columns:2;
  column-gap:24px;
}

.bk-partner-group li{
  position:relative;
  padding:6px 0 6px 24px;
  color:#444;
  font-size:18px;
  break-inside:avoid;
  overflow-wrap:break-word;
  word-break:break-word;
}

.bk-partner-group li::before{
  content:"▪";
  position:absolute;
  left:0;
  top:6px;
  color:#c9a227;
  font-size:18px;
}

.bk-partner-full{
  grid-column:1 / -1;
}

/* RWD */
@media(max-width:900px){
  .bk-cards{
    grid-template-columns:1fr;
    max-width:480px;
    margin:20px auto 0;
  }

  .bk-partners-grid{
    grid-template-columns:1fr;
  }

  .bk-partner-group ul{
    columns:1;
  }

  .bk-section,
  .bk-section-alt,
  .bk-section-gray{
    padding:60px 20px;
  }

  .bk-hero{
    min-height:440px;
    padding:100px 20px;
  }

  .bk-hero-inner{
    padding-left:12px;
    padding-right:12px;
  }

  .bk-lead{
    font-size:20px;
  }

  .bk-card h3{
    font-size:22px;
  }

  .bk-card p,
  .bk-partner-group li,
  .bk-text{
    font-size:17px;
  }
}

/* ========== 聯絡我們頁專用 ========== */

/* 聯絡資訊滿版背景區 */
.bk-contact-section{
  background:#fafafa;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:80px 24px;
}

.bk-contact-section .bk-inner{
  max-width:1280px;
  margin:0 auto;
}

.bk-contact-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:32px;
  margin-top:40px;
}

.bk-tax{
  color:#888;
  font-size:14px;
  margin:-12px 0 22px;
  letter-spacing:1px;
}

.bk-info-list{
  display:flex;
  flex-direction:column;
}

.bk-info-list .bk-row{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:12px 0;
  border-bottom:1px dashed #eee;
  font-size:17px;
  color:#333;
  line-height:1.6;
}

.bk-info-list .bk-row:last-child{
  border-bottom:none;
}

.bk-info-list .bk-label{
  flex-shrink:0;
  width:60px;
  color:#c9a227;
  font-weight:500;
  letter-spacing:2px;
}

.bk-info-list a{
  color:#333;
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .2s;
}

.bk-info-list a:hover{
  border-bottom-color:#c9a227;
}

.bk-email-text{
  font-size:15px;
  color:#333;
  letter-spacing:.2px;
  word-break:break-word;
}

.bk-hours-list .bk-row{
  display:block;
  padding:14px 0;
  border-bottom:1px dashed #eee;
  font-size:17px;
  color:#333;
}

.bk-hours-list .bk-row:last-child{
  border-bottom:none;
}

.bk-hours-list strong{
  display:block;
  color:#1a1a1a;
  margin-bottom:4px;
  letter-spacing:1px;
}

.bk-hours-list .bk-note{
  color:#888;
  font-size:15px;
  margin-left:8px;
}

/* 代客尋貨 */
.bk-finder-q{
  display:flex;
  justify-content:center;
  gap:40px;
  flex-wrap:wrap;
  margin:30px 0 40px;
  padding:0;
  list-style:none;
}

.bk-finder-q li{
  position:relative;
  padding:18px 28px;
  background:#fff;
  border-radius:8px;
  box-shadow:0 2px 12px rgba(0,0,0,.05);
  color:#555;
  font-size:17px;
  max-width:360px;
}

.bk-finder-q li::before{
  content:"?";
  position:absolute;
  top:-12px;
  left:-12px;
  width:32px;
  height:32px;
  background:#c9a227;
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:600;
  font-size:18px;
}

.bk-finder-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin:24px 0 30px;
}

.bk-finder-tags span{
  background:#fff4d1;
  color:#8a6500;
  padding:8px 18px;
  border-radius:20px;
  font-size:15px;
  font-weight:500;
}

.bk-finder-cta{
  display:inline-block;
  background:#c9a227;
  color:#fff;
  padding:14px 40px;
  border-radius:30px;
  text-decoration:none;
  font-size:18px;
  letter-spacing:2px;
  margin-top:10px;
  transition:background .2s,transform .2s;
}

.bk-finder-cta:hover{
  background:#a8851e;
  transform:translateY(-2px);
}

@media(max-width:900px){
  .bk-contact-section{
    padding:60px 20px;
  }

  .bk-contact-grid{
    grid-template-columns:1fr;
  }

  .bk-finder-q{
    gap:24px;
  }

  .bk-finder-q li{
    max-width:100%;
  }
}

/* ========== 特價標籤 正圓形 文字調小 位置 ========== */
.woocommerce span.onsale{width:3.236em;height:3.236em;padding:0;font-size:1em;font-weight:500;position:absolute;text-align:center;line-height:3.236;border-radius:50%;background-color:#958e09;color:#fff}

.woocommerce span.onsale {
    font-size: 14px;
    font-weight: 400;
}

.woocommerce ul.products li.product .onsale {
    margin: .5em .5em 0 0;
}

.woocommerce span.onsale {
    top: 1em;
    left: 1em;
}

/* 商品標題 */
.product_title.entry-title {
    font-size: 26px;
}

/* ========== 我的帳號頁 修正版 ========== */
.woocommerce-account .entry-content > .woocommerce,
.woocommerce-account .site-main .woocommerce,
.woocommerce-account .woocommerce {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 32px;
  box-sizing: border-box;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after,
.woocommerce-account .woocommerce-MyAccount-navigation::before,
.woocommerce-account .woocommerce-MyAccount-navigation::after,
.woocommerce-account .woocommerce-MyAccount-content::before,
.woocommerce-account .woocommerce-MyAccount-content::after {
  display: none !important;
  content: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  flex: 0 0 280px;
  width: 280px !important;
  float: none !important;
  margin: 0 !important;
  padding: 20px;
  background: #ffffff;
  border: 1px solid #e9eef5;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(18, 38, 63, 0.06);
  position: sticky;
  top: 30px;
  box-sizing: border-box;
}

.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 1 auto;
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 36px;
  background: #ffffff;
  border: 1px solid #e9eef5;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(18, 38, 63, 0.06);
  box-sizing: border-box;
  min-width: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  margin: 0 0 12px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
  margin-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 16px 18px;
  border-radius: 8px;
  background: #eee;
  color: #2b3448;
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  transition: all 0.25s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  color: #ffd54a;
  background: #2b3448;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: #4a587a;
  color: #ffd54a;
}

.woocommerce-account .woocommerce-MyAccount-content p:first-child {
  margin-top: 0;
  font-size: 18px;
  line-height: 1.8;
  color: #111827;
}

.woocommerce-account .woocommerce-MyAccount-content a {
  color: #2563eb;
  font-weight: 500;
  text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
  text-decoration: underline;
}

@media (max-width: 991px) {
  .woocommerce-account .entry-content > .woocommerce,
  .woocommerce-account .site-main .woocommerce,
  .woocommerce-account .woocommerce {
    flex-direction: column;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    flex: none;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    position: static;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    padding: 24px;
  }
}

/* ========== 移除 商品頁 麵包屑最後一項 ========== */
.woocommerce .woocommerce-breadcrumb {
  font-size: 0;
}
/* 商品頁上移 */
.single-product .woocommerce-breadcrumb {
  margin: -28px 0 16px;
}

/* 只把連結文字顯示回來 */
.woocommerce .woocommerce-breadcrumb a {
  font-size: 16px;
  color: #767676;
  text-decoration: none;
}

/* 每個連結前面自動補上 / 分隔符 第一個連結不加 */
.woocommerce .woocommerce-breadcrumb a + a::before {
  content: " > ";
  font-size: 16px;
  color: #767676;
}

/* hover 樣式，可留可刪 */
.woocommerce .woocommerce-breadcrumb a:hover {
  color: #111;
}

/* 商品頁「描述」分頁內的 H2 標題拿掉 */
.woocommerce-Tabs-panel--description h2 {
  display: none;
}

/* 商品頁縮圖區外層
   用 flex 排版，讓縮圖可以整齊換行 */
.woocommerce div.product div.images .flex-control-thumbs {
  display: flex;
  flex-wrap: wrap;
  margin-left: -4px;
  margin-right: -4px;
}

/* 每一張縮圖外層 li */
.woocommerce div.product div.images .flex-control-thumbs li {
  width: 25%;
  padding-left: 4px;
  padding-right: 4px;

  /* 上下縮圖間距 */
  margin-bottom: 8px;

  /* 避免 padding 撐爆寬度 */
  box-sizing: border-box;
}

/* 縮圖圖片本身 */
.woocommerce div.product div.images .flex-control-thumbs li img {
  display: block;
  width: 100%;

  /* 圖片圓角 */
  border-radius: 8px;

  /* 保險用，避免某些主題裁切異常 */
  overflow: hidden;
}

/* 主商品大圖下間距 */
.woocommerce div.product div.images .flex-viewport {
  margin-bottom: 16px;
}

/* 主商品大圖圖片圓角 */
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
  display: block;
  width: 100%;
  border-radius: 8px;
}

/* 數量輸入框外層 */
.woocommerce div.product form.cart div.quantity {
  margin-bottom: 12px;
}
.woocommerce div.product form.cart div.quantity input.qty {
  width: 100%;
}

/* 數量外框 */
.woocommerce .custom-qty-wrap {
  display: inline-flex;
  align-items: center;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  height: 48px;
}

/* 加減按鈕 */
.woocommerce .custom-qty-wrap .qty-minus,
.woocommerce .custom-qty-wrap .qty-plus {
  width: 44px;
  height: 52px;
  border: 0;
  background: #f8fafc;
  color: #2b3448;
  font-size: 22px;
  font-weight: 700;
  cursor: pointer;
  line-height: 1;
}

/* hover */
.woocommerce .custom-qty-wrap .qty-minus:hover,
.woocommerce .custom-qty-wrap .qty-plus:hover {
  background: #eef2f7;
}

/* 中間數字框 */
.woocommerce .custom-qty-wrap input.qty {
  width: 64px;
  height: 52px;
  border: 0;
  border-left: 1px solid #e5e7eb;
  border-right: 1px solid #e5e7eb;
  border-radius: 0;
  text-align: center;
  font-size: 18px;
  box-shadow: none;
  padding: 0;
  background: #fff;
}

/* focus 狀態 */
.woocommerce .custom-qty-wrap input.qty:focus {
  outline: none;
  box-shadow: none;
}

/* 隱藏 number 原生箭頭 */
.woocommerce .custom-qty-wrap input.qty::-webkit-outer-spin-button,
.woocommerce .custom-qty-wrap input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.woocommerce .custom-qty-wrap input.qty[type="number"] {
  -moz-appearance: textfield;
}

/* 加入購物車按鈕 用深灰藍底 + 黃色文字
   比純黑更有質感，也比較有照明品牌的明亮感 */
.woocommerce div.product form.cart .single_add_to_cart_button {
  height: 48px;
  padding: 0 24px;
  border: none;
  border-radius: 8px;
  font-size: 18px;
  font-weight: 500;
  transition: all 0.2s ease;
  box-shadow: none;
}

/* 商品圖片圓角 */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
  border-radius: 8px;
  border: 1px solid #ddd;
}

/* 前往結帳 下單購買 按鈕 */
button#place_order.button.alt,
a.checkout-button.button.alt.wc-forward {
    background: #2b3448;
    color: #ffe566;
    font-size: 1em;
    font-weight: 500;
    letter-spacing: 0.05em;
}

button#place_order.button.alt:hover,
a.checkout-button.button.alt.wc-forward:hover {
  background: #4a587a;
  color: #ffd54a;
}

/* 商品名稱：固定兩行，超出隱藏 */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product a .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product a .woocommerce-loop-product__title {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  /* ❌ 不要 height，不要 min-height，讓 line-clamp 自己管 */
  padding: 0 !important; /* ← 這行是關鍵，清掉 h2 原本的 .5em 0 */
  margin-bottom: 10px;
}

/* 按鈕樣式不變 */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.woocommerce a.button.add_to_cart_button,
.woocommerce button.button,
.woocommerce input.button {
  width: 100%;
  display: block;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  background: #2b3448;
  color: #ffe566;
  border: none;
  border-radius: 4px;
  padding: 12px 16px;
  transition: all 0.2s ease;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: #4a587a;
  color: #ffd54a;
}

/* ========== 結帳頁 外層：兩欄 Grid ========== */
form.checkout.woocommerce-checkout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  align-items: start;
}

/* 帳單+運送資訊 → 左欄，垂直堆疊 */
form.checkout.woocommerce-checkout #customer_details {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100% !important;
  float: none !important;
}

form.checkout.woocommerce-checkout #customer_details .col-1,
form.checkout.woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
  float: none !important;
}

/* 您的訂單 → 右欄 */
form.checkout.woocommerce-checkout #order_review {
  grid-column: 2;
  grid-row: 1;
  width: 100% !important;
  float: none !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  font-weight: 500 !important;
}
h3#order_review_heading {
  grid-column: 2;
  grid-row: 1;
}

form.checkout.woocommerce-checkout #order_review {
  grid-row: 1; /* 確保跟 h3 同 row */
  margin-top: 2.5rem; /* 讓出 h3 的空間 */
}

/* 您的訂單 → 右欄表格排版 */
#order_review table.shop_table,
#order_review table.shop_table thead,
#order_review table.shop_table tbody,
#order_review table.shop_table tfoot,
#order_review table.shop_table tr,
#order_review table.shop_table th,
#order_review table.shop_table td {
  display: block;
  width: 100% !important;
  box-sizing: border-box;
}

#order_review table.shop_table th,
#order_review table.shop_table td {
  border: none !important;
}

#order_review table.shop_table th {
  font-size: 0.85rem;
  color: #888;
  padding-bottom: 0.2rem;
}

#order_review table.shop_table tr {
  border-bottom: none;
  padding: 0.75rem 0;
}

/* thead 滿寬底色 */
#order_review table.shop_table thead tr {
  background-color: #f5f5f5;
  padding: 0.5rem 0.75rem;
}

/* 品項交替底色 */
#order_review table.shop_table tbody tr:nth-child(odd) {
  background-color: #fafafa;
}

#order_review table.shop_table tbody tr:nth-child(even) {
  background-color: #ffffff;
}

/* tfoot */
#order_review table.shop_table tfoot tr {
  border-top: 1px solid #ebebeb;
}

#order_review table.shop_table tfoot tr.order-total {
  background-color: #f0f0f0;
  font-weight: 600;
}
/* 移除"小計" */
#order_review table.shop_table thead th.product-total {
  display: none !important;
}

/* RWD：手機改回單欄 */
@media (max-width: 768px) {
  form.checkout.woocommerce-checkout {
    display: block;
  }

  h3#order_review_heading {
    grid-column: unset;
    grid-row: unset;
  }
}

/* ========== 404頁面客製 ========== */
.custom-404-page {
	flex: 1;
	width: 100%;
	min-height: 60vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 80px 20px;
}

.custom-404-wrap {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}

.custom-404-title {
	margin: 0 0 24px;
	font-size: 56px;
	line-height: 1.25;
	font-weight: 500;
	color: #2f3850;
}

.custom-404-text {
	margin: 0 auto 36px;
	font-size: 24px;
	line-height: 1.8;
	color: #5a6275;
	max-width: 720px;
}

.custom-404-button {
	display: inline-block;
	padding: 12px 56px;
	border-radius: 8px;
	background: #1f2b4d;
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	font-weight: 500;
	transition: opacity .2s ease;
}

.custom-404-button:hover {
	opacity: .9;
	color: #fff;
}

@media (max-width: 768px) {
	.custom-404-page {
		min-height: 50vh;
		padding: 56px 20px;
	}

	.custom-404-title {
		font-size: 34px;
	}

	.custom-404-text {
		font-size: 18px;
		line-height: 1.7;
	}
}

/* ========== 其它 ========== */
/* 移除 header 下方、Hero 上方的空白 */
.one-container .site-content:has(.bk-page){padding:0}

/* 商品頁 全頁四邊間距 */
.one-container .site-content {
    padding: 36px 20px ;
}