/*
Theme Name: Palette Child
Theme URI: https://firstsight.design/cherie/beauty/
Template: palette
Author: firstsight_design
Author URI: https://themeforest.net/user/firstsight_design
Description: Palette is modern, convenient and highly thought-out WordPress theme with fascinating design.
Tags: one-column,two-columns,three-columns,four-columns,left-sidebar,right-sidebar,custom-background,custom-colors,custom-header,custom-menu,editor-style,featured-image-header,featured-images,flexible-header,full-width-template,post-formats,sticky-post,theme-options,translation-ready
Version: 3.3
*/
/* Add your custom CSS Here */
/* CF7 表單「送出訊息」按鈕置中（2026-08-16 覆寫 Palette general.css 的 .art-book-now-wrapper .art-book-now-submit justify-content:flex-end；影響首頁/contact/prices 共用 CF7 form 925） */
.art-book-now-wrapper .art-book-now-submit {
    justify-content: center !important;
    align-items: center !important;
}
/* 桌機置中偏移根因：.wpcf7-spinner visibility:hidden 仍 inline-block 佔位（24px+margin 72px），
   text-align:center 時按鈕視覺偏左 36px。改 absolute 脫離文檔流，送出時 spinner 仍在按鈕右側顯示。 */
.art-book-now-wrapper .wpcf7-spinner {
    position: absolute !important;
    margin-left: 10px !important;
}
/* BookingWP Appointment Form - Hide unnecessary elements 2026-04-27 */
/* 頁面底色統一為米白，避免平板寬度下容器縮窄後露出白色 */
body {
  background-color: rgb(242, 239, 234) !important;
}
/* 隱藏麵包屑 */
.woocommerce .woocommerce-breadcrumb {
    display: none !important;
}
/* 隱藏購物袋圖示（Palette theme basket） */
.s-header__basket-wr {
    display: none !important;
}
/* Elementor N-Tabs - 品牌底線樣式 2026-04-27 Step 6b */
/* tabs 導覽列：靠左對齊 */
.elementor-widget-n-tabs .e-n-tabs-heading {
    justify-content: flex-start !important;
    border-bottom: 1px solid #e0e0e0 !important;
}
/* inactive tab：灰色文字，底線佔位（避免 hover 跳動） */
.elementor-widget-n-tabs .e-n-tab-title {
    background-color: transparent !important;
    border-style: none !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    color: #aaa !important;
    font-weight: 400 !important;
    padding: 10px 20px !important;
    margin-right: 8px !important;
    box-sizing: border-box !important;
    transition: color 0.2s, border-bottom-color 0.2s !important;
}
/* active tab：棕色文字 + 棕色底線 */
.elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] {
    background-color: transparent !important;
    border-bottom: 2px solid #988463 !important;
    color: #988463 !important;
    font-weight: 500 !important;
}
/* hover：棕色文字 + 淺棕底線 */
.elementor-widget-n-tabs .e-n-tab-title:hover {
    background-color: transparent !important;
    color: #988463 !important;
    border-bottom: 2px solid #c4aa89 !important;
}
/* tab 內容區移除邊框 */
.elementor-widget-n-tabs .e-n-tab-content {
    border: none !important;
    padding-top: 20px !important;
}
/* 強制 ▶ 符號顯示為純文字，不套用 emoji 樣式 2026-04-27 */
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.e-n-tab-content p,
.e-n-tab-content li {
    font-variant-emoji: text !important;
}
/* N-Tabs 內容字型對齊 2026-04-29 */
/* 基準：預約步驟文字 Jost 18px weight 300，Tabs 內容小一級 = 16px */
/* selector 用 .e-n-tabs-content（含 s），非 .e-n-tab-content */
.elementor-widget-n-tabs .e-n-tabs-content li,
.elementor-widget-n-tabs .e-n-tabs-content p {
    font-family: 'Jost', sans-serif !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 1.8 !important;
    color: #1a1a1a !important;
}
   N-Tabs 手機版橫排化（全域）
   日期：2026-04-28
   參考：嘿棚 https://www.heystudio.space/personal/
   涵蓋斷點：≤ 767px（Elementor 預設手機斷點）
   ========================================= */
@media (max-width: 767px) {
    /* 強制 tabs 標頭橫向排列，覆蓋 Elementor 預設 Accordion */
    .elementor-widget-n-tabs .e-n-tabs-heading {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        width: 100% !important;
    }

    /* 4 個 tab 平均分配寬度，覆蓋桌機 !important 規則 */
    .elementor-widget-n-tabs .e-n-tab-title {
        flex: 1 1 0 !important;
        text-align: center !important;
        padding: 8px 4px !important;
        font-size: 13px !important;
        white-space: nowrap !important;
        margin-right: 0 !important;
    }

    /* 隱藏 Accordion 模式下的內容區重複頭 */
    .elementor-widget-n-tabs .e-n-tab-title.e-collapse {
        display: none !important;
    }

    /* 強制顯示 tabpanel 區塊 */
    .elementor-widget-n-tabs .e-n-tabs-content {
        display: block !important;
    }

    /* N-Tabs 內容字型（手機）*/
    .elementor-widget-n-tabs .e-n-tabs-content li,
    .elementor-widget-n-tabs .e-n-tabs-content p {
        font-size: 14px !important;
    }
}

/* =========================================
   N-Tabs 平板版橫排化（全域）
   日期：2026-04-29
   涵蓋斷點：768px ~ 1024px
   解決：iPad 寬度下 tabs 換行成兩列的跑版
   ========================================= */
@media (min-width: 768px) and (max-width: 1199px) {
    /* 強制 tabs 標頭橫向排列，禁止 wrap 換行 */
    .elementor-widget-n-tabs .e-n-tabs-heading {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        width: 100% !important;
    }

    /* 4 個 tab 平均分配寬度，覆蓋桌機 !important 規則 */
    .elementor-widget-n-tabs .e-n-tab-title {
        flex: 1 1 0 !important;
        text-align: center !important;
        padding: 10px 4px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
        margin-right: 0 !important;
    }

    /* 隱藏 Accordion 模式下的內容區重複頭（保險規則，平板大多不會觸發 Accordion） */
    .elementor-widget-n-tabs .e-n-tab-title.e-collapse {
        display: none !important;
    }

    /* 強制顯示 tabpanel 區塊 */
    .elementor-widget-n-tabs .e-n-tabs-content {
        display: block !important;
    }

    /* N-Tabs 內容字型（平板）*/
    .elementor-widget-n-tabs .e-n-tabs-content li,
    .elementor-widget-n-tabs .e-n-tabs-content p {
        font-size: 15px !important;
    }
}

/* =========================================
   N-Tabs 手機版 active tab margin 修補
   日期：2026-04-29
   涵蓋斷點：≤ 767px
   問題：Elementor 內建 Accordion 模式邏輯，在我們強制橫排後產生視覺 bug
        - active tab：margin-block-start: 0, margin-block-end: 10px
        - inactive tab：margin-block-start: 10px, margin-block-end: 0
        導致 active tab 的位置與 inactive tab 不對齊（差 10px）
        視覺上呈現：active tab 凸出 / 棕色底線「跑到上方」
   解法：強制清掉手機版所有 tab（含 active）的 margin-block-start / end
   驗證：MCP 實測 4 個 tab 切換時 bottom 全部對齊在同一條線（258）
   ========================================= */
@media (max-width: 767px) {
    .elementor.elementor .elementor-widget-n-tabs.e-n-tabs-mobile .e-n-tabs-heading .e-n-tab-title,
    .elementor.elementor .elementor-widget-n-tabs.e-n-tabs-mobile .e-n-tab-title[aria-selected="true"] {
        margin: 0 !important;
        margin-block-start: 0 !important;
        margin-block-end: 0 !important;
    }
}

/* =========================================
   BookingWP 月曆與時段顯示修正
   日期：2026-04-30
   涵蓋頁面：所有使用 BookingWP 預約商品月曆的頁面
               （/product/portrait/、/portrait_demo/ 等）
   問題 1：BookingWP 預設月曆 td/th 沒有邊框，視覺扁平不易辨識日期欄位
   問題 2：Palette 主題 general.css 的 .story 容器規則污染：
           - 對 .story ul > li::before 加入 icon font 偽元素
             → 時段選項出現菱形符號（◆）
           - 對 .story a 加入 text-decoration: underline
             → 月曆所有日期都被加上底線，覆蓋了 BookingWP 原本
               「有預約日才標底線」的識別功能
   解法：
     1. 全站 BookingWP 月曆 td/th 統一加 1px solid #d1cfd7 邊框
     2. 在 .story 容器內，清掉 .slot-picker 的 li::before 偽元素
     3. 在 .story 容器內，清掉 .ui-datepicker-calendar 內所有 a
        的 text-decoration
   驗證：兩頁觀感拉齊，桌機/平板/手機三斷點皆正常
   ========================================= */
/* 修正 1：BookingWP 月曆加格線（兩頁統一） */
.ui-datepicker-calendar {
    border-collapse: collapse;
}
.wc-appointments-date-picker .ui-datepicker-calendar td,
.wc-appointments-date-picker .ui-datepicker-calendar th {
    border: 1px solid #d1cfd7;
}

/* 修正 2：清掉 Palette 主題 .story 容器染到時段選項的菱形符號 */
.story .slot-picker ul > li::before,
.story .slot-picker ul > li.slot::before,
.story .slot-picker ul > li.slot_heading::before,
.story .slot-picker ul > li.slot_empty::before {
    content: none !important;
}

/* 修正 3：清掉 Palette 主題 .story 容器染到月曆日期的底線 */
.story .ui-datepicker-calendar a,
.story .ui-datepicker-calendar a.ui-state-default {
    text-decoration: none !important;
}

/* =========================================
   Elementor 容器對齊 Palette (Bootstrap 4)
   日期：2026-05-04
   ========================================= */

/* 桌機 992-1199：對齊 Bootstrap max-width: 960px */
@media (min-width: 992px) and (max-width: 1199.98px) {
  .elementor-section.elementor-section-boxed > .elementor-container,
  .e-con {
    max-width: 960px !important;
    --container-max-width: 960px !important;
  }
}

/* 平板 768-991：對齊 Bootstrap max-width: 720px */
@media (min-width: 768px) and (max-width: 991.98px) {
  .elementor-section.elementor-section-boxed > .elementor-container,
  .e-con {
    max-width: 720px !important;
    --container-max-width: 720px !important;
  }
}

/* 平板 576-767：對齊 Bootstrap max-width: 540px */
@media (min-width: 576px) and (max-width: 767.98px) {
  .elementor-section.elementor-section-boxed > .elementor-container,
  .e-con {
    max-width: 540px !important;
    --container-max-width: 540px !important;
  }
}

/* 頂層 .e-con 內部 padding 統一為 15px */
.e-con.e-parent > .e-con-inner {
  padding-left: 15px !important;
  padding-right: 15px !important;
}



/* 還原四個卡片容器的左右 padding（被 .e-con.e-child 全域清零後補回） */
.elementor-3909 .elementor-element-b0ea4de,
.elementor-3909 .elementor-element-51c5ea7,
.elementor-3909 .elementor-element-e232984,
.elementor-3909 .elementor-element-2730a73 {
  padding-left: 2% !important;
  padding-right: 2% !important;
}

/* 還原「公開打卡優惠方案」容器手機版左右 padding */
@media (max-width: 767px) {
  .elementor-3909 .elementor-element-d3aeefe {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}
/* =========================================
   Portrait 手機版指定斷行
   日期：2026-05-08
   範圍：/portrait/ 全頁，所有 .odday-mobile-break
   目的：桌機與平板維持原本不斷行；手機版顯示指定 br 斷行
   ========================================= */
.odday-mobile-break {
  display: none;
}

@media (max-width: 767px) {
  .elementor-3909 .odday-mobile-break {
    display: block;
  }
}

/* =========================================
   Portrait 首屏標語手機版字級調整
   日期：2026-05-08
   範圍：/portrait/，Palette welcome-section widget 720bcd8
   目的：手機版讓「讓真正的你，被好好看見。」維持單行顯示
   ========================================= */
@media (max-width: 767px) {
  .elementor-3909 .elementor-element-720bcd8 .art-welcome-section-title {
    font-size: 30px !important;
    line-height: 45px !important;
  }
}
/* =========================================
   Portrait 形象照說明文字手機版上距調整
   日期：2026-05-08
   範圍：/portrait/，Elementor text-editor widget 042c002
   目的：手機版對齊同頁 heading 與說明文字的 20px 間距
   ========================================= */
@media (max-width: 767px) {
  .elementor-3909 .elementor-element-042c002 {
    margin-top: 20px !important;
  }
}
/* =========================================
   電腦版主選單 dropdown 樣式（≥1241px）
   日期：2026-05-10
   範圍：header.art-header-two 的子選單
   目的：將 Palette 預設「滿寬橫條」改為傳統垂直 dropdown
   ========================================= */
@media (min-width: 1241px) {
  /* 父 li 改為 relative，使子選單以父項為定位基準 */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu li.mega-menu-item.has-submenu {
    position: relative !important;
  }
  /* 子選單盒：白底 + 柔和陰影、垂直排列、min-width 180px、左對齊父項 */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu li.mega-menu-item.has-submenu .sub-nav > ul.sub-menu {
    display: block !important;
    width: auto !important;
    min-width: 180px !important;
    padding: 12px 0 !important;
    border-bottom: none !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
    left: 0 !important;
    right: auto !important;
  }
  /* 子項目：撤銷父主題 width:300px 與 margin:0 20px */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu li.mega-menu-item.has-submenu .sub-nav > ul.sub-menu > li {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* 子選單連結：左對齊 + 內距 + 字色對齊主選單黑色 */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu li.mega-menu-item.has-submenu .sub-nav > ul.sub-menu > li > a {
    padding: 10px 28px !important;
    white-space: nowrap;
    text-align: left;
    color: #000 !important;
  }
  /* 取消所有主選單 hover bar（width 歸零，覆蓋父主題 width:100%） */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu > li:hover > a::before {
    width: 0 !important;
  }
  /* 但 has-submenu 主選單 hover 時：bar 寬度 = 子選單寬度 180px */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu > li.has-submenu:hover > a::before {
    width: 180px !important;
  }
  /* 子選單連結 hover：對齊主選單 hover 品牌棕 #988463 */
  header.art-header-two .art-header-two-content .art-header-bottom nav ul.menu li.mega-menu-item.has-submenu .sub-nav > ul.sub-menu > li:hover > a {
    color: #988463 !important;
  }
}
/* =========================================
   內容清單 bullet 全域規則（最終版 2026-08-07）
   問題：舊規則只寫 `.story ul > li`（直接子層），
         (1) 巢狀清單（ul > li > ul > li）仍套用 Palette fontello 6px → 子項目 bullet 看不見；
         (2) child theme 2026-04-29 舊規則 `.e-n-tabs-content li::before { top:50% !important }`
             用 !important 蓋掉 top:14px → N-Tabs 內 bullet 位置回到兩行中間。
   解法：後代選擇器涵蓋所有層級＋涵蓋 .story / text-editor / N-Tabs 三種容器，
         用 !important 對抗舊規則；slot-picker（BookingWP 時段選項）維持排除。
   ========================================= */
body:not(.elementor-editor-active) .story ul:not(.blocks-gallery-grid):not(.wp-block-archives):not(.slick-dots):not(.art-no-list-style):not(.slot-picker):not(.slot_column) li,
body:not(.elementor-editor-active) .elementor-widget-text-editor ul:not(.slot-picker):not(.slot_column) li,
body:not(.elementor-editor-active) .elementor-widget-n-tabs .e-n-tabs-content ul:not(.slot-picker):not(.slot_column) li {
    list-style-type: none !important;
    padding-left: 18px;
    position: relative;
}
body:not(.elementor-editor-active) .story ul:not(.blocks-gallery-grid):not(.wp-block-archives):not(.slick-dots):not(.art-no-list-style):not(.slot-picker):not(.slot_column) li::before,
body:not(.elementor-editor-active) .elementor-widget-text-editor ul:not(.slot-picker):not(.slot_column) li::before,
body:not(.elementor-editor-active) .elementor-widget-n-tabs .e-n-tabs-content ul:not(.slot-picker):not(.slot_column) li::before {
    content: "" !important;
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #000000;
    position: absolute;
    top: 14px !important; /* 覆蓋 2026-04-29 舊規則 top:50% !important */
    transform: translateY(-50%) !important;
    left: 0;
}
/* Elementor 編輯器預覽同步全域（body.elementor-editor-active） */
body.elementor-editor-active .story ul:not(.blocks-gallery-grid):not(.wp-block-archives):not(.slick-dots):not(.art-no-list-style):not(.slot-picker):not(.slot_column) li,
body.elementor-editor-active .elementor-widget-text-editor ul:not(.slot-picker):not(.slot_column) li,
body.elementor-editor-active .elementor-widget-n-tabs .e-n-tabs-content ul:not(.slot-picker):not(.slot_column) li {
    list-style-type: none !important;
    padding-left: 18px;
    position: relative;
}
body.elementor-editor-active .story ul:not(.blocks-gallery-grid):not(.wp-block-archives):not(.slick-dots):not(.art-no-list-style):not(.slot-picker):not(.slot_column) li::before,
body.elementor-editor-active .elementor-widget-text-editor ul:not(.slot-picker):not(.slot_column) li::before,
body.elementor-editor-active .elementor-widget-n-tabs .e-n-tabs-content ul:not(.slot-picker):not(.slot_column) li::before {
    content: "" !important;
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #000000;
    position: absolute;
    top: 14px !important;
    transform: translateY(-50%) !important;
    left: 0;
}
/* 全域規則之後再排除 slot-picker，確保 BookingWP 時段選項不被套 bullet（原規則 specificity 較低） */
.story .slot-picker ul > li,
.story .slot-picker ul > li.slot,
.story .slot-picker ul > li.slot_heading,
.story .slot-picker ul > li.slot_empty {
    list-style-type: none !important;
    padding-left: 0 !important;
}
.story .slot-picker ul > li::before,
.story .slot-picker ul > li.slot::before,
.story .slot-picker ul > li.slot_heading::before,
.story .slot-picker ul > li.slot_empty::before {
    content: none !important;
}

/* =========================================
   內文文字超連結顏色 2026-08-07（v2：排除按鈕）
   需求：內文文字連結（非按鈕）未點選時文字顏色 #988463（品牌棕）。
   現況：Palette .story a 只設 underline 無 color → 連結與一般文字同色(黑)。
   範圍：全域——涵蓋 .story / .elementor-widget-text-editor / .e-n-tabs-content，
         前台與 Elementor 編輯器預覽。
   v2 修正（思誠回報誤傷按鈕）：排除按鈕 class——.elementor-button（後台只設
   背景 #988463、未設文字色，預設白字，被本規則蓋成棕底棕字）、.art-button、
   .oddays-price-table__button、.wp-block-button__link、.basket-btn。
   排除後按鈕回到各自預設（elementor-button 即 Elementor 白字）。
   ========================================= */
body:not(.elementor-editor-active) .story a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn),
body:not(.elementor-editor-active) .elementor-widget-text-editor a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn),
body:not(.elementor-editor-active) .elementor-widget-n-tabs .e-n-tabs-content a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn) {
    color: #988463;
}
body.elementor-editor-active .story a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn),
body.elementor-editor-active .elementor-widget-text-editor a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn),
body.elementor-editor-active .elementor-widget-n-tabs .e-n-tabs-content a:not(.elementor-button):not(.art-button):not(.oddays-price-table__button):not(.wp-block-button__link):not(.basket-btn) {
    color: #988463;
}

/* =========================================
   Chaty 浮動按鈕：桌機隱藏 2026-08-15
   需求：桌機(>1240px)用 second header 的「Line 聊聊」取代 Chaty 浮動按鈕；
         平板/手機(<=1240px)維持 Chaty 浮動在右下角原設計。
   作法：與 palette 原本顯示 Book Me 的斷點(max-width:1240 隱藏)對齊，
         桌機隱藏 .chaty-widget 浮動容器。
   ========================================= */
@media (min-width: 1241px) {
    .chaty-widget {
        display: none !important;
    }
}

/* =========================================
   Blog Single header：cover 全幅背景＋文字置中壓上（2026-08-15）
   需求：單篇文章 header 不要左右分欄；有特色圖時把 cover 當整個 header
         的背景底圖，分類／日期／標題／作者全部保留並置中壓在 cover 上。
   作法：.art-single-post-left（cover 圖）absolute 填滿整個 header；
         .art-single-post-right（文字）全寬、z-index 疊上、維持垂直置中；
         文字顏色改白＋輕微陰影確保壓圖可讀。
   範圍：僅限「有特色圖」的單篇文章 header；無特色圖的文章
         （.art-single-post-no-image）維持原本米白背景＋深色文字。
   ========================================= */
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) {
    position: relative;
    overflow: hidden;
}
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-left {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 60px 20px;
}
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-right-data {
    padding: 0;
}
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-right-data .art-post-cat,
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-right-data .art-post-cat .art-post-cat-itself,
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-right-data .art-post-cat .art-post-published,
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-right-data .art-post-title,
.art-blog-single-wrapper .art-single-blog-top:not(.art-single-post-no-image) .art-single-post-right .art-single-post-author {
    color: #ffffff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
}

/* 2026-08-16 選單初始狀態（透明背景白字）文字加柔和陰影，提升高亮圖片上可讀性；
   僅套用初始狀態（未 sticky、非 dark-header-text），且 header 容器完全非 hover 時：
   主題規則 .art-header-two-content:hover 會讓滑鼠在 header 任何區域時白底黑字，
   故陰影以整個 content 容器 :not(:hover) 判斷，滾動／hover／click 狀態不變；
   logo／漢堡線為白色實色圖形不套用 */

/* 手機／平板（<1241px）：主題無 hover 白底規則，hover 仍透明白字 → 陰影全狀態保留 */
@media (max-width: 1240px) {
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky) .art-header-bottom nav ul.menu > li > a,
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky) .art-header-top-right .art-site-header-appointment {
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 8px rgba(0, 0, 0, 0.10);
    }
    /* logo（od-white.svg 白色版）同規則 */
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky) .art-header-top-center .art--logo-container .light-logotype .img-logotype {
        filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25)) drop-shadow(0 0 8px rgba(0, 0, 0, 0.10));
    }
    /* 漢堡線（手機顯示）：照片底太亮時需陰影才看得到；filter 只套父元素，
       讓三條線（::before/::after）合成一份陰影，避免三份疊加變濃 */
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky) .art-header-top-right .hamburger-inner {
        filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25)) drop-shadow(0 0 8px rgba(0, 0, 0, 0.10));
    }
}

/* 桌機（≥1241px）：主題 hover 會白底黑字 → 陰影僅初始（容器非 hover）狀態 */
@media (min-width: 1241px) {
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky):not(:hover) .art-header-bottom nav ul.menu > li > a,
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky):not(:hover) .art-header-top-right .art-site-header-appointment {
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 8px rgba(0, 0, 0, 0.10);
    }
    /* logo（od-white.svg 白色版）同規則 */
    header.art-header-two:not(.art-dark-header-text) .art-header-two-content:not(.art-sticky):not(:hover) .art-header-top-center .art--logo-container .light-logotype .img-logotype {
        filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25)) drop-shadow(0 0 8px rgba(0, 0, 0, 0.10));
    }
}


