/* ============================================================
   site.css — 花蓮民宿資訊網 全站共用樣式(單一版本 RWD)
   導覽、頁尾、鄉鎮頁版面。配色沿用 guide/ 與 news/ 的語彙。
   ============================================================ */
:root{
  --ink:#20333b; --muted:#6c7478; --ocean:#153d4d; --moss:#33691e; --leaf:#7cb342;
  --gold:#a7915d; --line:#e2e5e3; --paper:#f5f6f3; --white:#fff;
  --serif:"Noto Serif TC","Songti TC","PMingLiU",serif;
  --sans:"Microsoft JhengHei","PingFang TC","Noto Sans TC",Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);line-height:1.85;background:#fff;font-size:15px}
img{max-width:100%;height:auto}
a{color:var(--ocean);text-decoration:none}
a:hover{color:#c00}
.s-inner{max-width:1200px;width:calc(100% - 48px);margin:0 auto}

/* ---------- 導覽 ---------- */
.s-header{background:#fff;border-bottom:3px solid var(--leaf);position:sticky;top:0;z-index:50}
.s-header .s-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;position:relative}
.s-brand img{display:block;width:auto;height:44px}
.s-nav{display:flex;align-items:center;gap:20px}
.s-nav a{font-size:15px;color:var(--ink);white-space:nowrap}
.s-nav a.on{color:var(--moss);font-weight:bold;border-bottom:2px solid var(--leaf);padding-bottom:2px}
.s-nav a:hover{color:var(--moss)}
.s-cta{background:var(--ocean);color:#fff!important;padding:8px 18px;border-radius:3px;font-size:14px}
.s-cta:hover{background:var(--moss);color:#fff!important}
.s-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:38px;
  padding:0 8px;background:none;border:1px solid var(--line);border-radius:3px;cursor:pointer}
.s-toggle span{display:block;height:2px;background:var(--ink)}

/* ---------- 鄉鎮頁 ---------- */
.t-hero{background:linear-gradient(180deg,#eef3ef 0%,#fff 100%);border-bottom:1px solid var(--line);padding:30px 0 26px}
.t-crumb{font-size:12.5px;color:var(--muted);margin-bottom:12px}
.t-crumb a{color:var(--muted)}
.t-hero h1{font:500 30px/1.45 var(--serif);color:var(--moss);margin:0 0 12px;letter-spacing:.01em}
.t-lead{font-size:16px;max-width:820px;margin:0}
.t-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.t-card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:13px 16px}
.t-card b{display:block;font-size:13px;color:var(--moss);margin-bottom:4px}
.t-card span{font-size:13.5px;color:var(--muted);line-height:1.75}

/* 鄉鎮頁的 bnb26 民宿卡片區(全寬,在導言之後、SEO 文章之前) */
.t-cards{background:#fff;padding:26px 0 18px;border-bottom:1px solid var(--line)}
.t-cards h2{font:500 22px/1.5 var(--serif);color:var(--moss);margin:0;padding:0 0 8px;border-bottom:2px solid #dcedc8}
.t-cards .t-more{margin:0 0 6px;padding:0 0 4px}
.t-cards .bnb-wrapper .listings-grid{padding-top:20px;padding-bottom:22px}
.t-main{padding:30px 0 10px}
.t-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:34px;align-items:start}
.t-body h2{font:500 22px/1.5 var(--serif);color:var(--moss);margin:32px 0 12px;
  padding-bottom:7px;border-bottom:2px solid #dcedc8}
.t-body h2:first-child{margin-top:0}
.t-body p{margin:0 0 14px}
.t-body ul,.t-body ol{margin:0 0 14px;padding-left:24px}
.t-body li{margin:5px 0}
.t-body strong{color:var(--ink)}

/* 民宿一覽 */
.t-bnb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 6px}
.t-bnb a{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:10px 13px;
  font-size:14.5px;line-height:1.5;display:block}
.t-bnb a:hover{border-color:var(--leaf);background:#eef5e8}
.t-more{font-size:14px;margin:8px 0 0}

/* FAQ */
.t-faq{margin-top:10px}
.t-faq dt{font-weight:bold;color:var(--moss);margin:16px 0 5px;font-size:16px}
.t-faq dd{margin:0;padding-left:0}

/* 側欄 */
.t-side section{background:var(--paper);border-radius:6px;padding:16px 18px;margin-bottom:16px}
.t-side h2{font:500 17px/1.4 var(--serif);color:var(--moss);margin:0 0 10px}
.t-side ul{list-style:none;margin:0;padding:0}
.t-side li{margin:6px 0;font-size:14.5px}
.t-side .t-towns{display:flex;flex-wrap:wrap;gap:6px 12px}
.t-side .t-towns a{font-size:14px;white-space:nowrap}
.t-side .t-towns a.on{color:var(--moss);font-weight:bold}

/* ---------- 頁尾 ---------- */
.s-footer{background:var(--ocean);color:#d8e2e6;margin-top:46px;padding:34px 0 20px;font-size:14px}
.s-footer a{color:#d8e2e6}
.s-footer a:hover{color:#fff}
.s-fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;padding-bottom:22px}
.s-fbrand h2{font:500 21px/1.4 var(--serif);color:#fff;margin:0 0 2px}
.s-fbrand .en{font-size:12px;letter-spacing:.14em;color:#9fb3ba;margin:0 0 12px}
.s-fbrand p{margin:0 0 8px;font-size:13.5px}
.s-fbrand .tel{color:#fff}
.s-footer h3{font-size:15px;color:#fff;margin:0 0 10px;font-weight:bold}
.s-footer h3+a,.s-footer div>a{display:block;margin:5px 0;font-size:14px}
.s-towns{display:flex;flex-wrap:wrap;gap:5px 14px}
.s-towns a{display:inline-block!important;margin:0!important;white-space:nowrap}
.s-network{border-top:1px solid rgba(255,255,255,.16);padding:14px 0;font-size:12.5px;line-height:2;color:#9fb3ba}
/* 覆寫上面 .s-footer div>a 的 display:block,站群連結需橫排 */
.s-network a{color:#9fb3ba;display:inline!important;margin:0!important;white-space:nowrap}
.s-copy{border-top:1px solid rgba(255,255,255,.16);padding-top:13px;font-size:12.5px;color:#9fb3ba;text-align:center}

/* ---------- 響應式 ---------- */
@media (max-width:1000px){
  .t-layout{grid-template-columns:1fr;gap:26px}
  .t-bnb{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s-fgrid{grid-template-columns:1fr 1fr;gap:22px}
  .s-fbrand{grid-column:1 / -1}
}
@media (max-width:768px){
  .s-inner{width:calc(100% - 32px)}
  .s-toggle{display:flex}
  .s-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;
    flex-direction:column;align-items:stretch;gap:0;padding:6px 0;
    border-bottom:1px solid var(--line);box-shadow:0 8px 20px rgba(0,0,0,.09)}
  .s-nav.open{display:flex}
  .s-nav a{padding:12px 16px;border-bottom:1px solid var(--line)}
  .s-nav a.on{border-bottom:1px solid var(--line)}
  .s-cta{margin:8px 16px;text-align:center}
  .t-hero h1{font-size:23px}
  .t-quick{grid-template-columns:1fr}
  .t-body h2{font-size:20px}
}
@media (max-width:520px){
  .t-bnb{grid-template-columns:1fr}
  .s-fgrid{grid-template-columns:1fr}
  .s-brand img{height:38px}
}
