/* ============================================================
   井冈山包车网 · 八角楼 / 老区木构立面 设计体系
   风格锚点：土墙纸底 + 木梁墨字 + 八角窗棂记号 + 红星徽记（极克制）
   反 AI 套版：木构框线、八角形编号、竖向小签、左对齐、无阴影
   ============================================================ */
:root{
  --paper:#f1e9d8;          /* 土墙旧纸暖底 */
  --paper-2:#e7dcc3;
  --card:#f8f1e0;
  --ink:#2b2317;            /* 深墨棕 */
  --muted:#786e58;
  --wood:#7a5326;           /* 老木梁 */
  --wood-deep:#55381a;
  --red:#a0322a;            /* 革命红（徽记） */
  --red-ink:#7e241d;
  --rule:#cabfa3;           /* 细线 */
  --serif:'Noto Serif SC','Songti SC',STSong,'SimSun',serif;
  --sans:-apple-system,'PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.78;-webkit-font-smoothing:antialiased}
a{color:var(--red-ink);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

/* ---------- 八角窗棂记号（编号徽记） ---------- */
.octagon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;
  clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);
  background:var(--wood);color:#f4ead2;font-family:var(--serif);font-weight:900;font-size:15px;letter-spacing:.06em}
.disc-cell .octagon{width:40px;height:40px;font-size:13px;margin-top:2px}

/* ---------- 页头（木构双梁） ---------- */
.site-header{border-bottom:1px solid var(--ink);background:linear-gradient(var(--card),var(--card)) padding-box}
.site-header::after{content:"";display:block;height:4px;background:repeating-linear-gradient(90deg,var(--wood) 0 26px,var(--wood-deep) 26px 30px)}
.header-inner{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.brand{font-family:var(--serif);font-weight:900;font-size:24px;letter-spacing:.06em;line-height:1.25}
.brand small{display:block;font-family:var(--sans);font-weight:600;font-size:10.5px;letter-spacing:.4em;color:var(--red);margin-top:2px}
.nav{display:flex;gap:2px;flex-wrap:wrap;margin-left:auto}
.nav a{position:relative;padding:8px 13px;font-size:15px;color:var(--ink)}
.nav a:hover{color:var(--red-ink);text-decoration:none}
.nav a[aria-current="page"]{color:var(--red-ink);font-weight:800}
.nav a[aria-current="page"]::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:2px;background:var(--red)}
.header-phone{margin-left:6px;position:relative;padding-left:26px}
.header-phone::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:17px;height:17px;
  clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);
  background:var(--red)}
.header-phone a{font-family:var(--serif);font-weight:900;font-size:19px;color:var(--red-ink);letter-spacing:.03em}
.header-phone a:hover{text-decoration:none;border-bottom:2px solid var(--red)}

/* ---------- Hero ---------- */
.hero{padding:48px 0 26px}
.hero-inner{display:grid;grid-template-columns:1.04fr .96fr;gap:46px;align-items:center}
.hero-kicker{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.3em;color:var(--red-ink);font-weight:800;margin-bottom:16px}
.hero-kicker::before{content:"";width:34px;height:2px;background:var(--red)}
.hero-text h1{font-family:var(--serif);font-weight:900;font-size:clamp(32px,4.4vw,52px);line-height:1.24;letter-spacing:.01em}
.hero-sub{margin-top:14px;font-size:18px;font-weight:700;color:var(--wood-deep)}
.hero-para{margin-top:12px;color:#5a513b;max-width:56ch}
.hero-fig{position:relative;border:1px solid var(--ink);background:var(--wood);padding:9px}
.hero-fig img{width:100%;aspect-ratio:1/1.22;object-fit:cover;border:1px solid #3a2a15}
.hero-fig::after{content:"";position:absolute;right:-1px;bottom:-1px;width:0;height:0;border-style:solid;border-width:0 0 46px 46px;border-color:transparent transparent var(--card) transparent;z-index:1}
.hero-fig .fig-plaque{position:absolute;left:9px;bottom:9px;background:var(--card);border:1px solid var(--wood-deep);
  font-family:var(--serif);font-weight:900;font-size:13px;letter-spacing:.34em;color:var(--red-ink);padding:5px 14px;z-index:2}
.hero-cta{margin-top:26px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn-seal{display:inline-block;background:var(--red);color:#f7ecda;border:0;font-family:var(--serif);font-weight:700;font-size:17px;letter-spacing:.14em;padding:13px 30px;cursor:pointer;border-radius:1px}
a.btn-seal{color:#f7ecda}
a.btn-seal:hover{background:var(--red-ink);text-decoration:none}
.btn-ghost{display:inline-block;border:1px solid var(--ink);color:var(--ink);font-weight:600;font-size:15px;padding:12px 24px;background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--paper);text-decoration:none}

/* ---------- 章节 ---------- */
.section-block{padding:30px 0 54px}
.sec-head{display:flex;align-items:baseline;gap:16px;margin-bottom:6px}
.sec-no{font-size:12.5px;font-weight:800;letter-spacing:.3em;color:var(--red-ink);white-space:nowrap}
.sec-title{font-family:var(--serif);font-weight:900;font-size:clamp(24px,3vw,34px)}
.sec-note{color:var(--muted);font-size:14.5px}
.section-head{margin:46px 0 14px;padding-top:16px;border-top:1px solid var(--wood)}
.section-head .k{display:block;font-size:13px;letter-spacing:.26em;color:var(--wood-deep);font-weight:800;margin-bottom:4px}

/* ---------- 木档卡（路线/车型条目） ---------- */
.ledger{border:1px solid var(--ink);background:var(--card);margin-top:22px;border-top:5px solid var(--wood)}
.ledger-head{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--rule);background:var(--paper-2)}
.ledger-head h3{font-family:var(--serif);font-weight:900;font-size:21px}
.ledger-tag{margin-left:auto;font-size:12.5px;color:var(--red-ink);font-weight:800;letter-spacing:.18em;border-bottom:2px solid var(--red);padding:0 2px 2px}
.ledger-body{display:grid;grid-template-columns:440px 1fr;gap:0}
.ledger-body img{width:100%;height:100%;min-height:310px;object-fit:cover;border-right:1px solid var(--ink)}
.ledger-info{padding:20px 26px}
.ledger-info p{color:#514a37}
.ledger-info ul{list-style:none;margin-top:12px}
.ledger-info li{display:flex;gap:10px;padding:8px 0;border-bottom:1px dashed var(--rule);font-size:15px}
.ledger-info li b{color:var(--red-ink);font-weight:800;min-width:88px;flex:none}

/* ---------- 三季横排 ---------- */
.disc-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--ink);margin-top:8px;background:var(--card)}
.disc-cell{padding:22px 18px;border-right:1px solid var(--rule);display:flex;gap:14px;align-items:flex-start}
.disc-cell:last-child{border-right:0}
.disc-cell h4{font-family:var(--serif);font-weight:900;font-size:18px;margin-bottom:4px}
.disc-cell p{font-size:14px;color:#5c553f}

/* ---------- prose ---------- */
.prose h3{font-family:var(--serif);font-weight:900;font-size:21px;margin:28px 0 8px;display:flex;align-items:baseline;gap:12px}
.prose h3 .h-no{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 5px;background:var(--red);color:#f7ecda;font-size:13px;font-weight:900;flex:none;clip-path:polygon(24% 0,76% 0,100% 24%,100% 76%,76% 100%,24% 100%,0 76%,0 24%)}
.prose p{margin:8px 0;color:#514a37}
.prose ul{margin:8px 0 8px 22px;color:#514a37}
.prose table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14.5px}
.prose th,.prose td{border:1px solid var(--rule);padding:9px 12px;text-align:left}
.prose th{background:var(--paper-2);font-weight:800}
.warn{border:1px solid var(--wood);border-left:6px solid var(--red);background:var(--paper-2);padding:12px 16px;margin:18px 0;font-size:14.5px;color:#514a37}

/* ---------- 表格 ---------- */
.data-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:15px}
.data-table th,.data-table td{border:1px solid var(--rule);padding:10px 14px;text-align:left}
.data-table th{background:var(--paper-2);font-weight:800;font-size:13.5px;letter-spacing:.08em}
.data-table td.fleet-no{font-family:var(--serif);font-weight:800;color:var(--red-ink)}
.see-link{font-weight:800;white-space:nowrap}

/* ---------- 司机 ---------- */
.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.roster-card{border:1px solid var(--ink);background:var(--card);padding-bottom:16px;border-bottom:4px solid var(--wood)}
.roster-card img{width:100%;aspect-ratio:4/4.6;object-fit:cover;border-bottom:1px solid var(--ink)}
.roster-name{display:flex;align-items:baseline;gap:10px;padding:14px 18px 0}
.roster-name h4{font-family:var(--serif);font-weight:900;font-size:21px}
.roster-name span{font-size:12px;color:var(--red-ink);font-weight:800;letter-spacing:.14em;border:1px solid var(--red);padding:1px 8px}
.roster-role{padding:6px 18px 0;font-size:13.5px;color:var(--muted)}
.roster-note{padding:8px 18px 12px;font-size:14.5px;color:#554e3a}
.roster-tel{display:block;margin:0 18px;text-align:center;background:var(--red);color:#f7ecda;font-family:var(--serif);font-weight:700;font-size:17px;padding:9px;letter-spacing:.08em}
.roster-tel:hover{background:var(--red-ink);color:#fff;text-decoration:none}

/* ---------- 表单 ---------- */
.form-paper{border:1px solid var(--ink);background:var(--card);padding:26px;margin-top:20px;border-top:5px solid var(--wood)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
.form-field label{display:block;font-size:13.5px;font-weight:800;margin-bottom:5px}
.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #b3a98c;background:#fdf8ec;padding:10px 12px;font-family:var(--sans);font-size:15px;color:var(--ink)}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--red);outline-offset:1px}
.form-field.full{grid-column:1/-1}
.form-foot{margin-top:14px;font-size:13.5px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.kv-table{border:1px solid var(--rule);background:var(--card)}
.kv-row{display:grid;grid-template-columns:118px 1fr;border-bottom:1px solid var(--rule)}
.kv-row:last-child{border-bottom:0}
.kv-row .k{background:var(--paper-2);padding:10px 14px;font-weight:800;font-size:14px;border-right:1px solid var(--rule)}
.kv-row .v{padding:10px 14px;font-size:14.5px;color:#514a37}

/* ---------- 页脚 ---------- */
.site-footer{border-top:1px solid var(--ink);background:var(--paper-2);margin-top:16px}
.site-footer::before{content:"";display:block;height:4px;background:repeating-linear-gradient(90deg,var(--wood) 0 26px,var(--wood-deep) 26px 30px)}
.footer-inner{max-width:1120px;margin:0 auto;padding:30px 24px 44px}
.f-brand{font-family:var(--serif);font-weight:900;font-size:20px;margin-bottom:8px}
.site-footer p{font-size:13.5px;color:#5c553f;max-width:92ch}

/* ---------- 404 ---------- */
.err-wrap{max-width:720px;margin:70px auto;padding:0 24px}
.err-code{font-family:var(--serif);font-weight:900;font-size:92px;line-height:1;color:var(--red)}
.err-sub{margin-top:14px;font-size:20px;font-weight:800}
.err-back{display:inline-block;margin-top:18px;border:1px solid var(--ink);color:var(--ink);padding:10px 22px;font-weight:700}
.err-back:hover{background:var(--ink);color:var(--paper);text-decoration:none}

/* ---------- 响应式 ---------- */
@media (max-width:960px){
  .hero-inner{grid-template-columns:1fr;gap:26px}
  .ledger-body{grid-template-columns:1fr}
  .ledger-body img{border-right:0;border-bottom:1px solid var(--ink);min-height:auto;aspect-ratio:16/10}
  .roster-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .disc-row{grid-template-columns:1fr}
  .disc-cell{border-right:0;border-bottom:1px solid var(--rule)}
  .disc-cell:last-child{border-bottom:0}
}
@media (max-width:640px){
  .roster-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .nav{margin-left:0;width:100%}
  .header-phone{margin-left:0}
  .header-inner{gap:10px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
