/* 移动端菜单样式 */
.mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}
.mobile-menu-overlay.active {
  visibility: visible;
  opacity: 1;
}
.mobile-menu {
  position: fixed;
  top: 0;
  right: -300px;
  width: 280px;
  height: 100%;
  background-color: #fff;
  box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
  transition: right 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 1001;
  display: flex;
  flex-direction: column;
}
.mobile-menu-overlay.active .mobile-menu {
  right: 0;
}
.mobile-menu-header {
  padding: 20px;
  border-bottom: 1px solid #e3e3e3;
  display: flex;
  justify-content: flex-end;
}
.mobile-menu-close {
  width: 30px;
  height: 30px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background-color 0.3s, transform 0.3s;
}
.mobile-menu-close:hover {
  background-color: #f5f5f5;
  transform: rotate(90deg);
}
.mobile-menu-content {
  flex: 1;
  padding: 20px 0;
  overflow-y: auto;
}
.mobile-menu-item {
  display: block;
  color: #252525;
  font-size: 18px;
  /* 增大主菜单项字体大小 */
  border-bottom: 1px solid #f0f0f0;
  transition: all 0.3s;
  cursor: pointer;
}
.mobile-menu-item.mobile-menu-item:not(:has(.mobile-submenu)) {
  padding: 18px 25px;
  /* 与有子菜单的项保持一致的内边距 */
  font-weight: 500;
  /* 增加字体粗细 */
}
.mobile-menu-item .mobile-menu-toggle {
  padding: 18px 25px;
  /* 增加内边距 */
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-weight: 500;
  /* 增加字体粗细 */
}
.mobile-menu-item .mobile-submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-color: #f9f9f9;
}
.mobile-menu-item .mobile-submenu a {
  display: block;
  padding: 12px 25px 12px 40px;
  color: #666;
  font-size: 14px;
  /* 子菜单项字体大小保持不变 */
  border-bottom: 1px solid #f0f0f0;
  transition: all 0.2s;
}
.mobile-menu-item .mobile-submenu a:hover {
  background: #f9f9f9;
  color: #e60012;
}
.mobile-menu-item .mobile-submenu a:last-child {
  border-bottom: none;
}
.mobile-menu-item.expanded .mobile-submenu {
  max-height: 500px;
  /* 增加最大高度以容纳更多子菜单项 */
}
.mobile-menu-item:hover {
  color: #252525;
}
.mobile-menu-item.act.mobile-menu-item:not(:has(.mobile-submenu)) {
  color: #252525;
  font-weight: bold;
  font-size: 19px;
  /* 选中状态字体更大 */
  position: relative;
}
.mobile-menu-item.act.mobile-menu-item:not(:has(.mobile-submenu)):after {
  content: "";
  position: absolute;
  left: 25px;
  bottom: -2px;
  right: 25px;
  height: 4px;
  background: #e60012;
  border-radius: 6px;
}
.mobile-menu-item.act > .mobile-menu-toggle {
  color: #252525;
  font-weight: bold;
  font-size: 19px;
  /* 选中状态字体更大 */
  position: relative;
}
.mobile-menu-item.act > .mobile-menu-toggle:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  right: 0;
  height: 4px;
  background: #e60012;
  border-radius: 6px;
}
.mobile-submenu a.act {
  color: #e60012;
  font-weight: bold;
  position: relative;
  background: #f9f9f9;
  font-size: 13px;
  /* 选中状态的子菜单项字体稍小 */
}
.mobile-menu-footer {
  padding: 20px;
  border-top: 1px solid #e3e3e3;
}
.mobile-menu-contact {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mobile-menu-contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #666;
}
.mobile-menu-contact-item .icon {
  width: 16px;
  height: 16px;
  background: url('../img/call.svg') no-repeat;
  background-size: contain;
}
/*# sourceMappingURL=mobile-nav.css.map */