<style>
	/* 전체 화면 고정 및 브라우저 자체 스크롤바 제거 */
	html, body {
		margin: 0;
		padding: 0;
		height: 100%;
		overflow: hidden;
		background-color: #ffffff;
	}

	/* 메인 화면 뷰포트 */
	.pvp-fluid-wrap {
		position: relative;
		width: 100%;
		height: 100vh;
		overflow: hidden;
	}

	/* 실제 세로로 움직일 페이지 컨테이너 */
	.pvp-fluid-body {
		font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, sans-serif;
		color: #111111;
		line-height: 1.8;
		max-width: 910px;
		margin: 0 auto;
		letter-spacing: -0.5px;

		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		height: 100%;
		transition: top 0.5s ease-in-out;
	}

	/* 독립된 단일 페이지 기본 설정 */
	.pvp-page {
		position: relative;
		width: 100%;
		height: 100vh;
		box-sizing: border-box;

		overflow-y: auto;
		overflow-x: hidden;

		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.pvp-page::-webkit-scrollbar {
		display: none;
	}

	/* 콘텐츠 기본 배치 구조 */
	.pvp-page-content {
		position: relative;
		width: 100%;
	}

	.pvp-page.page-intro {
		padding: 40px 0px 240px 0px;
	}

	.pvp-page.page-content-sub {
		padding: 60px 0px 40px 0px;
	}

	/* 최상단 메인 타이틀 영역 */
	.pvp-fluid-body .page-header {
		margin-bottom: 40px;
		padding-bottom: 20px;
		position: relative;
	}
	.pvp-fluid-body .page-header::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 60px;
		height: 4px;
		background-color: #111111;
	}
	.pvp-fluid-body .page-title {
		font-size: 46px;
		font-weight: 800;
		color: #111111;
		line-height: 1.1;
		letter-spacing: -1.5px;
		text-transform: uppercase;
		margin: 0;
	}

	/* 이미지 및 헤드라인 */
	.pvp-fluid-body .main-headline img {
		width: 100%;
		max-width: 100%;
		height: auto;
		margin-bottom: 35px;
		display: block;
	}
	.pvp-fluid-body .main-headline {
		font-size: 28px;
		font-weight: 800;
		color: #111111;
		line-height: 1.4;
		margin-bottom: 24px;
		word-break: keep-all;
	}
	.pvp-fluid-body .main-headline .brand-color {
		color: #C8005F;
		display: block;
		font-size: 32px;
		margin-top: 4px;
	}
	.pvp-fluid-body .main-description {
		font-size: 16.5px;
		color: #444444;
		word-break: keep-all;
		font-weight: 400;
		margin: 0;
	}

	/* 섹션 타이틀 */
	.pvp-fluid-body .section-headline {
		font-size: 24px;
		font-weight: 700;
		color: #111111;
		margin-top: 0;
		margin-bottom: 40px;
		padding-bottom: 16px;
		border-bottom: 2px solid #111111;
	}

	/* 정보 정렬 구조 */
	.pvp-fluid-body .info-block {
		width: 100%;
	}
	.pvp-fluid-body .info-row {
		display: flex;
		align-items: flex-start;
		padding: 28px 0;
		border-bottom: 1px solid #e5e5e5;
		font-size: 16.5px;
	}
	.pvp-fluid-body .info-row:last-child {
		border-bottom: none;
	}

	/* 좌측 분류 항목 */
	.pvp-fluid-body .info-label {
		width: 280px;
		font-weight: 700;
		color: #111111;
		flex-shrink: 0;
		position: relative;
		padding-left: 16px;
	}
	.pvp-fluid-body .info-label::before {
		content: '';
		position: absolute;
		left: 0;
		top: 10px;
		width: 5px;
		height: 5px;
		background-color: #C8005F;
	}

	/* 우측 상세 내용 */
	.pvp-fluid-body .info-value {
		color: #444444;
		word-break: keep-all;
		flex-grow: 1;
	}
	.pvp-fluid-body .text-highlight {
		color: #C8005F;
		font-weight: 700;
		background-color: rgba(200, 0, 95, 0.04);
		padding: 2px 8px;
		border-radius: 2px;
	}

	/* 모바일/태블릿 기준점 1024px 통합 대응 */
	@media (max-width: 1024px) {
		html, body {
			overflow: visible;
			height: auto;
		}
		.pvp-fluid-wrap {
			height: auto;
			overflow: visible;
		}
		.pvp-fluid-body {
			position: relative;
			top: 0 !important;
			left: 0;
			transform: none;
			height: auto;
		}
		.pvp-page.page-intro,
		.pvp-page.page-content-sub {
			height: auto;
			overflow: visible;
			padding: 40px 24px;
			/* 모바일은 자연스러운 전체 스크롤을 위해 패딩 통일 */
		}
		.pvp-fluid-body .page-title {
			font-size: 32px;
		}
		.pvp-fluid-body .main-headline {
			font-size: 22px;
		}
		.pvp-fluid-body .main-headline .brand-color {
			font-size: 24px;
		}
		.pvp-fluid-body .info-row {
			flex-direction: column;
			gap: 8px;
			padding: 20px 0;
		}
		.pvp-fluid-body .info-label {
			width: 100%;
			padding-left: 0;
			display: flex;
			align-items: center;
			gap: 8px;
		}
		.pvp-fluid-body .info-label::before {
			position: static;
			flex-shrink: 0;
			display: inline-block;
		}
	}
</style>