@charset "utf-8";
/* ==========================================================================
   哈密 HAMI · TRAVELLER
   视觉定位：哈密旅行者官网 —— 等高线 / 编号 / 暖沙纸底 / 实线描边 / 雅丹铜橙主色
   ========================================================================== */

:root{
  --ink:#15191d;
  --ink-2:#3a4249;
  --ink-3:#6c757e;
  --pine:#14413e;      /* 天山云杉深青 */
  --pine-2:#1c5752;
  --lake:#2b7c86;      /* 巴里坤湖青 */
  --gold:#c1652f;      /* 主色：雅丹落日铜橙 */
  --gold-deep:#9a4a20; /* 主色深：hover / 描边 */
  --gold-soft:#db8452; /* 主色浅：hover 高亮 */
  --ochre:#b8903c;     /* 胡杨金 */
  --paper:#f7f4ee;
  --paper-2:#f0ebe1;
  --paper-3:#e7e0d3;
  --line:#d9d1c2;
  --line-2:#c6bca9;
  --white:#fff;
  --serif:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --maxw:1240px;
  --hd:74px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;padding:0;
  padding-top:var(--hd);   /* 顶栏固定，正文整体下移让位 */
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.85;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{font-family:var(--serif);font-weight:700;line-height:1.32;margin:0}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 1.1em;padding-left:1.4em}
li{margin:.35em 0}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.wrap-narrow{max-width:820px;margin:0 auto;padding:0 28px}

/* ---------- 通用小构件 ------------------------------------------------- */
.eyebrow{
  font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ink-3);margin:0 0 12px;display:block;
}
.eyebrow .dot{display:inline-block;width:5px;height:5px;background:var(--ochre);margin-right:9px;vertical-align:2px}
.num{
  font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--gold);
  font-weight:700;
}
.rule{border:0;border-top:1px solid var(--line);margin:0}
.rule-strong{border:0;border-top:2px solid var(--ink);margin:0}

/* 等高线分隔 —— 本站的签名装饰 */
.contour{display:block;width:100%;height:26px;opacity:.5}
.contour path{fill:none;stroke:var(--line-2);stroke-width:1}

/* ---------- 顶部 ------------------------------------------------------- */
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:999;background:var(--pine);color:#fff;padding:10px 16px}

.hd{
  position:fixed;left:0;right:0;top:0;z-index:80;
  background:rgba(247,244,238,.93);
  backdrop-filter:saturate(1.4) blur(10px);
  border-bottom:1px solid var(--line);
}
.hd-in{
  max-width:var(--maxw);margin:0 auto;padding:0 28px;height:var(--hd);
  display:flex;align-items:center;gap:32px;
}
.brand{display:flex;align-items:center;gap:11px;flex:none}
.brand svg{width:30px;height:30px;flex:none}
.brand path{fill:none;stroke:var(--pine);stroke-width:1.6}
.brand-t{display:flex;flex-direction:column;line-height:1.1}
.brand-cn{font-family:var(--serif);font-size:19px;font-weight:700;letter-spacing:.16em}
.brand-en{font-family:var(--mono);font-size:9px;letter-spacing:.3em;color:var(--ink-3);text-transform:uppercase}
/* 「官网」徽标：红底白字 */
.brand-badge{
  display:inline-block;margin-left:7px;padding:2px 5px 1px;border-radius:2px;
  background:#c1652f;color:#fff;font-size:11px;font-weight:500;letter-spacing:.06em;
  line-height:1.3;vertical-align:3px;white-space:nowrap;
}
.ft-brand .brand-badge{vertical-align:4px;margin-left:8px}

.nav{margin-left:auto;display:flex;align-items:center;gap:2px}
.nav a{
  display:block;padding:8px 13px;font-size:15px;color:var(--ink-2);
  position:relative;transition:color .18s;
}
.nav a .en{
  display:block;font-family:var(--mono);font-size:8px;letter-spacing:.16em;
  color:var(--ink-3);text-transform:uppercase;line-height:1;margin-top:3px;
}
.nav a:hover,.nav a.on{color:var(--pine)}
.nav a.on::after{
  content:"";position:absolute;left:13px;right:13px;bottom:2px;height:2px;background:var(--ochre);
}
/* 「哈密定制游」与其他导航项完全一致，不设特殊样式 */

/* 导航下拉 */
.nav-drop{position:relative}
.nav-drop>a i.drop-arrow{
  display:inline-block;width:0;height:0;margin-left:6px;vertical-align:2px;
  border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;
}
.drop-menu{
  position:absolute;top:100%;left:0;min-width:176px;padding:6px 0;
  background:var(--white);border:1px solid var(--line);box-shadow:0 14px 34px rgba(21,25,29,.12);
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s;z-index:60;
}
.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{opacity:1;visibility:visible;transform:none}
.drop-menu a{display:block;padding:11px 20px;font-size:14.5px;color:var(--ink-2);border-bottom:1px solid var(--line)}
.drop-menu a:last-child{border-bottom:0}
.drop-menu a:hover{background:var(--paper);color:var(--pine)}
/* 下拉项在导航最右侧：左对齐时会在 1024~1300px 区间超出屏幕右边被裁
   （1024px 实测超出 77px），改为贴右展开，任何宽度都不会越界 */
.nav-drop .drop-menu{left:auto;right:0}
.burger{display:none;margin-left:auto;background:none;border:0;padding:8px;cursor:pointer}
.burger span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0}

/* 移动端抽屉 */
.drawer{
  display:none;position:fixed;inset:var(--hd) 0 0 0;z-index:79;
  background:var(--paper);padding:18px 28px 40px;overflow:auto;
  border-top:1px solid var(--line);
}
.drawer.open{display:block}
.drawer a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:17px}
.drawer a .en{font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:var(--ink-3);margin-left:8px}

/* ---------- Hero ------------------------------------------------------- */
.hero{position:relative;overflow:hidden;background:var(--pine);color:#fff}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:0;pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(9,32,31,.82) 0%,rgba(9,32,31,.55) 42%,rgba(9,32,31,.18) 78%,rgba(9,32,31,.10) 100%),
             linear-gradient(0deg,rgba(9,32,31,.55) 0%,rgba(9,32,31,0) 45%)}
.hero-map{position:absolute;inset:0;opacity:.14;pointer-events:none;z-index:0}
.hero-map path{fill:none;stroke:#fff;stroke-width:1}
.hero-map .fill{fill:rgba(255,255,255,.045);stroke:none}
.hero-in{
  position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:44px 28px 40px;
  display:grid;grid-template-columns:minmax(0,780px);align-items:center;
}
.hero h1{
  font-size:clamp(30px,3.9vw,48px);letter-spacing:.05em;margin:0 0 4px;
  line-height:1.1;
}
.hero-sub{
  font-family:var(--mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin:0 0 14px;
}
.hero-lead{
  font-family:var(--serif);font-size:16.5px;line-height:1.8;color:rgba(255,255,255,.86);
  max-width:34em;margin:0 0 18px;
}
.hero-lead strong{color:#fff;font-weight:700}
.hero-stats{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid rgba(255,255,255,.22);padding-top:14px}
.hero-stat{padding-right:26px;margin-right:26px;border-right:1px solid rgba(255,255,255,.16)}
.hero-stat:last-of-type{border-right:0}
.hero-stat b{
  display:block;font-family:var(--serif);font-size:22px;font-weight:700;color:var(--gold);line-height:1.1;
}
.hero-stat span{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.btn{
  display:inline-block;padding:13px 26px;font-size:15px;border:1px solid var(--ink);
  transition:.18s;background:transparent;color:var(--ink);
}
.btn:hover{background:var(--ink);color:#fff}
.btn-light{border-color:rgba(255,255,255,.55);color:#fff}
.btn-light:hover{background:#fff;color:var(--pine)}
/* 主色实心按钮：白字 + 深红描边，取代旧的「红底黑字」（对比度不足、观感脏） */
.btn-solid,.btn-primary{
  background:var(--gold);border-color:var(--gold);color:#fff;
  box-shadow:0 2px 0 rgba(154,74,32,.45);letter-spacing:.04em;
}
.btn-solid:hover,.btn-primary:hover{
  background:var(--gold-deep);border-color:var(--gold-deep);color:#fff;
  box-shadow:0 3px 0 rgba(122,58,25,.5);
}

/* ---------- 分册导航（首页核心） --------------------------------------- */
.volumes{padding:74px 0 20px}
.sec-hd{display:flex;align-items:flex-end;gap:24px;margin-bottom:26px}
.sec-hd h2{font-size:31px;letter-spacing:.04em;flex:none}
.sec-hd .note{margin-left:auto;text-align:right;font-size:14px;color:var(--ink-3);line-height:1.6}

.vol-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink);border-left:1px solid var(--line)}
.vol{
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:30px 26px 28px;position:relative;overflow:hidden;transition:.22s;background:transparent;
}
.vol::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--pine);transition:.24s;
}
.vol:hover::before{width:100%}
.vol:hover .vol-cn,.vol:hover .vol-en,.vol:hover .vol-desc,.vol:hover .vol-num{color:#fff}
.vol:hover .vol-go{color:var(--gold);border-color:var(--gold)}
.vol > *{position:relative;z-index:1}
.vol-num{font-family:var(--mono);font-size:12px;color:var(--gold);letter-spacing:.1em;display:block;margin-bottom:14px}
.vol-cn{font-family:var(--serif);font-size:25px;font-weight:700;display:block;margin-bottom:4px;letter-spacing:.06em}
.vol-en{font-family:var(--mono);font-size:10px;letter-spacing:.26em;color:var(--ink-3);text-transform:uppercase;display:block;margin-bottom:13px}
.vol-desc{font-size:14px;color:var(--ink-2);line-height:1.75;margin:0 0 16px}
.vol-go{font-family:var(--mono);font-size:11px;letter-spacing:.14em;border-bottom:1px solid var(--line-2);padding-bottom:4px;color:var(--ink-2)}

/* ---------- 卡片网格 --------------------------------------------------- */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 30px}
.card{display:flex;flex-direction:column;group:card}
.card-media{
  position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--paper-2);
  border:1px solid var(--line);
}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.card:hover .card-media img{transform:scale(1.055)}
.card-no{
  position:absolute;left:0;top:0;background:var(--paper);
  font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em;
  padding:6px 10px;color:var(--ochre);border-right:1px solid var(--line);border-bottom:1px solid var(--line);
}
.card-body{padding-top:15px;flex:1;display:flex;flex-direction:column}
.card-t{font-family:var(--serif);font-size:20px;font-weight:700;line-height:1.45;margin:0 0 6px;letter-spacing:.02em}
.card:hover .card-t{color:var(--lake)}
.card-sub{font-size:13px;color:var(--ochre);margin:0 0 9px;line-height:1.6}
.card-desc{
  font-size:14px;color:var(--ink-2);line-height:1.75;margin:0 0 12px;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.card-meta{
  margin-top:auto;font-family:var(--mono);font-size:10px;letter-spacing:.12em;
  color:var(--ink-3);text-transform:uppercase;padding-top:10px;border-top:1px solid var(--line);
}

/* ---------- 四季条 ----------------------------------------------------- */
.seasons{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}
.season{
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 22px;
  transition:.2s;position:relative;
}
.season:last-child{border-right:0}
.season:hover{background:var(--white)}
.se-season-cn{font-family:var(--serif);font-size:22px;font-weight:700;margin:0 0 3px;letter-spacing:.1em}
.se-season-en{font-family:var(--mono);font-size:9px;letter-spacing:.24em;color:var(--ink-3);text-transform:uppercase;display:block;margin-bottom:12px}
.season p{font-size:13.5px;color:var(--ink-2);line-height:1.72;margin:0}
.season .months{font-family:var(--mono);font-size:10px;color:var(--gold);letter-spacing:.1em;display:block;margin-bottom:9px}

/* ---------- 内容页 ----------------------------------------------------- */
.crumb{
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3);
  padding:22px 0 0;text-transform:uppercase;
}
.crumb a:hover{color:var(--ochre)}
.crumb span{margin:0 8px;opacity:.55}

.phead{padding:38px 0 30px;border-bottom:2px solid var(--ink);margin-bottom:0}
.phead .vol-tag{
  font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ochre);margin-bottom:14px;display:block;
}
.phead h1{font-size:clamp(30px,4.2vw,44px);letter-spacing:.03em;margin-bottom:14px;line-height:1.28}
.phead-sub{font-family:var(--serif);font-size:17px;color:var(--ink-2);line-height:1.8;margin:0 0 18px}
.phead-intro{font-size:15.5px;color:var(--ink-2);line-height:1.85;max-width:56em;margin:0}

/* 列表页条目 —— 横排，编号+图 */
.postlist{border-top:1px solid var(--line)}
.post{
  display:grid;grid-template-columns:200px 1fr;gap:28px;padding:30px 0;
  border-bottom:1px solid var(--line);transition:.2s;
}
.post:hover{background:var(--white)}
.post-media{aspect-ratio:4/3;overflow:hidden;background:var(--paper-2);border:1px solid var(--line);position:relative}
.post-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post:hover .post-media img{transform:scale(1.06)}
.post-no{
  position:absolute;left:0;top:0;background:var(--ink);color:#fff;font-family:var(--mono);
  font-size:11px;padding:5px 9px;letter-spacing:.08em;
}
.post-t{font-family:var(--serif);font-size:23px;font-weight:700;margin:0 0 7px;line-height:1.4}
.post:hover .post-t{color:var(--lake)}
.post-sub{font-size:13.5px;color:var(--ochre);margin:0 0 10px}
.post-desc{font-size:14.5px;color:var(--ink-2);line-height:1.8;margin:0 0 12px}
.post-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}

/* 正文排版 */
.art{padding:44px 0 10px}
.art h1{font-size:clamp(30px,4.4vw,46px);letter-spacing:.03em;line-height:1.26;margin:0 0 14px}
.art .meta{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:var(--ink-3);
  text-transform:uppercase;margin:0 0 26px;padding-bottom:16px;border-bottom:2px solid var(--ink);
}
.art-cover{margin:0 0 34px;border:1px solid var(--line)}
.art-cover img{width:100%;aspect-ratio:16/9;object-fit:cover}
.art-body{font-size:16.5px;line-height:1.95;color:var(--ink)}
.art-body > p:first-of-type{font-size:17.5px;line-height:1.92}
.art-body strong{font-weight:700;color:var(--pine)}
.art-body em{font-style:normal;background:linear-gradient(transparent 62%,rgba(193,39,45,.28) 0)}
.art-body a{color:var(--lake);border-bottom:1px solid var(--line-2)}
.art-body a:hover{border-bottom-color:var(--ochre);color:var(--ochre)}
.art-body ul li,.art-body ol li{margin:.5em 0;line-height:1.85}
.art-body ul li::marker{color:var(--ochre)}
.art-body br{margin:0}
.art-body img{max-width:100%;height:auto;border:1px solid var(--line);border-radius:2px}
.art-body table{width:100%;border-collapse:collapse;font-size:14.5px}
.art-body td,.art-body th{border:1px solid var(--line);padding:8px 12px}

/* ---------- 详情页双栏（主文 + 侧栏） ---------------------------------- */
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:start}
.detail-main{min-width:0}
.art-hd{margin:0 0 18px}
.art-hd h1{font-size:clamp(26px,3.4vw,38px);line-height:1.3;letter-spacing:.02em;margin:0 0 10px}
.art-hd .art-sub{font-size:16px;color:var(--ink-2);line-height:1.8;margin:0 0 12px}
.art-hd .meta{
  font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;color:var(--ink-3);
  text-transform:uppercase;margin:0 0 22px;padding-bottom:14px;border-bottom:1px solid var(--line);
}
.art-cover{margin:0 0 28px;border:1px solid var(--line)}
.art-cover img{width:100%;aspect-ratio:16/9;object-fit:cover}
.art-body{font-size:16px;line-height:1.9}

/* 侧栏 */
.side{display:grid;gap:22px;position:sticky;top:calc(var(--hd) + 18px)}
.side-box{background:var(--white);border:1px solid var(--line);padding:20px 20px 22px}
.side-h{font-size:16px;letter-spacing:.06em;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--ink)}
.side-h .en{font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--ink-3);text-transform:uppercase;margin-left:8px;font-weight:400}
.side-list{list-style:none;margin:0;padding:0}
.side-list li+li{border-top:1px solid var(--line)}
.side-list a{display:grid;grid-template-columns:76px 1fr;gap:12px;align-items:center;padding:10px 0}
.side-ic{overflow:hidden;border:1px solid var(--line);aspect-ratio:4/3;background:var(--paper-2)}
.side-ic img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.side-list a:hover .side-ic img{transform:scale(1.08)}
.side-t{font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.side-list a:hover .side-t{color:var(--lake)}
.side-tags{display:flex;flex-wrap:wrap;gap:8px}
.side-tags a{font-size:12.5px;padding:4px 10px;border:1px solid var(--line);color:var(--ink-2);transition:.15s}
.side-tags a:hover{border-color:var(--pine);background:var(--pine);color:#fff}
.side-contact{text-align:center}
.side-qr{display:block;margin:0 auto 10px;border:1px solid var(--line)}
.side-qr-tip{font-size:12.5px;color:var(--ink-3);margin:0 0 14px}
.side-tel{display:block;margin:0 0 14px;text-decoration:none}
.side-tel b{display:block;font-size:21px;letter-spacing:.04em;color:var(--pine)}
.side-tel span{font-size:11.5px;color:var(--ink-3);letter-spacing:.08em}
.side-btn{display:block;text-align:center}

/* 产品详情头部 */
.pgrid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start;margin-bottom:40px}
.pmain{margin:0;border:1px solid var(--line);overflow:hidden}
.pmain img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.pinfo h1{font-size:clamp(24px,3.2vw,36px);line-height:1.3;letter-spacing:.02em;margin:10px 0 12px}
.pinfo-sub{font-size:15.5px;color:var(--ink-2);line-height:1.85;margin:0 0 20px}
.price-card{
  background:linear-gradient(180deg,#fdf8f2,var(--white));
  border:1px solid rgba(193,39,45,.35);padding:20px 24px 18px;margin:0 0 20px;
}
.price-lab{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;color:var(--ochre);text-transform:uppercase;margin:0 0 6px}
.price-num{margin:0 0 10px;color:#c1652f}
.price-num em{font-style:normal;font-size:20px;vertical-align:10px;margin-right:2px}
.price-num b{font-size:44px;font-weight:700;letter-spacing:-.01em;line-height:1}
.price-num span{font-size:13px;color:var(--ink-3);margin-left:8px}
.price-perks{list-style:none;display:flex;gap:18px;margin:0;padding:0;font-size:13px;color:var(--ink-2)}
.price-perks li::before{content:"✓ ";color:var(--gold);font-weight:700}
.pfacts{
  display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);margin:0 0 20px;
}
.pfacts>div{padding:13px 18px;border-bottom:1px solid var(--line);font-size:14px}
.pfacts>div:nth-child(odd){border-right:1px solid var(--line)}
.pfacts>div:nth-last-child(-n+2){border-bottom:0}
.pfacts dt{font-size:12px;color:var(--ink-3);margin-bottom:3px}
.pfacts dd{margin:0;color:var(--ink);font-weight:500}
.hot-num{color:#c1652f}
.pbtns{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;margin:0 0 10px}
.btn-ghost{display:inline-block;text-align:center;border:1px solid var(--ink);color:var(--ink);padding:12px 22px;text-decoration:none;font-size:15px;transition:.2s}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-tel{font-size:16.5px;letter-spacing:.03em}
.pbtn-note{font-size:12px;color:var(--ink-3);margin:0;line-height:1.7}

/* 首页产品横排列表 */
.plist{border-top:1px solid var(--line)}
.prow{
  display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:24px;align-items:center;
  padding:20px 12px;border-bottom:1px solid var(--line);transition:.2s;
}
.prow:hover{background:var(--white)}
.prow-media{position:relative;overflow:hidden;border:1px solid var(--line);aspect-ratio:3/2;background:var(--paper-2)}
.prow-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.prow:hover .prow-media img{transform:scale(1.06)}
.prow-no{position:absolute;left:0;top:0;background:var(--ink);color:#fff;font-family:var(--mono);font-size:10.5px;padding:4px 8px;letter-spacing:.08em}
.prow-sub{display:block;font-size:12.5px;color:var(--ochre);margin-bottom:4px}
.prow-t{font-family:var(--serif);font-size:19px;font-weight:700;margin:0 0 6px;line-height:1.4}
.prow:hover .prow-t{color:var(--lake)}
.prow-d{font-size:13.5px;color:var(--ink-2);line-height:1.75;margin:0 0 8px}
.prow-meta{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-3)}
.prow-price{text-align:right;color:#c1652f;white-space:nowrap;padding-right:6px}
.prow-price em{font-style:normal;font-size:14px;vertical-align:6px}
.prow-price b{font-size:26px;font-weight:700}
.prow-price i{display:inline;font-style:normal;font-size:11px;color:var(--ink-3)}

/* 首页一二三日游：展开式图文列表（不再横向轮播） */
.plist.prow-grid{background:var(--white);border-top:2px solid var(--ink)}
.plist.prow-grid .prow{border-bottom:1px solid var(--line)}
.plist.prow-grid .prow:last-child{border-bottom:0}
.plist.prow-grid .prow:hover{background:var(--paper)}
.plist-more{text-align:center;margin:24px 0 0}
.plist-more .btn{min-width:230px}

/* 轮播 */
.car{position:relative}
.car-track{
  display:grid;grid-auto-flow:column;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;
}
.car-track::-webkit-scrollbar{display:none}
.car-track>*{scroll-snap-align:start}
/* 关键：必须清掉 .veh-grid/.ds-grid 的 grid-template-columns:repeat(3,1fr)，
   否则 grid-auto-flow:column 下项目会在同一列里纵向堆叠（表现为“竖着”、不横向滚动） */
.car-track.veh-grid{
  gap:24px;background:none;border:0;
  grid-template-columns:none;grid-template-rows:none;
  grid-auto-columns:calc((100% - 48px)/3);
}
.car-track.veh-grid .veh{border:1px solid var(--line)}
.car-track.ds-grid{
  gap:24px;
  grid-template-columns:none;grid-template-rows:none;
  grid-auto-columns:calc((100% - 48px)/3);
}
/* 一日游 / 两日游 / 三日游：横向卡片从左到右滚动 */
.car-track.prow-grid{
  gap:20px;
  grid-template-columns:none;grid-template-rows:none;
  grid-auto-columns:calc((100% - 20px)/2);
  padding:2px 0 4px;
}
.car-track.prow-grid .prow{
  border:1px solid var(--line);background:var(--white);
  padding:18px 16px;border-bottom:1px solid var(--line);
}
.car-track.prow-grid .prow:hover{border-color:var(--line-2)}
.car-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}
.car-btn{
  width:38px;height:38px;border:1px solid var(--line);background:var(--white);color:var(--ink);
  font-size:20px;line-height:1;cursor:pointer;transition:.15s;
}
.car-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.car-dots{display:flex;gap:8px}
.car-dots i{width:8px;height:8px;border-radius:50%;background:var(--line-2);cursor:pointer;transition:.15s}
.car-dots i.on{background:var(--ochre);transform:scale(1.15)}

/* 为什么选择我们 */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.why{background:var(--white);border:1px solid var(--line);padding:26px 24px}
.why-no{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--gold)}
.why h3{font-family:var(--serif);font-size:19px;margin:8px 0 10px}
.why p{font-size:14px;color:var(--ink-2);line-height:1.8;margin:0}

/* 预订流程 */
.steps{
  list-style:none;counter-reset:st;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);
}
.steps li{background:var(--paper);padding:24px 20px 26px;position:relative}
.step-no{
  display:inline-block;width:34px;height:34px;line-height:34px;text-align:center;
  background:var(--pine);color:#fff;font-family:var(--mono);font-size:15px;margin-bottom:14px;
}
.steps h3{font-family:var(--serif);font-size:17.5px;margin:0 0 8px}
.steps p{font-size:13px;color:var(--ink-2);line-height:1.75;margin:0}

/* FAQ 两列 */
.faq-cols{display:grid;grid-auto-flow:column;grid-template-rows:repeat(6,auto);gap:0 48px;border-top:0}
.faq-cols .faq-i:nth-child(1),.faq-cols .faq-i:nth-child(7){border-top:2px solid var(--ink)}

/* 硬数据卡 —— 本站内容的核心识别元素 */
.fact-row{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  border:1px solid var(--ink);margin:0 0 1.8em;background:var(--white);
}
.fact{
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:15px 17px;display:flex;flex-direction:column;gap:5px;
}
.fact-k{
  font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);
}
.fact-v{font-size:14.5px;line-height:1.6;color:var(--ink);font-family:var(--serif)}

.notice{
  border-left:3px solid var(--lake);background:var(--paper-2);
  padding:16px 20px;margin:0 0 1.6em;font-size:15px;line-height:1.8;
}
.notice strong{color:var(--lake)}
.tip{border-left:3px solid var(--gold);background:rgba(193,39,45,.07);padding:14px 20px;font-size:15px;line-height:1.8}
.tip strong{color:#8a431d}

/* 问答 / 步骤 */
.qa{margin:0 0 1.6em;border-top:1px solid var(--line)}
.qa dt{font-family:var(--serif);font-weight:700;font-size:16px;margin:.9em 0 .3em;color:var(--pine)}
.qa dd{margin:0 0 1em;font-size:15px;color:var(--ink-2);line-height:1.8}
.step{counter-reset:s;list-style:none;padding:0;margin:0 0 1.6em}
.step li{
  counter-increment:s;position:relative;padding-left:44px;margin-bottom:.85em;line-height:1.8;
}
.step li::before{
  content:counter(s,decimal-leading-zero);position:absolute;left:0;top:3px;
  font-family:var(--mono);font-size:12px;color:#fff;background:var(--ink);
  width:28px;height:22px;line-height:22px;text-align:center;letter-spacing:.02em;
}
.step li strong{color:var(--pine)}

/* 上下篇 + 相关 */
.pager{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin:40px 0 0}
.pager a{background:var(--paper);padding:18px 22px;font-size:15px;transition:.2s}
.pager a:hover{background:var(--white)}
.pager .lab{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--ink-3);text-transform:uppercase;display:block;margin-bottom:6px}
.pager .next{text-align:right}

.related{border-top:2px solid var(--ink);margin-top:54px;padding-top:30px}
.related .card-grid{gap:26px 24px;margin-top:24px}
.rel-h{font-size:26px;letter-spacing:.04em;margin:0}
.rel-h .en{
  font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--ink-3);
  text-transform:uppercase;font-weight:400;margin-left:10px;vertical-align:3px;
}

/* 侧栏（列表页右栏）—— 不用，改为全宽 + 底部推荐 */

/* ---------- 留言表单 --------------------------------------------------- */
.form-box{border:1px solid var(--ink);background:var(--white);padding:28px;margin:36px 0 0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form-box label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}
.form-box input,.form-box textarea{
  width:100%;border:1px solid var(--line-2);background:var(--paper);padding:11px 13px;
  font-family:var(--sans);font-size:15px;color:var(--ink);border-radius:0;
}
.form-box input:focus,.form-box textarea:focus{outline:0;border-color:var(--pine);background:#fff}
.form-box textarea{min-height:130px;resize:vertical}
.form-box button{
  background:var(--pine);color:#fff;border:0;padding:13px 34px;font-size:15px;cursor:pointer;
  font-family:var(--sans);transition:.18s;
}
.form-box button:hover{background:var(--lake)}
.form-box .form-full{grid-column:1/-1}
.form-box .hint{font-size:13px;color:var(--ink-3);margin:0 0 18px;line-height:1.7}
.form-cc{display:flex;gap:10px;align-items:stretch}
.form-cc input{flex:1;min-width:0}
.form-cc img{
  flex:none;height:45px;width:132px;cursor:pointer;object-fit:cover;
  border:1px solid var(--line-2);background:var(--paper-2);
}
.form-cc img:hover{border-color:var(--pine)}

/* ---------- 页脚 -------------------------------------------------------- */
.ft{background:var(--pine);color:rgba(255,255,255,.72);margin-top:82px;position:relative;overflow:hidden}
.ft-map{position:absolute;inset:0;opacity:.1;pointer-events:none}
.ft-map path{fill:none;stroke:#fff;stroke-width:1}
.ft-in{position:relative;max-width:var(--maxw);margin:0 auto;padding:56px 28px 0}
.ft-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px;padding-bottom:44px}
.ft-brand .brand-cn{color:#fff;font-size:22px}
.ft-brand .brand-en{color:var(--gold)}
.ft-brand p{font-size:14px;line-height:1.85;margin-top:16px;max-width:34em}
.ft-h{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.ft ul{list-style:none;padding:0;margin:0}
.ft li{margin:0}
.ft li a{display:block;padding:5px 0;font-size:14.5px;color:rgba(255,255,255,.75)}
.ft li a:hover{color:#fff;padding-left:6px}
.ft-bot{
  border-top:1px solid rgba(255,255,255,.16);padding:20px 0 26px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:rgba(255,255,255,.5);
  display:flex;gap:18px;flex-wrap:wrap;
}
.ft-bot a:hover{color:#fff}

/* ---------- 分页 -------------------------------------------------------- */
.pages{display:flex;gap:6px;justify-content:center;align-items:center;margin:44px 0 0;flex-wrap:wrap}
.pages a,.pages span{
  min-width:38px;height:38px;line-height:36px;text-align:center;border:1px solid var(--line-2);
  font-family:var(--mono);font-size:13px;color:var(--ink-2);padding:0 10px;transition:.18s;
}
.pages a:hover{border-color:var(--ink);background:var(--ink);color:#fff}
.pages span.on{background:var(--pine);border-color:var(--pine);color:#fff}
.pages .nolink{opacity:.32;border-style:dashed}

/* ---------- 404 / 搜索结果 ---------------------------------------------- */
.empty{padding:80px 0;text-align:center}
.empty h1{font-size:34px;margin-bottom:12px}
.empty p{color:var(--ink-3)}

/* ---------- 通用区块间距 ------------------------------------------------ */
.sec{padding:48px 0 4px}
.sec-end{padding-bottom:64px}
.sec-hd h2 .en{
  font-family:var(--mono);font-size:10px;letter-spacing:.26em;color:var(--ink-3);
  text-transform:uppercase;display:block;margin-bottom:7px;
}
.quicklinks{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.quicklinks a{
  border:1px solid var(--line-2);padding:9px 16px;font-size:14.5px;color:var(--ink-2);transition:.18s;
}
.quicklinks a:hover{border-color:var(--pine);background:var(--pine);color:#fff}

/* ---------- 搜索 -------------------------------------------------------- */
.searchbar{display:flex;gap:10px;margin:0 0 28px}
.searchbar input{
  flex:1;min-width:0;border:1px solid var(--line-2);background:var(--white);padding:12px 15px;
  font-family:var(--sans);font-size:16px;color:var(--ink);border-radius:0;
}
.searchbar input:focus{outline:0;border-color:var(--pine)}
.searchbar button{
  flex:none;background:var(--pine);color:#fff;border:0;padding:12px 30px;
  font-size:15px;cursor:pointer;font-family:var(--sans);transition:.18s;
}
.searchbar button:hover{background:var(--lake)}
.hit{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ochre);margin:0 0 22px;padding-bottom:16px;border-bottom:1px solid var(--line);
}
.hit b{color:var(--pine)}

/* ---------- 标签 -------------------------------------------------------- */
/* 词条：改为独立胶囊，容器不再铺底色（标签少时不会露出大片空白） */
.taglist{display:flex;flex-wrap:wrap;gap:10px;background:none;border:0}
.taglist a{
  background:var(--white);border:1px solid var(--line);border-radius:2px;
  padding:9px 15px;font-size:14.5px;transition:.18s;
  display:flex;align-items:baseline;gap:9px;color:var(--ink);
}
.taglist a:hover{background:var(--pine);color:#fff;border-color:var(--pine)}
.taglist a:hover i{color:#fff}
.taglist a i{
  font-family:var(--mono);font-size:10px;font-style:normal;letter-spacing:.1em;color:var(--gold);
}
.tags-inline{
  display:flex;flex-wrap:wrap;gap:9px;padding:0;margin:30px 0 0;list-style:none;
}
.tags-inline li{margin:0}
.tags-inline a{
  display:block;border:1px solid var(--line-2);padding:6px 14px;font-size:13.5px;
  color:var(--ink-2);transition:.18s;
}
.tags-inline a:hover{border-color:var(--pine);background:var(--pine);color:#fff}

/* ---------- 天气（首页 · 最近 7 天） ------------------------------------ */
.wx{border:1px solid var(--ink);background:var(--white)}
.wx-hd{
  display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
  padding:12px 18px;border-bottom:1px solid var(--ink);background:var(--pine);color:#fff;
}
.wx-t{font-family:var(--serif);font-size:17px;font-weight:700;letter-spacing:.08em}
.wx-t em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--gold);margin-left:10px}
.wx-src{margin-left:auto;font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:rgba(255,255,255,.6)}
.wx-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.wx-d{padding:14px 8px 15px;text-align:center;border-right:1px solid var(--line)}
.wx-d:last-child{border-right:0}
.wx-d.now{background:var(--paper-2)}
.wx-date{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3)}
.wx-date i{display:block;font-style:normal;margin-top:3px;font-size:10px;color:var(--ochre)}
.wx-ic{display:block;margin:9px 0 6px;font-size:14px;color:var(--ink-2);line-height:1.3}
.wx-tmp{display:block;font-family:var(--serif);font-size:18px;font-weight:700;color:var(--pine)}
.wx-tmp em{font-style:normal;font-weight:400;font-size:14px;color:var(--ink-3);margin-left:4px}
.wx-wind{display:block;margin-top:6px;font-size:12px;color:var(--ink-2);line-height:1.5}
.wx-pop{display:block;margin-top:3px;font-family:var(--mono);font-size:10px;color:var(--ink-3)}
.wx-fail{border:1px dashed var(--line-2);padding:16px 18px;font-size:14px;color:var(--ink-3)}

/* ---------- 用车展示 ---------------------------------------------------- */
.veh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.veh{background:var(--paper);display:flex;flex-direction:column;transition:.2s}
.veh:hover{background:var(--white)}
.veh-media{aspect-ratio:16/10;overflow:hidden;background:var(--paper-2);border-bottom:1px solid var(--line)}
.veh-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.veh:hover .veh-media img{transform:scale(1.06)}
.veh-b{padding:16px 18px 20px;flex:1;display:flex;flex-direction:column}
.veh-k{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ochre);margin:0 0 8px}
.veh-t{font-family:var(--serif);font-size:19px;font-weight:700;margin:0 0 7px;line-height:1.4}
.veh:hover .veh-t{color:var(--lake)}
.veh-d{font-size:14px;color:var(--ink-2);line-height:1.75;margin:0 0 14px}
.veh-spec{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}
.veh-spec span{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;background:var(--paper-2);
  border:1px solid var(--line);padding:4px 8px;color:var(--ink-2);
}

/* ---------- 定制师团队 -------------------------------------------------- */
.ds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ds{display:flex;gap:15px;align-items:flex-start;border:1px solid var(--line);background:var(--white);padding:17px;transition:.2s}
.ds:hover{border-color:var(--ink)}
.ds-av{width:84px;flex:none;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);background:var(--paper-2)}
.ds-av img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05)}
.ds-b{min-width:0}
.ds-n{font-family:var(--serif);font-size:19px;font-weight:700;margin:0 0 4px;line-height:1.3}
.ds-f{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--ochre);margin:0 0 9px}
.ds-d{font-size:14px;color:var(--ink-2);line-height:1.75;margin:0}
.ds-y{margin-top:9px;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);letter-spacing:.06em}

/* ---------- 常见问题 ---------------------------------------------------- */
.faq-list{border-top:2px solid var(--ink)}
.faq-i{border-bottom:1px solid var(--line)}
.faq-q{
  display:flex;gap:14px;align-items:center;padding:15px 4px;cursor:pointer;list-style:none;
  font-family:var(--serif);font-size:17px;font-weight:700;color:var(--pine);
}
.faq-q::-webkit-details-marker{display:none}
.faq-q::before{
  content:"Q";font-family:var(--mono);font-size:11px;color:#fff;background:var(--ochre);
  width:22px;height:22px;line-height:22px;text-align:center;flex:none;
}
.faq-i[open] .faq-q{color:var(--ochre)}
.faq-a{padding:0 4px 18px 36px;font-size:15px;line-height:1.85;color:var(--ink-2)}
.faq-a p{margin:0 0 .8em}
.faq-a p:last-child{margin-bottom:0}
.faq-a a{color:var(--lake);border-bottom:1px solid var(--line-2)}
.faq-a h2,.faq-a h3{
  font-family:var(--serif);font-size:15.5px;font-weight:700;color:var(--pine);
  margin:16px 0 8px;
}
.faq-a h2:first-child,.faq-a h3:first-child{margin-top:0}
.faq-a ul,.faq-a ol{margin:0 0 .8em;padding-left:1.3em}
.faq-a li{margin:0 0 .4em}
/* 栏目页：一句话结论 */
.faq-lead{
  font-weight:600;color:var(--ink);background:var(--paper-2);
  border-left:3px solid var(--ochre);padding:9px 12px;margin:0 0 12px;
}
.faq-more{margin-top:22px;font-family:var(--mono);font-size:12px;letter-spacing:.12em}
/* 栏目页：两列 10 行，铺满 20 条 */
.faq-cols-page{
  display:grid;grid-auto-flow:column;grid-template-rows:repeat(10,auto);
  grid-template-columns:none;gap:0 52px;border-top:0;
}
.faq-cols-page .faq-i:nth-child(1),
.faq-cols-page .faq-i:nth-child(11){border-top:2px solid var(--ink)}

/* ---------- 定制游专题 -------------------------------------------------- */
.dz{display:grid;grid-template-columns:1.05fr .95fr;border:1px solid var(--ink);background:var(--white)}
.dz-l{padding:36px 38px;border-right:1px solid var(--line)}
.dz-r{padding:36px 38px;background:var(--paper-2)}
.dz h3{font-family:var(--serif);font-size:26px;margin:0 0 12px;letter-spacing:.03em;line-height:1.35}
.dz p{font-size:15.5px;line-height:1.9;color:var(--ink-2);margin:0 0 15px}
.dz-l .dz-lead{font-family:var(--serif);font-size:17px;color:var(--ink);line-height:1.85}
.dz-ul{list-style:none;padding:0;margin:0 0 22px}
.dz-ul li{padding:9px 0;border-bottom:1px dashed var(--line);font-size:15px;display:flex;gap:10px;line-height:1.7}
.dz-ul li::before{content:"—";color:var(--ochre);flex:none}
.dz-dl{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:0 0 22px}
.dz-dl div{background:var(--paper);padding:13px 15px}
.dz-dl dt{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 5px}
.dz-dl dd{margin:0;font-family:var(--serif);font-size:15px;color:var(--ink);line-height:1.55}

/* ---------- 每日行程（路线产品页） -------------------------------------- */
.tripdays{margin:0 0 42px;border-top:2px solid var(--ink);padding-top:24px}
.td-hd{margin:0 0 20px}
.td-t{
  font-family:var(--serif);font-size:26px;letter-spacing:.03em;margin:0 0 6px;line-height:1.35;
}
.td-num{
  display:inline-block;vertical-align:4px;margin-right:12px;
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:#fff;background:var(--gold);padding:4px 9px;line-height:1.2;
}
.td-note{margin:0;font-size:13px;color:var(--ink-3);line-height:1.7}

.td-list{list-style:none;margin:0;padding:0}
.td-item{border:1px solid var(--line);background:var(--white);margin:0 0 12px}
.td-item-hd{
  display:grid;grid-template-columns:auto minmax(0,1fr) 26px;gap:16px;align-items:center;
  padding:16px 20px;cursor:pointer;transition:background .18s;user-select:none;
}
.td-item-hd:hover{background:var(--paper)}
.td-item-hd:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.td-day{
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:#fff;
  background:var(--pine);padding:7px 11px;line-height:1;flex:none;
}
.td-day b{font-size:15px;font-weight:700;margin-left:2px}
.td-title{font-family:var(--serif);font-size:17.5px;font-weight:700;line-height:1.45}
.td-toggle{
  position:relative;width:26px;height:26px;border:1px solid var(--line-2);border-radius:50%;
}
.td-toggle::before,.td-toggle::after{
  content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:var(--ink-2);
  transform:translate(-50%,-50%);transition:.2s;
}
.td-toggle::after{transform:translate(-50%,-50%) rotate(90deg)}
.td-item.open .td-toggle::after{transform:translate(-50%,-50%) rotate(0)}
.td-item.open .td-day{background:var(--gold)}

.td-item-bd{display:none;border-top:1px dashed var(--line);padding:20px}
.td-item.open .td-item-bd{display:block}

.td-dest{margin:0 0 18px;font-size:15.5px;line-height:1.75;color:var(--ink)}
.td-dest em{
  font-style:normal;display:inline-block;margin-right:10px;vertical-align:2px;
  font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;background:var(--ochre);padding:3px 8px;line-height:1.3;
}
/* 用餐 / 住宿 / 交通 / 里程 —— 拉开成一排四格，比上下堆信息更好扫读 */
.td-facts{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);margin:0 0 18px;
}
.td-f{background:var(--paper);padding:13px 15px}
.td-f dt{
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-3);margin:0 0 5px;
}
.td-f dd{margin:0;font-size:14px;line-height:1.6;color:var(--ink)}

.td-detail{
  position:relative;font-size:15px;line-height:1.9;color:var(--ink-2);
  border-left:2px solid var(--gold);padding:4px 0 4px 18px;
}
.td-lab{
  display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin:0 0 8px;
}
.td-detail br{display:block;content:"";margin:2px 0}

/* 每日行程 · 途经景点（后台搜索框添加，连带景点图片，点击可放大） */
.td-spots{margin:0 0 18px}
.td-spots .td-lab{margin:0 0 10px}
.td-spot-list{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px;
}
.td-spot{margin:0;min-width:0}
.td-spot-pic{
  position:relative;display:block;overflow:hidden;
  border:1px solid var(--line);background:var(--paper-2);
  aspect-ratio:4/3;cursor:zoom-in;
}
.td-spot-pic img{width:100%;height:100%;object-fit:cover;transition:transform .38s ease}
.td-spot-pic:hover img{transform:scale(1.06)}
.td-spot-pic::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.42) 100%);
  opacity:0;transition:opacity .28s ease;
}
.td-spot-pic:hover::after{opacity:1}
.td-spot-zoom{
  position:absolute;right:7px;bottom:7px;width:22px;height:22px;
  background:var(--gold);border-radius:50%;opacity:0;transition:opacity .28s ease;
}
.td-spot-zoom::before,.td-spot-zoom::after{
  content:"";position:absolute;top:50%;left:50%;background:#fff;
}
.td-spot-zoom::before{width:11px;height:1.5px;transform:translate(-50%,-50%)}
.td-spot-zoom::after{width:1.5px;height:11px;transform:translate(-50%,-50%)}
.td-spot-pic:hover .td-spot-zoom{opacity:1}
.td-spot-name{
  display:block;margin-top:6px;font-size:13px;line-height:1.5;color:var(--ink-2);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.td-spot-name:hover{color:var(--gold-deep)}
.td-spot-txt{
  display:flex;align-items:center;gap:6px;justify-content:center;
  min-height:60px;padding:10px 12px;text-align:center;
  background:var(--paper-2);border:1px dashed var(--line-2);
  font-size:14px;line-height:1.5;color:var(--ink-2);
}
.td-spot-txt::before{content:"◇";color:var(--gold);font-size:12px}

/* 轻量灯箱（不依赖第三方 CDN） */
.lb-mask{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  padding:5vh 6vw;background:rgba(12,14,16,.92);
  opacity:0;transition:opacity .24s ease;
}
.lb-mask[hidden]{display:none}
.lb-mask.on{opacity:1}
.lb-box{margin:0;max-width:100%;max-height:100%;text-align:center}
.lb-img{
  max-width:100%;max-height:82vh;width:auto;height:auto;
  border:3px solid var(--white);background:var(--white);
}
.lb-cap{
  margin:14px 0 0;font-family:var(--serif);font-size:15px;letter-spacing:.05em;
  color:var(--white);opacity:.9;
}
.lb-close,.lb-nav{
  position:absolute;border:0;cursor:pointer;color:var(--white);
  background:rgba(255,255,255,.12);transition:background .2s ease;
}
.lb-close:hover,.lb-nav:hover{background:var(--gold)}
.lb-close{top:18px;right:22px;width:42px;height:42px;font-size:26px;line-height:1}
.lb-nav{
  top:50%;transform:translateY(-50%);width:46px;height:64px;font-size:20px;
}
.lb-prev{left:14px}
.lb-next{right:14px}
@media (max-width:640px){
  .td-spot-list{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:9px}
  .lb-nav{width:38px;height:54px}
  .lb-close{top:12px;right:12px;width:38px;height:38px}
}

/* ---------- 产品详情 · 左栏补充（填充原空白区） ------------------------- */
.pmedia-hd{
  display:flex;align-items:center;gap:12px;margin:18px 0 12px;
  padding-bottom:9px;border-bottom:2px solid var(--ink);
}
.pm-lab{
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:#fff;background:var(--gold);padding:4px 9px;line-height:1.3;
}
.pm-code{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:var(--ink-3);margin-left:auto}

.pnotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.pnote{background:var(--paper);padding:16px 16px 18px}
.pnote h3{
  font-family:var(--serif);font-size:15px;margin:0 0 10px;letter-spacing:.04em;
  padding-bottom:8px;border-bottom:1px solid var(--line);
}
.pnote ul{list-style:none;margin:0;padding:0}
.pnote li{
  font-size:13px;line-height:1.65;color:var(--ink-2);padding:5px 0 5px 15px;position:relative;
}
.pnote li::before{content:"";position:absolute;left:0;top:13px;width:6px;height:1px;background:var(--gold)}

.pquick{
  display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);margin:0 0 20px;
}
.pq-item{background:var(--white);padding:12px 16px;font-size:14px;color:var(--ink)}
.pq-item i{
  display:block;font-style:normal;font-family:var(--mono);font-size:10px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px;
}
.pq-item a{color:var(--gold)}
.pq-item a:hover{text-decoration:underline}

/* ---------- 文章页 · 提要卡与元信息 ------------------------------------- */
.crumb em{font-style:normal;color:var(--ink);opacity:1}
.art-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:0;
  font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3);
  margin:0 0 22px;padding:11px 0;border-top:1px solid var(--line);border-bottom:2px solid var(--ink);
}
.am-item{padding:0 20px;border-right:1px solid var(--line);line-height:1.5}
.am-item:first-child{padding-left:0}
.am-item:last-child{border-right:0}
.am-item i{font-style:normal;color:var(--ink-3);margin-right:8px;text-transform:uppercase}
.am-item a{color:var(--gold)}
.am-item a:hover{text-decoration:underline}

.art-brief{
  background:var(--white);border:1px solid var(--line);border-left:3px solid var(--gold);
  padding:22px 26px 20px;margin:0 0 34px;
}
.ab-t{
  font-family:var(--serif);font-size:17px;letter-spacing:.06em;margin:0 0 10px;
  padding-bottom:9px;border-bottom:1px dashed var(--line);
}
.ab-p{margin:0 0 14px;font-size:15px;line-height:1.85;color:var(--ink-2)}
.ab-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}
.ab-tags li{margin:0}
.ab-tags a{
  display:inline-block;font-size:12px;padding:4px 10px;border:1px solid var(--line);
  color:var(--ink-2);transition:.15s;
}
.ab-tags a:hover{border-color:var(--gold);background:var(--gold);color:#fff}

/* 正文：统一由文件末尾「正文标题层级」区块接管（2026-10-30） */
.art-body blockquote{
  margin:1.6em 0;padding:16px 22px;background:var(--paper);
  border:1px solid var(--line);border-left:3px solid var(--ochre);
  font-family:var(--serif);font-size:15.5px;line-height:1.85;color:var(--ink-2);
}
.art-body table th{background:var(--paper);text-align:left;font-family:var(--serif)}
.art-body img{border-radius:0}
.art-body figure{margin:1.8em 0}
.art-body figcaption{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3);margin-top:8px}

/* ---------- 响应式 ------------------------------------------------------ */
@media (max-width:1080px){
  .vol-grid{grid-template-columns:repeat(2,1fr)}
  .card-grid{grid-template-columns:repeat(2,1fr)}
  .seasons{grid-template-columns:repeat(2,1fr)}
  .season:nth-child(2){border-right:0}
}
@media (max-width:860px){
  :root{--hd:62px}
  .wrap,.wrap-narrow,.hd-in,.hero-in,.ft-in{padding-left:20px;padding-right:20px}
  .nav{display:none}
  .burger{display:block}
  .hero-in{grid-template-columns:1fr;gap:24px;padding-top:26px;padding-bottom:24px}
  .hero-lead{font-size:16px}
  .hero-stat{padding-right:20px;margin-right:20px}
  .hero-stat b{font-size:20px}
  .sec-hd{flex-direction:column;align-items:flex-start;gap:10px}
  .sec-hd .note{text-align:left;margin-left:0}
  .post{grid-template-columns:1fr;gap:16px}
  .post-media{aspect-ratio:16/9}
  .ft-top{grid-template-columns:1fr;gap:30px}
  .pager{grid-template-columns:1fr}
  .pager .next{text-align:left}
  .form-row{grid-template-columns:1fr}
  .wx-grid{grid-template-columns:repeat(4,1fr)}
  .wx-d{border-bottom:1px solid var(--line)}
  .veh-grid{grid-template-columns:repeat(2,1fr)}
  .ds-grid{grid-template-columns:repeat(2,1fr)}
  .dz{grid-template-columns:1fr}
  .dz-l{border-right:0;border-bottom:1px solid var(--line);padding:28px 24px}
  .dz-r{padding:28px 24px}
}
@media (max-width:600px){
  body{font-size:15.5px}
  .vol-grid{grid-template-columns:1fr}
  .card-grid{grid-template-columns:1fr;gap:30px}
  .seasons{grid-template-columns:1fr}
  .season{border-right:0!important}
  .volumes{padding:52px 0 12px}
  .form-box{padding:20px}
  .wx-grid{grid-template-columns:repeat(2,1fr)}
  .veh-grid{grid-template-columns:1fr}
  .ds-grid{grid-template-columns:1fr}
  .dz-dl{grid-template-columns:1fr}
  .faq-q{font-size:16px}
  .faq-a{padding-left:4px}
}

@media print{
  .hd,.ft,.drawer,.hero-map,.pager,.related{display:none!important}
  body{background:#fff}
}

/* ---------- 新组件响应式 ----------------------------------------------- */
@media (max-width:1080px){
  .detail-grid{grid-template-columns:minmax(0,1fr) 280px;gap:32px}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .detail-grid{grid-template-columns:1fr}
  .side{position:static;grid-template-columns:1fr 1fr;gap:20px}
  .pgrid{grid-template-columns:1fr;gap:26px}
  .prow{grid-template-columns:150px minmax(0,1fr) auto;gap:16px}
  .prow-media{width:150px}
  .prow-d{display:none}
  .car-track.veh-grid,.car-track.ds-grid{grid-template-columns:none;grid-auto-columns:calc((100% - 24px)/2)}
  .car-track.prow-grid{grid-auto-columns:calc((100% - 16px)/1.45)}
  .steps{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .side{grid-template-columns:1fr}
  .prow{grid-template-columns:110px minmax(0,1fr);padding:16px 4px}
  .prow-media{width:110px}
  .prow-price{grid-column:2;text-align:left;padding:0}
  .prow-price b{font-size:22px}
  .why-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .faq-cols,.faq-cols-page{grid-auto-flow:row;grid-template-rows:none;gap:0}
  .faq-cols .faq-i:nth-child(1),
  .faq-cols-page .faq-i:nth-child(1){border-top:2px solid var(--ink)}
  .faq-cols .faq-i:nth-child(7),
  .faq-cols-page .faq-i:nth-child(11){border-top:0}
  .pfacts{grid-template-columns:1fr}
  .pfacts>div{border-right:0!important}
  .pfacts>div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .pfacts>div:last-child{border-bottom:0}
  .pbtns{grid-template-columns:1fr}
  .car-track.veh-grid,.car-track.ds-grid{grid-template-columns:none;grid-auto-columns:100%}
  .car-track.prow-grid{grid-auto-columns:100%;gap:14px}
  .car-track.prow-grid .prow{padding:14px 12px}
  .drop-menu{display:none}
}

/* ---------- 右侧悬浮客服（PC 默认展开 / 移动默认收起） ------------------ */
.cs-float{
  position:fixed;right:18px;bottom:26px;z-index:95;
  display:flex;flex-direction:column;align-items:flex-end;gap:12px;
}
.cs-panel{
  width:216px;background:var(--white);border:1px solid var(--line);
  box-shadow:0 12px 30px rgba(21,25,29,.14);overflow:hidden;
}
.cs-panel-hd{
  background:var(--pine);color:#fff;padding:11px 14px;
  display:flex;align-items:baseline;gap:8px;
}
.cs-panel-hd b{font-family:var(--serif);font-size:15px;font-weight:700;letter-spacing:.06em}
.cs-panel-hd span{font-family:var(--mono);font-size:9px;letter-spacing:.18em;opacity:.72}
.cs-panel-bd{padding:6px 14px 14px}
.cs-line{
  display:flex;align-items:center;gap:10px;padding:10px 0;
  border-bottom:1px dashed var(--line);font-size:13.5px;color:var(--ink-2);
}
.cs-line:last-of-type{border-bottom:0}
.cs-line em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-3);flex:none;width:44px}
.cs-line b{color:var(--gold);font-family:var(--mono);font-size:14.5px;letter-spacing:.02em}
.cs-qr{display:block;width:100%;margin-top:12px;border:1px solid var(--line)}
.cs-note{font-size:11.5px;color:var(--ink-3);margin:8px 0 0;line-height:1.6}
.cs-toggle{
  width:54px;height:54px;border-radius:50%;border:0;cursor:pointer;
  background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 22px rgba(193,39,45,.36);transition:.18s;
}
.cs-toggle:hover{background:var(--gold-deep)}
.cs-toggle svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cs-float.closed .cs-panel{display:none}
.cs-float.closed .cs-toggle{background:var(--pine)}

/* ---------- 移动端底部导航（5 个图标，点击变色） ----------------------- */
.mnav{display:none}
@media (max-width:900px){
  .mnav{
    display:grid;grid-template-columns:repeat(5,1fr);
    position:fixed;left:0;right:0;bottom:0;z-index:96;
    background:var(--white);border-top:1px solid var(--line);
    padding-bottom:env(safe-area-inset-bottom,0);
    box-shadow:0 -4px 18px rgba(21,25,29,.07);
  }
  .mnav a{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    padding:8px 2px 7px;font-size:11px;color:var(--ink-3);transition:.15s;
  }
  .mnav a svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .mnav a.on{background:var(--gold);color:#fff}
  .mnav a.on svg{stroke:#fff}
  body{padding-bottom:60px}
  .cs-float{bottom:76px;right:12px}
  .cs-panel{width:200px}
}

/* ---------- 小屏微调（沿用既有 560/400 断点） -------------------------- */
@media (max-width:560px){
  .cs-float{bottom:70px;right:10px}
  .cs-toggle{width:48px;height:48px}
  .cs-panel{width:184px}
}
@media (max-width:400px){
  .mnav a{font-size:10px}
  .cs-panel{width:168px}
}

/* ---------- 专题页（大海道 / 伊吾胡杨林） ------------------------------------- */
.topic-hero{
  position:relative;margin:0 0 34px;padding:64px 0 48px;color:#fff;
  background:#14343a center/cover no-repeat;
}
.topic-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(16,22,26,.86) 0%,rgba(16,22,26,.62) 55%,rgba(16,22,26,.28) 100%)}
.topic-hero>*{position:relative}
.topic-en{
  font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;
  opacity:.78;margin:0 0 12px;
}
.topic-hero h1{
  font-family:var(--serif);font-size:clamp(34px,5.6vw,60px);letter-spacing:.06em;
  margin:0 0 18px;line-height:1.1;
}
.topic-lead{max-width:780px;font-size:15.5px;line-height:1.9;opacity:.94;margin:0 0 26px}
.topic-stats{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;
  background:rgba(255,255,255,.24);border:1px solid rgba(255,255,255,.24);
  margin:0 0 26px;max-width:960px;
}
.topic-stats>div{background:rgba(16,22,26,.46);padding:14px 16px}
.topic-stats em{
  display:block;font-style:normal;font-family:var(--mono);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;opacity:.72;margin-bottom:6px;
}
.topic-stats b{font-family:var(--serif);font-size:19px;font-weight:700;letter-spacing:.03em}

/* 专题页里的静态看点：用列表样式但不上链接态 */
.tk-spots{border-top:2px solid var(--ink)}
.tk-spots .prow{align-items:start}
.tk-spots .prow-media{
  aspect-ratio:3/2;background:linear-gradient(135deg,var(--paper-2),var(--paper));
  border:1px solid var(--line);
}
.tk-spots .prow-media .prow-no{
  position:static;display:flex;align-items:center;justify-content:center;
  width:100%;height:100%;background:none;color:var(--gold);
  font-size:26px;letter-spacing:.06em;
}

/* 通用表格（交通 / 票价 / 逐月） */
.tk-table{width:100%;border-collapse:collapse;font-size:14.5px;margin:0 0 18px}
.tk-table th,.tk-table td{border:1px solid var(--line);padding:11px 16px;text-align:left;vertical-align:top}
.tk-table thead th{background:var(--paper);font-family:var(--serif);font-size:15px;letter-spacing:.03em;white-space:nowrap}
.tk-table tbody tr:nth-child(even) td{background:var(--paper-2)}
.tk-table td:first-child{font-weight:600;white-space:nowrap;color:var(--ink)}
.tk-note{margin:0;font-size:13.5px;line-height:1.8;color:var(--ink-3)}

/* 相关阅读链接组 */
.tk-links{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.tk-links a{
  display:inline-block;padding:9px 16px;border:1px solid var(--line);
  background:var(--white);font-size:14.5px;color:var(--ink);transition:.16s;
}
.tk-links a:hover{border-color:var(--gold);background:var(--gold);color:#fff}
.tk-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0 0 10px}

@media (max-width:900px){
  .topic-hero{padding:48px 0 38px}
  .topic-stats{grid-template-columns:1fr 1fr}
  .tk-links a{font-size:13.5px;padding:8px 13px}
}
@media (max-width:640px){
  .topic-hero{padding:38px 0 30px}
  .topic-lead{font-size:14.5px;line-height:1.85}
  .topic-stats{grid-template-columns:1fr}
  .tk-table th,.tk-table td{padding:9px 11px;font-size:13.5px}
  .tk-table td:first-child{white-space:normal}
  .tk-spots .prow{grid-template-columns:1fr;gap:10px}
  .tk-spots .prow-media{width:100%;aspect-ratio:5/2}
}

/* ---------- 第四轮新增组件 · 响应式 ------------------------------------- */
@media (max-width:900px){
  .pnotes{grid-template-columns:1fr}
  .pquick{grid-template-columns:1fr}
  .td-item-hd{gap:12px;padding:14px 16px}
  .art-brief{padding:18px 18px 16px}
  .am-item{padding:0 14px}
  .pgrid .pmedia{order:1}
  .pgrid .pinfo{order:2}
}
@media (max-width:640px){
  .td-t{font-size:22px}
  .td-item-hd{grid-template-columns:auto minmax(0,1fr) 24px;gap:10px;padding:13px 14px}
  .td-day{padding:6px 9px}
  .td-title{font-size:15.5px}
  .td-toggle{width:24px;height:24px}
  .td-item-bd{padding:16px 14px}
  .td-facts{grid-template-columns:1fr 1fr}
  .td-dest{font-size:14.5px}
  .td-detail{font-size:14.5px;line-height:1.85;padding-left:14px}
  .pmedia-hd{flex-wrap:wrap;gap:8px}
  .pm-code{margin-left:0;width:100%}
  .art-meta{gap:4px 0;font-size:10.5px}
  .am-item{padding:0 12px}
  .ab-p{font-size:14.5px}
}


/* ==========================================================================
   第五轮 · 电商风格改版（E-commerce skin）
   思路：保留原有信息架构，主色换成雅丹落日铜橙，改成电商配色与组件语言——
   白底卡片 + 阴影悬停 + 价格强调 + 标签徽章 + 加购式 CTA + 筛选条。
   本段是覆盖层，加载在原样式之后，只改观感不改结构。
   ========================================================================== */
:root{
  --ec-bg:#f6f3ec;        /* 暖沙底，比原冷灰底更贴合戈壁气质 */
  --ec-card:#fff;
  --ec-line:#eae5db;
  --ec-line-2:#e0d9cd;
  --ec-text:#21201c;
  --ec-text-2:#4d4c45;
  --ec-text-3:#86857c;
  --ec-price:#c1652f;     /* 价格铜橙：雅丹落日色，符合电商价格强调色 */
  --ec-price-2:#e09468;
  --ec-flash:#d98a1f;     /* 促销橙 */
  --ec-green:#0f9d58;
  --ec-shadow:0 1px 2px rgba(24,28,35,.04),0 6px 18px rgba(24,28,35,.06);
  --ec-shadow-2:0 4px 10px rgba(24,28,35,.08),0 18px 40px rgba(24,28,35,.12);
  --ec-radius:14px;
  --ec-radius-sm:10px;
}

body{background:var(--ec-bg);color:var(--ec-text)}

/* ---------- 通用：电商区块标题 ---------- */
.sec{padding:46px 0}
.sec-hd{align-items:center;margin-bottom:22px}
.sec-hd h2{font-family:var(--sans);font-size:26px;font-weight:800;letter-spacing:0;color:var(--ec-text)}
.sec-hd h2 .en{
  display:inline-block;margin-right:10px;padding:2px 8px;border-radius:6px;
  background:linear-gradient(135deg,var(--gold),var(--ec-price-2));
  color:#fff;font-family:var(--mono);font-size:11px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;vertical-align:3px;
}
.sec-hd .note{font-size:13px;color:var(--ec-text-3);line-height:1.65}

/* ---------- 商品卡（景点 / 攻略 / 列表页统一） ---------- */
.card-grid{grid-template-columns:repeat(3,1fr);gap:20px}
.card{
  background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);
  overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--ec-shadow-2);border-color:var(--ec-line-2)}
.card-media{aspect-ratio:4/3;background:var(--ec-line);border:0}
.card:hover .card-media img{transform:scale(1.06)}
.card-no{
  left:10px;top:10px;border-radius:6px;background:rgba(21,25,29,.72);backdrop-filter:blur(4px);
  font-size:10px;padding:3px 7px;
}
.card-body{padding:14px 16px 16px;gap:0}
.card-sub{
  margin:0 0 7px;font-size:12px;color:var(--ec-text-3);display:flex;align-items:center;gap:6px;
}
.card-sub::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--ec-flash)}
.card-t{font-family:var(--sans);font-size:16px;font-weight:700;line-height:1.5;margin:0 0 7px;letter-spacing:0}
.card:hover .card-t{color:var(--ec-price)}
.card-desc{font-size:13px;color:var(--ec-text-2);line-height:1.7;margin:0 0 10px}
.card-meta{
  margin-top:auto;padding-top:10px;border-top:1px dashed var(--ec-line-2);
  font-family:var(--sans);font-size:12px;color:var(--ec-text-3);letter-spacing:0;
}

/* ---------- 价格 / 标签 / 徽章 ---------- */
.ec-tag{
  display:inline-block;padding:1px 6px;border-radius:4px;font-size:11px;line-height:1.7;
  background:#fdf3ea;color:var(--ec-price);border:1px solid #f3dcc9;font-weight:600;
}
.ec-tag.ec-tag-orange{background:#fff6ec;color:var(--ec-flash);border-color:#f6e2c8}
.ec-tag.ec-tag-green{background:#eefaf1;color:var(--ec-green);border-color:#c9ecd5}
.ec-tag.ec-tag-gray{background:#f4f5f7;color:var(--ec-text-3);border-color:var(--ec-line-2)}
.ec-badge{
  position:absolute;left:0;top:0;z-index:2;padding:3px 9px;border-radius:0 0 8px 0;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;
}
.ec-star{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--ec-text-3)}
.ec-star b{color:var(--ec-flash);font-weight:700}
.ec-star i{font-style:normal;color:#d9981f;letter-spacing:-1px}

/* ---------- 商品行（首页一二三日游 / 专题页推荐） ---------- */
.plist.prow-grid{background:transparent;border-top:0;display:grid;gap:12px}
.plist.prow-grid .prow{
  background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);
  padding:12px;gap:16px;align-items:center;
  transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease;
}
.plist.prow-grid .prow:last-child{border-bottom:1px solid var(--ec-line)}
.plist.prow-grid .prow:hover{background:var(--ec-card);border-color:#f0d5bd;box-shadow:var(--ec-shadow-2);transform:translateY(-2px)}
.prow-media{border:0;border-radius:var(--ec-radius-sm);aspect-ratio:4/3;max-width:210px;background:var(--ec-line)}
.prow-no{border-radius:6px;background:rgba(21,25,29,.72);left:8px;top:8px;font-size:10px;padding:3px 7px}
.prow-sub{font-size:12px;color:var(--ec-text-3);margin-bottom:5px}
.prow-t{font-family:var(--sans);font-size:17px;font-weight:700;line-height:1.45;margin:0 0 6px}
.prow:hover .prow-t{color:var(--ec-price)}
.prow-d{font-size:13px;color:var(--ec-text-2);line-height:1.7;margin:0 0 8px}
.prow-meta{font-family:var(--sans);font-size:12px;color:var(--ec-text-3);letter-spacing:0}
.prow-price{
  min-width:120px;text-align:right;padding-right:16px;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;justify-content:flex-end;gap:3px;white-space:nowrap;
}
.prow-price em{font-style:normal;font-size:13px;color:var(--ec-price);vertical-align:4px}
.prow-price b{font-family:var(--sans);font-size:28px;font-weight:800;color:var(--ec-price);line-height:1.1;letter-spacing:-.01em}
.prow-price i{font-style:normal;font-size:11px;color:var(--ec-text-3)}
.plist-more{margin-top:18px}
.plist-more .btn{min-width:220px}

/* ---------- 按钮：电商化 ---------- */
.btn{
  border-radius:999px;font-family:var(--sans);font-size:14px;font-weight:700;
  letter-spacing:.02em;padding:12px 26px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
.btn-primary,.btn-solid{
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  border-color:transparent;color:#fff;
  box-shadow:0 6px 16px rgba(193,101,47,.24);
}
.btn-primary:hover,.btn-solid:hover{
  background:linear-gradient(135deg,#b85a2c,#db8452);
  box-shadow:0 10px 24px rgba(193,101,47,.32);transform:translateY(-1px);color:#fff;
}
.btn-ghost{background:var(--ec-card);border:1px solid var(--ec-line-2);color:var(--ec-text)}
.btn-ghost:hover{border-color:var(--ec-price);color:var(--ec-price);background:#fef7f1}
.btn-light{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);color:#fff;backdrop-filter:blur(6px)}
.btn-light:hover{background:#fff;color:var(--ec-text);border-color:#fff}

/* ---------- 顶栏：电商化（白底 + 细线） ---------- */
.hd{background:rgba(255,255,255,.94);border-bottom:1px solid var(--ec-line);box-shadow:0 1px 0 rgba(24,28,35,.03)}
.hd-in{gap:26px}
.brand-cn{font-family:var(--sans);font-weight:800;letter-spacing:0}
.brand-badge{border-radius:4px}
.nav a{
  font-family:var(--sans);font-size:14.5px;font-weight:600;letter-spacing:0;color:var(--ec-text-2);
  padding:8px 12px;border-radius:8px;transition:color .18s,background .18s;
}
.nav a:hover{color:var(--ec-price);background:#fdf3ea}
.nav a.on,.nav a[aria-current]{color:var(--ec-price);background:#fdf3ea}
.nav-drop .drop-menu{
  border-radius:var(--ec-radius-sm);border:1px solid var(--ec-line);
  box-shadow:var(--ec-shadow-2);padding:8px;
}
.nav-drop .drop-menu a{border-radius:6px}

/* ---------- 面包屑 ---------- */
.crumb{font-size:12.5px;color:var(--ec-text-3);padding:14px 0 10px}
.crumb a:hover{color:var(--ec-price)}
.crumb em{color:var(--ec-text-2);font-style:normal}

/* ---------- 栏目页头：电商「品类页」样式 ---------- */
.phead{padding:6px 0 22px;border-bottom:1px solid var(--ec-line);margin-bottom:22px}
.phead h1{font-family:var(--sans);font-size:30px;font-weight:800;letter-spacing:0;margin:6px 0 8px}
.phead-sub{font-size:12.5px;color:var(--ec-text-3);margin:0 0 8px}
.phead-intro{font-size:14px;color:var(--ec-text-2);line-height:1.8;margin:0;max-width:820px}
.vol-tag{
  display:inline-block;padding:2px 9px;border-radius:999px;background:#fdf3ea;
  color:var(--ec-price);font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.02em;border:1px solid #f3dcc9;
}

/* ---------- 产品详情：电商商品页 ---------- */
.art-product .pgrid{gap:34px;align-items:start}
.pmedia{
  background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);
  padding:14px;box-shadow:var(--ec-shadow);
}
.pmain{border-radius:var(--ec-radius-sm);overflow:hidden;background:var(--ec-line);margin-bottom:14px}
.pmedia-hd{padding:12px 2px 10px;border-bottom:1px solid var(--ec-line);margin-bottom:12px}
.pm-lab{
  background:linear-gradient(135deg,var(--gold),var(--ec-price-2));border-radius:5px;
  font-family:var(--sans);font-weight:700;letter-spacing:.02em;
}
.pm-code{font-family:var(--mono);font-size:11px;color:var(--ec-text-3)}
.pfacts{gap:0;border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm);overflow:hidden}
.pfacts > div{padding:11px 14px;border-right:1px solid var(--ec-line);border-bottom:1px solid var(--ec-line)}
.pfacts dt{font-size:11px;color:var(--ec-text-3);margin-bottom:3px;letter-spacing:0}
.pfacts dd{font-size:13.5px;font-weight:600;color:var(--ec-text)}
.hot-num{color:var(--ec-price);font-weight:800}

/* 右侧购买卡 */
.pinfo{
  background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);
  padding:22px;box-shadow:var(--ec-shadow);position:sticky;top:calc(var(--hd) + 14px);
}
.pinfo h1{font-family:var(--sans);font-size:23px;font-weight:800;line-height:1.45;letter-spacing:0}
.pinfo-sub{font-size:13.5px;color:var(--ec-text-2);line-height:1.75;margin:10px 0 16px}
.price-card{
  background:linear-gradient(160deg,#fff6f4,#fffafa);border:1px solid #f5e2d3;
  border-radius:var(--ec-radius);padding:16px 18px;margin:0 0 16px;
}
.price-lab{font-size:12px;color:var(--ec-text-3);margin:0 0 4px;letter-spacing:0}
.price-num{display:flex;align-items:baseline;gap:2px;margin:0;line-height:1}
.price-num em{font-size:19px;color:var(--ec-price);font-style:normal;font-weight:700}
.price-num b{font-family:var(--sans);font-size:42px;font-weight:800;color:var(--ec-price);letter-spacing:-.02em}
.price-num span{font-size:12px;color:var(--ec-text-3);margin-left:6px}
.price-perks{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:12px 0 0}
.price-perks li{
  font-size:11.5px;color:var(--ec-price);background:#fff;border:1px solid #f3dcc9;
  border-radius:4px;padding:2px 8px;margin:0;
}
.pquick{
  display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--ec-line);
  border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm);overflow:hidden;margin:0 0 16px;
}
.pq-item{background:#fbf9f4;padding:10px 12px;font-size:13px;font-weight:600;color:var(--ec-text)}
.pq-item i{display:block;font-style:normal;font-size:11px;color:var(--ec-text-3);font-weight:400;margin-bottom:2px}
.pq-item a{color:var(--ec-price)}
.pbtns{display:grid;gap:10px}
.pbtns .btn{width:100%;text-align:center;padding:14px 20px;font-size:15px}
.pbtn-note{font-size:11.5px;color:var(--ec-text-3);text-align:center;margin:12px 0 0;line-height:1.6}

/* 详情说明块 */
.pnotes{gap:14px;margin-top:14px}
.pnote{background:#fbf9f4;border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm)}
.pnote h3{font-family:var(--sans);font-size:14px;font-weight:700;letter-spacing:0}
.pnote li{font-size:13px;color:var(--ec-text-2)}

/* ---------- 每日行程：电商「行程单」 ---------- */
.tripdays{background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:22px;box-shadow:var(--ec-shadow)}
.td-hd h2,.td-t{font-family:var(--sans)}
.td-num{
  background:linear-gradient(135deg,var(--gold),var(--ec-price-2));border-radius:5px;
  font-family:var(--sans);font-weight:700;letter-spacing:.02em;
}
.td-item{border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm);margin-bottom:10px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.td-item:last-child{margin-bottom:0}
.td-item.open{border-color:#f0d5bd;box-shadow:0 2px 10px rgba(193,101,47,.06)}
.td-item-hd{background:#fbf9f4;padding:14px 18px}
.td-item.open .td-item-hd{background:linear-gradient(90deg,#fff5f3,#fffaf9)}
.td-day{background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));border-radius:6px;font-family:var(--sans)}
.td-title{font-family:var(--sans);font-size:16px;font-weight:700;letter-spacing:0}
.td-dest{font-size:14.5px;color:var(--ec-text)}
.td-dest em{background:#fdf3ea;color:var(--ec-price);border-radius:4px;font-style:normal;font-weight:700}
.td-facts{background:#fbf9f4;border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm)}
.td-f dt{font-size:11px;color:var(--ec-text-3);letter-spacing:0}
.td-f dd{font-size:13px;font-weight:600;color:var(--ec-text)}

/* ---------- 文章详情：资讯化（去博客感） ---------- */
.art .detail-main{background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:28px 32px;box-shadow:var(--ec-shadow)}
.art-hd h1{font-family:var(--sans);font-size:30px;font-weight:800;letter-spacing:0;line-height:1.4}
.art-sub{font-size:14.5px;color:var(--ec-text-2);margin-top:8px}
.art-meta{border-top:1px solid var(--ec-line);padding-top:12px;font-size:12px;color:var(--ec-text-3)}
.am-item i{color:var(--ec-text-3)}
.art-cover{border-radius:var(--ec-radius-sm);overflow:hidden;margin:18px 0}
.art-brief{background:#fbf9f4;border:1px solid var(--ec-line);border-left:3px solid var(--ec-price);border-radius:var(--ec-radius-sm)}
.ab-t{font-family:var(--sans);font-size:14px;font-weight:700;letter-spacing:0}
.ab-p{font-size:14.5px;color:var(--ec-text-2)}

/* ---------- 侧边栏：电商推荐位 ---------- */
.side-box{background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);box-shadow:var(--ec-shadow);padding:16px}
.side-h{font-family:var(--sans);font-size:15px;font-weight:800;letter-spacing:0;border-bottom:1px solid var(--ec-line);padding-bottom:10px;margin-bottom:12px}
.side-h .en{font-family:var(--mono);font-size:10px;color:var(--ec-text-3);font-weight:400;letter-spacing:.1em}
.side-list li{border-bottom:1px dashed var(--ec-line-2);padding:9px 0}
.side-list li:last-child{border-bottom:0;padding-bottom:0}
.side-ic{border-radius:8px;overflow:hidden;background:var(--ec-line)}
.side-t{font-size:13px;line-height:1.6;font-weight:600}
.side-list a:hover .side-t{color:var(--ec-price)}
.side-tags a{border-radius:999px;border:1px solid var(--ec-line-2);font-size:12px;background:#fbf9f4}
.side-tags a:hover{background:#fdf3ea;border-color:#f3dcc9;color:var(--ec-price)}
.side-contact{background:linear-gradient(170deg,#fff8f6,#fff)}
.side-qr{border-radius:var(--ec-radius-sm);border:1px solid var(--ec-line)}
.side-tel b{color:var(--ec-price);font-family:var(--sans)}

/* ---------- 友情链接 ---------- */
.flinks{padding:30px 0 6px}
.flinks-inner{background:var(--ec-card);border:1px solid var(--ec-line);border-radius:var(--ec-radius);padding:20px 24px;box-shadow:var(--ec-shadow)}
.flinks-t{
  font-family:var(--sans);font-size:14px;font-weight:800;letter-spacing:0;margin:0 0 12px;
  display:flex;align-items:center;gap:8px;color:var(--ec-text);
}
.flinks-t::before{content:"";width:3px;height:14px;border-radius:2px;background:linear-gradient(180deg,var(--ec-price),var(--ec-price-2))}
.flist{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.flist li{margin:0}
.flist a{
  display:inline-block;padding:5px 12px;border-radius:999px;border:1px solid var(--ec-line);
  background:#fbf9f4;font-size:12.5px;color:var(--ec-text-2);transition:all .18s;
}
.flist a:hover{border-color:#f0d5bd;background:#fdf3ea;color:var(--ec-price)}

/* ---------- 分页：电商化（并修正 span 套 a 的双框） ---------- */
.pages{margin-top:26px}
.pager a{background:var(--ec-card);border:1px solid var(--ec-line-2);color:var(--ec-text-2);font-size:13px;border-radius:8px}
.pager a:hover{border-color:var(--ec-price);color:var(--ec-price);background:#fef7f1}
.pager .page-num.on,.pager a.on{
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));border-color:transparent;color:#fff;
}
.pager span{border:0;padding:0;margin:0;background:none;box-shadow:none;border-radius:0}
.pager .page-status{border:0;background:none;color:var(--ec-text-3);font-size:12.5px}
.pager a[href="javascript:;"]{border:1px dashed var(--ec-line-2);color:var(--ec-text-3);cursor:default}
.pager a[href="javascript:;"]:hover{border-color:var(--ec-line-2);color:var(--ec-text-3);background:var(--ec-card)}

/* ---------- 电商风格 · 响应式 ---------- */
@media (max-width:900px){
  .card-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .sec{padding:34px 0}
  .sec-hd{flex-wrap:wrap;gap:8px}
  .sec-hd h2{font-size:22px}
  .sec-hd .note{margin-left:0;text-align:left;width:100%}
  .pinfo{position:static}
  .art .detail-main{padding:22px 18px}
  .prow-media{max-width:160px}
  .prow-price b{font-size:24px}
}
@media (max-width:640px){
  .card-grid{grid-template-columns:1fr 1fr;gap:10px}
  .card-media{aspect-ratio:1/1}
  .card-body{padding:10px 12px 12px}
  .card-t{font-size:14px;line-height:1.5}
  .card-desc{display:none}
  .card-meta{font-size:11px}
  .sec-hd h2{font-size:20px}
  .plist.prow-grid .prow{padding:10px;gap:12px;align-items:flex-start}
  .prow-media{max-width:110px;aspect-ratio:1/1}
  .prow-t{font-size:15px}
  .prow-d{display:none}
  .prow-price{min-width:auto;padding-right:0}
  .prow-price b{font-size:20px}
  .prow-price i{display:none}
  .phead h1{font-size:23px}
  .pinfo{padding:16px}
  .pinfo h1{font-size:19px}
  .price-num b{font-size:34px}
  .tripdays{padding:14px}
  .flinks-inner{padding:16px}
  .flist a{font-size:12px;padding:4px 10px}
}
@media (max-width:400px){
  .card-grid{grid-template-columns:1fr}
  .card-media{aspect-ratio:4/3}
}
/* ===== 第五轮 · 电商风格补丁2：缺类补齐 / 可读性下限 / 电商细节 ===== */
/* 思路：体检发现全站无横向溢出、无破图，但存在 4 个无样式类（prow-main、
   page-num-current 影响布局）与一批 <12px 的小字。本段补齐布局类，并把角标类
   统一提到 >=11px、正文类提到 >=12.5px，同时把表单/分页电商化。 */

/* --- 1. 补齐无样式类 --- */
.plist .prow .prow-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:5px;padding:0}
.prow .prow-main > *{min-width:0}
.pages .page-num-current{background:var(--ec-price,#c1652f);border-color:var(--ec-price,#c1652f);color:#fff;font-weight:700}
.pages .page-num-current:hover{background:#9a4a20;border-color:#9a4a20;color:#fff}
.pages .page-num{font-family:var(--mono,monospace)}

/* --- 2. 可读性下限：角标/英文小标 --- */
.brand-en{font-size:10.5px;letter-spacing:.2em}
.brand-badge{font-size:12px}
.card-no{font-size:12px;min-width:22px;height:22px;line-height:22px}
.prow-no{font-size:12px}
.fact-k{font-size:12px;letter-spacing:.06em}
.lab{font-size:11.5px;letter-spacing:.12em}
.en{font-size:11.5px}
.topic-en{font-size:11.5px}
.pm-lab{font-size:11.5px}
.pm-code{font-size:12px}
.wx-date{font-size:12px}
.wx-src,.wx-pop{font-size:11.5px}
.wx-t em{font-size:11px}
.wx-date i{font-size:11.5px}
.hero-sub{font-size:12.5px;letter-spacing:.14em}
.phead .vol-tag{font-size:12.5px}
.topic-stats em{font-size:11.5px;letter-spacing:.1em}
.cs-line em{font-size:11.5px;width:52px}
.ft-bot{font-size:12px;letter-spacing:.08em}
.ft-h{font-size:12.5px;letter-spacing:.1em}
figcaption{font-size:12.5px;line-height:1.6}

/* --- 3. 可读性下限：正文/小标题 --- */
.card-meta{font-size:12.5px;line-height:1.6}
.vol-tag{font-size:12.5px}
.eyebrow{font-size:12.5px;letter-spacing:.14em}
.meta{font-size:13px;line-height:1.7}
dl dt,.pfacts dt{font-size:12.5px;letter-spacing:.08em}
dl dd,.pfacts dd{font-size:15px;line-height:1.6}
.side-list li,.side-tags a{font-size:13.5px}
.pnotes li,.pnote{font-size:14.5px;line-height:1.8}

/* --- 4. 表单电商化 --- */
.form-box{border:0;border-radius:var(--ec-radius,14px);box-shadow:var(--ec-shadow,0 6px 24px rgba(15,23,42,.08));padding:30px 32px}
.form-box label{font-size:12.5px;letter-spacing:.08em;text-transform:none;color:var(--ec-text-2,#5f6259);font-weight:600}
.form-box input,.form-box textarea,.form-box select{
  font-size:15px;padding:12px 14px;border:1px solid var(--ec-line,#e5ded1);border-radius:var(--ec-radius-sm,10px);
  background:#fff;transition:.18s;width:100%}
.form-box input:focus,.form-box textarea:focus,.form-box select:focus{
  outline:0;border-color:var(--ec-price,#c1652f);box-shadow:0 0 0 3px rgba(193,101,47,.12)}
.form-box textarea{min-height:140px}
.form-box button{
  border:0;border-radius:999px;padding:14px 34px;font-size:15px;font-weight:700;color:#fff;
  background:linear-gradient(135deg,#c1652f,#e09468);box-shadow:0 8px 20px rgba(193,101,47,.26);cursor:pointer;transition:.2s}
.form-box button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(193,101,47,.32)}
.form-row{margin-bottom:18px}

/* --- 5. 分页电商化 --- */
.pages a,.pages span{min-width:36px;height:36px;line-height:34px;border-radius:var(--ec-radius-sm,10px);font-size:13.5px}
.pages .page-status{border:0;background:none;padding:0 6px;color:var(--ec-text-3,#86857c)}
.pages a:hover{border-color:var(--ec-price,#c1652f);background:var(--ec-price,#c1652f);color:#fff;transform:translateY(-1px)}

/* --- 6. 卡片与商品行细节 --- */
.card,.prow{transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s}
.card:hover,.prow:hover{transform:translateY(-4px)}
.prow .prow-price b{font-size:26px}
.prow .prow-t{font-size:17px;line-height:1.45}
.prow .prow-d{font-size:13.5px;line-height:1.7}
.prow .prow-meta{font-size:12.5px}
.plist-more{margin-top:22px;text-align:center}

/* --- 7. 面包屑与链接 --- */
.crumb{font-size:13px}
.crumb a:hover{color:var(--ec-price,#c1652f)}

@media (max-width:640px){
  .form-box{padding:20px 18px}
  .pages a,.pages span{min-width:32px;height:32px;line-height:30px;font-size:12.5px}
  .prow .prow-price b{font-size:22px}
}
/* ===== /第五轮 · 电商风格补丁2 ===== */

/* ---------- 第六轮 · 电商彻底改版（PATCH 3） ---------- */
/* 思路：把残留的「杂志/地理档案」视觉彻底电商化——
   1) 变量层直接把衬线体与松绿色换成电商红与无衬线；
   2) 天气板块重画为电商数据卡；
   3) 首页/聚合页线路列表改横向卡片栅格（从左到右）；
   4) 产品详情页左图拉通右卡高度、须知移入正文；
   5) 移动底导航中间电话放大+发光；drawer 分组折叠。 */

:root{
  /* 关键一刀：--serif/--mono 全局换成无衬线，全站 h1-h4、价格、角标一次性去杂志感 */
  --serif:"PingFang SC","Microsoft YaHei","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --mono:"PingFang SC","Microsoft YaHei","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --sans:"PingFang SC","Microsoft YaHei","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  /* 残留的松绿/赭黄统一切成雅丹铜橙系 */
  --pine:#c1652f;
  --pine-2:#e09468;
  --ochre:#e09468;
  --gold:#c1652f;
  --gold-deep:#a4522a;
  --gold-soft:#fdf3ea;
  --paper:#f7f8fa;
  --paper-2:#fdf3ea;
}

h1,h2,h3,h4{font-family:var(--sans);letter-spacing:0}

/* --- R6-1 天气板块：电商数据卡 --- */
.wx{border:1px solid var(--ec-line);border-radius:var(--ec-radius);background:var(--ec-card);box-shadow:var(--ec-shadow);overflow:hidden}
.wx-hd{
  display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
  padding:14px 20px;border-bottom:0;
  background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;
}
.wx-t{font-family:var(--sans);font-size:17px;font-weight:700;letter-spacing:0}
.wx-t em{font-family:var(--sans);font-style:normal;font-size:11px;font-weight:600;letter-spacing:.14em;color:rgba(255,255,255,.85);margin-left:10px;background:rgba(255,255,255,.18);border-radius:999px;padding:2px 10px}
.wx-src{margin-left:auto;font-family:var(--sans);font-size:12px;letter-spacing:0;color:rgba(255,255,255,.88)}
.wx-grid{display:grid;grid-template-columns:repeat(7,1fr);background:var(--ec-card)}
.wx-d{padding:16px 8px 15px;text-align:center;border-right:1px solid var(--ec-line);border-radius:0}
.wx-d:last-child{border-right:0}
.wx-d.now{background:#fdf3ea;box-shadow:inset 0 -3px 0 #c1652f}
.wx-date{display:block;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:0;color:var(--ec-text-2)}
.wx-date i{display:block;font-style:normal;margin-top:4px;font-size:11.5px;font-weight:500;color:var(--ec-price)}
.wx-ic{display:block;margin:10px 0 6px;font-size:14px;font-weight:600;color:var(--ec-text-2);line-height:1.3}
.wx-tmp{display:block;font-family:var(--sans);font-size:20px;font-weight:800;color:var(--ec-price)}
.wx-tmp em{font-style:normal;font-weight:500;font-size:13px;color:var(--ec-text-3);margin-left:4px}
.wx-wind{display:block;margin-top:7px;font-size:12.5px;color:var(--ec-text-2);line-height:1.5}
.wx-pop{display:block;margin-top:3px;font-family:var(--sans);font-size:12px;color:var(--ec-text-3)}
.wx-fail{border:1px dashed var(--ec-line-2);border-radius:var(--ec-radius-sm);padding:16px 18px;font-size:14px;color:var(--ec-text-2);background:var(--ec-card)}

/* 天气板块移动端（覆盖旧断点里的 4 列/2 列残留） */
@media (max-width:900px){
  .wx-grid{grid-template-columns:repeat(4,1fr)}
  .wx-d{border-bottom:1px solid var(--ec-line)}
}
@media (max-width:640px){
  .wx-grid{grid-template-columns:repeat(2,1fr)}
}

/* --- R6-2 首页/聚合页线路：横向卡片栅格（从左到右） --- */
.plist.prow-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;
  background:none;border:0;padding:0;
}
.plist.prow-grid .prow{
  display:flex;flex-direction:column;
  border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm);
  background:var(--ec-card);overflow:hidden;
  transition:transform .2s,box-shadow .2s,border-color .2s;
  border-bottom:1px solid var(--ec-line);
}
.plist.prow-grid .prow:hover{
  transform:translateY(-4px);border-color:#eecfb4;
  box-shadow:var(--ec-shadow-2);background:var(--ec-card);
}
.prow-media{display:block;width:100%;max-width:100%;aspect-ratio:4/3;position:relative;overflow:hidden;background:var(--ec-line)}
.prow-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.prow:hover .prow-media img{transform:scale(1.05)}
.prow-no{
  position:absolute;left:10px;top:10px;z-index:1;
  background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;
  font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;
}
.prow-main{display:block;flex:1;padding:12px 14px 4px}
.prow-t{font-family:var(--sans);font-size:15px;font-weight:700;color:var(--ec-text);margin:4px 0 6px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prow-d{display:none}
.prow-meta{display:block;font-size:12px;color:var(--ec-text-3);line-height:1.5}
.prow-price{display:flex;align-items:baseline;gap:2px;padding:8px 14px 14px}
.prow-price em{font-style:normal;font-size:13px;font-weight:700;color:var(--ec-price)}
.prow-price b{font-size:22px;font-weight:800;color:var(--ec-price);line-height:1}
.prow-price i{font-style:normal;font-size:11.5px;color:var(--ec-text-3);margin-left:2px}
@media (max-width:1100px){
  .plist.prow-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .plist.prow-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
}
@media (max-width:640px){
  .plist.prow-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .prow-t{font-size:14px}
  .prow-price b{font-size:19px}
}
@media (max-width:400px){
  .plist.prow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* --- R6-3 产品详情页：左图拉通右卡高度 --- */
.art-product .pgrid{align-items:stretch}
.pmedia{display:flex;flex-direction:column}
.pmain{flex:1;display:flex;align-items:stretch;margin-bottom:14px;min-height:300px}
.pmain img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;display:block}

/* 须知三卡：进正文后的电商卡样式 */
.detail-main .pnotes{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
  margin:28px 0 6px;background:none;border:0;
}
.detail-main .pnote{
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius-sm);padding:18px 18px 20px;
  box-shadow:var(--ec-shadow);
}
.detail-main .pnote h3{font-size:15px;font-weight:800;color:var(--ec-text);margin:0 0 10px;padding-left:10px;border-left:3px solid var(--ec-price)}
.detail-main .pnote li{font-size:13.5px;color:var(--ec-text-2)}
@media (max-width:900px){
  .detail-main .pnotes{grid-template-columns:1fr}
}

/* --- R6-5 移动底导航：中间电话放大 + 发光光圈 --- */
.mnav a.mnav-tel{flex-direction:column;justify-content:flex-end;gap:2px;padding-bottom:6px;background:none!important}
.mnav .mt-ring{
  width:52px;height:52px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#c1652f,#e09468);
  box-shadow:0 0 0 5px rgba(193,101,47,.16),0 0 20px rgba(255,90,60,.85),0 0 42px rgba(193,101,47,.45);
  margin-top:-20px;
  animation:mtPulse 2.2s ease-in-out infinite;
}
.mnav .mt-ring svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mnav .mt-txt{font-size:11px;font-weight:600;color:var(--ec-price)}
@keyframes mtPulse{
  0%,100%{box-shadow:0 0 0 5px rgba(193,101,47,.16),0 0 18px rgba(255,90,60,.75),0 0 38px rgba(193,101,47,.4)}
  50%{box-shadow:0 0 0 8px rgba(193,101,47,.1),0 0 26px rgba(255,90,60,.95),0 0 52px rgba(193,101,47,.55)}
}

/* --- R6-6 移动端 drawer：分组默认折叠，箭头展开 --- */
.drawer .dgroup{border-bottom:1px solid var(--ec-line)}
.drawer .dswitch{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  background:none;border:0;padding:14px 0;
  font-size:17px;font-weight:600;color:var(--ec-text);text-align:left;cursor:pointer;
}
.drawer .d-arrow{
  width:9px;height:9px;flex:0 0 auto;margin-right:4px;
  border-right:2px solid var(--ec-text-3);border-bottom:2px solid var(--ec-text-3);
  transform:rotate(45deg);transition:transform .2s;
}
.drawer .dgroup.open .d-arrow{transform:rotate(225deg)}
.drawer .dsub{display:none;flex-direction:column;background:var(--ec-bg)}
.drawer .dgroup.open .dsub{display:flex}
.drawer .dsub a{padding-left:18px;font-size:15px;color:var(--ec-text-2)}

/* 词条/标签 hover 统一红 */
.tags-inline a:hover{border-color:var(--ec-price);background:var(--ec-price);color:#fff}

/* ---------- 第六轮 · PATCH 4：列表/搜索/标签/分页电商化 ---------- */
/* ===== 1. 分页：修「外层 span + 内层 a」双框老坑，改为电商胶囊 ===== */
.pager a,.pager span{border:0;padding:0;margin:0;background:none;min-width:0;height:auto;line-height:normal}
.pages{
  display:flex;gap:8px;justify-content:center;align-items:center;
  margin:40px 0 0;flex-wrap:wrap;
}
/* 外层 span 一律去框，边框只给内层 a —— 否则每个按钮套两层框 */
.pages span{
  border:0!important;background:none!important;padding:0;margin:0;
  min-width:0;height:auto;line-height:normal;display:inline-flex;align-items:center;gap:4px;
}
.pages a{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:38px;padding:0 13px;
  border:1px solid var(--ec-line-2);border-radius:8px;
  background:var(--ec-card);
  font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ec-text-2);
  transition:.18s;text-decoration:none;
}
.pages a:hover{border-color:var(--ec-price);color:var(--ec-price);background:#fdf3ea}
/* 当前页 */
.pages .page-num-current,
.pages a.page-num-current{
  background:linear-gradient(135deg,#c1652f,#e09468);
  border-color:transparent;color:#fff;font-weight:800;
}
/* 禁用态（前一页/首页在无上一页时输出 javascript:;） */
.pages a[href="javascript:;"]{
  opacity:.4;border-style:dashed;cursor:default;color:var(--ec-text-3);
}
.pages a[href="javascript:;"]:hover{border-color:var(--ec-line-2);color:var(--ec-text-3);background:var(--ec-card)}
/* 状态文字 */
.pages .page-status{
  font-size:13px;color:var(--ec-text-3);margin-right:8px;font-family:var(--sans);
}
.pages .page-numbar{display:inline-flex;gap:6px;align-items:center}

/* ===== 2. sec-more：栏目页「进入xx栏目 →」按钮（此前 HTML 有、CSS 缺失） ===== */
.sec-more{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border:1px solid var(--ec-line-2);border-radius:999px;
  background:var(--ec-card);color:var(--ec-text-2);
  font-size:13.5px;font-weight:600;transition:.18s;text-decoration:none;white-space:nowrap;
}
.sec-more:hover{
  border-color:var(--ec-price);color:#fff;
  background:linear-gradient(135deg,#c1652f,#e09468);
  box-shadow:0 4px 12px rgba(193,101,47,.22);
}
@media(max-width:640px){
  .sec-hd{flex-direction:column;align-items:flex-start;gap:10px}
  .sec-more{align-self:flex-start}
}

/* ===== 3. 列表页 / 标签聚合页卡片：电商网格卡 ===== */
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{
  display:flex;flex-direction:column;
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius);overflow:hidden;
  box-shadow:var(--ec-shadow);transition:.2s;text-decoration:none;
}
.card:hover{transform:translateY(-4px);border-color:#eecfb4;box-shadow:var(--ec-shadow-2)}
.card-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--ec-bg);display:block}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;display:block}
.card:hover .card-media img{transform:scale(1.06)}
.card-no{
  position:absolute;left:10px;top:10px;z-index:2;
  min-width:26px;height:26px;padding:0 8px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;
  font-size:12px;font-weight:800;border-radius:999px;
  box-shadow:0 2px 8px rgba(193,101,47,.3);
}
.card-body{padding:14px 16px 16px;flex:1;display:flex;flex-direction:column}
.card-sub{
  font-size:12px;color:var(--ec-price);margin:0 0 6px;line-height:1.6;
  font-weight:600;
}
.card-t{
  font-family:var(--sans);font-size:16px;font-weight:700;line-height:1.45;
  margin:0 0 8px;color:var(--ec-text);letter-spacing:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.card-desc{
  font-size:13.5px;color:var(--ec-text-2);line-height:1.7;margin:0 0 10px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.card-meta{
  margin-top:auto;font-size:12px;color:var(--ec-text-3);font-family:var(--sans);letter-spacing:0;
}
@media(max-width:1000px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.card-grid{grid-template-columns:1fr;gap:14px}}

/* ===== 4. 搜索结果列表：横向卡片（原为竖排分隔线列表） ===== */
.postlist{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;
  border-top:0;margin-top:8px;
}
.post{
  display:flex;flex-direction:column;
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius);overflow:hidden;
  box-shadow:var(--ec-shadow);transition:.2s;text-decoration:none;
}
.post:hover{transform:translateY(-4px);border-color:#eecfb4;box-shadow:var(--ec-shadow-2)}
.post>span:last-child{padding:14px 16px 16px;display:flex;flex-direction:column;flex:1}
.post-media{
  position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--ec-bg);
  border:0;display:block;
}
.post-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.post:hover .post-media img{transform:scale(1.06)}
.post-no{
  position:absolute;left:10px;top:10px;z-index:2;
  min-width:26px;height:26px;padding:0 8px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;
  font-size:12px;font-weight:800;border-radius:999px;
}
.post-sub{
  font-size:12px;color:var(--ec-price);margin:0 0 6px;font-weight:600;line-height:1.6;
}
.post-t{
  font-family:var(--sans);font-size:16px;font-weight:700;margin:0 0 8px;line-height:1.45;
  color:var(--ec-text);letter-spacing:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.post-desc{
  font-size:13.5px;color:var(--ec-text-2);line-height:1.7;margin:0 0 12px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.post-meta{
  margin-top:auto;font-family:var(--sans);font-size:12px;letter-spacing:0;
  color:var(--ec-text-3);text-transform:none;
}
@media(max-width:1000px){.postlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.postlist{grid-template-columns:1fr;gap:14px}}

/* ===== 5. 搜索框 / 命中提示 / 空结果 ===== */
.searchbar{display:flex;gap:0;margin:0 0 24px;max-width:640px}
.searchbar input{
  flex:1;min-width:0;border:2px solid var(--ec-price);border-right:0;
  background:var(--ec-card);padding:12px 16px;
  font-family:var(--sans);font-size:15px;color:var(--ec-text);
  border-radius:8px 0 0 8px;
}
.searchbar input:focus{outline:0}
.searchbar button{
  flex:none;background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;border:0;
  padding:12px 32px;font-size:15px;font-weight:700;cursor:pointer;
  font-family:var(--sans);border-radius:0 8px 8px 0;transition:.18s;
}
.searchbar button:hover{filter:brightness(1.06)}
.hit{
  font-family:var(--sans);font-size:14px;letter-spacing:0;text-transform:none;
  color:var(--ec-text-2);margin:0 0 20px;padding:0 0 14px;border-bottom:1px solid var(--ec-line);
}
.hit b{color:var(--ec-price);font-weight:800}
.empty{
  padding:56px 24px;text-align:center;background:var(--ec-card);
  border:1px solid var(--ec-line);border-radius:var(--ec-radius);margin-top:24px;
}
.empty h1{font-family:var(--sans);font-size:22px;font-weight:800;letter-spacing:0;margin-bottom:10px}
.empty .empty-t{font-family:var(--sans);font-size:22px;font-weight:800;letter-spacing:0;margin-bottom:10px;color:var(--ec-text)}
.empty p{color:var(--ec-text-3);font-size:14px}
.quicklinks{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.quicklinks a{
  border:1px solid var(--ec-line-2);border-radius:999px;background:var(--ec-card);
  padding:8px 16px;font-size:13.5px;color:var(--ec-text-2);transition:.18s;text-decoration:none;
}
.quicklinks a:hover{
  border-color:transparent;color:#fff;
  background:linear-gradient(135deg,#c1652f,#e09468);
  box-shadow:0 4px 12px rgba(193,101,47,.22);
}

/* ===== 6. 词条索引页：标签胶囊 ===== */
.taglist{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}
.taglist a{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border:1px solid var(--ec-line);border-radius:999px;
  background:var(--ec-card);color:var(--ec-text-2);font-size:14px;
  transition:.18s;text-decoration:none;box-shadow:var(--ec-shadow);
}
.taglist a:hover{
  border-color:transparent;color:#fff;
  background:linear-gradient(135deg,#c1652f,#e09468);
  box-shadow:0 4px 12px rgba(193,101,47,.22);
}
.taglist a i{
  font-style:normal;font-size:11px;font-weight:700;
  min-width:18px;height:18px;padding:0 5px;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--ec-bg);color:var(--ec-text-3);border-radius:999px;
}
.taglist a:hover i{background:rgba(255,255,255,.24);color:#fff}

/* ===== 7. 区块头：小红条标题，去杂志感 ===== */
.sec-hd{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap}
.sec-hd h2{
  font-family:var(--sans);font-size:26px;font-weight:800;letter-spacing:0;
  color:var(--ec-text);position:relative;padding-left:14px;margin:0;
}
.sec-hd h2::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:22px;border-radius:2px;
  background:linear-gradient(180deg,#c1652f,#e09468);
}
.sec-hd h2 .en{display:none}
.sec-hd .note{margin-left:auto;text-align:right;font-size:13px;color:var(--ec-text-3);line-height:1.6}

/* ===== 8. phead：栏目页头部去杂志刊号感 ===== */
.vol-tag{
  display:inline-block;padding:4px 12px;border-radius:999px;
  background:linear-gradient(135deg,#c1652f,#e09468);color:#fff;
  font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;margin-bottom:12px;
}
.phead h1,.phead h2{font-family:var(--sans);font-weight:800;letter-spacing:0}
.phead-sub{font-family:var(--sans);font-size:15px;color:var(--ec-text-2);line-height:1.8;margin:0 0 12px}
.phead-intro{font-size:14px;color:var(--ec-text-3);line-height:1.8}
/* ---------- 第七轮 · PATCH 5：分页卡片化 / banner 文字对比度 / vol-tag / 价格排版 ---------- */

/* ===== 1. 详情页「上一篇 / 下一篇」：电商卡片式（原来是灰底 1px 分割的表格感） ===== */
.pager{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
  background:none!important;border:0!important;margin:34px 0 0;
}
.pager a{
  display:block;position:relative;overflow:hidden;
  padding:16px 20px;min-width:0;height:auto;line-height:1.5;
  background:var(--ec-card,#fff)!important;
  border:1px solid var(--ec-line-2,#e5ded1)!important;
  border-radius:var(--ec-radius-sm,10px);
  font-family:var(--sans);font-size:14px;font-weight:600;
  color:var(--ec-text,#1f2937)!important;
  text-decoration:none;white-space:nowrap;text-overflow:ellipsis;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,color .18s ease,background .18s ease;
}
.pager a:hover{
  border-color:var(--ec-price,#c1652f)!important;
  color:var(--ec-price,#c1652f)!important;
  background:#fef7f1!important;
  transform:translateY(-2px);
  box-shadow:0 8px 22px rgba(193,101,47,.13);
}
.pager .lab{
  display:block;margin:0 0 6px;
  font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.08em;
  color:var(--ec-text-3,#86857c);text-transform:none;
}
.pager a:first-child{padding-left:40px}
.pager a:first-child::before{
  content:"\2039";position:absolute;left:18px;top:50%;transform:translateY(-52%);
  font-size:24px;line-height:1;color:var(--ec-text-3,#86857c);font-weight:400;
}
.pager .next{text-align:right;padding-right:40px}
.pager .next::after{
  content:"\203A";position:absolute;right:18px;top:50%;transform:translateY(-52%);
  font-size:24px;line-height:1;color:var(--ec-text-3,#86857c);font-weight:400;
}
.pager a:hover:first-child::before,.pager a:hover.next::after{color:var(--ec-price,#c1652f)}
/* 禁用态：没有上一篇 / 下一篇 */
.pager a[href="javascript:;"]{
  opacity:.5;border-style:dashed!important;cursor:default;color:var(--ec-text-3,#86857c)!important;
}
.pager a[href="javascript:;"]:hover{
  transform:none;box-shadow:none;border-color:var(--ec-line-2,#e5ded1)!important;
  color:var(--ec-text-3,#86857c)!important;background:var(--ec-card,#fff)!important;
}
@media (max-width:640px){
  .pager{grid-template-columns:1fr;gap:10px}
  .pager .next{text-align:left;padding-right:20px}
  .pager a:first-child,.pager .next{padding-left:20px}
  .pager a:first-child::before,.pager .next::after{display:none}
}

/* ===== 2. 首页 banner eyebrow：原来灰字压在红底上，几乎看不见 ===== */
.hero .eyebrow{
  display:inline-flex;align-items:center;
  margin:0 0 14px;padding:6px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.34);
  color:#fff!important;
  font-family:var(--sans);font-size:13px;font-weight:600;
  letter-spacing:.06em;text-transform:none;line-height:1.4;
}
.hero .eyebrow .dot{
  width:6px;height:6px;border-radius:50%;background:#fff;margin-right:9px;
  box-shadow:0 0 8px rgba(255,255,255,.95);vertical-align:0;
}
/* banner 内其余低对比文字一并拉高 */
.hero .hero-sub{color:rgba(255,255,255,.85)!important;font-family:var(--sans);letter-spacing:.18em;font-size:12px}
.hero .hero-lead{color:rgba(255,255,255,.92)!important}
.hero .hero-stat b{color:#fff!important}
.hero .hero-stat span{color:rgba(255,255,255,.72)!important}
/* 白底页面的 eyebrow：提高灰阶对比 */
.eyebrow{color:var(--ec-text-2,#5f6259)!important;letter-spacing:.12em;font-size:12.5px}
.eyebrow .dot{background:var(--ec-price,#c1652f)}

/* ===== 3. vol-tag：红底 + 橙红字导致看不清，统一白字 ===== */
.vol-tag,.phead .vol-tag{
  display:inline-block;
  background:linear-gradient(135deg,#c1652f,#e09468)!important;
  color:#fff!important;
  border:1px solid transparent;
  padding:5px 14px;border-radius:999px;margin-bottom:12px;
  font-family:var(--sans);font-size:13px;font-weight:700;
  letter-spacing:.04em;line-height:1.5;text-transform:uppercase;
  box-shadow:0 4px 12px rgba(193,101,47,.16);
}
/* 其它「渐变底 + 继承色」的徽标，兜底给白字 */
.pm-lab,.td-num,.td-day{color:#fff!important}

/* ===== 4. 产品列表价格区：¥ / 金额 / 起·人 三段对齐重排 ===== */
.plist.prow-grid .prow{position:relative}
.plist.prow-grid .prow-main{flex:1;padding:12px 14px 8px;min-width:0}
.plist.prow-grid .prow-price{
  margin-top:auto;
  display:flex;align-items:baseline;gap:3px;
  padding:2px 14px 14px;
  min-width:0;
  font-variant-numeric:tabular-nums;
}
.plist.prow-grid .prow-price em{
  font-style:normal;font-size:13px;font-weight:800;
  color:var(--ec-price,#c1652f);line-height:1;
}
.plist.prow-grid .prow-price b{
  font-family:var(--sans);font-size:22px;font-weight:800;
  color:var(--ec-price,#c1652f);line-height:1;letter-spacing:-.02em;
}
.plist.prow-grid .prow-price i{
  font-style:normal;font-size:11.5px;font-weight:500;
  color:var(--ec-text-3,#86857c);line-height:1;margin-left:3px;
}
.plist.prow-grid .prow:hover .prow-price b{color:#9a4a20}
/* 纵向列表（专题页 tk-spots 等）的价格区同样重排 */
.plist.tk-spots .prow-price,
.pgrid .pinfo .prow-price{
  display:flex;align-items:baseline;gap:3px;min-width:0;
  font-variant-numeric:tabular-nums;
}
@media (max-width:640px){
  .plist.prow-grid .prow-price{padding:2px 10px 12px}
  .plist.prow-grid .prow-price b{font-size:19px}
  .plist.prow-grid .prow-price em{font-size:12px}
  .plist.prow-grid .prow-price i{font-size:11px}
}

/* ==========================================================================
   第七轮 · 电商精修（PATCH 6）
   1) 产品卡价格行独占一行 + 右侧「预定」按钮
   2) 正文 art-body 去杂色：只保留一支强调色，去掉满屏红/蓝/橙与下划线
   3) 定制游页面电商化：phead + 两栏（表单卡 / 服务侧栏）
   4) 专题页 topic-hero 从黑色杂志风改红系电商风
   5) 详情页 art-hd 改成电商分节条
   ========================================================================== */

/* ---------- 1. 产品卡：价格行 + 预定按钮 ---------- */
.plist.prow-grid .prow-main{flex:1;min-width:0}
.prow-ft{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;margin-top:auto;padding:10px 12px 12px;
  border-top:1px dashed var(--ec-line);
}
.prow-price{
  display:flex;align-items:baseline;gap:1px;min-width:0;
  font-family:var(--sans);color:var(--ec-price);
}
.prow-price em{font-style:normal;font-size:13px;font-weight:700}
.prow-price b{
  font-size:20px;font-weight:800;letter-spacing:-.2px;
  font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;
}
.prow-price i{
  font-style:normal;font-size:11.5px;font-weight:400;
  color:var(--ec-text-3);margin-left:3px;
}
.prow-btn{
  flex:none;display:inline-flex;align-items:center;justify-content:center;
  height:30px;padding:0 16px;border-radius:999px;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em;
  box-shadow:0 4px 10px rgba(193,101,47,.22);transition:.18s;
}
.prow:hover .prow-btn{transform:translateY(-1px);box-shadow:0 7px 16px rgba(193,101,47,.34)}
@media(max-width:640px){
  .prow-ft{padding:9px 10px 11px}
  .prow-price b{font-size:18px}
  .prow-btn{height:28px;padding:0 13px;font-size:12.5px}
}

/* ---------- 2. 正文：单一强调色，去掉杂色与满屏下划线 ---------- */
.art-body{color:var(--ec-text-2);font-size:16px;line-height:1.95}
.art-body > p:first-of-type{font-size:16.5px;line-height:1.9}

/* 正文标题层级（2026-10-30 重做）：
   h2 = 大节：深色 23px/800 + 左侧渐变竖条 + 下方细分隔线，上下留白最大
   h3 = 小节：品牌橙 17px/700 + 左侧圆点引导，不带分隔线
   h4 = 更小一级：弱化中性色
   —— 字号 / 字重 / 颜色 / 装饰符号四个维度都拉开，扫读时一眼分出层级。
   注意：不能用 display:flex + gap —— 会让正文里的内链 <a> 变成独立 flex 项，
   与前后文字之间被 gap 撑开（tag 内链"木屋"两侧出现空隙的根因） */
.art-body h2{
  position:static;
  display:block;
  font-family:var(--sans);font-size:23px;font-weight:800;letter-spacing:0;
  color:var(--ec-text);margin:2.2em 0 1em;line-height:1.4;
  padding:0 0 10px;border:0;border-bottom:1px solid var(--ec-line);
}
.art-body h2::before{
  content:"";display:inline-block;vertical-align:-3px;
  width:5px;height:20px;border-radius:2px;margin-right:10px;
  background:linear-gradient(180deg,var(--ec-price),var(--ec-price-2));
  font-size:inherit;color:inherit;letter-spacing:0;
}
.art-body h3{
  position:relative;
  font-family:var(--sans);font-size:17px;font-weight:700;letter-spacing:0;
  color:var(--ec-price);margin:1.5em 0 .55em;line-height:1.55;
  padding-left:15px;border:0;
}
.art-body h3::before{
  content:"";position:absolute;left:0;top:.58em;
  width:6px;height:6px;border-radius:50%;
  background:var(--ec-price);opacity:.55;
}
.art-body h4{
  font-family:var(--sans);font-size:15.5px;font-weight:700;letter-spacing:0;
  color:var(--ec-text-2);margin:1.3em 0 .5em;line-height:1.5;
}
/* 正文第一个标题不要空出一大块 */
.art-body > h2:first-child,
.art-body > h3:first-child,
.art-body > h4:first-child{margin-top:.2em}
@media (max-width:640px){
  .art-body h2{font-size:19.5px;margin:1.9em 0 .8em;padding-bottom:8px}
  .art-body h2::before{width:4px;height:17px;margin-right:8px}
  .art-body h3{font-size:16px;padding-left:13px}
  .art-body h4{font-size:15px}
}
/* 强调用字重而不是染色 */
.art-body strong{font-weight:700;color:var(--ec-text)}
.art-body em{font-style:normal;background:none;font-weight:600;color:var(--ec-text)}
/* 链接：默认深色 + 极淡红下划线，hover 才变红 */
.art-body a{
  color:var(--ec-text);text-decoration:none;
  border-bottom:1px solid rgba(193,101,47,.30);
  transition:color .15s,border-color .15s;
}
.art-body a:hover{color:var(--ec-price);border-bottom-color:var(--ec-price)}
.art-body ul li::marker,.art-body ol li::marker{color:#b9bec7}
.art-body blockquote{
  margin:1.6em 0;padding:16px 20px;border-radius:var(--ec-radius-sm);
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-left:3px solid var(--ec-price);
  font-family:var(--sans);font-size:15px;line-height:1.85;color:var(--ec-text-2);
}
.art-body figure{margin:1.8em 0}
.art-body img{border:0;border-radius:var(--ec-radius-sm)}
.art-body figcaption{
  font-family:var(--sans);font-size:12.5px;letter-spacing:0;
  color:var(--ec-text-3);margin-top:8px;
}
.art-body table{
  border:0;border-collapse:separate;border-spacing:0;font-size:14.5px;
  border-radius:var(--ec-radius-sm);overflow:hidden;
}
.art-body th{background:var(--ec-bg);font-family:var(--sans);font-weight:700;color:var(--ec-text);text-align:left}
.art-body td,.art-body th{border:0;border-bottom:1px solid var(--ec-line);padding:10px 14px}

/* 正文里的硬数据卡：黑粗框 -> 电商浅框卡 */
.art-body .fact-row{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:0;border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm);
  background:var(--ec-card);overflow:hidden;margin:0 0 1.8em;
}
.art-body .fact{
  border:0;border-right:1px solid var(--ec-line);border-bottom:1px solid var(--ec-line);
  padding:13px 16px;gap:4px;
}
.art-body .fact-k{
  font-family:var(--sans);font-size:11.5px;letter-spacing:.04em;
  text-transform:none;color:var(--ec-text-3);
}
.art-body .fact-v{font-family:var(--sans);font-size:14.5px;color:var(--ec-text);line-height:1.6}

/* 每日行程里的强调也不要第三种颜色 */
.td-detail b{color:var(--ec-text);font-weight:700}
.td-dest em{font-style:normal}

/* ---------- 3. 定制游页面 ---------- */
.page-dingzhi .phead{border-bottom:0;padding:32px 0 24px}
.dz-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.dz-block{
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius);padding:24px 26px 26px;
  box-shadow:var(--ec-shadow);margin-bottom:18px;
}
.dz-block:last-child{margin-bottom:0}
.dz-block .sec-hd{margin-bottom:16px;align-items:center}
.dz-block .sec-hd h2{font-size:20px}
.dz-block .art-body{margin:0}
.dz-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:16px}

.page-dingzhi .form-box{margin:0;padding:0;border:0;background:none}
.form-box .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.form-box .form-full{grid-column:1 / -1}
.form-box label{
  display:block;font-family:var(--sans);font-size:13px;letter-spacing:0;
  text-transform:none;color:var(--ec-text-2);font-weight:600;margin-bottom:6px;
}
.form-box input,.form-box textarea{
  width:100%;padding:11px 13px;box-sizing:border-box;
  border:1px solid var(--ec-line-2);border-radius:var(--ec-radius-sm);
  background:#fff;font-size:14.5px;color:var(--ec-text);transition:.18s;
}
.form-box input::placeholder,.form-box textarea::placeholder{color:#b3b9c2}
.form-box input:focus,.form-box textarea:focus{
  outline:0;border-color:var(--ec-price);background:#fff;
  box-shadow:0 0 0 3px rgba(193,101,47,.10);
}
.form-box textarea{min-height:130px;resize:vertical}
.form-box .form-cc{display:flex;gap:10px;align-items:center}
.form-box .form-cc input{flex:1;min-width:0}
.form-box .form-cc img{
  height:43px;flex:none;border-radius:var(--ec-radius-sm);
  border:1px solid var(--ec-line-2);cursor:pointer;background:#fff;
}
.form-box button{
  width:100%;margin-top:8px;padding:14px 22px;border:0;border-radius:999px;cursor:pointer;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  color:#fff;font-size:16px;font-weight:700;letter-spacing:.02em;
  box-shadow:0 8px 20px rgba(193,101,47,.26);transition:.18s;
}
.form-box button:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(193,101,47,.34)}
.form-note{margin:10px 0 0;text-align:center;font-size:12.5px;color:var(--ec-text-3)}

.dz-card{
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius);padding:18px 20px 20px;box-shadow:var(--ec-shadow);
}
.dz-card h3{
  margin:0 0 12px;padding-left:10px;border-left:3px solid var(--ec-price);
  font-family:var(--sans);font-size:15px;font-weight:800;color:var(--ec-text);
}
.dz-list{list-style:none;padding:0;margin:0}
.dz-list li{
  position:relative;padding-left:16px;margin:0 0 12px;
  font-size:13.5px;line-height:1.7;color:var(--ec-text-2);
}
.dz-list li:last-child{margin-bottom:0}
.dz-list li::before{
  content:"";position:absolute;left:0;top:7px;width:6px;height:6px;
  border-radius:50%;background:var(--ec-price-2);
}
.dz-list li b{display:block;color:var(--ec-text);font-weight:700;font-size:14px;margin-bottom:2px}
.dz-steps{list-style:none;padding:0;margin:0}
.dz-steps li{
  display:flex;align-items:center;gap:10px;margin:0 0 12px;
  font-size:13.5px;color:var(--ec-text-2);
}
.dz-steps li:last-child{margin-bottom:0}
.dz-steps li i{
  flex:none;width:22px;height:22px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  color:#fff;font-style:normal;font-size:12px;font-weight:700;
}
.dz-contact .dz-tel{
  display:block;font-size:24px;font-weight:800;color:var(--ec-price);
  text-decoration:none;letter-spacing:.02em;margin-bottom:6px;
}
.dz-contact p{margin:0 0 14px;font-size:13px;color:var(--ec-text-3);line-height:1.7}
.dz-contact .btn{display:block;text-align:center}
@media(max-width:980px){
  .dz-grid{grid-template-columns:1fr}
  .dz-side{position:static}
}
@media(max-width:640px){
  .dz-block{padding:18px 16px 20px}
  .form-box .form-row{grid-template-columns:1fr}
}

/* ---------- 4. 专题页 topic-hero：黑色杂志风 -> 红系电商风 ---------- */
.topic-hero{
  position:relative;margin:0 0 30px;padding:56px 0 44px;color:#fff;
  background:#22303b center/cover no-repeat;
}
.topic-hero::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,rgba(150,20,12,.90) 0%,rgba(190,45,25,.70) 45%,rgba(18,24,30,.44) 100%);
}
.topic-hero > *{position:relative}
.topic-en{
  display:inline-block;padding:5px 14px;border-radius:999px;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.30);
  font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;opacity:1;margin:0 0 14px;color:#fff;
}
.topic-hero h1{
  font-family:var(--sans);font-size:clamp(32px,5vw,52px);font-weight:800;
  letter-spacing:.02em;margin:0 0 14px;line-height:1.18;
  text-shadow:0 2px 14px rgba(0,0,0,.28);
}
.topic-lead{
  max-width:760px;font-size:15.5px;line-height:1.9;opacity:.97;margin:0 0 24px;
  text-shadow:0 1px 8px rgba(0,0,0,.25);
}
.topic-stats{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;
  background:none;border:0;max-width:none;margin:0 0 26px;
}
.topic-stats > div{
  background:rgba(255,255,255,.96);border-radius:var(--ec-radius-sm);
  padding:14px 16px;box-shadow:0 6px 18px rgba(0,0,0,.14);
}
.topic-stats em{
  display:block;font-style:normal;font-family:var(--sans);font-size:12px;
  letter-spacing:.04em;text-transform:none;opacity:1;
  color:var(--ec-text-3);margin-bottom:5px;
}
.topic-stats b{
  font-family:var(--sans);font-size:20px;font-weight:800;
  letter-spacing:0;color:var(--ec-text);
}
.topic-hero .hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.topic-hero .btn{min-width:152px;text-align:center}
@media(max-width:1100px){ .topic-stats{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media(max-width:640px){
  .topic-hero{padding:38px 0 32px}
  .topic-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .topic-lead{font-size:14.5px;line-height:1.85}
  .topic-hero .btn{width:100%}
}

/* ---------- 5. 详情页正文头部 art-hd ---------- */
.art-hd{
  margin:0 0 20px;padding:20px 22px;
  background:var(--ec-card);border:1px solid var(--ec-line);
  border-radius:var(--ec-radius);box-shadow:var(--ec-shadow);
}
.art-hd h1{
  font-family:var(--sans);font-size:28px;font-weight:800;letter-spacing:0;
  line-height:1.35;margin:0 0 8px;color:var(--ec-text);
}
.art-hd .art-sub{margin:0 0 12px;font-size:15.5px;color:var(--ec-text-2);line-height:1.75}
.art-hd .art-meta{
  display:flex;flex-wrap:wrap;gap:6px 0;margin:0;padding-top:12px;
  border-top:1px dashed var(--ec-line);
}
.art-hd .am-item{
  font-family:var(--sans);font-size:12.5px;letter-spacing:0;
  text-transform:none;color:var(--ec-text-3);
}
.art-hd .am-item i{font-style:normal;margin-right:5px}
/* 产品详情页：标题 + 分节导航胶囊 */
.art-hd-nav{
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;flex-wrap:wrap;padding:16px 20px;
}
.art-hd-nav .ah-l{min-width:0}
.art-hd-nav h2{
  margin:0;font-family:var(--sans);font-size:19px;font-weight:800;
  letter-spacing:0;color:var(--ec-text);line-height:1.4;
}
.art-hd-nav .ah-l p{margin:4px 0 0;font-size:13px;color:var(--ec-text-3);line-height:1.6}
.art-hd-nav .ah-nav{display:flex;gap:8px;flex-wrap:wrap}
.art-hd-nav .ah-nav a{
  display:inline-block;padding:7px 15px;border-radius:999px;
  border:1px solid var(--ec-line-2);background:var(--ec-bg);
  color:var(--ec-text-2);font-size:13px;font-weight:600;
  text-decoration:none;transition:.18s;
}
.art-hd-nav .ah-nav a:hover{
  border-color:transparent;color:#fff;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
}
@media(max-width:640px){
  .art-hd{padding:16px 16px}
  .art-hd h1{font-size:23px}
  .art-hd-nav{padding:14px 16px}
  .art-hd-nav h2{font-size:17px}
  .art-hd-nav .ah-nav a{padding:6px 12px;font-size:12.5px}
}

/* 栏目页头部：黑粗分割线 -> 浅灰 */
.phead{border-bottom:1px solid var(--ec-line)}
/* ---------- 第九轮 · PATCH 7：专题页表格横滑 / 移动端字号下限 ---------- */
/* 专题页 3 张对比表在 640px 以下会撑破页面（最小内容宽约 474px），
   改为独立横向滚动容器：桌面端保持原样，移动端可左右滑动查看。 */
.tk-scroll{margin:0 0 18px;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.tk-scroll .tk-table{margin:0}
.tk-scroll::-webkit-scrollbar{height:6px}
.tk-scroll::-webkit-scrollbar-thumb{background:var(--ec-line-2);border-radius:3px}
@media (max-width:640px){
  .tk-scroll .tk-table{min-width:460px}
  .tk-table thead th{white-space:normal}
}
@media (min-width:641px){
  .tk-scroll{overflow:visible}
}

/* 移动端可读性下限：10px 的英文小标签在手机上偏小，统一抬到 11px */
@media (max-width:640px){
  .hero-stat span,.veh-k,.dz-dl dt,.vol-en,.season .months,.card-no,.prow-no{font-size:11px}
}

/* 产品详情页 10px 微型标签（行程编号 / 字段名 / 英文眉标）抬到 11px，
   全站可读性下限统一为 11px，避免长文阅读时眉标糊成一团。 */
.td-num,.td-lab,.td-item-hd em,.td-f dt,.sec-hd .en,.sec-hd h2 .en{font-size:11px}
/* ---------- /第九轮 · PATCH 7 ---------- */

/* ==========================================================================
   第十轮 · PATCH 10
   1) 参数卡 facts-card（后台「参数卡」字段 ext_facts，每行 标签|值）
   2) 产品详情 pinfo 内「致电/定制方案」按钮区下移到底部
   3) 每日行程 td-detail 重排版美化
   4) 产品列表 prow-ft 价格与预定按钮同行对齐
   ========================================================================== */

/* ---------- 1. 参数卡（沿用站内 .fact-row 硬数据卡表格样式，内容来自后台独立输入框） ---------- */
.facts-card{
  background:#fff;border:1px solid var(--ec-line,#ece6da);border-radius:10px;
  padding:14px 16px 16px;margin:0 0 22px;
}
.facts-lab{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--sans);font-size:13px;font-weight:700;color:#c1652f;
}
.facts-lab::before{
  content:"";width:4px;height:14px;border-radius:2px;
  background:linear-gradient(180deg,#c1652f,#e09468);
}
.facts-card .fact-row{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:0;border:1px solid var(--ec-line);border-radius:var(--ec-radius-sm,8px);
  background:var(--ec-card,#fbf9f4);overflow:hidden;margin:12px 0 0;
}
.facts-card .fact{
  border:0;border-right:1px solid var(--ec-line);border-bottom:1px solid var(--ec-line);
  padding:13px 16px;display:flex;flex-direction:column;gap:4px;min-width:0;
}
.facts-card .fact-k{
  font-family:var(--sans);font-size:11.5px;letter-spacing:.04em;
  text-transform:none;color:var(--ec-text-3,#86857c);
}
.facts-card .fact-v{font-family:var(--sans);font-size:14.5px;font-weight:600;color:var(--ec-text,#222);line-height:1.6;overflow-wrap:break-word}
@media (max-width:640px){
  .facts-card .fact-row{grid-template-columns:1fr 1fr}
  .facts-card{padding:12px 12px 14px;margin-bottom:18px}
}

/* ---------- 2. pinfo 按钮区：自然间距，不再推底（推底会在参数表与按钮之间留大片空白） ---------- */
.pinfo{display:flex;flex-direction:column}
.pinfo .pbtns{
  margin-top:22px;padding-top:18px;
  border-top:1px dashed var(--ec-line,#e9e3d7);
}
.pinfo .pbtn-note{margin:12px 0 0}

/* ---------- 3. 每日行程 td-detail 美化 ---------- */
.td-detail{
  margin:0;padding:14px 18px 15px;
  background:#fbf9f4;border:1px solid #eef0f2;border-left:3px solid var(--gold,#c1652f);
  border-radius:8px;
  font-size:15px;line-height:2.05;color:#333;
}
.td-detail .td-lab{
  display:flex;align-items:center;gap:6px;
  font-family:var(--sans);font-size:13px;font-weight:700;color:var(--gold,#c1652f);
  letter-spacing:.06em;text-transform:none;margin:0 0 8px;
}
.td-detail .td-lab::before{
  content:"";flex:none;width:14px;height:14px;border-radius:50%;
  border:2px solid var(--gold,#c1652f);
  background:radial-gradient(circle at center,var(--gold,#c1652f) 0 3px,transparent 3.5px);
}
.td-detail br{display:block;content:"";margin:4px 0}
@media (max-width:640px){
  .td-detail{padding:12px 14px 13px;font-size:14.5px;line-height:1.95}
}

/* ---------- 4. 列表价格/按钮同行 ---------- */
.prow-ft{display:flex!important;align-items:center!important;flex-wrap:nowrap!important}
.prow-ft .prow-price{margin:0!important;padding-top:0!important;padding-bottom:0!important;min-width:0;flex:1 1 auto}
.prow-ft .prow-btn{flex:none;white-space:nowrap}

/* ==========================================================================
   PATCH 11（2026-10-29 第二轮）
   1) tag 标签页：产品条目带价格/天数/出发城市参数行
   2) tag 标签页：文章类条目纯文字列表行
   ========================================================================== */

/* ---------- 1. 产品条目参数行 ---------- */
.card.card-prod .card-params{
  display:flex;align-items:center;flex-wrap:nowrap;gap:10px;
  margin-top:10px;padding-top:10px;
  border-top:1px dashed var(--ec-line,#e9e3d7);
  font-family:var(--sans);
}
.card.card-prod .cp-price{
  display:flex;align-items:baseline;gap:1px;
  color:var(--ec-price,#c1652f);white-space:nowrap;flex:1 1 auto;min-width:0;
}
.card.card-prod .cp-price em{font-style:normal;font-size:12.5px;font-weight:700}
.card.card-prod .cp-price b{font-size:20px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.card.card-prod .cp-price i{font-style:normal;font-size:11px;color:var(--ec-text-3,#86857c);margin-left:2px}
.card.card-prod .cp-item{
  flex:none;font-size:12px;color:var(--ec-text-2,#555);
  background:var(--ec-bg,#f6f3ec);border-radius:999px;padding:3px 10px;
  white-space:nowrap;max-width:9em;overflow:hidden;text-overflow:ellipsis;
}
.card.card-prod .cp-btn{
  flex:none;display:inline-flex;align-items:center;
  height:26px;padding:0 14px;border-radius:999px;
  background:linear-gradient(135deg,var(--ec-price,#c1652f),var(--ec-price-2,#e09468));
  color:#fff;font-size:12px;font-weight:700;white-space:nowrap;
}
@media (max-width:640px){
  .card.card-prod .cp-item:nth-of-type(2){display:none}
  .card.card-prod .cp-price b{font-size:18px}
}

/* ---------- 2. 文章类文字列表行 ---------- */
.card-grid .tag-textrow{
  grid-column:1 / -1;
  display:flex;align-items:baseline;gap:14px;
  padding:13px 16px;background:var(--ec-card,#fff);
  border:1px solid var(--ec-line,#ece6da);border-radius:8px;
  transition:border-color .15s,box-shadow .15s;
}
.card-grid .tag-textrow:hover{border-color:var(--ec-price,#c1652f);box-shadow:0 4px 14px rgba(0,0,0,.05)}
.card-grid .tag-textrow .tr-t{
  flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-family:var(--sans);font-size:15px;font-weight:600;color:var(--ec-text,#222);
}
.card-grid .tag-textrow:hover .tr-t{color:var(--ec-price,#c1652f)}
.card-grid .tag-textrow .tr-sub{
  flex:none;font-family:var(--sans);font-size:12px;color:var(--ec-text-3,#86857c);white-space:nowrap;
}
@media (max-width:640px){
  .card-grid .tag-textrow{flex-direction:column;gap:4px;padding:11px 13px}
  .card-grid .tag-textrow .tr-t{white-space:normal}
}

/* ==========================================================================
   PATCH 12（2026-10-29 第三轮）
   1) pinfo 服务保障块（填充参数表与按钮之间的空白区）
   ========================================================================== */
.psvc{
  background:var(--ec-card,#fff);border:1px solid var(--ec-line,#ece6da);
  border-radius:var(--ec-radius-sm,8px);padding:14px 14px 12px;
}
.psvc .psvc-t{
  margin:0 0 10px;font-family:var(--sans);font-size:13px;font-weight:800;
  color:var(--ec-text,#222);display:flex;align-items:baseline;gap:8px;
}
.psvc .psvc-t i{
  font-style:normal;font-family:var(--mono,monospace);font-size:9.5px;
  letter-spacing:.18em;color:var(--ec-text-3,#86857c);font-weight:400;
}
.psvc .psvc-list{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;
}
.psvc .psvc-list li{min-width:0}
.psvc .psvc-list b{
  display:block;font-family:var(--sans);font-size:12.5px;font-weight:700;
  color:var(--ec-text,#222);margin-bottom:2px;
}
.psvc .psvc-list b::before{
  content:"";display:inline-block;vertical-align:1px;
  width:12px;height:12px;margin-right:5px;
  background:var(--ec-price,#c1652f);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.psvc .psvc-list span{
  display:block;font-size:11.5px;line-height:1.55;color:var(--ec-text-3,#86857c);
}
.psvc .psvc-tip{
  margin:10px 0 0;padding-top:10px;border-top:1px dashed var(--ec-line,#e9e3d7);
  font-size:12px;line-height:1.7;color:var(--ec-text-2,#555);
}
@media (max-width:640px){
  .psvc{padding:12px 12px 10px}
  .psvc .psvc-list{gap:7px 8px}
}

/* ---------- 2. 查看全部标签入口（侧边栏 + 首页词条区） ---------- */
.side-tags-all,.sec-more{
  display:inline-flex;align-items:baseline;gap:8px;
  margin-top:12px;font-family:var(--sans);font-size:13px;font-weight:700;
  color:var(--ec-price,#c1652f);text-decoration:none;
}
.side-tags-all i,.sec-more i{
  font-style:normal;font-family:var(--mono,monospace);font-size:9.5px;
  letter-spacing:.18em;color:var(--ec-text-3,#86857c);font-weight:400;
}
.side-tags-all::after,.sec-more::after{content:"\2192";transition:transform .15s}
.side-tags-all:hover::after,.sec-more:hover::after{transform:translateX(3px)}
.sec-hd .sec-more{margin-left:auto;align-self:flex-end}
@media (max-width:640px){.sec-hd .sec-more{align-self:flex-start;margin-left:0}}

/* ---------- PATCH 13 · 侧边栏「查看全部标签」入口美化 ---------- */
.side-tags-all{
  display:flex;align-items:center;gap:8px;
  margin-top:12px;padding:10px 14px;border-radius:10px;
  border:1px solid #f0dccb;background:linear-gradient(180deg,#fef7f1,#fff);
  font-family:var(--sans);font-size:13px;font-weight:700;line-height:1;
  color:var(--ec-price,#c1652f);text-decoration:none;
  transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;
}
.side-tags-all i{
  font-style:normal;margin-left:auto;
  font-family:var(--mono,monospace);font-size:9px;letter-spacing:.16em;
  color:#a8836e;font-weight:400;
}
.side-tags-all::after{content:"\2192";font-size:14px;line-height:1;color:var(--ec-price,#c1652f);transition:transform .18s}
.side-tags-all:hover{
  border-color:#c1652f;background:linear-gradient(180deg,#fff1ef,#fff);
  box-shadow:0 4px 14px rgba(193,101,47,.14);transform:translateY(-1px);
}
.side-tags-all:hover::after{transform:translateX(3px)}
.side-tags-all:hover i{color:#c1652f}

/* ===== 详情页 · 相关推荐（规范 8：详情页加「相关推荐」） ===== */
.art-rel{
  margin:26px 0 0;padding:22px 24px 6px;
  border:1px solid #eadfd2;border-radius:14px;
  background:linear-gradient(180deg,#fffdfa,#fff);
}
.art-rel-hd{
  display:flex;align-items:baseline;gap:12px;margin-bottom:14px;
}
.art-rel-hd h2{
  font-family:var(--sans);font-size:19px;font-weight:800;letter-spacing:0;
  color:var(--ec-text,#1d2b2a);
}
.art-rel-hd .note{
  font-size:12px;color:var(--ec-text-3,#7b8a88);letter-spacing:.02em;
}
.art-rel-hd .more{
  margin-left:auto;font-family:var(--sans);font-size:13px;font-weight:700;
  color:var(--ec-price,#c1652f);text-decoration:none;white-space:nowrap;
}
.art-rel-hd .more::after{content:"\2192";margin-left:4px;display:inline-block;transition:transform .18s}
.art-rel-hd .more:hover::after{transform:translateX(3px)}
.art-rel-list{display:grid;grid-template-columns:1fr;gap:10px;align-items:stretch}

/* 推荐卡：图左（96px）+ 右栏（标题 / 概要 / 价格 自上而下）。
   必须显式声明列模板 —— 继承基础 .prow 的 210px minmax(0,1fr) auto 时，
   两列网格里 210px 会把图区和文字区撑爆，文字被压成一字一行。 */
.art-rel-list .prow{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:12px;align-items:start;
  padding:12px;border-radius:12px;border:1px solid #f0e5d9;background:#fff;
  text-decoration:none;min-width:0;
}
.art-rel-list .prow:hover{background:#fff;border-color:#f0d0b4;box-shadow:0 6px 18px rgba(193,101,47,.09)}
.art-rel-list .prow-media{
  width:96px;max-width:96px;flex:none;aspect-ratio:4/3;min-width:0;
}
.art-rel-list .prow-main{display:block;min-width:0;overflow:hidden}
.art-rel-list .prow-ft{display:block;min-width:0;grid-column:2;margin-top:7px}
.art-rel-list .prow-t{
  font-size:15px;line-height:1.45;margin:0 0 6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;word-break:break-word;
}
.art-rel-list .prow-meta{font-size:12px;line-height:1.6;display:block}
.art-rel-list .prow-d{display:none}
.art-rel-list .prow-price{text-align:left;padding-right:0}
.art-rel-list .prow-price b{font-size:21px}
@media (max-width:860px){
  .art-rel{padding:18px 16px 10px}
  .art-rel-list{grid-template-columns:1fr}
  .art-rel-list .prow{grid-template-columns:88px minmax(0,1fr);gap:11px;padding:11px}
  .art-rel-list .prow-media{width:88px;max-width:88px}
  .art-rel-list .prow-price b{font-size:21px}
}
@media (max-width:480px){
  .art-rel-list .prow{grid-template-columns:76px minmax(0,1fr);gap:10px}
  .art-rel-list .prow-media{width:76px;max-width:76px}
  .art-rel-list .prow-price b{font-size:19px}
  .art-rel-list .prow-t{font-size:14px}
  .art-rel-list .prow-meta{font-size:11.5px}
}

/* 桌面端（有 300px 侧栏时主栏仅约 774px，两列会挤）：单列横排，图 132 + 文字自适应 + 价格右对齐 */
@media (min-width:861px){
  .art-rel-list{gap:10px}
  .art-rel-list .prow{grid-template-columns:132px minmax(0,1fr) auto;gap:16px 14px;align-items:center;padding:12px 14px}
  .art-rel-list .prow-media{width:132px;max-width:132px;aspect-ratio:3/2}
  .art-rel-list .prow-ft{grid-column:auto;margin-top:0;text-align:right;align-self:center}
  .art-rel-list .prow-price{text-align:right}
  .art-rel-list .prow-price b{font-size:24px}
  .art-rel-list .prow-t{font-size:16px;margin-bottom:7px}
  .art-rel-list .prow-meta{font-size:12.5px}
}

/* 861~1200px：有 300px 侧栏，主栏只剩 640~770px，卡片整体收一档
   （写成互斥区间，避免和上面的 min-width:861px 比书写顺序） */
@media (min-width:861px) and (max-width:1200px){
  .art-rel{padding:18px 16px 8px}
  .art-rel-list .prow{grid-template-columns:104px minmax(0,1fr) auto;gap:12px 10px;padding:11px 12px}
  .art-rel-list .prow-media{width:104px;max-width:104px;aspect-ratio:4/3}
  .art-rel-list .prow-price b{font-size:19px}
  .art-rel-list .prow-t{font-size:15px;margin-bottom:6px}
  .art-rel-list .prow-meta{font-size:11.5px;line-height:1.55}
}
/* 861~1040px（iPad 横屏/小笔记本）：主栏仅剩 490~560px，再收一档避免标题必占两行 */
@media (min-width:861px) and (max-width:1040px){
  .art-rel{padding:16px 13px 8px}
  .art-rel-list .prow{grid-template-columns:88px minmax(0,1fr) auto;gap:11px 9px;padding:10px}
  .art-rel-list .prow-media{width:88px;max-width:88px}
  .art-rel-list .prow-price b{font-size:17px}
  .art-rel-list .prow-price i{font-size:11px}
  .art-rel-list .prow-t{font-size:14.5px;margin-bottom:5px}
  .art-rel-list .prow-meta{font-size:11px;line-height:1.5}
}


/* ==========================================================================
   移动端内边距收敛（解决详情页「三层 padding 叠加」把文字挤扁的问题）
   --------------------------------------------------------------------------
   问题实测（390px 视口，/yiri/hami-guazhou-yiri.html）：
     .wrap          20       -> 内容 350
     .detail-main   18       -> 内容 312
     #tripdays      14       -> 内容 283
     .td-item-bd    14       -> 内容 254
     .td-detail     14       -> 文字只剩 221（两侧共吃掉 169px，占屏宽 43%）
   思路：外层保留 12px 呼吸位，内层改为「只留纵向内边距 + 横向归零」，
        靠边框/背景色区分层次，不再靠横向留白堆叠。
   作用范围：仅 <=860px，桌面端布局不受影响。
   ========================================================================== */

/* 平板横屏（<=1024px）：详情卡已是窄栏（约 656px），四列小卡每格只剩 95px 文字宽，
   「单程约 20 公里，全天车程约 60 公里」这类内容会碎成多行。改为 2 列各半。 */
@media (max-width:1024px){
  .td-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .td-f{padding:12px 13px}
  #tripdays{padding-left:0;padding-right:0}
  .td-item-bd{padding-left:14px;padding-right:14px}
}

@media (max-width:860px){

  /* 1. 外层容器：20 -> 12 */
  .wrap{padding-left:12px;padding-right:12px}

  /* 2. 详情主体卡：横向 18 -> 0（由 .wrap 提供留白），纵向保留 */
  .art .detail-main{padding-left:0;padding-right:0;padding-top:16px;padding-bottom:16px}
  /* 卡片被压成通栏后，圆角与描边在贴边时显得多余，改为仅上下留线 */
  .art .detail-main{border-left:0;border-right:0;border-radius:0}

  /* 3. 行程区：14 -> 0，只留纵向 */
  .tripdays{padding-left:0;padding-right:0;padding-top:14px;padding-bottom:14px}

  /* 4. 行程单条目：头部/内容区横向 14/18 -> 10 */
  .td-item-hd{padding:12px 10px;grid-template-columns:auto minmax(0,1fr) 22px;gap:9px}
  .td-item-bd{padding:12px 10px}

  /* 5. 每日小卡（目的地/餐/住/车/里程）：641~860px 双列，<=640px 单列（见下个断点） */
  .td-facts{grid-template-columns:repeat(2,minmax(0,1fr));background:transparent;border:0;gap:6px;margin-bottom:14px}
  .td-f{
    padding:10px;border:1px solid var(--ec-line,#ece6da);border-radius:8px;
    background:#fbf9f4;margin-bottom:0;
  }
  /* 字段名与值并排，比上下堆更省高度 */
  .td-f{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;align-items:baseline}
  .td-f dt{margin:0}

  /* 6. 详细行程：本身已是带底色的卡片，内边距收到 10px（桌面挡 14x18 会盖掉，需同权重覆盖） */
  .td-detail{padding:10px 10px 11px;margin-top:12px;line-height:1.9}
  .td-dest{margin-bottom:12px}

  /* 7. 参数卡 / 费用须知：横向 12~18 -> 10（.detail-main .pnote 权重更高，必须带上前缀） */
  .facts-card{padding:10px 10px 12px}
  .facts-card .fact{padding:10px 12px}
  .detail-main .pnote{padding:14px 12px 16px}
  /* 专题页（大海道 / 伊吾胡杨）走 .pnotes > .pnote，同步收窄 */
  .pnotes .pnote{padding:14px 12px 14px}
  .pnote li{padding-left:13px}

  /* 8. 详情页内层卡片：横向内边距归零会贴边，改为收到 12~14px
        （由「.wrap 12px + 卡片自身 12px」双层呼吸，正文可用宽度仍比原来宽 40%+） */
  .art .detail-main{padding-top:14px;padding-bottom:14px}
  .art-hd,.art-hd-nav{padding-left:14px;padding-right:14px}
  .art-hd-nav{padding-top:14px;padding-bottom:14px}
  /* 行程区必须用 #tripdays：上面 @media (max-width:1024px) 里有同 ID 的 padding:0，类选择器压不过 */
  #tripdays{padding-left:12px;padding-right:12px;padding-top:14px;padding-bottom:14px}
  .art-body{padding-left:14px;padding-right:14px}
  .facts-card{padding:11px 13px 12px}
  .detail-main .pnote{padding:14px 13px 16px}
  .pnotes .pnote{padding:14px 13px 14px}
  /* 相关推荐的通栏卡片同样要留出内边距，否则标题/卡片贴屏 */
  .art-rel{padding:16px 14px 12px}
  .tags-inline{padding-left:14px;padding-right:14px}
  /* 面包屑直接挂在 .wrap 下（不在 .detail-main 里），自身横向 padding 为 0，
     不补的话「首页 / 栏目 / 当前页」会只剩 .wrap 的 12px，视觉上贴边 */
  .crumb{padding-left:14px;padding-right:14px}
  /* 栏目页头（.phead：标题/副标/简介）同理，基础规则是 padding:6px 0 22px，横向为 0；
     定制游页还有更高权重的 .page-dingzhi .phead{padding:32px 0 24px}，必须同权重一起覆盖 */
  .phead{padding-left:14px;padding-right:14px}
  .page-dingzhi .phead{padding-left:14px;padding-right:14px}
  /* 专题页（大海道 / 伊吾胡杨）与 FAQ 页：内容直接挂在 .wrap 下、没有内层卡片容器，
     横向 padding 全为 0，必须逐个补。
     .wrap>h1 只命中专题页（首页/关于/联系的单页 h1 在 .wrap-narrow 或 hero 里，
     栏目页 h1 在 .phead 里），实测不会误伤 */
  .topic-lead,.tk-note,.tk-spots,.faq-more{padding-left:14px;padding-right:14px}
  .wrap>h1{padding-left:14px;padding-right:14px}
  /* 区块小标题行（.sec-hd：h2 + 右侧说明 .note）：≤640px 时 .note 会换行成整行，
     起点落在 .wrap 的 12px 上，与页面其余 24px 的文字不齐，同样补一层内边距 */
  .sec-hd{padding-left:14px;padding-right:14px}
}

/* 手机（<=640px）：小卡双列时每格不足 150px，改为单列 + 标签值并排 */
@media (max-width:640px){
  .td-facts{grid-template-columns:1fr;gap:0;background:transparent;border:0}
  .td-f{
    padding:9px 10px;border:1px solid var(--ec-line,#ece6da);border-radius:8px;
    background:#fbf9f4;margin-bottom:6px;
  }
  .td-f:last-child{margin-bottom:0}
}

/* 超小屏（<=400px）：进一步压缩字段名列宽，内层呼吸位保持 12px 不贴边 */
@media (max-width:400px){
  /* 外层不再压到 8px：8px 会让白色卡片边框几乎贴屏（视觉「贴边」），
     统一保持 12px，内层再各自留 12px，两层呼吸共约 24px */
  .wrap{padding-left:12px;padding-right:12px}
  .td-f{grid-template-columns:56px minmax(0,1fr);gap:6px}
  .td-item-hd{padding:11px 9px;gap:8px}
  .td-item-bd{padding:11px 9px}
  .td-day{padding:5px 7px}
  .td-title{font-size:14.5px}
  .art-hd,.art-hd-nav,.art-body,.tags-inline{padding-left:12px;padding-right:12px}
  /* 必须写 #tripdays：@media (max-width:1024px) 里有 #tripdays{padding:0}，
     ID 权重高于 .tripdays，用类选择器写会被它压掉 */
  #tripdays{padding-left:12px;padding-right:12px}
  .art-rel{padding:14px 12px 12px}
  .crumb{padding-left:12px;padding-right:12px}
  .phead{padding-left:12px;padding-right:12px}
  .page-dingzhi .phead{padding-left:12px;padding-right:12px}
  .topic-lead,.tk-note,.tk-spots,.faq-more{padding-left:12px;padding-right:12px}
  .wrap>h1{padding-left:12px;padding-right:12px}
  .sec-hd{padding-left:12px;padding-right:12px}
  /* 产品卡价格行：base 里有 .prow-ft{flex-wrap:nowrap!important} + .prow-price{flex:1 1 auto;min-width:0}，
     卡片窄到 ~143px 时价格容器被压到 40px 以下，内部 nowrap 的 ¥ 符号向左溢出，
     被卡片的 overflow:hidden 从 x=12 处裁掉（320px 实测 ¥ 落在 6.9px）。
     放开换行让「价格」与「预定按钮」上下排。这里必须带 !important 才能压过上面的 nowrap!important */
  .prow-ft{flex-wrap:wrap!important;row-gap:8px}
  .prow-ft .prow-price{flex:1 1 100%!important;min-width:0}
  .prow-ft .prow-btn{width:100%;justify-content:center}
}

/* ==========================================================================
   PATCH 13（2026-10-30）
   首页 / 列表页 / 专题页产品卡：价格居中 + 「起/人」全断点显示
   —— base 的 .prow-price{justify-content:flex-end} 是给「表格式列表行」用的
      （价格作为一个右对齐列），套到卡片底栏就会把价格顶到「预定」按钮旁边：
      实测 390px 下价格文字落在卡片右侧（glyph 中心 137，卡片中心 101）。
   ========================================================================== */

/* 卡片底栏改纵向：价格独占一行居中，预定按钮在下方居中 */
.plist.prow-grid .prow-ft{
  display:flex!important;flex-direction:column;align-items:center;justify-content:center;
  gap:9px;padding:10px 12px 12px;
}
/* 必须 !important：@media (max-width:400px) 里有 .prow-ft .prow-price{flex:1 1 100%!important}，
   且 column 方向下 flex-basis:100% 会按高度算，必须显式收成内容宽 */
.plist.prow-grid .prow-ft .prow-price{flex:0 0 auto!important;justify-content:center}
.plist.prow-grid .prow-ft .prow-btn{width:auto;min-width:104px}
/* 「起/人」：@media (max-width:640px) 里有 .prow-price i{display:none}，卡片里一律补回 */
.plist.prow-grid .prow-price i,
.prow-ft .prow-price i{display:inline;font-style:normal}

/* ==========================================================================
   PATCH 14（2026-10-31）
   1) 定制游页 .form-box 补内边距 —— .page-dingzhi .form-box 原本 padding:0
   2) 移动端悬浮客服按钮上移 3 个身位
   3) FAQ 列表页重做：双列卡片 + 摘要 + 「查看全文」跳详情 + 分页
   ========================================================================== */

/* ---------- 1 · 定制游表单内边距 --------------------------------------
   第 2333 行 .page-dingzhi .form-box{margin:0;padding:0;border:0;background:none}
   当初为了去掉卡片外框把 padding 一起清成 0，表单直接贴到 .dz-block 边上了。
   这里只把内边距加回来，仍然保持无边框（外层 .dz-block 已经是卡片）。 */
.page-dingzhi .form-box{padding:22px 24px 24px}

/* ---------- 2 · 移动端悬浮客服上移 3 个身位 ----------------------------
   原来 ≤900px bottom:76px / ≤560px bottom:70px，按钮底边正好压在底部导航上沿。
   按 3 个按钮身位（按钮直径 48~54px）上移约 144px。 */
@media (max-width:900px){
  .cs-float{bottom:220px;right:12px}
}
@media (max-width:560px){
  .cs-float{bottom:214px;right:10px}
}
/* 横屏手机 / 矮视口兜底：否则 214px 会把按钮顶到屏幕上半部分 */
@media (max-width:900px) and (max-height:520px){
  .cs-float{bottom:96px}
}

/* ---------- 3 · FAQ 列表页重做 ----------------------------------------
   旧版 .faq-cols-page 用 grid-auto-flow:column + grid-template-rows:repeat(10,auto)，
   21 条被排成 3 列（448/299/333px 三档宽度），且行高共享：点开任意一条会把整行
   撑到 859px，同排另外两列留出巨大空白 —— 这就是「排版乱七八糟」。
   新版：两列卡片 + align-items:start（展开互不影响）+ 摘要 + 查看全文 + 分页。 */
.faq-list{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;align-items:start;border-top:0;
}
.faq-i{
  border:1px solid var(--ec-line);border-radius:var(--ec-radius);
  background:var(--ec-card);box-shadow:var(--ec-shadow);
  overflow:hidden;transition:border-color .18s,box-shadow .18s;
}
.faq-i:hover{border-color:var(--ec-line-2);box-shadow:var(--ec-shadow-2)}
.faq-i[open]{border-color:var(--ec-price)}
.faq-q{
  display:flex;gap:12px;align-items:flex-start;list-style:none;cursor:pointer;
  padding:14px 16px;margin:0;
  font-family:var(--sans);font-size:16px;font-weight:700;line-height:1.5;
  color:var(--ec-text);
}
.faq-q::-webkit-details-marker{display:none}
.faq-q::before{
  content:"Q";flex:none;font-family:var(--mono);font-size:11px;font-weight:700;color:#fff;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  width:22px;height:22px;line-height:22px;text-align:center;border-radius:6px;
  margin-top:1px;
}
.faq-q::after{
  content:"";flex:none;margin-left:auto;margin-top:7px;
  width:7px;height:7px;
  border-right:2px solid var(--ec-text-3);border-bottom:2px solid var(--ec-text-3);
  transform:rotate(45deg);transition:transform .2s;
}
.faq-i[open] .faq-q{color:var(--ec-price)}
.faq-i[open] .faq-q::after{transform:rotate(-135deg);border-color:var(--ec-price)}
.faq-a{
  padding:0 16px 16px;font-size:14.5px;line-height:1.8;color:var(--ec-text-2);
}
.faq-lead{
  font-weight:600;color:var(--ec-text);background:#fdf6ef;
  border-left:3px solid var(--ec-price);border-radius:0 8px 8px 0;
  padding:9px 12px;margin:0 0 10px;font-size:14.5px;line-height:1.7;
}
.faq-ex{margin:0 0 13px}
.faq-go{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:999px;
  font-size:13.5px;font-weight:700;color:#fff;
  background:linear-gradient(135deg,var(--ec-price),var(--ec-price-2));
  box-shadow:0 6px 16px rgba(193,101,47,.24);
  transition:transform .18s,box-shadow .18s;
}
.faq-go:hover,.faq-go:focus{
  color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(193,101,47,.32);
}
.faq-go-ar{transition:transform .18s}
.faq-go:hover .faq-go-ar{transform:translateX(3px)}
@media (max-width:900px){
  .faq-list{grid-template-columns:1fr}
}
@media (max-width:640px){
  .faq-list{gap:12px}
  .faq-q{font-size:15.5px;padding:13px 14px}
  .faq-a{padding:0 14px 14px;font-size:14px}
}
/* 移动端 24px 横向内边距会把输入框压窄（390px 下输入宽只剩 285px），收一档 */
@media (max-width:640px){
  .page-dingzhi .form-box{padding:16px 14px 18px}
}

/* ==========================================================================
   PATCH 15（2026-10-31）· .faq-go「查看全文」配色修正 + 美化

   【根因】第 723 行残留的旧规则
       .faq-a a{color:var(--lake);border-bottom:1px solid var(--line-2)}
   特异性 (0,1,1) 高于 .faq-go (0,1,0)，而「查看全文」正好是 .faq-a 的后代 <a>，
   于是被染成巴里坤湖青 #2b7c86 并压了一条青色下划线。
   CDP 实测：color = rgb(43,124,134)，白字完全没生效；
   青字压在橙渐变上对比度只有 1.19:1（起点）/ 1.99:1（终点）——几乎看不见，
   这就是用户说的「配色不太对」。
   另外渐变终点 --ec-price-2 #e09468 与白字对比度仅 2.44:1，即便换成白字也不达标。

   【修法】
   1. 用 .faq-a .faq-go（特异性 0,2,0）压过 .faq-a a，强制白字 + 去掉下划线；
   2. 渐变整体加深为 #b0572a → #8f431d（仍是雅丹落日铜橙系），
      两端白字对比度 4.95:1 / 7.03:1，均达 WCAG AA 4.5:1；
   3. 补 inset 顶部高光 + 品牌色投影 + hover 上浮加深 + focus-visible 描边。
   ========================================================================== */

/* 1 · 压过 .faq-a a 的青色与下划线（hover/focus/active 一并锁死） */
.faq-a .faq-go,
.faq-a .faq-go:hover,
.faq-a .faq-go:focus,
.faq-a .faq-go:active{
  color:#fff;border:0;text-decoration:none;
}

/* 2 · 按钮本体 */
.faq-go{
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 18px;border-radius:999px;
  font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1;
  color:#fff;
  background:linear-gradient(135deg,#b0572a 0%,#8f431d 100%);
  box-shadow:0 4px 12px rgba(143,67,29,.26),inset 0 1px 0 rgba(255,255,255,.16);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.faq-go:hover,.faq-go:focus-visible{
  color:#fff;
  background:linear-gradient(135deg,#9c4a22 0%,#7a3a19 100%);
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(143,67,29,.34),inset 0 1px 0 rgba(255,255,255,.2);
}
.faq-go:active{
  transform:translateY(0);
  box-shadow:0 3px 8px rgba(143,67,29,.32),inset 0 1px 0 rgba(255,255,255,.12);
}
.faq-go:focus-visible{outline:2px solid var(--ec-price);outline-offset:3px}

/* 箭头：默认细箭头，hover 向右滑 */
.faq-go-ar{
  font-size:15px;line-height:1;margin-left:1px;
  transition:transform .18s ease;
}
.faq-go:hover .faq-go-ar,.faq-go:focus-visible .faq-go-ar{transform:translateX(3px)}

/* 移动端：触摸目标拉到 44px 高（默认 9px*2+14px 只有 33px，手指点不准） */
@media (max-width:640px){
  .faq-go{padding:11px 20px;min-height:44px;font-size:14.5px}
}

/* ===== PATCH 16 · v1.6 侧边栏「相关产品推荐 / 热门产品推荐」 =====
   文章详情页（景点 / 攻略 / FAQ）与产品详情页的侧边栏统一改为推荐「线路产品」，
   列表项在标题下方多出一行价格（¥xxx 起/人 · N天），并补「查看全部线路」CTA，
   目的是把读者从内容页引导到产品页下单。 */
.side-list-p .side-t{
  display:grid;gap:4px;min-width:0;
  font-size:13.5px;line-height:1.5;color:var(--ec-text,#21201c);
}
/* 标题单独做两行截断 —— 不能挂在 .side-t 上，否则下面的价格行会被一起裁掉 */
.side-list-p .side-tt{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
}
.side-list-p .side-p{
  display:block;
  font-style:normal;font-size:12.5px;line-height:1.4;
  color:var(--ec-price,#c1652f);
}
.side-p .p-cur{font-style:normal;font-size:11px;margin-right:1px}
.side-p .p-num{font-size:15px;font-weight:700;letter-spacing:.01em}
.side-p .p-unit{font-size:11px;margin-left:2px;color:var(--ec-price,#c1652f)}
.side-p .p-sep{margin:0 5px;color:var(--ec-line-2,#e0d9cd)}
.side-p .p-day{font-size:11.5px;color:var(--ec-text-3,#86857c)}

/* 「查看全部线路 / 查看同类线路」入口：与「查看全部标签」同一视觉语言 */
.side-more{
  display:flex;align-items:center;gap:8px;
  margin-top:12px;padding:10px 14px;border-radius:10px;
  border:1px solid #e3ddd2;background:linear-gradient(180deg,#fbf8f3,#fff);
  font-family:var(--sans);font-size:13px;font-weight:700;line-height:1;
  color:var(--ec-price,#c1652f);text-decoration:none;
  transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;
}
.side-more i{
  font-style:normal;margin-left:auto;
  font-family:var(--mono,monospace);font-size:9px;letter-spacing:.16em;
  color:#a2988a;font-weight:400;
}
.side-more::after{content:"\2192";font-size:14px;line-height:1;color:var(--ec-price,#c1652f);transition:transform .18s}
.side-more:hover,.side-more:focus-visible{
  border-color:#c1652f;background:linear-gradient(180deg,#fff3ee,#fff);
  box-shadow:0 4px 14px rgba(193,101,47,.14);transform:translateY(-1px);
}
.side-more:hover::after,.side-more:focus-visible::after{transform:translateX(3px)}
.side-more:hover i{color:#c1652f}
.side-more:focus-visible{outline:2px solid var(--ec-price,#c1652f);outline-offset:3px}

/* 兜底：文章没打标签、tags 过滤后一条线路都没匹配到时，
   整块推荐框（含标题与 CTA）隐藏，避免出现「相关产品推荐」空框。 */
.side-box:has(.side-list-p:empty){display:none}

@media (max-width:640px){
  .side-list-p .side-t{font-size:14px}
  .side-list-p .side-t .side-p{font-size:13px}
  .side-p .p-num{font-size:16px}
  .side-more,.side-tags-all{min-height:44px}
}
