/************************************/
/*** 	 01. Global Variables	  ***/
/************************************/

/* Source Han Sans SC 静态 400 字重（2026-10-11 由 VF 579KB 切出，-43%）*/
@font-face {
	font-family: "Source Han Sans SC";
	src: url("../webfonts/SourceHanSansSC-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

:root{
	--primary-color			: #000000;
	--secondary-color		: #F3F3FF;
	--text-color			: #949494;
	--accent-color			: #3267ff;
	--accent-color-two		: #506CD7;
	--white-color			: #FFFFFF;
	--divider-color			: #55617124;
	--dark-divider-color	: #FFFFFF24;
	--error-color			: rgb(230, 87, 87);
	--default-font			: "Source Han Sans SC", "DM Sans", sans-serif;
	--border-color			: #dfdcdc;
}

/************************************/
/*** 	   02. General css		  ***/
/************************************/

body{
	font-family: var(--default-font);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6em;
	background: var(--white-color);
	color: var(--text-color);
}

p{
	line-height: 1.6em;
	margin-bottom: 1.6em;
}

h1,
h2,
h3,
h4,
h5,
h6{
	margin :0;
	font-weight: 600;
	line-height: 1.2em;
	color: var(--primary-color);
}

figure{
	margin: 0;
}

img{
	max-width: 100%;
}

a{
	text-decoration: none;
}

a:hover{
	text-decoration: none;
	outline: 0;
}

a:focus{
	text-decoration: none;
	outline: 0;
}

html,
body{
	width: 100%;
	overflow-x: clip;
}

.container{
	max-width: 1300px;
}
.topbar .container,.main-header .container{
	max-width: 1860px;
}


.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl{
	padding-right: 15px;
	padding-left: 15px;
}

.image-anime{
	position: relative;
	overflow: hidden;
}

.image-anime:after{
	content: "";
	position: absolute;
	width: 200%;
	height: 0%;
	left: 50%;
	top: 50%;
	/*background-color: rgba(255,255,255,.3);*/
	/*transform: translate(-50%,-50%) rotate(-45deg);*/
	z-index: 1;
}

.image-anime:hover:after{
	height: 250%;
	transition: all 600ms linear;
	background-color: transparent;
}

.reveal{
	position: relative;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	visibility: hidden;
	overflow: hidden;
}

.reveal img{
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-webkit-transform-origin: left;
	transform-origin: left;
}

.row{
	margin-right: -15px;
	margin-left: -15px;
}

.row > *{
	padding-right: 15px;
	padding-left: 15px;
}

.row.no-gutters{
	margin-right: 0px;
	margin-left: 0px;
}

.row.no-gutters > *{
	padding-right: 0px;
	padding-left: 0px;
}

.btn-default{
	position: relative;
	display: block;
	font-size: 16px;
	font-weight: 600;
	line-height: 1em;
	text-transform: capitalize;
	background: var(--accent-color);
	color: var(--white-color);
	border-radius: 50px;
	padding: 6px 10px 6px 20px;
	border: none;
	overflow: hidden;
	transition: all 0.5s ease-in-out;
	z-index: 1;
}
.btn-default span {
	position: relative;
	padding-right: 15px;
}
.btn-default span:before {
	position: absolute;
	content: '';
	width: 34px;
	height: 34px;
	line-height: 34px;
	background: #fff;
	text-align: center;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-position: center;
	top: -7px;
	right: -23px;
	color:var(--accent-color)
}

.btn-default:hover{
	background-color: transparent;
}

.btn-default::after,
.btn-default::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 0;
	height: 100%;
	background: var(--primary-color);
	transform: skew(15deg);
	transition: all 0.4s ease-in-out;
	z-index: -1;
}

.btn-default::before{
	left: -10px;
}

.btn-default::after{
	right: -10px;
}

.btn-default:hover::after,
.btn-default:hover::before{
	width: 60%;
}

/* Header appointment button: arrow inside white circle */
.btn-header-appointment span{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding-right: 0;
	margin-right: 6px;
}

.btn-header-appointment span:before{
	display: none;
}

.btn-header-appointment i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	background: var(--white-color);
	color: var(--accent-color);
	border-radius: 50%;
	font-size: 14px;
	line-height: 1;
	padding-left: 2px;
	transition: transform 0.3s ease-in-out;
}

.btn-header-appointment:hover i{
	transform: translateX(3px);
}

.equipment-modal-open{
	overflow: hidden;
}

.cb-cursor:before{
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
}


.bg-section{
	background-color: var(--secondary-color);
	width: 100%;
	/*max-width: 1820px;*/
	margin: 0 auto;
}

.section-row{
	position: relative;
	margin-bottom: 80px;
	z-index: 1;
}

.section-row .section-title{
	text-align: center;
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
}

.section-title-content p{
	margin: 0;
}

.section-title-content.dark-section p{
	color: var(--white-color);
}

.section-btn{
	text-align: right;
}

.section-title{
	position: relative;
	margin-bottom: 40px;
	z-index: 1;
}

.section-title h3{
	position: relative;
	display: inline-block;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4em;
	text-transform: capitalize;
	color: var(--accent-color);
	margin-bottom: 10px;
}

.section-title h1{
	font-size: 68px;
	font-weight: 600;
	line-height: 1.1em;
	letter-spacing: -0.02em;
	color: var(--primary-color);
	margin-bottom: 0;
	cursor: none;
}

.section-title h2{
	font-size: 46px;
	font-weight: 600;
	line-height: 1.1em;
	letter-spacing: -0.02em;
	color: var(--primary-color);
	margin-bottom: 0;
	cursor: none;
}

.section-title p{
	margin-top: 20px;
	margin-bottom: 0;
}

.section-title.dark-section p,
.section-title.dark-section h1,
.section-title.dark-section h2,
.section-title.dark-section h3{
	color: var(--white-color);
}

.section-title.dark-section h3::before{
	filter: brightness(0) invert(1);
}

.help-block.with-errors ul{
	margin: 0;
	text-align: left;
}

.help-block.with-errors ul li{
	color: var(--error-color);
	font-size: 14px;
	font-weight: 500;
}

/************************************/
/**** 	   03. Header css		 ****/
/************************************/

.topbar{
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
	padding: 15px 0;
}

.topbar-contact-info ul{
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
}

.topbar-contact-info ul li{
	border-left: 1px solid var(--white-color);
	line-height: normal;
	margin-left: 20px;
	padding-left: 20px;
}

.topbar-contact-info ul li:first-child{
	border-left: none;
	margin-left: 0px;
	padding-left: 0px;
}

.topbar-contact-info ul li a{
	font-size: 14px;
	font-weight: 400;
	color: var(--white-color);
	display: flex;
	align-items: center;
}

.topbar-contact-info ul li a span{
	font-weight: 700;
	margin-right: 3px;
}

.topbar-contact-info ul li a i{
	font-size: 16px;
	color: var(--white-color);
	margin-right: 10px;
	transition: all 0.3s ease-in-out;
}

.topbar-contact-info ul li a:hover i{
	color: var(--primary-color);
}

.topbar-social-details{
	display: flex;
	align-items: center;
	justify-content: end;
}

/*.topbar-social-icons{*/
/*	border-right: 1px solid var(--white-color);*/
/*	line-height: normal;*/
/*	margin-right: 20px;*/
/*	padding-right: 20px;*/
/*}*/

.topbar-social-icons ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.topbar-social-icons ul li{
	display: inline-block;
	margin-right: 4px;
}

.topbar-social-icons ul li:last-child{
	margin-right: 0;
}

.topbar-social-icons ul li a{
	color: inherit;
}

.topbar-social-icons ul li a i{
	font-size: 16px;
	color: var(--white-color);
	transition: all 0.3s ease-in-out;
}

.topbar-social-icons ul li a:hover i{
	color: var(--primary-color);
}
.topbar-contact-details{
	border-right: 1px solid var(--white-color);
	margin-right: 20px;
	padding-right: 10px;
}
header.main-header{
	position: relative;
	z-index: 100;
}

header.main-header .header-sticky{
	position: relative;
	top: 0;
	z-index: 100;
}

header.main-header .header-sticky.hide{
	transform: translateY(-100%);
	transition: transform 0.3s ease-in-out;
	border-radius: 0;
}

header.main-header .header-sticky.active{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	border-radius: 0;
	transform: translateY(0);
	background: var(--white-color);
	border-bottom: 1px solid var(--divider-color);
}

.navbar{
	padding: 25px 0;
	align-items: center;
}

.navbar-brand{
	padding: 0;
	margin: 0;
}

.navbar-brand img{
	max-height: 60px;
	width: auto;
}

.main-menu .nav-menu-wrapper{
	flex: 1;
	text-align: center;
	margin: 0 20px;
}
.main-menu .nav-menu-wrapper .active .nav-link{
	color: var(--accent-color);
}
.main-menu .nav-menu-wrapper > ul{
	align-items: center;
	display: inline-flex;
}

.main-menu ul li{
	margin: 0;
	position: relative;
}

.main-menu ul li.nav-item .nav-link{
	position: relative;
	font-size: 16px;
	font-weight: 500;
	padding: 15px 20px;
	color: var(--primary-color);
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
}

.main-menu .navbar-nav li > ul li a::before{
	display: none;
}

.main-menu ul li.submenu > a:after{
	content: '\f107';
	font-family: 'FontAwesome';
	font-weight: 900;
	line-height: normal;
	font-size: 14px;
	margin-left: 8px;
	margin-top: 6px;
}

.main-menu ul li.nav-item .nav-link:hover,
.main-menu ul li.nav-item .nav-link:focus{
	color: var(--accent-color);
}

.main-menu ul ul{
	visibility: hidden;
	opacity: 0;
	transform: scaleY(0.8);
	transform-origin: top;
	padding: 0;
	margin: 0;
	list-style: none;
	width: 230px;
	border-radius: 20px;
	position: absolute;
	left: 0;
	top: 100%;
	background: var(--white-color);
	text-align: left;
	transition: all 0.3s ease-in-out;
}

.main-menu ul li.submenu:first-child ul{
	width: 230px;
}

.main-menu ul ul ul{
	left: 100%;
	top: 0;
	text-align: left;
}

.main-menu ul li:hover > ul{
	visibility: visible;
	opacity: 1;
	transform: scaleY(1);
	padding: 5px 0;
}

.main-menu ul li.submenu ul li.submenu > a:after{
	content: '\f105';
	float: right;
}

.main-menu ul ul li{
	margin: 0;
	padding: 0;
}
.main-menu ul ul li:not(:last-child){
	border-bottom:1px solid var(--divider-color)
}

.main-menu ul ul li.nav-item .nav-link{
	color: var(--primary-color);
	padding: 6px 20px;
	transition: all 0.3s ease-in-out;
}

.main-menu ul li:hover > ul{
	visibility: visible;
	opacity: 1;
	transform: scaleY(1);
	padding: 5px 0;
}

.main-menu ul ul li.nav-item .nav-link:hover,
.main-menu ul ul li.nav-item .nav-link:focus{
	color: var(--accent-color);
	background-color: transparent;
	padding: 6px 20px 6px 23px !important;
}

.main-menu ul li.highlighted-menu{
	display: none;
}

.header-btn{
	text-align: right;
}
.main-header .menu-right-content {
	position: relative;
	display: flex;
	align-items: center
}

.main-header .menu-right-content .support-box {
	position: relative;
	display: block;
	margin-right: 75px;
}
.main-header .menu-right-content .support-box:before {
	position: absolute;
	content: '';
	background: var(--border-color);
	width: 1px;
	height: 100%;
	top: 0px;
	right: -10px;
}
.responsive-menu,
.navbar-toggle{
	display: none;
}

.responsive-menu{
	top: 0;
	position: relative;
}

.slicknav_btn{
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin: 0;
	border-radius: 6px;
}

.slicknav_icon .slicknav_icon-bar{
	display: block;
	width: 100%;
	height: 3px;
	width: 22px;
	background-color: var(--white-color);
	border-radius: 6px;
	margin: 4px auto !important;
	transition: all 0.1s ease-in-out;
}

.slicknav_icon .slicknav_icon-bar:first-child{
	margin-top: 0 !important;
}

.slicknav_icon .slicknav_icon-bar:last-child{
	margin-bottom: 0 !important;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(1){
	transform: rotate(-45deg) translate(-5px, 5px);
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(2){
	opacity: 0;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(3){
	transform: rotate(45deg) translate(-5px, -5px);
}

.slicknav_menu{
	position: absolute;
	width: 100%;
	padding: 0;
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
}

.slicknav_menu ul{
	margin: 5px 0;
}

.slicknav_menu ul ul{
	margin: 0;
}

.slicknav_nav .slicknav_row,
.slicknav_nav li a{
	position: relative;
	font-size: 16px;
	font-weight: 500;
	text-transform: capitalize;
	padding: 8px 20px;
	color: var(--white-color);
	line-height: normal;
	margin: 0;
	border-radius: 0 !important;
	transition: all 0.3s ease-in-out;
}

.slicknav_nav a:hover,
.slicknav_nav a:focus,
.slicknav_nav .slicknav_row:hover{
	background-color: transparent;
	color: var(--primary-color);
}

.slicknav_menu ul ul li a{
	padding: 8px 20px 8px 30px;
}

.slicknav_arrow{
	font-size: 0 !important;
}

.slicknav_arrow:after{
	content: '\f107';
	font-family: 'FontAwesome';
	font-weight: 900;
	font-size: 12px;
	margin-left: 8px;
	color: var(--white-color);
	position: absolute;
	right: 15px;
	top: 15px;
	transition: all 0.3s ease-out;
}

.slicknav_open > a .slicknav_arrow:after{
	transform: rotate(-180deg);
	color: var(--primary-color);
}

/************************************/
/***        04. Hero css	      ***/
/************************************/

.hero{
	position: relative;
	background-image: url('../images/hero-bg-shape-1.png');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
	padding: 80px 0 0;
	overflow: hidden;
}





.hero.hero-bg-image::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: var(--primary-color);
	opacity: 50%;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.hero.hero-video .hero-bg-video{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

.hero.hero-video .hero-bg-video video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.hero-bg-image.hero-slider-layout{
	background: none;
	padding: 0;
}

.hero.hero-bg-image.hero-slider-layout .hero-slide{
	position: relative;
	padding: 0;
}



.hero.hero-bg-image.hero-slider-layout .hero-slide .hero-slider-image{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.hero.hero-bg-image.hero-slider-layout .hero-slide .hero-slider-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero.hero-bg-image.hero-slider-layout .hero-pagination{
	position: absolute;
	bottom: 50px;
	text-align: center;
	z-index: 2;
}

.hero.hero-bg-image.hero-slider-layout .hero-pagination .swiper-pagination-bullet{
	width: 12px;
	height: 12px;
	background: var(--white-color);
	opacity: 1;
	transition: all 0.3s ease-in-out;
	margin: 0 5px;
}

.hero.hero-bg-image.hero-slider-layout .hero-pagination .swiper-pagination-bullet-active{
	background-color: var(--accent-color);
}

.hero-content{
	position: relative;
	z-index: 2;
}

.hero.hero-bg-image .hero-content{
	width: 100%;
	max-width: 620px;
	margin: 0 auto;
	text-align: center;
}

.hero-content .section-title p{
	font-size: 20px;
}

.hero-btn{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px 20px;
}

.hero.hero-bg-image .hero-content .hero-btn{
	justify-content: center;
}

.google-rating{
	border-top: 1px solid var(--divider-color);
	margin-top: 40px;
	padding-top: 40px;
}

.google-rating ul{
	padding: 0;
	margin: 0;
	list-style: none;
}

.google-rating ul li{
	display: inline-block;
	font-weight: 500;
	text-transform: capitalize;
	color: var(--primary-color);
}

.google-rating ul li:last-child{
	margin-right: 0;
}

.google-rating ul li span{
	color: #FFA800;
}

.google-rating ul li i{
	font-size: 14px;
	color: #FFA800;
}

.hero.hero-bg-image .hero-content .google-rating{
	border-color: var(--dark-divider-color);
}

.hero.hero-bg-image .hero-content .google-rating ul li{
	color: var(--white-color);
}

.hero-image{
	position: relative;
	background: url('../images/hero-img-bg-shape.png') no-repeat;
	background-position: top 30px center;
	background-size: auto;
}

.hero-img img{
	width: 100%;
	aspect-ratio: 1 / 1.273;
	object-fit: contain;
}

.excerpt-doctor-box{
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	width: 100%;
	max-width: 200px;
	display: inline-block;
	background: var(--white-color);
	border-radius: 20px;
	overflow: hidden;
	animation: excerptmove 3s infinite linear alternate;
}

@keyframes excerptmove{
	50%{
		left: 65px;
	}
}

.excerpt-doctor-box::before{
	content: '';
	position: absolute;
	top: 100%;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: var(--accent-color);
	z-index: 0;
	transition: all 0.4s ease-in-out;
	z-index: 0;
}

.excerpt-doctor-box:hover::before{
	top: 0;
}

.excerpt-doctor-images{
	position: relative;
	display: flex;
	justify-content: center;
	border-bottom: 1px solid var(--divider-color);
	text-align: center;
	padding: 12px;
	z-index: 1;
	transition: all 0.3s ease-in-out;
}

.excerpt-doctor-box:hover .excerpt-doctor-images{
	border-color: var(--dark-divider-color);
}

.excerpt-doctor-image{
	display: inline-block;
	margin-left: -12px;
	overflow: hidden;
}

.excerpt-doctor-image:first-child{
	margin: 0;
}

.excerpt-doctor-image figure{
	display: block;
	width: 44px;
	height: 44px;
	border: 1px solid var(--white-color);
	border-radius: 50%;
}

.excerpt-doctor-image img{
	width: 100%;
}

.excerpt-doctor-content{
	position: relative;
	padding: 12px;
	text-align: center;
	z-index: 1;
}

.excerpt-doctor-content p{
	color: var(--primary-color);
	margin: 0;
	transition: all 0.3s ease-in-out;
}

.excerpt-doctor-box:hover .excerpt-doctor-content p{
	color: var(--white-color);
}

.satisfied-clients-box{
	position: absolute;
	bottom: 22%;
	right: 0;
	display: inline-flex;
	align-items: center;
	background: var(--white-color);
	border-radius: 100px;
	padding: 15px 20px;
	overflow: hidden;
	animation: clientsmove 3s infinite linear alternate;
}

@keyframes clientsmove{
	50%{
		right: 35px;
	}
}

.satisfied-clients-box::before{
	content: '';
	position: absolute;
	top: 0;
	right: 100%;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: var(--primary-color);
	z-index: 0;
	transition: all 0.4s ease-in-out;
	z-index: 0;
}

.satisfied-clients-box:hover::before{
	right: 0;
}

.satisfied-clients-box .icon-box{
	position: relative;
	width: 42px;
	height: 42px;
	background: var(--accent-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	z-index: 1;
}

.satisfied-clients-box .icon-box img{
	width: 100%;
	max-width: 25px;
}

.satisfied-clients-content{
	position: relative;
	width: calc(100% - 52px);
	z-index: 1;
}

.satisfied-clients-content h3{
	font-size: 20px;
	font-weight: 600;
	transition: all 0.3s ease-in-out;
}

.satisfied-clients-content p{
	text-transform: capitalize;
	margin: 0;
	transition: all 0.3s ease-in-out;
}

.satisfied-clients-box:hover .satisfied-clients-content p,
.satisfied-clients-box:hover .satisfied-clients-content h3{
	color: var(--white-color);
}

/************************************/
/***     06. Our Services css     ***/
/************************************/

.our-services{
	background-image: url('../images/section-bg-img-1.png');
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: auto;
	padding: 100px 0;
}

.service-item{
	background-color: var(--white-color);
	border-radius: 46px;
	height: calc(100% - 40px);
	margin-bottom: 30px;
	padding: 40px;
	transition: all 0.3s ease-in-out;
}

.service-item:hover{
	transform: translateY(-5px);
}

.service-header{
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.service-item-box{
	display: flex;
	align-items: center;
}

.service-item-box .icon-box{
	position: relative;
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
	border-radius: 50%;
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-right: 15px;
	transition: all 0.5s ease-in-out;
}

.service-item-box .icon-box::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: var(--primary-color);
	border-radius: 50%;
	width: 100%;
	height: 100%;
	transform: scale(0);
	transition: all 0.4s ease-in-out;
}

.service-item:hover .service-item-box .icon-box::before{
	transform: scale(1);
}
.service-item:hover{
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}




/* 字体图标(zlkm 科目卡): 蓝色渐变圆底由 .icon-box 提供, ::before 黑圆为 hover 遮罩 */
.service-item-box .icon-box img,
.service-item-box .icon-box i{
	position: relative;
	max-width: 30px;
	z-index: 1;
}

.service-item-box .icon-box i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	color: var(--white-color);
	transition: color 0.4s ease-in-out;
}

/* hover 黑圆展开时图标保持白色 */

.service-item-content{
	width: calc(100% - 75px);
}

.service-item-content h3{
	font-size: 20px;
	text-transform: capitalize;
}

.service-readmore{
	margin-left: 10px;
}

.service-readmore img{
	max-width: 40px;
	transition: all 0.3s ease-in-out;
}

.service-readmore a:hover img{
	filter: brightness(1) invert(0.5);
}

.service-body{
	margin-bottom: 30px;
}

.service-body p{
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.service-image a{
	display: block;
	border-radius: 26px;
	overflow: hidden;
	cursor: none;
}

.service-image img{
	aspect-ratio: 1 / 0.62;
	object-fit: cover;
	border-radius: 26px;
	transition: all 0.4s ease-out;
}

.service-image:hover img{
	transform: scale(1.1)
}

.more-service-content{
	width: 100%;
	max-width: 630px;
	text-align: center;
	margin: 0 auto;
	margin-top: 20px;
}

/************************************/
/***    	10. Our FAQs css      ***/
/************************************/

.our-faqs{
	padding: 100px 0;
}

.our-faqs-content{
	position: sticky;
	top: 30px;
	margin-right: 50px;
}

/* Faq CTA (设计图: 浅蓝胶囊热线 + 在线挂号按钮[复用 btn-default]) */
.faq-cta-actions{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 30px;
}

.faq-cta-hotline{
	display: inline-flex;
	align-items: center;
	background: var(--white-color);
	border-radius: 50px;
	padding: 6px 26px;
	transition: background 0.3s ease-in-out;
}

.faq-cta-hotline:hover{
	background: #E6E9FF;
}

.faq-cta-hotline-label{
	color: var(--primary-color);
	font-size: 15px;
	font-weight: 500;
}

.faq-cta-hotline a{
	color: var(--accent-color);
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	letter-spacing: 0.02em;
}

.faq-cta-hotline a:hover{
	text-decoration: underline;
}

/* 在线挂号胶囊按钮(设计图: 蓝底胶囊 + 白字 + 右侧白色圆箭头) */
.faq-cta-btn{
	position: relative;
	display: inline-flex;
	align-items: center;
	background: var(--accent-color);
	color: var(--white-color);
	font-size: 15px;
	font-weight: 600;
	line-height: 1em;
	border-radius: 50px;
	padding: 12px 14px 12px 24px;
	text-decoration: none;
	border: none;
	transition: background 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.faq-cta-btn span{
	padding-right: 34px;
}

/* 右侧白色圆形箭头 */
.faq-cta-btn i{
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--white-color);
	color: var(--accent-color);
	font-size: 13px;
	border-radius: 50%;
	transition: transform 0.3s ease-in-out;
}

.faq-cta-btn:hover{
	background: var(--primary-color);
	color: var(--white-color);
	transform: translateY(-2px);
}

.faq-cta-btn:hover i{
	transform: translateY(-50%) translateX(3px);
}

.faq-accordion .accordion-item{
	border-bottom: 1px solid var(--divider-color);
	margin-bottom: 30px;
	padding-bottom: 30px;
}

.faq-accordion .accordion-item:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.faq-accordion .accordion-header .accordion-button{
	font-size: 20px;
	font-weight: 600;
	line-height: 1.2em;
	color: var(--primary-color);
	padding-right: 30px;
	transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed){
	color: var(--accent-color);
	padding-bottom: 15px;
}

.faq-accordion .accordion-item .accordion-button::after,
.faq-accordion .accordion-item .accordion-button.collapsed::after{
	content: '\f107';
	font-family: 'FontAwesome';
	position: absolute;
	right: 0;
	top: 0;
	font-size: 20px;
	color: var(--primary-color);
	transition: all 0.3s ease-in-out;
}

.faq-accordion .accordion-button:not(.collapsed)::after{
	transform: rotate(180deg);
	color: var(--accent-color);
}

.faq-accordion .accordion-item .accordion-body{
	padding-right: 30px;
}

.faq-accordion .accordion-item:last-child .accordion-body{
	padding-bottom: 0;
}

.faq-accordion .accordion-item .accordion-body p{
	color: var(--text-color);
	margin-bottom: 15px;
}

.faq-accordion .accordion-item .accordion-body p:last-child{
	margin-bottom: 0;
}




/************************************/
/***      15. Latest News css     ***/
/************************************/

.latest-news{
	padding: 50px 0 70px;
}

.post-item{
	height: calc(100% - 30px);
	margin-bottom: 30px;
}



.post-featured-image a{
	display: block;
	cursor: none;
}

.post-featured-image img{
	width: 100%;
	aspect-ratio: 1 / 0.79;/*宽* 0.79=高; 恢复预留空间, 防止懒加载/图片加载时布局抖动(CLS)*/
	border-top-left-radius: 26px;
	border-top-right-radius: 26px;
	object-fit: cover;
	transition: all 0.4s ease-in-out;
}

.post-item:hover .post-featured-image img{
	transform: scale(1.1);
}

.post-item-body{
	border: 1px solid var(--divider-color);
	 border-bottom-left-radius: 26px;
	border-bottom-right-radius: 26px;
	padding: 20px 15px;
	z-index: 1;
}

.post-item-meta{
	margin-bottom: 15px;
}

.post-item-meta ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.post-item-meta ul li{
	position: relative;
	color: var(--text-color);
	text-transform: capitalize;
	display: inline-block;
	margin-right: 24px;
}

.post-item-meta ul li:last-child{
	margin-right: 0;
}

.post-item-meta ul li:before{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(18px, -50%);
	height: 6px;
	width: 6px;
	border-radius: 50%;
	background: var(--divider-color);
}

.post-item-meta ul li:last-child::before{
	display: none;
}

.post-item-meta ul li a{
	color: inherit;
}

.post-item-content{
	margin-bottom: 15px;
}

.post-item-content h2{
	color: var(--primary-color);
	font-size: 20px;
	line-height: 1.5em;
	letter-spacing: 0.02em;
	margin-bottom: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.post-item-content h2 a{
	color: inherit;
}

.accordion-body p{
	line-height: 1.7em;
	letter-spacing: 0.01em;
}

.readmore-btn{
	position: relative;
	color: var(--primary-color);
	font-size: 16px;
	font-weight: 600;
	text-transform: capitalize;
	padding-right: 30px;
	transition: all 0.4s ease-in-out;
}

.readmore-btn:hover{
	color: var(--primary-color);
}

.readmore-btn:after{
	content: '\f178';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 16px;
	color: var(--primary-color);
	display: inline-block;
	line-height: normal;
	position: absolute;
	top: 50%;
	transform: translate(0 , -50%);
	right: 0;
	transition: all 0.4s ease-in-out;
}


/* Latest News Slider */
.latest-news-slider .swiper-wrapper{
	cursor: none;
}

/* 新闻中心卡片 hover 阴影（复用专家团队 .expert-card 的阴影效果）
   仅作用于 .latest-news-slider 轮播, 不影响 newslist/ylsb/blog 等页面的 .post-item */
.latest-news-slider .post-item{
	position: relative;
	transition: box-shadow 0.4s ease-in-out;
	border-radius: 26px;
}

.latest-news-slider .post-item:hover{
	z-index: 2;
	border-radius: 26px;
	box-shadow: 10px 10px 30px -17px rgba(0, 0, 0, .55);
}

/* 大屏: 轮播右侧留边(25px 容纳阴影 offset10+blur30/2), 最后一张卡的阴影不被 .swiper overflow:hidden 裁掉 */
@media only screen and (min-width: 992px){
	.latest-news-slider .swiper{
		padding-right: 25px;
		margin-right: -25px; /* 视觉宽度不变, 只是把裁切线右移 */
	}
}

.latest-news-btn{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 50px;
}

.latest-news-btn .latest-news-btn-next,
.latest-news-btn .latest-news-btn-prev{
	position: relative;
	width: 40px;
	height: 40px;
	background-image: linear-gradient(to right, var(--accent-color) 0%, var(--accent-color-two) 50%, var(--accent-color) 100%);
	background-size: 200% auto;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s ease-in-out;
}

.latest-news-btn .latest-news-btn-next:hover,
.latest-news-btn .latest-news-btn-prev:hover{
	background-position: right center;
}

.latest-news-btn .latest-news-btn-next{
	margin-left: 20px;
}

.latest-news-slider .latest-news-btn-next::before,
.latest-news-slider .latest-news-btn-prev::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: url("../images/arrow-white.svg") no-repeat;
	background-position: center center;
	background-size: 16px auto;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: rotate(180deg);
	transition: all 0.4s ease-in-out;
}

.latest-news-slider .latest-news-btn-prev::before{
	transform: rotate(0deg);
}

/************************************/
/***    	16. Footer css  	  ***/
/************************************/

.main-footer.bg-section{
	background-color: var(--primary-color);
	padding: 80px 0 0;
}

.about-footer{
	width: 100%;
	max-width: 300px;
}

.footer-logo{
	margin-bottom: 60px;
	display: flex;
	align-items: center;
}

.footer-logo img{
	width: 100%;
	max-width: 180px;
}

.about-footer-content p{
	color: var(--white-color);
	margin-bottom: 0;
}

.footer-links:not(.footer-contact-box){
	text-align: center;
}
.footer-links h3{
	font-size: 20px;
	color: var(--white-color);
	text-transform: capitalize;
	margin-bottom: 20px;
}

.footer-links ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-links ul li{
	position: relative;
	color: var(--white-color);
	margin-bottom: 10px;
	padding-left: 16px;
}

.footer-links ul li:last-child{
	margin-bottom: 0;
}



.footer-links ul li:hover::before{
	background-color: var(--white-color);
}

.footer-links ul li a{
	text-transform: capitalize;
	color: inherit;
	transition: all 0.3s ease-in-out;
}

.footer-links ul li:hover a{
	color: var(--accent-color);
}

.footer-contact-item{
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.footer-contact-item:last-child{
	margin-bottom: 0;
}

/* 字体图标: 电话/地址(已取消圆形背景, 纯图标) */
.footer-contact-item .icon-box{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
}

.footer-contact-item .icon-box i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	color: var(--accent-color);
	transition: color 0.3s ease-in-out;
}

.footer-contact-item:hover .icon-box i{
	color: var(--primary-color);
}

.footer-contact-content{
	width: calc(100% - 50px);
}

.footer-contact-content p{
	color: var(--white-color);
	margin: 0;
}

/* Footer 分隔线(设计图: 主内容与友情链接之间的全宽细灰线) */
.footer-divider{
	height: 1px;
	width: 100%;
	background: rgba(255, 255, 255, 0.15);
	margin-top: 50px;
}

/* Footer 分隔线下版权区: 与友情链接拉开距离 */
.footer-copyright{
	padding: 30px 0;
	margin-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
}

/* Footer 微信公众号二维码: 标题 + 下划线 + 二维码 */
.footer-qr{
	text-align: center;
}

.footer-qr h3{
	color: var(--white-color);
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 8px;
}


.footer-qr-img{
	display: inline-block;
	background: var(--white-color);
	padding: 6px;
	border-radius: 8px;
	margin-top:12px;
}

.footer-qr-img img{
	display: block;
	max-width: 110px;
	height: auto;
}

/* Footer 友情链接: 标签独占一行, 链接另起一行(设计图) */
.footer-friend-links{
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom:18px;
}

.footer-friend-links-label{
	color: var(--white-color);
	font-size: 15px;
	font-weight: 600;
}

/* 链接行: 再包一层水平排列 */
.footer-friend-links .footer-friend-links-list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 26px;
}

.footer-friend-links a{
	color: var(--text-color);
	font-size: 14px;
	text-decoration: none;
	transition: color 0.3s ease-in-out;
}

.footer-friend-links a:hover{
	color: var(--accent-color);
}

.footer-copyright-text{
	text-align: left;
}

.footer-copyright-text p{
	color: var(--white-color);
	margin: 0;
}

.footer-terms-condition ul{
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: right;
}

.footer-terms-condition ul li{
	position: relative;
	display: inline-block;
	margin-right: 30px;
}

.footer-terms-condition ul li:last-child{
	margin-right: 0;
}

.footer-terms-condition ul li:before{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(18px, -50%);
	height: 6px;
	width: 6px;
	border-radius: 50%;
	background: var(--accent-color);
}

.footer-terms-condition ul li:last-child:before{
	display: none;
}

.footer-terms-condition ul li a{
	color: var(--white-color);
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
}

.footer-terms-condition ul li:hover a{
	color: var(--accent-color);
}

/************************************/
/***    17. About Us Page css  	  ***/
/************************************/

.page-header{
	position: relative;
	background-image: url('../images/page-header-bg.webp');
	background-repeat: no-repeat;
	/*background-position: bottom center;*/
	background-size: cover;
	background-position: center center;
	padding: 125px 0;
	overflow: hidden;
}

.page-header-box{
	text-align: center;
}

.page-header-box h1{
	font-size: 68px;
	letter-spacing: -0.02em;
	color: var(--white-color);
	display: inline-block;
	margin-bottom: 20px;
}

.page-header-box ol{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 20px;
	margin: 0;
}

.page-header-box ol li.breadcrumb-item{
	font-size: 16px;
	font-weight: 600;
	text-transform: capitalize;
	color: var(--white-color);
}

.page-header-box ol li.breadcrumb-item a{
	color: inherit;
}

.page-header-box ol .breadcrumb-item+.breadcrumb-item::before{
	color: var(--white-color);
}

.our-approach{
	background-image: url('../images/section-bg-img-1.png');
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: auto;
	padding: 100px 0;
}

.our-approach-img figure{
	display: block;
	border-radius: 46px;
}

.our-approach-img img{
	width: 100%;
	aspect-ratio: 1 / 0.84;
	object-fit: cover;
	border-radius: 46px;
}

.our-approach-content{
	margin-left: 20px;
}

.vision-mission-nav{
	margin-bottom: 40px;
}

.vision-mission-nav .nav-tabs{
	padding: 0;
	margin: 0;
	list-style: none;
	display: inline-flex;
	border: none;
}

.vision-mission-nav ul li{
	margin-right: 30px;
}

.vision-mission-nav ul li:last-child{
	margin-right: 0;
}

.vision-mission-nav ul li .nav-link{
	background-color: var(--white-color);
	color: var(--accent-color);
	font-size: 16px;
	font-weight: 600;
	text-transform: capitalize;
	border-radius: 46px;
	border: none;
	padding: 12px 30px;
	transition: all 0.4s ease-in-out;
}

.vision-mission-nav ul li:hover .nav-link,
.vision-mission-nav ul li .nav-link.active{
	background-color: var(--accent-color);
	color: var(--white-color);
}

.vision-mission-img figure{
	display: block;
	border-radius: 46px;
}

.vision-mission-img img{
	width: 100%;
	aspect-ratio: 1 / 0.66;
	object-fit: cover;
	border-radius: 46px;
}

.vision-mission-content ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.vision-mission-content ul li{
	position: relative;
	margin-bottom: 15px;
	padding-left: 30px;
}

.vision-mission-content ul li:last-child{
	margin-bottom: 0;
}

.vision-mission-content ul li:after{
	content: '\f058';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 20px;
	color: var(--accent-color);
	display: inline-block;
	line-height: normal;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.our-team.about-team{
	padding: 100px 0 70px;
}

.our-facility{
	background-image: url('../images/section-bg-img-1.png');
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: auto;
	padding: 100px 0;
}

.our-facility-item{
	position: relative;
	background: var(--white-color);
	border-radius: 46px;
	height: calc(100% - 30px);
	margin-bottom: 30px;
	padding: 40px;
	overflow: hidden;
}

.our-facility-item:before{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: var(--primary-color);
	transition: all 0.4s ease-in-out;
	z-index: 0;
}

.our-facility-item:hover:before{
	top: 0;
}

.our-facility-item .icon-box{
	position: relative;
	width: 60px;
	height: 60px;
	background-image: linear-gradient(to right, var(--accent-color) 0%, var(--accent-color-two) 50%, var(--accent-color) 100%);
	background-size: 200% auto;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
	z-index: 1;
	transition: all 0.3s ease-in-out;
}

.our-facility-item:hover .icon-box{
	background-position: right center;
}

.our-facility-item .icon-box img{
	max-width: 30px;
}

.our-facility-content{
	position: relative;
	z-index: 1;
}

.our-facility-content h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 15px;
	transition: all 0.3s ease-in-out;
}

.our-facility-content p{
	margin: 0;
	transition: all 0.3s ease-in-out;
}

.our-facility-item:hover .our-facility-content h3,
.our-facility-item:hover .our-facility-content p{
	color: var(--white-color);
}

.our-facility-footer{
	text-align: center;
	margin-top: 10px;
}

.our-facility-footer p{
	margin: 0;
}

.our-facility-footer p span{
	background-color: var(--accent-color);
	color: var(--white-color);
	border-radius: 100px;
	text-transform: capitalize;
	line-height: 1.1em;
	padding: 2px 10px;
	margin-right: 5px;
}

.our-facility-footer a{
	font-weight: 700;
	text-decoration: underline;
	text-transform: capitalize;
	color: var(--accent-color);
	transition: all 0.3s ease-in-out;
}

.our-facility-footer a:hover{
	color: var(--primary-color);
}

.cta-section.page-cta-section{
	margin: 100px auto;
}

/************************************/
/***    18. Services Page css  	  ***/
/************************************/

.page-service{
	padding: 100px 0 70px;
}

.page-service .service-item{
	border: 1px solid var(--divider-color);
}

/************************************/
/***   19. Services Single css    ***/
/************************************/

.page-service-single{
	padding: 100px 0;
}

.service-sidebar{
	position: sticky;
	top: 30px;
	margin-right: 30px;
}


.service-catagery-list{
	border: 1px solid var(--divider-color);
	border-radius: 46px;
	padding: 40px;
	margin-bottom: 40px;
	overflow: hidden;
}

.service-catagery-list h3{
	font-size: 20px;
	font-weight: 600;
	text-transform: capitalize;
	margin-bottom: 30px;
}

.service-catagery-list ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.service-catagery-list ul li{
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 15px;
	margin-bottom: 15px;
	transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:last-child{
	margin: 0;
	padding: 0;
	border-bottom: none;
}

.service-catagery-list ul li a{
	position: relative;
	display: block;
	text-transform: capitalize;
	color: var(--text-color);
	transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li a:hover,.service-catagery-list ul .active a{
	color: var(--accent-color);
}

.service-catagery-list ul li a::before{
	content: '\f061';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 16px;
	color: var(--accent-color);
	display: inline-block;
	line-height: normal;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.4s ease-in-out;
}

.service-catagery-list ul li a:hover:before{
	transform: translateY(-50%) rotate(0);
	filter: brightness(0) invert(0);
}

.sidebar-cta-box{
	position: relative;
	background: var(--accent-color-two);
	border-radius: 46px;
	padding: 40px;
	text-align: center;
	overflow: hidden;
	margin-bottom: 40px;
}

.sidebar-cta-box::after{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: var(--primary-color);
	border-radius: 46px;
	transition: all 0.4s ease-in-out;
	z-index: 0;
}

.sidebar-cta-box:hover:after{
	top: 0;
	border-radius: 0;
}

.sidebar-cta-box .icon-box{
	position: relative;
	margin-bottom: 20px;
	z-index: 1;
}

.sidebar-cta-box .icon-box img{
	max-width: 50px;
}

.sidebar-cta-box .icon-box i{
	font-size: 56px;
	color: var(--white-color);
	line-height: 1;
	display: inline-block;
}

.cta-contact-content{
	position: relative;
	margin-bottom: 20px;
	z-index: 1;
}

.cta-contact-content h3{
	color: var(--white-color);
	font-size: 46px;
	margin-bottom: 5px;
}

.cta-contact-content p{
	color: var(--white-color);
	margin: 0;
}

.cta-contact-btn .btn-default.btn-phone{
	background: var(--white-color);
	color: var(--accent-color);
	width:50%;
	margin:0 auto;
}

.cta-contact-btn .btn-default.btn-phone:hover{
	background: transparent;
	color: var(--white-color);
}

.cta-contact-btn .btn-default.btn-phone::before,
.cta-contact-btn .btn-default.btn-phone::after{
	background: var(--accent-color);
}

/* Sidebar Follow Box (关注我们 / 联系电话) */
.sidebar-follow-box{
	border: 1px solid var(--divider-color);
	border-radius: 46px;
	padding: 40px;
	margin-bottom: 40px;
	overflow: hidden;
}

.sidebar-follow-box h3{
	font-size: 20px;
	font-weight: 600;
	text-transform: capitalize;
	margin-bottom: 20px;
}

.sidebar-follow-social ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.sidebar-follow-social ul li{
	display: inline-block;
	margin-right: 12px;
}

.sidebar-follow-social ul li:last-child{
	margin-right: 0;
}

.sidebar-follow-social ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--accent-color);
	color: var(--white-color);
	font-size: 18px;
	transition: all 0.3s ease-in-out;
}

.sidebar-follow-social ul li a:hover{
	background: var(--primary-color);
	transform: translateY(-3px);
}

.sidebar-follow-social ul li a i{
	color: inherit;
}

.sidebar-follow-phone{
	margin-top: 30px;
}

.sidebar-follow-phone a{
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 22px;
	font-weight: 600;
	color: var(--accent-color);
	transition: color 0.3s ease-in-out;
}

.sidebar-follow-phone a i{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--accent-color);
	color: var(--white-color);
	font-size: 16px;
	transition: background 0.3s ease-in-out;
}

.sidebar-follow-phone a:hover{
	color: var(--primary-color);
}

.sidebar-follow-phone a:hover i{
	background: var(--primary-color);
}

/* Service Post Navigation (上一篇 / 下一篇) */
.service-post-nav{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px 55px;
	flex-wrap: wrap;
	margin-top: 50px;
	padding-top: 30px;
	border-top: 1px solid var(--divider-color);
}

.service-post-nav .post-nav-link{
	font-size: 18px;
	font-weight: 500;
	color: var(--primary-color);
	transition: color 0.3s ease-in-out;
}

.service-post-nav .post-nav-link:hover{
	color: var(--accent-color);
}

.service-featured-image{
	margin-bottom: 40px;
}

.service-featured-image figure{
	display: block;
	border-radius: 46px;
}

.service-featured-image img{
	width: 100%;
	height: auto;
	border-radius: 46px;
}

.service-entry{
	margin-bottom: 40px;
}

.service-entry h2{
	font-size: 46px;
	letter-spacing: -0.02em;
	color: var(--accent-color);
	margin-bottom: 20px;
}

.service-entry p{
	margin-bottom: 20px;
}

.service-entry p:last-child{
	margin-bottom: 0;
}

.service-entry ul{
	flex-wrap: wrap;
	gap: 15px 20px;
	list-style: none;
	padding: 0;
	margin: 0 0 20px 0;
}

.service-entry ul li{
	position: relative;
	text-transform: capitalize;
}



.providing-services,
.services-comfort{
	margin-bottom: 40px;
}

.service-entry-images{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.service-entry-img{
	width: calc(50% - 15px);
}

.service-entry-img figure{
	display: block;
	border-radius: 46px;
}

.service-entry-img img{
	width: 100%;
	aspect-ratio: 1 / 0.835;
	object-fit: cover;
	border-radius: 46px;
}

/************************************/
/***    20. Blog Archive css  	  ***/
/************************************/

.page-blog{
	padding: 100px 0;
}

.page-blog .post-item{
	height: calc(100% - 40px);
	margin-bottom: 40px;
}

.page-pagination{
	margin-top: 20px;
	text-align: center;
}

.page-pagination ul{
	justify-content: center;
	padding: 0;
	margin: 0;
}

.page-pagination ul li a,
.page-pagination ul li span{
	display: flex;
	text-decoration: none;
	justify-content: center;
	align-items: center;
	background: var(--secondary-color);
	color: var(--primary-color);
	border-radius: 10px;
	width: 40px;
	height: 40px;
	margin: 0 5px;
	font-weight: 500;
	line-height: 1em;
	transition: all 0.3s ease-in-out;
}

.page-pagination ul li.active a,
.page-pagination ul li a:hover{
	background: var(--accent-color);
	color: var(--white-color);
}

/************************************/
/***    21. Blog Single css  	  ***/
/************************************/

.page-single-post{
	background-color: var(--white-color);
	padding: 100px 0;
}

.post-image{
	position: relative;
	margin-bottom: 30px;
}

.post-image figure{
	display: block;
	overflow: hidden;
}

.post-image figure,
.post-image img{
	aspect-ratio: 1 / 0.50;
	object-fit: cover;
	border-radius: 46px;
}

.post-content{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.post-entry{
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 30px;
	margin-bottom: 30px;
}

.post-entry:after{
	content: '';
	display: block;
	clear: both;
}

.post-entry a{
	color: var(--accent-color);
}

.post-entry h1,
.post-entry h2,
.post-entry h3,
.post-entry h4,
.post-entry h5,
.post-entry h6{
	font-weight: 600;
	line-height: 1.2em;
	margin: 0 0 0.6em;
}

.post-entry h1{
	font-size: 68px;
}

.post-entry h2{
	font-size: 46px;
}

.post-entry h3{
	font-size: 40px;
}

.post-entry h4{
	font-size: 30px;
}

.post-entry h5{
	font-size: 24px;
}

.post-entry h6{
	font-size: 18px;
}

.post-entry p{
	margin-bottom: 20px;
}

.post-entry p:last-child{
	margin-bottom: 0;
}

.post-entry p strong{
	color: var(--primary-color);
	font-size: 18px;
	font-weight: 600;
}

.post-entry ol{
	margin: 0 0 30px;
}

.post-entry ol li{
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: 600;
	color: var(--text-color);
}

.post-entry ul{
	padding: 0;
	margin: 20px 0 20px;
	padding-left: 20px;
}

.post-entry ul li{
	font-size: 18px;
	font-weight: 500;
	color: var(--text-color);
	position: relative;
	margin-bottom: 15px;
}

.post-entry ul li:last-child{
	margin-bottom: 0;
}

.post-entry ul ul,
.post-entry ul ol,
.post-entry ol ol,
.post-entry ol ul{
	margin-top: 20px;
	margin-bottom: 0;
}

.post-entry ul ul li:last-child,
.post-entry ul ol li:last-child,
.post-entry ol ol li:last-child,
.post-entry ol ul li:last-child{
	margin-bottom: 0;
}

.post-entry blockquote{
	background: url('../images/icon-blockquote.svg'), var(--secondary-color);
	background-repeat: no-repeat;
	background-position: 35px 30px;
	background-size: 58px;
	border-radius: 26px;
	padding: 30px 30px 30px 100px;
	margin-bottom: 30px;
}

.post-entry blockquote p{
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4em;
	color: var(--primary-color);
}

.post-entry blockquote p:last-child{
	margin-bottom: 0;
}

.tag-links{
	font-size: 22px;
	font-weight: 600;
	color: var(--primary-color);
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.post-tags .tag-links a{
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	text-transform: capitalize;
	background-image: linear-gradient(to right, var(--accent-color) 0%, var(--accent-color-two) 50%, var(--accent-color) 100%);
	background-size: 200% auto;
	color: var(--white-color);
	border-radius: 46px;
	padding: 8px 20px;
	transition: all 0.3s ease-in-out;
}

.post-tags .tag-links a:hover{
	background-position: right center;
}

.post-social-sharing{
	text-align: right;
}

.post-social-sharing ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.post-social-sharing ul li{
	display: inline-block;
	margin-right: 10px;
}

.post-social-sharing ul li:last-child{
	margin-right: 0;
}

.post-social-sharing ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background: var(--secondary-color);
	color: var(--accent-color);
	border-radius: 10px;
	width: 38px;
	height: 38px;
	transition: all 0.3s ease-in-out;
}

.post-social-sharing ul li:hover a{
	color: var(--white-color);
	background: var(--primary-color);
}

.post-social-sharing ul li a i{
	font-size: 18px;
	color: inherit;
}

/************************************/
/***    22. Doctors Page css  	  ***/
/************************************/

.page-team{
	padding: 100px 0 70px;
}

/************************************/
/***    23. Doctor Single css  	  ***/
/************************************/

.page-doctor-single{
	padding: 100px 0;
}

.doctor-single-sidebar{
	position: sticky;
	top: 30px;
	margin-right: 30px;
}

.doctor-sidebar-image figure{
	display: block;
}

.doctor-sidebar-image img{
	width: 100%;
	aspect-ratio: 1 / 1.15;
	object-fit: cover;
	border-radius: 46px 46px 0 0;
}

.doctor-sidebar-body{
	background-color: var(--secondary-color);
	padding: 40px;
}

.doctor-sidebar-body ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.doctor-sidebar-body ul li{
	display: inline-flex;
	width: 100%;
	border-bottom: 1px solid var(--divider-color);
	margin-bottom: 15px;
	padding-bottom: 15px;
}

.doctor-sidebar-body ul li:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.doctor-sidebar-body ul li span{
	font-size: 20px;
	font-weight: 600;
	text-transform: capitalize;
	color: var(--primary-color);
	width: 45%;
}

.doctor-sidebar-footer{
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 15px 40px;
	background-color: var(--primary-color);
	border-radius: 0 0 46px 46px;
}

.doctor-sidebar-footer span{
	font-size: 20px;
	font-weight: 600;
	text-transform: capitalize;
	color: var(--white-color);
}

.doctor-sidebar-footer ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.doctor-sidebar-footer ul li{
	display: inline-block;
	border-radius: 50%;
	margin-right: 10px;
}

.doctor-sidebar-footer ul li:last-child{
	margin-right: 0;
}

.doctor-sidebar-footer ul li a{
	border: 1px solid var(--white-color);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.doctor-sidebar-footer ul li:hover a{
	border-color: var(--accent-color-two);
}

.doctor-sidebar-footer ul li a i{
	color: var(--white-color);
	font-size: 18px;
	transition: all 0.3s ease-in-out;
}

.doctor-sidebar-footer ul li:hover a i{
	color: var(--accent-color-two);
}

.doctor-single-entry h2{
	font-size: 46px;
	margin-bottom: 20px;
	cursor: none;
}

.doctor-single-entry p{
	margin-bottom: 20px;
}

.doctor-single-entry p:last-child{
	margin-bottom: 0;
}

.doctor-single-entry ul{
	display: flex;
	flex-wrap: wrap;
	gap: 15px 20px;
	list-style: none;
	padding: 0;
	margin-bottom: 20px;
}

.doctor-single-entry ul li{
	position: relative;
	width: calc(50% - 10px);
	text-transform: capitalize;
	padding-left: 30px;
}

.doctor-single-entry ul li::before{
	content: '\f058';
	position: absolute;
	font-family: 'FontAwesome';
	font-size: 20px;
	font-weight: 900;
	line-height: normal;
	color: var(--accent-color);
	display: inline-block;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.doctor-member-info,
.doctor-member-experience,
.doctor-member-expertise{
	margin-bottom: 40px;
}

.doctor-member-experience{
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
}

.member-experience-info{
	width: calc(50% - 30px);
}

.member-experience-info-item{
	margin-bottom: 30px;
}

.member-experience-info-item:last-child{
	margin-bottom: 0;
}

.member-experience-info-item h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 15px;
}

.doctor-member-skills{
	width: calc(50% - 30px);
}

.skills-progress-bar{
	margin-bottom: 30px;
}

.skills-progress-bar:last-child{
	margin-bottom: 0;
}

.skills-progress-bar .skillbar .skill-data{
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.skills-progress-bar .skill-data .skill-title{
	font-size: 16px;
	text-transform: capitalize;
}

.skills-progress-bar .skill-data .skill-no{
	font-size: 16px;
	font-weight: 700;
	margin-left: 20px;
}

.skills-progress-bar .skillbar .skill-progress{
	width: 100%;
	height: 6px;
	background: var(--secondary-color);
	border-radius: 100px;
	position: relative;
}

.skills-progress-bar .skill-progress .count-bar{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	background-color: var(--accent-color);
	border-radius: 100px;
}

.doctor-contact-form{
	background-color: var(--secondary-color);
	border-radius: 46px;
	padding: 40px;
}

.contact-form .form-control{
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	color: var(--text-color);
	background: var(--white-color);
	border: none;
	border-radius: 16px;
	padding: 20px;
	box-shadow: none;
}

.contact-form .form-control::placeholder{
	color: var(--text-color);
}

/************************************/
/***   24. Case Study Page css 	  ***/
/************************************/

.page-case-study{
	padding: 100px 0 70px;
}

.case-study-nav{
	text-align: center;
	margin-bottom: 60px;
}

.case-study-nav ul{
	list-style: none;
	text-align: center;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px 60px;
	padding: 0;margin: 0;
}

.case-study-nav ul li a{
	position: relative;
	display: inline-block;
	color: var(--text-color);
	font-weight: 600;
	line-height: 1.2em;
	text-transform: capitalize;
	transition: all 0.3s ease-in-out;
}

.case-study-nav ul li a:before{
	content: '/';
	position: absolute;
	top: 0;
	bottom: 0;
	right: -35px;
}

.case-study-nav ul li:last-child a:before{
	display: none;
}

.case-study-nav ul li a.active-btn,
.case-study-nav ul li a:hover{
	color: var(--accent-color);
}

.case-study-item{
	position: relative;
	height: calc(100% - 30px);
	margin-bottom: 30px;
}

.case-study-image figure,
.case-study-image a{
	display: block;
	cursor: none;
	border-radius: 26px;
}

.case-study-image figure:before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	/*background: linear-gradient(177.33deg, rgba(0, 0, 0, 0) 2.36%, #000000 97.92%);*/
	z-index: 1;
}

.case-study-image img{
	width: 100%;
	aspect-ratio: 1 / 0.79;
	object-fit: cover;
	border-radius: 26px;
	transition: all 0.4s ease-in-out;
}

.case-study-item:hover .case-study-image img{
	transform: scale(1.1);
}

/* Equipment Image Overlay & Info */
.equipment-gallery-items .image-anime:after{
	display: none;
}

.case-study-image{
	position: relative;
}

/* equipment-zoom: 左下角线性放大图标(无圆圈, 无背景) */
.equipment-zoom{
	position: absolute;
	bottom: 16px;
	left: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	z-index: 3;
	transition: all 0.3s ease-in-out;
}

.equipment-zoom i{
	font-size: 26px;
	color: var(--white-color);
	transition: all 0.3s ease-in-out;
}

.equipment-zoom:hover{
	transform: scale(1.15);
}

.equipment-img-overlay{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/*background: rgba(var(--accent-color),0.7);*/
	/* var(--accent-color)=#3267ff 是 hex, 不能直接塞进 rgba(); 用 color-mix 混入透明度实现变量化半透明遮罩 */
	background: color-mix(in srgb, var(--accent-color) 50%, transparent);
	border-radius: 26px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 18px;
	text-align: left;
}

/* 遮罩上的设备名称(与弹框标题一致) */
.equipment-overlay-title{
	color: var(--white-color);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 1px;
}

.case-study-item:hover .equipment-img-overlay{
	opacity: 1;
	visibility: visible;
}

.equipment-info{
	display: none;
}

/* Equipment Modal */
.equipment-modal-overlay{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	backdrop-filter: blur(4px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
	z-index: 9999;
}

.equipment-modal-overlay.active{
	opacity: 1;
	visibility: visible;
}

.equipment-modal{
	position: relative;
	width: 100%;
	max-width: 680px;
	max-height: 90vh;
	background: #fff;
	border-radius: 26px;
	overflow: hidden;
	box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25);
	transform: translateY(20px);
	transition: transform 0.3s ease-in-out;
}

.equipment-modal-overlay.active .equipment-modal{
	transform: translateY(0);
}

.equipment-modal-close{
	position: absolute;
	top: 15px;
	right: 15px;
	width: 42px;
	height: 42px;
	background: rgba(255, 255, 255, 0.95);
	border: none;
	border-radius: 50%;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
	transition: all 0.3s ease-in-out;
}

.equipment-modal-close i{
	font-size: 18px;
	color: var(--primary-color);
}

.equipment-modal-close:hover{
	background: var(--accent-color);
}

.equipment-modal-close:hover i{
	color: #fff;
}

.equipment-modal-inner{
	display: flex;
	flex-direction: row;
	max-height: 90vh;
}

.equipment-modal-image{
	width: 45%;
	flex-shrink: 0;
	background: var(--secondary-color);
}

.equipment-modal-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.equipment-modal-body{
	/*width: 55%;*/
	padding: 40px;
	overflow-y: auto;
}

.equipment-modal-title{
	font-size: 26px;
	font-weight: 600;
	color: var(--primary-color);
	margin-bottom: 16px;
}

.equipment-modal-desc{
	font-size: 16px;
	line-height: 1.8;
	color: var(--text-color);
	margin-bottom: 0;
}

.case-study-content{
	position: absolute;
	right: 30px;
	bottom: 30px;
	left: 30px;
	text-align: center;
	z-index: 2;
}

.case-study-content h3{
	color: var(--white-color);
	font-size: 20px;
	text-transform: capitalize;
}

.case-study-content h3 a{
	color: inherit;
}

/************************************/
/***   25. Case Study Single css  ***/
/************************************/

.page-case-study-single{
	padding: 100px 0;
}

.case-study-sidebar{
	position: sticky;
	top: 30px;
	margin-right: 30px;
}

.case-study-detail-box{
	border: 1px solid var(--divider-color);
	border-radius: 46px;
	margin-bottom: 40px;
	padding: 40px;
}

.case-study-detail-item{
	border-bottom: 1px solid var(--divider-color);
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.case-study-detail-item:last-child{
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.case-study-detail-item h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 5px;
}

.case-study-detail-item p{
	text-transform: capitalize;
	margin-bottom: 0;
}

.case-study-featured-image{
	margin-bottom: 40px;
}

.case-study-featured-image figure{
	display: block;
	border-radius: 46px;
}

.case-study-featured-image img{
	width: 100%;
	aspect-ratio: 1 / 0.602;
	object-fit: cover;
	border-radius: 46px;
}

.case-study-entry{
	margin-bottom: 40px;
}

.case-study-entry h2{
	font-size: 46px;
	letter-spacing: -0.02em;
	color: var(--primary-color);
	margin-bottom: 20px;
}

.case-study-entry p{
	margin-bottom: 20px;
}

.case-study-entry p:last-child{
	margin-bottom: 0;
}

.case-study-entry ul{
	list-style: none;
	padding: 0;
	margin-bottom: 20px;
}

.case-study-entry ul li{
	position: relative;
	text-transform: capitalize;
	padding-left: 30px;
	margin-bottom: 15px;
}

.case-study-entry ul li:last-child{
	margin-bottom: 0;
}

.case-study-entry ul li::before{
	content: '\f058';
	position: absolute;
	font-family: 'FontAwesome';
	font-size: 20px;
	font-weight: 900;
	line-height: normal;
	color: var(--accent-color);
	display: inline-block;
	top: 3px;
	left: 0;
}

.client-challenge-box{
	margin-top: 40px;
}

.case-study-list-video{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}

.case-study-list,
.case-study-image-video{
	width: calc(50% - 15px);
}

.case-study-list ul{
	margin-bottom: 0;
}

.case-study-image-video{
	position: relative;
}

.case-study-image-video .video-image a{
	display: block;
	cursor: none;
}

.case-study-image-video .video-image figure{
	display: block;
	border-radius: 46px;
}

.case-study-image-video .video-image img{
	width: 100%;
	aspect-ratio: 1 / 0.56;
	object-fit: cover;
	border-radius: 46px;
}

.case-study-image-video .video-play-button{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.case-study-image-video .video-play-button a{
	border: none;
	background-color: var(--white-color);
	width: 50px;
	height: 50px;
}

.case-study-image-video .video-play-button a:before{
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 160%;
	height: 160%;
	border: 50px solid var(--accent-color-two);
	border-radius: 50%;
	transform: scale(0.6);
	z-index: -1;
	animation: border-zooming 1.2s infinite linear;
}

.case-study-image-video .video-play-button a:after{
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 160%;
	height: 160%;
	border: 50px solid var(--accent-color-two);
	border-radius: 50%;
	transform: scale(0.6);
	z-index: -1;
	animation: border-zooming 1.2s infinite linear;
	animation-delay: .3s;
}

@keyframes border-zooming{
	100%{
		transform: scale(1);
		opacity: 0;
	}
}

.case-study-image-video .video-play-button a i{
	font-size: 18px;
	color: var(--accent-color);
}

/************************************/
/***    26. Image Gallery css  	  ***/
/************************************/

.page-gallery{
	padding: 100px 0 70px;
}

.page-gallery-box .photo-gallery{
	height: calc(100% - 30px);
	margin-bottom: 30px;
}

.page-gallery-box .photo-gallery a{
	cursor: none;
}

.page-gallery-box .photo-gallery figure{
	display: block;
	border-radius: 46px;
}

.page-gallery-box .photo-gallery img{
	aspect-ratio: 1 / 0.9;
	object-fit: cover;
	border-radius: 46px;
}

/************************************/
/***    27. Video Gallery css  	  ***/
/************************************/

.page-video-gallery{
	padding: 100px 0 70px;
}

.video-gallery-image{
	height: calc(100% - 30px);
	margin-bottom: 30px;
	overflow: hidden;
}

.video-gallery-image a{
	position: relative;
	display: block;
	cursor: none;
}

.video-gallery-image a::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--primary-color);
	border-radius: 46px;
	opacity: 0%;
	visibility: hidden;
	width: 100%;
	height: 100%;
	z-index: 1;
	transform: scale(0);
	transition: all 0.4s ease-in-out;
}

.video-gallery-image:hover a::before{
	opacity: 40%;
	visibility: visible;
	transform: scale(1);
}

.video-gallery-image a::after{
	content: '\f04b';
	font-family: 'FontAwesome';
	position: absolute;
	top: 50%;
	left: 50%;
	right: 0;
	transform: translate(-50%, -50%);
	font-size: 20px;
	background: var(--accent-color);
	color: var(--white-color);
	border-radius: 50%;
	height: 60px;
	width: 60px;
	cursor: none;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease-in-out;
	z-index: 1;
}

.video-gallery-image:hover a::after{
	opacity: 1;
	visibility: visible;
}

.video-gallery-image img{
	aspect-ratio: 1 / 0.9;
	object-fit: cover;
	border-radius: 46px;
}

/************************************/
/***       28. FAQs Page css  	  ***/
/************************************/

.page-faq{
	padding: 100px 0;
}

.faq-sidebar{
	position: sticky;
	top: 30px;
	margin-right: 20px;
}

.faq-catagery-list{
	border: 1px solid var(--divider-color);
	border-radius: 46px;
	padding: 40px;
	margin-bottom: 40px;
}

.faq-catagery-list ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.faq-catagery-list ul li{
	margin-bottom: 20px;
}

.faq-catagery-list ul li:last-child{
	margin-bottom: 0;
}

.faq-catagery-list ul li a{
	position: relative;
	display: block;
	color: var(--text-color);
	text-transform: capitalize;
	padding-right: 20px;
	transition: all 0.3s ease-in-out;
}

.faq-catagery-list ul li:hover a{
	color: var(--primary-color);
}

.faq-catagery-list ul li a::before{
	content: '\f061';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 18px;
	color: var(--text-color);
	display: inline-block;
	line-height: normal;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	right: 0;
	transition: all 0.4s ease-in-out;
}

.faq-catagery-list ul li:hover a::before{
	transform: translateY(-50%) rotate(0deg);
	color: var(--primary-color);
}

.page-faq-accordion{
	margin-bottom: 60px;
}

.page-faq-accordion:last-child{
	margin-bottom: 0px;
}

/************************************/
/***   29. Contact Us Page css    ***/
/************************************/

.page-contact-us{
	padding: 100px 0 50px;
}

.contact-us-box{
	background-color: var(--white-color);
	box-shadow: 6px 4px 168px 0px #0000001A;
	border-radius: 46px;
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
	padding: 60px;
}

.contact-info-box{
	width: calc(40% - 30px);
}

.contact-info-list{
	margin-bottom: 40px;
}

.contact-info-item{
	position: relative;
	display: flex;
	align-items: center;
	background-color: var(--secondary-color);
	padding: 20px;
	border-radius: 16px;
	margin-bottom: 30px;
	transition: all 0.4s ease-in-out;
	overflow: hidden;
}

.contact-info-item::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: auto;
	right: 0;
	width: 100%;
	height: 0;
	background: var(--primary-color);
	transition: all 0.4s ease-in-out;
	z-index: 0;
}

.contact-info-item:hover::before{
	top: auto;
	height: 100%;
	bottom: 0;
}

.contact-info-item:last-child{
	margin-bottom: 0;
}

.contact-info-item .icon-box{
	position: relative;
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: linear-gradient(90deg, var(--accent-color) 0%, var(--accent-color-two) 100%);
	border-radius: 50%;
	margin-right: 20px;
	overflow: hidden;
}

.icon-box::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: auto;
	right: 0;
	width: 100%;
	height: 0;
	background: var(--secondary-color);
	transition: all 0.4s ease-in-out;
}

.contact-info-item:hover .icon-box::before{
	top: auto;
	height: 100%;
	bottom: 0;
}

.contact-info-item .icon-box img{
	position: relative;
	max-width: 30px;
	z-index: 1;
	transition: all 0.4s ease-in-out;
}

.contact-info-item:hover .icon-box img{
	filter: brightness(0) invert(0);
}

.contact-info-content{
	position: relative;
	width: calc(100% - 80px);
	z-index: 1;
}

.contact-info-content h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 5px;
	transition: all 0.4s ease-in-out;
}

.contact-info-content p{
	margin-bottom: 0;
	transition: all 0.4s ease-in-out;
}

.contact-info-item:hover .contact-info-content h3,
.contact-info-item:hover .contact-info-content p{
	color: var(--white-color);
}

.contact-social-list span{
	font-size: 20px;
	font-weight: 600;
	color: var(--primary-color);
	text-transform: capitalize;
}

.contact-social-list{
	display: inline-flex;
	gap: 20px;
	align-items: center;
}

.contact-social-list ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.contact-social-list ul li{
	display: inline-block;
	border-radius: 50%;
	margin-right: 15px;
}

.contact-social-list ul li a i{
	color: var(--accent-color-two);
	font-size: 20px;
	transition: all 0.3s ease-in-out;
}

.contact-social-list ul li:hover a i{
	color: var(--primary-color);
}

.contact-us-form{
	width: calc(60% - 30px);
}

.contact-us-form .contact-form .form-control{
	background-color: var(--secondary-color);
}

.google-map{
	padding: 50px 0 100px;
}

.google-map .section-row .section-title{
	max-width: 725px;
}

.google-map-iframe,
.google-map-iframe iframe{
	width: 100%;
	height: 550px;
	border-radius: 46px;
}

.google-map-iframe iframe{
	filter: grayscale(1);
	transition: all 0.3s ease-in-out;
}

.google-map-iframe iframe:hover{
	filter: grayscale(0);
}

/************************************/
/***  30. Book Appoiment Page css ***/
/************************************/

.page-book-appointment{
	padding: 100px 0;
}

.our-appointment-box{
	background: var(--white-color);
	box-shadow: 6px 4px 168px 0px #0000001A;
	border-radius: 46px;
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
	padding: 60px;
}

.appointment-form,
.our-appointment-content{
	width: calc(50% - 30px);
}

.appointment-form form .form-control{
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	color: var(--text-color);
	background-color: var(--secondary-color);
	border: none;
	border-radius: 16px;
	padding: 20px;
	outline: none;
	box-shadow: none;
}

.appointment-form form .form-control::placeholder{
	text-transform: capitalize;
	color: var(--text-color);
}

.appointment-form form .form-group select{
	padding: 20px 30px 20px 20px;
}

.appointment-item{
	border-bottom: 1px solid var(--divider-color);
	margin-bottom: 20px;
	padding-bottom: 20px;
	display: flex;
	align-items: center;
}

.appointment-item:last-child{
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.appointment-item .icon-box{
	margin-right: 40px;
}

.appointment-item .icon-box img{
	max-width: 60px;
}

.appointment-item-content{
	width: calc(100% - 100px);
}

.appointment-item-content h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 10px;
}

.appointment-item-content p{
	margin: 0;
}

/************************************/
/***    31. 404 Error Page css    ***/
/************************************/

.error-page{
	padding: 100px 0;
}

.error-page-image{
	text-align: center;
	margin-bottom: 40px;
}

.error-page-image img{
	width: 100%;
	max-width: 50%;
}

.error-page-content{
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	text-align: center;
}

.error-page-content .section-title{
	margin-bottom: 20px;
}

.error-page-content-body p{
	margin-bottom: 20px;
}

/************************************/
/***      32. Responsive Css      ***/
/************************************/

@media only screen and (max-width: 1800px){

	.bg-section{
		width: calc(100% - 0px);
		max-width: 100%;
	}
}

@media only screen and (max-width: 1560px){



}

@media only screen and (max-width: 1024px){

	.main-menu ul li{
		margin-left: 0;
	}
}

@media only screen and (max-width: 991px){

	.topbar{
		padding: 10px 0;
	}

	.topbar-contact-info ul li{
		margin-left: 10px;
		padding-left: 10px;
	}

	.topbar-social-icons{
		border-right: none;
		margin-right: 0px;
		padding-right: 00px;
	}

	.topbar-social-icons ul li{
		margin-right: 10px;
	}

	.topbar-contact-info.topbar-contact-details{
		display: none;
	}

	.navbar-brand img{
		max-width: 160px;
	}

	.navbar{
		padding: 20px 0px;
	}

	.main-menu ul li.highlighted-menu{
		display: block;
	}

	.header-btn{
		display: none;
	}

	.slicknav_nav li,
	.slicknav_nav ul{
		display: block;
	}

	.responsive-menu,
	.navbar-toggle{
		display: block;
	}

	.btn-default{
		padding: 14px 20px;
	}

	.bg-section{
		width: 100%;
		margin-left: 0px;
		margin-right: 0px;
		border-radius: 0;
	}

	.section-row{
		margin-bottom: 40px;
	}

	.section-row .section-title{
		max-width: 100%;
	}

	.section-title{
		margin-bottom: 30px;
	}

	.section-title-content{
		margin-top: 15px;
	}

	.section-btn{
		text-align: left;
		margin-top: 15px;
	}

	.section-title h1{
		font-size: 48px;
	}

	.section-title h2{
		font-size: 36px;
	}

	.section-title p{
		margin-top: 15px;
	}

	.hero.hero-bg-image{
		padding: 120px 0;
	}

	.hero.hero-bg-image.hero-slider-layout .hero-slide{
		padding: 0;
	}

	.hero.hero-bg-image.hero-slider-layout .hero-pagination{
		bottom: 30px;
	}

	.hero-content{
		margin-bottom: 30px;
	}

	.hero.hero-bg-image .hero-content{
		max-width: 450px;
	}

	.hero-content .section-title p{
		font-size: 18px;
	}

	.google-rating{
		margin-top: 30px;
		padding-top: 30px;
	}

	.hero-image{
		max-width: 60%;
		margin: 0 auto;
		background-size: contain;
	}

	.excerpt-doctor-box {
		max-width: 185px;
		border-radius: 10px;
	}

	.excerpt-doctor-images,
	.excerpt-doctor-content {
		padding: 8px;
	}

	.satisfied-clients-box {
		bottom: 18%;
		padding: 10px 15px;
	}

	.satisfied-clients-content h3{
		font-size: 18px;
	}

	.satisfied-clients-content p{
		font-size: 14px;
	}

	.our-services{
		background-size: 25% auto;
		padding: 50px 0;
	}

	.service-item{
		border-radius: 26px;
		padding: 30px;
	}

	.service-header{
		padding-bottom: 20px;
		margin-bottom: 20px;
	}

	.service-item-box .icon-box{
		width: 50px;
		height: 50px;
	}

	.service-item-box .icon-box img{
		max-width: 24px;
	}

	.service-item-content{
		width: calc(100% - 65px);
	}

	.service-body{
		margin-bottom: 20px;
	}

	.more-service-content{
		margin-top: 10px;
	}

	.our-faqs{
		padding: 50px 0;
	}

	.our-faqs-content{
		position: initial;
		top: 0;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.faq-cta-actions{
		margin-top: 20px;
	}

	.faq-accordion .accordion-item{
		margin-bottom: 20px;
		padding-bottom: 20px;
	}




	.latest-news{
		padding: 50px 0 20px;
	}

	.post-featured-image{
		margin-bottom: 15px;
	}

	.post-item-meta{
		margin-bottom: 10px;
	}

	.latest-news-btn{
		margin-top: 30px;
	}

	.page-pagination{
		margin-top: 10px;
	}

	.main-footer.bg-section{
		padding: 40px 0 0;
		margin-bottom: 0;
	}

	.about-footer{
		max-width: 100%;
		margin-bottom: 30px;
	}

	.footer-logo{
		margin-bottom: 30px;
	}

	.footer-copyright{
		padding: 20px 0;
	}

	.page-header{
		padding: 80px 0;
		background-size: cover;
		background-position: center center;
	}

	.page-header-box h1{
		font-size: 48px;
		margin-bottom: 10px;
	}

	.page-header-box ol{
		padding: 8px 20px;
	}

	.our-approach{
		background-size: 20% auto;
		padding: 50px 0;
	}

	.our-approach-img{
		margin-bottom: 30px;
	}

	.our-approach-img figure,
	.our-approach-img img{
		aspect-ratio: 1 / 0.7;
		border-radius: 26px;
	}

	.our-approach-content{
		margin-left: 0;
	}

	.vision-mission-nav{
		margin-bottom: 30px;
	}

	.vision-mission-nav ul li{
		margin-right: 20px;
	}

	.vision-mission-nav ul li .nav-link{
		padding: 10px 25px;
	}

	.our-team.about-team{
		padding: 50px 0 20px;
	}

	.our-facility{
		background-size: 20% auto;
		padding: 50px 0;
	}

	.our-facility-item{
		border-radius: 26px;
		padding: 30px;
	}

	.our-facility-item .icon-box{
		margin-bottom: 20px;
	}

	.our-facility-content h3{
		margin-bottom: 10px;
	}

	.cta-section.page-cta-section{
		margin: 50px 0;
	}

	.page-service{
		padding: 50px 0 20px;
	}

	.page-service-single{
		padding: 50px 0;
	}

	.service-sidebar{
		position: initial;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.service-catagery-list{
		border-radius: 26px;
		padding: 30px;
		margin-bottom: 30px;
	}

	.sidebar-follow-box{
		border-radius: 26px;
		padding: 30px;
		margin-bottom: 30px;
	}

	.service-catagery-list h3{
		margin-bottom: 20px;
	}

	.sidebar-cta-box{
		padding: 30px;
		border-radius: 26px;
	}

	.cta-contact-content h3{
		font-size: 36px;
	}

	.service-featured-image{
		margin-bottom: 30px;
	}

	.service-featured-image figure,
	.service-featured-image img{
		border-radius: 26px;
	}

	.service-entry{
		margin-bottom: 30px;
	}

	.service-entry h2{
		font-size: 36px;
	}

	.providing-services,
	.services-comfort{
		margin-bottom: 30px;
	}

	.service-entry-img figure,
	.service-entry-img img{
		border-radius: 26px;
	}

	.page-blog{
		padding: 50px 0;
	}

	.page-blog .post-item{
		height: calc(100% - 30px);
		margin-bottom: 30px;
	}

	.page-single-post{
		padding: 50px 0;
	}

	.post-image{
		margin-bottom: 20px;
	}

	.post-image figure,
	.post-image img{
		border-radius: 26px;
	}

	.post-entry blockquote{
		background-position: 25px 25px;
		background-size: 45px;
		padding: 25px 25px 25px 85px;
		margin-bottom: 20px;
	}

	.post-entry blockquote p{
		font-size: 18px;
	}

	.post-entry h2{
		font-size: 36px;
	}

	.post-entry ul li{
		font-size: 16px;
	}

	.post-tags{
		margin-bottom: 20px;
	}

	.post-social-sharing ul{
		text-align: left;
	}

	.post-tags .tag-links a{
		padding: 6px 15px;
	}

	.page-team{
		padding: 50px 0 20px;
	}

	.page-doctor-single{
		padding: 50px 0;
	}

	.doctor-single-sidebar{
		position: initial;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.doctor-sidebar-image img{
		aspect-ratio: 1 / 0.7;
		object-position: top center;
		border-radius: 26px 26px 0 0;
	}

	.doctor-sidebar-body{
		padding: 30px;
	}

	.doctor-sidebar-footer{
		padding: 15px 30px;
		border-radius: 0 0 26px 26px;
	}

	.doctor-single-entry h2{
		font-size: 36px;
	}

	.doctor-member-info,
	.doctor-member-experience,
	.doctor-member-expertise{
		margin-bottom: 30px;
	}

	.doctor-contact-form{
		border-radius: 26px;
		padding: 30px;
	}

	.doctor-member-experience{
		gap: 30px;
	}

	.member-experience-info,
	.doctor-member-skills{
		width: calc(50% - 15px);
	}

	.member-experience-info-item h3{
		font-size: 18px;
		margin-bottom: 10px;
	}

	.contact-form .form-control{
		padding: 15px;
	}

	.page-case-study{
		padding: 50px 0 20px;
	}

	.case-study-nav{
		margin-bottom: 40px;
	}

	.case-study-nav ul{
		gap: 10px 40px;
	}

	.case-study-nav ul li a:before{
		right: -20px;
	}

	.case-study-image figure,
	.case-study-image a,
	.case-study-image img{
		border-radius: 26px;
	}

	.equipment-img-overlay{
		border-radius: 26px;
	}

	.equipment-modal{
		max-width: 520px;
	}

	.equipment-modal-inner{
		flex-direction: column;
	}

	.equipment-modal-image,
	.equipment-modal-body{
		width: 100%;
	}

	.equipment-modal-image{
		height: 220px;
	}

	.equipment-modal-body{
		padding: 28px;
		max-height: 50vh;
	}

	.equipment-modal-title{
		font-size: 22px;
	}

	.equipment-modal-desc{
		font-size: 15px;
	}

	.case-study-content{
		right: 20px;
		bottom: 20px;
		left: 20px;
	}

	.page-case-study-single{
		padding: 50px 0;
	}

	.case-study-sidebar{
		position: initial;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.case-study-detail-box{
		border-radius: 26px;
		margin-bottom: 30px;
		padding: 30px;
	}

	.case-study-detail-item{
		margin-bottom: 15px;
		padding-bottom: 15px;
	}

	.case-study-featured-image{
		margin-bottom: 30px;
	}

	.case-study-featured-image figure,
	.case-study-featured-image img{
		border-radius: 26px;
	}

	.case-study-entry{
		margin-bottom: 30px;
	}

	.case-study-entry h2{
		font-size: 36px;
	}

	.client-challenge-box{
		margin-top: 30px;
	}

	.case-study-image-video .video-image figure{
		border-radius: 26px;
	}

	.case-study-image-video .video-image img{
		aspect-ratio: 1 / 0.68;
		border-radius: 26px;
	}

	.page-gallery{
		padding: 50px 0 20px;
	}

	.page-gallery-box .photo-gallery figure,
	.page-gallery-box .photo-gallery img{
		aspect-ratio: 1 / 0.8;
		border-radius: 26px;
	}

	.page-video-gallery{
		padding: 50px 0 20px;
	}

	.video-gallery-image a::before,
	.video-gallery-image img{
		aspect-ratio: 1 / 0.8;
		border-radius: 26px;
	}

	.page-faq{
		padding: 50px 0 20px;
	}

	.faq-sidebar{
		position: initial;
		margin-right: 0px;
		margin-bottom: 30px;
	}

	.faq-catagery-list{
		padding: 20px;
		border-radius: 26px;
		margin-bottom: 30px;
	}

	.faq-catagery-list ul li{
		margin-bottom: 15px;
	}

	.page-faq-accordion{
		margin-bottom: 30px;
	}

	.page-contact-us{
		padding: 50px 0 25px;
	}

	.contact-us-box{
		border-radius: 26px;
		padding: 30px;
		gap: 30px;
	}

	.contact-info-box{
		width: calc(40% - 15px);
	}

	.contact-info-list{
		margin-bottom: 30px;
	}

	.contact-info-item{
		padding: 15px;
		margin-bottom: 20px;
	}

	.contact-info-item .icon-box{
		width: 45px;
		height: 45px;
		margin-right: 10px;
	}

	.contact-info-item .icon-box img{
		max-width: 25px;
	}

	.contact-info-content{
		width: calc(100% - 55px);
	}

	.contact-social-list ul li{
		margin-right: 10px;
	}

	.contact-social-list ul li a i{
		font-size: 18px;
	}

	.contact-us-form{
		width: calc(60% - 15px);
	}

	.google-map{
		padding: 25px 0 50px;
	}

	.google-map .section-row .section-title{
		max-width: 100%;
	}

	.google-map-iframe,
	.google-map-iframe iframe{
		height: 400px;
		border-radius: 26px;
	}

	.page-book-appointment{
		padding: 50px 0;
	}

	.our-appointment-box{
		border-radius: 26px;
		gap: 30px;
		padding: 30px;
	}

	.appointment-form,
	.our-appointment-content{
		width: 100%;
	}

	.appointment-form form .form-control{
		padding: 15px;
	}

	.appointment-form form .form-group select{
		padding: 15px 25px 15px 15px;
	}

	.appointment-item .icon-box{
		margin-right: 30px;
	}

	.appointment-item .icon-box img{
		max-width: 50px;
	}

	.appointment-item-content{
		width: calc(100% - 80px);
	}

	.error-page{
		padding: 50px 0;
	}

	.error-page-image{
		margin-bottom: 20px;
	}

	.error-page-image img{
		max-width: 80%;
	}
}

@media only screen and (max-width: 767px){

	.topbar-social-details{
		display: none;
	}

	.topbar-contact-info ul{
		display: block;
	}

	.topbar-contact-info ul li{
		border: none;
		margin-left: 0px;
		padding-left: 0px;
		margin-bottom: 6px;
	}

	.topbar-contact-info ul li:last-child{
		margin-bottom: 0;
	}

	.topbar-contact-info ul li a{
		justify-content: center;
	}

	.topbar-contact-info ul li a i{
		font-size: 14px;
		margin-right: 5px;
	}



	.section-title h1{
		font-size: 34px;
	}

	.section-title h2{
		font-size: 26px;
	}

	.hero-content .section-title p{
		font-size: 16px;
	}

	.google-rating ul li{
		font-size: 13px;
	}

	.google-rating ul li i{
		font-size: 12px;
	}

	.hero-image{
		max-width: 100%;
	}

	.excerpt-doctor-box {
		max-width: 175px;
		left: 0;
	}

	@keyframes excerptmove{
		50%{
			left: 30px;
		}
	}

	.excerpt-doctor-image figure {
		width: 40px;
		height: 40px;
	}

	.excerpt-doctor-content p{
		font-size: 14px;
	}

	.satisfied-clients-box {
		bottom: 12%;
		padding: 8px 12px;
	}

	.satisfied-clients-box .icon-box {
		width: 38px;
		height: 38px;
		margin-right: 5px;
	}

	.satisfied-clients-box .icon-box img {
		max-width: 22px;
	}

	.satisfied-clients-content {
		width: calc(100% - 43px);
	}

	.service-item{
		padding: 20px;
	}

	.service-header{
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	.service-item-content h3{
		font-size: 18px;
	}

	.service-body{
		margin-bottom: 15px;
	}

	/* 小屏: 热线和按钮纵向堆叠 */
	.faq-cta-actions{
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.faq-cta-hotline{
		padding: 11px 22px;
	}

	.faq-cta-hotline-label,
	.faq-cta-hotline a{
		font-size: 14px;
	}

	.faq-cta-btn{
		font-size: 14px;
		padding: 11px 12px 11px 22px;
	}

	.faq-cta-btn span{
		padding-right: 30px;
	}

	.faq-cta-btn i{
		width: 25px;
		height: 25px;
		font-size: 12px;
	}

	.faq-accordion .accordion-header .accordion-button{
		font-size: 18px;
		padding-right: 20px;
	}

	.faq-accordion .accordion-item .accordion-button::after,
	.faq-accordion .accordion-item .accordion-button.collapsed::after{
		font-size: 16px;
	}

	.faq-accordion .accordion-item .accordion-body{
		padding-right: 0px;
	}




	.post-item-content{
		margin-bottom: 10px;
	}

	.post-item-content h2{
		font-size: 18px;
	}

	.footer-logo{
		margin-bottom: 20px;
	}

	.footer-links{
		margin-bottom: 30px;
	}

	.footer-links h3{
		font-size: 18px;
		margin-bottom: 15px;
	}

	.footer-contact-item{
		margin-bottom: 15px;
	}

	/* 小屏: 二维码和友情链接居中 */
	.footer-qr{
		text-align: center;
	}

	.footer-friend-links{
		align-items: center;
		text-align: center;
	}

	.footer-friend-links .footer-friend-links-list{
		justify-content: center;
	}

	.footer-copyright{
		padding: 15px 0;
	}

	.footer-copyright-text{
		text-align: center;
		margin-bottom: 10px;
	}

	.footer-terms-condition ul{
		text-align: center;
	}

	.page-header{
		padding: 60px 0;
	}

	.page-header-box h1{
		font-size: 34px;
	}

	.vision-mission-nav ul li{
		margin-right: 15px;
	}

	.vision-mission-nav ul li .nav-link{
		font-size: 14px;
		padding: 6px 15px;
	}

	.vision-mission-img{
		margin-bottom: 30px;
	}

	.vision-mission-img figure,
	.vision-mission-img img{
		border-radius: 26px;
	}

	.vision-mission-content ul li{
		margin-bottom: 10px;
	}

	.vision-mission-content ul li:after{
		font-size: 18px;
	}

	.our-facility-item{
		padding: 20px;
	}

	.our-facility-content h3{
		font-size: 18px;
	}

	.service-catagery-list{
		padding: 20px;
	}

	.sidebar-follow-box{
		padding: 20px;
	}

	.sidebar-follow-box h3{
		font-size: 18px;
	}

	.sidebar-follow-phone a{
		font-size: 18px;
	}

	.service-post-nav{
		gap: 10px 30px;
		margin-top: 30px;
		padding-top: 20px;
	}

	.service-catagery-list h3{
		font-size: 18px;
	}

	.service-catagery-list ul li{
		padding-bottom: 10px;
		margin-bottom: 10px;
	}

	.sidebar-cta-box{
		padding: 20px;
		border-radius: 26px;
	}

	.sidebar-cta-box .icon-box{
		margin-bottom: 15px;
	}

	.cta-contact-content h3{
		font-size: 26px;
	}

	.service-featured-image{
		margin-bottom: 20px;
	}

	.service-featured-image img{
		aspect-ratio: 1 / 0.7;
	}

	.service-entry h2{
		font-size: 26px;
		margin-bottom: 15px;
	}

	.service-entry p{
		margin-bottom: 15px;
	}

	.service-entry ul li{
		width: 100%;
	}

	.service-entry-images{
		gap: 20px;
	}

	.service-entry-img{
		width: 100%;
	}

	.post-image figure,
	.post-image img{
		aspect-ratio: 1 / 0.70;
		border-radius: 26px;
	}

	.post-entry blockquote{
		background-position: 15px 15px;
		padding: 60px 15px 15px 15px;
	}

	.post-entry h2{
		font-size: 26px;
	}

	.doctor-sidebar-image img{
		aspect-ratio: 1 / 1.1;
		object-position: center center;
	}

	.doctor-sidebar-body{
		padding: 20px;
	}

	.doctor-sidebar-body ul li span{
		font-size: 18px;
	}

	.doctor-sidebar-footer{
		padding: 10px 20px;
	}

	.doctor-sidebar-footer span{
		font-size: 18px;
	}

	.doctor-single-entry h2{
		font-size: 26px;
		margin-bottom: 15px;
	}

	.doctor-single-entry p{
		margin-bottom: 15px;
	}

	.doctor-single-entry ul li{
		width: 100%;
	}

	.doctor-single-entry ul li::before{
		font-size: 18px;
	}

	.member-experience-info,
	.doctor-member-skills{
		width: 100%;
	}

	.member-experience-info-item{
		margin-bottom: 20px;
	}

	.skills-progress-bar{
		margin-bottom: 20px;
	}

	.doctor-contact-form{
		padding: 20px;
	}

	.case-study-nav ul{
		gap: 10px 30px;
	}

	.case-study-nav ul li a:before{
		right: -18px;
	}

	.case-study-content h3{
		font-size: 18px;
	}

	.case-study-detail-box{
		padding: 20px;
	}

	.case-study-detail-item h3{
		font-size: 18px;
	}

	.case-study-featured-image{
		margin-bottom: 20px;
	}

	.case-study-featured-image img{
		aspect-ratio: 1 / 0.75;
	}

	.case-study-entry p{
		margin-bottom: 15px;
	}

	.case-study-entry h2{
		font-size: 26px;
		margin-bottom: 15px;
	}

	.case-study-entry ul{
		margin-bottom: 15px;
	}

	.case-study-entry ul li{
		padding-left: 25px;
		margin-bottom: 10px;
	}

	.case-study-entry ul li::before{
		font-size: 18px;
	}

	.case-study-list-video{
		gap: 20px;
	}

	.case-study-list,
	.case-study-image-video{
		width: 100%;
	}

	.case-study-list ul{
		margin-bottom: 0;
	}

	.contact-us-box{
		padding: 20px;
	}

	.contact-info-box,
	.contact-us-form{
		width: 100%;
	}

	.contact-info-content h3{
		font-size: 18px;
	}

	.contact-social-list span{
		font-size: 18px;
	}

	.google-map-iframe,
	.google-map-iframe iframe{
		height: 350px;
	}

	.our-appointment-box{
		padding: 20px;
	}

	.appointment-item .icon-box{
		margin-right: 10px;
	}

	.appointment-item-content{
		width: calc(100% - 60px);
	}

	.appointment-item-content h3{
		font-size: 18px;
		margin-bottom: 5px;
	}

	.error-page-content{
		max-width: 100%;
	}
}

/************************************/
/* Banner Slider Custom Styles      */
/************************************/

.banner-slider .hero-slide{
	aspect-ratio: 1920 / 800;
	max-height: 800px;
}

/************************************/
/* Medical Departments Custom       */
/************************************/

.medical-dept{
	padding: 100px 0;
}

.dept-card{
	position: relative;
	overflow: hidden;
	z-index: 1;
	background: var(--white-color);
	border-radius: 0;
	border: none;
	border-right: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
	padding: 40px 30px;
	margin-bottom: 0;
	box-shadow: none;
	text-align: left;
	height: 100%;
	transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* 诊疗科目 8 块宫格: 卡片紧密相连, 相邻共用一条边线(左右/上下均单线) */
.medical-dept .row:not(.section-row){
	border-left: 1px solid #e5e5e5;
	border-top: 1px solid #e5e5e5;
}

.medical-dept .row [class*="col-"]{
	padding: 0;
}

.dept-card:hover{
	z-index: 2;
	transform: translateY(-15px) scale(1.03);
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15);
}

/* 仅大屏 hover 圆角, 跟父级 .row 圆角保持一致; 小屏 hover 仍直角 */
@media only screen and (min-width: 992px){
	.dept-card:hover{
		border-radius: 26px;
	}
}

/* 仅大屏给整块宫格外框 4 角圆角, 小屏保持直角 */
@media only screen and (min-width: 992px){
	.medical-dept .row:not(.section-row){
		border-radius: 26px;
		overflow: hidden;
	}
}

.dept-card.active{
	background: var(--accent-color);
	color: var(--white-color);
}

.dept-card.active .dept-icon{
	background: rgba(255, 255, 255, 0.15);
}

.dept-card.active .dept-icon i{
	color: var(--white-color);

}

.dept-card.active h3,
.dept-card.active p{
	color: var(--white-color);
}

.dept-icon{
	width: 80px;
	height: 80px;
	margin: 0 0 20px;
	background: var(--secondary-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s ease-in-out;
}

.dept-icon i{
	font-size: 32px;
	color: var(--accent-color);
	transition: all 0.4s ease-in-out;
}

.dept-card h3{
	font-size: 20px;
	margin-bottom: 15px;
	transition: color 0.4s ease-in-out;
}

.dept-card p{
	margin: 0;
	color: var(--text-color);
	font-size: 14px;
	line-height: 1.6em;
	transition: color 0.4s ease-in-out;

	display: -webkit-box;
	-webkit-line-clamp: 2;          /* 限制显示的行数 */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

@media only screen and (max-width: 767px){
	.medical-dept{
		padding: 60px 0;
	}

	.dept-card{
		padding: 30px 20px;
		text-align: center;
	}

	.dept-icon{
		margin: 0 auto 20px;
	}
}

/************************************/
/* Expert Team Custom               */
/************************************/

.expert-team{
	padding: 100px 0;
}

/* 大屏: 轮播右侧留边(25px 容纳阴影 offset10+blur30/2), 最后一张卡的阴影不被 .swiper overflow:hidden 裁掉 */
@media only screen and (min-width: 992px){
	.expert-slider .swiper{
		padding-right: 25px;
		margin-right: -25px; /* 视觉宽度不变, 只是把裁切线右移 */
	}
}

.expert-card{
	position: relative;
	height: calc(100% - 30px);
	margin-bottom: 30px;
}

.expert-image{
	overflow: hidden;
}

.expert-image figure{
	display: block;
	border-radius: 26px;
}

.expert-image img{
	width: 100%;
	aspect-ratio: 1 / 1.1;
	object-fit: cover;
	border-radius: 26px;
	transition: all 0.4s ease-in-out;
}

.expert-card:hover .expert-image img{
	transform: scale(1.1);
}

.expert-body{
	position: relative;
	background: var(--white-color);
	border: 1px solid var(--divider-color);
	border-bottom-left-radius: 26px;
	border-bottom-right-radius: 26px;
	padding: 20px 15px;
	/*margin: 0 20px;*/
	margin-top: -60px;
	z-index: 1;
	transition: all 0.5s ease-in-out;
	overflow: hidden;
}

/* 悬停时信息卡上移效果(已取消) */



.expert-body::after{
	display: none;
}

.expert-content{
	position: relative;
	text-align: left;
	z-index: 1;
}

.expert-content h3{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 5px;
	transition: color 0.3s ease-in-out;
}

.expert-content .expert-role{
	font-size: 14px;
	color: var(--text-color);
	font-weight: 600;
	margin-bottom: 8px;
	transition: color 0.3s ease-in-out;
}

/* 就诊时间/在线挂号: 默认 display:none 隐藏, 悬停时在 expert-body 内部展开 */
.expert-hover-panel{
	display: none;
}

.expert-card:hover .expert-hover-panel{
	display: block;
	animation: expert-fade-in 0.4s ease-in-out;
}

.expert-content .expert-time{
	display: block;
	font-size: 13px;
	color: var(--text-color);
	margin: 0 0 8px;
}

/* 在线咨询按钮: 复用 faq-cta-btn 胶囊样式, 此处只控制显隐 */
.expert-content .expert-appointment{
	display: inline-block;
	margin: 12px 0 0;
}

.expert-card:hover .expert-content .expert-time{
	display: block;
}

.expert-card:hover .expert-content .expert-appointment{
	display: inline-block;
}

/* 专家团队(全站共用): 就诊时间默认显示, 在线咨询按钮默认显示
   作用于 .expert-slider 基类, 覆盖 index(.expert-slider-index)/ysinfo(.expert-slider-doctors)/yygkinfo(.expert-slider-yygk) */
.expert-slider .expert-hover-panel{
	display: block;
}
.expert-slider .expert-card:hover .expert-hover-panel{
	animation: none;
}
.expert-slider .expert-content .expert-appointment{
	visibility: visible;
	opacity: 1;
	transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
}
.expert-slider .expert-card:hover .expert-content .expert-appointment{
	visibility: visible;
	opacity: 1;
	animation: none;
}


.expert-card:hover{
	border-bottom-right-radius: 26px;
	border-bottom-left-radius: 26px;
	box-shadow: 10px 10px 30px -17px rgba(0, 0, 0, .55);
}

@keyframes expert-fade-in{
	from{
		opacity: 0;
		transform: translateY(8px);
	}
	to{
		opacity: 1;
		transform: translateY(0);
	}
}

.expert-card:hover .expert-content .expert-role{
	color: var(--accent-color);
}


/* =========================================================
   ylsb.html 专家团队列表卡（与 index 专家团队行为一致）
   默认：姓名 + 职位 + 出诊时间(.accordion-body)显示,
        在线咨询按钮(.faq-cta-btn) 占位隐藏(visibility:hidden)
   hover：演示卡 body 阴影抬起 + 按钮显示
   ========================================================= */
.ylsb-expert-list .post-item:nth-child(1) .post-item-body,
.ylsb-expert-list .post-item:nth-child(2) .post-item-body{
	position: relative;
	z-index: 1;
	background: var(--white-color);
	transition: transform 0.4s ease-in-out, box-shadow 0.4s ease-in-out;
}

.ylsb-expert-list .post-item:nth-child(1) .post-item-content,
.ylsb-expert-list .post-item:nth-child(2) .post-item-content{
	margin-bottom: 4px;
	transition: margin 0.4s ease-in-out;
}

/* 在线咨询按钮(全部卡片, 与 index 一致): 默认显示 */
.ylsb-expert-list .faq-cta-btn.expert-appointment{
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
}
.ylsb-expert-list .post-item:hover .faq-cta-btn.expert-appointment{
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

/* hover 态: 演示卡 body 抬起阴影 */
.ylsb-expert-list .post-item:nth-child(1):hover .post-item-body,
.ylsb-expert-list .post-item:nth-child(2):hover .post-item-body{
	/*transform: translateY(-55px);*/
	box-shadow: 0 12px 28px -10px rgba(0, 0, 0, .25);
}

.ylsb-expert-list .post-item:nth-child(1):hover .post-item-content,
.ylsb-expert-list .post-item:nth-child(2):hover .post-item-content{
	margin-bottom: 8px;
}

/* 移动端: 触屏无悬停, 按钮默认可见(与桌面一致); 取消 hover 抬起效果 */
@media (max-width: 991px){
	.ylsb-expert-list .faq-cta-btn.expert-appointment{
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
	}
	.ylsb-expert-list .post-item:nth-child(1):hover .post-item-body,
	.ylsb-expert-list .post-item:nth-child(2):hover .post-item-body{
		transform: none;
		box-shadow: none;
	}
}


/* Expert Pagination */
.expert-pagination{
	display: flex;
	justify-content: center;
	margin-top: 50px;
	gap: 10px;
}

.expert-pagination .swiper-pagination-bullet{
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--white-color);
	border: 1px solid var(--divider-color);
	color: var(--text-color);
	font-size: 14px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: all 0.3s ease-in-out;
	cursor: pointer;
}

.expert-pagination .swiper-pagination-bullet-active{
	background: var(--accent-color);
	border-color: var(--accent-color);
	color: var(--white-color);
}

/* index.html 专家团队分页: 大屏靠右对齐 */
.expert-slider-index .expert-pagination{
	justify-content: flex-end;
}

/* 遗留空分页容器(swiper 外)不渲染, 避免占位 */
.expert-slider-index > .expert-pagination:empty{
	display: none;
}

/* Expert Navigation Arrows */
.expert-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 30px;
}

.expert-btn .expert-btn-next,
.expert-btn .expert-btn-prev{
	position: relative;
	width: 40px;
	height: 40px;
	background-image: linear-gradient(to right, var(--accent-color) 0%, var(--accent-color-two) 50%, var(--accent-color) 100%);
	background-size: 200% auto;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.4s ease-in-out;
	cursor: pointer;
}

.expert-btn .expert-btn-next:hover,
.expert-btn .expert-btn-prev:hover{
	background-position: right center;
}

.expert-btn .expert-btn-next{
	margin-left: 20px;
}

.expert-slider .expert-btn-next::before,
.expert-slider .expert-btn-prev::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: url("../images/arrow-white.svg") no-repeat;
	background-position: center center;
	background-size: 16px auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.expert-slider .expert-btn-next::before{
	transform: rotate(180deg);
}

.expert-slider .expert-btn-prev::before{
	transform: rotate(0deg);
}

/* yygk 专家团队: 隐藏数字分页, 统一用左右箭头形式(2026-09-22) */
.expert-slider-yygk .expert-pagination{
	display: none;
}

/* 大屏隐藏 ysinfo 医生轮播左右箭头(yygk 已改箭头形式, 大小屏都显示); 小屏才需要 */
@media only screen and (min-width: 992px){
	.expert-slider-doctors .expert-btn{
		display: none;
	}
}

/* Expert Team Responsive */
@media only screen and (max-width: 991px){
	.expert-team{
		padding: 70px 0;
	}

	/* 触屏无悬停: 移动端默认常显 */
	.expert-hover-panel{
		display: block;
		animation: none;
	}

	.expert-content .expert-time{
		display: block;
		animation: none;
	}

	.expert-content .expert-appointment{
		display: inline-block;
		animation: none;
	}

	/* 触屏无悬停: 按钮默认可见(与桌面一致) */
	.expert-slider .expert-content .expert-appointment{
		visibility: visible;
		opacity: 1;
	}

	/* 小屏显示 ysinfo/yygkinfo 专家团队轮播左右箭头 */
	.expert-slider-doctors .expert-btn,
	.expert-slider-yygk .expert-btn{
		display: flex;
	}

	/* 小屏隐藏 ysinfo 医生轮播数字分页(只用箭头形式) */
	.expert-slider-doctors .expert-pagination{
		display: none;
	}
}

@media only screen and (max-width: 767px){
	.expert-team{
		padding: 60px 0;
	}

	.expert-body{
		margin: 0 10px;
		margin-top: -40px;
		padding: 15px 10px;
	}

	.expert-pagination{
		display: none;
	}

	/* index.html 专家团队分页: 已改用箭头导航，所有设备隐藏数字分页 */
	.expert-slider-index .expert-pagination{
		display: none;
	}

	.expert-btn{
		margin-top: 20px;
	}
}

/* ============================================
   Hospital Honors - 3D Card Carousel (模板移植)
   ============================================ */
.hospital-honors{
	padding: 110px 0 90px;
	background: var(--white-color);
	overflow: hidden;
	position: relative; /* 锚点: :before 背景图相对本区块定位 */
}

.hospital-honors:before{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: url(../images/yyrybg.png) no-repeat;
	opacity: 0.5;
	background-position: center;
	background-size: cover; /* 全尺寸统一: 铺满区块居中, 任何屏宽背景都在轮播正后方, 不再随宽度缩小沉底 */
	width: 100%;
	height: 100%;
	z-index: 0; /* 垫底, 内容浮在上面 */
	pointer-events: none;
}

/* 区块内容压在背景图之上 */
.hospital-honors .container{
	position: relative;
	z-index: 1;
}

/* 大标题: 渐变裁切文字(模板 about-title 风格) */
.honor-carousel-title{
	font-size: clamp(48px, 8vw, 110px);
	font-weight: 900;
	text-align: center;
	letter-spacing: 0.06em;
	line-height: 1.15;
	margin: 0 0 20px;
	white-space: nowrap;
	user-select: none;
	pointer-events: none;
	background: linear-gradient(to bottom, rgba(50, 103, 255, 0.35) 30%, rgba(50, 103, 255, 0) 78%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

/* 轮播容器: 3D 透视(宽度与父级 col-lg-12 对齐, 各断点统一变量驱动) */
.honor-carousel-wrap{
	position: relative;
	width: 100%;
	margin: 0 auto;
	height: calc(var(--hc-cw, 380px) * 0.72 + 60px);
	perspective: 1200px;
}

.honor-carousel-track{
	width: 100%;
	height: 100%;
	position: relative;
	transform-style: preserve-3d;
}

/* 卡片: 白底牌照; 宽度/偏移全部基于 --hc-cw 比例, 任意屏宽自动缩放 */
.honor-carousel-card{
	--hc-cw: clamp(180px, 30vw, 380px);
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--hc-cw);
	margin: calc(var(--hc-cw) * -0.34) 0 0 calc(var(--hc-cw) / -2);
	/*background: var(--white-color);*/
	/*border-radius: 12px;*/
	padding: 10px;
	overflow: hidden;
	/*box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);*/
	transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	cursor: pointer;
}

.honor-carousel-card img{
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	border-radius: 6px;
	transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* 位置类: 中间 + 左右各2张递进层叠 */
.honor-carousel-card.center{
	z-index: 10;
	transform: scale(1.1) translateZ(0);
}

.honor-carousel-card.center img{
	filter: none;
}

.honor-carousel-card.left-1,
.honor-carousel-card.right-1{
	z-index: 5;
	transform: translateX(calc(var(--hc-cw) * -0.68)) scale(0.9) translateZ(-100px);
	opacity: 0.9;
}

.honor-carousel-card.right-1{
	transform: translateX(calc(var(--hc-cw) * 0.68)) scale(0.9) translateZ(-100px);
}

.honor-carousel-card.left-2,
.honor-carousel-card.right-2{
	z-index: 1;
	transform: translateX(calc(var(--hc-cw) * -1.36)) scale(0.8) translateZ(-300px);
	opacity: 0.7;
}

.honor-carousel-card.right-2{
	transform: translateX(calc(var(--hc-cw) * 1.36)) scale(0.8) translateZ(-300px);
}

.honor-carousel-card:not(.center) img{
	filter: grayscale(100%);
}

.honor-carousel-card.hidden{
	opacity: 0;
	pointer-events: none;
}

/* 底部信息: 标题两侧横杠固定(模板 member-name 风格) */
.honor-carousel-info{
	text-align: center;
	margin-top: 30px;
}

.honor-carousel-name{
	color: var(--primary-color);
	font-size: 26px;
	font-weight: 700;
	margin: 0;
	position: relative;
	display: inline-block;
	transition: opacity 0.3s ease;
}

.honor-carousel-name::before,
.honor-carousel-name::after{
	content: "";
	position: absolute;
	top: 100%;
	width: 100px;
	height: 2px;
	background: var(--accent-color);
}

.honor-carousel-name::before{
	left: -120px;
}

.honor-carousel-name::after{
	right: -120px;
}

.honor-carousel-sub{
	color: var(--text-color);
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin: 14px 0 0;
	transition: opacity 0.3s ease;
}

/* 圆点 */
.honor-carousel-dots{
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 30px;
}

.honor-carousel-dot{
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: rgba(50, 103, 255, 0.2);
	cursor: pointer;
	transition: all 0.3s ease;
}

.honor-carousel-dot.active{
	background: var(--accent-color);
	transform: scale(1.2);
}

/* 箭头: 默认白色圆+蓝色箭头, hover 蓝色背景+白色箭头 */
.honor-carousel-arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: var(--white-color);
	color: var(--accent-color);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 20;
	transition: all 0.3s ease;
	font-size: 26px;
	line-height: 1;
	border: none;
	outline: none;
	padding: 0 0 4px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.10);
}

.honor-carousel-arrow:hover{
	background: var(--accent-color);
	color: var(--white-color);
	transform: translateY(-50%) scale(1.1);
	box-shadow: 0 4px 14px rgba(50,103,255,0.35);
}

.honor-carousel-arrow.left{
	left: 15px;
	padding-right: 3px;
}

.honor-carousel-arrow.right{
	right: 15px;
	padding-left: 3px;
}

/* Honor Carousel Responsive(卡片宽/偏移已全流式, 各断点只做微调) */
@media only screen and (max-width: 991px){
	/* 平板: 隐藏最外层两张, 避免与箭头重叠 */
	.honor-carousel-card.left-2,
	.honor-carousel-card.right-2{
		display: none;
	}
}

@media only screen and (max-width: 767px){
	.hospital-honors{
		padding: 80px 0 60px;
	}

	.honor-carousel-title{
		white-space: normal;
	}

	/* 手机: 更小的卡片占比 */
	.honor-carousel-card{
		--hc-cw: min(56vw, 260px);
		padding: 6px;
		border-radius: 10px;
	}

	.honor-carousel-wrap{
		perspective: 900px;
	}

	.honor-carousel-name{
		font-size: 20px;
	}

	.honor-carousel-name::before,
	.honor-carousel-name::after{
		width: 50px;
	}

	.honor-carousel-name::before{
		left: -68px;
	}

	.honor-carousel-name::after{
		right: -68px;
	}

	.honor-carousel-sub{
		font-size: 13px;
	}

	.honor-carousel-dots{
		margin-top: 22px;
	}

	.honor-carousel-arrow{
		width: 34px;
		height: 34px;
		font-size: 20px;
	}

	.honor-carousel-arrow.left{
		left: 6px;
	}

	.honor-carousel-arrow.right{
		right: 6px;
	}
}


/* 超小屏(≤360px): 进一步收紧 */
@media only screen and (max-width: 360px){
	.honor-carousel-name{
		font-size: 17px;
	}

	.honor-carousel-name::before,
	.honor-carousel-name::after{
		width: 32px;
	}

	.honor-carousel-name::before{
		left: -46px;
	}

	.honor-carousel-name::after{
		right: -46px;
	}

	.honor-carousel-title{
		font-size: 40px;
	}
}


/* ============================================
   News List Page - 分类胶囊切换 + 底部分页 (newslist.html)
   ============================================ */
.page-blog{
	padding: 90px 0 110px;
}

/* 分类胶囊 Tabs(设计图: 白底描边胶囊, 选中蓝底白字) */
.news-tabs{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 50px;
}

.news-tab-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--white-color);
	color: var(--primary-color);
	font-size: 15px;
	font-weight: 500;
	line-height: 1em;
	border: 1px solid var(--border-color);
	border-radius: 50px;
	padding: 13px 34px;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
}

.news-tab-btn:hover{
	border-color: var(--accent-color);
	color: var(--accent-color);
}

.news-tab-btn.active{
	background: var(--accent-color);
	border-color: var(--accent-color);
	color: var(--white-color);
}

/* 新闻网格(复用 post-item 卡片样式, 上下留白) */
.news-grid{
	row-gap: 40px;
}

/* 卡片切换渐入动画 */
.news-card-enter{
	animation: news-card-in 0.5s ease both;
}

@keyframes news-card-in{
	from{
		opacity: 0;
		transform: translateY(24px);
	}
	to{
		opacity: 1;
		transform: translateY(0);
	}
}

/* 底部分页(设计图: 圆形按钮 + 数字, 选中蓝底) */
.news-pagination{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 60px;
}

/* CMS Bootstrap ul.pagination 适配设计稿圆形按钮(pagelist/render 输出的是 li>a/span 结构, 与 .news-page-num 按钮结构不同) */
.news-pagination .pager .pagination{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
}

.news-pagination .pagination > li{
	display: inline-flex;
}

.news-pagination .pagination > li > a,
.news-pagination .pagination > li > span{
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--white-color);
	color: var(--primary-color);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	border: 1px solid var(--border-color);
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
	padding: 0;
	margin: 0;
}

.news-pagination .pagination > li > a:hover{
	border-color: var(--accent-color);
	color: var(--accent-color);
	background: var(--white-color);
}

.news-pagination .pagination > li.active > span,
.news-pagination .pagination > li.active > a{
	background: var(--accent-color);
	border-color: var(--accent-color);
	color: var(--white-color);
}

.news-pagination .pagination > li.disabled > span{
	opacity: 0.35;
	cursor: not-allowed;
	color: var(--text-color);
}

.news-page-numbers{
	display: flex;
	align-items: center;
	gap: 10px;
}

.news-page-btn,
.news-page-num{
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--white-color);
	color: var(--primary-color);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	border: 1px solid var(--border-color);
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
}

.news-page-btn{
	font-size: 20px;
	padding-bottom: 3px;
	color: var(--text-color);
}

.news-page-btn:hover:not(:disabled),
.news-page-num:hover{
	border-color: var(--accent-color);
	color: var(--accent-color);
}

.news-page-btn:disabled{
	opacity: 0.35;
	cursor: not-allowed;
}

.news-page-num.active{
	background: var(--accent-color);
	border-color: var(--accent-color);
	color: var(--white-color);
}

/* 省略号分页: 超出窗口的页码用 ... 表示 */
.news-page-ellipsis{
	width: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--text-color);
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 2px;
	user-select: none;
	opacity: 0.55;
}

/* 响应式 */
@media only screen and (max-width: 991px){
	.page-blog{
		padding: 60px 0 80px;
	}

	.news-tabs{
		gap: 10px;
		margin-bottom: 40px;
	}

	.news-tab-btn{
		font-size: 14px;
		padding: 11px 26px;
	}

	.news-grid{
		row-gap: 30px;
	}

	.news-pagination{
		margin-top: 45px;
	}
}

@media only screen and (max-width: 767px){
	.page-blog{
		padding: 50px 0 60px;
	}

	.news-tabs{
		gap: 8px;
		margin-bottom: 30px;
	}

	.news-tab-btn{
		font-size: 13px;
		padding: 10px 20px;
	}

	.news-page-btn,
	.news-page-num{
		width: 38px;
		height: 38px;
		font-size: 14px;
	}

	.news-pagination{
		gap: 8px;
		margin-top: 35px;
	}

	.news-page-numbers{
		gap: 8px;
	}
}


/* ============================================
   yygkinfo 页 - 区块标题(左侧标题 + 右侧横线, 设计图)
   ============================================ */
.yygk-section-heading{
	display: flex;
	align-items: center;
	margin: 50px 0 30px;
}

.yygk-section-heading h2{
	font-size: 28px;
	font-weight: 700;
	color: var(--accent-color);
	margin: 0;
	white-space: nowrap;
	flex-shrink: 0;
}

/* 右侧横线: 占满剩余宽度 */
.yygk-section-line{
	display: block;
	flex: 1;
	height: 1px;
	background: var(--divider-color);
	margin-left: 22px;
}

/* 响应式 */
@media only screen and (max-width: 991px){
	.yygk-section-heading{
		margin: 40px 0 24px;
	}

	.yygk-section-heading h2{
		font-size: 24px;
	}
}

@media only screen and (max-width: 767px){
	.yygk-section-heading{
		margin: 32px 0 20px;
	}

	.yygk-section-heading h2{
		font-size: 21px;
	}

	.yygk-section-line{
		margin-left: 14px;
	}
}


/* ============================================
   ylkpinfo 页 - 上一篇/下一篇导航 (设计图)
   ============================================ */
.article-nav{
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px 20px;
	margin-top: 34px;
}

.article-nav-link{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--accent-color);
	font-size: 15px;
	text-decoration: none;
	padding: 6px 2px;
	transition: color 0.3s ease-in-out;
}

.article-nav-link i{
	font-size: 14px;
	transition: transform 0.3s ease-in-out;
}

.article-nav-link:hover{
	color: var(--primary-color);
}

.article-nav-link:hover .fa-angle-left{
	transform: translateX(-3px);
}

.article-nav-link:hover .fa-angle-right{
	transform: translateX(3px);
}

.article-nav-label{
	color: var(--text-color);
	font-size: 14px;
}

.article-nav-title{
	font-weight: 600;
}

/* 响应式 */
@media only screen and (max-width: 767px){
	.article-nav{
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		margin-top: 26px;
	}

	.article-nav-link{
		font-size: 14px;
	}
}


/* ============================================
   zlkm 页 - 第9卡 联系我们CTA (设计图)
   ============================================ */
.service-cta-card{
	position: relative;   /* 锚定 :before 背景图 */
	display: flex;
	flex-direction: column;
	overflow: hidden;     /* 背景图超出部分裁掉, 不影响邻卡 */
}

/* 背景图: 右下角装饰, cover 裁切不变形, 垫底不挡交互 */
.service-cta-card:before{
	content: '';
	position: absolute;
	inset: 0;
	background: url(../images/nurse-help-consultation.png) no-repeat;
	background-position: right bottom;
	background-size: cover;
	opacity: 0.16;            /* 设计图: 浅淡装饰水印效果 */
	z-index: 0;
	pointer-events: none;
}

/* 内容压在背景图之上 */
.service-cta-body,
.service-cta-card .service-image{
	position: relative;
	z-index: 1;
}

.service-cta-body{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 18px;
	padding: 34px 0 30px;
}

.service-cta-body h3{
	font-size: 24px;
	font-weight: 700;
	color: var(--primary-color);
	margin: 0;
	line-height: 1.35;
}

/* 响应式 */
@media only screen and (max-width: 991px){
	.service-cta-body h3{
		font-size: 21px;
	}
}

@media only screen and (max-width: 767px){
	.service-cta-body{
		padding: 26px 0 24px;
		gap: 14px;
	}

	.service-cta-body h3{
		font-size: 19px;
	}
}


/* ============================================
   ylkplist 页 - 医疗科普文章列表 (设计图, 风格复用左侧诊疗科目列表)
   ============================================ */
.ylkp-article-list ul{
	list-style: none;
	margin: 30px 0 0;
	padding: 0;
}

.ylkp-article-list ul li{
	border-bottom: 1px solid var(--divider-color);
	padding-bottom: 15px;
	margin-bottom: 15px;
	transition: all 0.3s ease-in-out;
}

.ylkp-article-list ul li:last-child{
	margin: 0;
	padding: 0;
	border-bottom: none;
}

.ylkp-article-list ul li a{
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 4px 30px 4px 2px;   /* 右侧给箭头留位 */
	color: var(--text-color);
	text-decoration: none;
	transition: all 0.3s ease-in-out;
}
.ylkp-article-list ul li a:before{
	content: '\f061';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 16px;
	color: var(--accent-color);
	display: inline-block;
	line-height: normal;
	position: absolute;
	top: 36%;
	right: 0;
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.4s ease-in-out;
}

.ylkp-article-list ul li:hover a{
	color: var(--accent-color);
}

.ylkp-article-title{
	flex: 1;
	font-size: 16px;
	line-height: 1.5;
	transition: color 0.3s ease-in-out;
}

.ylkp-article-date{
	font-size: 14px;
	color: var(--text-color);
	flex-shrink: 0;
}

/* 右侧箭头: 同诊疗科目列表的悬停动画 */
.ylkp-article-list ul li a i{
	font-size: 16px;
	color: var(--accent-color);
	flex-shrink: 0;
	transition: transform 0.4s ease-in-out;
}

.ylkp-article-list ul li:hover a i{
	transform: translateX(4px);
}

/* 响应式 */
@media only screen and (max-width: 991px){
	.ylkp-article-title{
		font-size: 15px;
	}

	.ylkp-article-date{
		font-size: 13px;
	}
}

@media only screen and (max-width: 767px){
	.ylkp-article-list ul li{
		padding-bottom: 12px;
		margin-bottom: 12px;
	}

	.ylkp-article-list ul li a{
		flex-wrap: wrap;
		gap: 4px 10px;
		padding-right: 24px;
	}

	.ylkp-article-title{
		font-size: 14px;
		flex-basis: 100%;
	}

	.ylkp-article-date{
		margin-left: auto;
	}

	.ylkp-article-list{
		margin-bottom: 10px;
	}
}

/************************************/
/***     医生出诊时间表 (.doctor-timetable)  ***/
/************************************/

.doctor-timetable{
	margin: 0 0 40px;
	position: relative;
}

/* 顶部科室筛选下拉 */
.table-sort{
	margin-bottom: 24px;
}

.table-sort .select-holder{
	position: relative;
	width: 254px;
	max-width: 100%;
}

.table-sort .select-holder select{
	width: 100%;
	height: 52px;
	padding: 0 42px 0 20px;
	border: 1px solid var(--border-color);
	border-radius: 12px;
	background: var(--white-color);
	font-size: 14px;
	font-weight: 500;
	color: var(--primary-color);
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%233267ff' d='M1.41 0.59L6 5.17L10.59 0.59L12 2L6 8L0 2z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 18px center;
	transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.table-sort .select-holder select:focus{
	outline: none;
	border-color: var(--accent-color);
	box-shadow: 0 0 0 3px rgba(50, 103, 255, 0.12);
}

/* 左右滑动提示 */
.tt-scroll-hint{
	display: none;
}

/* 时间表容器 */
.tt-inner{
	background: var(--white-color);
	border: 1px solid var(--border-color);
	border-radius: 18px;
	overflow: hidden;
}

.tt-row{
	display: grid;
	grid-template-columns: 130px repeat(7, 1fr);
}

.tt-row + .tt-row{
	border-top: 1px solid var(--border-color);
}

.tt-cell{
	min-height: 96px;
	padding: 10px 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.tt-cell + .tt-cell{
	border-left: 1px solid var(--border-color);
}

.tt-header .tt-cell{
	min-height: 46px;
	font-size: 14px;
	font-weight: 600;
	color: var(--primary-color);
	background: var(--secondary-color);
}

.tt-time-head{
	justify-content: flex-start;
	padding-left: 16px;
	font-weight: 600;
}

.tt-time{
	flex-direction: column;
	font-size: 14px;
	font-weight: 600;
	color: var(--primary-color);
}

.tt-time span{
	font-size: 11px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 4px;
	white-space: nowrap;
}

/* 休诊占位 */
.tt-cell.empty span{
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #f0f2f6;
	color: #b6bdc9;
	font-size: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* 出诊卡片（联动筛选：不匹配项由页面脚本 display:none 隐藏） */
.time-table{
	width: 100%;
	max-width: 120px;
	background: var(--accent-color);
	color: var(--white-color);
	border-radius: 12px;
	padding: 12px 6px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	cursor: pointer;
	transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out, background 0.3s ease-in-out;
}

.time-table:hover{
	transform: translateY(-3px);
	box-shadow: 0 10px 24px rgba(50, 103, 255, 0.28);
	background: var(--accent-color-two);
}

.time-table .tt-clinic{
	font-size: 13px;
	font-weight: 600;
}

.time-table .tt-type{
	font-size: 11px;
	opacity: 0.92;
}

.time-table .tt-hours{
	font-size: 11px;
	font-weight: 600;
	background: rgba(255, 255, 255, 0.18);
	padding: 2px 10px;
	border-radius: 20px;
	margin-top: 2px;
	white-space: nowrap;
}

@media only screen and (max-width: 991px){
	.table-sort .select-holder{
		margin: 0 auto;
	}

	.tt-scroll-hint{
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 6px;
		margin-bottom: 10px;
		font-size: 12px;
		color: var(--text-color);
	}

	.tt-inner{
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.tt-row{
		grid-template-columns: 110px repeat(7, 120px);
		min-width: 950px;
	}
}

@media only screen and (max-width: 767px){
	.table-sort .select-holder{
		width: 100%;
	}

	.tt-row{
		grid-template-columns: 100px repeat(7, 116px);
		min-width: 912px;
	}

	.tt-cell{
		min-height: 84px;
	}

	.tt-header .tt-cell{
		min-height: 42px;
	}

	.time-table{
		max-width: 104px;
		padding: 10px 4px 8px;
	}
}

/*------------------------------------*\
    #Timetable
\*------------------------------------*/
.timetable {
	padding-top: 0px;
	padding-bottom: 110px;
}
@media screen and (max-width:991.98px) {
	.timetable {
		padding-bottom: 70px;
	}
}
.timetable .table-sort {
	margin-bottom: 50px;
	height: 60px;
}
@media screen and (max-width:991.98px) {
	.timetable .table-sort {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
}
.timetable .table-sort .nice-select {
	padding: 9px 25px;
	width: 254px;
	border-color: #e6e8eb;
	height: 100%;
	font-size: var(--global--font-body);
	font-weight: 400;
	font-size: 14px;
	color: #68738e;
	text-transform: capitalize;
}
.timetable .table-sort .nice-select::after {
	width: 7px;
	height: 7px;
	border-color: var(--global--color-heading);
	right: 25px;
}
.timetable .table-sort .nice-select .list {
	width: 100%;
}
@media screen and (min-width:992px) {
	.timetable .table-holder {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
	}
}
.timetable .table-holder .day-appointment {
	background-color: #dae6fa;
	border-radius: 4px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: var(--global--font-body);
	font-weight: 700;
	font-size: 14px;
	color: var(--global--color-body);
	text-transform: capitalize;
	margin: 2px;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .day-appointment {
		margin: 0;
		padding: 15px 0;
	}
}
.timetable .table-holder .appointment {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	font-family: var(--global--font-body);
	font-weight: 700;
	font-size: 14px;
	color: var(--global--color-body);
	text-transform: capitalize;
	margin: 2px;
	border-radius: 4px;
	background-color: var(--accent-color);
}
.timetable .table-holder .time-table {
	padding: 0 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	background-color: #04245c;
	margin: 2px;
	border-radius: 4px;
	-webkit-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	opacity: 0;
	visibility: hidden;
}
.timetable .table-holder .time-table.active {
	opacity: 1;
	visibility: visible;

}


@media (min-width: 992px) and (max-width: 1200px) {
	.timetable .table-holder .time-table {
		padding: 0;
	}
}
.timetable .table-holder .time-table:hover {
	background-color: var(--accent-color);
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .time-table {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 15px 0;
		border-radius: 0;
		background-color: transparent;
		border-bottom: 1px solid #eaeaea;
		opacity: 1;
		visibility: visible;
		display: none;
	}
	.timetable .table-holder .time-table.active {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.timetable .table-holder .time-table:hover {
		background-color: transparent;
	}
	.timetable .table-holder .time-table:last-child {
		border-bottom: 0;
	}
}
.timetable .table-holder .time-table .clinic {
	font-weight: 500;
	font-family: var(--global--font-heading);
	font-size: 16px;
	line-height: 28px;
	color: var(--global--color-white);
	text-transform: capitalize;
	margin-bottom: 5px;
}
.timetable .table-holder .time-table .clinic:hover {
	text-decoration: underline;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .time-table .clinic {
		color: var(--global--color-body);
	}
	.timetable .table-holder .time-table .clinic:hover {
		text-decoration: none;
	}
}
.timetable .table-holder .time-table .type {
	font-family: var(--global--font-body);
	font-weight: 400;
	font-size: 13px;
	line-height: 23px;
	color: #f4f4f4;
	text-transform: capitalize;
	margin-bottom: 19px;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .time-table .type {
		display: none;
	}
}
.timetable .table-holder .time-table .hours {
	font-family: var(--global--font-body);
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	color: #f4f4f4;
	margin-bottom: 14px;
}
.timetable .table-holder .time-table .hours span {
	display: block;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .time-table .hours {
		color: var(--global--color-body);
		margin-bottom: 0;
	}
	.timetable .table-holder .time-table .hours span {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.timetable .table-holder .time-table .hours span:last-child:after {
		content: unset;
	}
	.timetable .table-holder .time-table .hours span:after {
		content: "-";
		margin: 4px;
	}
}
.timetable .table-holder .time-table .doctor {
	font-family: var(--global--font-heading);
	font-weight: 400;
	font-size: 14px;
	line-height: 32px;
	color: #f4f4f4;
	margin-bottom: 0;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .time-table .doctor {
		display: none;
	}
}
@media screen and (min-width:992px) {
	.timetable .table-holder .table-column {
		display: grid;
		grid-template-rows: 50px repeat(2, 260px);
	}
}
.timetable .table-holder .table-column .double {
	grid-row: span 2;
}
@media screen and (max-width:991.98px) {
	.timetable .table-holder .table-column.first-column {
		display: none;
	}
}
@media screen and (min-width:992px) {
	.timetable .table-holder .table-column.first-column .appointment {
		background-color: #dae6fa;
	}
	.timetable .table-holder .table-column.first-column .day-appointment {
		background-color: var(--global--color-white);
	}
}
.timetable .table-holder .day-appointment {
	width: auto;
	height: auto;
}
/* 第一列 上午/下午 时段标签 */
.timetable .table-holder .first-column .day-appointment{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 2px;
}
.timetable .table-holder .tt-range{
	font-family: var(--global--font-body);
	font-weight: 400;
	font-size: 12px;
	line-height: 18px;
	color: #68738e;
	white-space: nowrap;
}
.timetable .table-holder .appointment {
	width: auto;
	height: auto;
}
.timetable .table-holder .time-table {
	width: auto;
	height: auto;
}

/* =========================================================
   yssb.html 分组轮播(不走 expert-slider, 避免 function.js 重复初始化):
   医生 3列×4行=12人/屏 (yssb-slider-wrap) + 医疗设备 3列×2行=6台/屏 (equipment-slider-wrap)
   翻页箭头: 与首页"医院荣誉"(honor-carousel-arrow) 同款 —— 默认白底蓝箭头, hover 蓝底白箭头+放大
   ========================================================= */
.yssb-slider-wrap .expert-btn-prev,
.yssb-slider-wrap .expert-btn-next,
.equipment-slider-wrap .expert-btn-prev,
.equipment-slider-wrap .expert-btn-next{
	position: relative;
	width: 44px;
	height: 44px;
	background: var(--white-color);
	background-image: none;
	color: var(--accent-color);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	line-height: 1;
	padding: 0 0 4px;
	border: none;
	outline: none;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 2px 8px rgba(0,0,0,0.10);
}
.yssb-slider-wrap .expert-btn-prev:hover,
.yssb-slider-wrap .expert-btn-next:hover,
.equipment-slider-wrap .expert-btn-prev:hover,
.equipment-slider-wrap .expert-btn-next:hover{
	background: var(--accent-color);
	background-image: none;
	color: var(--white-color);
	transform: scale(1.1);
	box-shadow: 0 4px 14px rgba(50,103,255,0.35);
}
.yssb-slider-wrap .expert-btn-prev,
.equipment-slider-wrap .expert-btn-prev{
	padding-right: 3px;
}
.yssb-slider-wrap .expert-btn-next,
.equipment-slider-wrap .expert-btn-next{
	padding-left: 3px;
}

/* =========================================================
   医生详情页 出诊时间表(科室/医生联动版, show_doctor.html):
   默认: 每个格子(周×上午/下午)只显示科室名称(tt-depts, 可多个)
   下拉单选科室后(tt-show-doctors): 隐藏科室名, 只显示匹配科室的医生(tt-doctors.is-on)
   ========================================================= */
.timetable .table-holder .time-table .tt-depts{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}
.timetable .table-holder .time-table .tt-doctors{
	display: none;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}
.timetable .table-holder .time-table.tt-show-doctors .tt-depts{
	display: none;
}
.timetable .table-holder .time-table.tt-show-doctors .tt-doctors.is-on{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
/* 移动端: 基础规则把 .doctor 全隐藏, 此处按新结构放开并改成正文色(移动端格子无底色) */
@media screen and (max-width:991.98px){
	.timetable .table-holder .time-table .tt-depts{
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.timetable .table-holder .time-table .tt-doctors{
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.timetable .table-holder .time-table .tt-doctors .doctor{
		display: block;
		color: var(--global--color-body);
		text-align: right;
	}
}

/* ============================================================
   首页 banner 移动端适配（2026-09-24）
   问题: PC 图(1920x800)在移动端被 object-fit:cover + 固定高度横向裁切, 文字被切掉
   方案: <=991px 取消固定高度, 图片按原始比例完整显示;
         >=992px 若配了移动端专属图(mbannerfocus)也用 <picture> 自动切换
   ============================================================ */
@media screen and (max-width:991.98px){
	.hero.hero-bg-image.hero-slider-layout .hero-slide,
	.banner-slider .hero-slide{
		padding: 0;
		height: auto;
		aspect-ratio: auto;
	}
	.hero.hero-bg-image.hero-slider-layout .hero-slide .hero-slider-image{
		position: static;
	}
	.hero.hero-bg-image.hero-slider-layout .hero-slide .hero-slider-image img{
		width: 100%;
		height: auto;
		object-fit: contain;
		display: block;
	}
	.hero.hero-bg-image.hero-slider-layout .hero-pagination{
		bottom: 12px;
	}
}


/* ====== 科室栏目页·关联区块（相关医生/设备/技术） list_dept.html + related_channel_sections.html ====== */
.chz-related-section { margin-bottom: 36px; }
.chz-related-title { font-size: 22px; font-weight: 700; color: #221d32; margin-bottom: 18px; padding-bottom: 10px; border-bottom: 2px solid #ece7f5; }
.chz-related-card { display: block; text-align: center; margin-bottom: 20px; text-decoration: none; }
.chz-related-card:hover { text-decoration: none; }
.chz-related-thumb { display: block; width: 100%; aspect-ratio: 4/3; overflow: hidden; border-radius: 10px; background: #f4f2f8; margin-bottom: 10px; }
.chz-related-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.chz-related-card:hover .chz-related-thumb img { transform: scale(1.05); }
.chz-related-name { display: block; font-size: 15px; font-weight: 600; color: #221d32; line-height: 1.4; }
.chz-related-card:hover .chz-related-name { color: #506cd7; }
.chz-related-sub { display: block; font-size: 13px; color: #8a8494; margin-top: 2px; }
.chz-dept-intro { margin-bottom: 26px; color: #555; line-height: 1.9; }

/* ====== 中屏（992~1199px）桌面菜单防挤压：容器固定 960px，需压缩导航/右侧区域防止换行 ====== */
@media only screen and (min-width: 992px) and (max-width: 1199px){
	.navbar-brand img{ max-height: 44px; }
	.main-menu .nav-menu-wrapper{ margin: 0 8px; }
	.main-menu ul li.nav-item .nav-link{ padding: 15px 8px; font-size: 14px; white-space: nowrap; }
	.main-menu ul li.submenu > a:after{ margin-left: 4px; }
	.main-header .menu-right-content .support-box{ margin-right: 14px; }
	.main-header .menu-right-content .support-box span{ display: none; }
	.main-header .menu-right-content .support-box h6{ font-size: 15px; white-space: nowrap; }
	.btn-default{ font-size: 15px; }
}

/* ====== 小桌面（1200~1439px）二级压缩：容器全宽自适应，此区间基础样式仍放不下 ====== */
@media only screen and (min-width: 1200px) and (max-width: 1439px){
	.navbar-brand img{ max-height: 50px; }
	.main-menu ul li.nav-item .nav-link{ padding: 15px 13px; font-size: 15px; white-space: nowrap; }
	.main-menu ul li.submenu > a:after{ margin-left: 5px; }
	.main-header .menu-right-content .support-box{ margin-right: 24px; }
	.main-header .menu-right-content .support-box span{ font-size: 13px; }
	.main-header .menu-right-content .support-box h6{ font-size: 15px; white-space: nowrap; }
}
