.btn-ghost{border-color:var(--deep-blue);color:var(--deep-blue);}
.btn-ghost:hover{background:rgba(31,78,95,.08);}
.feature{display:flex;gap:16px;align-items:flex-start;padding:22px;background:var(--white);border-radius:var(--radius-md);border:1px solid var(--line);}
.faq-item.traffic-panel.open .faq-a{max-height:900px;}
/* ---------- 首頁：不對稱 Hero ---------- */
.hero-split{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,var(--deep-blue) 0%,var(--deep-blue-dark) 100%);
  color:var(--cream);padding:72px 0 0;
}
.hero-split .wrap{
  display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:24px;
  position:relative;z-index:2;
}
.hero-split h1{color:var(--white);font-size:clamp(30px,4.4vw,46px);line-height:1.32;margin-bottom:18px;}
.hero-split p.lead{color:rgba(245,240,230,.8);font-size:17px;max-width:480px;margin-bottom:32px;}
.hero-split .actions{display:flex;gap:14px;flex-wrap:wrap;}
.hero-graphic{aspect-ratio:1/1;}
@media(max-width:860px){
  .hero-split .wrap{grid-template-columns:1fr;}
  .hero-graphic{max-width:280px;margin:0 auto;}
}
/* ---------- 導覽卡片矩陣 ---------- */
.hub{position:relative;padding:96px 0;}
.hub-bg{position:absolute;inset:0;z-index:0;opacity:.35;pointer-events:none;}
.hub .wrap{position:relative;z-index:1;}
.hub-card{
  grid-column:span 1;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);
  padding:24px;display:flex;flex-direction:column;justify-content:space-between;
  box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .15s ease;
}
.hub-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px -14px rgba(31,78,95,.32);}
.hub-card .num{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--terracotta-dark);}
.hub-card h3{font-size:19px;margin:8px 0 6px;}
.hub-card p{font-size:14px;color:var(--ink-soft);margin:0;}
.hub-card .go{margin-top:14px;font-size:13.5px;font-weight:700;color:var(--deep-blue);}
.hub-card.span-2{grid-column:span 2;grid-row:span 2;background:var(--deep-blue);border-color:var(--deep-blue);}
.hub-card.span-2 h3{color:var(--white);font-size:24px;}
.hub-card.span-2 p{color:rgba(245,240,230,.8);}
.hub-card.span-2 .num{color:var(--terracotta);}
.hub-card.span-2 .go{color:var(--white);}
.hub-card.wide{grid-column:span 4;flex-direction:row;align-items:center;gap:20px;background:var(--cream-soft);}
.hub-card.wide .go{margin-top:0;}
@media(max-width:900px){
  .hub-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;}
  .hub-card.span-2{grid-column:span 2;grid-row:span 1;}
  .hub-card.wide{grid-column:span 2;flex-direction:column;align-items:flex-start;}
}
@media(max-width:560px){
  .hub-grid{grid-template-columns:1fr;}
  .hub-card.span-2,.hub-card.wide{grid-column:span 1;}
}
/* ---------- 子頁：頁面標題橫幅 ---------- */
.page-hero{position:relative;overflow:hidden;color:var(--deep-blue);padding:64px 0;}
.page-hero h1{color:var(--deep-blue);font-size:clamp(26px,3.6vw,38px);margin-bottom:12px;}
.page-hero p{color:var(--ink-soft);font-size:16px;margin:0;}
.breadcrumb{font-size:13px;color:var(--ink-soft);margin-bottom:14px;}
.breadcrumb a{color:var(--deep-blue);}
.breadcrumb a:hover{color:var(--terracotta);}
/* ---------- 團隊卡 ---------- */
.team-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow);}
.team-card .photo{aspect-ratio:1/1;overflow:hidden;background:var(--cream-soft);}
.team-card .body{padding:18px 20px 22px;}
.team-card h3{font-size:17px;margin-bottom:6px;}
.team-card .loc{font-size:12.5px;color:var(--terracotta-dark);font-weight:700;margin-bottom:8px;}
.team-card p{font-size:14px;color:var(--ink-soft);margin:0 0 8px;}
.team-card .stars{font-size:13px;letter-spacing:1px;}
/* ---------- 會員方案卡 ---------- */
.plan-card{background:var(--deep-blue);color:var(--cream);border-radius:var(--radius-lg);padding:32px;}
/* ---------- 門市卡：Google 地圖導覽面板 ---------- */
.faq-item.map-panel.open .faq-a{max-height:560px;}
.store-map{position:relative;width:100%;aspect-ratio:4/3;max-height:420px;margin:0 0 20px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#eee;}
.store-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
@media(max-width:560px){.store-map{aspect-ratio:1/1;}}
