.join-body {
	background-image: url('/images/joinUs/27.png');
	background-size: 100% 100%;
	padding-bottom: 1px;
}

@media (min-width:768px) {

	/* 顶部 Banner 区域 */
	.join-banner {
		width: 100%;
		height: 100vh;
		background-image: url('/images/joinUs/51.png');
		background-size: 100% 100vh;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		overflow: hidden;
	}

	.join-banner-content {
		text-align: center;
		color: #333;
		z-index: 2;
		position: relative;
		max-width: 1600px;
		width: 100%;
	}

	.join-banner-title {
		font-size: 42px;
		font-weight: 700;
		line-height: 1.6;
		margin-bottom: 20px;
		color: #2C3E50;
		text-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
		animation: fadeInUp 1s ease-out;
		margin-top: 100px;
	}

	.join-banner-subtitle {
		font-size: 18px;
		color: #5A6C7D;
		margin-bottom: 60px;
		font-weight: 400;
		animation: fadeInUp 1.2s ease-out;
	}

	.join-banner-data {
		margin-bottom: 50px;
		animation: fadeInUp 1.4s ease-out;
	}

	.join-banner-data-title {
		font-size: 32px;
		color: #2C3E50;
		margin-bottom: 12px;
	}

	.join-banner-data-subtitle {
		font-size: 16px;
		color: #7F8C8D;
	}

	/* Banner 卡片区域 */
	.join-banner-cards {
		display: flex;
		justify-content: center;
		gap: 20px;
		margin-top: 40px;
		animation: fadeInUp 1.6s ease-out;
	}

	.join-banner-card {
		position: relative;
	}

	.join-banner-card-top {
		box-sizing: border-box;
		height: 177px;
		width: 282px;
		padding: 15px 17px;
		border-radius: 20px;
		border: 2px solid #FFF;
		position: relative;
		z-index: 1;
	}

	.join-banner-card-bottom {
		display: flex;
		align-items: flex-end;
		justify-content: center;
		border-radius: 20px;
		width: 319px;
		height: 184px;
		margin-top: -120px;
	}

	.join-banner-card-icon {
		margin-bottom: 10px;
		display: flex;
		align-items: center;
	}

	.card-icon-img {
		width: 40px;
		height: 40px;
		object-fit: contain;
	}

	.join-banner-card-title {
		font-size: 24px;
		font-weight: 700;
		color: #333;
		margin-left: 12px;
	}

	.join-banner-card-desc {
		flex: 1;
	}

	.join-banner-card-desc p {
		font-size: 13px;
		color: #333333;
		line-height: 1.8;
		margin: 0;
		text-align: left;
		text-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	}

	.join-banner-card-btn {
		color: #FFF;
		font-size: 18px;
		font-weight: 500;
		margin-bottom: 20px;
	}

	.join-banner-card:nth-of-type(1) .join-banner-card-top {
		background: linear-gradient(180deg, #F6F9FF 0%, #CECBFC 100%);
	}

	.join-banner-card:nth-of-type(1) .join-banner-card-bottom {
		background: linear-gradient(180deg, #E2D6FE 0%, #1514D9 100%);
	}


	.join-banner-card:nth-of-type(2) .join-banner-card-top {
		background: linear-gradient(180deg, #F6FCFF 0%, #CBE9FC 100%);
	}

	.join-banner-card:nth-of-type(2) .join-banner-card-bottom {
		background: linear-gradient(180deg, #D6F8FE 0%, #14A4D9 100%);
	}

	.join-banner-card:nth-of-type(3) .join-banner-card-top {
		background: linear-gradient(180deg, #FFF6F6 0%, #FCCBCB 100%);
	}

	.join-banner-card:nth-of-type(3) .join-banner-card-bottom {
		background: linear-gradient(180deg, #FED6D6 0%, #D91414 100%);
	}

	.join-banner-card:nth-of-type(4) .join-banner-card-top {
		background: linear-gradient(180deg, #F6FFFD 0%, #CBFCF4 100%);
	}

	.join-banner-card:nth-of-type(4) .join-banner-card-bottom {
		background: linear-gradient(180deg, #D6FEED 0%, #14D9AB 100%);
	}

	.join-banner-card:nth-of-type(5) .join-banner-card-top {
		background: linear-gradient(180deg, #FFF6FD 0%, #FCCBF0 100%);
	}

	.join-banner-card:nth-of-type(5) .join-banner-card-bottom {
		background: linear-gradient(180deg, #F7D6FE 0%, #D914CC 100%);
	}




	@keyframes fadeInUp {
		from {
			opacity: 0;
			transform: translateY(30px);
		}

		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

	/* 用户注册区域 */
	.join-section {
		width: 1440px;
		margin: 80px auto;
		position: relative;
	}

	.join-title-wrap {
		text-align: center;
		margin-bottom: 60px;
	}

	.join-title {
		font-size: 46px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
		position: relative;
		display: inline-block;
	}

	.join-title::after {
		content: '';
		position: absolute;
		bottom: -8px;
		left: 50%;
		transform: translateX(-50%);
		width: 80px;
		height: 4px;
		background: linear-gradient(90deg, #FF6B9D 0%, #C084FC 100%);
		border-radius: 2px;
	}

	.join-subtitle {
		font-size: 19px;
		color: #666;
		line-height: 1.6;
	}

	/* 用户卡片列表 */
	.join-cards {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 30px;
	}

	.join-card {
		width: 260px;
		background: rgba(255, 255, 255, 0.95);
		border-radius: 28px;
		padding: 35px 28px;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
		transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
		cursor: pointer;
		position: relative;
		overflow: hidden;
		border: 2px solid rgba(255, 255, 255, 0.8);
	}

	.join-card::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 5px;
		background: linear-gradient(90deg, #FF6B9D 0%, #C084FC 50%, #4FC3F7 100%);
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	}

	.join-card:hover::before {
		transform: scaleX(1);
	}

	.join-card:hover {
		transform: translateY(-15px) scale(1.02);
		box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12);
		border-color: rgba(255, 107, 157, 0.3);
	}

	.join-card:nth-child(1):hover {
		box-shadow: 0 16px 48px rgba(255, 107, 157, 0.25);
	}

	.join-card:nth-child(2):hover {
		box-shadow: 0 16px 48px rgba(255, 140, 66, 0.25);
	}

	.join-card:nth-child(3):hover {
		box-shadow: 0 16px 48px rgba(155, 89, 182, 0.25);
	}

	.join-card:nth-child(4):hover {
		box-shadow: 0 16px 48px rgba(231, 76, 60, 0.25);
	}

	.join-card:nth-child(5):hover {
		box-shadow: 0 16px 48px rgba(26, 188, 156, 0.25);
	}

	.join-card-icon {
		width: 70px;
		height: 70px;
		margin-bottom: 20px;
		transition: transform 0.5s ease;
	}

	.join-card:hover .join-card-icon {
		transform: scale(1.05) rotate(5deg);
	}

	.join-card-title {
		font-size: 24px;
		font-weight: 700;
		color: #333;
		margin-bottom: 15px;
	}

	.join-card-desc {
		font-size: 15px;
		color: #666;
		line-height: 1.8;
	}

	.join-card-btn {
		width: 100%;
		height: 46px;
		border-radius: 23px;
		background: linear-gradient(135deg, #FF6B9D 0%, #C084FC 100%);
		color: #FFF;
		font-size: 15px;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 25px;
		cursor: pointer;
		transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
		border: none;
		position: relative;
		overflow: hidden;
	}

	.join-card-btn::before {
		content: '';
		position: absolute;
		top: 0;
		left: -100%;
		width: 100%;
		height: 100%;
		background: linear-gradient(135deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.1) 100%);
		transition: left 0.5s ease;
	}

	.join-card-btn:hover::before {
		left: 100%;
	}

	.join-card-btn:hover {
		transform: scale(1.05);
		box-shadow: 0 8px 24px rgba(255, 107, 157, 0.5);
	}

	.join-card:nth-child(1) .join-card-btn {
		background: linear-gradient(135deg, #FF6B9D 0%, #FF8FAB 100%);
	}

	.join-card:nth-child(2) .join-card-btn {
		background: linear-gradient(135deg, #FF8C42 0%, #FFB366 100%);
	}

	.join-card:nth-child(3) .join-card-btn {
		background: linear-gradient(135deg, #9B59B6 0%, #B57EDC 100%);
	}

	.join-card:nth-child(4) .join-card-btn {
		background: linear-gradient(135deg, #E74C3C 0%, #EC7063 100%);
	}

	.join-card:nth-child(5) .join-card-btn {
		background: linear-gradient(135deg, #1ABC9C 0%, #48D1B8 100%);
	}

	.xiejie {
		height: 116px;
		background: linear-gradient(180deg, #E7F1FF 0%, rgba(0, 0, 0, 0) 100%);
		border-radius: 0px 0px 0px 0px;
	}

	/* 流程步骤区域 */
	.join-process {
		position: relative;
	}

	.join-process-title {
		position: relative;
		z-index: 1;
		text-align: center;
		margin-bottom: 80px;
	}

	.join-process-main {
		font-size: 46px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
		position: relative;
		display: inline-block;
	}

	.join-process-icon {
		width: 120px;
		height: 120px;
		position: absolute;
		right: -100px;
		top: -40px;
	}

	.join-process-cards {
		margin: 0 auto;
		width: 1340px;
		display: flex;
		justify-content: space-between;
		gap: 40px;
		position: relative;
		z-index: 1;
	}

	.join-process-card {
		position: relative;
		transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
		display: flex;
		flex-direction: column;
	}

	/* 用户端流程 - 蓝色 */
	.join-process-card.user {
		background-image: url('/images/joinUs/21.png');
		background-size: 420px 564px;
		width: 420px;
		height: 564px;
		background-repeat: no-repeat;
	}

	/* 技师入驻流程 - 橙色 */
	.join-process-card.technician {
		background-image: url('/images/joinUs/22.png');
		background-size: 420px 564px;
		width: 420px;
		height: 564px;
		background-repeat: no-repeat;
	}

	/* 商家入驻流程 - 紫色 */
	.join-process-card.merchant {
		background-image: url('/images/joinUs/23.png');
		background-size: 420px 564px;
		width: 420px;
		height: 564px;
		background-repeat: no-repeat;
	}

	/* 代理入驻流程 - 红色 */
	.join-process-card.agent {
		background-image: url('/images/joinUs/25.png');
		background-size: 630px 440px;
		width: 630px;
		height: 440px;
		background-repeat: no-repeat;
	}

	/* 推广流程 - 青色 */
	.join-process-card.promotion {
		background-image: url('/images/joinUs/24.png');
		background-size: 630px 440px;
		width: 630px;
		height: 440px;
		background-repeat: no-repeat;
	}


	.join-process-card-header {
		margin-bottom: 35px;
	}

	.join-process-card-icon {
		width: 157px;
		height: 157px;
		position: absolute;
		right: 20px;
		top: -40px;
	}

	.join-process-card-title {
		font-size: 30px;
		font-weight: 700;
		color: #FFF;
		margin-left: 16px;
		margin-top: 20px;
	}

	.join-process-card-title2 {
		width: 191px;
		height: 35px;
		background: #FFFFFF;
		border-radius: 9px 9px 9px 9px;
		margin-top: 8px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-left: 16px;
	}

	.join-process-card-title2-img {
		width: 14px;
		height: 14px;
	}

	.join-process-card-title2-title {
		color: #0984FF;
		font-size: 14px;
		margin-left: 4px;
	}

	.join-process-card-title3 {
		color: #FFF;
		font-size: 14px;
		margin-left: 16px;
		margin-top: 16px;
	}

	.join-process-card-steps {
		margin-top: auto;
		height: 380px;
		border-radius: 10px 10px;
	}

	.steps-bg1 {
		background: linear-gradient(0deg, #D4EAFF 0%, #FFF 50%, #D4EAFF 100%);
	}

	.steps-bg2 {
		background: linear-gradient(0deg, #FFE3D2 0%, #FFF 50%, #FFE3D2 100%);
	}

	.steps-bg3 {
		background: linear-gradient(0deg, #E5D2FF 0%, #FFF 50%, #E5D2FF 100%);
	}

	.steps-bg4 {
		background: linear-gradient(0deg, #FFDBE0 0%, #FFF 50%, #FFDBE0 100%);
	}

	.steps-bg5 {
		background: linear-gradient(0deg, #E2FAF5 0%, #FFF 50%, #E2FAF5 100%);
	}

	.join-process-card-step-title {
		font-size: 18px;
		color: #333;
		margin-left: 18px;
		margin-top: 20px;
		margin-bottom: 10px;
	}

	.bg-img-process {
		padding-bottom: 100px;
	}

	.bg-img-process:after {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		right: 0;
		height: 800px;
		background-size: 100% 100%;
		background-image: url('/images/joinUs/9.png');
	}


	.timeline-item {
		display: flex;
		margin-left: 26px;
	}

	.timeline-item-right {
		font-size: 14px;
		padding-left: 16px;
		/* 一级文字 */
		color: #131E3A;
		position: relative;
		margin-top: 5px;


	}

	.timeline-item-right-num {
		position: absolute;
		left: -8px;
		top: -1px;

	}

	.timeline-item-line {
		width: 1px;
		height: calc(68%);
		position: absolute;
		left: -1px;
		bottom: 10px;
		top: 20px;
	}

	.timeline-item-title {
		font-size: 14px;
		color: #131E3A;
	}

	.timeline-item-content {
		margin: 4px 0;
		border-radius: 4px;
		font-size: 14px;
		color: #59647B;
		min-height: 4px;
	}

	.timeline-item-content-title {
		font-size: 12px;
		color: #666;
	}

	.timeline-item-content-title-text {
		font-size: 10px;
		color: #0381FF;
		cursor: pointer;
	}

	.timeline-item-content-person {
		margin: 8px 0;
	}

	.join-process-card-step-wrap {
		display: flex;
		align-items: center;
	}

	.join-process-card-step-item {
		height: 35px;
		background: #FFFFFF;
		border-radius: 9px 9px 9px 9px;
		margin-top: 8px;
		display: flex;
		padding: 0 15px;
		margin-bottom: 20px;
		align-items: center;
		justify-content: center;
		margin-left: 16px;
		font-size: 12px;
	}

	.steps-tel {
		position: absolute;
		bottom: 12px;
		left: 0;
		right: 0;
		text-align: center;
		font-size: 12px;
		color: #666;
	}


	/* 平台优势区域 */
	.join-advantage {
		width: 1440px;
		margin: 100px auto;
		position: relative;
	}

	.join-advantage-title {
		text-align: center;
		margin-bottom: 80px;
		position: relative;
	}

	.join-advantage-title-img1 {
		width: 80px;
		height: 93px;
		position: absolute;
		left: 280px;
		top: -20px;
	}

	.join-advantage-title-img2 {
		width: 297px;
		height: 260px;
		position: absolute;
		right: 0;
		top: 0;
	}

	.join-advantage-main {
		font-size: 46px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
		position: relative;
		display: inline-block;
	}

	.join-advantage-sub {
		font-size: 26px;
		color: #333;
		margin-top: 100px;
		line-height: 1.6;
	}

	.join-advantage-sub2 {
		font-size: 16px;
		color: #666;
		margin-top: 10px;
		line-height: 1.6;
	}

	.join-advantage-cards {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 30px;
	}

	.join-advantage-card {
		flex: 1;
		border: 2px solid #FFF;
		background: linear-gradient(-45deg, #F4DBEB 0%, #F3EDE9 50%, #E7EBEC 100%);
		border-radius: 28px;
		padding: 45px 35px;
		box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
		text-align: center;
		transition: all 0.5s ease;
		position: relative;
		overflow: hidden;
	}

	.join-advantage-card:hover {
		transform: translateY(-30px) !important;
	}

	.join-advantage-card-icon {
		width: 184px;
		height: 149px;
		margin: 30px auto 30px;
		transition: transform 0.5s ease;
	}

	.join-advantage-card-title {
		font-size: 26px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
	}

	.join-advantage-card-desc {
		font-size: 15px;
		color: #666;
		line-height: 1.9;
	}

	/* 服务城市区域 */
	.join-cities {
		width: 1440px;
		margin: 180px auto;
		position: relative;
	}

	.join-cities-img1 {
		width: 359px;
		height: 199px;
		position: absolute;
		bottom: -120px;
		left: -200px;
	}

	.join-cities-img2 {
		width: 176px;
		height: 176px;
		position: absolute;
		top: 220px;
		right: -100px;
	}

	.join-cities-img3 {
		width: 676px;
		height: 880px;
		position: absolute;
		top: -320px;
		right: 0;
		left: 0;
		margin: 0 auto;
	}

	.join-cities-title {
		text-align: center;
		margin-bottom: 50px;
	}

	.join-cities-main {
		font-size: 46px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
		position: relative;
		display: inline-block;
	}

	.join-cities-sub {
		font-size: 19px;
		color: #666;
		line-height: 1.6;
	}

	.join-cities-content {
		margin-top: 100px;
	}

	.join-cities-region {
		margin-bottom: 40px;
		background-color: #FFF;
		margin-top: 30px;
		border-radius: 10px;
		max-height: 600px;
		overflow-y: scroll;
	}

	.join-cities-region-row {
		display: flex;
	}

	.join-cities-region-row:nth-of-type(2n) {
		background: #F7FAFE;
	}

	.join-cities-content-title {
		font-size: 25px;
		color: #333333;
	}

	.join-cities-content-title2 {
		font-size: 16px;
		color: #666;
	}

	.join-cities-region-title {
		font-size: 16px;
		min-height: 100px;
		line-height: 100px;
		color: #333;
		position: relative;
		box-shadow: 3px 0px 3px 0px #ebebeb;
		width: 140px;
		text-align: center;
	}

	.join-cities-list {
		padding: 15px 0;
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
		margin-left: 40px;
		flex: 1;
		align-items: center;
	}

	.join-city-tag {
		color: #333;
		font-size: 15px;
		cursor: pointer;
		margin-right: 10px;
	}

	/* 成功案例区域 */
	.join-cases {
		position: relative;
		margin-bottom: 20px;
	}

	.join-cases-wrap {
		width: 1440px;
		margin: 100px auto 0;
		padding-bottom: 100px;
		position: relative;
		z-index: 1;
	}


	.join-cases-title {
		text-align: center;
		margin-bottom: 80px;
	}

	.join-cases-main {
		font-size: 46px;
		font-weight: 700;
		color: #333;
		margin-bottom: 18px;
		position: relative;
		display: inline-block;
	}

	.join-cases-cards {
		display: flex;
		justify-content: space-between;
		gap: 30px;
		margin-top: 26px;
	}

	.join-case-card {
		background: #FFF;
		border-radius: 14px;
		overflow: hidden;
		transition: all 0.5s ease;
		cursor: pointer;
		position: relative;
		width: 298px;
		box-sizing: border-box;
		padding: 30px;
	}

	.join-case-card:hover {
		transform: translateY(-15px) scale(1.02);
		box-shadow: 0 16px 48px rgba(0, 0, 0, 0.15);
	}

	.join-case-card-name {
		font-size: 18px;
		font-weight: 700;
		color: #333;
		margin-bottom: 15px;
	}

	.join-case-card-info {
		font-size: 12px;
		color: #666;
		line-height: 1.5;
		margin-bottom: 20px;
		margin-top: 20px;
	}

	.join-case-card-tags {
		display: flex;
		align-items: center;
	}

	.join-case-card-tag {
		font-size: 12px;
		color: #333;
		background-color: #F5F7FC;
		padding: 2px 10px;
		margin-right: 10px;
	}

	.join-btn {
		width: 122px;
		height: 36px;
		background: #FFFFFF;
		border-radius: 88px 88px 88px 88px;
		border: 2px solid #EF061C;
		text-align: center;
		line-height: 36px;
		color: #EF061C;
		font-size: 18px;
		font-weight: 700;
	}

	.join-btn:hover {
		background: #EF061C;
		color: #FFFFFF;
	}

	.join-cases-dec {
		margin-top: 26px;
		display: flex;
		flex-direction: column;
		align-items: center;
		color: #333;
		font-size: 14px;
	}

	.join-cases:after {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		right: 0;
		height: 400px;
		background-size: 100% 100%;
		background-image: url('/images/joinUs/16.png');
	}

}