@charset "UTF-8";
/* ---------------------------------------------------------
   机构详情页（j_xxx）移动端适配
   依赖：reset.css / swiper.min.css / addwx.css
        common.css / edu-common.css / new/index.css
   只做覆盖，不改动页面结构
   --------------------------------------------------------- */

/* ---------------------------------------------------------
   一、中等屏收窄（<=1220px）
   --------------------------------------------------------- */
@media screen and (max-width: 1220px) {
  html,
  body {
    min-width: 0;
  }
  .w_1200,
  .w_1220,
  .contWidth {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }
  .head-nav .head-nav-inner {
    width: 100%;
  }
  /* 列表页容器固定 1200px，收窄屏改为自适应 */
  .list-main {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }
  .div-block {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }
  .wechat-kc > div {
    width: calc(50% - 8px);
  }
  .campus-school .campus-list-box {
    width: 50%;
  }
  .main-foot .main-foot-box .popular-releases li {
    margin-right: 0;
    width: calc(100% / 3);
  }
  .main-foot .main-foot-box .popular-releases li a {
    width: 100%;
  }
  /* 课程详情页两栏容器同样定宽 1200px */
  .course-main {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }
  .main-l {
    width: calc(100% - 280px);
  }
}

/* ---------------------------------------------------------
   二、移动端主体适配（<=768px）
   --------------------------------------------------------- */
@media screen and (max-width: 768px) {

  /* ===== 基础 ===== */
  html,
  body {
    min-width: 0;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
  }
  body {
    font-size: 13px;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  .w_1200,
  .w_1220,
  .contWidth {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
  }

  /* ===== 顶部窄条 ===== */
  .head-city {
    height: auto;
    min-height: 28px;
    line-height: 22px;
    font-size: 11px;
    padding: 4px 0;
  }
  .head-city .head-city-1220 {
    flex-wrap: wrap;
  }
  .head-city .head-city-left > span,
  .head-city .head-city-right > span {
    margin: 0 3px;
  }
  .head-city .head-city-left img,
  .head-city .head-city-right img {
    width: 8px;
    height: 11px;
  }
  .head-city .head-city-nav {
    margin-left: 10px;
    /* 让下拉改为相对整条 .head-city 定位，得到满宽面板 */
    position: static;
  }
  /* 触发区加大点击范围，展开时高亮并翻转箭头 */
  .head-city .head-city-dh {
    padding: 4px 6px;
    cursor: pointer;
  }
  .head-city .head-city-nav.open .head-city-dh {
    color: #ff6c00;
  }
  .head-city .head-city-nav.open .head-city-dh img {
    transform: rotate(180deg);
  }

  /* ===== 顶部「网站导航」下拉：触屏改为点击展开的满宽面板 ===== */
  .head-city {
    position: relative;
  }
  /* 屏蔽 hover 展开，触屏上会出现「粘滞 hover」打不开也关不掉 */
  .head-city .head-city-nav:hover .head-city-dropdown {
    opacity: 0;
    pointer-events: none;
    transform: scale(0);
  }
  .head-city .head-city-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 9000;
    width: 100%;
    max-height: calc(100vh - 120px);
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    padding: 4px 0 10px;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    transform-origin: 50% 0;
    transition: opacity 0.22s ease-out, transform 0.22s ease-out;
  }
  /* 该 ul 带通用类 .border（1px #EDEDEE），与自身阴影冲突，移动端去掉 */
  .head-city .head-city-dropdown.border {
    border: 0;
  }
  .head-city .head-city-nav.open .head-city-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }
  /* PC 是四列固定宽度 + 各自滚动，移动端改为单列纵向堆叠 */
  .head-city .head-city-dropdown li,
  .head-city .head-city-dropdown li.li1,
  .head-city .head-city-dropdown li.li2,
  .head-city .head-city-dropdown li.li3,
  .head-city .head-city-dropdown li.li4 {
    width: 100%;
    height: auto;
    padding: 0 12px 12px;
    overflow: visible;
    border-right: 0;
    border-bottom: 1px solid #efefef;
    box-sizing: border-box;
  }
  .head-city .head-city-dropdown li:last-child {
    border-bottom: 0;
    padding-bottom: 4px;
  }
  .head-city .head-city-dropdown li .m_sitenav_til {
    margin-top: 14px;
    font-size: 15px;
  }
  /* 链接改为胶囊标签，保证点击区域 */
  .head-city .head-city-dropdown li dl {
    padding-top: 6px;
  }
  .head-city .head-city-dropdown li dd {
    flex: 0 0 auto;
    margin: 8px 8px 0 0;
  }
  .head-city .head-city-dropdown li dl a {
    display: block;
    width: auto;
    margin: 0;
    padding: 7px 12px;
    font-size: 13px;
    line-height: 18px;
    color: #6d6d6d;
    background-color: #f6f7f9;
    border-radius: 4px;
    white-space: nowrap;
  }
  .head-city .head-city-dropdown li.li1 a,
  .head-city .head-city-dropdown li.li2 a,
  .head-city .head-city-dropdown li.li3 a,
  .head-city .head-city-dropdown li.li4 a {
    width: auto;
    margin-top: 0;
  }

  /* ===== 机构头部导航 ===== */
  .head-nav {
    height: auto;
  }
  /* 吸顶会一直占用可视区，移动端取消 */
  .head-nav.fixed {
    position: static;
    box-shadow: none;
  }
  .head-nav .head-nav-inner {
    width: 100%;
    height: auto;
    padding: 10px;
    box-sizing: border-box;
    flex-wrap: wrap;
  }
  .head-nav .head-nav-inner .head-nav-l {
    flex: 1 1 100%;
    min-width: 0;
  }
  .head-nav .head-nav-inner .head-nav-l .logo {
    width: 44px;
    height: 44px;
  }
  .head-nav .head-nav-inner .head-nav-l .jg-name {
    min-width: 0;
    margin-left: 8px;
  }
  .head-nav .head-nav-inner .head-nav-l .jg-name h1 {
    font-size: 16px;
    line-height: 24px;
    margin-left: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .head-nav .head-nav-inner .head-nav-r {
    flex: 1 1 100%;
    margin-top: 8px;
    flex-wrap: wrap;
  }
  /* 导航项较多，横向滑动 */
  .head-nav .head-nav-inner .head-nav-r .nav {
    height: auto;
    flex: 1 1 auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .head-nav .head-nav-inner .head-nav-r .nav::-webkit-scrollbar {
    display: none;
  }
  .head-nav .head-nav-inner .head-nav-r .nav li {
    margin-left: 0;
    margin-right: 16px;
    flex: 0 0 auto;
  }
  .head-nav .head-nav-inner .head-nav-r .nav li a {
    line-height: 36px;
    font-size: 14px;
  }
  .head-nav .head-nav-inner .head-nav-r .nav li.active::after {
    bottom: 2px;
  }
  /* 移动端隐藏「选课咨询」按钮 */
  .head-nav .head-nav-inner .head-nav-r .course-selection {
    display: none;
  }

  /* ===== 顶部大图 ===== */
  .index-banner2 {
    max-height: 180px;
  }
  /* 列表页模糊背景横幅 */
  .banner {
    height: 140px;
  }
  .banner .banner-tit {
    padding-top: 24px;
  }
  .banner .banner-tit h1,
  .banner .banner-tit h2 {
    font-size: 24px !important;
    line-height: 32px;
  }
  .banner .banner-tit p {
    font-size: 13px;
    line-height: 20px;
    margin-top: 4px;
  }

  /* ===== 各内容块通用容器 ===== */
  .main-box {
    padding: 24px 0 20px;
  }
  .div-block {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }
  .div-block .div-block-tit h2 {
    font-size: 22px;
    line-height: 32px;
  }
  .div-block .div-block-tit p {
    font-size: 13px;
    line-height: 20px;
  }

  /* ===== 关于我们 ===== */
  .about-us-text {
    margin-top: 16px;
    font-size: 14px;
    line-height: 24px;
  }
  .about-us-text p {
    max-height: 168px;
  }
  .about-us-text a {
    height: 24px;
  }
  .about-us-text a::before {
    width: 24px;
    height: 24px;
  }
  .about-us-text a span {
    font-size: 14px;
    padding-left: 4px;
  }
  .about-us-text a i {
    height: 24px;
    line-height: 26px;
    font-size: 14px;
  }
  /* 微信 / 在线咨询 / 免费试听：改为纵向堆叠 */
  .wechat-kc {
    margin-top: 16px;
    flex-direction: column;
  }
  .wechat-kc > div {
    width: 100%;
    height: auto;
    min-height: 72px;
    margin-top: 10px;
    padding: 12px;
  }
  .wechat-kc > div:first-child {
    margin-top: 0;
  }
  .wechat-kc > div > img {
    width: 36px;
    height: 36px;
    margin-right: 8px;
  }
  .wechat-kc > div > div h3 {
    font-size: 15px;
  }
  .wechat-kc > div > div p {
    font-size: 12px;
  }
  .wechat-kc > div > button {
    width: 88px;
    height: 40px;
    font-size: 14px;
  }

  /* ===== 通用「查看更多」按钮 ===== */
  .view-all {
    width: auto;
    max-width: 100%;
    height: 44px;
    padding: 0 24px;
    margin: 20px auto 0;
    font-size: 15px;
    line-height: 42px;
  }

  /* ===== 体验课 / 课程列表页（单列大卡） ===== */
  .list-main {
    width: 100%;
    margin: -32px auto 0;
    padding: 0 10px;
    box-sizing: border-box;
  }
  .experience-class .class-list,
  .list-main .class-list {
    padding: 12px;
    margin-top: 16px;
  }
  .experience-class .class-list li,
  .list-main .class-list li {
    width: 100%;
  }
  .experience-class .class-list li + li,
  .experience-class .class-list li:nth-child(n + 3),
  .list-main .class-list li + li,
  .list-main .class-list li:nth-child(n + 3) {
    margin-top: 16px;
  }
  .experience-class .class-list li a,
  .list-main .class-list li a {
    flex-direction: column;
    align-items: stretch;
    height: auto;
  }
  .experience-class .class-list li a .class-logo,
  .list-main .class-list li a .class-logo {
    width: 100%;
    height: 160px;
    margin-right: 0;
  }
  .experience-class .class-list li a .class-detail,
  .list-main .class-list li a .class-detail {
    height: auto;
  }
  .experience-class .class-list li a .class-detail > h3,
  .list-main .class-list li a .class-detail > h3 {
    font-size: 16px;
    line-height: 24px;
  }
  .experience-class .class-list li a .class-detail > p,
  .list-main .class-list li a .class-detail > p {
    font-size: 12px;
    margin-top: 6px;
  }
  .experience-class .class-list li a .class-detail .class-detail-price,
  .list-main .class-list li a .class-detail .class-detail-price {
    margin-top: 8px;
  }
  /* 两个按钮改为横排（须压过 .class-singular-list .class-btn button.appointment-btn 的 margin-top） */
  .experience-class .class-list.class-singular-list li a .class-btn,
  .list-main .class-list.class-singular-list li a .class-btn {
    display: flex;
    align-items: center;
    margin-top: 12px;
  }
  .experience-class .class-list.class-singular-list li a .class-btn button,
  .list-main .class-list.class-singular-list li a .class-btn button {
    flex: 1 1 0;
    width: auto;
    height: 40px;
    line-height: 38px;
    font-size: 14px;
    margin-left: 0;
    margin-top: 0;
    box-sizing: border-box;
  }
  .experience-class .class-list.class-singular-list li a .class-btn button + button,
  .list-main .class-list.class-singular-list li a .class-btn button + button {
    margin-left: 10px;
  }

  /* ===== 精品课：四列改两列 ===== */
  .classic-course .course-list-box {
    margin-top: 16px;
  }
  .classic-course .course-list {
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 12px;
    margin-top: 0;
  }
  .classic-course .course-list li {
    width: calc((100% - 12px) / 2);
    margin-right: 0;
    margin-bottom: 16px;
  }
  .classic-course .course-list li a img {
    height: 96px;
  }
  .classic-course .course-list li a .course-detail {
    padding: 8px;
  }
  .classic-course .course-list li a .course-detail h3 {
    height: 48px;
    font-size: 14px;
    line-height: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .classic-course .course-list li a .course-detail p .course-timespan,
  .classic-course .course-list li a .course-detail p .course-time {
    font-size: 12px;
  }
  .classic-course .course-list li a .course-detail .course-detail-info .course-price {
    font-size: 14px;
  }
  .classic-course .course-list li a .course-detail .course-detail-info .course-person-num {
    font-size: 11px;
  }

  /* ===== 教师团队：四列改单列 ===== */
  .teacher-team .teacher-list {
    margin-top: 20px;
    flex-direction: column;
  }
  .teacher-team .teacher-list li {
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-bottom: 16px;
    /* PC 靠 overflow 裁剪做 hover 展开，移动端需放开，否则图片/详情被切掉 */
    overflow: visible;
  }
  .teacher-team .teacher-list li img {
    width: 100%;
    height: auto;
    max-height: 320px;
    object-fit: contain; /* 完整显示人像，不再被 cover 裁切 */
    background: #F2F2F2;
    display: block;
  }
  .teacher-team .teacher-list li .teacher-detail {
    height: auto;
    max-height: none;
    transform: none;
    padding: 12px;
  }
  .teacher-team .teacher-list li .teacher-detail h3 {
    font-size: 18px;
    line-height: 26px;
  }
  .teacher-team .teacher-list li .teacher-detail .teacher-text {
    margin-top: 8px;
    -webkit-line-clamp: 4;
  }

  /* ===== 学习环境（coverflow 相册） =====
     PC 是 1106px 定宽容器 + 800×480 大图 + 88px 圆形箭头，
     手机上整块溢出，只能看到当前图片左边一小条，箭头和分页点都被裁到屏幕外；
     这里改成接近满宽的单图轮播，左右各露一点下一张（stretch/depth 由页面脚本按屏宽重算） */
  .photo-album .album-swiper {
    width: 100%;
    margin: 16px auto 0;
  }
  .photo-album .album-swiper .swiper-slide {
    width: calc(100% - 36px);
    height: calc((100vw - 56px) * 0.6);
    max-height: 260px;
  }
  .photo-album .album-pagination {
    margin: 14px auto 0;
  }
  .photo-album .album-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    margin: 0 3px;
  }
  /* 箭头缩到 32px，压在图片左右两侧（PC 是 800px 宽容器 + 88px 圆 + 半露在外） */
  .photo-album .album-pagination-arrow {
    width: calc(100% - 26px);
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .photo-album .album-pagination-arrow i {
    width: 32px;
    height: 32px;
    padding-left: 0;
    font-size: 16px;
    line-height: 32px;
    text-align: center;
    transform: translateX(2px);
  }
  .photo-album .album-pagination-arrow .prev-arrow {
    padding-left: 0;
    transform: translateX(-2px);
  }

  /* ===== 学员点评 ===== */
  .student-comments .student-comments-list {
    padding: 12px;
    margin-top: 16px;
  }
  .student-comments .student-comments-list li {
    padding: 16px;
    height: auto;
  }
  .student-comments .student-comments-list li + li {
    margin-top: 12px;
  }
  .student-comments .student-comments-list li .pj-icon {
    width: 72px;
    height: 72px;
    right: 12px;
    top: 12px;
    opacity: 0.5;
  }
  .student-comments .student-comments-list li .student-comment-text {
    height: auto;
    margin-top: 12px;
    font-size: 13px;
    line-height: 22px;
  }
  .student-sign-info {
    margin-top: 12px;
    flex-wrap: wrap;
  }
  .student-sign-info p {
    flex: 1 1 100%;
    margin-right: 0;
    font-size: 13px;
  }
  .student-sign-info p span {
    width: auto;
    max-width: 60%;
  }
  .student-info p {
    font-size: 15px;
  }
  .student-info p span {
    width: 56px;
    font-size: 12px;
  }

  /* ===== 校区分布 ===== */
  .campus-school {
    padding: 12px;
    margin-top: 16px;
    flex-direction: column;
  }
  .campus-school .campus-list-box {
    width: 100%;
    max-height: none;
    overflow-y: visible;
    padding-right: 0;
  }
  .campus-school .campus-list-box .campus-list li {
    padding: 16px;
    flex-direction: column;
    align-items: stretch;
  }
  .campus-school .campus-list-box .campus-list li .campus-l h4 {
    font-size: 16px;
    line-height: 24px;
  }
  .campus-school .campus-list-box .campus-list li .campus-l p {
    font-size: 13px;
    line-height: 20px;
    margin-top: 6px;
  }
  .campus-school .campus-list-box .campus-list li > button {
    width: 100%;
    height: 40px;
    margin-left: 0;
    margin-top: 12px;
  }
  /* 纵向排布后必须清掉 PC 的 flex: 1（flex-basis: 0% 会把高度算成 0，地图就空白了） */
  .campus-school #school-map {
    flex: none;
    width: 100%;
    height: 240px;
    min-height: 240px;
    margin-left: 0;
    margin-top: 12px;
  }

  /* ===== 底部推荐区 ===== */
  .main-foot {
    padding-top: 20px;
  }
  .main-foot .main-foot-box {
    margin-top: 16px;
  }
  .main-foot .main-foot-box .main-foot-box-tit {
    font-size: 16px;
  }
  .main-foot .main-foot-box .popular-releases,
  .main-foot .main-foot-box .recommend-organ,
  .main-foot .main-foot-box .organ-tips {
    padding: 12px;
    margin-top: 8px;
  }
  /* 热门发布：一行一个 */
  .main-foot .main-foot-box .popular-releases li {
    margin-right: 0;
    width: 100%;
  }
  .main-foot .main-foot-box .popular-releases li a {
    width: 100%;
    font-size: 13px;
  }
  .main-foot .main-foot-box .popular-releases li:nth-child(n + 5) {
    margin-top: 0px;
  }
  /* 推荐机构：两列 */
  .main-foot .main-foot-box .recommend-organ {
    padding: 12px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .main-foot .main-foot-box .recommend-organ li {
    width: calc((100% - 10px) / 2);
    margin-right: 0;
    margin-bottom: 12px;
  }
  .main-foot .main-foot-box .recommend-organ li .organ-logo {
    height: 72px;
  }
  /* 热门课程：两列 */
  .main-foot .main-foot-box .hot-course {
    margin-top: 8px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .main-foot .main-foot-box .hot-course li {
    width: calc((100% - 10px) / 2);
    margin-right: 0;
    margin-bottom: 12px;
  }
  .main-foot .main-foot-box .hot-course li a {
    width: 100%;
    font-size: 13px;
  }
  .main-foot .main-foot-box .organ-tips {
    padding: 12px;
    font-size: 12px;
  }
  .main-foot .main-foot-box .organ-tips span {
    font-size: 15px;
  }

  /* ===== 面包屑 / 声明 ===== */
  .bread-crumbs {
    /* PC 是定宽 1200px，不复位会把页面撑出横向滚动 */
    width: calc(100% - 20px) !important;
    box-sizing: border-box;
    flex-wrap: wrap;
    padding: 12px !important;
    margin-top: 12px;
    font-size: 12px;
    line-height: 20px;
  }
  .main-tip {
    width: auto !important;
    margin: 12px 10px !important;
    padding: 12px !important;
    font-size: 12px;
    line-height: 20px;
  }

  /* ===== 页脚 ===== */
  .m-footer {
    padding: 20px 0;
    margin-top: 12px;
  }
  .m-footer .m-footer-jg-info {
    flex-direction: column;
    align-items: flex-start;
  }
  .m-footer .m-footer-jg-info .jg-info-l {
    height: auto;
  }
  .m-footer .m-footer-jg-info .jg-info-l img {
    width: 56px;
    height: 56px;
    margin-right: 10px;
  }
  .m-footer .m-footer-jg-info .jg-info-l h2 {
    font-size: 16px;
    line-height: 24px;
  }
  .m-footer .m-footer-jg-info .jg-info-r {
    padding-top: 8px;
  }
  .m-footer .m-footer-jg-info .jg-info-r p {
    font-size: 18px;
    line-height: 26px;
  }
  .m-footer .m-footer-jg-info .jg-info-r span {
    text-align: left;
    font-size: 12px;
  }
  .m-footer .line {
    margin: 16px 0;
  }
  .m-footer .m-footer-link {
    flex-wrap: wrap;
    font-size: 12px;
    line-height: 22px;
  }
  .m-footer .m-footer-text {
    font-size: 12px !important;
    line-height: 20px;
    margin-top: 12px;
  }
  .m-footer .m-footer-orther-link a img {
    height: 40px;
  }

  /* ===== 机构子页：精品课列表（serdh） ===== */
  .list-main .list-nav {
    width: 100%;
    padding: 0 12px 12px;
    margin-top: 0;
    box-sizing: border-box;
  }
  .list-main .list-nav li {
    margin-top: 12px;
    margin-right: 20px;
    margin-bottom: 0;
    font-size: 14px;
  }
  .list-main .list-nav li:last-child {
    margin-right: 0;
  }
  .list-main .course-list-box {
    margin-top: 0;
    padding: 12px;
    background: #FFFFFF;
    border-radius: 4px;
    box-sizing: border-box;
  }
  .list-main .course-list {
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 12px;
    margin-top: 0;
  }
  .list-main .course-list li {
    width: calc((100% - 12px) / 2);
    margin-right: 0;
    margin-top: 16px;
  }
  .list-main .course-list li a img {
    height: 96px;
  }
  .list-main .course-list li a .course-detail {
    padding: 8px;
  }
  .list-main .course-list li a .course-detail h3 {
    height: 48px;
    font-size: 14px;
    line-height: 24px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .list-main .course-list li a .course-detail p .course-timespan,
  .list-main .course-list li a .course-detail p .course-time {
    font-size: 12px;
  }
  .list-main .course-list li a .course-detail .course-detail-info .course-price {
    font-size: 14px;
  }
  .list-main .course-list li a .course-detail .course-detail-info .course-person-num {
    font-size: 11px;
  }

  /* ===== 机构子页：教师（teacher）
     注意用 .list-main > 限定，避免命中机构主页 .teacher-team .teacher-list 已调好的卡片 ===== */
  .list-main > .teacher-list {
    margin-top: 16px;
  }
  .list-main > .teacher-list > li {
    flex-direction: column;
    padding: 16px;
    margin-bottom: 12px;
  }
  .list-main > .teacher-list > li:first-child {
    padding: 12px 16px;
  }
  .list-main > .teacher-list > li .student-title {
    font-size: 17px !important;
  }
  .list-main > .teacher-list > li .teacher-photo {
    width: 96px;
    height: 96px;
    margin-right: 0;
  }
  .list-main > .teacher-list > li .teacher-photo span {
    right: 0;
  }
  .list-main > .teacher-list > li .teacher-r {
    width: 100%;
    margin-top: 12px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-name {
    font-size: 18px;
    line-height: 26px;
    flex-wrap: wrap;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-name span {
    height: 24px;
    line-height: 22px;
    font-size: 12px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-label {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 8px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-label p {
    font-size: 13px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-label dl {
    flex-wrap: wrap;
    margin-top: 6px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-label dl dd {
    margin-left: 0;
    margin-right: 6px;
    margin-bottom: 6px;
  }
  .list-main > .teacher-list > li .teacher-r .teacher-profile {
    margin-top: 12px;
    padding-top: 12px;
    font-size: 14px;
    line-height: 24px;
  }
  .list-main > .teacher-list > li .teacher-r .more-teach-course {
    float: none;
    margin-top: 12px;
    font-size: 14px;
  }
  .list-main > .teacher-list .related-course-list {
    flex-direction: column;
    margin-top: 12px;
  }
  .list-main > .teacher-list .related-course-list li {
    width: 100%;
    margin-top: 8px;
  }
  .list-main > .teacher-list .related-course-list li:nth-child(2n-1) {
    margin-right: 0;
  }
  /* 与 PC 一致：默认只露出前 2 个相关课程，点“更多该老师的课程”由 JS slideDown 展开 */
  .list-main > .teacher-list .related-course-list li:nth-child(n + 3) {
    display: none;
  }
  .list-main > .teacher-list .related-course-list li a {
    width: 100%;
    height: auto;
    min-height: 88px;
  }
  .list-main > .teacher-list .related-course-list li a > img {
    width: 120px;
    height: 88px;
  }
  .list-main > .teacher-list .related-course-list li a .related-course-detail {
    padding: 8px 10px;
  }
  .list-main > .teacher-list .related-course-list li a .related-course-detail h4 {
    font-size: 14px;
  }

  /* ===== 机构子页：学员评价（ping） ===== */
  .list-main.pj-main {
    padding: 12px;
    box-sizing: border-box;
  }
  .list-main.pj-main .student-title {
    margin-top: 0;
    font-size: 17px;
  }
  .list-main.pj-main .student-comments-list {
    margin-top: 12px;
  }
  .list-main.pj-main .student-comments-list > li {
    padding: 12px;
    margin-top: 12px;
  }
  .list-main.pj-main .student-comments-list > li:first-child {
    margin-top: 0;
  }
  .list-main.pj-main .student-comments-list > li .student-comment-text {
    min-height: 0;
    height: auto;
    margin-top: 8px;
    font-size: 13px;
    line-height: 22px;
  }
  .pj-main .student-info img {
    width: 40px;
    height: 40px;
    margin-right: 8px;
  }
  .pj-main .student-sign-info {
    flex-wrap: wrap;
    margin-top: 8px;
  }
  .pj-main .student-sign-info p {
    flex: 1 1 100%;
    margin-right: 0;
    font-size: 12px;
    line-height: 22px;
  }
  .pj-main .student-sign-info p span {
    width: auto;
    max-width: 60%;
  }
  .pj-main .student-sign-info p button {
    width: 64px;
    height: 24px;
  }

  /* ===== 机构子页：校区（ditu）
     卡片/地图的布局规则见上方「校区分布」，这里只调标题字号 ===== */
  .campus-num2 {
    font-size: 16px !important;
  }

  /* ===== 机构子页：关于（intro）
     newsDetail.css 的 .list-main { padding: 60px 48px 40px } 需靠 .about-us-main 提权压掉 ===== */
  .list-main.about-us-main {
    padding: 16px 12px;
  }
  .about-us-main .news-info {
    padding-bottom: 12px;
  }
  .about-us-main .news-info .news-name {
    font-size: 20px;
    line-height: 30px;
  }
  .about-us-main .news-detail {
    margin-top: 12px;
    font-size: 14px;
    line-height: 26px;
  }
  .about-us-main .news-detail p {
    font-size: 14px;
    line-height: 26px;
    margin-top: 12px;
  }
  .about-us-main .news-detail p + p {
    margin-top: 16px;
  }
  .about-us-main .news-detail img {
    margin: 12px auto 0;
  }

  /* ===== 机构子页：相册（upimages） ===== */
  .albums-main .albums-box {
    margin-top: 0;
    padding: 12px;
    background: #FFFFFF;
    border-radius: 4px;
    box-sizing: border-box;
  }
  .albums-main .albums-box ul {
    margin-top: 0;
    column-gap: 12px;
  }
  .albums-main .albums-box ul li {
    width: calc((100% - 12px) / 2);
    height: auto;
    /* 间距统一交给 ul 的 column-gap；li 自身再留 margin-right 会与 gap 叠加
       超出容器宽度，导致每行只排得下一张（看起来就成了一列） */
    margin-right: 0;
    margin-top: 12px;
  }
  /* PC 是 4 列（4n 去右边距），移动端改 2 列 */
  .albums-main .albums-box ul li:nth-child(4n),
  .albums-main .albums-box ul li:nth-child(2n) {
    margin-right: 0;
  }
  .albums-main .albums-box ul li img {
    height: 104px;
  }
  .albums-main .albums-box ul li p {
    font-size: 13px;
    line-height: 20px;
    padding: 8px 8px 6px;
  }

  /* 相册灯箱：PC 是 1000px 定宽 + 600px 大图 */
  .albums-mask .album-layer {
    width: calc(100% - 24px);
  }
  .albums-mask .album-layer .albums-big-swiper .swiper-slide img {
    height: 240px;
    object-fit: contain;
  }
  .albums-mask .album-layer .albums-big-swiper .album-pagination-arrow {
    top: 50%;
    transform: translateY(-50%);
  }
  .albums-mask .album-layer .albums-big-swiper .album-pagination-arrow i {
    width: 40px;
    height: 40px;
    font-size: 20px;
    line-height: 40px;
    text-align: center;
    padding-left: 0;
    transform: translateX(0);
  }
  .albums-mask .album-layer .albums-big-swiper .album-pagination-arrow .prev-arrow {
    padding-left: 0;
    transform: translateX(0);
  }
  .albums-mask .album-layer .albums-big-swiper .album-name {
    margin-top: 12px;
    font-size: 16px;
    line-height: 24px;
  }
  .albums-mask .layer-close i {
    font-size: 26px;
  }

  /* ===== 新闻详情页（news） ===== */
  .list-main {
    width: 100%;
    padding: 16px 12px 20px;
    box-sizing: border-box;
  }
  .news-info {
    padding-bottom: 12px;
  }
  .news-info .news-name {
    font-size: 20px;
    line-height: 30px;
  }
  .news-info > div {
    margin-top: 12px;
    flex-wrap: wrap;
    font-size: 12px;
  }
  .news-info > div span {
    margin-right: 12px;
  }
  .news-info > div button {
    margin-left: 0;
    font-size: 12px;
  }
  .news-detail {
    margin-top: 12px;
    font-size: 15px;
    line-height: 26px;
  }
  .news-detail p {
    font-size: 15px;
    line-height: 26px;
    margin-top: 12px;
  }
  .news-detail p + p {
    margin-top: 16px;
  }
  .news-detail img {
    margin: 12px auto 0;
  }
  .news-detail table {
    table-layout: fixed;
    word-break: break-all;
  }
  .related-course-box {
    margin-top: 16px;
    padding-top: 16px;
  }
  .related-course-box .related-tit {
    font-size: 16px;
    line-height: 24px;
  }
  /* PC 是 465px 定宽横卡两列，移动端改单列 */
  .related-course-box .related-course-list {
    flex-direction: column;
    margin-top: 12px;
  }
  .related-course-box .related-course-list li {
    width: 100%;
    margin-top: 8px;
  }
  .related-course-box .related-course-list li:nth-child(2n-1) {
    margin-right: 0;
  }
  .related-course-box .related-course-list li a {
    width: 100%;
    height: auto;
    min-height: 88px;
  }
  .related-course-box .related-course-list li a > img {
    width: 120px;
    height: 88px;
  }
  .related-course-box .related-course-list li a .related-course-detail {
    padding: 8px 10px;
  }
  .related-course-box .related-course-list li a .related-course-detail h4 {
    font-size: 14px;
  }
  /* 上一篇 / 下一篇 */
  .news-page {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 24px 12px 12px;
    box-sizing: border-box;
  }
  .news-page a {
    font-size: 14px;
    line-height: 24px;
  }

  /* ===== 咨询弹窗 ===== */
  .common-layer,
  .common-layer-main {
    width: 100%;
    max-width: 100%;
  }
  .jyb-tips {
    width: calc(100% - 40px) !important;
    max-width: 320px;
  }

  /* =====================================================
     课程详情页（a_xxx.html）
     PC：.course-main 定宽 1200 两栏（920 + 260）；
         .course-box 左图 500×300 + 右侧信息，价格与按钮
         绝对定位在卡片底部；微信条是 936×116 的整张背景图
     ===================================================== */
  .course-main {
    width: 100%;
    flex-direction: column;
    padding: 0 12px;
    box-sizing: border-box;
  }
  .course-box {
    flex-direction: column;
    margin-top: 12px;
  }
  /* 课程头图：500×300 定高改为按比例自适应 */
  .course-box .course-img {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 3;
  }
  .course-box .course-img img {
    height: 100%;
  }
  .course-box .course-detail {
    padding: 14px 12px 16px;
  }
  .course-box .course-detail .course-name {
    flex-wrap: wrap;
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 12px;
  }
  .course-box .course-detail.experience-class-detail .course-name {
    margin-bottom: 12px;
  }
  .course-box .course-detail.experience-class-detail .course-name span {
    height: 22px;
    padding: 3px 8px;
    font-size: 12px;
    line-height: 16px;
    margin-left: 6px;
  }
  /* PC 给这几处限了 150 / 214 / 305 / 320px 定宽，窄屏放开折行 */
  .course-box .course-detail .course-data {
    flex-wrap: wrap;
  }
  .course-box .course-detail .course-data p {
    flex-wrap: wrap;
    font-size: 13px;
    line-height: 20px;
  }
  .course-box .course-detail .course-data p .no-hour,
  .course-box .course-detail .course-data .course-size span,
  .course-box .course-detail .course-data .course-campus span {
    width: auto;
    max-width: 100%;
    white-space: normal;
  }
  .course-box .course-detail .course-data .course-hour,
  .course-box .course-detail .course-data .course-shift {
    width: auto;
  }
  /* 价格 + 按钮：取消绝对定位，正常排在信息下方 */
  .course-box .course-detail .course-b {
    position: static;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    padding: 0;
    margin-top: 14px;
  }
  .course-box .course-detail .course-b .course-b-l p {
    font-size: 22px;
    line-height: 30px;
  }
  .course-box .course-detail .course-b .course-b-r {
    width: 100%;
    display: flex;
  }
  .course-box .course-detail .course-b .course-b-r button {
    flex: 1 1 0;
    width: auto;
    height: 40px;
    margin-left: 0;
    font-size: 15px;
    line-height: 38px;
  }
  .course-box .course-detail .course-b .course-b-r button + button {
    margin-left: 10px;
  }
  /* 左右两栏改为上下单列 */
  .main-l,
  .main-r {
    width: 100%;
    margin-left: 0;
  }
  .main-l > .main-l-content {
    margin-top: 12px;
  }
  /* Tab：PC 是 125px 宽 + 80px 间距、64px 高 */
  .main-title {
    height: 48px;
    padding: 0 12px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .main-title::-webkit-scrollbar {
    display: none;
  }
  .main-title li {
    flex: 0 0 auto;
    width: auto;
    margin-right: 24px;
    font-size: 16px;
    line-height: 48px;
  }
  .main-title li:last-child {
    margin-right: 0;
  }
  /* 课程详情正文 */
  .course-content .course-intro {
    padding: 12px;
    font-size: 15px;
    line-height: 26px;
  }
  .course-content .course-intro p {
    margin-top: 16px;
    font-size: 15px;
  }
  .course-content .course-intro img {
    margin-top: 16px;
    height: auto;
  }
  /* 学员评价 */
  .course-content .course-pj {
    padding: 16px 12px 0;
  }
  .course-content .course-pj .more-pj {
    margin-bottom: 16px;
  }
  /* 校区：PC 规则带 .course-content / #school-map 前缀，需同等提权才压得住 */
  .course-content .campus-school {
    padding: 12px;
  }
  .course-content .campus-school .campus-list-box {
    width: 100%;
    max-height: none;
    overflow-y: visible;
    padding-right: 0;
  }
  .course-content .campus-school .campus-list-box .campus-list li {
    flex-direction: column;
    align-items: stretch;
    padding: 16px;
  }
  .course-content .campus-school .campus-list-box .campus-list li > button {
    width: 100%;
    height: 40px;
    margin-left: 0;
    margin-top: 12px;
  }
  /* 纵向排布后必须清掉 PC 的 flex: 1，否则高度算成 0（地图空白） */
  .course-content .campus-school #school-map {
    flex: none;
    width: 100%;
    height: 240px;
    min-height: 240px;
    margin-left: 0;
    margin-top: 12px;
  }
  /* 微信咨询条 */
  .wechat-box {
    width: 100%;
    height: auto;
    padding: 14px 12px;
    margin-top: 12px;
    margin-left: 0;
    box-sizing: border-box;
  }
  .wechat-box .wechat-content {
    flex-wrap: wrap;
  }
  .wechat-box .wechat-content img {
    width: 40px;
    height: 40px;
    margin-right: 10px;
  }
  .wechat-box .wechat-content .wechat-m {
    flex: 1 1 60%;
    min-width: 0;
  }
  .wechat-box .wechat-content h4 {
    font-size: 14px;
    line-height: 20px;
  }
  .wechat-box .wechat-content p {
    flex-wrap: wrap;
  }
  .wechat-box .wechat-content p span + span {
    margin-left: 0;
  }
  .wechat-box .wechat-content button {
    width: 100%;
    height: 38px;
    margin-top: 10px;
    margin-left: 0;
    font-size: 15px;
    line-height: 36px;
  }
  /* 右侧栏：授课老师 / 关于我们 */
  .main-r-box {
    margin-top: 12px;
  }
  .main-r-box .main-r-box-tit {
    height: 48px;
    padding: 0 12px;
  }
  .main-r-box .main-r-box-tit span {
    font-size: 16px;
  }
  .main-r-box .teacher-list {
    padding: 0 12px 16px;
  }
  .main-r-box .teacher-list li .teacher-info > img {
    width: 40px;
    height: 40px;
  }
    .common-layer {
        width: 365px !important;
    }

    .tc_box_div {
        width: 323px !important;
    }

    .yyst_box_form div input {
        width: 243px;
    }

    .common-layer .bxk-notice {
        width: 365px !important;
    }

    .yyst_box_form .formBtn {
        width: 330px !important;
    }
}
