:root{--blue:#8a5a2f;--blue-dark:#6f4522;--blue-deep:#4f3117;--orange:#c8935a;--bg:#faf7f2;--text:#2f2a26;--muted:#8b8178;--border:#e5ded3}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:var(--text);font-size:15px;line-height:1.8;background:#fff}
img{max-width:100%}
a{color:var(--blue);text-decoration:none}
.w1200{max-width:1200px;margin:0 auto;padding:0 16px}
/* ===== top bar ===== */
.topbar{background:var(--bg);border-bottom:1px solid #e8e8e8;font-size:13px;color:#888}
.topbar-in{display:flex;justify-content:space-between;align-items:center;min-height:38px;flex-wrap:wrap;gap:2px}
.topbar a{color:#888;margin-left:14px}
.topbar a:hover{color:var(--blue)}
/* ===== header ===== */
.site-header{background:#fff}
.header-in{display:flex;align-items:center;justify-content:space-between;padding:16px 16px;gap:12px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:52px;width:auto}
.brand-name{font-weight:700;color:var(--blue);font-size:27px;line-height:1.25;letter-spacing:1px}
.brand-sub{display:block;font-size:12px;color:var(--muted);font-weight:400;letter-spacing:2px}
.header-phone{text-align:right}
.hp-t{margin:0;font-size:13px;color:#888}
.hp-n{margin:0;font-size:28px;font-weight:700;color:var(--orange);line-height:1.3}
.hp-n a{color:var(--orange)}
.hp-s{margin:0;font-size:12px;color:#aaa}
/* ===== nav ===== */
.main-nav{background:var(--blue)}
.nav-in{list-style:none;margin:0 auto;display:flex;flex-wrap:wrap}
.nav-in li{position:relative}
.nav-in li a{display:block;padding:0 26px;line-height:50px;color:#fff;font-size:16px}
.nav-in li a:hover,.nav-in li a.active{background:var(--blue-dark)}
.nav-in li.has-dd > a::after{content:"";display:inline-block;margin-left:6px;border:4px solid transparent;border-top-color:#fff;vertical-align:2px}
.dd{display:none;position:absolute;top:50px;left:0;min-width:230px;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.15);z-index:1000}
.nav-in li.has-dd:hover .dd{display:block}
.nav-in .dd a{display:block;padding:0 16px;line-height:42px;color:#444;font-size:14px;border-bottom:1px solid #f2f2f2;white-space:nowrap;background:#fff}
.nav-in .dd a:hover{color:var(--blue);background:#f5faff}
/* ===== banner（首页） ===== */
.banner{height:440px;background:#3d2712 url(/images/banner-home.webp) center/cover no-repeat;position:relative}
.banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,36,15,.92) 0%,rgba(58,36,15,.6) 45%,rgba(58,36,15,.05) 80%)}
.banner-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:96px 16px 0;color:#fff}
.banner-in h1{font-size:34px;line-height:1.5;margin:0 0 16px;max-width:640px}
.banner-in p{font-size:16px;color:#f2e5d1;margin:0 0 26px;max-width:560px}
.btn{display:inline-block;padding:12px 28px;border-radius:4px;font-size:16px;font-weight:600;min-height:44px}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:#ff7519}
.btn-ghost{border:1.5px solid rgba(255,255,255,.8);color:#fff}
/* ===== stats ===== */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1200px;margin:-40px auto 0;padding:0 16px;position:relative;z-index:2}
.stat{background:#fff;border:1px solid #ececec;border-top:3px solid var(--blue);padding:18px 10px;text-align:center;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.stat b{display:block;font-size:26px;color:var(--blue)}
.stat span{font-size:13px;color:var(--muted)}
/* ===== 内页条 ===== */
.crumb{font-size:13px;color:var(--muted);background:var(--bg);border-bottom:1px solid #e8e8e8;padding:11px 0}
.crumb-in a{color:var(--muted)}
.crumb-in a:hover{color:var(--blue)}
/* ===== sections ===== */
section{padding:46px 0}
section.alt{background:var(--bg)}
.sec-title{display:inline-block;font-size:22px;margin:0 0 6px;padding-bottom:10px;border-bottom:3px solid var(--blue);line-height:1.4}
.sec-lead{margin:0 0 22px;color:var(--muted);font-size:13px}
h3{font-size:17px;margin:22px 0 8px;color:#222}
/* ===== cards ===== */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{border:1px solid #ececec;background:#fff;padding:20px 18px;transition:box-shadow .3s}
.card:hover{box-shadow:0 6px 18px rgba(0,0,0,.1)}
.card h3{margin:0 0 8px;font-size:17px;color:var(--blue-deep)}
.card p{margin:0;font-size:14px;color:#666}
.card .tag{display:inline-block;font-size:12px;color:#fff;background:var(--blue);border-radius:2px;padding:1px 10px;margin-bottom:10px}
/* ===== 图片卡片（培训项目） ===== */
.imgcards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.imgcard{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.imgcard .pic{height:200px;overflow:hidden;display:block}
.imgcard .pic img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.imgcard:hover .pic img{transform:scale(1.06)}
.imgcard h3{margin:0;padding:13px 10px 2px;font-size:17px;text-align:center}
.imgcard h3 a{color:#333}
.imgcard:hover h3 a{color:var(--blue)}
.imgcard p{margin:0;padding:4px 16px 16px;font-size:13px;color:#888;text-align:center}
.imgcard .price{color:var(--orange);font-weight:700}
/* ===== tables ===== */
.table-wrap{overflow-x:auto;margin:14px 0;background:#fff}
table{width:100%;border-collapse:collapse;background:#fff;font-size:14.5px}
th,td{border:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top}
th{background:#f3e8d5;color:#4f3117;font-weight:600;white-space:nowrap}
tbody tr:nth-child(even){background:#fbf7f0}
table caption{caption-side:top;text-align:left;font-size:13px;color:var(--muted);padding-bottom:6px}
/* ===== lists ===== */
ol.steps{counter-reset:s;list-style:none;margin:14px 0;padding:0}
ol.steps li{counter-increment:s;position:relative;padding:12px 0 12px 46px;border-bottom:1px dashed var(--border)}
ol.steps li::before{content:counter(s);position:absolute;left:0;top:12px;width:28px;height:28px;line-height:28px;text-align:center;background:var(--blue);color:#fff;border-radius:50%;font-weight:700;font-size:14px}
ul.plain{margin:8px 0;padding-left:20px}
ul.chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:10px 0}
ul.chips li{background:#fff;border:1px solid #cfe6ff;color:var(--blue-deep);border-radius:3px;padding:5px 16px;font-size:14px}
section.alt ul.chips li{background:#fff}
/* ===== news list ===== */
.news-cols{display:grid;grid-template-columns:1fr 1fr;gap:44px}
ul.news-list{list-style:none;margin:14px 0 0;padding:0}
ul.news-list li{border-bottom:1px dashed var(--border)}
ul.news-list li a{position:relative;display:flex;justify-content:space-between;gap:12px;padding-left:16px;line-height:44px;color:#555;font-size:14.5px}
ul.news-list li a::before{content:"";position:absolute;left:0;top:19px;width:6px;height:6px;background:var(--blue);border-radius:50%}
ul.news-list li a:hover{color:var(--blue)}
ul.news-list .date{color:var(--muted);font-size:13px;flex-shrink:0}
/* ===== notice ===== */
.note{background:#fff8ec;border:1px solid #f3ddb0;padding:12px 16px;margin:14px 0;font-size:14px}
.note.blue{background:#eef6ff;border-color:#c9e3fb}
.note b{color:#8a5a00}
.note.blue b{color:var(--blue-deep)}
/* ===== faq ===== */
.faq-item{border-bottom:1px solid var(--border);padding:2px 0}
.faq-q{font-size:16px;font-weight:600;margin:12px 0 6px;color:#4f3117;padding-left:10px;border-left:3px solid var(--blue);line-height:1.5}
.faq-a{margin:0 0 12px;font-size:14.5px;color:#555}
.faq-a p{margin:6px 0}
/* ===== cta ===== */
.cta-box{background:linear-gradient(135deg,var(--blue-deep),var(--blue));color:#fff;padding:34px 24px;text-align:center;margin:10px 0 46px}
.cta-box h2{margin:0 0 8px;font-size:23px;color:#fff}
.cta-box p{margin:0 0 14px;color:#dcebfa}
.cta-box .phone-big{font-size:27px;font-weight:700;letter-spacing:1px;display:block;margin-bottom:16px;color:#fff}
/* ===== footer ===== */
.site-footer{background:#1a1d21;color:#9aa3ab;font-size:14px;margin-top:24px}
.ft-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr 1.1fr;gap:34px;padding:44px 16px 38px}
.ft-grid h4{color:#fff;font-size:16px;margin:0 0 14px;font-weight:600}
.ft-grid ul,.ft-grid dl{list-style:none;margin:0;padding:0}
.ft-grid li,.ft-grid dd{margin:7px 0;line-height:1.7}
.ft-grid a{color:#9aa3ab}
.ft-grid a:hover{color:#fff}
.ft-tel{font-size:22px;font-weight:700;color:#fff;display:block;margin:6px 0}
.ft-contact p{margin:6px 0}
.ft-qr .qrcode{width:118px;height:118px;background:#fff;color:#555;display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px;line-height:1.6;border-radius:3px;padding:8px}
.ft-qr .qcap{font-size:12px;color:#777;margin-top:8px}
.copyright{background:#27292B;color:#777;font-size:12px;padding:14px 0}
.copyright a{color:#777}
.copyright p{margin:4px 0}
/* ===== responsive ===== */
@media (max-width:900px){
 .cards,.imgcards{grid-template-columns:repeat(2,1fr)}
 .news-cols{grid-template-columns:1fr}
 .ft-grid{grid-template-columns:1fr 1fr}
 .stats{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media (max-width:640px){
 .banner{height:340px}
 .banner-in{padding-top:64px}
 .banner-in h1{font-size:22px}
 .hp-n{font-size:22px}
 .brand-name{font-size:21px}
 .nav-in li a{padding:0 13px;font-size:14.5px}
 .cards,.imgcards{grid-template-columns:1fr 1fr;gap:12px}
 .imgcard .pic{height:120px}
 .imgcard h3{font-size:14px}
 .imgcard p{display:none}
 body{font-size:14.5px}
 th,td{padding:8px 9px;font-size:13.5px}
 .ft-grid{grid-template-columns:1fr;gap:24px}
 section{padding:34px 0}
}
