/* ===== 图标字体 ===== */
@font-face {
    font-family: "mw-iconfont";
    src: url("assets/fonts/mw-iconfont.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}
.mw-iconfont {
    font-family: "mw-iconfont" !important;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ===== 基础重置 ===== */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: Tahoma, "Microsoft YaHei", "Source Han Sans", "PingFang SC", sans-serif; color: #333; background: #fff; min-width: 1200px; }
a { text-decoration: none; color: inherit; }
ul, ol, li { list-style: none; }
img { border: 0; max-width: 100%; }

/* ===== 顶部导航区 ===== */
.header-area { width: 100%; height: 100vh; position: relative; background: #fff; }
.header-area .nav-bg { position: absolute; left: 0; top: 0; width: 100%; height: 73px; background: #fff; z-index: 8; }
.header-area .logo { position: absolute; left: 0; top: 22px; z-index: 9; width: 152px; height: 42px; }
.header-area .logo img { width: 152px; height: 42px; }
.header-area .nav-btn { position: absolute; z-index: 9; }
.header-area .nav-btn a { display: inline-flex; align-items: center; justify-content: center; color: #000; transition: all .3s ease-in-out; white-space: nowrap; }
.header-area .nav-btn a:hover { color: #ff0000; transform: scale(1.1); }
.header-area .nav-btn .nav-icon { margin-right: 3px; font-size: 16px; }
.header-area .nav-btn span { font-size: 16px; font-family: Tahoma; }
.header-area .nav-btn-1 { left: 181px; top: 30px; width: 89px; height: 30px; }
.header-area .nav-btn-2 { left: 294px; top: 29px; width: 122px; height: 30px; }
.header-area .nav-btn-3 { left: 437px; top: 23px; width: 136px; height: 40px; }
.header-area .nav-btn-4 { left: 588px; top: 24px; width: 122px; height: 38px; }
.header-area .nav-btn-5 { left: 749px; top: 25px; width: 124px; height: 38px; }
.header-area .nav-btn-6 { left: 913px; top: 24px; width: 141px; height: 38px; }
.header-area .nav-btn a { width: 100%; height: 100%; line-height: 1; }

/* Banner 图 */
.header-area .banner-big { position: absolute; left: 0; top: 73px; right: 0; bottom: 0; z-index: 1; overflow: hidden; }
.header-area .banner-big img { width: 100%; height: 100%; object-fit: cover; display: block; }

.header-area .banner-ad { position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); z-index: 6; width: 100%; max-width: 1202px; height: 102px; display: block; clip-path: inset(0 round 12px 12px 0 0); }
.header-area .banner-ad img { width: 100%; height: 102px; display: block; }

/* ===== 主体布局 ===== */
.main-layout { width: 1200px; margin: 0 auto; display: flex; }
.col-left { width: 190px; position: relative; flex: none; }
.col-main { flex: 1; min-width: 0; }

/* 左侧导航 */
.left-nav-group { width: 188px; border: 1px solid #f3f3f3; border-radius: 1px; overflow: hidden; background: #fff; }
.left-nav-group .nav-item { display: flex; align-items: center; height: 50px; padding: 0 10px; border-top: 1px dotted #f3f3f3; color: #000; font-size: 17px; font-family: Tahoma; transition: all .2s; white-space: nowrap; overflow: hidden; }
.left-nav-group .nav-item:first-child { border-top: none; }
.left-nav-group .nav-item:hover, .left-nav-group .nav-item.active { background: rgb(255, 0, 0); color: #fff; }
.left-nav-group .nav-item .nav-icon { margin-right: 8px; font-size: 17px; }
.left-nav-group .nav-item:hover .nav-icon, .left-nav-group .nav-item.active .nav-icon { color: #fff; }

.left-nav-title { margin: 6px 0 8px; font-size: 18px; font-weight: bold; color: #ff0000; font-family: "Source Han Sans", Geneva, sans-serif; }
.left-nav-title::before { content: ''; display: inline-block; width: 6px; height: 18px; background: #ff0033; margin-right: 6px; vertical-align: -3px; }

/* ===== 正文内容 ===== */
.main-content { padding: 0; }
.main-content .code-area { font-size: 15px; color: #333; line-height: 1.6; }
.main-content h1 { text-align: center; font-size: 28px; color: #0d47a1; margin: 0 0 30px; padding-top: 10px; }
.main-content .article-body { max-width: 1200px; margin: 0 auto; padding: 20px 40px; line-height: 1.8; font-size: 18px; }
.main-content .article-body h2 { color: #0d47a1; margin: 25px 0 15px; font-size: 24px; }
.main-content .article-body p { margin: 0 0 15px; text-indent: 2em; }
.main-content .article-body ol { list-style: decimal; padding-left: 2em; }
.main-content .article-body ol li { margin: 6px 0; }
.red { color: #d32f2f; }
.blue { color: #0d47a1; }

/* 招考公告速览 */
.notice-overview { display: flex; font-size: 15px; color: #333; margin-bottom: 20px; line-height: 1.6; border: 1px solid #e0e0e0; border-radius: 4px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.05); }
.notice-overview .label { width: 120px; background-color: #d32f2f; color: #fff; font-weight: bold; display: flex; align-items: center; justify-content: center; }
.notice-overview p { flex: 1; margin: 0; padding: 12px 15px; background-color: #fff; text-indent: 2em; }

/* 历年公告 */
.history-section { margin: 20px 0; font-family: 'Microsoft Yahei', sans-serif; }
.history-section .h-title { background-color: #f5f5f5; padding: 10px 15px; font-weight: bold; color: #333; font-size: 18px; border-radius: 4px 4px 0 0; border: 1px solid #e0e0e0; border-bottom: none; }
.history-section .h-body { padding: 12px 15px; border: 1px solid #e0e0e0; border-radius: 0 0 4px 4px; background-color: #fff; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.history-section .year-btn { display: inline-block; padding: 8px 16px; background-color: #f8f8f8; color: #333; border-radius: 6px; cursor: pointer; text-decoration: none; font-size: 16px; border: 1px solid #e0e0e0; transition: all 0.2s ease; }
.history-section .year-btn:hover { background-color: #d32f2f; color: #fff; border-color: #d32f2f; }

/* 更多公告按钮 */
.more-btn-wrap { margin: 20px 0; font-family: 'Microsoft Yahei', sans-serif; text-align: center; padding: 10px 0; }
.more-btn { display: inline-block; background-color: #d32f2f; color: #fff; padding: 12px 30px; border-radius: 25px; font-size: 20px; text-decoration: none; transition: all 0.2s ease; font-weight: 500; }
.more-btn:hover { background-color: #c22d2d; }

/* ===== 公司信息图标字体 ===== */
@font-face {
    font-family: "company-icon";
    src: url("assets/fonts/company-icon.woff") format("woff");
}
.ltd-icon { font-family: "company-icon" !important; font-size: 16px; font-style: normal; -webkit-font-smoothing: antialiased; }
.gs-dizhi:before { content: "\e6aa"; }
.gs-dianhua:before { content: "\e6b2"; }
.gs-gongsi:before { content: "\e6af"; }

/* ===== 右侧客服浮窗（整体 hover 向左展开，二维码向下展开，对齐原站） ===== */
.cs-float { position: fixed; right: 3px; top: 0; bottom: 0; margin: auto; height: 189px; z-index: 9999; font-family: Tahoma; }
.cs-float .w-cs { overflow: hidden; width: 60px; transition: width .2s ease; }
.cs-float:hover .w-cs { width: 200px; }
.cs-float ul.w-cs-btn { margin: 0; padding: 0; list-style: none; }
.cs-float ul.w-cs-btn li { position: relative; height: 60px; margin-bottom: 3px; border-radius: 4px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #fff; }
.cs-float ul.w-cs-btn li .w-cs-list-warp { position: relative; z-index: 99; background-color: rgb(255, 135, 38); }
.cs-float ul li:hover .w-cs-list-warp { background-color: rgb(255, 157, 77); }
.cs-float ul .w-cs-list.w-hide { display: none; }
.cs-float ul .w-cs-list span.w-cs-icon { display: block; float: left; width: 60px; height: 60px; line-height: 60px; text-align: center; border-radius: 4px; }
.cs-float ul .w-cs-list span.w-cs-icon i { font-size: 34px; color: #fff; font-style: normal; }
.cs-float ul li:hover span.w-cs-icon i { font-size: 34px; color: #fff; }
.cs-float ul.w-cs-btn li .w-cs-icon i.icon-phone, .cs-float ul.w-cs-btn li .w-cs-icon i.icon-qrcode { font-size: 29px; }
.cs-float .w-cs-list .w-cs-text { padding-right: 20px; padding-left: 2px; line-height: 60px; color: #fff; font-size: 14px; font-weight: 400; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.cs-float ul li:hover .w-cs-text { color: #fff; }
/* 二维码项：容器 hover 时高度向下展开露出二维码 */
.cs-float ul li.w-cs-qrcodeBtn { height: 60px; transition: height .2s ease; }
.cs-float:hover ul li.w-cs-qrcodeBtn { height: 240px; }
.cs-float .w-cs-code { padding: 0 20px 20px; }
.cs-float .w-cs-code img { margin: 0 auto; display: block; width: 160px; height: auto; }

/* ===== 页脚 ===== */
.footer-area { width: 100%; min-width: 1200px; height: 252px; position: relative; background: #424242; }
.footer-area .footer-inner { width: 1200px; height: 252px; position: relative; margin: 0 auto; }
.footer-logo { position: absolute; left: 5px; top: 27px; width: 138px; height: 125px; z-index: 3; background: #fff; }
.footer-logo img { width: 138px; height: 125px; }
.footer-copyright { position: absolute; left: 4px; top: 213px; color: #FFFFFF; font-size: 14px; white-space: nowrap; font-family: Tahoma; }

/* 资源广场列 */
.footer-subcol-1 { position: absolute; left: 553px; top: 61px; width: 80px; }
.footer-subcol-1 .col-title { position: absolute; left: 5px; top: 4px; color: #FFFFFF; font-size: 16px; font-weight: bold; font-family: "Source Han Sans", Geneva, sans-serif; white-space: nowrap; }
.footer-subcol-1 .col-links { position: absolute; left: 0; top: 37px; width: 80px; }
.footer-subcol-1 .col-link { display: block; height: 35px; line-height: 35px; color: #F8F8F8; font-size: 14px; font-family: Tahoma; text-align: left; padding: 0 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s; }
.footer-subcol-1 .col-link:hover { color: #FFFFFF; }

/* 关于我们列 */
.footer-subcol-2 { position: absolute; left: 725px; top: 61px; width: 80px; }
.footer-subcol-2 .col-title { position: absolute; left: 2px; top: 2px; color: #FFFFFF; font-size: 16px; font-weight: bold; font-family: "Source Han Sans", Geneva, sans-serif; white-space: nowrap; }
.footer-subcol-2 .col-links { position: absolute; left: 0; top: 38px; width: 80px; }
.footer-subcol-2 .col-link { display: block; height: 46px; line-height: 46px; color: #F8F8F8; font-size: 14px; font-family: Tahoma; text-align: left; padding: 0 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s; }
.footer-subcol-2 .col-link:hover { color: #FFFFFF; }

/* 联系我们列 */
.footer-subcol-3 { position: absolute; left: 867px; top: 69px; width: 300px; height: 166px; }
.footer-subcol-3 .col-title { position: absolute; left: 5px; top: -6px; color: #FFFFFF; font-size: 16px; font-weight: bold; font-family: "Source Han Sans", Geneva, sans-serif; white-space: nowrap; }
.footer-subcol-3 .col-contact { position: absolute; left: 8px; top: 57px; width: 300px; }
.footer-subcol-3 .contact-item { display: flex; align-items: flex-start; margin-bottom: 10px; color: #F8F8F8; font-size: 14px; font-family: Tahoma; line-height: 24px; }
.footer-subcol-3 .contact-item a { color: #F8F8F8; text-decoration: none; }
.footer-subcol-3 .contact-icon { display: inline-block; width: 18px; margin-right: 5px; color: #FFFFFF; font-size: 18px; vertical-align: top; }
.footer-subcol-3 .contact-text { flex: 1; word-wrap: break-word; }

/* 底部备案 */
.icp-bottom { text-align: left; width: 100%; min-width: 1200px; padding: 12px 0 13px 0; font-size: 12px; background-color: #424242; color: #FFFFFF; font-family: Tahoma; }
.icp-bottom-inner { width: 1200px; margin: 0 auto; padding-left: 4px; }
.icp-bottom a { color: #FFFFFF; }
.icp-bottom a:hover { color: #fff; }
.icp-bottom .icp-divider { display: inline-block; margin: 0 10px; width: 1px; height: 12px; background: #FFFFFF; vertical-align: middle; }

/* ===== 移动端菜单按钮 ===== */
.mobile-menu-btn { display: none; position: absolute; right: 16px; top: 18px; z-index: 10; cursor: pointer; padding: 5px; }
.mobile-menu-btn span { display: block; width: 24px; height: 3px; background: #333; margin: 5px 0; transition: all 0.3s; }
.mobile-menu { display: none; position: fixed; top: 60px; left: 0; width: 100%; background: #fff; z-index: 99; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
.mobile-menu a { display: block; padding: 15px 20px; color: #333; border-bottom: 1px solid #eee; font-size: 16px; }
.mobile-menu a i { margin-right: 10px; color: #ff0000; }
.mobile-menu a:hover { background: #f5f5f5; }

/* ===== 响应式适配 - 移动端 ===== */
@media (max-width: 768px) {
    /* 基础调整 */
    body { min-width: auto; }
    
    /* 顶部导航区 */
    .header-area { height: 300px; }
    .header-area .nav-bg { height: 60px; }
    .header-area .logo { left: 16px; top: 12px; width: 120px; height: 33px; }
    .header-area .logo img { width: 120px; height: 33px; }
    
    /* 导航按钮 - 隐藏，显示移动端菜单 */
    .header-area .nav-btn { display: none; }
    .mobile-menu-btn { display: block; }
    
    /* Banner广告 */
    .header-area .banner-ad { height: 60px; }
    .header-area .banner-ad img { height: 60px; }
    
    /* 主布局 */
    .main-layout { width: 100%; flex-direction: column; padding: 0 16px; }
    .col-left { display: none; }
    .col-main { width: 100%; }
    
    /* 文章主体 */
    .main-content .article-body { max-width: 100%; padding: 16px; font-size: 16px; }
    
    /* 开班合影 */
    .photo-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    
    /* 页脚 */
    .footer-area { min-width: auto; height: auto; padding: 30px 16px; }
    .footer-area .footer-inner { width: 100%; height: auto; position: relative; }
    .footer-logo { left: 50%; transform: translateX(-50%); top: 0; }
    .footer-copyright { left: 0; top: auto; position: relative; text-align: center; margin-top: 140px; font-size: 12px; }
    
    /* 页脚三列 - 垂直堆叠 */
    .footer-subcol-1, .footer-subcol-2, .footer-subcol-3 { 
        position: relative; 
        left: auto; 
        top: auto; 
        width: 100%; 
        margin-bottom: 20px;
        text-align: center;
    }
    .footer-subcol-1 .col-links, .footer-subcol-2 .col-links { 
        position: relative; 
        top: auto; 
        display: flex; 
        justify-content: center; 
        gap: 15px;
    }
    .footer-subcol-3 .col-contact { 
        position: relative; 
        top: auto; 
        left: auto;
    }
    
    /* 备案 */
    .icp-bottom { min-width: auto; }
    .icp-bottom-inner { width: 100%; padding: 0 16px; text-align: center; }
    
    /* 悬浮客服 - 调整位置 */
    .cs-float { right: 10px; bottom: 100px; }
    
    /* 弹窗 - 适配 */
    .hs-dialog { width: 90%; margin-left: -45%; margin-top: -200px; height: 400px; }
    .hs-dialog-content { width: 100%; height: 100%; }
    .dlg-logo { left: 50%; transform: translateX(-50%); width: 200px; }
    .dlg-title { width: 100%; left: 0; font-size: 18px; padding: 0 20px; }
    .dlg-note { width: 100%; left: 0; font-size: 16px; }
}

/* 小屏幕手机 */
@media (max-width: 480px) {
    .photo-grid { grid-template-columns: 1fr; }
    .header-area { height: 250px; }
    .dlg-logo { width: 160px; }
}
