/* ===== LOGO（解決你現在最大問題）===== */
.custom-logo {
    max-width: 140px !important;
    height: auto;
}

/* Header 整體平衡 */
.site-header {
    padding: 12px 0;
    border-bottom: 1px solid #eee;
}

/* Header 內容左右平衡 */
.site-header .site-branding {
    display: flex;
    align-items: center;
}

/* 導覽列 */
.main-navigation a {
    font-size: 14px;
    color: #333;
    margin: 0 14px;
}

.main-navigation a:hover {
    color: #ff799d;
}

/* ===== 內容寬度（不要再滿版壓力）===== */
.site-main,
.elementor-section {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ===== 標題系統 ===== */
h1 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
}

h2 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 16px;
}

/* ===== 商品卡「微優化（不破壞結構）」===== */
.woocommerce ul.products li.product {
    padding: 10px;
}

.woocommerce ul.products li.product h2 {
    font-size: 14px;
    line-height: 1.4;
}

.woocommerce ul.products li.product .price {
    color: #111;
    font-weight: 600;
}

/* 按鈕質感 */
.woocommerce ul.products li.product .button {
    background: #0d3d82;
    color: #fff;
    border-radius: 8px;
    font-size: 13px;
    padding: 8px 0;
}

.woocommerce ul.products li.product .button:hover {
    background: #ff799d;
}

/* ===== 分類圖片（只微調，不動結構）===== */
.woocommerce ul.products li.product-category img {
    border-radius: 14px;
}

/* ===== 手機 ===== */
@media (max-width: 768px) {
    .custom-logo {
        max-width: 110px !important;
    }

    h1 {
        font-size: 22px;
    }
}
body {
  padding-top: 80px;
}
post-title-fix
.post-title-fix {
  white-space: normal !important;
  word-break: break-word;
  line-height: 1.4;
}
.post-title-fix {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* ===== 修正：文章卡片標題（不影響原本CSS）===== */
.post-title-fix {
  white-space: normal !important;
  word-break: break-word;
  line-height: 1.4;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  min-height: 60px;
}

/* 防止標題內連結破版 */
.post-title-fix a {
  display: block;
}
/* ===== 強制修正 Elementor 文章標題 ===== */
.elementor-heading-title a {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  white-space: normal !important;
  word-break: break-word;
  line-height: 1.4;

  min-height: 60px;
}
/* ===== 強制修正 Elementor 文章標題 ===== */
.elementor-heading-title a {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  white-space: normal !important;
  word-break: break-word;
  line-height: 1.4;

  min-height: 60px;
}
.push-bottom {
  margin-top: auto;
}
/* ===== 我的帳號頁整體排版 ===== */
.woocommerce-account .woocommerce {
    display: flex;
    gap: 40px;
}

/* ===== 左側選單 ===== */
.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 220px;
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* 清掉原本點點 */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* 每一項 */
.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin-bottom: 10px;
}

/* 連結樣式 */
.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 10px 14px;
    border-radius: 8px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: 0.2s;
}

/* hover */
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: #ffe3ea;
    color: #ff4f7a;
}

/* 當前頁 */
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: #ff4f7a;
    color: #fff;
    font-weight: 600;
}

/* ===== 右側內容 ===== */
.woocommerce-account .woocommerce-MyAccount-content {
    flex: 1;
    background: #fff;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* 表格優化 */
.woocommerce-account table {
    border-radius: 10px;
    overflow: hidden;
}

/* 按鈕 */
.woocommerce-account .button {
    background: #ff4f7a;
    color: #fff;
    border-radius: 20px;
    padding: 6px 14px;
}

.woocommerce-account .button:hover {
    background: #e63e66;
}
/* ===== 修正內文文字疊在一起 ===== */
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  overflow: visible !important;
  white-space: normal !important;
  line-height: 1.8 !important;
}

/* ===== 限制「只讓標題截斷」 ===== */
.elementor-post__title,
.post-title-fix {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* ===== 修正整頁無法正常滾動 ===== */
html, body {
  overflow: auto !important;
  height: auto !important;
}

/* 避免 Elementor container 鎖住畫面 */
.elementor-section,
.elementor-container,
.elementor {
  overflow: visible !important;
  height: auto !important;
}
html, body {
  height: auto !important;
  overflow: visible !important;
}

.elementor {
  height: auto !important;
}

.elementor-section,
.elementor-container {
  overflow: visible !important;
}
/* 強制解除所有內部滾動與高度限制 */
html, body {
  height: auto !important;
  min-height: auto !important;
  overflow: visible !important;
}

/* Elementor 外層 */
.elementor,
.elementor-page,
.elementor-page-content,
.elementor-section-wrap {
  height: auto !important;
  min-height: auto !important;
  overflow: visible !important;
}

/* WordPress 主題容器（關鍵） */
#page,
.site,
.site-content,
.content-area,
.site-main {
  height: auto !important;
  min-height: auto !important;
  overflow: visible !important;
}
/* 修正頁面只能內部滾動問題 */
.site-main,
.elementor-location-single,
.elementor-section-wrap {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
/* 解鎖整頁滾動（關鍵） */
.site-main {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
.site-main,
.page-content {
  overflow: visible !important;
}
header {
  position: static !important;
}

.site-header {
  position: static !important;
}

#masthead {
  position: static !important;
}
body {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.site-content,
#content,
main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.archive .page-title,
.category .page-title {
  text-align: center;
  margin-top: 40px;
  margin-bottom: 20px;
}
.archive-header,
.page-header {
  padding-top: 30px;
}
.bk-lp-v2{
  --bg:#fffaf6;
  --bg-soft:#fff3e6;
  --card:#ffffff;
  --text:#2b2b2b;
  --muted:#6b6b6b;
  --primary:#c96f16;
  --primary-dark:#a95b10;
  --secondary:#3d6f63;
  --line:#ead8c6;
  --highlight:#ffe7bf;
  --shadow:0 14px 36px rgba(0,0,0,.08);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.8;
}

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

.bk-lp-v2 a{
  text-decoration:none;
}

.bk-lp-v2 .wrap{
  max-width:1120px;
  margin:0 auto;
  padding:0 20px;
}

.bk-lp-v2 .section{
  padding:64px 0;
}

.bk-lp-v2 .hero{
  background:linear-gradient(135deg,#fff8ef 0%, #fffdfb 52%, #fff2e1 100%);
  border-bottom:1px solid var(--line);
  padding:76px 0 58px;
}

.bk-lp-v2 .hero-grid{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:28px;
  align-items:center;
}

.bk-lp-v2 .eyebrow{
  display:inline-block;
  padding:8px 14px;
  border-radius:999px;
  background:#fff0d8;
  border:1px solid #f2d29c;
  color:#9a580d;
  font-size:14px;
  font-weight:800;
  margin-bottom:18px;
}

.bk-lp-v2 h1{
  margin:0 0 18px;
  font-size:clamp(32px,4.5vw,56px);
  line-height:1.18;
  letter-spacing:-.02em;
  font-weight:900;
}

.bk-lp-v2 .sub{
  font-size:18px;
  color:var(--muted);
  margin:0 0 24px;
  max-width:760px;
}

.bk-lp-v2 .mark{
  background:linear-gradient(transparent 58%, var(--highlight) 58%);
  font-weight:800;
}

.bk-lp-v2 .cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
}

.bk-lp-v2 .cta-row.center{
  justify-content:center;
}

.bk-lp-v2 .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 22px;
  border-radius:999px;
  font-size:16px;
  font-weight:800;
  transition:.2s ease;
}

.bk-lp-v2 .btn-primary{
  background:var(--primary);
  color:#fff;
  box-shadow:0 10px 22px rgba(201,111,22,.23);
}

.bk-lp-v2 .btn-primary:hover{
  background:var(--primary-dark);
  color:#fff;
  transform:translateY(-1px);
}

.bk-lp-v2 .btn-secondary{
  background:#fff;
  color:var(--primary-dark);
  border:1px solid #efc993;
}

.bk-lp-v2 .btn-secondary:hover{
  background:#fff6ea;
  color:var(--primary-dark);
}

.bk-lp-v2 .text-link{
  color:#a95b10;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
}

.bk-lp-v2 .hero-card,
.bk-lp-v2 .card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:var(--shadow);
}

.bk-lp-v2 .hero-card{
  padding:28px;
}

.bk-lp-v2 .hero-card h3{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.4;
}

.bk-lp-v2 .hero-card p{
  margin:0 0 14px;
  color:var(--muted);
}

.bk-lp-v2 .checklist{
  margin:0;
  padding-left:1.2em;
}

.bk-lp-v2 .checklist li{
  margin:8px 0;
}

.bk-lp-v2 h2{
  margin:0 0 14px;
  font-size:clamp(28px,3.2vw,42px);
  line-height:1.25;
  font-weight:900;
  text-align:center;
}

.bk-lp-v2 .left-title{
  text-align:left;
  margin-bottom:10px;
}

.bk-lp-v2 .lead{
  max-width:820px;
  margin:0 auto;
  text-align:center;
  color:var(--muted);
  font-size:18px;
}

.bk-lp-v2 .section-note{
  margin-top:22px;
}

.bk-lp-v2 .grid-2,
.bk-lp-v2 .grid-3{
  display:grid;
  gap:22px;
  margin-top:34px;
}

.bk-lp-v2 .grid-2{
  grid-template-columns:repeat(2,1fr);
}

.bk-lp-v2 .grid-3{
  grid-template-columns:repeat(3,1fr);
}

.bk-lp-v2 .box{
  padding:28px;
  border-radius:22px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow);
  height:100%;
}

.bk-lp-v2 .box h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.4;
}

.bk-lp-v2 .box p{
  margin:0;
  color:var(--muted);
}

.bk-lp-v2 .center-story{
  max-width:900px;
  margin:0 auto;
}

.bk-lp-v2 .center-story p{
  margin:0 0 18px;
  font-size:17px;
}

.bk-lp-v2 .quote{
  margin:24px 0;
  padding:28px;
  background:#fff6ea;
  border:1px solid #f0d7b2;
  border-radius:22px;
  color:#8a4b00;
  font-size:21px;
  font-weight:900;
}

.bk-lp-v2 .mini-tag{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#f5eee4;
  color:#805825;
  font-size:13px;
  font-weight:800;
  margin-bottom:12px;
}

.bk-lp-v2 .compare{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
  margin-top:32px;
}

.bk-lp-v2 .steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:34px;
  counter-reset:step;
}

.bk-lp-v2 .step{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:22px 20px;
  box-shadow:var(--shadow);
}

.bk-lp-v2 .step:before{
  counter-increment:step;
  content:counter(step);
  display:inline-flex;
  width:38px;
  height:38px;
  border-radius:50%;
  align-items:center;
  justify-content:center;
  background:var(--primary);
  color:#fff;
  font-weight:900;
  margin-bottom:12px;
}

.bk-lp-v2 .step h4{
  margin:0 0 8px;
  font-size:18px;
}

.bk-lp-v2 .step p{
  margin:0;
  color:var(--muted);
  font-size:15px;
}

.bk-lp-v2 .link-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:24px;
}

.bk-lp-v2 .link-card{
  display:block;
  padding:22px;
  border-radius:20px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  color:var(--text);
}

.bk-lp-v2 .link-card small{
  display:block;
  color:var(--muted);
  margin-bottom:6px;
  font-size:13px;
}

.bk-lp-v2 .link-card strong{
  display:block;
  font-size:20px;
  margin-bottom:6px;
}

.bk-lp-v2 .link-card span{
  color:var(--primary-dark);
  font-weight:800;
}

.bk-lp-v2 .faq{
  max-width:900px;
  margin:34px auto 0;
  display:grid;
  gap:16px;
}

.bk-lp-v2 details{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px 20px;
  box-shadow:var(--shadow);
}

.bk-lp-v2 summary{
  cursor:pointer;
  font-weight:800;
  font-size:18px;
  list-style:none;
}

.bk-lp-v2 summary::-webkit-details-marker{
  display:none;
}

.bk-lp-v2 details p{
  margin:12px 0 0;
  color:var(--muted);
}

.bk-lp-v2 .cta-band{
  background:linear-gradient(135deg,#fff1df 0%, #fffaf4 100%);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.bk-lp-v2 .cta-box{
  max-width:920px;
  margin:0 auto;
  padding:36px;
  text-align:center;
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:var(--shadow);
}

.bk-lp-v2 .cta-box h2{
  margin-bottom:12px;
}

.bk-lp-v2 .cta-box p{
  max-width:760px;
  margin:0 auto 24px;
  color:var(--muted);
  font-size:18px;
}

.bk-lp-v2 .live-card{
  padding:34px;
}

.bk-lp-v2 .live-card p{
  margin:0 0 16px;
  color:#6b6b6b;
  font-size:17px;
}

.bk-lp-v2 .note{
  margin-top:16px;
  color:var(--muted);
  font-size:15px;
}

.bk-lp-v2 .footer{
  text-align:center;
  color:var(--muted);
  font-size:15px;
  padding:36px 0 60px;
}

.bk-lp-v2 .footer-sign{
  margin-top:8px;
}

@media (max-width:900px){
  .bk-lp-v2 .hero-grid,
  .bk-lp-v2 .grid-2,
  .bk-lp-v2 .grid-3,
  .bk-lp-v2 .compare,
  .bk-lp-v2 .steps,
  .bk-lp-v2 .link-grid{
    grid-template-columns:1fr;
  }

  .bk-lp-v2 .hero{
    padding-top:56px;
  }

  .bk-lp-v2 .sub,
  .bk-lp-v2 .lead,
  .bk-lp-v2 .cta-box p{
    font-size:16px;
  }

  .bk-lp-v2 .hero-card,
  .bk-lp-v2 .box,
  .bk-lp-v2 .cta-box,
  .bk-lp-v2 .live-card{
    padding:22px;
  }
}