@charset "utf-8";
        /* CSS Document */

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

        body {
            background-color: #f5f7fc;
            scroll-behavior: smooth;
        }

        .mbx {
            margin: 5vw 0 0px auto;
            line-height: 40px;
            color: #666;
            white-space: nowrap;
        }

        .mbx span {
            font-size: 14px;
            padding-left: 5px;
            color: #4671fb;
        }

        .mbx a {
            color: #4671fb;
        }

        /* ===== 通用标题 ===== */
        .section-title {
            font-size: 32px;
            font-weight: 700;
            color: #333;
            position: relative;
            padding-bottom: 14px;
            margin-bottom: 28px;
            letter-spacing: 1px;
        }
        .section-title::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 52px;
            height: 0px;
            background: linear-gradient(90deg, #1a7ab5, #4fa3d9);
            border-radius: 2px;
        }
        /* 标题行（用于右侧按钮） */
        .section-header {
            border-bottom: 1px dashed #ddd;
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 28px;
        }
        .section-header .section-title {
            margin-bottom: 0;
            padding-bottom: 14px;
        }

        .btn-more {
            color: #333;
            font-weight: normal;
            text-decoration: none;
            font-size: 18px;
            transition: 0.2s;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }
        .btn-more:hover {
            color: #0f6b54;
            gap: 12px;
        }

        /* ===== 第一部分：医院概况 + 环境轮播 ===== */
        .part-one {
            display: flex;
            gap: 40px;
            margin: 1vw 0 5vw 0;
            flex-wrap: wrap;
        }
        .part-one .left {
            background: #fff;
            padding: 3%;
            border-radius: 20px;
            flex: 1 1 58%;
            min-width: 320px;
        }
        .part-one .right {
            background: #fff;
            padding: 3%;
            border-radius: 20px;
            flex: 1 1 38%;
            min-width: 320px;
        }

        /* ---- 左侧：医院概况（左图右文字） ---- */
        .hospital-intro .intro-flex {
            display: flex;
            gap: 24px;
            align-items: flex-start;
            margin-bottom: 18px;
        }
        .hospital-intro .intro-img {
            flex: 0 0 42%;
            max-width: 42%;
            border-radius: 12px;
            overflow: hidden;
            background: #e9edf2;
            /*height: 180px;*/
        }
        .hospital-intro .intro-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
        .hospital-intro .intro-text {
            flex: 1;
            font-size: 15px;
            color: #666;
            line-height: 1.6;
            text-align: justify;
        }
        
        .hospital-intro .intro-footer {
            display: flex;
            justify-content: flex-end;
            margin-top: 6px;
        }

        /* ---- 右侧：环境轮播 ---- */
        .env-carousel-wrapper {
            position: relative;
        }
        .env-carousel-wrapper .carousel-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 14px;
        }
        .env-carousel-wrapper .carousel-header h3 {
            font-size: 32px;
            font-weight: 600;
            color: #333;
        }

        .env-carousel {
            position: relative;
            overflow: hidden;
            border-radius: 12px;
            background: #fff;
            /*box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);*/
        }
        .env-carousel .track {
            display: flex;
            transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            will-change: transform;
        }
        .env-carousel .slide {
            flex: 0 0 50%;
            /* 显示2张 */
            height: 260px;
            position: relative;
            overflow: hidden;
            background: #dce3ec;
        }
        .env-carousel .slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            transition: transform 0.4s ease;
        }
        .env-carousel .slide:hover img {
            transform: scale(1.03);
        }
        .env-carousel .slide .slide-label {
            position: absolute;
            bottom: 18px;
            left: 18px;
            background: rgba(0, 0, 0, 0.55);
            backdrop-filter: blur(4px);
            color: #fff;
            padding: 4px 16px;
            border-radius: 20px;
            font-size: 13px;
            font-weight: 500;
            letter-spacing: 0.3px;
            pointer-events: none;
        }

        .env-carousel .arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.88);
            border: none;
            box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
            cursor: pointer;
            font-size: 18px;
            color: #1a3a5c;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.25s ease;
            z-index: 5;
            backdrop-filter: blur(2px);
        }
        .env-carousel .arrow:hover {
            background: #ffffff;
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);
            transform: translateY(-50%) scale(1.06);
        }
        .env-carousel .arrow-prev {
            left: 14px;
        }
        .env-carousel .arrow-next {
            right: 14px;
        }

        .env-carousel .dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            padding: 14px 0 6px;
        }
        .env-carousel .dots span {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background: #cbd5e1;
            cursor: pointer;
            transition: all 0.3s ease;
            flex-shrink: 0;
        }
        .env-carousel .dots span.active {
            background: #1a7ab5;
            width: 26px;
            border-radius: 5px;
        }

        .env-carousel-wrapper .carousel-footer {
            display: flex;
            justify-content: flex-end;
            margin-top: 10px;
        }

        /* ===== 第二部分：荣誉资质（静态网格） ===== */
        .part-two {
            margin-bottom: 5vw;
            padding-top: 6px;
        }
        .honor-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 24px;
            margin-top: 6px;
        }
        .honor-grid .honor-item {
            flex: 0 0 calc(20% - 20px);
            /* 每行5个 */
            min-width: 160px;
            background: #ffffff;
            border-radius: 14px;
            overflow: hidden;
            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
            transition: all 0.35s ease;
            border: 1px solid #eef3f8;
        }
        .honor-grid .honor-item:hover {
            transform: translateY(-6px);
            box-shadow: 0 12px 32px rgba(26, 122, 181, 0.12);
            border-color: #cde0f0;
        }
        .honor-grid .honor-item img {
            width: 100%;
            height: 170px;
            object-fit: cover;
            display: block;
            background: #e9edf2;
        }
        .honor-grid .honor-item .card-body {
            padding: 14px 16px 18px;
            text-align: center;
        }
        .honor-grid .honor-item .card-body h4 {
            font-size: 15px;
            font-weight: 600;
            color: #1a3a5c;
            margin-bottom: 4px;
        }
        .honor-grid .honor-item .card-body p {
            font-size: 13px;
            color: #7a8fa3;
            margin: 0;
        }

        /* ===== 第三部分：发展介绍 ===== */
        .part-three {
            margin-bottom: 5vw;
            padding: 3%;
            background: #fff;
            border-radius: 20px;
            border-left: 0px solid #1a7ab5;
        }
        .part-three .section-title {
            margin-bottom: 16px;
        }
        .part-three .section-title::after {
            width: 42px;
        }
        .part-three .dev-text {
            text-align: left;
            column-gap: 40px;
        }
        .part-three .dev-text p {
            font-size: 15px;
            color: #666;
            line-height: 1.6;
            margin-bottom: 12px;
            break-inside: avoid;
        }

        /* ===== 第四部分：就诊帮助 ===== */
        .part-four {
            margin-bottom: 6vw;
        }
        .part-four .section-title {
            margin-bottom: 28px;
        }
        .quick-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 22px;
        }
        .quick-item {
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            text-decoration: none;
            color: #2c3e50;
            transition: all 0.3s ease;
            border-radius: 16px;
            padding: 30px 15px 30px 15px;
            background: #fff;
            border: 1px solid #eef4fa;
        }
        .quick-item:hover {
            transform: translateY(-8px);
            box-shadow: 0 14px 36px rgba(26, 122, 181, 0.10);
            border-color: #b8d5eb;
            background: #ffffff;
        }
        .quick-item .icon-wrap {
            width: 70px;
            height: auto;
            border-radius: 0%;
            overflow: hidden;
            background: #e3edf7;
            margin-bottom: 20px;
            transition: all 0.3s ease;
            flex-shrink: 0;
        }
        .quick-item:hover .icon-wrap {
            box-shadow: 0 8px 24px rgba(26, 122, 181, 0.18);
            transform: scale(1.02);
        }
        .quick-item .icon-wrap img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
        .quick-item .quick-label {
            font-size: 18px;
            font-weight: normal;
            color: #333;
            letter-spacing: 0.5px;
        }

        /* ===== 响应式 ===== */
        @media (max-width: 1024px) {
            .container {
                padding: 24px 24px 40px;
            }
            .part-one {
                gap: 28px;
            }
            .part-one .left,
            .part-one .right {
                flex: 1 1 100%;
                min-width: 0;
            }
            .hospital-intro .intro-flex {
                flex-direction: column;
            }
            .hospital-intro .intro-img {
                flex: 0 0 auto;
                max-width: 100%;
                height: 200px;
                width: 100%;
            }
            .honor-grid .honor-item {
                flex: 0 0 calc(33.33% - 16px);
            }
            .quick-grid {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (max-width: 768px) {
            .container {
                padding: 16px 14px 30px;
            }
            .section-title {
                font-size: 21px;
            }
            .section-header .section-title {
                font-size: 21px;
            }
            .env-carousel .slide {
                height: 200px;
            }
            .honor-grid .honor-item {
                flex: 0 0 calc(50% - 12px);
            }
            .honor-grid .honor-item img {
                height: 130px;
            }
            .quick-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 14px;
            }
            .part-three .dev-text {
                columns: 1;
            }
            .part-three {
                padding: 20px 18px;
            }
            .env-carousel .arrow {
                width: 34px;
                height: 34px;
                font-size: 15px;
            }
            .btn-more {
                padding: 6px 20px;
                font-size: 13px;
            }
        }

        @media (max-width: 480px) {
            .honor-grid .honor-item {
                flex: 0 0 100%;
            }
            .quick-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 10px;
            }
            .quick-item .icon-wrap {
                width: 64px;
                height: 64px;
            }
            .env-carousel .slide {
                height: 160px;
            }
            .container {
                padding: 12px 10px 20px;
            }
            .part-one {
                gap: 18px;
            }
            .section-header {
                flex-wrap: wrap;
                gap: 10px;
            }
        }

        /* =============================================================
                   ★★★ 新增：移动端专用适配 (max-width: 767px) ★★★
                   所有文字字号使用 vw 单位，最小不小于 3vw
                   ============================================================= */
        @media (max-width: 767px) {

            /* ---------- 容器 ---------- */
            .container {
                padding: 2.5vw 3.2vw 6vw;
            }

            /* ---------- 面包屑 ---------- */
            .mbx {
                margin: 4vw 0 2vw auto;
                line-height: 5.5vw;
                white-space: normal;
                font-size: 3.2vw;
            }
            .mbx span,
            .mbx a {
                font-size: 3.2vw;
            }
            .mbx span {
                padding-left: 1.2vw;
            }

            /* ---------- 通用标题 ---------- */
            .section-title {
                font-size: 4.8vw !important;
                padding-bottom: 2.5vw;
                margin-bottom: 3.5vw;
                letter-spacing: 0.5px;
            }
            .section-title::after {
                width: 10vw;
                height: 0px;
            }

            .section-header {
                border-bottom: 1px dashed #ddd;
                margin-bottom: 3.5vw;
                flex-wrap: wrap;
                gap: 1.5vw;
                align-items: center;
            }
            .section-header .section-title {
                padding-bottom: 2.5vw;
            }

            /* ---------- "查看更多" 按钮 ---------- */
            .btn-more {
                font-size: 3.2vw !important;
                gap: 1.2vw;
                padding: 1.2vw 3vw;
                white-space: nowrap;
            }
            .btn-more:hover {
                gap: 2vw;
            }

            /* ---------- 第一部分 ---------- */
            .part-one {
                gap: 3.5vw;
                margin: 2vw 0 6vw 0;
                flex-direction: column;
            }
            .part-one .left,
            .part-one .right {
                flex: 1 1 100%;
                min-width: 0;
                padding: 4vw 4vw 5vw;
                border-radius: 4vw;
            }

            /* --- 医院概况 --- */
            .hospital-intro .intro-flex {
                flex-direction: column;
                gap: 3vw;
                margin-bottom: 2.5vw;
            }
            .hospital-intro .intro-img {
                flex: 0 0 auto;
                max-width: 100%;
                width: 100%;
                height: 42vw;
                border-radius: 3vw;
            }
            .hospital-intro .intro-img img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
            .hospital-intro .intro-text {
                font-size: 3.4vw !important;
                line-height: 1.75;
                color: #555;
                padding: 0 0.5vw;
                text-align: justify;
            }

            /* --- 环境轮播 --- */
            .env-carousel-wrapper .carousel-header h3 {
                font-size: 4.8vw;
            }

            .env-carousel {
                border-radius: 3vw;
            }
            .env-carousel .slide {
                height: 48vw;
                /* 移动端高度自适应 */
                flex: 0 0 50%;
            }
            .env-carousel .slide img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
            .env-carousel .slide .slide-label {
                bottom: 3vw;
                left: 3vw;
                padding: 0.8vw 3.2vw;
                font-size: 2.8vw;
                border-radius: 4vw;
            }

            .env-carousel .arrow {
                width: 9vw;
                height: 9vw;
                font-size: 4.5vw;
                box-shadow: 0 2vw 5vw rgba(0, 0, 0, 0.12);
            }
            .env-carousel .arrow-prev {
                left: 2.5vw;
            }
            .env-carousel .arrow-next {
                right: 2.5vw;
            }

            .env-carousel .dots {
                gap: 1.8vw;
                padding: 3vw 0 1.5vw;
            }
            .env-carousel .dots span {
                width: 2.8vw;
                height: 2.8vw;
                border-radius: 50%;
            }
            .env-carousel .dots span.active {
                width: 7vw;
                border-radius: 1.5vw;
            }

            /* ---------- 第二部分：荣誉资质 ---------- */
            .part-two {
                margin-bottom: 6vw;
                padding-top: 1vw;
            }
            .honor-grid {
                gap: 3.5vw;
                margin-top: 1.5vw;
            }
            .honor-grid .honor-item {
                flex: 0 0 calc(50% - 2vw);
                min-width: 0;
                border-radius: 3vw;
                border: 1px solid #eef3f8;
            }
            .honor-grid .honor-item img {
                height: 38vw;
                object-fit: cover;
            }
            .honor-grid .honor-item .card-body {
                padding: 3vw 3vw 4vw;
            }
            .honor-grid .honor-item .card-body h4 {
                font-size: 3.4vw;
            }
            .honor-grid .honor-item .card-body p {
                font-size: 2.8vw;
            }

            /* ---------- 第三部分：发展介绍 ---------- */
            .part-three {
                margin-bottom: 6vw;
                padding: 4vw 4.5vw 5vw;
                border-radius: 4vw;
                border-left: 0;
            }
            .part-three .section-title {
                margin-bottom: 2.5vw;
            }
            .part-three .section-title::after {
                width: 8vw;
            }
            .part-three .dev-text {
                columns: 1;
                column-gap: 0;
            }
            .part-three .dev-text p {
                font-size: 3.4vw !important;
                line-height: 1.75;
                color: #555;
                margin-bottom: 2.5vw;
                text-align: justify;
            }

            /* ---------- 第四部分：就诊帮助 ---------- */
            .part-four {
                margin-bottom: 6vw;
            }
            .part-four .section-title {
                margin-bottom: 3.5vw;
                font-size: 4.6vw !important;
            }

            .quick-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 3vw;
            }
            .quick-item {
                padding: 5vw 2vw 5vw;
                border-radius: 3.5vw;
                border: 1px solid #eef4fa;
                background: #fff;
                min-height: 28vw;
            }
            .quick-item .icon-wrap {
                width: 16vw;
                height: 16vw;
                margin-bottom: 3vw;
                border-radius: 0;
                background: #e3edf7;
            }
            .quick-item .icon-wrap img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
            }
            .quick-item .quick-label {
                font-size: 3.4vw !important;
                color: #333;
                letter-spacing: 0.3px;
                font-weight: normal;
            }

            /* ---------- 轮播箭头触摸优化 ---------- */
            .env-carousel .arrow {
                touch-action: manipulation;
            }

            /* ---------- 微调间距 ---------- */
            .part-one .left .section-header,
            .part-one .right .section-header {
                margin-bottom: 2.5vw;
            }

            /* 保证所有文字不小于 3vw */
            body,
            .container,
            .mbx,
            .mbx span,
            .mbx a,
            .section-title,
            .btn-more,
            .hospital-intro .intro-text,
            .env-carousel .slide .slide-label,
            .honor-grid .honor-item .card-body h4,
            .honor-grid .honor-item .card-body p,
            .part-three .dev-text p,
            .quick-item .quick-label,
            .part-four .section-title,
            .section-header .section-title {
                font-size: clamp(3vw, 3.4vw, 5vw);
            }

            /* 标题单独加大 */
            .section-title,
            .part-four .section-title,
            .env-carousel-wrapper .carousel-header h3 {
                font-size: clamp(4.2vw, 4.8vw, 5.5vw) !important;
            }

            /* 小字保持下限 */
            .mbx span,
            .mbx a,
            .env-carousel .slide .slide-label,
            .honor-grid .honor-item .card-body p {
                font-size: clamp(2.8vw, 3vw, 3.4vw) !important;
            }

            /* 按钮文字 */
            .btn-more {
                font-size: clamp(3vw, 3.2vw, 3.8vw) !important;
            }

            /* 快速标签 */
            .quick-item .quick-label {
                font-size: clamp(3.2vw, 3.4vw, 4vw) !important;
            }

            /* 正文统一 */
            .hospital-intro .intro-text,
            .part-three .dev-text p {
                font-size: clamp(3.2vw, 3.4vw, 3.8vw) !important;
            }

            /* ---------- 防止横向溢出 ---------- */
            .container {
                overflow-x: hidden;
            }
            .honor-grid .honor-item img,
            .quick-item .icon-wrap img,
            .hospital-intro .intro-img img,
            .env-carousel .slide img {
                max-width: 100%;
                height: 30vw;
            }
            .env-carousel .slide {
                height: auto;
            }
            .honor-grid .honor-item img {
                height: 38vw;
            }
            .quick-item .icon-wrap {
                width: 16vw;
                height: 16vw;
            }

            /* ---------- 触摸优化 ---------- */
            .quick-item,
            .honor-grid .honor-item,
            .env-carousel .arrow {
                -webkit-tap-highlight-color: rgba(26, 122, 181, 0.15);
            }
            .quick-item:active {
                transform: scale(0.97);
                transition-duration: 0.08s;
            }
            .honor-grid .honor-item:active {
                transform: scale(0.98);
                transition-duration: 0.08s;
            }
        }

        /* ---------- 小屏手机（< 380px）微调 ---------- */
        @media (max-width: 380px) {
            .container {
                padding: 2vw 2.5vw 5vw;
            }
            .quick-grid {
                gap: 2vw;
            }
            .quick-item {
                padding: 4vw 1.5vw 4vw;
                min-height: 26vw;
            }
            .quick-item .icon-wrap {
                width: 14vw;
                height: 14vw;
                margin-bottom: 2.5vw;
            }
            .quick-item .quick-label {
                font-size: 3.2vw !important;
            }
            .honor-grid .honor-item img {
                height: 34vw;
            }
            .env-carousel .slide {
                height: 44vw;
            }
            .section-title {
                font-size: 4.5vw !important;
            }
            .hospital-intro .intro-text,
            .part-three .dev-text p {
                font-size: 3.2vw !important;
            }
        }