/*CSS歸0*/
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*無視任何寬度誤差計算屬性專用 IE8+後支援*/
*,
*:after,
*::before {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

@media all and (min-width: 1px){
body{margin: 0 auto;	font-family: 'Noto Sans TC', sans-serif;}
#BodyContainer {	width: 100%;margin: 0 auto;position:relative;}
#BodyContent{	width: 100%;margin:1% auto 0 auto;/*border:#000 solid 1px;*/}
#BodyHeader_event_rwd{display:none;margin:0;}
#event{	width: 100%;margin:0 auto;background-color: #fff;}

/*固定置中+寬度*/
.row_W1500,.row_W1200,.row_W750,.row_W350{margin:0 auto;display:inline-block;/*padding:0.4%;*/}
.row_W1500{width:1500px;}.row_W1200{width:1200px;}.row_W750{width:750px;}.row_W350{width:350px;}
.row_W1200{margin:8px 0;}
.row_W850{width:850px;float: left;}  

/* =============================================
   樣式表
   ============================================= */
:root {
    --gdNavy: #1a2e5a;
    --gdNavy-05: rgba(26, 46, 90, 0.05);
    --gdNavy-10: rgba(26, 46, 90, 0.10);
    --gdNavy-20: rgba(26, 46, 90, 0.20);
    --gdNavy-30: rgba(26, 46, 90, 0.30);
    --gdNavy-40: rgba(26, 46, 90, 0.40);
    --gdNavy-50: rgba(26, 46, 90, 0.50);
    --gdNavy-60: rgba(26, 46, 90, 0.60);
    --gdNavy-70: rgba(26, 46, 90, 0.70);
    --gdNavy-90: rgba(26, 46, 90, 0.90);
    --gdRed: #ef4444;
    --sp-gdRed-faded: rgba(192, 38, 38, 0.70);
    --gdMagenta: #e11d48;
    --brand-orange: #ef7d1a;
    --soft-glass: rgba(255, 255, 255, 0.75);
    --gdGold: #eab308;
    --gdGold-10: rgba(234, 179, 8, 0.10);
    --gdGold-30: rgba(234, 179, 8, 0.30);
    --gdGold-60: rgba(234, 179, 8, 0.60);
    --gdGold-70: #eab308b3;
    --gdTeal: #0f766e;
    --gdTeal-50: rgba(20,184,166,0.50);
    --gdBurgundy: #800020;
    --gdBurgundy-50: rgba(128,0,32,0.50);
    --white-10: rgba(255, 255, 255, 0.10);
    --white-20: rgba(255, 255, 255, 0.20);
    --white-30: rgba(255, 255, 255, 0.30);
    --white-40: #ffffff66;
    --white-50: rgba(255, 255, 255, 0.50);
    --white-60: rgba(255, 255, 255, 0.60);
    --white-70: #ffffffb3;
    --white-80: rgba(255, 255, 255, 0.80);
    --white-90: rgba(255, 255, 255, 0.90);
    --menu-teal      : #1cb0c1;
    --menu-teal-dark : #46a1ac;
    --menu-green     : #2c9357;
    --menu-purple    : #5a4ea0;
    --menu-orange    : #f07d4c;
    --menu-brand     : #ef7d1a;
    --black-10       : rgba(0,0,0,0.10);
    --black-60       : rgba(0,0,0,0.60);
}
.text-gdGold { color: var(--gdGold); }
.border-gdGold { border-color: var(--gdGold); }
.text-gdNavy { color: var(--gdNavy); }
.bg-gdNavy { background-color: var(--gdNavy); }
.bg-gdMagenta { background-color: var(--gdMagenta); }
.gdNavy { color: #1e293b; }
.bg-gdNavy { background-color: #1e293b; }
.bg-gdGold { background-color: #d4af37; }

.vine-pattern {
    background-image: radial-gradient(circle at 2px 2px, rgba(212, 175, 55, 0.05) 1px, transparent 0);
    background-size: 24px 24px;
}

/* 針對平滑滾動效果 */
html {scroll-behavior: smooth;}
/* 背景元素 1：漸層動態背景 */
.mesh-bg {position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: -2;background-color: #FDFBF7;}
/* 隱藏滾動條但保持功能 */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.border-gdNavy\/10 { border-color: rgba(var(--gdNavy), 0.1); }
/* 避免側邊欄開啟時背景滾動 */
.menu-open { overflow: hidden; }
body.overflow-hidden {overflow: hidden !important;}
/* 搜尋框過渡動畫 */
.search-transition {transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
/* 動態動畫定義 */
@keyframes slideUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ================================================================
   ██  桌機版  ██
   ================================================================ */
.mn-header { display: none; position: relative; width: 100%; z-index: 50; padding: 1rem; top: 1px;}
.mn-bar { width: 90%; margin-left: auto; margin-right: auto; background-color: #fff; border-radius: 9999px; box-shadow: 0 6px 15px -5px rgba(0,0,0,.12), 0 8px 10px -6px rgba(0,0,0,.08); display: flex; align-items: stretch; border: 0px solid #f3f4f6; position: relative; height: 65px; overflow: visible;}
/* ── Logo 區 ── */
.mn-logo{display:flex;align-items:center;padding-left:2.15rem;padding-right:.45rem;flex-shrink:0;background-color:#fff;border-radius:9999px 0 0 9999px}
.mn-logo-inner { display: flex; align-items: center;}
.mn-logo-img { padding: 0.5rem; }
.mn-logo-text {color: var(--menu-brand); font-size: 41px; font-weight: 900; letter-spacing: 0.025em;}
/* ── 導覽連結區 ── */
.mn-nav{display:none;flex-grow:1;position:relative;padding-left:1.5rem;padding-right:1.5rem}
.mn-nav::after{content:'';position:absolute;bottom:0;left:0;right:0;height:12.5px;z-index:0}

@media (min-width: 1024px) {
  .mn-header {display: flex;margin: 0 auto;align-items: center;}
  #topbutton {display: none;}
  .mn-nav { display: flex; }
}

/* ── 每個選單項目 ── */
.mn-item{flex:1;position:relative;display:flex}
.mn-item-btn{flex:1;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:17px;transition:filter 150ms cubic-bezier(.4,0,.2,1);z-index:10;white-space:nowrap;padding-left:.75rem;padding-right:.75rem;text-decoration:none}
.mn-item-btn:hover { filter: brightness(1.1); }
/* 各項背景色 */
.mn-item-btn-teal   { background-color: var(--menu-teal);   }
.mn-item-btn-green  { background-color: var(--menu-green);  }
.mn-item-btn-purple { background-color: var(--menu-purple); }
.mn-item-btn-orange { background-color: var(--menu-orange); }
.mn-item-arrow{margin-left:.25rem;width:.75rem;height:.75rem;transition:transform 150ms cubic-bezier(.4,0,.2,1);flex-shrink:0}
.mn-item:hover .mn-item-arrow { transform: rotate(180deg); }

 /* ── Dropdown ── */
.mn-dropdown { position: absolute; top: 100%; left: 0; width: 100%; display: none; flex-direction: column; box-shadow: 0 20px 25px -5px rgba(0,0,0,.1), 0 8px 10px -6px rgba(0,0,0,.1); z-index: 60; padding-bottom: 0.5rem; border-radius: 0 0 0.75rem 0.75rem; overflow: hidden; border-top: 1px solid var(--white-10);}
.mn-item:hover .mn-dropdown { display: flex; }
 /* 各 dropdown 背景色 */
.mn-dropdown-teal   { background-color: var(--menu-teal);   }
.mn-dropdown-green  { background-color: var(--menu-green);  }
.mn-dropdown-purple { background-color: var(--menu-purple); }
.mn-dropdown-orange { background-color: var(--menu-orange); }
.mn-dropdown-link { padding: 0.75rem; color: #fff; text-align: center; border-top: 1px solid var(--white-10);  text-decoration: none; transition: background-color 150ms cubic-bezier(.4,0,.2,1);}
.mn-dropdown-link:hover { background-color: var(--black-10); }
 
/* ── 右側功能區 ── */
.mn-actions{display:flex;align-items:center;padding-left:.5rem;padding-right:1.5rem;gap:.5rem;background-color:#fff;flex-shrink:0;border-radius:0 9999px 9999px 0;margin-left:auto}
/* 搜尋欄外層 */
.mn-search-wrap{display:flex;align-items:center;height:100%}
.mn-search-box{position:relative;display:flex;align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:9999px;padding:.25rem;height:42px;box-shadow:0 1px 2px 0 #0000000d;transition:border-color 150ms,box-shadow 150ms,background-color 150ms}
.mn-search-box:hover { border-color:#1122408f;}
.mn-search-box:focus-within { border-color: var(--menu-teal); background-color: #fff; box-shadow: 0 0 0 4px rgba(87,183,194,.10);}
/* ── 搜尋下拉選單 ── */
.mn-search-select-wrap { position: relative; display: none;}
.mn-search-select{background:transparent;color:#6b7280;padding:.25rem 1.5rem .25rem .75rem;font-size:.75rem;font-weight:500;cursor:pointer;border:none;appearance:none;outline:none}
.mn-search-select-arrow{pointer-events:none;position:absolute;top:0;bottom:0;right:.375rem;display:flex;align-items:center;color:#9ca3af}
.mn-search-select-arrow svg { stroke: currentColor; fill: none;}
/* 分隔線 */
.mn-search-divider{display:none;height:1rem;width:1px;background-color:#e5e7eb;margin-left:.25rem;margin-right:.25rem}

@media (min-width: 1280px) {
  .mn-search-select-wrap { display: block; }
  .mn-search-divider { display: block; }
}
 
/* ── 搜尋輸入欄 ── */
.mn-search-input-wrap{position:relative;display:flex;align-items:center}
.mn-search-icon{position:absolute;left:.625rem;color:#9ca3af;transition:color 150ms}
.mn-search-box:focus-within .mn-search-icon{color:var(--menu-teal)}
.mn-search-input{background:transparent;padding:.25rem .5rem .25rem 2rem;font-size:.875rem;color:#374151;outline:none;width:120px;transition:width 300ms cubic-bezier(.4,0,.2,1);border:none}
.mn-search-input::placeholder { color: #9ca3af; }
.mn-search-input:focus { width: 180px; }
.mn-search-btn { background-color: #595959 !important; color: #fff; font-size: 0.75rem; font-weight: 700; height: 34px; padding-left: 1rem; padding-right: 1rem; border-radius: 9999px; border: none; cursor: pointer; white-space: nowrap; box-shadow: 0 1px 2px 0 rgba(0,0,0,.05); transition: all 150ms cubic-bezier(.4,0,.2,1);}
.mn-search-btn:hover { background-color: #1a2e5a !important; }
.mn-search-btn:active { transform: scale(.95); }
/* ── 登入 / Angle 連結 ── */
.mn-login-link{color:#333;font-weight:700;font-size:1rem;white-space:nowrap;text-decoration:none;display:none;transition:color 150ms}
.mn-login-link:hover { color: #4b5563; }
.mn-angle-wrap{align-items:center;text-align:center;text-decoration:none;color:inherit}
.mn-fb-img{padding:.5rem;width:2.5rem}
.mn-angle-img{padding:.5rem;width:2.5rem;margin:0 auto;justify-content:center;display:flex}
.mn-angle-text{font-size:15px;font-weight:700;letter-spacing:.025em;line-height:18px}
.mn-angle-sub{font-size:12px}

@media (min-width: 640px) {
  .mn-login-link { display: block; }
}
 
/* ================================================================
   響應式修正：解決 1440px 以下溢出問題
   ================================================================ */
@media (max-width: 1440px) {
  .mn-bar{gap:0}
  .mn-nav{gap:0;padding:0}
  .mn-search-wrap{max-width:280px}
  .mn-angle-text{display:none}
}

/* ================================================================
   Header_Bar
   ================================================================ */
.tb-nav{display:none;max-width:98%;margin-left:auto;margin-right:auto;padding-top:.25rem;padding-bottom:.25rem;justify-content:flex-end;align-items:center;border-bottom:1px solid #d1d5db}
.tb-link{padding-left:.75rem;padding-right:.75rem;font-size:.9rem;color:#4b5563;border-right:1px solid #d1d5db;line-height:1.25;text-decoration:none;transition:color 150ms cubic-bezier(.4,0,.2,1)}
.tb-link:hover { color: #ef7d1a; }
.tb-icon-star {font-size: 0.75rem;color: #eab308;}

@media (min-width: 1024px) {
  .tb-nav { display: flex; }
}

/* ================================================================
   main 主要區塊
   ================================================================ */
/*  Section 2: 時間軸 */
.flex-container{display:flex;flex-wrap:wrap;width:100%;max-width:1440px;margin:0 auto;gap:0}
.main-column{width:100%}
.side-column{width:100%}

@media (min-width: 768px) {
  .main-column{width:80%}
  .side-column{width:20%}
}

/* ================================================================
   Footer 
   ================================================================ */
.ft-footer{background-color:#1a2e5a;color:#fff;padding-top:5rem;padding-bottom:1rem;border-radius:4rem 4rem 0 0;position:relative;overflow:hidden}
/* 裝飾圓圈（右下角） */
.ft-deco-lg{position:absolute;right:-5rem;bottom:-5rem;width:24rem;height:24rem;border:1px solid var(--white-10);border-radius:9999px;z-index:0}
.ft-deco-sm{position:absolute;right:-2.5rem;bottom:-2.5rem;width:16rem;height:16rem;border:1px solid var(--white-10);border-radius:9999px;z-index:0}
/* ── Container / Grid ── */
.ft-container{width:100%;max-width:1536px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem;position:relative;z-index:10}
.ft-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.25rem}
.ft-col-brand { grid-column: span 2;}
.ft-misc-col { grid-column: span 2;}

@media (min-width: 768px) {
  .ft-grid { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .ft-col-brand { grid-column: span 2; }
}
@media (min-width: 1024px) {
  .ft-misc-col { grid-column: span 1; }
}
/* 品牌欄 */
.ft-brand-wrap{display:flex;flex-wrap:wrap;align-items:center;font-weight:700;font-size:1.5rem;margin-bottom:1rem}
.ft-brand-name{background-color:var(--gdGold);padding:.25rem;color:var(--gdNavy);margin-right:.5rem;border-radius:.25rem;margin-bottom:.5rem}
.ft-brand-taxid{letter-spacing:.1em;font-size:.75rem;width:100%;color:var(--white-50);margin-bottom:1rem}
.ft-contact{font-size:.875rem;color:var(--white-60);line-height:1.625;font-weight:500;display:grid;grid-template-columns:repeat(1,1fr);gap:3px}
.ft-contact-row-start{display:flex;align-items:flex-start}
.ft-contact-row{display:flex;align-items:center}
.ft-icon{margin-right:.75rem;color:var(--gdGold-70);flex-shrink:0}
.ft-icon-top { margin-top: 0.25rem; }
.ft-link{color:inherit;text-decoration:none;transition:color 150ms cubic-bezier(.4,0,.2,1)}
.ft-link:hover { color: var(--gdGold); }
/* 導覽欄位 */
.ft-nav-heading{font-weight:700;margin-bottom:2rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--white-50)}
.ft-nav-list{list-style:none;padding:0;margin:0;font-size:.875rem;color:var(--white-70)}
.ft-nav-list > * + * { margin-top: 0.5rem; }
/* 雜項欄（atm / trust seal） */
.ft-misc{display:flex;flex-wrap:wrap;align-items:flex-start;line-height:2rem}
.ft-seal { width: auto; }
/* 底部版權列 */
.ft-bottom{padding-top:1rem;border-top:1px solid var(--white-10);display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--white-40);font-weight:700;text-transform:uppercase;letter-spacing:.1em}

/* ── 出貨公告 ── */
.holiday-notice-container{position:fixed;top:25%;right:0;z-index:9999}
.holiday-btn{position:relative;background:#d2691e;border:1px solid #b8561a;padding:7px;border-radius:8px 0 0 8px;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff;text-decoration:none;width:80px;transition:all .3s ease;box-shadow:0 2px 5px #0003;transition:background-color .2s ease,transform .2s ease}
.holiday-btn:hover{background:#b8561a;border-color:#9c4715;transform:translateY(-1px)}
.close-btn{position:absolute;top:-11px;right:70px;background:#000;color:#fff;border:none;border-radius:50%;width:18px;height:18px;cursor:pointer;box-shadow:0 1px 2px #0003}
.icon-svg{width:24px;height:24px;fill:currentColor}
.holiday-text-container{display:flex;flex-direction:column;text-align:center;line-height:1.5;font-size:14px;letter-spacing:1px}
.pc_noshow{display:none}

@media (max-width: 768px) {
  .holiday-notice-container{top:75%}
  .holiday-btn{width:50px;padding:8px 5px}
  .holiday-text-container{width:30px;font-size:12px}
  .pc_noshow{display:flex}
  .mobile_noshow{display:none}
  .close-btn{right:40px}
}

/* ── 全站活動BTN ── */
.floating-btn{position:fixed;bottom:24px;right:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;width:61px;padding:16px 8px;border-radius:12px 0 0 12px;border:none;background-color:#e11d48;color:#fff;text-decoration:none;box-shadow:0 4px 10px #00000026;cursor:pointer;user-select:none;outline:none;transition:background-color .2s ease,transform .2s ease}
.floating-btn:hover{background-color:#be123c;transform:translateY(-2px)}
.floating-btn:active{transform:translateY(0)}
.campaign-icon{font-size:20px;line-height:1;margin-bottom:10px;display:block;color:#fff}
.campaign-text{writing-mode:vertical-rl;text-orientation:upright;display:flex;flex-direction:column;align-items:center;font-weight:700;font-size:1rem;line-height:1.3;color:#fff;letter-spacing:.1em}
.campaign-text-top{font-weight:500;opacity:.9;margin-bottom:6px}
.campaign-text-badge{background-color:#fff3;border-radius:6px;padding:5px 2px}

@media all and (min-width: 1px) and (max-width: 1024px){ 
/* top */
#topbutton{width:50px;height:50px;color:#FFF;border-radius:9999em;background-color:#000000b0;opacity:.4;right:1%;bottom:2.5%;position:fixed;line-height:50px;font-size:15px;text-align:center;z-index:50}
#topbutton a{color:#FFF;font-size:15px}
#allevent{display: none;}
}