/*
=========================================================
🚘 玹翔旅遊 Ultimate Final v7.0 Enterprise CRM
正式商業版｜全站主樣式表｜新手小白維護手冊
=========================================================

檔案名稱：
assets/css/style.css

用途：
全站黑金高端主題
首頁 Hero
導覽列
服務卡片
預約商城表單
價目表
車款卡片
FAQ
Footer
浮動客服
會員中心
CRM 後台預留樣式

=========================================================
【新手小白最常改的位置】
=========================================================

1. 改全站背景色：
找 --bg、--bg2

2. 改金色主色：
找 --gold、--gold2、--gold3

3. 改文字顏色：
找 --text、--muted

4. 改卡片邊框：
找 --line

5. 改按鈕樣式：
找 .btn、.btn.primary、.btn.ghost

6. 改導覽列：
找 .nav、.nav-inner、.menu、.dropdown

7. 改首頁主視覺：
找 .hero、.hero-card

8. 改價目表：
找 .table-wrap、table、th、td

9. 改手機版：
找 @media(max-width:900px)

10. 改浮動客服：
找 .floating-contact、.float-line、.float-phone、.float-wa

=========================================================
【v7.0 Enterprise CRM 新增區塊】
=========================================================

CRM 專用樣式請找：
.crm-shell
.crm-grid
.crm-card
.crm-stat
.crm-table
.crm-status
.crm-toolbar

會員 / 後台提醒樣式請找：
.member-gate
.doc-step
.codebox
.legacy-link-grid

=========================================================
【絕對不要亂刪】
=========================================================

:root
全站顏色來源，刪除後全站會變黑洞。

@media(max-width:900px)
手機版主要控制，刪除後手機排版會像行李箱爆開。

.table-wrap / table / th / td
價目表主要控制，刪除後價目表會跑版。

.floating-contact
LINE / 電話 / WhatsApp 浮動客服，刪除後客人會找不到人。

=========================================================
【正式營運版本】
=========================================================
SYSTEM_VERSION：Ultimate Final v7.0 Enterprise CRM
SYSTEM_OWNER：玹翔旅遊
SYSTEM_YEAR：2026

© 2026 玹翔旅遊 Xuan Xiang Travel
Ultimate Final v7.0 Enterprise CRM Production
=========================================================
*/

/* =========================================================
   01｜全站色票與基礎變數
   修改品牌色時優先改這裡
========================================================= */
:root{--bg:#050505;--bg2:#101010;--panel:#15120c;--card:#171717;--gold:#d8b56d;--gold2:#fff0b8;--gold3:#b88935;--text:#fff9ec;--muted:#cfc4ad;--line:rgba(216,181,109,.28);--glass:rgba(12,12,12,.76);--ok:#51be78;--bad:#dc5050;--crm-blue:#9ed8ff;--crm-green:#8ff0b2;--crm-red:#ff9c9c;--crm-purple:#d8b6ff;--crm-panel:rgba(255,255,255,.045)}
/* =========================================================
   02｜全站基礎設定
   body 背景、字體、連結、container 寬度都在這裡
========================================================= */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0%,rgba(216,181,109,.16),transparent 35%),linear-gradient(135deg,#020202,#12100b 55%,#050505);color:var(--text);font-family:'Noto Sans TC','Microsoft JhengHei',sans-serif;line-height:1.75;letter-spacing:.02em}a{color:inherit;text-decoration:none}.container{width:min(1180px,92vw);margin:auto}
/* =========================================================
   03｜頂部資訊列與主導覽列
   修改 Logo、選單、下拉選單外觀請看這一區
========================================================= */
.topbar{background:#080704;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.topbar .container{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:8px 0}.nav{position:sticky;top:0;z-index:50;background:rgba(5,5,5,.84);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-inner{width:min(1180px,92vw);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;font-weight:900}.logo{width:46px;height:46px;border-radius:16px;border:1px solid var(--gold);display:grid;place-items:center;background:linear-gradient(145deg,#16120a,#2a210f);box-shadow:0 0 24px rgba(216,181,109,.25);color:var(--gold2);font-family:'Noto Serif TC',serif}.brand small{display:block;color:var(--gold);font-weight:700;letter-spacing:.18em}.menu{display:flex;align-items:center;gap:8px}.menu a,.dropbtn{padding:10px 12px;border-radius:999px;color:#fff7e7;font-weight:800;font-size:14px;border:1px solid transparent;background:transparent;cursor:pointer}.menu a:hover,.drop:hover .dropbtn,.menu a.active{border-color:var(--line);background:rgba(216,181,109,.11);color:var(--gold2)}.drop{position:relative}.dropdown{display:none;position:absolute;right:0;top:44px;min-width:230px;background:rgba(10,9,6,.98);border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 20px 60px rgba(0,0,0,.5)}.drop:hover .dropdown{display:grid}.dropdown a{border-radius:12px}.hamb{display:none}.mobile{display:none}
/* =========================================================
   04｜首頁 Hero 主視覺與主要按鈕
   首頁第一屏、標題、CTA 按鈕都在這一區
========================================================= */
.hero{padding:88px 0 58px}.hero-card{border:1px solid var(--line);border-radius:34px;padding:46px;background:linear-gradient(145deg,rgba(22,18,10,.88),rgba(5,5,5,.86));box-shadow:0 28px 80px rgba(0,0,0,.48);position:relative;overflow:hidden}.hero-card:after{content:'';position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(216,181,109,.22),transparent 70%)}.kicker{color:var(--gold);font-weight:900;letter-spacing:.18em;text-transform:uppercase}.hero h1{font-family:'Noto Serif TC',serif;font-size:clamp(34px,6vw,68px);line-height:1.16;margin:10px 0 18px}.lead{font-size:clamp(16px,2vw,20px);color:var(--muted);max-width:830px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);font-weight:900;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 8px 24px rgba(216,181,109,.18)}.btn.primary{background:linear-gradient(135deg,var(--gold3),var(--gold2));color:#130d02;border:0}.btn.ghost{background:rgba(216,181,109,.08)}
/* =========================================================
   05｜通用區塊、卡片、表單、價目表
   大部分頁面的 card、form、table 會吃這裡
========================================================= */
.section{padding:50px 0}.section h2{font-family:'Noto Serif TC',serif;font-size:32px;margin:0 0 22px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid var(--line);border-radius:24px;padding:24px;background:linear-gradient(145deg,rgba(23,23,23,.92),rgba(18,14,8,.86));box-shadow:0 16px 48px rgba(0,0,0,.26)}.card h3{margin:0 0 8px;color:var(--gold2);font-size:21px}.muted{color:var(--muted)}.notice{border:1px solid var(--line);background:rgba(216,181,109,.1);border-radius:22px;padding:18px;color:var(--gold2);font-weight:800}.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:22px 0}.select,.input,textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:#0c0b08;color:var(--text);padding:13px 14px;font:inherit;outline:none}textarea{resize:vertical}select.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold2) 50%),linear-gradient(135deg,var(--gold2) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:40px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.full{grid-column:1/-1}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:24px;background:#090806}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 14px;border-bottom:1px solid rgba(216,181,109,.17);text-align:left;vertical-align:top}th{position:sticky;top:0;background:#171105;color:var(--gold2);font-weight:900;white-space:nowrap}td{color:#f7efd9}
/* =========================================================
   06｜Footer、結果提示、浮動客服、車款、FAQ
   修改底部聯絡資訊與 LINE/電話浮動客服請看這裡
========================================================= */
.footer{margin-top:50px;border-top:1px solid var(--line);background:#070604;padding:44px 0 24px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}.contact-list{display:grid;gap:6px;color:var(--muted)}.contact-list a:hover{color:var(--gold2)}.copyright{margin-top:24px;font-size:13px}.result{margin-top:14px;padding:14px;border-radius:16px}.ok{background:rgba(81,190,120,.15);border:1px solid rgba(81,190,120,.35)}.bad{background:rgba(220,80,80,.15);border:1px solid rgba(220,80,80,.35)}.floating-line-btn{position:fixed;right:18px;bottom:18px;z-index:80;background:linear-gradient(135deg,#06c755,#b9ffcf);color:#061407;font-weight:900;border-radius:999px;padding:14px 20px;box-shadow:0 14px 40px rgba(0,0,0,.38)}.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.fleet-card{border:1px solid var(--line);border-radius:24px;padding:22px;background:linear-gradient(145deg,rgba(216,181,109,.13),rgba(255,255,255,.03));min-height:122px;display:flex;flex-direction:column;justify-content:center;gap:8px}.fleet-card b{font-size:20px;color:var(--gold2)}.fleet-card span{color:var(--muted)}.faq-list{display:grid;gap:14px}.faq-item{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.04);padding:16px}.faq-item summary{cursor:pointer;font-weight:900;color:var(--gold2)}.addon-box{border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.addon-box legend{color:var(--gold2);font-weight:900}.policy-check a{color:var(--gold2);text-decoration:underline}.mobile-price-list{display:none}
/* =========================================================
   07｜手機版響應式設定
   手機選單、手機價目表、手機浮動客服主要在這裡
========================================================= */
@media(max-width:900px){.topbar{display:none}.menu{display:none}.hamb{display:inline-flex}.mobile{display:none;border-top:1px solid var(--line);padding:10px 4vw 18px;background:rgba(5,5,5,.97);max-height:calc(100vh - 72px);overflow-y:auto}.mobile.show{display:grid;gap:8px}.mobile a{padding:13px;border-radius:14px;background:rgba(216,181,109,.08)}.hero{padding:44px 0 30px}.hero-card{padding:28px;border-radius:26px}.grid,.grid.two,.footer-grid,.form-grid,.fleet-grid{grid-template-columns:1fr}.toolbar>*{max-width:none!important;width:100%}.nav-inner{padding:10px 0}table{min-width:680px}.brand span{font-size:15px}.floating-line-btn{right:12px;bottom:12px}.addon-box{grid-template-columns:1fr}.table-wrap{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.price-table-wrap{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap table,.price-table-wrap table{min-width:680px}.mobile-price-list{display:grid;gap:12px}.mobile-price-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:#0b0906}.mobile-price-card div{display:grid;grid-template-columns:120px 1fr;border-bottom:1px solid rgba(216,181,109,.12);padding:6px 0}.mobile-price-card div:last-child{border-bottom:0}.mobile-price-card b{color:var(--gold2)}}

/* v3.1 Business Upgrade */
.conversion-banner{display:grid;grid-template-columns:1.4fr auto;gap:22px;align-items:center;border:1px solid var(--line);border-radius:30px;padding:28px;background:linear-gradient(135deg,rgba(216,181,109,.16),rgba(255,255,255,.035));box-shadow:0 18px 54px rgba(0,0,0,.28)}
.route-grid .card{position:relative;overflow:hidden}.route-grid .card:after{content:'';position:absolute;right:-34px;bottom:-34px;width:120px;height:120px;border-radius:50%;background:rgba(216,181,109,.12)}
.review-card b{display:block;color:var(--gold2);font-size:22px;margin-bottom:6px}.review-card p{margin:0;color:var(--muted)}
.recommendation{border:1px dashed var(--gold);border-radius:18px;padding:14px;background:rgba(216,181,109,.08);color:var(--gold2);font-weight:800}.qty{width:88px;margin-left:8px;border:1px solid var(--line);border-radius:12px;background:#0c0b08;color:var(--text);padding:8px}.addon-upgrade label{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.fleet-photo-grid{grid-template-columns:repeat(2,1fr)}.fleet-photo{padding:0;overflow:hidden;justify-content:flex-start}.fleet-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--line);display:block}.fleet-body{padding:18px;display:grid;gap:8px}.fleet-body small{color:#e6d8b8}.fleet-body .btn{justify-self:start;margin-top:6px}
@media(max-width:900px){.conversion-banner{grid-template-columns:1fr}.fleet-photo-grid{grid-template-columns:1fr}.qty{width:100%}}


/* v3.2 Conversion Upgrade */
.floating-contact{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;flex-direction:column;gap:10px}
.floating-contact a{display:flex;align-items:center;justify-content:center;gap:8px;min-width:138px;padding:12px 16px;border-radius:999px;text-decoration:none;font-weight:900;box-shadow:0 18px 40px rgba(0,0,0,.38);border:1px solid rgba(255,240,184,.35)}
.float-line{background:#06c755;color:#fff}.float-phone{background:linear-gradient(135deg,#d8b56d,#fff0b8);color:#120e07}.float-wa{background:#25d366;color:#07190d}
.toolbar{margin:0 0 18px}.small-note{font-size:.92rem}.center{justify-content:center}.promo-strip .conversion-banner{border-color:rgba(255,240,184,.38)}
.notice-box{padding:18px 20px;border:1px solid rgba(216,181,109,.32);border-radius:22px;background:linear-gradient(135deg,rgba(216,181,109,.13),rgba(255,255,255,.04));color:var(--text)}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.timeline>div{padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.04)}.timeline b{color:var(--gold2)}
.car-img{width:100%;height:160px;object-fit:cover;border-radius:20px;border:1px solid rgba(216,181,109,.25);background:#090909;margin-bottom:12px}.fleet-card img{display:block}.faq-item.is-hidden{display:none}
@media(max-width:760px){.floating-contact{left:12px;right:12px;bottom:12px;flex-direction:row}.floating-contact a{min-width:0;flex:1;padding:11px 8px;font-size:.88rem}.timeline{grid-template-columns:1fr}.car-img{height:130px}body{padding-bottom:76px}}


/* v3.4 KLOOK-like Upgrade */
.product-hero-card{display:grid;grid-template-columns:1fr 330px;gap:28px;align-items:stretch}.sticky-booking-card{border:1px solid var(--line);border-radius:26px;padding:22px;background:rgba(0,0,0,.28);box-shadow:inset 0 0 0 1px rgba(255,240,184,.04);position:relative}.sticky-booking-card h3{margin:8px 0;color:var(--gold2)}.trust-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.trust-row span{border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:rgba(255,255,255,.04);font-weight:800;color:var(--gold2)}.plan-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.plan-card{position:relative;border:1px solid var(--line);border-radius:26px;padding:24px;background:linear-gradient(145deg,rgba(23,23,23,.95),rgba(30,22,10,.82));box-shadow:0 18px 50px rgba(0,0,0,.28);display:flex;flex-direction:column;gap:12px}.plan-card h3{margin:8px 0 0;color:var(--gold2)}.plan-card ul,.include-card ul,.exclude-card ul{padding-left:20px;color:var(--muted);margin:8px 0}.plan-card .btn{margin-top:auto}.plan-badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,var(--gold3),var(--gold2));color:#140e04;border-radius:999px;padding:5px 10px;font-weight:900;font-size:12px}.price-tag{font-family:'Noto Serif TC',serif;font-size:26px;color:var(--gold2);font-weight:900;margin:8px 0}.include-card{border-color:rgba(81,190,120,.45)}.exclude-card{border-color:rgba(220,80,80,.35)}.breadcrumb{font-size:14px;color:var(--muted);margin-bottom:16px}.breadcrumb a{color:var(--gold2)}.tracking-note{font-size:13px;color:var(--muted);border-top:1px solid rgba(216,181,109,.16);padding-top:12px;margin-top:14px}.share-strip{display:flex;gap:10px;flex-wrap:wrap}.schema-badge{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--gold2);font-weight:900;font-size:12px;margin-right:6px}
@media(max-width:1050px){.plan-grid{grid-template-columns:repeat(2,1fr)}.product-hero-card{grid-template-columns:1fr}}@media(max-width:760px){.plan-grid{grid-template-columns:1fr}.sticky-booking-card{position:static}.trust-row span{width:100%}.price-tag{font-size:22px}}


/* ===== v5 會員與後期維護升級 ===== */
.member-gate{margin-bottom:22px}.result.bad{border-color:rgba(255,100,100,.45);background:rgba(120,20,20,.22)}.result.ok{border-color:rgba(216,181,109,.45);background:rgba(216,181,109,.10)}button:disabled,.btn[disabled]{opacity:.62;cursor:not-allowed;filter:grayscale(.25)}.doc-toc{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.doc-step{border:1px solid var(--line);border-radius:24px;padding:18px;background:rgba(255,255,255,.045)}.doc-step b{color:var(--gold2)}.codebox{white-space:pre-wrap;overflow:auto;border:1px solid var(--line);border-radius:18px;background:#080808;padding:16px;color:#fff3cf}.legacy-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.legacy-link-grid a{display:block;padding:14px 16px;border:1px solid var(--line);border-radius:18px;text-decoration:none;color:var(--text);background:rgba(255,255,255,.04)}

/* =========================================================
   08｜v7.0 Enterprise CRM 後台預留樣式
   新手說明：
   這區是給 crm-dashboard.html、crm-orders.html、crm-customers.html、
   crm-payments.html、crm-dispatch.html、crm-revenue.html 使用。
   如果目前 CRM 頁面尚未建立，請保留這些樣式，未來建立頁面即可直接套用。
========================================================= */
.crm-shell{width:min(1280px,92vw);margin:36px auto;display:grid;gap:22px}
.crm-hero{border:1px solid var(--line);border-radius:30px;padding:30px;background:linear-gradient(135deg,rgba(216,181,109,.14),rgba(255,255,255,.045));box-shadow:0 22px 70px rgba(0,0,0,.28)}
.crm-hero h1{font-family:'Noto Serif TC',serif;margin:0 0 10px;color:var(--gold2);font-size:clamp(32px,5vw,56px)}
.crm-hero p{margin:0;color:var(--muted)}
.crm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.crm-card{border:1px solid var(--line);border-radius:24px;padding:20px;background:linear-gradient(145deg,rgba(23,23,23,.95),rgba(18,14,8,.86));box-shadow:0 14px 42px rgba(0,0,0,.24)}
.crm-card h3{margin:0 0 8px;color:var(--gold2);font-size:20px}
.crm-card p{margin:0;color:var(--muted)}
.crm-stat{font-size:30px;font-weight:950;color:var(--gold2);font-family:'Noto Serif TC',serif;margin:8px 0}
.crm-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:12px 0 18px}
.crm-toolbar .input,.crm-toolbar .select{max-width:260px}
.crm-table{overflow:auto;border:1px solid var(--line);border-radius:22px;background:#090806}
.crm-table table{width:100%;min-width:960px;border-collapse:collapse}
.crm-table th{position:sticky;top:0;z-index:5;background:#171105;color:var(--gold2);font-weight:950}
.crm-table td{color:#f7efd9}
.crm-status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 10px;border-radius:999px;font-weight:900;font-size:12px;border:1px solid var(--line)}
.crm-status.new{color:var(--crm-blue);background:rgba(158,216,255,.10)}
.crm-status.ok{color:var(--crm-green);background:rgba(143,240,178,.10)}
.crm-status.warn{color:var(--gold2);background:rgba(216,181,109,.10)}
.crm-status.bad{color:var(--crm-red);background:rgba(255,156,156,.10)}
.crm-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.crm-kpi .crm-card{min-height:132px}
.crm-note{border:1px dashed rgba(216,181,109,.42);border-radius:20px;padding:16px;background:rgba(216,181,109,.08);color:var(--muted);line-height:1.8}
.crm-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.crm-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--gold2);font-weight:900}
.crm-nav a:hover{background:rgba(216,181,109,.12);transform:translateY(-2px)}

/* =========================================================
   09｜v7.0 新手維護輔助樣式
   用於維護說明頁、README頁、後台說明區塊
========================================================= */
.maintenance-manual{border:1px solid var(--line);border-radius:28px;padding:24px;background:rgba(255,255,255,.04);line-height:1.9;color:var(--muted)}
.maintenance-manual h2,.maintenance-manual h3{color:var(--gold2)}
.maintenance-manual code{display:inline-block;border:1px solid rgba(216,181,109,.22);border-radius:10px;padding:2px 8px;background:#090806;color:#fff0b8}
.maintenance-list{display:grid;gap:12px;margin-top:16px}
.maintenance-list div{border:1px solid rgba(216,181,109,.18);border-radius:18px;padding:14px;background:rgba(255,255,255,.035)}
.maintenance-list b{color:var(--gold2)}

@media(max-width:1050px){.crm-grid,.crm-kpi{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.crm-grid,.crm-kpi{grid-template-columns:1fr}.crm-toolbar .input,.crm-toolbar .select{max-width:none}.crm-hero{padding:24px}.crm-shell{margin:24px auto}}


/* =========================================================
   10｜Ultimate Final v8.1 Enterprise Agency UI 最終覆蓋層
   目的：黑金商務高端旅行社級視覺、防跑版、防重複、可上線
   參考層級：Klook、可樂旅遊、雄獅旅遊之商業轉換頁結構
   說明：此區只做補強覆蓋，不破壞舊版 class 與 site-layout.js header/footer 串接。
========================================================= */
:root{
  --xx-radius-sm:14px;
  --xx-radius-md:22px;
  --xx-radius-lg:34px;
  --xx-shadow-soft:0 18px 54px rgba(0,0,0,.32);
  --xx-shadow-strong:0 30px 90px rgba(0,0,0,.58);
  --xx-focus:0 0 0 3px rgba(216,181,109,.32);
  --xx-safe-width:min(1180px,92vw);
  --xx-header-h:78px;
}

html{font-size:16px;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{min-width:320px;overflow-x:hidden;background-attachment:fixed;color:var(--text)}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 12%,rgba(255,240,184,.12),transparent 26%),radial-gradient(circle at 90% 4%,rgba(216,181,109,.11),transparent 24%),linear-gradient(180deg,rgba(255,255,255,.015),transparent 36%)}
img,svg,video,canvas{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,.btn{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,summary:focus-visible{outline:none;box-shadow:var(--xx-focus)}
.container,.wrap,.xx-wrap,.xx-footer-wrap,.xx-nav-wrap{width:var(--xx-safe-width);max-width:var(--xx-safe-width);margin-left:auto;margin-right:auto}
.hidden,[hidden]{display:none!important}.sr-only{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}

/* Header / Footer 與 site-layout.js 串接版型 */
.xx-topbar{position:sticky;top:0;z-index:1000;background:rgba(5,5,5,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 10px 34px rgba(0,0,0,.28)}
.xx-nav-wrap{min-height:var(--xx-header-h);display:flex;align-items:center;justify-content:space-between;gap:18px}
.xx-brand{display:flex;align-items:center;gap:12px;min-width:max-content}.logo-img{width:54px;height:54px;border-radius:18px;border:1px solid rgba(216,181,109,.48);object-fit:cover;background:#111;box-shadow:0 0 28px rgba(216,181,109,.22)}.brand-text{display:grid;line-height:1.2}.brand-text strong{font-family:'Noto Serif TC','Noto Sans TC',serif;color:var(--gold2);font-size:1.12rem;letter-spacing:.08em}.brand-text small{color:var(--gold);font-weight:900;letter-spacing:.16em;font-size:.72rem;text-transform:uppercase}
.xx-nav-toggle{position:absolute;opacity:0;pointer-events:none}.xx-hamburger{display:none;color:var(--gold2);border:1px solid var(--line);border-radius:14px;padding:8px 12px;background:rgba(255,255,255,.04);cursor:pointer;font-size:1.28rem;line-height:1}
.nav-links,.xx-menu{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.xx-menu>a,.drop-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;border-radius:999px;border:1px solid transparent;background:transparent;color:#fff7e7;font-weight:900;font-size:.91rem;cursor:pointer}.xx-menu>a:hover,.drop.active>.drop-btn,.drop:hover>.drop-btn,.xx-menu>a.is-active{border-color:var(--line);background:rgba(216,181,109,.12);color:var(--gold2)}
.drop{position:relative;display:inline-flex}.drop-list{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:20px;background:rgba(8,7,4,.98);box-shadow:var(--xx-shadow-soft);opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s ease}.drop:hover .drop-list,.drop.active .drop-list{opacity:1;visibility:visible;transform:translateY(0)}.drop-list a{display:flex;min-height:42px;align-items:center;border-radius:13px;padding:9px 12px;color:#f8eed7}.drop-list a:hover{background:rgba(216,181,109,.12);color:var(--gold2)}
.xx-footer-clean{margin-top:70px;border-top:1px solid var(--line);background:linear-gradient(180deg,#090704,#050505);padding:54px 0 28px}.xx-footer-wrap{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:26px}.xx-footer-col{border:1px solid rgba(216,181,109,.18);border-radius:24px;padding:22px;background:rgba(255,255,255,.035)}.xx-footer-col h3{margin:0 0 12px;color:var(--gold2);font-family:'Noto Serif TC','Noto Sans TC',serif}.xx-footer-col p,.xx-footer-col li{color:var(--muted);line-height:1.85}.xx-footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.xx-footer-col a:hover{color:var(--gold2)}.xx-footer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.xx-footer-actions a{border:1px solid var(--line);border-radius:999px;padding:9px 14px;color:var(--gold2);font-weight:900;background:rgba(216,181,109,.07)}.xx-copy{width:var(--xx-safe-width);margin:24px auto 0;color:var(--muted);font-size:.9rem;text-align:center}.xx-float{position:fixed;right:18px;bottom:18px;z-index:1001;display:flex;flex-direction:column;gap:10px}.xx-float a{display:flex;align-items:center;justify-content:center;min-width:128px;min-height:46px;padding:10px 16px;border-radius:999px;font-weight:950;box-shadow:0 18px 45px rgba(0,0,0,.38);border:1px solid rgba(255,240,184,.28)}.xx-float a:first-child{background:#06c755;color:#fff}.xx-float a:last-child{background:linear-gradient(135deg,var(--gold3),var(--gold2));color:#130d02}

/* 大旅行社等級 Hero / Page Hero */
.hero,.xx-page-hero,.agency-hero{position:relative;isolation:isolate;padding:clamp(72px,9vw,128px) 0 clamp(48px,7vw,82px);overflow:hidden}.hero::before,.xx-page-hero::before,.agency-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 18%,rgba(216,181,109,.22),transparent 30%),radial-gradient(circle at 82% 8%,rgba(255,240,184,.12),transparent 28%),linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.72),rgba(0,0,0,.46))}.hero-card,.agency-hero-card,.xx-page-hero>.wrap{position:relative;border:1px solid rgba(216,181,109,.34);border-radius:var(--xx-radius-lg);padding:clamp(28px,5vw,56px);background:linear-gradient(145deg,rgba(24,18,9,.92),rgba(5,5,5,.88));box-shadow:var(--xx-shadow-strong);overflow:hidden}.hero-card::after,.agency-hero-card::after,.xx-page-hero>.wrap::after{content:"";position:absolute;right:-100px;top:-100px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(255,240,184,.18),transparent 70%);pointer-events:none}.kicker,.xx-tag,.agency-kicker{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(216,181,109,.09);color:var(--gold2);font-weight:950;letter-spacing:.12em;font-size:.9rem}.hero h1,.xx-page-hero h1,.agency-hero h1{font-family:'Noto Serif TC','Noto Sans TC',serif;font-size:clamp(2.35rem,6.2vw,5.5rem);line-height:1.08;margin:16px 0;color:var(--gold2);letter-spacing:.035em;text-shadow:0 10px 36px rgba(0,0,0,.62)}.lead,.xx-page-hero p,.agency-lead{font-size:clamp(1rem,1.8vw,1.24rem);line-height:2;color:#eadfca;max-width:820px}.actions,.hero-actions,.agency-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.actions .btn,.hero-actions a,.agency-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:999px;font-weight:950;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--gold2)}.actions .btn.primary,.hero-actions a:first-child,.agency-actions a.primary{background:linear-gradient(135deg,var(--gold3),var(--gold2));color:#140e04;border-color:transparent;box-shadow:0 14px 38px rgba(216,181,109,.22)}.actions .btn:hover,.hero-actions a:hover,.agency-actions a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(216,181,109,.18)}

/* 服務亮點 / 流程 / 車款場景 */
.section,.agency-section,main>section{padding:clamp(46px,7vw,82px) 0}.sectionTitle,.agency-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section h2,.sectionTitle h2,.agency-title h2{font-family:'Noto Serif TC','Noto Sans TC',serif;font-size:clamp(1.75rem,3.8vw,3.15rem);line-height:1.18;color:var(--gold2);margin:0}.sectionTitle .muted,.agency-title p{max-width:520px;color:var(--muted);margin:0;line-height:1.9}.grid,.xx-card-grid,.agency-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two,.agency-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.xx-card,.agency-card,.plan-card,.fleet-card,.faq-item,.notice-box{position:relative;border:1px solid rgba(216,181,109,.26);border-radius:var(--xx-radius-md);background:linear-gradient(145deg,rgba(23,23,23,.94),rgba(20,15,8,.88));box-shadow:var(--xx-shadow-soft);overflow:hidden}.card,.xx-card,.agency-card{padding:24px}.card::before,.xx-card::before,.agency-card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,240,184,.42),transparent);opacity:.75}.card h3,.xx-card h3,.agency-card h3{margin:0 0 10px;color:var(--gold2);font-size:1.25rem;line-height:1.45}.card p,.xx-card p,.agency-card p{color:#e7dbc4;line-height:1.9;margin:0}.agency-step,.xx-number{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold3));color:#130c04;font-weight:950;margin-bottom:14px}.timeline{counter-reset:step}.timeline>div{counter-increment:step}.timeline>div::before{content:counter(step,decimal-leading-zero);display:inline-grid;place-items:center;width:40px;height:40px;border-radius:999px;background:linear-gradient(135deg,var(--gold2),var(--gold3));color:#140e04;font-weight:950;margin-bottom:10px}.fleet-grid,.xx-scene,.agency-vehicle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.fleet-card,.agency-vehicle-card{min-height:160px;padding:22px}.fleet-card b,.agency-vehicle-card b{color:var(--gold2);font-size:1.18rem}.fleet-card span,.agency-vehicle-card span{color:var(--muted);line-height:1.75}

/* 表單 / 預約商城 / 價目表 */
.input,.select,textarea,input[type="text"],input[type="tel"],input[type="email"],input[type="date"],input[type="number"],select{min-height:46px;border:1px solid rgba(216,181,109,.3);border-radius:16px;background:#0c0a07;color:var(--text);padding:12px 14px;outline:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)}.input:focus,.select:focus,textarea:focus,input:focus,select:focus{border-color:var(--gold);box-shadow:var(--xx-focus)}label{font-weight:800;color:#f7ecd3}.form-grid{gap:16px}.result,.member-alert,.trip-booking-message{border-radius:16px;padding:14px 16px;border:1px solid var(--line);background:rgba(216,181,109,.08);color:var(--gold2);font-weight:800}.member-alert.error,.trip-booking-message.error,.result.bad{border-color:rgba(220,80,80,.45);background:rgba(220,80,80,.13);color:#ffd2d2}.member-alert.success,.trip-booking-message.success,.result.ok{border-color:rgba(81,190,120,.45);background:rgba(81,190,120,.13);color:#d9ffe5}.table-wrap,.price-table-wrap,.crm-table{border-radius:24px;border:1px solid rgba(216,181,109,.28);box-shadow:var(--xx-shadow-soft);background:#090806}table{font-size:.96rem}th{color:var(--gold2);background:linear-gradient(180deg,#21180a,#120e07)}td{color:#f6ecd5}tr:hover td{background:rgba(216,181,109,.055)}

/* FAQ / Klook-like 產品頁 */
.faq-list,.xx-faq-list{display:grid;gap:14px}.faq-item,.xx-faq{padding:0}.faq-item summary,.xx-faq summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:18px 20px;color:var(--gold2);font-weight:950;list-style:none}.faq-item summary::-webkit-details-marker,.xx-faq summary::-webkit-details-marker{display:none}.faq-item summary::after,.xx-faq summary::after{content:"+";display:grid;place-items:center;min-width:28px;height:28px;border:1px solid var(--line);border-radius:50%;color:var(--gold2)}.faq-item[open] summary::after,.xx-faq[open] summary::after{content:"−"}.faq-item p,.xx-faq p{padding:0 20px 20px;color:var(--muted);line-height:1.9}.product-hero-card,.agency-product-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px}.sticky-booking-card{position:sticky;top:calc(var(--xx-header-h) + 18px);align-self:start}.trust-row span,.schema-badge{background:rgba(216,181,109,.08);border-color:rgba(216,181,109,.28)}

/* 防呆：避免頁面缺圖、缺內容或重複元素造成破版 */
img:not([src]),img[src=""]{visibility:hidden}.card:empty,.xx-card:empty,.agency-card:empty{display:none!important}.xx-site-duplicate,[data-xx-duplicate="true"]{display:none!important}.is-loading{pointer-events:none;opacity:.72}.is-loading::after{content:"處理中…";margin-left:8px;color:var(--gold2)}

@media(max-width:1180px){.nav-links,.xx-menu{gap:4px}.xx-menu>a,.drop-btn{font-size:.86rem;padding:8px 9px}}
@media(max-width:980px){:root{--xx-header-h:66px}.xx-hamburger{display:inline-flex}.xx-nav-wrap{min-height:66px}.nav-links,.xx-menu{position:absolute;left:4vw;right:4vw;top:calc(100% + 10px);display:none;grid-template-columns:1fr;align-items:stretch;max-height:calc(100vh - 90px);overflow:auto;padding:14px;border:1px solid var(--line);border-radius:22px;background:rgba(6,5,3,.98);box-shadow:var(--xx-shadow-strong)}.xx-nav-toggle:checked~.nav-links,.xx-nav-toggle:checked~.xx-menu{display:grid}.xx-menu>a,.drop-btn{width:100%;justify-content:space-between;border-color:rgba(216,181,109,.16);border-radius:14px;min-height:46px}.drop{display:grid;width:100%}.drop-list{position:static;min-width:0;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;margin-top:6px;background:rgba(255,255,255,.035)}.drop.active .drop-list{display:grid}.xx-footer-wrap{grid-template-columns:1fr}.grid,.xx-card-grid,.agency-grid,.grid.two,.agency-grid.two,.fleet-grid,.xx-scene,.agency-vehicle-grid{grid-template-columns:1fr 1fr}.product-hero-card,.agency-product-hero{grid-template-columns:1fr}.sticky-booking-card{position:relative;top:auto}}
@media(max-width:760px){body{padding-bottom:76px;background-attachment:scroll}.brand-text small{display:none}.logo-img{width:46px;height:46px;border-radius:15px}.hero,.xx-page-hero,.agency-hero{padding:42px 0 34px}.hero-card,.agency-hero-card,.xx-page-hero>.wrap{padding:26px;border-radius:26px}.hero h1,.xx-page-hero h1,.agency-hero h1{font-size:clamp(2.1rem,11vw,3.35rem)!important}.actions,.hero-actions,.agency-actions{display:grid}.actions .btn,.hero-actions a,.agency-actions a{width:100%}.sectionTitle,.agency-title{display:grid;gap:10px}.grid,.xx-card-grid,.agency-grid,.fleet-grid,.xx-scene,.agency-vehicle-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.xx-float{left:12px;right:12px;bottom:12px;flex-direction:row}.xx-float a{min-width:0;flex:1;min-height:48px}.floating-contact{left:12px;right:12px;bottom:12px;flex-direction:row}.floating-contact a{min-width:0;flex:1}.xx-copy{text-align:left}.section,.agency-section,main>section{padding:42px 0}.table-wrap,.price-table-wrap{border-radius:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* =========================================================
   END｜玹翔旅遊 Ultimate Final v7.0 Enterprise CRM
   新手提醒：若不確定用途，請不要刪除任何上方區塊。
   改顏色找 :root，改手機版找 @media，改CRM找 .crm- 開頭。
========================================================= */

/* =====================================================
   12｜玹翔旅遊 Ultimate Final v12 Enterprise Black Gold Core
   用途：全站黑金高端視覺升級、服務卡片、流程卡、車款卡、表單、後台與浮動客服通用覆蓋
===================================================== */
:root{
  --xx-bg:#070707;
  --xx-bg-2:#101010;
  --xx-bg-3:#181818;
  --xx-gold:#d8b56d;
  --xx-gold-light:#f7df9b;
  --xx-gold-dark:#9a7531;
  --xx-white:#ffffff;
  --xx-text:#ececec;
  --xx-text-light:#cfcfcf;
  --xx-text-muted:#9c9c9c;
  --xx-success:#35c56a;
  --xx-danger:#ff6767;
  --xx-warning:#ffb84d;
  --xx-radius-xs:10px;
  --xx-radius-sm:16px;
  --xx-radius-md:22px;
  --xx-radius-lg:30px;
  --xx-radius-xl:40px;
  --xx-shadow-sm:0 4px 12px rgba(0,0,0,.18);
  --xx-shadow:0 12px 30px rgba(0,0,0,.30);
  --xx-shadow-lg:0 20px 60px rgba(0,0,0,.45);
  --xx-border:1px solid rgba(216,181,109,.18);
  --xx-container:1320px;
  --bg:#070707;
  --card:#111111;
  --line:rgba(216,181,109,.22);
  --gold:#d8b56d;
  --gold2:#f7df9b;
}
body{
  background:radial-gradient(circle at top right,rgba(216,181,109,.12),transparent 40%),linear-gradient(180deg,#050505 0%,#090909 100%);
  color:var(--xx-text);
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
  line-height:1.8;
  overflow-x:hidden;
}
.wrap{width:min(calc(100% - 32px),var(--xx-container));margin:auto}
.btn,.btn-primary,.btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 26px;
  border-radius:999px;
  border:var(--xx-border);
  transition:.3s;
  cursor:pointer;
  font-weight:950;
}
.btn-primary,.btn.primary{color:#000;background:linear-gradient(135deg,var(--xx-gold-light),var(--xx-gold));border-color:transparent}
.btn-secondary,.btn.ghost{background:rgba(255,255,255,.06);color:#fff}
.card,.service-card,.process-step,.vehicle-card,.panel,.stat-card{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));
  border:var(--xx-border);
  border-radius:var(--xx-radius-lg);
  padding:32px;
  backdrop-filter:blur(14px);
  box-shadow:var(--xx-shadow);
}
.admin-layout{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:#000;color:#fff}
.sidebar{background:#050505;border-right:1px solid var(--line);padding:30px}
.content,.admin-content{padding:35px}
.stats,.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px}
.stat-card span{color:#999;font-size:14px}
.stat-card h3{margin-top:10px;font-size:32px;color:var(--gold2)}
.panel h2{margin-bottom:20px;color:var(--gold)}
@media(max-width:980px){.admin-layout{grid-template-columns:1fr}.sidebar{display:none}}

/* =====================================================
   玹翔旅遊 Ultimate Final v12.2｜共用導覽列・統一 CSS・黑金防呆升級層
===================================================== */
:root{
  --xx-v12-version:"Ultimate Final v12.2 Shared Black Gold CSS";
  --xx-gold:#d8b56d;
  --xx-gold-2:#f3dc9a;
  --xx-bg:#050505;
  --xx-text:#fff8e8;
  --xx-muted:rgba(255,248,232,.72);
  --xx-line:rgba(216,181,109,.32);
  --xx-shadow:0 18px 50px rgba(0,0,0,.46);
}
html[data-xx-shared-layout-version]{scroll-behavior:smooth;}
body[data-xx-shared-layout-ready="1"]{background:radial-gradient(circle at top,#1a1307 0,#050505 42%,#000 100%);color:var(--xx-text);}
.xx-shared-header,[data-xx-layout-part="header"]{position:sticky;top:0;z-index:999;background:linear-gradient(180deg,rgba(5,5,5,.96),rgba(5,5,5,.86));border-bottom:1px solid var(--xx-line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.xx-shared-header-inner{max-width:1180px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;}
.xx-shared-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--xx-text);font-weight:900;letter-spacing:.04em;}
.xx-shared-brand img{width:44px;height:44px;border-radius:14px;object-fit:cover;border:1px solid var(--xx-line);box-shadow:0 0 18px rgba(216,181,109,.24);}
.xx-shared-brand span{display:flex;flex-direction:column;line-height:1.15;}
.xx-shared-brand small{color:var(--xx-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;}
.xx-shared-menu-btn{display:none;border:1px solid var(--xx-line);background:rgba(216,181,109,.12);color:var(--xx-gold-2);border-radius:14px;padding:9px 12px;font-size:22px;line-height:1;}
.xx-shared-nav{display:flex;align-items:center;gap:10px;}
.xx-shared-nav a,.xx-shared-dropdown>button{color:var(--xx-text);text-decoration:none;border:1px solid transparent;background:transparent;border-radius:999px;padding:9px 12px;font-size:14px;font-weight:800;cursor:pointer;}
.xx-shared-nav a:hover,.xx-shared-dropdown>button:hover{border-color:var(--xx-line);background:rgba(255,255,255,.06);color:var(--xx-gold-2);}
.xx-shared-booking,.xx-shared-nav a.xx-shared-booking{background:linear-gradient(135deg,var(--xx-gold),var(--xx-gold-2));color:#171006!important;border-color:rgba(255,255,255,.14);box-shadow:0 10px 26px rgba(216,181,109,.26);}
.xx-shared-dropdown{position:relative;}
.xx-shared-dropdown-panel{position:absolute;top:calc(100% + 10px);left:0;min-width:220px;display:none;padding:10px;border:1px solid var(--xx-line);border-radius:18px;background:rgba(8,8,8,.96);box-shadow:var(--xx-shadow);}
.xx-shared-dropdown:hover .xx-shared-dropdown-panel,.xx-shared-dropdown.is-open .xx-shared-dropdown-panel{display:grid;gap:4px;}
.xx-shared-dropdown-panel a{display:block;border-radius:12px;padding:10px 12px;white-space:nowrap;}
.xx-shared-footer,[data-xx-layout-part="footer"]{margin-top:64px;padding:46px 20px 20px;border-top:1px solid var(--xx-line);background:linear-gradient(180deg,rgba(18,13,6,.72),rgba(0,0,0,.96));}
.xx-shared-footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:26px;}
.xx-shared-footer h3{margin:0 0 12px;color:var(--xx-gold-2);font-size:18px;}
.xx-shared-footer p{margin:0 0 9px;color:var(--xx-muted);line-height:1.7;}
.xx-shared-footer a{color:var(--xx-text);text-decoration:none;}
.xx-shared-footer a:hover{color:var(--xx-gold-2);}
.xx-shared-footer-links{display:grid;gap:8px;}
.xx-shared-footer-bottom{max-width:1180px;margin:28px auto 0;padding-top:18px;border-top:1px solid rgba(216,181,109,.18);color:var(--xx-muted);font-size:13px;text-align:center;}
.xx-shared-floating,[data-xx-layout-part="floating"]{position:fixed;right:16px;bottom:16px;z-index:1000;display:grid;gap:9px;}
.xx-shared-floating a,[data-xx-layout-part="floating"] a{min-width:82px;text-align:center;text-decoration:none;color:#171006;font-weight:950;border-radius:999px;padding:10px 14px;background:linear-gradient(135deg,var(--xx-gold),var(--xx-gold-2));box-shadow:0 12px 26px rgba(0,0,0,.38),0 0 18px rgba(216,181,109,.26);}
[data-xx-booking-link]{font-weight:950!important;}
img[data-xx-v12-image-guard="1"]{max-width:100%;}
a[data-xx-v12-link-guard="1"]{text-underline-offset:3px;}
@media (max-width: 900px){
  .xx-shared-header-inner{padding:10px 14px;}
  .xx-shared-menu-btn{display:inline-flex;align-items:center;justify-content:center;}
  .xx-shared-nav{display:none;position:absolute;left:12px;right:12px;top:68px;padding:14px;border:1px solid var(--xx-line);border-radius:22px;background:rgba(5,5,5,.97);box-shadow:var(--xx-shadow);}
  .xx-shared-header.is-menu-open .xx-shared-nav,.xx-shared-nav.is-open{display:grid;gap:6px;}
  .xx-shared-nav a,.xx-shared-dropdown>button{width:100%;text-align:left;border-radius:14px;padding:12px 14px;}
  .xx-shared-dropdown-panel{position:static;min-width:0;margin:6px 0 4px;box-shadow:none;background:rgba(255,255,255,.05);}
  .xx-shared-footer-grid{grid-template-columns:1fr;}
  .xx-shared-floating{left:10px;right:10px;bottom:10px;grid-template-columns:repeat(4,1fr);}
  .xx-shared-floating a,[data-xx-layout-part="floating"] a{min-width:0;padding:10px 6px;font-size:13px;}
  body{padding-bottom:70px;}
}

/* =====================================================
   13｜玹翔旅遊 Ultimate Final v12.2｜CSS 最終防呆覆蓋層
   用途：修正新舊 Floating / Header / Footer 共存時的按鈕顏色、層級、手機底部安全距離
===================================================== */
:root{
  --xx-css-final-version:"Ultimate Final v12.2 CSS Final Guard";
}

body[data-xx-shared-layout-ready="1"] .xx-topbar,
body[data-xx-shared-layout-ready="1"] .xx-shared-header,
body[data-xx-shared-layout-ready="1"] [data-xx-layout-part="header"]{
  z-index:1200;
}

.xx-float,
.xx-shared-floating,
[data-xx-layout-part="floating"]{
  z-index:1300;
}

.xx-float a,
.xx-shared-floating a,
[data-xx-layout-part="floating"] a{
  border:1px solid rgba(255,240,184,.28);
  text-decoration:none!important;
}

.xx-float a[data-xx-booking-link],
.xx-shared-floating a[data-xx-booking-link],
[data-xx-layout-part="floating"] a[data-xx-booking-link]{
  background:linear-gradient(135deg,var(--gold3,#b88935),var(--gold2,#fff0b8))!important;
  color:#130d02!important;
}

.xx-float a[data-xx-line-link],
.xx-shared-floating a[data-xx-line-link],
[data-xx-layout-part="floating"] a[data-xx-line-link]{
  background:#06c755!important;
  color:#fff!important;
}

.xx-float a[data-xx-phone-link],
.xx-shared-floating a[data-xx-phone-link],
[data-xx-layout-part="floating"] a[data-xx-phone-link]{
  background:linear-gradient(135deg,#d8b56d,#fff0b8)!important;
  color:#130d02!important;
}

.xx-float a[data-xx-whatsapp-link],
.xx-shared-floating a[data-xx-whatsapp-link],
[data-xx-layout-part="floating"] a[data-xx-whatsapp-link]{
  background:#25d366!important;
  color:#07190d!important;
}

.xx-shared-header a,
.xx-shared-footer a,
.xx-shared-floating a,
.xx-topbar a,
.xx-footer-clean a,
.xx-float a{
  -webkit-tap-highlight-color:rgba(216,181,109,.22);
}

@media(max-width:760px){
  body[data-xx-shared-layout-ready="1"]{padding-bottom:82px;}
  .xx-float,
  .xx-shared-floating,
  [data-xx-layout-part="floating"]{
    left:10px;
    right:10px;
    bottom:10px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }
  .xx-float a,
  .xx-shared-floating a,
  [data-xx-layout-part="floating"] a{
    min-width:0!important;
    min-height:46px;
    padding:10px 6px!important;
    font-size:13px;
    white-space:nowrap;
  }
}

/* === RWD Hero Center Alignment Fix｜首頁首屏偏右修正 === */
.hero,
.xx-page-hero,
.agency-hero {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.hero > .wrap,
.xx-page-hero > .wrap,
.agency-hero > .wrap {
  width: min(100% - 48px, 1280px);
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

.hero-grid,
.about-hero .hero-grid,
.agency-hero-grid {
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  align-items: center;
  justify-content: center;
  gap: clamp(24px, 4vw, 56px);
}

.hero-card,
.hero-copy,
.agency-hero-card {
  max-width: 560px;
  justify-self: end;
}

.hero-media,
.hero-video,
.hero-image,
.agency-hero-media {
  max-width: 680px;
  justify-self: start;
}

@media (max-width: 1060px) {
  .hero-grid,
  .about-hero .hero-grid,
  .agency-hero-grid {
    max-width: 760px;
    grid-template-columns: 1fr;
  }

  .hero-card,
  .hero-copy,
  .agency-hero-card,
  .hero-media,
  .hero-video,
  .hero-image,
  .agency-hero-media {
    width: 100%;
    max-width: 100%;
    justify-self: stretch;
  }
}

@media (max-width: 640px) {
  .hero > .wrap,
  .xx-page-hero > .wrap,
  .agency-hero > .wrap {
    width: min(100% - 28px, 1180px);
  }
}

/* === Home Sync Carousel｜首頁 FB最新消息・最新活動・熱門旅遊輪播 === */
.home-sync-carousel{
  padding:42px 0 28px;
  position:relative;
}

.home-carousel-head{
  margin-bottom:24px;
}

.home-carousel-head span{
  display:inline-flex;
  margin-bottom:10px;
  color:#f7df9b;
  font-size:13px;
  font-weight:950;
  letter-spacing:.16em;
}

.home-carousel-head h2{
  margin:0 0 12px;
  color:#fff3c2;
  font-family:"Noto Serif TC","Noto Sans TC",serif;
  font-size:clamp(30px,4vw,48px);
}

.home-carousel-head p{
  margin:0;
  max-width:820px;
  color:#cfc3a8;
  line-height:1.9;
}

.home-carousel{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,181,109,.24);
  border-radius:34px;
  background:
    radial-gradient(circle at 10% 0%,rgba(247,223,155,.16),transparent 34%),
    linear-gradient(135deg,rgba(17,28,39,.94),rgba(7,10,15,.98));
  box-shadow:0 28px 78px rgba(0,0,0,.46);
}

.home-carousel-track{
  position:relative;
}

.home-slide{
  display:none;
  grid-template-columns:1.05fr .95fr;
  min-height:520px;
}

.home-slide.is-active{
  display:grid;
}

.home-slide-copy{
  padding:38px;
  display:grid;
  align-content:center;
}

.home-slide-label{
  display:inline-flex;
  width:max-content;
  margin-bottom:16px;
  padding:9px 16px;
  border:1px solid rgba(216,181,109,.32);
  border-radius:999px;
  background:rgba(216,181,109,.09);
  color:#f7df9b;
  font-weight:950;
  letter-spacing:.12em;
  font-size:13px;
}

.home-slide h3{
  margin:0 0 14px;
  color:#fff3c2;
  font-family:"Noto Serif TC","Noto Sans TC",serif;
  font-size:clamp(34px,5vw,62px);
  line-height:1.12;
  text-shadow:0 0 30px rgba(216,181,109,.22);
}

.home-slide p{
  margin:0;
  color:#e8dcc2;
  line-height:1.95;
  font-size:17px;
}

.home-slide-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:22px 0 0;
}

.home-slide-tags span{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(216,181,109,.10);
  border:1px solid rgba(216,181,109,.18);
  color:#cfc3a8;
  font-size:13px;
  font-weight:800;
}

.home-slide-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.home-slide-media{
  position:relative;
  min-height:100%;
  background:#05070b;
}

.home-slide-media img,
.home-slide-media video{
  display:block;
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  background:#000;
}

.home-carousel-controls{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  pointer-events:none;
}

.home-carousel-controls button{
  pointer-events:auto;
  border:1px solid rgba(216,181,109,.32);
  background:rgba(0,0,0,.58);
  color:#fff0b8;
  border-radius:999px;
  cursor:pointer;
}

.home-carousel-controls > button{
  width:46px;
  height:46px;
  font-size:30px;
  line-height:1;
}

.home-carousel-dots{
  display:flex;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.46);
  border:1px solid rgba(216,181,109,.22);
  pointer-events:auto;
}

.home-carousel-dots button{
  width:10px;
  height:10px;
  padding:0;
  border-radius:50%;
  background:rgba(255,255,255,.28);
}

.home-carousel-dots button.is-active{
  background:#f7df9b;
  box-shadow:0 0 18px rgba(247,223,155,.55);
}

@media(max-width:980px){
  .home-slide,
  .home-slide.is-active{
    grid-template-columns:1fr;
  }

  .home-slide-copy{
    padding:30px 24px 80px;
  }

  .home-slide-media img,
  .home-slide-media video{
    min-height:360px;
  }
}

@media(max-width:640px){
  .home-sync-carousel{
    padding:26px 0 18px;
  }

  .home-carousel{
    border-radius:26px;
  }

  .home-slide-copy{
    padding:24px 20px 86px;
  }

  .home-slide-actions .btn{
    width:100%;
    text-align:center;
  }

  .home-carousel-controls{
    left:14px;
    right:14px;
    bottom:16px;
  }

  .home-carousel-controls > button{
    width:40px;
    height:40px;
    font-size:26px;
  }
}

/* === Facebook Feed Sync｜首頁 FB 貼文動態同步 === */
.xx-fb-feed-card{
  margin:24px 0;
  padding:28px;
  border:1px solid rgba(216,181,109,.24);
  border-radius:30px;
  background:
    radial-gradient(circle at 10% 0%,rgba(247,223,155,.13),transparent 34%),
    linear-gradient(135deg,rgba(17,28,39,.94),rgba(7,10,15,.98));
  box-shadow:0 24px 70px rgba(0,0,0,.38);
}

.xx-fb-feed-head{
  margin-bottom:18px;
}

.xx-fb-feed-head span{
  color:#f7df9b;
  font-size:13px;
  font-weight:950;
  letter-spacing:.16em;
}

.xx-fb-feed-head h3{
  margin:10px 0 8px;
  color:#fff3c2;
  font-family:"Noto Serif TC","Noto Sans TC",serif;
  font-size:clamp(26px,3vw,38px);
}

.xx-fb-feed-head p{
  margin:0;
  color:#cfc3a8;
  line-height:1.85;
}

.xx-fb-plugin-wrap{
  width:100%;
  max-width:100%;
  overflow:hidden;
  display:grid;
  justify-content:center;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(216,181,109,.18);
  background:rgba(255,255,255,.04);
}

.xx-fb-plugin-wrap .fb-page,
.xx-fb-plugin-wrap iframe{
  max-width:100% !important;
}

@media(max-width:640px){
  .xx-fb-feed-card{
    padding:20px;
    border-radius:24px;
  }

  .xx-fb-plugin-wrap{
    padding:10px;
  }
}

/* === Facebook Live Feed｜首頁 FB 最新貼文同步 === */
.xx-facebook-live-feed{
  padding:42px 0 36px;
}

.xx-fb-plugin-wrap{
  width:100%;
  max-width:100%;
  display:grid;
  justify-content:center;
  padding:24px;
  border:1px solid rgba(216,181,109,.22);
  border-radius:28px;
  background:rgba(255,255,255,.04);
  overflow:hidden;
}

.xx-fb-plugin-wrap .fb-page,
.xx-fb-plugin-wrap iframe{
  max-width:100% !important;
}

@media(max-width:640px){
  .xx-fb-plugin-wrap{
    padding:12px;
    border-radius:22px;
  }
}

/* === FB Carousel Embed Fix｜首頁 FB 輪播嵌入修正 === */
.xx-fb-slide-media {
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at center, rgba(247,223,155,.12), transparent 56%),
    #05070b;
}

.xx-fb-slide-media .fb-page,
.xx-fb-slide-media iframe {
  width: 100% !important;
  max-width: 500px !important;
}

.xx-fb-slide-media iframe {
  border-radius: 18px !important;
  background: #fff;
}

@media(max-width:980px){
  .xx-fb-slide-media{
    min-height:520px;
  }
}

@media(max-width:640px){
  .xx-fb-slide-media{
    padding:12px;
    min-height:520px;
  }
}

/* === FB Page Plugin Wide Fix｜FB 貼文動態寬版修正 === */
.xx-fb-plugin-wrap{
  justify-content:stretch !important;
  align-items:stretch !important;
}

.xx-fb-plugin-wrap .fb-page,
.xx-fb-plugin-wrap .fb-page span,
.xx-fb-plugin-wrap iframe,
.xx-fb-slide-media .fb-page,
.xx-fb-slide-media .fb-page span,
.xx-fb-slide-media iframe{
  width:100% !important;
  max-width:900px !important;
  min-width:320px !important;
}

.xx-fb-slide-media{
  align-items:stretch !important;
  justify-items:center !important;
}

@media(max-width:640px){
  .xx-fb-plugin-wrap .fb-page,
  .xx-fb-plugin-wrap .fb-page span,
  .xx-fb-plugin-wrap iframe,
  .xx-fb-slide-media .fb-page,
  .xx-fb-slide-media .fb-page span,
  .xx-fb-slide-media iframe{
    max-width:100% !important;
  }
}

/* === FB Timeline 4-5 Posts Fix｜首頁 FB 顯示約 4～5 篇貼文 === */
.xx-fb-plugin-wrap{
  width:100% !important;
  max-width:100% !important;
  justify-content:center !important;
  align-items:start !important;
  overflow:visible !important;
}

.xx-fb-plugin-wrap .fb-page,
.xx-fb-plugin-wrap .fb-page span,
.xx-fb-plugin-wrap iframe,
.xx-fb-slide-media .fb-page,
.xx-fb-slide-media .fb-page span,
.xx-fb-slide-media iframe{
  width:100% !important;
  max-width:900px !important;
  min-width:320px !important;
}

.xx-fb-plugin-wrap iframe,
.xx-fb-slide-media iframe{
  min-height:1280px !important;
  border-radius:18px !important;
}

.xx-fb-slide-media{
  min-height:1320px !important;
  padding:24px !important;
  align-items:start !important;
  justify-items:center !important;
}

@media(max-width:640px){
  .xx-fb-plugin-wrap{
    padding:10px !important;
  }

  .xx-fb-plugin-wrap .fb-page,
  .xx-fb-plugin-wrap .fb-page span,
  .xx-fb-plugin-wrap iframe,
  .xx-fb-slide-media .fb-page,
  .xx-fb-slide-media .fb-page span,
  .xx-fb-slide-media iframe{
    max-width:100% !important;
    min-width:280px !important;
  }

  .xx-fb-plugin-wrap iframe,
  .xx-fb-slide-media iframe{
    min-height:1180px !important;
  }

  .xx-fb-slide-media{
    min-height:1220px !important;
    padding:10px !important;
  }
}

/* === Vehicle Capacity Filter｜車款容量篩選提示 === */
.vehicle-capacity-summary{
  margin:12px 0 16px;
  padding:12px 14px;
  border:1px solid rgba(216,181,109,.26);
  border-radius:16px;
  background:rgba(216,181,109,.08);
  color:#f7df9b;
  font-weight:850;
  line-height:1.7;
}

.vehicle-capacity-note{
  margin-top:10px;
  color:#8a6a22;
  font-size:13px;
  font-weight:850;
  line-height:1.6;
}

.is-capacity-disabled{
  display:none !important;
}

/* === Booking Addon Dark Fix｜加購項目反白修正 === */
body[data-xx-page="booking"] .addon-box,
body[data-xx-page="booking"] .addon-row,
body[data-xx-page="booking"] .tax-fields,
body[data-xx-page="booking"] .other-fields {
  background: transparent !important;
}

body[data-xx-page="booking"] .addon-row label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 54px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(216,181,109,.32) !important;
  border-radius: 10px !important;
  background: #0b0906 !important;
  color: #fff3c2 !important;
}

body[data-xx-page="booking"] .addon-row label span,
body[data-xx-page="booking"] .addon-row label small {
  color: #fff3c2 !important;
}

body[data-xx-page="booking"] .addon-row input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  accent-color: #e29a22 !important;
}

body[data-xx-page="booking"] .addon-row:has(input[type="checkbox"]) {
  grid-template-columns: 1fr !important;
}

body[data-xx-page="booking"] .addon-qty {
  background: #0b0906 !important;
  color: #fff3c2 !important;
  border: 1px solid rgba(216,181,109,.32) !important;
  border-radius: 10px !important;
}

body[data-xx-page="booking"] .tax-fields .input,
body[data-xx-page="booking"] .other-fields .input {
  background: #0b0906 !important;
  color: #fff3c2 !important;
  border: 1px solid rgba(216,181,109,.32) !important;
}

body[data-xx-page="booking"] .addon-row label:hover,
body[data-xx-page="booking"] .addon-qty:hover {
  border-color: rgba(255,240,184,.58) !important;
}
.home-reviews{
  padding:80px 20px;
  background:#0b0b0b;
  text-align:center;
}

.home-reviews h2{
  color:#f7df9b;
  font-size:42px;
  margin-bottom:40px;
}

#reviewSlider{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:24px;
  max-width:1400px;
  margin:auto;
}

.review-slide{
  padding:28px;
  border-radius:24px;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.06),
    rgba(255,255,255,.02)
  );
  border:1px solid rgba(216,181,109,.25);
  box-shadow:0 20px 60px rgba(0,0,0,.35);
}

.review-slide h3{
  color:#fff0b8;
  margin-bottom:12px;
}

.review-slide p{
  color:#d7d7d7;
  line-height:1.8;
}

.review-slide a{
  display:inline-block;
  margin-top:15px;
  padding:10px 18px;
  border-radius:999px;
  background:#d8b56d;
  color:#111;
  font-weight:900;
  text-decoration:none;
}