/*
 Theme Name:   Jellice Theme
 Theme URI:    https://jellice.com.tw
 Description:  Custom Theme for Jellice
 Author:       Jellice
 Author URI:   https://jellice.com.tw
 Template:     astra
 Version:      1.0.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  jellice-theme
*/

/* 子主題樣式會在這裡 - 但主要 CSS 是透過 WordPress Customizer 管理 */

/* ==========================
   簡體中文 (zh-hans) 專用字型
   全站套用 Noto Sans SC (Google Fonts)
   ========================== */

/* 載入 Noto Sans SC Google Font */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;300;400;500;700;900&display=swap');

/* 簡體中文頁面 (zh-hans) 全站使用 Noto Sans SC */
html:lang(zh-Hans) body,
html:lang(zh-CN) body,
body.locale-zh-hans,
body[class*="lang-zh-hans"],
body.wpml-ls-current-language-zh-hans {
    font-family: 'Noto Sans SC', 'Noto Sans TC', sans-serif !important;
}

/* 確保簡體中文頁面所有元素都繼承字體 */
html:lang(zh-Hans) *,
html:lang(zh-CN) *,
body.locale-zh-hans *,
body[class*="lang-zh-hans"] * {
    font-family: inherit;
}

/* ==========================
   CollaMeta 頁面專用樣式 (.is-collameta)
   支援 WPML 翻譯版本
   ========================== */

/* 預設全站字型都使用 Nunito Sans（英文版）優先 → 只在此頁 */
body.is-collameta {
    font-family: 'Nunito Sans', 'Taipei Sans TC', sans-serif;
}

/* 如果是中文，強制用 Noto Sans TC → 只在此頁 */
body.is-collameta :lang(zh),
body.is-collameta :lang(zh-TW),
body.is-collameta :lang(zh-Hant) {
    font-family: 'Noto Sans TC', 'Nunito Sans', sans-serif;
}

/* 如果是英文，強制用 Nunito Sans → 只在此頁 */
body.is-collameta :lang(en) {
    font-family: 'Nunito Sans', 'Nunito Sans', sans-serif;
}

/* collameta 頁面的按鈕（你原本就鎖在 elementor-102，但再多加一層保險） */
body.is-collameta .elementor-102 .elementor-element.elementor-element-edb886b .elementor-button {
    background-color: #A64C50;
    font-size: 16px;
    font-weight: 400;
    fill: #FFFFFF;
    color: #FFFFFF;
    border-radius: 0px 0px 0px 0px;
    padding: 20px 100px 20px 100px;
    letter-spacing: 1.5px;
    margin-top: 30px;
    border-top-right-radius: 20px;
}

/* selector3：桌機 */
@media screen and (min-width:1025px) {
    body.is-collameta .selector3 {
        width: 100%;
        aspect-ratio: 1920/1080;
    }
}

/* selector3：平板 */
@media screen and (min-width:768px) and (max-width:1024px) {
    body.is-collameta .selector3 {
        width: 100%;
        aspect-ratio: 1920/1080;
    }
}

/* 這邊開始為上誠事業，只在 collameta 頁 */
body.is-collameta .evp-volume-btn {
    display: none;
}

body.is-collameta .check-hard {
    background: #e38492;
    padding: 20px;
    border-top-right-radius: 20px 20px;
}

body.is-collameta .check {
    background: #d84761;
    padding: 20px;
    border-top-right-radius: 20px 20px;
}

/* 16:9 外框 → 只在此頁 */
body.is-collameta .ratio-169 {
    position: relative !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden !important;
}

body.is-collameta .ratio-169 .elementor-background-video-container {
    position: absolute !important;
    inset: 0 !important;
}

/* 元素 2b2b6a9d：手機、平板隱藏 */
@media screen and (max-width: 1024px) {
    body.is-collameta .elementor-element.elementor-element-2b2b6a9d {
        display: none !important;
    }

    /* 手機版隱藏 592e85bc */
    body.is-collameta .elementor-element.elementor-element-592e85bc.e-con {
        display: none !important;
    }

    /* 手機版隱藏 3440079 的按鈕 */
    body.is-collameta .elementor-element.elementor-element-3440079 .elementor-button {
        display: none !important;
    }
}

/* selector2：桌機 */
@media screen and (min-width:1025px) {
    body.is-collameta .selector2 {
        width: 100%;
        aspect-ratio: 384/289;
    }
}

/* selector2：平板 */
@media screen and (min-width:768px) and (max-width:1024px) {
    body.is-collameta .selector2 {
        width: 100%;
        aspect-ratio: 384/289;
    }
}

/* selector：桌機 */
@media screen and (min-width:1025px) {
    body.is-collameta .selector {
        width: 100%;
        aspect-ratio: 64 / 27;
    }
}

/* selector：平板 */
@media screen and (min-width:768px) and (max-width:1024px) {
    body.is-collameta .selector {
        width: 100%;
        aspect-ratio: 64 / 27;
    }
}



/* p4-icons → 只在 collameta 頁 */
body.is-collameta .p4-icons {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0rem;
    max-width: 1200px;
    margin: 0 auto;
}

body.is-collameta .p4-icons img {
    width: 100%;
    height: auto;
    display: block;
}

/* ==========================
   JELLICE Header 完整修正 CSS
   版本：2024-12-03
   ========================== */

/* ==========================
   1. Header 基本樣式
   ========================== */

/* 移除 wrap 背景與陰影，陰影只留在內層 row */
.site-primary-header-wrap,
.ast-primary-header-bar .site-primary-header-wrap,
.ast-primary-header-bar.site-primary-header-wrap,
.ast-header-sticked .ast-primary-header-bar .site-primary-header-wrap {
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* 桌面/黏性 header 外層容器強制透明（避免再吃到主題預設白底） */
#masthead,
#masthead .site-header,
#masthead .ast-desktop-header-content,
#ast-desktop-header,
#ast-fixed-header,
#ast-fixed-header .ast-desktop-header-content,
#ast-fixed-header .main-header-bar,
#masthead .main-header-bar,
#masthead .ast-primary-header,
#masthead .ast-primary-header-bar,
.ast-primary-header-bar.ast-header-sticked,
.ast-primary-sticky-header-active .ast-primary-header-bar {
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* 桌面版 Header 外層容器樣式 */
@media (min-width: 922px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        background: transparent;
    }

    /* 白底與陰影只套在內層 row，避免外層佔滿背景 */
    .ast-primary-header-bar .ast-builder-grid-row {
        border-radius: 15px;
        box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.15);
        background: white;
        padding: 15px;
        padding-left: 15px;
        height: 70px;
    }

    /* 選單導覽區垂直對齊 */
    .ast-main-header-bar-alignment,
    .main-header-bar-navigation,
    .site-navigation,
    .main-navigation {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }

    .main-header-menu.ast-nav-menu {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }

    .main-header-menu>.menu-item {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }

    .main-header-menu>.menu-item>.menu-link {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
}

/* 手機版 Header 內部 grid row 樣式 */
@media (max-width: 921.9px) {
    .ast-primary-header-bar .ast-builder-grid-row {
        box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.15);
        background: white;
        padding: 15px;
        padding-left: 15px;
        border-radius: 15px;
        height: 70px;
    }
}

/* ==========================
   2. 語言切換器
   ========================== */

.wpw-lang-switcher {
    display: flex;
    align-items: center;
    gap: 7px;
}

.wpw-lang-switcher a {
    color: #0d0d0d !important;
    text-decoration: none;
    font-size: 15px;
    letter-spacing: 1px;
}

.wpw-lang-switcher .divider {
    display: inline-block;
    width: 2px;
    height: 25px;
    background-color: #cacaca;
}

/* ==========================
   3. 選單字間距與間隔
   ========================== */

.main-header-menu>.menu-item>.menu-link {
    letter-spacing: 4px;
}

.main-header-menu .menu-link,
.main-header-menu>a {
    padding: 0 1.2em;
}

/* 語言切換器左邊間距 */
[data-section="section-hb-html-1"] {
    padding-left: 30px;
}

/* ==========================
   4. 全球網站按鈕 + Icon
   ========================== */

.ast-header-button-1 .ast-custom-button,
.ast-custom-button {
    white-space: nowrap !important;
    letter-spacing: 2px;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.ast-header-button-1 .ast-custom-button::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2b2b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    vertical-align: text-bottom;
    position: relative;
    top: 4px;
}

.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 0px;
    height: 34px;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
}

/* ==========================
   5. 桌面版（922px 以上 - 配合 Astra 主題斷點）
   不需要手動隱藏/顯示，Astra 主題已處理
   ========================== */

@media (min-width: 922px) {

    /* 桌面版隱藏 mobile trigger（漢堡選單按鈕） */
    .ast-primary-header-bar [data-section="section-header-mobile-trigger"],
    .ast-primary-header-bar .ast-mobile-menu-trigger-minimal,
    .ast-primary-header-bar .menu-toggle.main-header-menu-toggle {
        display: none !important;
    }

    /* 內部不換行 */
    .ast-builder-grid-row {
        flex-wrap: nowrap !important;
    }

    .ast-builder-layout-element {
        flex-shrink: 1 !important;
    }

    /* 垂直置中 */
    .ast-builder-grid-row-container.ast-builder-grid-row-full .ast-builder-grid-row {
        height: 100% !important;
        align-items: center !important;
    }

    .ast-primary-header-bar .ast-builder-layout-element,
    .ast-site-identity,
    .ast-builder-menu-1,
    .ast-header-button-1,
    [data-section="section-hb-html-1"] {
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        height: 100% !important;
        align-items: center !important;
    }

    /* 大螢幕默認字體大小 */
    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 18px !important;
    }
}

/* ==========================
   6. 響應式 1460px - 1800px（14 吋以上大螢幕）
   ========================== */

@media (min-width: 1460px) and (max-width: 1800px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        margin: 0 25px !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        gap: 12px !important;
    }

    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 18px !important;
        padding: 0 1em !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 25px !important;
    }
}

/* ==========================
   7. 響應式 1301px - 1459px
   ========================== */

@media (min-width: 1301px) and (max-width: 1459px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        margin: 0 20px !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        gap: 10px !important;
    }

    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 14px !important;
        padding: 0 0.9em !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 22px !important;
    }

    .ast-header-button-1 .ast-custom-button {
        padding: 10px 20px !important;
        font-size: 14px !important;
    }

    .wpw-lang-switcher {
        gap: 5px !important;
    }

    .wpw-lang-switcher a {
        font-size: 14px !important;
    }
}

/* ==========================
   8. 響應式 1200px - 1300px
   ========================== */

@media (min-width: 1200px) and (max-width: 1300px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        margin: 0 18px !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        gap: 10px !important;
    }

    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 14px !important;
        padding: 0 0.8em !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 20px !important;
    }

    .ast-header-button-1 .ast-custom-button {
        padding: 10px 18px !important;
        font-size: 14px !important;
    }

    .wpw-lang-switcher {
        gap: 5px !important;
    }

    .wpw-lang-switcher a {
        font-size: 13px !important;
    }
}

/* ==========================
   9. 響應式 1100px - 1199px
   ==========================*/

@media (min-width: 1100px) and (max-width: 1199px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        margin: 0 18px !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        gap: 6px !important;
    }

    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 13px !important;
        padding: 0 0.6em !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 15px !important;
    }

    .ast-header-button-1 .ast-custom-button {
        padding: 8px 14px !important;
        font-size: 13px !important;
    }

    .ast-header-button-1 .ast-custom-button::after {
        width: 12px !important;
        height: 12px !important;
    }

    .wpw-lang-switcher {
        gap: 4px !important;
    }

    .wpw-lang-switcher a {
        font-size: 12px !important;
    }

    .ast-site-identity .site-logo-img,
    .custom-logo {
        max-width: 140px !important;
    }
}

/* ==========================
   10. 響應式 922px - 1099px
   ==========================*/

@media (min-width: 922px) and (max-width: 1099px) {
    .ast-primary-header-bar .site-primary-header-wrap {
        margin: 0 15px !important;
        height: 83px !important;
        min-height: 83px !important;
        max-height: 83px !important;
    }

    .ast-builder-menu-1 .main-header-menu {
        gap: 4px !important;
    }

    .ast-builder-menu-1 .main-header-menu>.menu-item>a {
        font-size: 12px !important;
        padding: 0 0.4em !important;
        letter-spacing: 0 !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 10px !important;
    }

    .ast-header-button-1 .ast-custom-button {
        padding: 8px 12px !important;
        font-size: 12px !important;
    }

    .ast-header-button-1 .ast-custom-button::after {
        width: 11px !important;
        height: 11px !important;
    }

    .wpw-lang-switcher {
        gap: 3px !important;
    }

    .wpw-lang-switcher a {
        font-size: 11px !important;
        letter-spacing: 0 !important;
    }

    .wpw-lang-switcher .divider {
        height: 20px !important;
    }

    .ast-site-identity .site-logo-img,
    .custom-logo {
        max-width: 130px !important;
    }

    [data-section="section-hb-html-1"] {
        padding-left: 8px !important;
    }
}

/* ==========================
   9. 平板/手機版（921px 以下 - 配合 Astra 主題斷點）
   不需要手動隱藏/顯示，Astra 主題已處理
   ========================== */

@media (max-width: 921.9px) {

    /* 手機版外層容器 */
    .ast-mobile-header-wrap .ast-mobile-header-bar {
        position: sticky !important;
        top: 20px !important;
        z-index: 100 !important;
        padding: 0 20px !important;
        background: transparent !important;
    }

    /* 手機版內層 - 圓角陰影樣式 */
    .ast-mobile-header-bar .ast-container {
        border-radius: 15px !important;
        box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.15) !important;
        background: white !important;
        height: 83px !important;
        min-height: 83px !important;
        max-height: 83px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 20px !important;
        margin: 0 !important;
    }

    /* Logo */
    .ast-mobile-header-bar .ast-site-identity {
        display: flex !important;
        align-items: center !important;
    }

    .ast-mobile-header-bar .site-logo-img,
    .ast-mobile-header-bar .custom-logo {
        max-width: 150px !important;
    }

    /* 漢堡按鈕 */
    .ast-mobile-menu-trigger-minimal {
        padding: 8px !important;
        display: flex !important;
    }

    .ast-mobile-menu-trigger-minimal .ast-mobile-svg {
        width: 24px !important;
        height: 24px !important;
        fill: #2b2b2b !important;
    }
}

/* ==========================
   10. 小螢幕（640px 以下）
   ========================== */

@media (max-width: 640px) {
    .ast-mobile-header-wrap .ast-mobile-header-bar {
        padding: 0 10px !important;
    }

    .ast-mobile-header-bar .ast-container {
        padding: 0 15px !important;
        height: 70px !important;
        min-height: 70px !important;
        max-height: 70px !important;
    }

    .ast-mobile-header-bar .site-logo-img,
    .ast-mobile-header-bar .custom-logo {
        max-width: 120px !important;
    }
}

/* ==========================
   11. Mobile Overlay 選單（全螢幕遮罩選單）
   完全仿照 global.jellice.com 的設計
   使用 overlay 遮罩 + 中間白色圓角面板
   ========================== */

/* === 11.0 全局邊框重置（移除所有可能的黑線）=== */
.ast-mobile-popup-drawer,
.ast-mobile-popup-drawer *,
.ast-mobile-popup-drawer *::before,
.ast-mobile-popup-drawer *::after,
#ast-mobile-popup,
#ast-mobile-popup *,
#ast-mobile-popup-wrapper,
#ast-mobile-popup-wrapper * {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* 恢復白色面板的陰影 */
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
    box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.15) !important;
}

/* 移除 focus 狀態的邊框 */
.ast-mobile-popup-drawer .menu-toggle-close:focus,
.ast-mobile-popup-drawer .menu-toggle-close:focus-visible,
.ast-mobile-popup-drawer button:focus,
.ast-mobile-popup-drawer button:focus-visible,
.ast-mobile-popup-drawer a:focus,
.ast-mobile-popup-drawer a:focus-visible {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* === 11.1 Overlay 背景遮罩 === */
.ast-mobile-popup-overlay {
    background: rgba(0, 0, 0, 0.5) !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* === 11.2 Popup Drawer 容器 === */
.ast-mobile-popup-drawer,
.ast-mobile-popup-drawer.active,
.ast-mobile-popup-drawer.ast-mobile-popup-right,
.ast-mobile-popup-drawer.ast-mobile-popup-right.active,
#ast-mobile-popup.ast-mobile-popup-drawer {
    /* 改為全螢幕置中 */
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: 20px !important;
    padding-top: 20px !important;
    transform: none !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* === 11.3 內部白色面板 === */
.ast-mobile-popup-drawer .ast-mobile-popup-inner,
#ast-mobile-popup .ast-mobile-popup-inner {
    background: white !important;
    background-color: white !important;
    border-radius: 15px !important;
    box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.15) !important;
    min-height: calc(100svh - 40px) !important;
    max-height: calc(100svh - 40px) !important;
    height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 30px 25px 80px 25px !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    margin: 0 auto !important;
    border: none !important;
    border-top: none !important;
    outline: none !important;
    /* 確保沒有頂部的黑線 */
    margin-top: 0 !important;
    top: 0 !important;
    box-sizing: border-box !important;
}

/* === 11.4 關閉按鈕 (X) === */
.ast-mobile-popup-drawer .ast-mobile-popup-header,
#ast-mobile-popup .ast-mobile-popup-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 0 !important;
    margin: 0 !important;
    margin-bottom: 10px !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
    min-height: unset !important;
}

.ast-mobile-popup-drawer .menu-toggle-close {
    position: absolute !important;
    top: 25px !important;
    right: 25px !important;
    background: transparent !important;
    border: none !important;
    padding: 5px !important;
    cursor: pointer !important;
    z-index: 10 !important;
}

.ast-mobile-popup-drawer .menu-toggle-close svg {
    width: 18px !important;
    height: 18px !important;
    fill: #222222 !important;
    transition: fill 0.2s ease !important;
}

.ast-mobile-popup-drawer .menu-toggle-close:hover svg {
    fill: #a64c50 !important;
}

/* === 11.5 LOGO 區域 === */
.ast-mobile-popup-drawer .ast-site-identity,
.ast-mobile-popup-drawer .site-logo-img,
.ast-mobile-popup-content .popup-logo-wrapper,
.popup-logo-wrapper {
    display: block !important;
    margin: 0 0 15px 0 !important;
    line-height: 0 !important;
    order: -2 !important;
}

.popup-logo-wrapper a {
    display: block !important;
}

.popup-logo-wrapper a {
    line-height: 0 !important;
}

/* ==========================
   12. Footer Layout Fix (Prevent Breaking on Resize)
   強制 Footer 區塊不隨視窗縮小而跑版，保持 Desktop 寬度與排版
   ========================== */

/* 針對 Footer 主要內容容器 (包含 Logo, About, Product 等 8 欄) */
[data-id="88cb6dc"] {
    min-width: 1200px !important;
    /* 強制最小寬度，避免擠壓 */
    flex-wrap: nowrap !important;
    /* 禁止換行堆疊 */
    flex-direction: row !important;
    /* 強制水平排列 */
}

/* 針對外層容器，確保允許水平滾動 (如果需要) */
[data-id="2712536"] {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    /* 大螢幕置中 */
    margin: 0 auto !important;
    /* 強制容器置中 */
    width: fit-content !important;
    /* 讓容器寬度隨內容調整，以利置中 */
    max-width: 100% !important;
}

/* 針對小螢幕進行縮放，維持 1440px 的佈局不被截斷 */
@media (max-width: 1439px) {
    [data-id="2712536"] {
        zoom: 0.9;
        /* 輕微縮小 */
    }
}

@media (max-width: 1280px) {
    [data-id="2712536"] {
        zoom: 0.8;
        /* 縮小以適應平板橫向 */
    }
}

@media (max-width: 1100px) {
    [data-id="2712536"] {
        zoom: 0.7;
        /* 縮小以適應較窄螢幕 */
    }
}

@media (max-width: 900px) {
    [data-id="2712536"] {
        zoom: 0.55;
        /* 大幅縮小以適應直向平板/大手機，顯示完整 1440px 內容 */
    }
}

/* 針對 Footer 底部版權區 (Privacy, Copyright) */
[data-id="3be6eb8"] {
    min-width: 1200px !important;
    flex-wrap: nowrap !important;
}

.site-footer-primary-section-2 {
    border-top: 1px solid hsla(0, 0%, 100%, 0.1);
    /* 確保分隔線清楚 */
    padding-top: 20px;
}

/* 針對 Footer 右側連結區塊 (e.g. Global Site) 防止換行並對齊 */
[data-id="56391d3"] .elementor-icon-list-item {
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
}

/* 針對最後一個項目 (Global Site) 調整左側分隔線位置以對齊下方的 © */
[data-id="56391d3"] .elementor-icon-list-item:last-child {
    padding-left: 23px !important;
    /* 調整此數值以對齊 © */
    border-left: 1px solid hsla(0, 0%, 100%, 0.1);
    /* 確保是用 border-left 作為分隔線 (如果原本是用 pseudo element，這邊強制覆蓋或補充) */
}

/* 隱藏原本可能造成重複的 separator (如果是 pseudo element) */
[data-id="56391d3"] .elementor-icon-list-item:nth-child(5)::before {
    display: none !important;
}

/* 確保全站 Footer 區域在小螢幕時能滑動看完整內容，而不是被截斷 */
footer.elementor-location-footer {
    overflow-x: auto !important;
    width: 100% !important;
}

.ast-mobile-popup-drawer .site-logo-img img,
.ast-mobile-popup-content .popup-logo-wrapper .popup-logo,
.popup-logo-wrapper .popup-logo {
    max-width: 180px !important;
    height: auto !important;
}

/* === 11.6 語言切換器 === */
/* Astra 主題內建的語言切換器（若存在） */
.ast-mobile-popup-drawer .wpw-lang-switcher,
.ast-mobile-popup-drawer [data-section="section-hb-html-1"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 50px 0 !important;
}

.ast-mobile-popup-drawer .wpw-lang-switcher a {
    color: #999999 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    letter-spacing: 1px !important;
    transition: color 0.2s ease !important;
    padding: 2px 0 !important;
}

.ast-mobile-popup-drawer .wpw-lang-switcher a:hover {
    color: #222222 !important;
}

.ast-mobile-popup-drawer .wpw-lang-switcher .divider {
    display: inline-block !important;
    width: 1px !important;
    height: 14px !important;
    background-color: #cccccc !important;
    margin: 0 8px !important;
    vertical-align: middle !important;
}

/* 自訂語言切換器 */
.ast-mobile-popup-content .popup-lang-switcher,
.popup-lang-switcher {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 50px 0 !important;
    order: -1 !important;
}

.ast-mobile-popup-content .popup-lang-switcher .lang-item,
.popup-lang-switcher .lang-item {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

.ast-mobile-popup-content .popup-lang-switcher .lang-item a,
.popup-lang-switcher .lang-item a {
    color: #999999 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    letter-spacing: 1px !important;
    transition: color 0.2s ease !important;
    padding: 2px 0 !important;
}

.ast-mobile-popup-content .popup-lang-switcher .lang-item a:hover,
.ast-mobile-popup-content .popup-lang-switcher .lang-item.current-lang a,
.popup-lang-switcher .lang-item a:hover,
.popup-lang-switcher .lang-item.current-lang a {
    color: #222222 !important;
}

/* 語言之間的分隔線 */
.popup-lang-switcher .lang-item:not(:last-child)::after {
    content: "|" !important;
    margin: 0 10px !important;
    color: #cccccc !important;
    font-size: 14px !important;
}

/* === 11.7 主選單容器 === */
.ast-mobile-popup-drawer .ast-builder-menu-mobile,
.ast-mobile-popup-drawer .main-header-menu,
.ast-mobile-popup-drawer .ast-mobile-popup-content .main-header-menu {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    overflow: hidden !important;
}

/* 選單對齊容器靠左 */
.ast-mobile-popup-drawer .ast-main-header-bar-alignment,
.ast-mobile-popup-drawer .ast-builder-menu-mobile {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* 導覽容器 overflow hidden */
.ast-mobile-popup-drawer .site-navigation,
.ast-mobile-popup-drawer .main-navigation,
.ast-mobile-popup-drawer .main-header-bar-navigation {
    overflow: hidden !important;
    overflow-y: hidden !important;
}

/* === 11.7 主選單項目 === */
.ast-mobile-popup-drawer .main-header-menu>.menu-item {
    border-bottom: none !important;
    margin: 0 0 28px 0 !important;
    background: transparent !important;
    position: relative !important;
}

/* 第四個選單項目後加分隔線（最新消息之後） */
.ast-mobile-popup-drawer .main-header-menu>.menu-item:nth-of-type(4) {
    border-bottom: none !important;
    padding-bottom: 30px !important;
    margin-bottom: 0 !important;
}

/* 第五個選單項目（聯繫我們）上方有分隔線 - 使用偽元素 */
.ast-mobile-popup-drawer .main-header-menu>.menu-item:nth-of-type(5) {
    padding-top: 30px !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 20px !important;
    position: relative !important;
}

/* 使用偽元素創建分隔線 */
.ast-mobile-popup-drawer .main-header-menu>.menu-item:nth-of-type(5)::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background-color: #E0E0E0 !important;
    display: block !important;
}

/* === 11.8 主選單連結 === */
.ast-mobile-popup-drawer .main-header-menu>.menu-item>.menu-link {
    padding: 0 !important;
    color: #222222 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    background: transparent !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    transition: color 0.2s ease !important;
    line-height: 1.5 !important;
}

/* === 11.9 Hover 效果 === */
.ast-mobile-popup-drawer .main-header-menu>.menu-item:hover>.menu-link,
.ast-mobile-popup-drawer .main-header-menu>.menu-item.current-menu-item>.menu-link {
    background: transparent !important;
    color: #a64c50 !important;
}

/* === 11.10 Toggle 按鈕（展開/收合箭頭）=== */
/* 隱藏連結內的箭頭，只保留按鈕的箭頭 */
.ast-mobile-popup-drawer .menu-link .dropdown-menu-toggle,
.ast-mobile-popup-drawer .menu-link .ast-header-navigation-arrow,
.ast-mobile-popup-drawer .menu-link .icon-arrow,
.ast-mobile-popup-drawer .menu-link .ast-icon {
    display: none !important;
}

/* Toggle 按鈕樣式 */
.ast-mobile-popup-drawer button.ast-menu-toggle {
    background: transparent !important;
    border: none !important;
    padding: 5px !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    cursor: pointer !important;
    /* width: 30px !important; */
    /* height: 30px !important; */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 5 !important;
    line-height: 1 !important;
    /* 防止行高撐開 */
}

/* === Nuclear Option: 強制清除所有 Astra 預設樣式 === */

/* 1. 移除按鈕與變體的任何偽元素 */
.ast-mobile-popup-drawer button.ast-menu-toggle::before,
.ast-mobile-popup-drawer button.ast-menu-toggle::after,
.ast-mobile-popup-drawer button.menu-toggle::before,
.ast-mobile-popup-drawer button.menu-toggle::after {
    display: none !important;
    content: none !important;
    border: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* 2. 移除按鈕內任何文字或 Font Icons (Astra 常在此處放字體圖示) */
.ast-mobile-popup-drawer button.ast-menu-toggle,
.ast-mobile-popup-drawer button.menu-toggle {
    font-size: 0 !important;
    /* 隱藏文字 */
    border-radius: 0 !important;
    border: none !important;
}

/* 3. 確保 SVG 可見並重置大小 */
.ast-mobile-popup-drawer button.ast-menu-toggle svg,
.ast-mobile-popup-drawer button.menu-toggle svg {
    display: block !important;
    width: 20px !important;
    height: auto !important;
    fill: #999999 !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-size: 20px !important;
    /* 恢復 SVG 容器大小 */
}

/* 4. 針對 .ast-icon 容器進行深度清理 */
.ast-mobile-popup-drawer button.ast-menu-toggle .ast-icon,
.ast-mobile-popup-drawer button.ast-menu-toggle .ast-icon::before,
.ast-mobile-popup-drawer button.ast-menu-toggle .ast-icon::after,
.ast-mobile-popup-drawer button.ast-menu-toggle span::before,
.ast-mobile-popup-drawer button.ast-menu-toggle span::after {
    border: none !important;
    text-decoration: none !important;
    background: transparent !important;
    box-shadow: none !important;
    content: none !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 修正偽元素 display，上方 content: none 已足夠，但也確保隱藏 */
.ast-mobile-popup-drawer button.ast-menu-toggle .ast-icon::before,
.ast-mobile-popup-drawer button.ast-menu-toggle .ast-icon::after {
    display: none !important;
}

.ast-mobile-popup-drawer .main-header-menu>.menu-item.menu-item-has-children {
    padding-right: 30px !important;
}

/* 隱藏 CSS 偽元素箭頭，改用 Astra 內建的 toggle 按鈕 */
.ast-mobile-popup-drawer .main-header-menu>.menu-item.menu-item-has-children::after {
    display: none !important;
}

/* 顯示 Astra 內建的 toggle 按鈕 SVG */
.ast-mobile-popup-drawer .ast-menu-toggle svg,
.ast-mobile-popup-drawer .dropdown-menu-toggle svg {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    fill: #999999 !important;
    transition: transform 0.3s ease !important;
}

/* 展開時旋轉箭頭 */
.ast-mobile-popup-drawer .menu-item.ast-submenu-expanded>.ast-menu-toggle svg,
.ast-mobile-popup-drawer .menu-item.ast-submenu-expanded>.dropdown-menu-toggle svg {
    transform: rotate(180deg) !important;
}

/* === 11.11 子選單 === */
.ast-mobile-popup-drawer .main-header-menu .sub-menu {
    position: static !important;
    display: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 子選單展開狀態 */
.ast-mobile-popup-drawer .main-header-menu>.menu-item.ast-submenu-expanded>.sub-menu {
    display: block !important;
    padding-top: 10px !important;
    padding-bottom: 0 !important;
}

/* === 11.12 子選單項目 === */
.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item {
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    border-bottom: none !important;
    height: auto !important;
    overflow: visible !important;
}

/* === 11.13 子選單連結 === */
.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item>.menu-link {
    padding: 4px 0 !important;
    padding-left: 15px !important;
    color: #666666 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    background: transparent !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: color 0.2s ease !important;
}

/* 隱藏子選單的 Astra 內建箭頭圖示 - 子選單項目不需要箭頭 */
.ast-mobile-popup-drawer .main-header-menu .sub-menu .icon-arrow,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .ast-icon,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .ast-icon.icon-arrow,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .ast-header-navigation-arrow,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .ast-arrow-svg,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .menu-link .ast-icon,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .menu-link .icon-arrow,
.ast-mobile-popup-drawer .main-header-menu .sub-menu .menu-link svg {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
}

/* 子選單項目前的短線 */
.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item>.menu-link::before {
    content: "-" !important;
    color: #999999 !important;
    font-weight: 300 !important;
}

/* === 11.14 子選單 Hover 效果 === */
.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item:hover>.menu-link,
.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item.current-menu-item>.menu-link {
    color: #a64c50 !important;
    background: transparent !important;
}

.ast-mobile-popup-drawer .main-header-menu .sub-menu>.menu-item:hover>.menu-link::before {
    color: #a64c50 !important;
}

/* === 11.15 漢堡按鈕樣式 === */
@media (max-width: 921px) {

    .ast-mobile-menu-trigger-minimal,
    .menu-toggle.main-header-menu-toggle {
        padding: 10px !important;
        background: transparent !important;
        border: none !important;
        position: relative !important;
    }

    .ast-mobile-menu-trigger-minimal svg,
    .menu-toggle.main-header-menu-toggle svg {
        fill: #222222 !important;
        width: 24px !important;
        height: 24px !important;
    }

    /* 移除 span 上可能造成黑線的樣式 - 不要套用到 Astra 的漢堡按鈕 */
    /* 原始網站的 .button_container span 樣式不適用於 Astra 主題 */
    .ast-mobile-menu-trigger-minimal .screen-reader-text {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
        background: transparent !important;
    }

    /* 確保 mobile-menu-toggle-icon 內的 span 不顯示黑線 */
    .ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon,
    .ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon span {
        background: transparent !important;
        border: none !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        height: auto !important;
    }

    /* SVG 圖標容器 */
    .ast-mobile-menu-trigger-minimal .ahfb-svg-iconset {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        border: none !important;
    }
}

/* === 11.16 Popup 底部資訊（隱私政策 + 版權）=== */
.ast-mobile-popup-content .popup-footer-info,
.popup-footer-info,
.ast-mobile-popup-drawer .privacy_copy {
    position: absolute !important;
    bottom: 20px !important;
    left: 0 !important;
    width: 100% !important;
    text-align: center !important;
    padding: 0 20px !important;
}

.ast-mobile-popup-content .popup-footer-info .privacy-link,
.popup-footer-info .privacy-link,
.ast-mobile-popup-drawer .privacy_copy .privacy a {
    display: block !important;
    color: #999999 !important;
    font-size: 12px !important;
    text-decoration: none !important;
    margin-bottom: 8px !important;
    letter-spacing: 1px !important;
    transition: color 0.2s ease !important;
}

.ast-mobile-popup-content .popup-footer-info .privacy-link:hover,
.popup-footer-info .privacy-link:hover {
    color: #a64c50 !important;
}

.ast-mobile-popup-content .popup-footer-info .copyright,
.popup-footer-info .copyright,
.ast-mobile-popup-drawer .privacy_copy .copy small {
    color: #cccccc !important;
    font-size: 12px !important;
    margin: 0 !important;
    letter-spacing: 0.5px !important;
    display: block !important;
}

/* === 11.17 Popup 內部佈局 === */
.ast-mobile-popup-drawer .ast-mobile-popup-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    flex: 1 !important;
    overflow-y: auto !important;
    padding: 0 !important;
    width: 100% !important;
}

/* 確保 popup-content 內的元素按正確順序排列 */
.ast-mobile-popup-content .popup-logo-wrapper {
    order: -2 !important;
    width: 100% !important;
    max-width: none !important;
}

.ast-mobile-popup-content .popup-lang-switcher {
    order: -1 !important;
    width: 100% !important;
    max-width: none !important;
}

.ast-mobile-popup-content .ast-builder-menu-mobile,
.ast-mobile-popup-content .main-header-menu {
    order: 0 !important;
}

.ast-mobile-popup-content .popup-footer-info {
    order: 99 !important;
}

/* 確保內容按正確順序排列 */
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner>.popup-logo-wrapper {
    order: 1 !important;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner>.popup-lang-switcher {
    order: 2 !important;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner>.ast-mobile-popup-content {
    order: 3 !important;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner>.popup-footer-info {
    order: 4 !important;
}

/* === 11.18 外部連結圖示（仿原始網站）=== */
.ast-mobile-popup-drawer .main-header-menu .ex_link::after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E") !important;
    width: 14px !important;
    height: 14px !important;
    display: inline-block !important;
    margin-left: 6px !important;
}

/* ==========================
   12. Sticky Header（純 CSS）
   ========================== */

/* 桌面版 Header sticky */
@media (min-width: 922px) {
    .ast-primary-header-bar.site-primary-header-wrap {
        position: sticky !important;
        top: 20px !important;
        z-index: 9999 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        margin: 0 20px 60px 20px !important;
        max-width: calc(100% - 40px) !important;
    }
}

/* 手機版 sticky 已在第 9 節設定 */

/* ==========================
   13. 桌面版 Submenu（下拉選單）
   ========================== */

/* 確保父選單項目有相對定位 */
.main-header-menu>.menu-item,
.ast-builder-menu-1 .main-header-menu>.menu-item {
    position: relative !important;
}

/* 下拉選單容器 */
.main-header-menu .sub-menu,
.ast-builder-menu-1 .sub-menu {
    background: white !important;
    border-radius: 0 0 15px 15px !important;
    box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.12) !important;
    padding: 20px 25px !important;
    min-width: 180px !important;
    border: none !important;
    position: absolute !important;
    top: 100% !important;
    margin-top: 0 !important;
    left: 0 !important;
}

/* ==========================
   觸控設備子選單支援
   當手機/平板強制桌面版時，透過 JS 加入 hover-active class
   ========================== */

/* 觸控設備點擊展開子選單 */
.main-header-menu>.menu-item.menu-item-has-children.hover-active>.sub-menu,
.main-header-menu>.menu-item.menu-item-has-children.ast-submenu-expanded>.sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

/* 確保在強制桌面版模式下子選單正確顯示 */
.force-desktop-layout .main-header-menu>.menu-item.hover-active>.sub-menu,
.tablet-desktop-mode .main-header-menu>.menu-item.hover-active>.sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ==========================
   箭頭分離方案 - 觸控設備專用樣式
   ========================== */

/* 箭頭點擊區域 - 增大觸控目標 */
.force-desktop-layout .main-header-menu .menu-item-has-children .touch-arrow-target,
.tablet-desktop-mode .main-header-menu .menu-item-has-children .touch-arrow-target,
.force-desktop-layout .main-header-menu .menu-item-has-children .ast-header-navigation-arrow,
.tablet-desktop-mode .main-header-menu .menu-item-has-children .ast-header-navigation-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    /* Apple 建議的最小觸控目標 */
    min-height: 44px !important;
    padding: 10px !important;
    margin-left: 5px !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1) !important;
}

/* 備用箭頭樣式（當 Astra 沒有箭頭時） */
.touch-dropdown-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 10px !important;
    margin-left: 5px !important;
    cursor: pointer !important;
}

.touch-dropdown-arrow svg {
    width: 12px !important;
    height: 12px !important;
    transition: transform 0.2s ease !important;
}

/* 展開時箭頭旋轉 */
.menu-item.hover-active .touch-dropdown-arrow svg,
.menu-item.ast-submenu-expanded .touch-dropdown-arrow svg,
.menu-item.hover-active .ast-header-navigation-arrow svg,
.menu-item.ast-submenu-expanded .ast-header-navigation-arrow svg {
    transform: rotate(180deg) !important;
}

/* 箭頭 hover/active 視覺反饋 */
.force-desktop-layout .touch-arrow-target:active,
.tablet-desktop-mode .touch-arrow-target:active {
    background-color: rgba(0, 0, 0, 0.05) !important;
    border-radius: 50% !important;
}

/* 讓 submenu 與 header 底部對齊 - 調整 top 值 */
@media (min-width: 922px) {

    .ast-primary-header-bar .main-header-menu>.menu-item>.sub-menu,
    .ast-builder-menu-1 .main-header-menu>.menu-item>.sub-menu {
        top: calc(100% + 22px) !important;
        /* 加上 header 的 padding */
    }
}

/* 下拉選單項目 */
.main-header-menu .sub-menu>.menu-item,
.ast-builder-menu-1 .sub-menu>.menu-item {
    margin: 0 !important;
    padding: 0 !important;
}

/* 下拉選單連結 */
.main-header-menu .sub-menu>.menu-item>a,
.ast-builder-menu-1 .sub-menu>.menu-item>a {
    color: #333333 !important;
    font-size: 18px !important;
    padding: 15px 10px !important;
    display: flex !important;
    align-items: center !important;
    letter-spacing: 2px !important;
    transition: color 0.2s ease !important;
}

/* 下拉選單項目前面的短線 */
.main-header-menu .sub-menu>.menu-item>a::before,
.ast-builder-menu-1 .sub-menu>.menu-item>a::before {
    content: "-" !important;
    margin-right: 12px !important;
    color: #333333 !important;
    font-weight: 300 !important;
}

/* Hover 效果 */
.main-header-menu .sub-menu>.menu-item>a:hover,
.ast-builder-menu-1 .sub-menu>.menu-item>a:hover {
    color: #a64c50 !important;
    background: transparent !important;
}

.main-header-menu .sub-menu>.menu-item>a:hover::before,
.ast-builder-menu-1 .sub-menu>.menu-item>a:hover::before {
    color: #a64c50 !important;
}

/* ==========================
   14. 額外修復：徹底移除 Mobile Popup 的黑線
   ========================== */

/* 移除所有可能產生黑線的邊框 */
#ast-mobile-popup-wrapper,
#ast-mobile-popup,
.ast-mobile-popup-drawer,
.ast-mobile-popup-overlay,
.ast-mobile-popup-inner,
.ast-mobile-popup-header,
.ast-mobile-popup-content {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-width: 0 !important;
    outline: 0 !important;
    outline-width: 0 !important;
}

/* 確保 Focus 狀態也沒有邊框 */
#ast-mobile-popup-wrapper *:focus,
#ast-mobile-popup *:focus,
.ast-mobile-popup-drawer *:focus,
#ast-mobile-popup-wrapper *:focus-visible,
#ast-mobile-popup *:focus-visible,
.ast-mobile-popup-drawer *:focus-visible {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* 移除 Astra 可能設定的 border-top */
.ast-mobile-popup-drawer.active .ast-mobile-popup-inner,
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
    border-top: 0 !important;
    border-top-width: 0 !important;
    border-top-style: none !important;
}

/* 確保 admin-bar 環境下也沒問題 */
body.admin-bar .ast-mobile-popup-drawer,
body.admin-bar .ast-mobile-popup-drawer .ast-mobile-popup-inner {
    border: 0 !important;
    border-top: 0 !important;
}

/* ==========================
   15. 首頁 (#123 / #aninew) 版面寬度同步
   ========================== */

/* 讓 #aninew 與 #123 同寬（Elementor container content width 1040px） */
@media (min-width: 768px) {
    body.is-homepage .elementor-element.elementor-element-2ae729e {
        --content-width: 1040px !important;
        --padding-left: 0px !important;
        --padding-right: 0px !important;
    }

    /* 保險同步 #123 的 content width */
    body.is-homepage .elementor-element.elementor-element-8205a97 {
        --content-width: 1040px !important;
    }

    /* 內部卡片排版置中並套用原站內框寬度 */
    body.is-homepage #intro .inner {
        width: min(1040px, 100%) !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    /* 讓 #123 內層真實寬度對齊 1040px，避免偏移 */
    body.is-homepage .elementor-element.elementor-element-8205a97>.e-con-inner {
        max-width: 1040px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* 同步 #aninew 內層寬度保險 */
    body.is-homepage .elementor-element.elementor-element-2ae729e>.e-con-inner {
        max-width: 1040px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* 直接鎖住 #123 (grid) 寬度與對齊，避免盒子預設 padding 造成偏移 */
    body.is-homepage #123.elementor-element,
    body.is-homepage .elementor-element.elementor-element-8205a97 {
        width: min(1040px, 100%) !important;
        max-width: 1040px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        --padding-left: 0 !important;
        --padding-right: 0 !important;
        --margin-left: 0 !important;
        --margin-right: 0 !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        justify-items: stretch !important;
    }

    /* 讓 intro 區塊自身與 #123 完全同寬、無額外內距 */
    body.is-homepage #intro {
        width: min(1040px, 100%) !important;
        max-width: 1040px !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    /* 讓 HTML 小工具撐滿父容器寬度，與 #123 對齊 */
    body.is-homepage .elementor-element.elementor-element-0a35e0d {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 移除 Elementor HTML widget 自帶容器邊距，避免左右多 10px */
    body.is-homepage .elementor-element.elementor-element-0a35e0d>.elementor-widget-container {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }

    /* 讓 #intro 撐滿 100% 寬度 */
    body.is-homepage #intro.jellice-intro {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 讓 .inner 也撐滿 100% 寬度 */
    body.is-homepage #intro .inner {
        width: 100% !important;
    }

    /* #intro 標題樣式 */
    body.is-homepage #intro dt {
        font-size: 22px !important;
        color: #ffffff !important;
        line-height: 1.4 !important;
        margin-bottom: 18px !important;
        font-weight: 300 !important;
    }

    /* 移除暗色遮罩 */
    body.is-homepage #intro .inner>a::before {
        display: none !important;
    }

    /* View More 按鈕定位到右下角 */
    body.is-homepage #intro .inner>a {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }

    body.is-homepage #intro .inner>a dl {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        height: 100% !important;
    }

    body.is-homepage #intro p.move_arrow_btn {
        color: #ffffff !important;
        font-size: 17px !important;
        letter-spacing: 5px !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        font-weight: 300 !important;
        margin-top: 30px !important;
        align-self: flex-end !important;
    }

    body.is-homepage #intro p.move_arrow_btn span {
        display: inline-block !important;
        width: 30px !important;
        height: 30px !important;
        border-radius: 50% !important;
        border: 1px solid #ffffff !important;
        position: relative !important;
    }

    body.is-homepage #intro p.move_arrow_btn span::before {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 10px !important;
        height: 1px !important;
        background: #ffffff !important;
        transform: translate(-60%, -50%) !important;
    }

    body.is-homepage #intro p.move_arrow_btn span::after {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 6px !important;
        height: 6px !important;
        border-top: 1px solid #ffffff !important;
        border-right: 1px solid #ffffff !important;
        transform: translate(-35%, -50%) rotate(45deg) !important;
        background: transparent !important;
    }

    /* ==========================
       #intro 區塊 hover 顯示邏輯
       預設：第一塊顯示，第二、三塊隱藏
       hover 第二或第三塊時：第一塊隱藏，被 hover 的顯示
       ========================== */

    /* 預設：第二、三塊的 move_arrow_btn 隱藏 */
    body.is-homepage #intro .inner>a:nth-of-type(2) p.move_arrow_btn,
    body.is-homepage #intro .inner>a:nth-of-type(3) p.move_arrow_btn {
        opacity: 0 !important;
        transition: opacity 0.3s ease !important;
    }

    /* 預設：第一塊的 move_arrow_btn 顯示 */
    body.is-homepage #intro .inner>a:nth-of-type(1) p.move_arrow_btn {
        opacity: 1 !important;
        transition: opacity 0.3s ease !important;
    }

    /* hover 時顯示該塊的 move_arrow_btn */
    body.is-homepage #intro .inner>a:hover p.move_arrow_btn {
        opacity: 1 !important;
    }

    /* 當 .inner 內有任何 a 被 hover 時，第一塊（若不是被 hover 的那個）隱藏 move_arrow_btn */
    body.is-homepage #intro .inner:has(a:hover)>a:nth-of-type(1):not(:hover) p.move_arrow_btn {
        opacity: 0 !important;
    }

    /* #123 六個卡片填滿欄位，不要固定 280px 寬度 */
    body.is-homepage .elementor-element.elementor-element-fa8a667,
    body.is-homepage .elementor-element.elementor-element-4bc511a,
    body.is-homepage .elementor-element.elementor-element-2507ab8,
    body.is-homepage .elementor-element.elementor-element-950b920,
    body.is-homepage .elementor-element.elementor-element-16bfe1b,
    body.is-homepage .elementor-element.elementor-element-d4abc12 {
        width: 100% !important;
        max-width: none !important;
        --width: auto !important;
    }

    /* ==========================
   最新新聞 shortcode (jellice_latest_news)
   ========================== */

    .jellice-news-block {
        --jellice-news-pink: #d2344b;
        --jellice-news-gray: #f0f0f0;
        margin: 0 auto 100px;
    }

    .jellice-news-block .inner {
        width: min(760px, 100%);
        margin: 0 auto;
        padding: 0 20px;
    }

    .jellice-news-heading {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin-bottom: 100px;
    }

    .jellice-news-block .h_title {
        position: relative;
        margin: 0;
        padding-left: 18px;
        font-size: clamp(40px, 3.6vw, 50px);
        line-height: 1.2;
        font-weight: 400;
    }

    .jellice-news-block .h_title::before {
        content: "●";
        position: absolute;
        left: 0;
        top: 24px;
        color: var(--jellice-news-pink);
        font-size: 14px;
    }

    .jellice-news-heading .in_site_link {
        margin: 0;
    }

    .jellice-news-block .move_arrow_btn {
        display: inline-flex;
        align-items: center;
        gap: 14px;
        color: var(--jellice-news-pink);
        font-size: 15px;
        letter-spacing: 0.08em;
        text-decoration: none;
    }

    .jellice-news-block .move_arrow_btn span {
        width: 24px;
        height: 24px;
        border: 1px solid var(--jellice-news-pink);
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
    }

    .jellice-news-block .move_arrow_btn span::before {
        content: "";
        position: absolute;
        top: 50%;
        right: 7px;
        width: 8px;
        height: 8px;
        border-top: 1px solid var(--jellice-news-pink);
        border-right: 1px solid var(--jellice-news-pink);
        transform: translateY(-35%) rotate(45deg);
    }

    .jellice-news-block .move_arrow_btn span::after {
        content: "";
        position: absolute;
        left: 7px;
        top: 50%;
        width: 10px;
        height: 1px;
        background: var(--jellice-news-pink);
        transform: translateY(-50%);
    }

    .jellice-news-block .post_line_wrap {
        display: flex;
        flex-direction: column;
    }

    .jellice-news-block article {
        padding: 36px 0;
    }

    .jellice-news-block article+article {
        border-top: 1px solid var(--jellice-news-gray);
    }

    .jellice-news-block article:last-child {
        border-bottom: 1px solid var(--jellice-news-gray);
    }

    .jellice-news-block article a {
        display: block;
        color: inherit;
        text-decoration: none;
    }

    .jellice-news-block article a:hover {
        opacity: 0.7;
    }

    .jellice-news-block dl {
        display: grid;
        grid-template-columns: 220px 1fr;
        gap: 38px 60px;
        align-items: center;
        margin: 0;
    }

    .jellice-news-block .catch img,
    .jellice-news-block .jellice-news-placeholder {
        width: 100%;
        height: 160px;
        object-fit: cover;
        border-radius: 12px;
        display: block;
        background: #f7f7f7;
    }

    .jellice-news-block .jellice-news-placeholder {
        position: relative;
    }

    .jellice-news-block .jellice-news-placeholder::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, #f4f4f4, #ededed);
    }

    .jellice-news-block dd {
        margin: 0;
    }

    .jellice-news-block dd ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .jellice-news-block li.title h3 {
        margin: 0 0 30px 0;
        font-size: 18px;
        line-height: 1.6;
        font-weight: 400;
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    .jellice-news-block li.date {
        font-size: 15px;
        letter-spacing: 0.02em;
    }

    .jellice-news-block .show-for-medium {
        display: block;
    }

    .jellice-news-block .show-for-small-only {
        display: none;
    }

    @media (min-width: 768px) {
        .jellice-news-block .h_title {
            padding-left: 40px;
            font-size: clamp(40px, 3.6vw, 45px);
            font-weight: 300;
        }

        .jellice-news-block .move_arrow_btn {
            color: #222222;
            font-size: 18px;
            text-decoration: none !important;
        }

        .jellice-news-block .move_arrow_btn span {
            border: 1px solid #222222;
        }

        .jellice-news-block .move_arrow_btn span::before {
            border-top: 1px solid #222222;
            border-right: 1px solid #222222;
        }

        .jellice-news-block .move_arrow_btn span::after {
            background: #222222;
        }
    }

    @media (max-width: 921px) {
        .jellice-news-block {
            margin-bottom: 80px;
        }

        .jellice-news-heading {
            margin-bottom: 60px;
        }

        .jellice-news-block .post_line_wrap {
            align-items: center;
        }

        .jellice-news-block dl {
            grid-template-columns: 1fr;
            gap: 24px;
        }

        .jellice-news-block .catch img,
        .jellice-news-block .jellice-news-placeholder {
            height: 220px;
        }

        .jellice-news-block .show-for-medium {
            display: none;
        }

        .jellice-news-block .show-for-small-only {
            display: block;
            text-align: center;
            margin: 20px 0 0;
        }

        .jellice-news-block article {
            padding: 50px 0;
        }

        .jellice-news-block article:last-child {
            border-bottom: 1px solid var(--jellice-news-gray);
        }
    }

    @media (max-width: 640px) {
        .jellice-news-block {
            padding-top: 10px;
        }

        .jellice-news-block .inner {
            padding: 0 16px;
        }

        .jellice-news-heading {
            flex-direction: row;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            margin-bottom: 30px;
        }

        .jellice-news-block .h_title {
            font-size: 30px;
            font-weight: 300;
            margin: 0;
            padding-left: 18px;
        }

        .jellice-news-block .h_title::before {
            top: 18px;
        }

        .jellice-news-block .show-for-medium {
            display: none;
        }

        .jellice-news-block .show-for-small-only {
            display: none;
        }

        .jellice-news-block .move_arrow_btn {
            color: var(--jellice-news-pink);
            font-size: 12px;
            letter-spacing: 0.06em;
            align-self: flex-end;
            padding-right: 4px;
        }

        .jellice-news-block dl {
            gap: 8px;
        }

        .jellice-news-block .catch img,
        .jellice-news-block .jellice-news-placeholder {
            height: 160px;
            max-width: 320px;
            margin: 0 auto;
            border-radius: 12px;
        }

        .jellice-news-block article {
            width: 100%;
            max-width: 320px;
            background: #ffffff;
            border-radius: 12px;
            box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
            padding: 12px 14px 18px;
            margin: 0 auto 22px;
        }

        .jellice-news-block article {
            padding: 28px 0;
            border: none;
        }

        .jellice-news-block article+article {
            border-top: none;
        }

        .jellice-news-block .catch {
            margin: 0 0 12px 0;
        }

        .jellice-news-block li.title h3 {
            font-size: 17px;
            font-weight: 500;
            margin: 0 0 10px 0;
            padding: 0;
            position: static;
        }

        .jellice-news-block li.title h3::before {
            display: none;
        }

        .jellice-news-block li.date {
            font-size: 14px;
            padding: 0;
            color: #444444;
            letter-spacing: 0.04em;
        }

        .jellice-news-block li.date::before {
            display: none;
        }

        .jellice-news-block .country {
            display: inline-block;
            background: #e9e9e9;
            color: #333333;
            font-size: 13px;
            letter-spacing: 0.08em;
            padding: 10px 22px;
            border-radius: 999px;
            margin-bottom: 14px;
            margin-top: 4px;
        }

        .jellice-news-block .show-for-small-only {
            display: block;
            text-align: center;
            margin-top: 8px;
        }
    }

    /* ==========================
   Post List shortcode (jellice_post_list)
   ========================== */

    .jellice-post-list-block {
        --jellice-post-list-pink: #d2344b;
        --jellice-post-list-gray: #f0f0f0;
        width: 100%;
        margin: 0 auto 100px;
    }

    .jellice-post-list-inner {
        width: 100%;
        margin: 0 auto;
        padding: 0 20px;
    }

    .jellice-post-list-heading {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 20px;
        margin-bottom: 100px;
    }

    .jellice-post-list-block .h_title {
        position: relative;
        margin: 0;
        padding-left: 18px;
        font-size: clamp(40px, 3.6vw, 50px);
        line-height: 1.2;
        font-weight: 400;
    }

    .jellice-post-list-block .h_title::before {
        content: "●";
        position: absolute;
        left: 0;
        top: 24px;
        color: var(--jellice-post-list-pink);
        font-size: 14px;
    }

    .jellice-post-list-wrap {
        display: flex;
        flex-direction: column;
    }

    /* 第一篇文章上方也要有分隔線 */
    .jellice-post-list-block article:first-child {
        border-top: 1px solid var(--jellice-post-list-gray);
    }

    .jellice-post-list-block article {
        padding: 36px 0;
    }

    .jellice-post-list-block article+article {
        border-top: 1px solid var(--jellice-post-list-gray);
    }

    .jellice-post-list-block article:last-child {
        border-bottom: 1px solid var(--jellice-post-list-gray);
    }

    .jellice-post-list-block article a {
        display: block;
        color: inherit;
        text-decoration: none;
    }

    .jellice-post-list-block article a:hover {
        opacity: 0.7;
    }

    .jellice-post-list-block dl {
        display: grid;
        /* 圖片寬 360px，間隔 70px */
        grid-template-columns: 360px 1fr;
        gap: 38px 70px;
        align-items: center;
        margin: 0;
    }

    .jellice-post-list-block .catch img,
    .jellice-post-list-block .jellice-post-list-placeholder {
        /* 圖片寬 360px，高 261px */
        width: 360px;
        height: 261px;
        object-fit: cover;
        border-radius: 12px;
        display: block;
        background: #f7f7f7;
    }

    .jellice-post-list-block .jellice-post-list-placeholder {
        position: relative;
    }

    .jellice-post-list-block .jellice-post-list-placeholder::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, #f4f4f4, #ededed);
        border-radius: 12px;
    }

    .jellice-post-list-block dd {
        margin: 0;
    }

    .jellice-post-list-block dd ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .jellice-post-list-block li.title h3 {
        margin: 0 0 30px 0;
        font-size: 18px;
        line-height: 1.6;
        font-weight: 400;
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    .jellice-post-list-block li.date {
        font-size: 15px;
        letter-spacing: 0.02em;
    }

    .jellice-post-list-block li.country {
        display: inline-block;
        background: #e9e9e9;
        color: #333333;
        font-size: 13px;
        letter-spacing: 0.08em;
        padding: 8px 18px;
        border-radius: 999px;
        margin-bottom: 14px;
    }

    /* Pagination 分頁樣式 */
    .jellice-post-list-pagination {
        margin-top: 60px;
        display: flex;
        justify-content: center;
    }

    .jellice-post-list-pagination ul {
        list-style: none;
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 0;
        padding: 0;
    }

    .jellice-post-list-pagination li {
        margin: 0;
    }

    .jellice-post-list-pagination a,
    .jellice-post-list-pagination span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 40px;
        height: 40px;
        padding: 0 12px;
        border-radius: 8px;
        font-size: 15px;
        text-decoration: none;
        transition: all 0.2s ease;
    }

    .jellice-post-list-pagination a {
        color: #333333;
        background: #f5f5f5;
    }

    .jellice-post-list-pagination a:hover {
        background: var(--jellice-post-list-pink);
        color: #ffffff;
    }

    .jellice-post-list-pagination .current {
        background: var(--jellice-post-list-pink);
        color: #ffffff;
    }

    .jellice-post-list-pagination .dots {
        background: transparent;
        color: #999999;
    }

    /* 上一頁、下一頁箭頭 */
    .jellice-post-list-pagination .prev a,
    .jellice-post-list-pagination .next a {
        background: transparent;
        border: 1px solid #cccccc;
    }

    .jellice-post-list-pagination .prev a:hover,
    .jellice-post-list-pagination .next a:hover {
        border-color: var(--jellice-post-list-pink);
        background: transparent;
    }

    .pagination-prev-arrow,
    .pagination-next-arrow {
        display: inline-block;
        width: 10px;
        height: 10px;
        position: relative;
    }

    .pagination-prev-arrow::before {
        content: "";
        position: absolute;
        top: 55%;
        left: 3px;
        width: 8px;
        height: 8px;
        border-left: 2px solid #333333;
        border-bottom: 2px solid #333333;
        transform: translateY(-35%) rotate(45deg);
    }

    .pagination-next-arrow::before {
        content: "";
        position: absolute;
        top: 55%;
        right: 3px;
        width: 8px;
        height: 8px;
        border-right: 2px solid #333333;
        border-top: 2px solid #333333;
        transform: translateY(-35%) rotate(45deg);
    }

    .jellice-post-list-pagination .prev a:hover .pagination-prev-arrow::before,
    .jellice-post-list-pagination .next a:hover .pagination-next-arrow::before {
        border-color: var(--jellice-post-list-pink);
    }

    /* 空文章提示 */
    .jellice-post-list-empty {
        text-align: center;
        color: #888888;
        padding: 40px 20px;
        font-size: 16px;
    }

    /* 響應式：768px 以上 */
    @media (min-width: 768px) {
        .jellice-post-list-block .h_title {
            padding-left: 40px;
            font-size: clamp(40px, 3.6vw, 45px);
            font-weight: 300;
        }
    }

    /* 響應式：921px 以下 */
    @media (max-width: 921px) {
        .jellice-post-list-block {
            margin-bottom: 80px;
        }

        .jellice-post-list-heading {
            margin-bottom: 60px;
        }

        .jellice-post-list-wrap {
            align-items: center;
        }

        .jellice-post-list-block dl {
            grid-template-columns: 1fr;
            gap: 24px;
        }

        .jellice-post-list-block .catch img,
        .jellice-post-list-block .jellice-post-list-placeholder {
            width: 100%;
            max-width: 360px;
            height: 261px;
        }

        .jellice-post-list-block article {
            padding: 50px 0;
        }

        .jellice-post-list-pagination {
            margin-top: 40px;
        }
    }

    /* 響應式：640px 以下 */
    @media (max-width: 640px) {
        .jellice-post-list-block {
            padding-top: 10px;
        }

        .jellice-post-list-inner {
            padding: 0 16px;
        }

        .jellice-post-list-heading {
            flex-direction: row;
            align-items: center;
            justify-content: flex-start;
            gap: 12px;
            margin-bottom: 30px;
        }

        .jellice-post-list-block .h_title {
            font-size: 30px;
            font-weight: 300;
            margin: 0;
            padding-left: 18px;
        }

        .jellice-post-list-block .h_title::before {
            top: 18px;
        }

        .jellice-post-list-block dl {
            gap: 16px;
        }

        .jellice-post-list-block .catch img,
        .jellice-post-list-block .jellice-post-list-placeholder {
            width: 100%;
            max-width: 100%;
            height: 200px;
            border-radius: 12px;
        }

        .jellice-post-list-block article {
            padding: 28px 0;
        }

        .jellice-post-list-block li.title h3 {
            font-size: 17px;
            font-weight: 500;
            margin: 0 0 10px 0;
        }

        .jellice-post-list-block li.date {
            font-size: 14px;
            color: #444444;
        }

        .jellice-post-list-block li.country {
            font-size: 12px;
            padding: 6px 14px;
            margin-bottom: 10px;
        }

        .jellice-post-list-pagination ul {
            gap: 4px;
        }

        .jellice-post-list-pagination a,
        .jellice-post-list-pagination span {
            min-width: 36px;
            height: 36px;
            font-size: 14px;
        }
    }
}

/* Custom Styles for Jellice Titles */
.twjel-text {
    white-space: nowrap !important;
    position: relative;
    display: inline-block;
}


.twjel-reg {
    font-size: 0.6em;
    vertical-align: super;
    line-height: 0;
    margin-left: 2px;
}

/* ========================================
   全站 Footer 定位修復 (Flexbox)
   確保 footer 始終位於視窗或內容底部
   ======================================== */

/* 頁面主體使用 flex 佈局 */
body.page,
body.single,
body.archive {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
}

/* 主內容區域自動填滿可用空間 */
body.page #page,
body.single #page,
body.archive #page,
#page {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 0 auto !important;
}

/* 內容區域也使用 flex */
body.page .site-content,
body.single .site-content,
body.archive .site-content,
.site-content {
    flex: 1 0 auto !important;
    margin-bottom: 80px !important;
    /* 確保內容與 Footer 之間至少有 80px 間距 */
}

/* Footer 不縮小，始終在底部 */
.site-footer,
footer.site-footer,
footer.elementor-location-footer {
    flex-shrink: 0 !important;
    margin-top: auto !important;
    position: relative !important;
    width: 100% !important;
    z-index: 10;
    /* 確保在背景之上 */
}

/* ========================================
   修復 .bg 容器因 aspect-ratio 導致的跑版問題
   
   策略：JS 動態控制 (配合 functions.php)
   
   原因：
   1. 首頁等頁面依賴 aspect-ratio 維持佈局，不能全域移除。
   2. 內頁 (如 About Jellice) 內容較多，aspect-ratio 會導致高度不足。
   
   解決方案：
   在此處僅設定 overflow: visible。
   實際高度控制交由 JS (functions.php) 偵測：
   如果內容溢出 (scrollHeight > clientHeight)，則用 JS 撐開 min-height。
   ======================================== */

.bg {
    overflow: visible !important;
}

/* 確保 .bg 內的 Elementor 容器也能正確顯示 */
.bg>.e-con-inner,
.bg .e-con-inner {
    overflow: visible !important;
}

/* ========================================
   16. Mobile Footer Layout (手機版 Footer 排版)
   ======================================== */

.footer-mobile-lang-switcher {
    display: none;
    /* Desktop 隱藏 */
}

@media (max-width: 767px) {

    /* 重置縮放與強制換行 */
    [data-id="2712536"],
    [data-id="88cb6dc"],
    [data-id="3be6eb8"] {
        zoom: 1 !important;
        flex-wrap: wrap !important;
        flex-direction: column !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        display: flex !important;
    }

    /* 主容器間距 */
    [data-id="2712536"] {
        padding: 60px 20px 0 20px !important;
        /* Bottom padding handled by last element margin */
    }

    /* 1. Logo 區域 (假設是第一個欄位) */
    [data-id="88cb6dc"]>.elementor-element:first-child {
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 140px !important;
        /* Logo 與下方列表的大間距 */
    }

    /* Logo 圖片大小 */
    [data-id="88cb6dc"]>.elementor-element:first-child img {
        max-width: 180px !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    /* 手機版語言切換器顯示 */
    .footer-mobile-lang-switcher {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 10px !important;
        margin-top: 63px !important;
        width: 100% !important;
    }

    .footer-mobile-lang-switcher a {
        color: #555555 !important;
        font-size: 13px !important;
        text-decoration: none !important;
        letter-spacing: 0.5px !important;
        font-family: inherit !important;
    }

    .footer-mobile-lang-switcher .sep {
        color: #cccccc !important;
        font-size: 12px !important;
        margin: 0 5px !important;
        /* 增加分隔線兩側間距 */
    }

    /* 2. 內容欄位 (About, Product, etc.) */
    [data-id="88cb6dc"] {
        margin-bottom: 68px !important;
        /* 聯繫我們(最後一個區塊)與下方橫線間距 68px */
    }

    [data-id="88cb6dc"]>.elementor-element:not(:first-child) {
        width: 100% !important;
        margin-bottom: 30px !important;
        /* 區塊間距 */
        display: block !important;
        padding-left: 60px !important;
        box-sizing: border-box !important;
    }

    /* 移除最後一個區塊的 margin-bottom 以確保外層 container 的 margin-bottom 68px 準確 */
    [data-id="88cb6dc"]>.elementor-element:last-child {
        margin-bottom: 0 !important;
    }

    /* 標題樣式 */
    [data-id="88cb6dc"] .elementor-widget-heading .elementor-heading-title {
        font-size: 15px !important;
        color: #333333 !important;
        font-weight: 500 !important;
        margin-bottom: 15px !important;
        letter-spacing: 2px !important;
        text-align: left !important;
    }

    /* 列表項目樣式 */
    [data-id="88cb6dc"] ul,
    [data-id="88cb6dc"] li {
        text-align: left !important;
        justify-content: flex-start !important;
    }

    [data-id="88cb6dc"] .elementor-icon-list-item {
        padding-left: 0 !important;
        margin-bottom: 12px !important;
    }

    [data-id="88cb6dc"] .elementor-icon-list-text {
        font-size: 13px !important;
        color: #555555 !important;
        letter-spacing: 1px !important;
    }

    /* 修正列表前的符號 (如果 Elementor 預設有 icon) */
    [data-id="88cb6dc"] .elementor-icon-list-icon {
        display: none !important;
        /* 隱藏原本的 icon，改用 - 號 */
    }

    /* 手動添加 - 號 */
    [data-id="88cb6dc"] .elementor-icon-list-item::before {
        content: "- " !important;
        margin-right: 5px !important;
        color: #555555 !important;
    }

    /* 3. Global Site (使用 Order 移動到最後) (需要確認結構是 sibling)
       如果結構是 [Col1, Col2...] + [RightLinks] 在同一個 flex parent 下
       data-id="88cb6dc" (Columns Parent) 和 data-id="56391d3" (Right Links) 可能不是 siblings?
       If so, flex-direction: column on [data-id="2712536"] WILL stack them vertically.
       [88cb6dc] on Top
       [56391d3] on Bottom.
       Attributes suggest standard Elementor Section -> Column structure.
       Usually 2 Columns in a Section.
       So [2712536] is the Section.
       And [88cb6dc] is Column 1? [56391d3] is Column 2?
       No, 88cb6dc seems to contain multiple sub-columns (Logo, About...), likely an Inner Section.
       And 56391d3 is likely another Column or Widget next to it.

       If [2712536] (Parent) is set to flex-column, then its children (88cb6dc, 56391d3) will stack.
       So checking `[data-id="2712536"] { flex-direction: column !important; }` in my CSS.
       This should work perfectly without JS moving DOM, assuming they are direct children.
    */

    .mobile-global-site-section,
    .jellice-footer-right-links,
    [data-id="56391d3"] {
        width: 100% !important;
        /* margin-top 由上方元素推擠或 margin 處理，這裡設為 0 */
        margin-top: 0 !important;
        margin-bottom: 127px !important;
        /* 全球網站與 Privacy Policy 間距 127px */
        padding-top: 58px !important;
        /* 全球網站與上方橫線間距 58px */
        border-top: 1px solid #eeeeee !important;
        /* 分隔線 */
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        /* 左對齊 */
        padding-left: 60px !important;
    }

    /* Global Site 連結 */
    [data-id="56391d3"] ul {
        padding-left: 0 !important;
        margin-left: 0 !important;
    }

    [data-id="56391d3"] .elementor-icon-list-item {
        justify-content: flex-start !important;
        padding-left: 0 !important;
    }

    [data-id="56391d3"] a {
        font-size: 14px !important;
        color: #333333 !important;
    }

    /* Footer Width Fix for Mobile */
    footer.elementor-location-footer {
        width: 100% !important;
        overflow-x: hidden !important;
    }

    /* Privacy Policy & Copyright Alignment */
    [data-id="3be6eb8"] {
        text-align: center !important;
        align-items: center !important;
        margin-top: 0 !important;
        padding-bottom: 60px !important;
        border-top: none !important;
        /* 確保沒多餘分隔線 */
    }

    [data-id="3be6eb8"] .elementor-widget {
        width: 100% !important;
        margin-bottom: 15px !important;
        text-align: center !important;
    }

    [data-id="3be6eb8"] .elementor-heading-title,
    [data-id="3be6eb8"] p {
        text-align: center !important;
        font-size: 12px !important;
        color: #999999 !important;
    }

    /* 分隔線修正：.jellice-vline-inner 轉為橫線 */
    .jellice-vline-inner {
        width: 100% !important;
        height: 1px !important;
        border-top: 1px solid #eeeeee !important;
        background: transparent !important;
        margin: 20px 0 !important;
        min-height: 1px !important;
    }
}

/* ============================
   Intro 卡片區塊 - 手機版 (Added by Antigravity)
   修正排版與背景圖
   ============================ */
@media (max-width: 639px) {
    body.is-homepage #intro .inner {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        /* 改為兩欄 */
        gap: 20px;
        /* 卡片間距縮小 */
        width: 100% !important;
        padding: 0 0px !important;
        margin: 0 auto !important;
    }

    /* 通用卡片樣式 */
    body.is-homepage #intro .inner>a {
        flex: none;
        width: 100%;
        padding: 20px !important;
        /* 縮小內距 */
        border-radius: 15px;
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        text-decoration: none;
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        overflow: hidden;
    }

    /* 第一張卡片：跨兩欄，比例 4:3 */
    body.is-homepage #intro .inner>a:nth-of-type(1) {
        grid-column: 1 / -1;
        aspect-ratio: 4 / 3 !important;
        min-height: auto !important;
    }

    /* 第二、三張卡片：各佔一欄，直式比例 */
    body.is-homepage #intro .inner>a:nth-of-type(2),
    body.is-homepage #intro .inner>a:nth-of-type(3) {
        grid-column: span 1;
        aspect-ratio: 9 / 16 !important;
        /* 或者改用 min-height 確保夠長 */
        min-height: 280px !important;
    }

    /* 使用桌機版圖片路徑 */
    body.is-homepage #intro .inner>a:nth-of-type(1) {
        background-image: url("/wp-content/uploads/2025/12/homeimg-13.webp") !important;
    }

    body.is-homepage #intro .inner>a:nth-of-type(2) {
        background-image: url("/wp-content/uploads/2025/12/homeimg-14.webp") !important;
    }

    body.is-homepage #intro .inner>a:nth-of-type(3) {
        background-image: url("/wp-content/uploads/2025/12/homeimg-15.webp") !important;
    }

    /* 暗色遮罩 */
    body.is-homepage #intro .inner>a::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, 0.35);
        /* 稍微調淡一點遮罩 */
        z-index: 0;
        border-radius: 15px;
    }

    /* 內容層級 */
    body.is-homepage #intro dl,
    body.is-homepage #intro dt,
    body.is-homepage #intro dd {
        position: relative;
        z-index: 1;
        margin: 0;
    }

    body.is-homepage #intro dl {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
        width: 100%;
    }

    body.is-homepage #intro dt {
        font-size: 2.2rem !important;
        /* 字體稍微縮小以適應小卡片 */
        color: #ffffff;
        line-height: 1.3;
        margin-bottom: 0px;
        font-weight: 300;
    }

    /* 手機版：模擬桌機 Hover 行為 */

    /* 1. 預設：第一張顯示，其他隱藏 */
    body.is-homepage #intro .inner>a p.move_arrow_btn {
        opacity: 0;
        /* 預設全隱藏 */
        transition: opacity 0.3s ease;
        color: #ffffff;
        font-size: 1.2rem !important;
        letter-spacing: 0.05em;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        align-self: flex-end;
        margin-bottom: 0px;
        margin-top: auto;
    }

    body.is-homepage #intro .inner>a:nth-of-type(1) p.move_arrow_btn {
        opacity: 1;
        /* 第一張預設顯示 */
    }

    /* 2. Hover / Active 時顯示該卡按鈕 */
    body.is-homepage #intro .inner>a:hover p.move_arrow_btn,
    body.is-homepage #intro .inner>a:active p.move_arrow_btn {
        opacity: 1 !important;
    }

    /* 3. 當有卡片被 Hover 時，隱藏原本顯示的第一張 (若在此時非 Hover 狀態) */
    body.is-homepage #intro .inner:has(> a:hover)>a:first-of-type:not(:hover) p.move_arrow_btn,
    body.is-homepage #intro .inner:has(> a:active)>a:first-of-type:not(:active) p.move_arrow_btn {
        opacity: 0;
    }

    /* 第一張卡片的按鈕與標題可以大一點 (因為空間夠) */
    body.is-homepage #intro .inner>a:nth-of-type(1) dt {
        font-size: 2.6rem !important;
    }

    body.is-homepage #intro .inner>a:nth-of-type(1) p.move_arrow_btn {
        font-size: 1.4rem !important;
    }

    /* 隱藏下方兩張小卡片的「瞭解更多」文字，只留箭頭？
     根據截圖似乎沒有隱藏，但為了排版可能需要調整。
     這裡先保留文字，也可以考慮用 CSS 隱藏 text node 只留 span */

    body.is-homepage #intro p.move_arrow_btn span {
        display: inline-block;
        width: 30px !important;
        height: 30px !important;
        border-radius: 50%;
        border: 1px solid #ffffff !important;
        position: relative;
        flex-shrink: 0;
    }

    /* 箭頭樣式 */
    body.is-homepage #intro p.move_arrow_btn span::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px !important;
        height: 1px !important;
        background: #ffffff;
        transform: translate(-60%, -50%);
    }

    body.is-homepage #intro p.move_arrow_btn span::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 6px !important;
        height: 6px !important;
        border-top: 1px solid #ffffff;
        border-right: 1px solid #ffffff;
        transform: translate(-35%, -50%) rotate(45deg);
    }
}

/* ==========================
   Intro 卡片區塊 (660b8d3) 手機版修正
   ========================== */
@media (max-width: 768px) {

    /* 標題設定：包含通用與第一張卡片 */
    body.is-homepage #intro dt,
    body.is-homepage #intro .inner>a:nth-of-type(1) dt {
        font-size: 22px !important;
    }

    /* 箭頭按鈕設定：包含通用與第一張卡片 */
    body.is-homepage #intro p.move_arrow_btn,
    body.is-homepage #intro .inner>a p.move_arrow_btn,
    body.is-homepage #intro .inner>a:nth-of-type(1) p.move_arrow_btn {
        font-size: 17px !important;
    }
}

/* ==========================
   Privacy Policy Footer Container (3be6eb8)
   ========================== */
@media (max-width: 768px) {
    .elementor-element-3be6eb8 {
        padding-bottom: 0px !important;
    }
}

/* ==========================
   Footer 手機版修正
   ========================== */
@media (max-width: 768px) {
    .elementor-element-0e438de {
        margin-bottom: 80px !important;
    }

    .elementor-element-6078ecb {
        margin-bottom: 0px !important;
    }

    .elementor-element-f4b08d1 {
        margin-bottom: 10px !important;
    }

    .elementor-element-62d7f36 {
        padding-bottom: 0px !important;
    }

    /* 確保 3be6eb8 padding 為 0 (之前已加過，這裡再次確保) */
    .elementor-element-3be6eb8 {
        padding-bottom: 0px !important;
    }

    /* 移除 min-height */
    .elementor-534 .elementor-element.elementor-element-3be6eb8 {
        min-height: unset !important;
    }
}

/* ==========================
   Mobile News Layout (3a8b0d6)
   - 只顯示第一篇文章
   - 樣式客製化 (與電腦版一致)
   ========================== */
@media (max-width: 768px) {

    /* 0. Section Title ("News") */
    body .elementor-element-3a8b0d6 .h_title {
        font-size: 45px !important;
        font-weight: 300 !important;
        color: #222222 !important;
        margin-left: -2px !important;
        margin-bottom: 30px !important;
        position: relative !important;
        padding-left: 18px !important;
    }

    body .elementor-element-3a8b0d6 .h_title::before {
        content: "●";
        position: absolute;
        left: 0;
        top: 5px;
        color: #d2344b;
        font-size: 14px;
    }

    /* 0.1 Hide desktop link on mobile */
    body .elementor-element-3a8b0d6 .in_site_link.show-for-medium {
        display: none !important;
    }

    /* 0.2 Remove dots from specific list items on mobile */
    body .elementor-element-3a8b0d6 li.title h3::before,
    body .elementor-element-3a8b0d6 li.date::before {
        display: none !important;
        content: none !important;
    }

    /* 0.3 Reset UL padding */
    body .elementor-element-3a8b0d6 ul {
        padding-left: 0 !important;
    }

    /* 1. 只顯示第一篇文章 */
    body .elementor-element-3a8b0d6 article:nth-of-type(n+2) {
        display: none !important;
    }

    /* 2. 文章容器樣式重置 */
    body .elementor-element-3a8b0d6 .jellice-news-block article {
        padding: 0 !important;
        border: none !important;
        margin-bottom: 20px !important;
    }

    /* 3. 連結區塊 */
    body .elementor-element-3a8b0d6 article a {
        display: block !important;
    }

    /* 3.1 VIEW MORE Arrow Button Styling Override */
    body .elementor-element-3a8b0d6 .move_arrow_btn span {
        width: 24px !important;
        height: 24px !important;
        border: 1px solid #d2344b !important;
        border-radius: 50% !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        /* Reset padding if necessary */
        padding: 0 !important;
    }

    body .elementor-element-3a8b0d6 .move_arrow_btn span::before {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        right: 7px !important;
        width: 8px !important;
        height: 8px !important;
        border-top: 1px solid #d2344b !important;
        border-right: 1px solid #d2344b !important;
        transform: translateY(-50%) rotate(45deg) !important;
    }

    body .elementor-element-3a8b0d6 .move_arrow_btn span::after {
        content: "" !important;
        position: absolute !important;
        left: 7px !important;
        top: 50% !important;
        width: 10px !important;
        height: 1px !important;
        background: #d2344b !important;
        transform: translateY(-50%) !important;
    }

    /* 4. DL/DD/DT 重置為區塊堆疊 */
    body .elementor-element-3a8b0d6 dl,
    body .elementor-element-3a8b0d6 dd,
    body .elementor-element-3a8b0d6 dt {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    /* 5. 圖片樣式 (.catch) */
    body .elementor-element-3a8b0d6 .catch {
        margin-bottom: 20px !important;
    }

    body .elementor-element-3a8b0d6 .catch img,
    body .elementor-element-3a8b0d6 .jellice-news-placeholder {
        border-radius: 20px !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4/3 !important;
        object-fit: cover !important;
        max-width: none !important;
    }

    /* 6. List Items - Remove Markers */
    body .elementor-element-3a8b0d6 li.title,
    body .elementor-element-3a8b0d6 li.date {
        list-style: none !important;
        display: block !important;
    }

    body .elementor-element-3a8b0d6 li.title::marker,
    body .elementor-element-3a8b0d6 li.date::marker {
        content: none !important;
        display: none !important;
    }

    /* 7. Title Text Styling */
    body .elementor-element-3a8b0d6 li.title h3 {
        font-size: 18px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        color: #222222 !important;
        margin: 0 0 10px 0 !important;
        padding: 0 !important;
    }

    /* 8. Date Text Styling */
    body .elementor-element-3a8b0d6 li.date {
        font-size: 15px !important;
        font-weight: 400 !important;
        color: #222222 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* 9. View All Button Container - Centered */
    body .elementor-element-3a8b0d6 .in_site_link.show-for-small-only {
        display: block !important;
        text-align: center !important;
        margin-top: 40px !important;
        width: 100% !important;
    }

    /* 10. View All Button Styling */
    body .elementor-element-3a8b0d6 .move_arrow_btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        font-size: 16px !important;
        font-weight: 400 !important;
        color: #222222 !important;
        text-decoration: none !important;
        letter-spacing: 1px !important;
    }

    /* 11. Arrow Circle */
    body .elementor-element-3a8b0d6 .move_arrow_btn span {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 28px !important;
        height: 28px !important;
        border: 1px solid #d2344b !important;
        border-radius: 50% !important;
        position: relative !important;
        padding: 0 !important;
        margin-left: 8px !important;
    }

    /* 12. Arrow Inside Circle */
    body .elementor-element-3a8b0d6 .move_arrow_btn span::before {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 6px !important;
        height: 6px !important;
        border-top: 1.5px solid #d2344b !important;
        border-right: 1.5px solid #d2344b !important;
        transform: translate(-30%, -50%) rotate(45deg) !important;
    }

    /* Remove the arrow shaft (::after) */
    body .elementor-element-3a8b0d6 .move_arrow_btn span::after {
        content: "" !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 10px !important;
        height: 1px !important;
        background: #d2344b !important;
        transform: translate(-50%, -50%) !important;
    }

    /* Footer Mobile Language Switcher */
    .footer-mobile-lang-switcher {
        margin-top: 20px !important;
    }

    /* Footer First Element Spacing */
    [data-id="88cb6dc"]>.elementor-element:first-child {
        margin-bottom: 80px !important;
    }

    /* Elementor Container 6078ecb */
    .elementor-element.elementor-element-6078ecb.e-con {
        margin-bottom: 0px !important;
    }

    /* Elementor Container f4b08d1 */
    .elementor-element.elementor-element-f4b08d1.e-con {
        margin-bottom: 10px !important;
    }

    /* ========================================
       History Page (歷史沿革) Mobile Fix
       ======================================== */

    /* Main Background Container - Remove aspect-ratio and fix dimensions */
    .elementor-element-26ad6eac.bg,
    body .elementor-element-26ad6eac.bg.e-con {
        aspect-ratio: unset !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
        padding: 30px 20px 60px 20px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        background-size: 200px auto !important;
        background-position: right 20px top 150px !important;
    }

    /* Inner Container */
    .elementor-element-26ad6eac .e-con-inner {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 0 !important;
    }

    /* Title Container */
    .elementor-element-26ad6eac .elementor-element-5d584297 {
        margin-bottom: 30px !important;
    }

    /* Timeline Content Container */
    .elementor-element-26ad6eac .elementor-element-d2a05a6 {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Timeline Wrapper Override */
    .elementor-element-26ad6eac .jellice-timeline-wrapper {
        padding: 20px 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }

    /* Timeline Container Override */
    .elementor-element-26ad6eac .jellice-timeline-container {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Timeline Item Override */
    .elementor-element-26ad6eac .jellice-timeline-item {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding-left: 25px !important;
        margin-bottom: 40px !important;
    }

    /* Year Override */
    .elementor-element-26ad6eac .jellice-timeline-year {
        width: auto !important;
        min-width: auto !important;
        font-size: 24px !important;
        text-align: left !important;
        padding-right: 0 !important;
        margin-bottom: 8px !important;
    }

    /* Dot Override */
    .elementor-element-26ad6eac .jellice-timeline-dot {
        position: absolute !important;
        left: 0 !important;
        top: 10px !important;
        width: 8px !important;
        height: 8px !important;
        margin: 0 !important;
    }

    /* Vertical Line Override */
    .elementor-element-26ad6eac .jellice-timeline::before {
        display: block !important;
        left: 3px !important;
        top: 0 !important;
        bottom: 0 !important;
        width: 2px !important;
    }

    /* Content Override */
    .elementor-element-26ad6eac .jellice-timeline-content {
        width: 100% !important;
        padding-top: 0 !important;
    }

    .elementor-element-26ad6eac .jellice-timeline-content p {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    /* ========================================
       History Page Mobile Section (#mobilehistory)
       data-id: 286c04e0
       與電腦版風格一致
       ======================================== */

    /* Main Mobile Container - 不設背景，使用頁面原有背景 */
    #mobilehistory,
    .elementor-element-286c04e0.bg4 {
        aspect-ratio: unset !important;
        height: auto !important;
        min-height: auto !important;
        padding: 50px 20px 80px 20px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    /* Inner Container */
    #mobilehistory>.e-con-inner {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 0 !important;
    }

    /* Title Container (441e08e2) */
    #mobilehistory .elementor-element-441e08e2 {
        margin-bottom: 40px !important;
        padding-left: 0 !important;
        position: relative !important;
    }

    /* Title - 粉紅色標題配圓點 */
    #mobilehistory .elementor-element-19bc91c1 h2.elementor-heading-title {
        font-size: 32px !important;
        font-weight: 300 !important;
        color: #d2344b !important;
        letter-spacing: 3px !important;
        margin: 0 !important;
        padding-left: 20px !important;
        position: relative !important;
        display: inline-block !important;
    }

    /* 標題左側粉色圓點 */
    /* 標題左側粉色圓點 - 移除 */
    #mobilehistory .elementor-element-19bc91c1 h2.elementor-heading-title::before {
        content: none !important;
        display: none !important;
    }

    /* Shortcode Container (1450f72) */
    #mobilehistory .elementor-element-1450f72 {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Timeline Wrapper */
    #mobilehistory .jellice-timeline-wrapper {
        padding: 10px 0 0 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }

    /* Timeline Container */
    #mobilehistory .jellice-timeline-container {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Timeline - 移除預設的 ::before 線條 */
    #mobilehistory .jellice-timeline {
        padding-left: 0 !important;
        position: relative !important;
    }

    /* 時間軸垂直線 - 位於「沿」字下方（約 75px 位置） */
    /* 時間軸垂直線 - 改為在每個 Item 繪製，以便控制結尾 */
    #mobilehistory .jellice-timeline::before {
        display: none !important;
    }

    /* 每個項目的垂直線 */
    #mobilehistory .jellice-timeline-item::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        left: 75px !important;
        /* 原本的位置 */
        top: 9px !important;
        /* 從點的中心開始 (點 top:9px) */
        bottom: -49px !important;
        /* 延伸到下一個項目的開頭 (margin-bottom: 40px) */
        width: 2px !important;
        background-color: #d2344b !important;
        z-index: 0 !important;
    }

    /* 最後一個項目不顯示垂直線 */
    #mobilehistory .jellice-timeline-item:last-child::before {
        display: none !important;
    }

    /* Timeline Item - 使用 Grid 佈局：年份 | 點 | 內容 */
    #mobilehistory .jellice-timeline-item {
        display: grid !important;
        grid-template-columns: 66px 20px 1fr !important;
        grid-template-rows: auto !important;
        gap: 0px !important;
        align-items: start !important;
        margin-bottom: 40px !important;
        position: relative !important;
        opacity: 1 !important;
        transform: none !important;
        padding-left: 0 !important;
    }

    #mobilehistory .jellice-timeline-item:last-child {
        margin-bottom: 0 !important;
    }

    /* 年份文字 - 在點左邊，與內容第一行對齊 */
    #mobilehistory .jellice-timeline-year {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: auto !important;
        min-width: auto !important;
        font-size: 22px !important;
        font-weight: 500 !important;
        color: #d2344b !important;
        text-align: right !important;
        padding-right: 5px !important;
        margin-bottom: 0 !important;
        line-height: 28px !important;
        /* 與內容文字行高對齊 */
    }

    /* 時間軸圓點 - 在年份右邊，垂直居中於年份 */
    #mobilehistory .jellice-timeline-dot {
        grid-column: 2 !important;
        grid-row: 1 !important;
        position: relative !important;
        left: auto !important;
        top: 9px !important;
        /* 調整讓點對齊於文字中線 */
        width: 10px !important;
        height: 10px !important;
        margin: 0 auto !important;
        background-color: #d2344b !important;
        border-radius: 50% !important;
        z-index: 2 !important;
        border: none !important;
    }

    /* 內容區塊 - 在點右邊，與年份同行 */
    #mobilehistory .jellice-timeline-content {
        grid-column: 3 !important;
        grid-row: 1 !important;
        width: 100% !important;
        padding-top: 0 !important;
        padding-left: 10px !important;
    }

    /* 內容文字 */
    #mobilehistory .jellice-timeline-content p {
        font-size: 15px !important;
        font-weight: 400 !important;
        line-height: 28px !important;
        /* 與年份行高一致 */
        color: #333333 !important;
        margin: 0 0 5px 0 !important;
    }

    /* 隱藏手機版分段線 */
    #mobilehistory .jellice-timeline-item::after {
        display: none !important;
    }

}

/* ==========================
   Elementor Heading/Paragraph Fix
   ========================== */
[data-id="3be6eb8"] .elementor-heading-title,
[data-id="3be6eb8"] p {
    text-align: center !important;
    font-size: 16px !important;
    color: #333333 !important;
}

/* ==========================
   Mobile Product Grid Layout Fix
   ========================== */
@media (max-width: 767px) {

    /* Force 1 column layout for mobile/small tablet and enable flex for ordering */
    .jellice-product-grid-wrapper {
        grid-template-columns: 1fr !important;
        display: flex !important;
        flex-direction: column !important;
    }

    /* Preserve Order 1-4 (Cat 1 & 2) - Already Img, Txt / Img, Txt */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(1) {
        order: 1;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(2) {
        order: 2;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(3) {
        order: 3;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(4) {
        order: 4;
    }

    /* Swap Order 5-8 (Cat 3 & 4) - Original: Txt, Img -> New: Img, Txt */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(5) {
        order: 6;
    }

    /* Txt -> 6 */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(6) {
        order: 5;
    }

    /* Img -> 5 */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(7) {
        order: 8;
    }

    /* Txt -> 8 */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(8) {
        order: 7;
    }

    /* Img -> 7 */

    /* Preserve Order 9-12 (Cat 5 & 6) - Already Img, Txt / Img, Txt */
    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(9) {
        order: 9;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(10) {
        order: 10;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(11) {
        order: 11;
    }

    .jellice-product-grid-wrapper .jellice-grid-item:nth-child(12) {
        order: 12;
    }
}

/* ==========================
   News Page Background Fix
   ========================== */
/* ==========================
   News Page Background Fix
   ========================== */

/* Apply full width layout and background properties globally (Desktop & Tablet) */
.bgm {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    width: 100% !important;
}

/* Remove container padding globally to ensure alignment */
.ast-container:has(.bgm) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 一般桌面螢幕 (1025px - 2559px)：保留各頁面設定的 aspect-ratio */
/* 這裡不做額外設定，讓 Elementor 各頁面的 .bg 設定正常生效 */

/* 超大螢幕 (2560px 以上)：移除 aspect-ratio，改用 min-height 避免過高空白 */
@media screen and (min-width: 2560px) {
    .bgm {
        /* 超大螢幕時移除固定 aspect-ratio，改用動態高度適應內容 */
        aspect-ratio: unset !important;
        min-height: 100vh;
        height: auto !important;
    }
}

/* ==========================
   12. 手機版 News 列表排版修正 (2025-12-16)
   Target: #mobilenews ([jellice_post_list])
   ========================== */

@media (max-width: 768px) {

    /* 容器設定：單欄排列 */
    #mobilenews .jellice-post-list-wrap,
    .mness .jellice-post-list-wrap,
    .mness .post_line_wrap {
        display: flex;
        flex-direction: column;
        gap: 40px !important;
        /* 項目間距 */
    }

    /* 每個項目容器歸零 */
    #mobilenews .jellice-post-list-item,
    .mness .jellice-post-list-item,
    .mness article {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
    }

    /* 連結區塊 */
    #mobilenews .jellice-post-list-item a,
    .mness .jellice-post-list-item a,
    .mness article a {
        display: block;
        text-decoration: none;
    }

    /* 確保內容垂直排列 */
    #mobilenews .jellice-post-list-item dl,
    .mness .jellice-post-list-item dl,
    .mness article dl {
        display: flex;
        flex-direction: column;
        margin: 0 !important;
    }

    /* === 1. 圖片區域 === */
    #mobilenews .jellice-post-list-item .catch,
    .mness .jellice-post-list-item .catch,
    .mness article .catch {
        width: 100% !important;
        margin: 0 0 15px 0 !important;
        padding: 0 !important;
        float: none !important;
        border-radius: 20px;
        overflow: hidden;
        /* 設定 3:2 比例容器 */
        aspect-ratio: 3 / 2;
    }

    #mobilenews .jellice-post-list-item .catch img,
    .mness .jellice-post-list-item .catch img,
    .mness article .catch img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
        border-radius: 20px;
        display: block;
    }

    /* === 2. 文字內容區域 === */
    #mobilenews .jellice-post-list-item dd,
    .mness .jellice-post-list-item dd,
    .mness article dd {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        float: none !important;
    }

    #mobilenews .jellice-post-list-item dd ul,
    .mness .jellice-post-list-item dd ul,
    .mness article dd ul {
        display: flex;
        flex-direction: column;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }

    /* 隱藏分類 (設計稿無顯示) */
    #mobilenews .jellice-post-list-item .country,
    .mness .jellice-post-list-item .country,
    .mness article .country {
        display: none !important;
    }

    /* === 3. 標題樣式 === */
    #mobilenews .jellice-post-list-item .title,
    .mness .jellice-post-list-item .title,
    .mness article .title {
        order: 2;
        margin-bottom: 8px !important;
        text-align: left !important;
        width: 100% !important;
    }

    #mobilenews .jellice-post-list-item h3,
    .mness .jellice-post-list-item h3,
    .mness article h3 {
        font-size: 16px !important;
        line-height: 1.5 !important;
        font-weight: 500 !important;
        /* 視覺上不粗 */
        color: #333333 !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        /* 確保換行 */
    }

    /* === 4. 日期樣式 === */
    #mobilenews .jellice-post-list-item .date,
    .mness .jellice-post-list-item .date,
    .mness article .date {
        order: 3;
        font-size: 14px !important;
        color: #666666 !important;
        text-align: left !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        font-weight: 400 !important;
    }

    /* 時間標籤內文字 */
    #mobilenews .jellice-post-list-item .date time,
    .mness .jellice-post-list-item .date time,
    .mness article .date time {
        color: #333333 !important;
    }
}

/* ========================================
   單一文章頁面（single-post）
   使用 Elementor Theme Builder 模板 post-1425
   ======================================== */

/* 一般螢幕：維持 aspect-ratio */
body.single-post .elementor-element-22af3c8f.bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 2667 / 2554 !important;
}

/* 平板專用設定 */
@media (max-width: 1024px) {
    body.single-post .elementor-element-22af3c8f.bg {
        aspect-ratio: 2667 / 2554 !important;
    }
}

/* ==========================
   Single Post 大螢幕修正 (螢幕寬度 >= 1920px)
   問題：大螢幕下固定 aspect-ratio 會造成下方大片空白
   解決方案：只在大螢幕移除 aspect-ratio，讓高度自適應內容
   ========================== */
@media screen and (min-width: 1920px) {
    body.single-post .elementor-element-22af3c8f.bg {
        aspect-ratio: unset !important;
        height: auto !important;
        min-height: auto !important;
        padding-bottom: 80px !important;
    }
}
/* ========================== Single Post 圖片與標題重疊修正 問題：Featured Image 容器有固定 min-height: 516px， 搭配 justify-content: center 導致大圖溢出，與下方標題重疊 解決方案： 1. 移除 .bg 容器的固定 aspect-ratio（所有螢幕尺寸） 2. 讓 Featured Image 容器自動撐高 3. 移除 widget-container 多餘的 margin-top ========================== */ body.single-post .elementor-element-22af3c8f.bg { aspect-ratio: unset !important; height: auto !important; }  body.single-post .elementor-element-13a0a44d { min-height: auto !important; height: auto !important; }  body.single-post .elementor-element-5cab362 > .elementor-widget-container { margin-top: 0 !important; }

/* ==========================
   Single Post 手機版樣式修正
   問題：Elementor Theme Builder 中手機版 Post Content widget 無法正常渲染
   解決方案：在手機版強制顯示桌面版容器，並調整其樣式
   ========================== */
@media (max-width: 767px) {

    /* 強制顯示桌面版的 .bg 容器（覆蓋 elementor-hidden-mobile） */
    body.single-post .elementor-element-22af3c8f.bg.elementor-hidden-mobile {
        display: flex !important;
    }

    /* 隱藏手機版的獨立容器（避免重複顯示 Featured Image 等） */
    body.single-post .elementor-element-0814d29 {
        display: none !important;
    }

    /* 調整桌面版容器在手機版的樣式 */
    body.single-post .elementor-element-22af3c8f.bg {
        aspect-ratio: unset !important;
        height: auto !important;
        min-height: auto !important;
        padding: 20px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    /* 調整 Featured Image 在手機版的樣式 */
    body.single-post .elementor-element-22af3c8f .elementor-element-5cab362 img {
        width: 100% !important;
        height: auto !important;
        border-radius: 15px !important;
    }

    body.single-post .elementor-element-22af3c8f .elementor-element-5cab362>.elementor-widget-container {
        margin: 0 !important;
    }

    /* 調整標題在手機版的樣式 */
    body.single-post .elementor-element-22af3c8f .elementor-element-26cf2190 .elementor-heading-title {
        font-size: 22px !important;
    }

    /* 調整內容區在手機版的間距 */
    body.single-post .elementor-element-22af3c8f .elementor-element-9873eb2 {
        margin-top: 20px !important;
        padding: 0 10px !important;
    }

    /* 移除 Featured Image 容器的 min-height */
    body.single-post .elementor-1425 .elementor-element.elementor-element-13a0a44d {
        min-height: unset !important;
        --min-height: unset !important;
    }

    /* Post Content 內容不要跑出邊界 */
    body.single-post .elementor-widget-theme-post-content,
    body.single-post .elementor-widget-theme-post-content .elementor-widget-container,
    body.single-post .elementor-widget-theme-post-content .elementor-widget-container * {
        max-width: 100% !important;
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
        word-break: break-word !important;
    }

    /* 確保連結不會超出容器 */
    body.single-post .elementor-widget-theme-post-content a {
        word-break: break-all !important;
    }

    /* 確保圖片不會超出容器 */
    body.single-post .elementor-widget-theme-post-content img {
        max-width: 100% !important;
        height: auto !important;
    }
}

/* ==========================
   collameta 頁面圖標對齊設置
   ========================== */

/* 確保圖標與文字水平對齊 */
.wp-image-2551 {
    vertical-align: middle !important;
    display: inline-block !important;
    margin-left: 8px !important;
    transform: translateY(-2px) !important;
    position: relative !important;
}

/* 如果圖標在連結內 */
a .wp-image-2551 {
    vertical-align: middle !important;
    display: inline-block !important;
    transform: translateY(-2px) !important;
    position: relative !important;
}

/* 確保包含圖標的段落或標題也使用適當的對齊 */
p:has(.wp-image-2551),
h1:has(.wp-image-2551),
h2:has(.wp-image-2551),
h3:has(.wp-image-2551),
h4:has(.wp-image-2551),
span:has(.wp-image-2551) {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* 針對 collameta 頁面特定調整 */
body.is-collameta .wp-image-2551 {
    vertical-align: middle !important;
    display: inline-block !important;
    margin-left: 8px !important;
    transform: translateY(-2px) !important;
    position: relative !important;
}

/* ==========================
   collameta 頁面背景區塊層級設置
   ========================== */

/* 上方背景區塊 - 設置較高的 z-index */
body.is-collameta .elementor-element.elementor-element-352256c3 {
    position: relative !important;
    z-index: 2 !important;
    margin-bottom: 0 !important;
}

/* 下方背景區塊 - 設置較低的 z-index */
body.is-collameta .elementor-element.elementor-element-45abd47e {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
}

/* 移除兩個區塊之間的間距，確保背景無縫連接 */
body.is-collameta .elementor-element.elementor-element-352256c3 .elementor-container {
    padding-bottom: 0 !important;
}

body.is-collameta .elementor-element.elementor-element-45abd47e .elementor-container {
    padding-top: 0 !important;
}

/* ==========================
   collameta 頁面特點區塊手機版佈局
   ========================== */

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

    /* 特點區塊的行容器改為 Grid 佈局 */
    body.is-collameta .elementor-element-352256c3 .elementor-row,
    body.is-collameta .elementor-element-352256c3 .elementor-container>.elementor-row {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        width: 100% !important;
    }

    /* 前 3 個欄位：佔據第一列 */
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(1),
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(2),
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(3) {
        grid-row: 1 !important;
        grid-column: span 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 後 2 個欄位：佔據第二列，各佔 1.5 格寬度 */
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(4) {
        grid-row: 2 !important;
        grid-column: 1 / 3 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(5) {
        grid-row: 2 !important;
        grid-column: 3 / 4 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 白色垂直虛線分隔 - 第一列的前兩個項目 */
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(1),
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(2) {
        border-right: 1px dashed rgba(255, 255, 255, 0.5) !important;
    }

    /* 白色垂直虛線分隔 - 第二列的第一個項目 */
    body.is-collameta .elementor-element-352256c3 .elementor-column:nth-child(4) {
        border-right: 1px dashed rgba(255, 255, 255, 0.5) !important;
    }

    /* 確保所有欄位內容居中 */
    body.is-collameta .elementor-element-352256c3 .elementor-column {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
    }

    /* 調整內距 */
    body.is-collameta .elementor-element-352256c3 .elementor-column-wrap,
    body.is-collameta .elementor-element-352256c3 .elementor-widget-wrap {
        padding: 25px 15px !important;
    }
}

/* ==========================
   collameta 頁面產品特點區塊手機版樣式
   data-id="18b57aac"
   ========================== */

@media (max-width: 767px) {

    /* 將整個容器設為網格佈局 */
    [data-id="18b57aac"] .e-con-inner {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        width: 100% !important;
    }

    /* 第一行的三個容器：高三胜肽濃度、高吸收率、低添加量 */
    [data-id="18b57aac"] [data-id="12d62f7e"],
    [data-id="18b57aac"] [data-id="77738d72"],
    [data-id="18b57aac"] [data-id="35e2571e"] {
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 15px 8px !important;
        position: relative !important;
    }

    /* 第一個項目：高三胜肽濃度 */
    [data-id="18b57aac"] [data-id="12d62f7e"] {
        grid-column: 1 !important;
        border-right: 1px dotted rgba(255, 255, 255, 0.5) !important;
    }

    /* 第二個項目：高吸收率 */
    [data-id="18b57aac"] [data-id="77738d72"] {
        grid-column: 2 !important;
        border-right: 1px dotted rgba(255, 255, 255, 0.5) !important;
    }

    /* 第三個項目：低添加量 */
    [data-id="18b57aac"] [data-id="35e2571e"] {
        grid-column: 3 !important;
    }

    /* 第二行的兩個容器：科研佐證、品質保證 */
    [data-id="18b57aac"] [data-id="52f62c06"],
    [data-id="18b57aac"] [data-id="3d2c4fd6"] {
        grid-row: 2 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 15px 8px !important;
        border-top: 1px dotted rgba(255, 255, 255, 0.5) !important;
        position: relative !important;
    }

    /* 第四個項目：品質保證 */
    [data-id="18b57aac"] [data-id="52f62c06"] {
        grid-column: 1 / 3 !important;
        border-right: 1px dotted rgba(255, 255, 255, 0.5) !important;
    }

    /* 第五個項目：科研佐證 */
    [data-id="18b57aac"] [data-id="3d2c4fd6"] {
        grid-column: 3 !important;
    }

    /* 調整所有文字元素的樣式 */
    [data-id="18b57aac"] .elementor-widget-text-editor {
        width: 100% !important;
        text-align: center !important;
    }

    [data-id="18b57aac"] .elementor-widget-text-editor p {
        margin-bottom: 5px !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
        color: white !important;
    }

    /* 調整圖片容器的樣式 */
    [data-id="18b57aac"] .elementor-widget-image {
        width: 100% !important;
        max-width: 60px !important;
        margin: 5px auto 0 !important;
    }

    [data-id="18b57aac"] .elementor-widget-image img {
        width: 100% !important;
        height: auto !important;
    }

    /* 確保內層容器正確排列 */
    [data-id="18b57aac"] [data-id="12d62f7e"] .e-con-inner,
    [data-id="18b57aac"] [data-id="77738d72"],
    [data-id="18b57aac"] [data-id="35e2571e"],
    [data-id="18b57aac"] [data-id="52f62c06"],
    [data-id="18b57aac"] [data-id="3d2c4fd6"] {
        flex-direction: column !important;
        align-items: center !important;
    }
}

/* 調整「科研佐證」和「品質保證」之間的間距 */
[data-id="87262d3"] {
    gap: 0px !important;
    column-gap: 0px !important;
}

[data-id="87262d3"] .e-con-inner {
    gap: 0px !important;
    column-gap: 0px !important;
}

[data-id="dcaa1b4"],
[data-id="6168146"] {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

/* 虛線點點分隔線樣式（垂直直條虛線） */
body.is-collameta .elementor-element.elementor-element-aeb1ac1 {
    border-right: 2px dotted rgba(255, 255, 255, 0.5) !important;
    padding-right: 0px !important;
    margin-right: 0px !important;
}

body.is-collameta .elementor-element.elementor-element-6879dfe {
    border-right: 2px dotted rgba(255, 255, 255, 0.5) !important;
    padding-right: 0px !important;
    margin-right: 0px !important;
}

body.is-collameta .elementor-element.elementor-element-dcaa1b4 {
    border-right: 2px dotted rgba(255, 255, 255, 0.5) !important;
    padding-right: 0px !important;
    margin-right: 0px !important;
}

/* ========================================
   社長的話加品牌價值頁面（page-id-1100）
   ======================================== */

/* 所有螢幕尺寸：維持 aspect-ratio */
body.is-ceo-message .bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 2667/7123;
    /* 根據圖片比例設定 */
}

/* 平板專用設定 */
@media (max-width: 1024px) {
    body.is-ceo-message .bg {
        aspect-ratio: 2667/7123;
        /* 維持相同比例 */
    }
}

/* 超大螢幕（2560px 以上）：移除 aspect-ratio 避免過高空白 */
@media screen and (min-width: 2560px) {
    body.is-ceo-message .bg {
        aspect-ratio: unset !important;
        min-height: 100vh;
        height: auto !important;
    }
}

/* 當 .bg 是 .ast-container 的子元素時，移除左右 padding */
body.is-ceo-message .ast-container:has(.bg) {
    padding-left: 0;
    padding-right: 0;
}

/* ========================================
   總經理的話頁面（page-id-1245）
   /message-from-the-general-manager/
   ======================================== */

/* 所有螢幕尺寸：維持 aspect-ratio */
body.is-gm-message .bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 2667 / 7458 !important;
}

/* 平板專用設定 */
@media (max-width: 1024px) {
    body.is-gm-message .bg {
        aspect-ratio: 2667 / 7458 !important;
    }
}

/* 超大螢幕（2560px 以上）：移除 aspect-ratio 避免過高空白 */
@media screen and (min-width: 2560px) {
    body.is-gm-message .bg {
        aspect-ratio: unset !important;
        min-height: 100vh;
        height: auto !important;
    }
}

/* 當 .bg 是 .ast-container 的子元素時，移除左右 padding */
body.is-gm-message .ast-container:has(.bg) {
    padding-left: 0;
    padding-right: 0;
}

/* ========================================
   永續經營頁面（page-id-1296）
   /sustainable-management/
   ======================================== */

/* 所有螢幕尺寸：維持 aspect-ratio */
body.is-sustainability .bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 2667 / 4448 !important;
}

/* 平板專用設定 */
@media (max-width: 1024px) {
    body.is-sustainability .bg {
        aspect-ratio: 2667 / 4448 !important;
    }
}

/* 超大螢幕（2560px 以上）：移除 aspect-ratio 避免過高空白 */
@media screen and (min-width: 2560px) {
    body.is-sustainability .bg {
        aspect-ratio: unset !important;
        min-height: 100vh;
        height: auto !important;
    }
}

/* 當 .bg 是 .ast-container 的子元素時，移除左右 padding */
body.is-sustainability .ast-container:has(.bg) {
    padding-left: 0;
    padding-right: 0;
}

/* ========================================
   歷史沿革頁面（page-id-1309）
   /history/
   ======================================== */

/* 所有螢幕尺寸：維持 aspect-ratio */
body.is-history .bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    aspect-ratio: 2667 / 9673 !important;
}

/* 平板專用設定 */
@media (max-width: 1024px) {
    body.is-history .bg {
        aspect-ratio: 2667 / 9673 !important;
    }
}

/* 超大螢幕（2560px 以上）：移除 aspect-ratio 避免過高空白 */
@media screen and (min-width: 2560px) {
    body.is-history .bg {
        aspect-ratio: unset !important;
        min-height: 100vh;
        height: auto !important;
    }
}

/* 當 .bg 是 .ast-container 的子元素時，移除左右 padding */
body.is-history .ast-container:has(.bg) {
    padding-left: 0;
    padding-right: 0;
}

/* ========================================
   CollaMeta 頁面手機版背景 (.is-collameta)
   /collameta/
   元素 ID: 99cd89d
   支援 WPML 翻譯版本
   ======================================== */

/* 手機版容器背景 */
body.is-collameta .elementor-element.elementor-element-99cd89d {
    background-image: url('/wp-content/uploads/2025/12/JELLICE手機-CollaMeta底圖.webp');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    aspect-ratio: 1625 / 5087 !important;
}

/* ========================================
   Safari 專用 CSS (使用 @supports 偵測)
   
   說明：使用 `hanging-punctuation` 屬性來精確定位 Safari
   此屬性僅 Safari 完整支援，Chrome/Firefox/Edge 均不支援
   這是目前最可靠的 Safari 專用 CSS 做法
   ======================================== */

/* Safari 專用樣式 - 首頁的 fd0211f 元素間距調整（適用所有語言版本） */
@supports (hanging-punctuation: first) and (-webkit-appearance: none) {
    body.is-homepage .elementor-element.elementor-element-fd0211f {
        margin-top: 300px;
        margin-bottom: 150px;
    }
}

/* ==========================
   15. 手機版 - 隱藏 JP 語言選項
   版本：2026-01-12
   ========================== */

/* 隱藏 Popup 選單中的 JP 語言項目 */
@media (max-width: 921px) {

    /* WPML 語言切換器 - 隱藏 JP */
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item-ja,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item[lang="ja"],
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item a[hreflang="ja"],
    .ast-mobile-popup-drawer .lang-item.ja,
    .ast-mobile-popup-drawer .lang-item:has(a[hreflang="ja"]),
    /* Polylang 語言切換器 */
    .ast-mobile-popup-drawer .pll-parent-menu-item .lang-item-ja,
    /* 通用選擇器 - 包含 JP/JA 文字的項目 */
    .ast-mobile-popup-drawer .lang-item a[href*="/ja/"],
    .ast-mobile-popup-drawer .lang-item a[href*="/jp/"] {
        display: none !important;
    }

    /* 隱藏 JP 項目右邊的分隔線 (::after) */
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item-ja::after,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item[lang="ja"]::after,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item:has(a[hreflang="ja"])::after,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item:has(a[href*="/ja/"])::after,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item:has(a[href*="/jp/"])::after {
        display: none !important;
        content: none !important;
    }

    /* 如果 JP 是第一個項目，移除下一個項目的分隔線 */
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item-ja+.lang-item::before,
    .ast-mobile-popup-drawer .popup-lang-switcher .lang-item[lang="ja"]+.lang-item::before {
        display: none !important;
    }
}

/* ==========================
   16. 手機橫放時選單滾動修復
   版本：2026-01-12
   ========================== */

/* 手機橫放 (Landscape) 模式 - 選單滾動問題修復 */
@media (max-width: 921px) and (orientation: landscape) {

    /* 確保 Popup Inner 可以滾動 */
    .ast-mobile-popup-drawer .ast-mobile-popup-inner {
        min-height: unset !important;
        max-height: calc(100svh - 40px) !important;
        max-height: calc(100dvh - 40px) !important;
        height: auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        /* 隱藏滾動條但保持可滾動 */
        scrollbar-width: none !important;
        /* Firefox */
        -ms-overflow-style: none !important;
        /* IE/Edge */
    }

    /* Webkit 瀏覽器隱藏滾動條 */
    .ast-mobile-popup-drawer .ast-mobile-popup-inner::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* 確保選單內容區域也可以滾動 */
    .ast-mobile-popup-drawer .ast-mobile-popup-content {
        flex: 1 1 auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        min-height: 0 !important;
        max-height: calc(100svh - 150px) !important;
        max-height: calc(100dvh - 150px) !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* ===== 針對 #ast-hf-mobile-menu 選單的滾動修復 ===== */
    #ast-hf-mobile-menu,
    #ast-hf-mobile-menu.main-header-menu {
        overflow-y: auto !important;
        overflow-x: hidden !important;
        max-height: calc(100svh - 180px) !important;
        max-height: calc(100dvh - 180px) !important;
        height: auto !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        padding-bottom: 80px !important;
        /* 隱藏滾動條但保持可滾動 */
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    /* Webkit 瀏覽器隱藏選單滾動條 */
    #ast-hf-mobile-menu::-webkit-scrollbar,
    #ast-hf-mobile-menu.main-header-menu::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* 確保選單外層容器允許滾動 */
    .ast-mobile-popup-drawer .ast-builder-menu-mobile,
    .ast-mobile-popup-drawer .main-header-bar-navigation,
    .ast-mobile-popup-drawer [class*="ast-builder-menu"] {
        overflow-y: auto !important;
        overflow-x: hidden !important;
        max-height: calc(100svh - 150px) !important;
        max-height: calc(100dvh - 150px) !important;
        flex: 1 1 auto !important;
        -webkit-overflow-scrolling: touch !important;
        /* 隱藏滾動條但保持可滾動 */
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    /* Webkit 瀏覽器隱藏外層容器滾動條 */
    .ast-mobile-popup-drawer .ast-builder-menu-mobile::-webkit-scrollbar,
    .ast-mobile-popup-drawer .main-header-bar-navigation::-webkit-scrollbar,
    .ast-mobile-popup-drawer .ast-mobile-popup-content::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* 確保 popup 容器不會超出螢幕 */
    .ast-mobile-popup-drawer,
    .ast-mobile-popup-drawer.active,
    #ast-mobile-popup.ast-mobile-popup-drawer {
        max-height: 100svh !important;
        max-height: 100dvh !important;
        overflow: hidden !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    /* 底部資訊在橫放模式下改用相對定位 */
    .popup-footer-info,
    .ast-mobile-popup-drawer .privacy_copy {
        position: relative !important;
        bottom: unset !important;
        margin-top: 20px !important;
        padding-top: 15px !important;
        flex-shrink: 0 !important;
    }

    /* 確保子選單展開時不會導致溢出 */
    #ast-hf-mobile-menu .sub-menu {
        position: static !important;
        max-height: none !important;
    }

    /* 調整選單項目間距以適應橫放螢幕 */
    .ast-mobile-popup-drawer .main-header-menu>.menu-item {
        margin-bottom: 20px !important;
    }
}

/* ===== 額外的小螢幕橫放修復 (iPhone SE 等) ===== */
@media (max-width: 667px) and (orientation: landscape) {
    .ast-mobile-popup-drawer .ast-mobile-popup-inner {
        max-height: calc(100svh - 20px) !important;
        max-height: calc(100dvh - 20px) !important;
        padding: 15px !important;
    }

    #ast-hf-mobile-menu,
    #ast-hf-mobile-menu.main-header-menu {
        max-height: calc(100svh - 120px) !important;
        max-height: calc(100dvh - 120px) !important;
        padding-bottom: 60px !important;
    }

    .ast-mobile-popup-drawer .main-header-menu>.menu-item {
        margin-bottom: 15px !important;
    }

    /* 隱藏底部版權資訊以節省空間 */
    .ast-mobile-popup-drawer .popup-footer-info,
    .ast-mobile-popup-drawer .privacy_copy {
        display: none !important;
    }
}

/* ==========================
   17. 外部連結圖示樣式
   版本：2026-01-12
   ========================== */

/* 公司區塊連結樣式 - 讓整個連結區域都可點擊 */
.jellice-company-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

/* 外部連結圖示 - 用於全球據點等頁面 */
.jellice-link-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 4px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c1424f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 16px 16px !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

/* 讓 .jellice-company-link 後面緊接的 .jellice-link-icon 可點擊 */
.jellice-company-link+.jellice-link-icon {
    cursor: pointer !important;
}

/* 備用：如果使用 inner 子元素 */
.jellice-link-icon-inner {
    display: block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c1424f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* ==========================
   18. 英文語系排版調整
   版本：2026-01-14
   說明：英文不需要像中文那樣的字距，重置為 0
   ========================== */

/* 當 body 含有 WPML 英文語系標記時，統一設定 letter-spacing: 0 */
body[class*="lang-en"],
html[lang="en"] body,
html[lang="en-US"] body,
html[lang="en-GB"] body {
    letter-spacing: 0 !important;
}

/* 英文語系下的所有文字元素重置 letter-spacing */
body[class*="lang-en"] *,
html[lang="en"] body *,
html[lang="en-US"] body *,
html[lang="en-GB"] body * {
    letter-spacing: 0 !important;
}

/* ==========================
   19. 英文版 Footer 間距調整
   版本：2026-01-14
   說明：英文版 footer 欄位 bfc43a8 在電腦版使用較小的 row-gap
   ========================== */

/* 英文版電腦版 Footer - bfc43a8 元素 row-gap 調整 */
@media (min-width: 768px) {

    html[lang="en"] .elementor-534 .elementor-element.elementor-element-bfc43a8,
    html[lang="en-US"] .elementor-534 .elementor-element.elementor-element-bfc43a8,
    html[lang="en-GB"] .elementor-534 .elementor-element.elementor-element-bfc43a8 {
        --row-gap: 2px !important;
    }
}

/* 1. 設定父層定位基準，並確保手機版有最小高度 */
body.is-collameta .elementor-element.elementor-element-6879dfe {
    position: relative !important;
    /* 讓偽元素能對齊 */
    border: none !important;
    /* 移除原本不穩定的邊框 */
    min-height: 20px;
    /* 【關鍵】強制給一個最小高度，防止在手機版縮成0 */
    width: 100%;
    /* 確保容器有寬度 */
}

/* 2. 使用偽元素繪製右側虛線 */
body.is-collameta .elementor-element.elementor-element-6879dfe::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    /* 固定在右側 */
    width: 2px;
    /* 線的寬度 */

    /* 這裡設定線條樣式：顏色與虛線 */
    border-right: 2px dotted rgba(255, 255, 255, 0.5);

    display: block !important;
    z-index: 10;
    /* 確保浮在最上層 */
    pointer-events: none;
    /* 讓滑鼠可以穿透，不影響點擊 */
}

/* 3. 針對手機版特別強化 (如果手機版需要不同高度或顯示方式) */
@media (max-width: 767px) {
    body.is-collameta .elementor-element.elementor-element-6879dfe {
        /* 如果手機版這條線總是消失，試著增加這個 min-height */
        min-height: 50px;
    }

    /* 確保手機版偽元素絕對顯示 */
    body.is-collameta .elementor-element.elementor-element-6879dfe::after {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: 100% !important;
        /* 強制填滿高度 */
    }
}

/* ==========================
   20. 手機版電話號碼連結顏色修正
   版本：2026-01-15
   說明：防止手機瀏覽器自動將電話號碼轉為紅色/藍色可點擊連結
   適用：繁體中文、簡體中文、英文 - 聯繫我們頁面
   ========================== */

/* 覆蓋瀏覽器自動生成的 tel: 電話連結顏色 */
a[href^="tel:"],
a[href^="tel:"]:-webkit-any-link {
    color: inherit !important;
    text-decoration: none !important;
}

/* 針對 Elementor 文字編輯器內的電話連結 */
.elementor-widget-text-editor a[href^="tel:"],
.elementor-widget-container a[href^="tel:"] {
    color: inherit !important;
    text-decoration: none !important;
}

/* 聯繫我們頁面 - 確保電話號碼為黑色 */
.elementor-widget-text-editor a[href^="tel:"]:link,
.elementor-widget-text-editor a[href^="tel:"]:visited,
.elementor-widget-text-editor a[href^="tel:"]:hover,
.elementor-widget-text-editor a[href^="tel:"]:active {
    color: #333333 !important;
    text-decoration: none !important;
}

/* iOS Safari 特殊處理 - 防止自動偵測電話號碼變色 */
@media (max-width: 767px) {
    a[href^="tel:"] {
        color: inherit !important;
        text-decoration: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }
}

/* ==========================
   21. 手機橫放選單完整滾動修復 (方案 B)
   版本：2026-01-16
   說明：維持 RWD 手機版，讓整個 popup inner 都可滾動
   ========================== */

/* iPhone 橫放：讓整個 popup inner 都可滾動 */
@media (max-height: 500px) and (orientation: landscape) {

    /* Popup 內層：使用 flex column + overflow-y */
    .ast-mobile-popup-drawer .ast-mobile-popup-inner {
        display: flex !important;
        flex-direction: column !important;
        max-height: calc(100dvh - 20px) !important;
        min-height: unset !important;
        height: auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 15px 20px 20px 20px !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* 移除所有子容器的 overflow 限制 */
    .ast-mobile-popup-drawer .ast-mobile-popup-content,
    .ast-mobile-popup-drawer .ast-builder-menu-mobile,
    .ast-mobile-popup-drawer .main-header-bar-navigation,
    .ast-mobile-popup-drawer .main-header-menu,
    .ast-mobile-popup-drawer #ast-hf-mobile-menu {
        overflow: visible !important;
        max-height: none !important;
        flex: 0 0 auto !important;
    }

    /* Logo 區域精簡 */
    .ast-mobile-popup-drawer .popup-logo-wrapper {
        margin-bottom: 10px !important;
    }

    .ast-mobile-popup-drawer .popup-logo-wrapper .popup-logo {
        max-width: 120px !important;
    }

    /* 語言切換器精簡 */
    .ast-mobile-popup-drawer .popup-lang-switcher {
        margin-bottom: 20px !important;
    }

    /* 選單項目間距縮小 */
    .ast-mobile-popup-drawer .main-header-menu>.menu-item {
        margin-bottom: 15px !important;
    }

    /* 底部資訊改用相對定位（跟隨滾動） */
    .ast-mobile-popup-drawer .popup-footer-info {
        position: relative !important;
        bottom: unset !important;
        margin-top: 25px !important;
        padding: 15px 0 0 0 !important;
        border-top: 1px solid #e0e0e0 !important;
        flex-shrink: 0 !important;
        display: block !important;
    }

    /* 關閉按鈕調整 */
    .ast-mobile-popup-drawer .menu-toggle-close {
        top: 12px !important;
        right: 15px !important;
    }

    /* 確保 popup 背景完整覆蓋 */
    .ast-mobile-popup-drawer,
    .ast-mobile-popup-drawer.active {
        padding: 10px !important;
    }
}

li.country {
    display: none !important;
}

<!-- Design by WPW -->
/* ==========================
   分頁元件手機版修正
   問題：基礎樣式被包在 min-width: 768px 內，手機版無樣式
   修正：全域覆寫，確保所有螢幕尺寸都有正確分頁樣式
   ========================== */
.jellice-post-list-pagination {
    margin-top: 40px;
    display: flex;
    justify-content: center;
}

.jellice-post-list-pagination ul.page-numbers {
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
}

.jellice-post-list-pagination ul.page-numbers li {
    list-style: none !important;
    margin: 0;
}

.jellice-post-list-pagination ul.page-numbers a,
.jellice-post-list-pagination ul.page-numbers span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border-radius: 8px;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.jellice-post-list-pagination ul.page-numbers a {
    color: #333333;
    background: #f5f5f5;
}

.jellice-post-list-pagination ul.page-numbers a:hover {
    background: #d2344b;
    color: #ffffff;
}

.jellice-post-list-pagination ul.page-numbers .current {
    background: #d2344b;
    color: #ffffff;
}

/* 箭頭按鈕：修正選擇器（.next/.prev 在 <a> 本身，非父層） */
.jellice-post-list-pagination ul.page-numbers a.next, .jellice-post-list-pagination ul.page-numbers a.prev { background: transparent; border: none; }  .jellice-post-list-pagination ul.page-numbers a.next:hover, .jellice-post-list-pagination ul.page-numbers a.prev:hover { background: transparent; }











/* 箭頭圖示 */
.pagination-prev-arrow,
.pagination-next-arrow {
    display: inline-block;
    width: 10px;
    height: 10px;
    position: relative;
}

.pagination-prev-arrow::before {
    content: "";
    position: absolute;
    top: 55%;
    left: 3px;
    width: 8px;
    height: 8px;
    border-left: 2px solid #333333;
    border-bottom: 2px solid #333333;
    transform: translateY(-35%) rotate(45deg);
}

.pagination-next-arrow::before {
    content: "";
    position: absolute;
    top: 55%;
    right: 3px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #333333;
    border-top: 2px solid #333333;
    transform: translateY(-35%) rotate(45deg);
}

.jellice-post-list-pagination ul.page-numbers a.next:hover .pagination-next-arrow::before,
.jellice-post-list-pagination ul.page-numbers a.prev:hover .pagination-prev-arrow::before {
    border-color: #d2344b;
}

/* 手機版微調 */
@media (max-width: 640px) {
    .jellice-post-list-pagination ul.page-numbers {
        gap: 4px;
        margin-top: 60px !important;
        justify-content: center;
    }
    .jellice-post-list-pagination ul.page-numbers a,
    .jellice-post-list-pagination ul.page-numbers span {
        min-width: 36px;
        height: 36px;
        font-size: 14px;
    }
}
