/* ========================================
   福建理工大学继续教育学院产教融合教育
   Mobile端通用样式 - 750px宽度
   ======================================== */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;
  background: #f9f9f9;
  max-width: 750px;
  margin: 0 auto;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-bottom: env(safe-area-inset-bottom);
}

/* 固定宽度容器 */
.container {
  max-width: 750px;
  margin: 0 auto;
  position: relative;
}

/* ========================================
   Header 顶部导航
   ======================================== */
.header {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 750px;
  height: 12.267vw;
  background: #495d84;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2.667vw;
  z-index: 101;
}

.header-logo {
  width: 27.867vw;
  height: 6.667vw;
  background: url('../images/logo.png') no-repeat center;
  background-size: contain;
  cursor: pointer;
}

.header-title {
  color: #fff;
  font-size: 2.667vw;
  flex: 1;
  padding-left: 2.667vw;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.header-menu {
  width: 4.4vw;
  height: 3.867vw;
  background: url('../images/menu-icon.png') no-repeat center;
  background-size: contain;
  cursor: pointer;
  position: relative;
}

/* ========================================
   Dropdown Menu 下拉菜单
   ======================================== */
.dropdown-overlay {
  position: fixed;
  top: 12.267vw;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 750px;
  height: 100%;
  background: rgba(0, 0, 0, 0.35);
  z-index: 99;
  display: none;
}

.dropdown-overlay.show {
  display: block;
}

.dropdown-panel {
  position: fixed;
  top: 12.267vw;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 750px;
  background: #fff;
  z-index: 100;
  display: none;
}

.dropdown-panel.show {
  display: block;
}

.dropdown-menu-item {
  height: 7.2vw;
  line-height: 7.2vw;
  padding: 0 2.667vw;
  font-size: 2.933vw;
  color: #333;
  background: #f3f3f3;
  border-bottom: 1px solid #eee;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.dropdown-menu-item:last-child {
  border-bottom: none;
}

.dropdown-menu-item.expandable {
  justify-content: space-between;
}

.dropdown-submenu {
  display: none;
  background: #fff;
}

.dropdown-submenu.show {
  display: block;
}

.dropdown-submenu-item {
  height: 7.2vw;
  line-height: 7.2vw;
  padding: 0 2.667vw 0 5.333vw;
  font-size: 2.933vw;
  color: #666;
  border-bottom: 1px solid #f0f0f0;
  cursor: pointer;
}

.dropdown-submenu-item:last-child {
  border-bottom: none;
}

.dropdown-expand-icon {
  width: 3.2vw;
  height: 3.2vw;
  background: url('../images/expand-icon.png') no-repeat center;
  background-size: contain;
}

.dropdown-menu-item.expandable::after {
  content: '';
  width: 3.2vw;
  height: 3.2vw;
  background: url('../images/expand-icon.png') no-repeat center;
  background-size: contain;
  transition: transform 0.2s;
}

.dropdown-menu-item.expandable.expanded::after {
  transform: rotate(180deg);
}

/* ========================================
   Main Content 主内容区域
   ======================================== */
.main-content {
  padding-top: 12.267vw;
  padding-bottom: 13.067vw;
  min-height: 100vh;
}

.main-content.no-padding-bottom {
  padding-bottom: 0;
}

/* ========================================
   Banner 轮播区域
   ======================================== */
.banner-wrapper {
  position: relative;
  width: 100%;
  max-width: 750px;
  height: 65.6vw;
  overflow: hidden;
}

.banner-slides {
  display: flex;
  width: 400%;
  height: 65.6vw;
  transition: transform 0.3s ease-in-out;
}

.banner-slide {
  width: 25%;
  height: 65.6vw;
  background-size: cover;
  background-position: center;
}

.banner-slide:nth-child(1) { background-image: url('../images/banner.png'); }
.banner-slide:nth-child(2) { background-image: url('../images/banner2.png'); }
.banner-slide:nth-child(3) { background-image: url('../images/banner3.png'); }
.banner-slide:nth-child(4) { background-image: url('../images/banner4.png'); }

.banner-simple {
  width: 100%;
  max-width: 750px;
  height: 40vw;
  background-size: cover;
  background-position: center;
  background-image: url('../images/banner.png');
}

.banner-dots {
  position: absolute;
  bottom: 2.667vw;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 1.333vw;
}

.banner-dot {
  width: 1.333vw;
  height: 1.333vw;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
}

.banner-dot.active {
  background: #fff;
}

/* ========================================
   Section 通用区块
   ======================================== */
.section {
  background: #fff;
  margin: 2.667vw;
  top: -25vw;
  position: relative;
  padding: 3.6vw 2.667vw;
}

.section-title {
  text-align: center;
  margin-bottom: 5.333vw;
}

.tzgg{
      position: relative;
    top: -22vw;
    z-index: 999;
}

.section-title-cn {
  font-size: 4.6vw;
  font-weight: 700;
  color: #333;
}

.section-title-en {
  font-size: 2.133vw;
  color: #a8a8a8;
  margin-top: 1.333vw;
}

.title-line {
  width: 8.933vw;
  height: 0.267vw;
  background: #495d84;
  margin: 1.333vw auto 0;
}

/* ========================================
   Button 按钮
   ======================================== */
.btn-center {
  display: block;
  width: 26.133vw;
  height: 7.2vw;
  line-height: 7.2vw;
  text-align: center;
  background: #495d84;
  color: #fff;
  font-size: 3.2vw;
  margin: 5.333vw auto 0;
  border-radius: 0.8vw;
  cursor: pointer;
  border: none;
}

.btn-orange {
  background: #f18634;
}

/* ========================================
   Photo Grid 图片网格
   ======================================== */
.photo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 2.667vw;
}

.photo-grid .photo-item {
  width: calc(50% - 1.333vw);
  height: 28.8vw;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* ========================================
   News List 新闻列表
   ======================================== */
.news-list {
  padding: 0;
}

.news-item {
  padding: 4.4vw 4.4vw;
  border: 1px solid #f0f0f0;
  cursor: pointer;
  background: #fff;
  border-radius: 0.8vw;
  margin-bottom: 2.667vw;
}

.news-item:last-child {
  border-bottom: none;
}

.news-title {
  font-size: 4.267vw;
  font-weight: 700;
  color: #333;
  margin-bottom: 2.667vw;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.news-desc {
  font-size: 3.2vw;
  color: #666;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.news-date {
  font-size: 2.667vw;
  color: #999;
  margin-top: 2vw;
  text-align: right;
}

/* ========================================
   Shuttle Grid 校园直通车
   ======================================== */
.shuttle-grid {
  display: flex;
  flex-direction: column;
  gap: 4vw;
  padding: 0;
}

.shuttle-item {
  width: 100%;
  height: 15.467vw;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.shuttle-item:nth-child(1) { background-image: url('../images/intro-college.png'); }
.shuttle-item:nth-child(2) { background-image: url('../images/recruit-brochure.png'); }
.shuttle-item:nth-child(3) { background-image: url('../images/admission-query.png'); }
.shuttle-item:nth-child(4) { background-image: url('../images/online-apply-btn.png'); }
.shuttle-item:nth-child(5) { background-image: url('../images/contact-us.png'); }

.shuttle-text {
  display: flex;
  align-items: center;
  gap: 2.667vw;
  padding-left: 4.133vw;
}

.shuttle-cn {
  font-size: 4.267vw;
  font-weight: 700;
  color: #fff;
}

.shuttle-en {
  font-size: 4.267vw;
  color: #fff;
  opacity: 0.9;
}

/* ========================================
   Major Grid 专业设置
   ======================================== */
.major-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 2.667vw;
}

.major-item {
  width: calc(50% - 1.333vw);
  text-align: left;
  cursor: pointer;
}

.major-img {
  width: 100%;
  height: 28.8vw;
  background-size: cover;
  background-position: center;
}

.major-name {
  font-size: 3.5vw;
  font-weight: 700;
  color: #333;
  margin-top: 1.333vw;
}

.major-desc {
  font-size: 2.8vw;
  color: #666;
  margin-top: 1.333vw;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ========================================
   Register Section 在线报名 - 修复版
   ======================================== */
.register-section {
  background: #495d84;
  padding: 3.6vw 2.667vw 5.333vw;
  /*margin-top: -20vw;*/
}

.register-title {
  text-align: center;
  color: #fff;
}

.register-title-cn {
  font-size: 4.6vw;
  font-weight: 700;
}

.register-title-tip {
  font-size: 2.667vw;
  margin-top: 4vw;
}

.register-form {
  margin-top: 4vw;
}

.form-row {
  display: flex;
  gap: 1.333vw;
  margin-bottom: 2vw;
}

.form-row-full {
  margin-bottom: 2vw;
}

input.form-input {
  flex: 1;
  min-width: 0;
  height: 12vw;
  border: none;
  padding: 0 2.667vw 0 8vw;
  font-size: 4vw;
  color: #333;
  background-repeat: no-repeat;
  background-position: 2.667vw center;
  background-size: 3.733vw 4.267vw;
  border-radius: 0;
  outline: none;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.form-input {
  flex: 1;
  min-width: 0;
  height: 12vw;
  background: #fff;
  border: none;
  padding: 0 2.667vw 0 8vw;
  font-size: 4vw;
  color: #333;
  background-repeat: no-repeat;
  background-position: 2.667vw center;
  background-size: 3.733vw 4.267vw;
  border-radius: 0;
  outline: none;
  box-sizing: border-box;
}

.form-input.name { background-image: url('../images/name-icon.png'); }
.form-input.phone { background-image: url('../images/phone-icon.png'); }
.form-input.address { background-image: url('../images/address-icon.png'); }
.form-input.score { background-image: url('../images/score-icon.png'); }

.form-select {
  width: 100%;
  height: 12vw;
  background: #fff;
  border: none;
  padding: 0 6.667vw 0 8vw;
  font-size: 4vw;
  color: #333;
  background-image: url('../images/major-icon.png');
  background-repeat: no-repeat;
  background-position: 2.667vw center;
  background-size: 4.267vw 4vw;
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  outline: none;
  cursor: pointer;
  box-sizing: border-box;
}

.form-select-wrap {
  position: relative;
  width: 100%;
  height: 12vw;
  background: #fff;
  box-sizing: border-box;
}

.form-select-wrap .form-select {
  width: 100%;
  padding-right: 6.667vw;
  background-position: 2.667vw center, right 2vw center;
  background-size: 4.267vw 4vw, 2.667vw 2.133vw;
  box-sizing: border-box;
}

.form-select-arrow {
  position: absolute;
  right: 2vw;
  top: 50%;
  transform: translateY(-50%);
  width: 2.667vw;
  height: 2.133vw;
  background: url('../images/arrow-down.png') no-repeat center;
  background-size: contain;
  pointer-events: none;
}

.btn-register {
  display: block;
  width: 26.133vw;
  height: 7.2vw;
  line-height: 7.2vw;
  text-align: center;
  background: #f18634;
  color: #fff;
  font-size: 4vw;
  margin: 4vw auto 0;
  border-radius: 0.8vw;
  cursor: pointer;
  border: none;
}

.map-wrapper {
  margin-top: 4vw;
}

.map-wrapper img {
  width: 100%;
  height: auto;
  display: block;
}

/* ========================================
   Footer 底部
   ======================================== */
.footer {
  background: #2f2f2f;
  padding: 5.333vw 2.667vw;
  text-align: center;
}

.footer-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.667vw;
  margin-bottom: 2.667vw;
}

.footer-logo-img {
  width: 27.867vw;
  height: 6.667vw;
  background: url('../images/footer-logo.png') no-repeat center;
  background-size: contain;
}

.footer-title {
  color: #fff;
  font-size: 2.667vw;
}

.footer-info {
  color: #fff;
  font-size: 2.667vw;
  line-height: 1.8;
}

/* ========================================
   Bottom Navigation 底部导航
   ======================================== */
.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 750px;
  height: 13.067vw;
  background: #fff;
  display: flex;
  justify-content: space-around;
  align-items: center;
  border-top: 1px solid #e0e0e0;
  z-index: 100;
}

.nav-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 1.333vw 2.667vw;
}

.nav-item.active {
  color: #495d84;
}

.nav-icon {
  width: 5.067vw;
  height: 4.4vw;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.nav-item:nth-child(1) .nav-icon { background-image: url('../images/nav-home.png'); }
.nav-item:nth-child(2) .nav-icon {
  width: 5.6vw;
  background-image: url('../images/nav-phone.png');
}
.nav-item:nth-child(3) .nav-icon { background-image: url('../images/nav-chat.png'); }
.nav-item:nth-child(4) .nav-icon {
  width: 4.4vw;
  background-image: url('../images/nav-apply.png');
}

.nav-text {
  font-size: 2.4vw;
  margin-top: 1.067vw;
  color: #96979c;
}

.nav-text a{
    font-size: 2.4vw;
    color: #96979c;
    text-decoration: none;
}

.nav-item.active .nav-text {
  color: #495d84;
}

/* ========================================
   Breadcrumb 面包屑导航
   ======================================== */
.breadcrumb {
  display: flex;
  align-items: center;
  padding: 2.667vw;
  font-size: 3.2vw;
  color: #666;
  /* background: #fff; */
  margin: 0 2.667vw;
}

.breadcrumb-icon {
  width: 2.667vw;
  height: 2.667vw;
  background: url('../images/nav-home.png') no-repeat center;
  background-size: contain;
  margin-right: 1.333vw;
}
.breadcrumb a{
    font-size: 3.2vw;
    color: #666;
    text-decoration: none;
}

.breadcrumb-sep {
  margin: 0 2vw;
  color: #ccc;
}

/* ========================================
   Tab Bar 标签栏
   ======================================== */
.tab-bar {
  display: flex;
  background: #495d84;
  margin: 0 2.667vw;
}

.tab-item {
  flex: 1;
  height: 10.667vw;
  line-height: 10.667vw;
  text-align: center;
  font-size: 3.733vw;
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  position: relative;
}

.tab-item.active {
  color: #fff;
  background: #495d84;
  font-weight: 600;
}

/*增加下箭头效果*/
/* .tab-item::before{
  content: '';
  position: absolute;
  top: 10.5vw;
  left: 50%;
  transform: translateX(-50%);
  width: 2.667vw;
  height: 2.133vw;
  background: url('../images/arrow-down.png') no-repeat center;
  background-size: contain;
}

.tab-item.active::before{
  background: none;
} */

.tab-item.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  /* height: 0.533vw; */
  background: #fff;
   top: 10.5vw;
  left: 50%;
  transform: translateX(-50%);
  width: 2.667vw;
  height: 2.133vw;
  background: url('../images/arrow-down.png') no-repeat center;
  background-size: contain;
}

/* ========================================
   Sub Nav 招生信息二级导航
   ======================================== */
.sub-nav {
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  background: #fff;
  margin: 0 2.667vw;
  padding: 0;
  gap: 0;
}

.sub-nav::-webkit-scrollbar {
  display: none;
}

.sub-nav-item {
  flex-shrink: 0;
  height: 9.333vw;
  line-height: 9.333vw;
  text-align: center;
  font-size: 3.467vw;
  color: #666;
  padding: 0 4vw;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
}

.sub-nav-item.active {
  color: #495d84;
  font-weight: 600;
}

.sub-nav-item.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 6.667vw;
  height: 0.533vw;
  background: #495d84;
  border-radius: 0.267vw;
}

/* ========================================
   Gallery Grid 图库网格
   ======================================== */
.gallery-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.333vw;
  padding: 2.667vw;
}

.gallery-item {
  width: calc(50% - 0.933vw);
  height: 30vw;
  background-size: cover;
  background-position: center;
  cursor: pointer;
}

/* ========================================
   Pagination 分页
   ======================================== */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1vw;
  padding: 4vw 2.667vw;
}

.pagination a {

  line-height: 8vw;
  text-align: center;
  font-size: 3.2vw;
  border: 1px solid #ddd;
  background: #fff;
  cursor: pointer;
    padding: 0.5vw 3.5vw;
    display: block;
  border-radius: 0.8vw;
    text-decoration: none;
    color: black;
}
.pagination a b{
     background:none;
    padding: 0;
    color: black;
}
.pagination b {
  background: #495d84;
  color: #fff;
  border-color: #495d84;
    padding: 2.6vw 3.5vw;

    text-align: center;
    font-size: 3.2vw;

}

.page-btn.disabled {
  color: #ccc;
  cursor: not-allowed;
}

/* ========================================
   Content Area 内容区域
   ======================================== */
.content-area {
  padding: 4vw 2.667vw;
  background: #fff;
  margin: 0 2.667vw;
}

.content-title {
  font-size: 4.8vw;
  font-weight: 700;
  color: #333;
  text-align: center;
  margin-bottom: 4vw;
}

.content-text {
  font-size: 3.733vw;
  color: #666;
  line-height: 1.8;
  text-indent: 2em;
}

.content-text p {
  margin-bottom: 2.667vw;
}
.content-text img{
    width: 100% !important;
    height: auto !important;
    display: block;
    margin: 0 auto;
}

/* ========================================
   Notice 声明
   ======================================== */
.notice {
  background: #fff3f3;
  border: 1px solid #ffcccc;
  padding: 2.667vw;
  margin: 2.667vw;
  border-radius: 1.067vw;
}

.notice-text {
  font-size: 3.2vw;
  color: #e64340;
  line-height: 1.6;
}

/* ========================================
   Query Form 查询表单
   ======================================== */
.query-form {
  background: #fff;
  margin: 2.667vw;
  padding: 5.333vw 2.667vw;
}

.query-input-wrap {
  display: flex;
  align-items: center;
  background: #f5f5f5;
  border-radius: 1.067vw;
  padding: 0 2.667vw;
  margin-bottom: 4vw;
}

.query-input {
  flex: 1;
  height: 10.667vw;
  font-size: 3.733vw;
  border: none;
  background: transparent;
  outline: none;
  color: #333;
}

.query-input::placeholder {
  color: #999;
}

.btn-query {
  display: block;
  width: 100%;
  height: 10.667vw;
  line-height: 10.667vw;
  text-align: center;
  background: #495d84;
  color: #fff;
  font-size: 3.733vw;
  border-radius: 1.067vw;
  border: none;
  cursor: pointer;
}

/* ========================================
   Result 结果
   ======================================== */
.result-box {
  text-align: center;
  padding: 8vw 2.667vw;
}

.result-icon {
  width: 21.333vw;
  height: 21.333vw;
  margin: 0 auto 4vw;
  border-radius: 50%;

  background-repeat: no-repeat;
  background-position: center;
  background-color: #f0f0f0f0;
 
}

.result-icon.success {
  background-image: url('../images/success-icon.png');
}

.result-icon.fail {
  background-image: url('../images/error-icon.png');
}

.result-message {
  font-size: 4.267vw;
  color: #333;
  margin-bottom: 2.667vw;
}

.result-tip {
  font-size: 3.2vw;
  color: #666;
}

/* ========================================
   Contact Info 联系信息
   ======================================== */
.contact-info {
  background: #fff;
  padding: 4vw 2.667vw;
  margin: 2.667vw;
}

.contact-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 3.333vw;
}

.contact-label {
  font-size: 3.733vw;
  color: #333;
  font-weight: 700;
  width: 18.667vw;
}

.contact-value {
  font-size: 3.733vw;
  color: #666;
  flex: 1;
}

.contact-value a {
  color: #495d84;
  text-decoration: none;
}

/* ========================================
   Copyright 版权区域
   ======================================== */
.copyright {
  background: #2f2f2f;
  padding: 5.333vw 2.667vw;
  text-align: center;
}

.copyright-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.667vw;
  margin-bottom: 2.667vw;
}

.copyright-logo-img {
  width: 27.867vw;
  max-width: 209px;
  height: 6.667vw;
  max-height: 50px;
  background: url('../images/footer-logo.png') no-repeat center;
  background-size: contain;
}

.copyright-title {
  color: #fff;
  font-size: 2.667vw;
}

.copyright-info {
  color: #fff;
  font-size: 2.667vw;
  line-height: 1.8;
}

/* ========================================
   Loading & Animations
   ======================================== */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.fade-in {
  animation: fadeIn 0.3s ease-in-out;
}

/* ========================================
   Utilities 工具类
   ======================================== */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.mt-20 { margin-top: 2.667vw; }
.mt-40 { margin-top: 5.333vw; }
.mb-20 { margin-bottom: 2.667vw; }
.mb-40 { margin-bottom: 5.333vw; }
.p-20 { padding: 2.667vw; }
.bg-white { background: #fff; }
.bg-gray { background: #f0f0f0; }

/* ========================================
   Apply Page 在线报名页面
   ======================================== */
.apply-page-title {
  font-size: 6.4vw;
  font-weight: 700;
  color: #333;
  text-align: center;
  padding: 6.667vw 4vw 3.333vw;
  border-bottom: 2px solid #f0f0f0;
}

.apply-notice {
  font-size: 3.733vw;
  color: #e64340;
  line-height: 1.6;
  padding: 3.333vw;
}

.apply-contact {
  padding: 0 3.333vw;
  margin-bottom: 3.333vw;
}

.apply-contact-item {
  font-size: 3.733vw;
  color: #666;
  line-height: 1.8;
  margin-bottom: 1.6vw;
}

.apply-required-note {
  font-size: 3.733vw;
  color: #e64340;
  margin-top: 1.6vw;
}

.apply-form {
  padding: 0 3.333vw 6.667vw;
}

.apply-form-item {
  display: flex;
  align-items: center;
  margin-bottom: 2.667vw;
  background: #eaeaea;
  border-radius: 2vw;
  padding: 2.667vw 3.333vw;
}

.apply-form-label {
  font-size: 4vw;
  color: #333;
  white-space: nowrap;
  margin-right: 3.333vw;
  width: 26.667vw;
}

.apply-form-label .required {
  color: #e64340;
}

.apply-form-input,
.apply-form-select {
  flex: 1;
  font-size: 3.733vw;
  color: #666;
  border: none;
  background: transparent;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

.apply-form-select {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 4vw;
  padding-right: 5.333vw;
}

.apply-form-btn {
  width: 100%;
  height: 12vw;
  background: #4a5c7a;
  color: #fff;
  font-size: 5.333vw;
  border: none;
  border-radius: 6vw;
  margin-top: 4vw;
  cursor: pointer;
}

.apply-privacy {
  text-align: center;
  font-size: 3.467vw;
  color: #999;
  margin-top: 3.333vw;
  cursor: pointer;
}

.privacy-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  padding: 4vw;
}

.privacy-modal-overlay.show {
  display: flex;
}

.privacy-modal {
  background: #fff;
  border-radius: 4vw;
  width: 100%;
  max-height: 85vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.privacy-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4vw;
  border-bottom: 1px solid #eee;
  flex-shrink: 0;
}

.privacy-modal-title {
  font-size: 4.8vw;
  font-weight: 700;
  color: #333;
}

.privacy-modal-close {
  font-size: 8vw;
  color: #999;
  cursor: pointer;
  line-height: 1;
  width: 8vw;
  text-align: center;
}

.privacy-modal-content {
  padding: 4vw;
  overflow-y: auto;
  flex: 1;
}

.privacy-modal-content h3 {
  font-size: 4vw;
  color: #333;
  margin: 4vw 0 2vw;
}

.privacy-modal-content h3:first-child {
  margin-top: 0;
}

.privacy-modal-content p {
  font-size: 3.467vw;
  color: #666;
  line-height: 1.8;
  margin-bottom: 2.667vw;
}

.privacy-modal-content ul {
  margin: 2vw 0 2.667vw 4vw;
}

.privacy-modal-content li {
  font-size: 3.467vw;
  color: #666;
  line-height: 1.8;
  margin-bottom: 1.333vw;
}

/* ========================================
   Query Page 录取查询页面
   ======================================== */
.query-page-title {
  font-size: 6.4vw;
  font-weight: 700;
  color: #333;
  text-align: center;
  padding: 6.667vw 4vw 4vw;
  border-bottom: 2px solid #f0f0f0;
}

.query-form-container {
  background: #fff;
  border-radius: 4vw;
  margin: 4vw;
  padding: 3.333vw;
}

.query-form-item {
  display: flex;
  align-items: center;
  padding: 3.333vw 0;
  border-bottom: 1px solid #f0f0f0;
}

.query-form-item:last-child {
  border-bottom: none;
}

.query-form-label {
  font-size: 4.267vw;
  color: #333;
  white-space: nowrap;
  margin-right: 3.333vw;
  width: 32vw;
}

.query-form-input {
  flex: 1;
  font-size: 4.267vw;
  color: #333;
  border: none;
  background: transparent;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

.query-form-btn {
  display: block;
  width: 66.667vw;
  height: 12vw;
  background: #4a5c7a;
  color: #fff;
  font-size: 5.333vw;
  border: none;
  border-radius: 6vw;
  margin: 5.333vw auto;
  cursor: pointer;
}

.query-notice {
  padding: 0 4vw 6.667vw;
}

.query-notice-title {
  font-size: 4.267vw;
  color: #e64340;
  font-weight: 700;
  margin-bottom: 3.333vw;
}

.query-notice-item {
  font-size: 3.733vw;
  color: #666;
  line-height: 1.8;
  margin-bottom: 2.133vw;
}

/* ========================================
   Query Success Page 录取成功页面
   ======================================== */
.query-success-page {
  padding: 4vw;
}

.query-success-title {
  font-size: 5.333vw;
  font-weight: 700;
  color: #333;
  text-align: center;
  padding: 4vw 0 5.333vw;
}

.query-success-student-info {
  text-align: left;
  margin-bottom: 5.333vw;
}

.query-success-name {
  font-size: 3.733vw;
  color: #333;
  border-bottom: 1px solid #333;
  padding: 0 2.667vw 1.333vw;
  display: inline-block;
  min-width: 18vw;
  text-align: center;
}

.query-success-name-label {
  font-size: 3.733vw;
  color: #333;

}

.query-success-congratulation {
  font-size: 3.733vw;
  color: #333;
  text-align: center;
  line-height: 1.8;
  text-indent: 2em;
  margin-bottom: 6.667vw;
}

.query-success-major {
  font-size: 3.733vw;
  color: #333;
  border-bottom: 1px solid #333;
  padding: 0 2.3vw  1.3vw;

  min-width: 40vw;
  text-align: center;
}

.query-info-table {
  border: 1px solid #ddd;
  margin-bottom: 6.667vw;
}

.query-info-header {
  background: #4a5c7a;
  color: #fff;
  font-size: 4.267vw;
  font-weight: 700;
  text-align: center;
  padding: 3.333vw;
}

.query-info-row {
  display: flex;
  padding: 2.667vw 3.333vw;
  border-bottom: 1px solid #ddd;
}

.query-info-row:last-child {
  border-bottom: none;
}

.query-info-label {
  font-size: 3.467vw;
  color: #333;
  white-space: nowrap;
  width: 34.667vw;
}

.query-info-value {
  font-size: 3.467vw;
  color: #333;
  flex: 1;
}

.query-success-notes {
  padding: 0 2vw;
}

.query-success-note-item {
  font-size: 3.2vw;
  color: #999;
  line-height: 1.8;
  margin-bottom: 3.333vw;
}

/* ========================================
   Query Fail Page 录取失败页面
   ======================================== */
.query-fail-page {
  padding: 13.333vw 4vw 8vw;
  text-align: center;
  margin-bottom: 30vw;
}

.query-fail-icon {
  width: 53.333vw;
  
  margin: 0 auto 8vw;
}

.query-fail-icon-img {
  width: 50%;
 
  object-fit: contain;
}

.query-fail-message {
  font-size: 4vw;
  color: #333;
  margin-bottom: 5.333vw;
  line-height: 1.6;
}

.query-fail-contact {
  font-size: 3.733vw;
  color: #e64340;
  line-height: 1.6;
}

/* ========================================
   Contact Page 联系我们页面
   ======================================== */
.contact-page {
  background: #f9f9f9;

}

.contact-map {
  width: 100%;
  overflow: hidden;
}

.contact-map-img {
  width: 100%;
  display: block;
}

.contact-info-section {
  padding: 5.333vw 4vw 8vw;
    background-image: url('../images/contact-bg.png');
    background-repeat: no-repeat;
    background-position: center 2vw;
    background-size: 100vw auto;
}

.contact-info-title {
  font-size: 4.8vw;
  font-weight: 700;
  color: #333;
  margin-bottom: 5.333vw;
}

.contact-info-item {
  margin-bottom: 5.333vw;
}

.contact-info-item-label {
  font-size: 4.267vw;
  color: #333;
  margin-bottom: 2.133vw;
}

.contact-info-item-value {
  font-size: 4.267vw;
  color: #666;
  line-height: 1.6;
}
