/* 高考高招数字服务大厅专属样式 */
body {
    background-color: #064e9a; /* Bottom deep blue area */
    margin: 0;
    font-family: "Microsoft YaHei", Arial, sans-serif;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* 顶部大横幅区 */
.hall-hero {
    height: 180px;
    background: linear-gradient(180deg, #74b9ff 0%, #e0f2fe 70%, #ffffff 100%);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hall-hero-content {
    width: 1200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.hall-hero-logo {
    display: flex;
    align-items: center;
    gap: 15px;
}
.logo-seal {
    width: 80px;
    height: 80px;
    background: radial-gradient(circle, #fff 0%, #ffeaea 100%);
    border: 3px solid #dc2626;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #dc2626;
    font-size: 32px;
    font-weight: bold;
    font-family: "KaiTi", "楷体", serif;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.logo-title h1 {
    margin: 0;
    color: #b91c1c;
    font-size: 36px;
    font-weight: bold;
    letter-spacing: 2px;
}
.logo-title p {
    margin: 5px 0 0;
    color: #dc2626;
    font-size: 14px;
    letter-spacing: 1px;
}
.hero-slogan {
    font-family: "KaiTi", "楷体", serif;
    font-size: 48px;
    color: #fff;
    text-shadow: 2px 2px 4px rgba(0, 100, 200, 0.4), -1px -1px 0 #0284c7, 1px -1px 0 #0284c7, -1px 1px 0 #0284c7, 1px 1px 0 #0284c7;
    letter-spacing: 5px;
    margin-right: 50px;
    transform: skewX(-10deg);
}

/* 导航栏 */
.hall-nav {
    background-color: #0265ba;
    height: 50px;
}
.hall-nav-inner {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    height: 100%;
}
.hall-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    height: 100%;
}
.hall-nav li a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 25px;
    height: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    transition: background 0.2s;
}
.hall-nav li a:hover {
    background-color: #034888;
}
.hall-nav li.active a {
    background-color: #f59e0b;
}

.hall-subnav {
    background-color: #eef2f6;
    height: 40px;
    border-bottom: 1px solid #d1d5db;
}
.hall-subnav-inner {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    height: 100%;
    font-size: 14px;
}
.hall-subnav a {
    color: #0284c7;
    text-decoration: none;
    margin: 0 15px;
}
.hall-subnav a:hover {
    text-decoration: underline;
}

.breadcrumb {
    width: 1200px;
    margin: 15px auto;
    text-align: right;
    font-size: 13px;
    color: #64748b;
}
.breadcrumb a {
    color: #64748b;
    text-decoration: none;
}

/* 主体容器 */
.hall-main-container {
    width: 1200px;
    margin: 0 auto 50px;
    background: #fff;
    border: 1px solid #bae6fd;
    padding: 40px 30px;
    box-sizing: border-box;
    position: relative;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* 蓝色丝带标题 */
.ribbon-title {
    background-color: #3b82f6;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding: 12px 60px;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    clip-path: polygon(5% 0%, 95% 0%, 100% 50%, 95% 100%, 5% 100%, 0% 50%);
}

/* 9宫格服务区 */
.service-badges {
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px 20px;
    padding-bottom: 50px;
    position: relative;
    border-bottom: 1px solid #e2e8f0;
}
/* 水印背景 */
.service-badges::after {
    content: '';
    position: absolute;
    right: -20px;
    bottom: -20px;
    width: 250px;
    height: 250px;
    background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"><circle cx="100" cy="100" r="80" fill="%23f1f5f9"/><circle cx="100" cy="70" r="30" fill="%23cbd5e1"/><path d="M40 160 C40 120, 160 120, 160 160" fill="%23cbd5e1"/></svg>') no-repeat bottom right;
    background-size: contain;
    opacity: 0.5;
    z-index: 0;
    pointer-events: none;
}

.service-badge-item {
    width: 190px;
    height: 180px;
    border: 1px solid #e2e8f0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    color: #334155;
    font-size: 14px;
    background: #fff;
    transition: all 0.3s;
    position: relative;
    z-index: 1;
    padding: 10px;
    box-sizing: border-box;
}
.service-badge-item:hover {
    box-shadow: 0 10px 15px rgba(0,0,0,0.05);
    border-color: #bae6fd;
    transform: translateY(-5px);
}
.badge-icon-wrap {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
.bg-orange { background: linear-gradient(135deg, #fb923c, #f59e0b); }
.bg-green { background: linear-gradient(135deg, #34d399, #10b981); }
.bg-red { background: linear-gradient(135deg, #f87171, #ef4444); }

.badge-icon-wrap svg {
    width: 40px;
    height: 40px;
    color: white;
}

/* 底部两栏公告 */
.hall-panels {
    display: flex;
    gap: 30px;
    margin-top: 30px;
}
.panel {
    flex: 1;
    border: 1px solid #bae6fd;
    background: #f8fafc;
}
.panel-header {
    height: 45px;
    line-height: 45px;
    padding: 0 15px;
    border-bottom: 1px solid #bae6fd;
    font-weight: bold;
    color: #0369a1;
    display: flex;
    justify-content: space-between;
}
.panel-header::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 16px;
    background: #0284c7;
    vertical-align: middle;
    margin-right: 8px;
    margin-top: -2px;
}
.panel-list {
    list-style: none;
    padding: 15px;
    margin: 0;
}
.panel-list li {
    padding: 10px 0;
    border-bottom: 1px dashed #cbd5e1;
    display: flex;
    justify-content: space-between;
}
.panel-list li:last-child {
    border-bottom: none;
}
.panel-list a {
    color: #334155;
    text-decoration: none;
    font-size: 14px;
    display: flex;
    align-items: center;
}
.panel-list a::before {
    content: '▶';
    color: #0284c7;
    margin-right: 8px;
    font-size: 12px;
}
.panel-list a:hover {
    color: #0284c7;
}
.date {
    color: #94a3b8;
    font-size: 13px;
}
.panel-more {
    font-size: 12px;
    color: #0284c7;
    text-decoration: none;
    font-weight: normal;
}
