body {
	background: url('../images/bg.jpg') no-repeat center top #000000;
}

.footer {
	background: none;
}

.page {
	width: 620px;
	margin: 0px auto;
}

a.logo {
	margin: 98px 0 27px;
	text-align: left;
	display: block;
}

.title {
	background: url('../images/line.png') no-repeat left bottom;
	text-align: left;
}

.title h2 {
	font-family: 'UTM Amerika Sans', Calibri, Verdana, Geneva, sans-serif;
	font-size: 20px;
	color: #fff;
	background: url('../images/button.png') no-repeat left top;
	width: 133px;
	height: 43px;
	line-height: 43px;
	text-align: center;
}

.nhanvat ul {
	font-size: 0;
	letter-spacing: -4px;
	word-spacing: -4px;
	text-align: left;
	vertical-align: bottom;
	position: relative;
}

.nhanvat ul li {
	font-size: 12px;
	letter-spacing: normal;
	word-spacing: normal;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	height: 157px;
}

.nhanvat ul li a {
	text-indent: -10000px;
	display: inline-block;
	height: 157px;
	position: absolute;
	bottom: 23px;
}

.nhanvat ul li a.kysi {
	background: url('../images/nhanvat.png') no-repeat 0 0;
	width: 138px;
	left: 0;
}

.nhanvat ul li a.thosan {
	background: url('../images/nhanvat.png') no-repeat 0 -157px;
	width: 182px;
	left: 145px;
}

.nhanvat ul li a.phapsu {
	background: url('../images/nhanvat.png') no-repeat 0 -314px;
	width: 143px;
	left: 290px;
}

.nhanvat ul li a.phuthuy {
	background: url('../images/nhanvat.png') no-repeat 0 -471px;
	width: 153px;
	left: 436px;
}

.nhanvat ul li a.kysi:hover,
.nhanvat ul li.current a.kysi {
	background: url('../images/nhanvat.png') no-repeat -182px 0;
}

.nhanvat ul li a.thosan:hover,
.nhanvat ul li.current a.thosan {
	background: url('../images/nhanvat.png') no-repeat -182px -157px;
}

.nhanvat ul li a.phapsu:hover,
.nhanvat ul li.current a.phapsu {
	background: url('../images/nhanvat.png') no-repeat -182px -314px;
}

.nhanvat ul li a.phuthuy:hover,
.nhanvat ul li.current a.phuthuy {
	background: url('../images/nhanvat.png') no-repeat -182px -471px;
}

.content {
	text-align: left;
}

.layer-nhanvat h2 {
	font-family: 'UTM Amerika Sans', Calibri, Verdana, Geneva, sans-serif;
	font-size: 20px;
	margin: 10px 0;
	text-transform: uppercase;
}

.content p {
	line-height: 1.5em;
	padding: 10px 0 0;
}

.line {
	background: url('../images/bg-hr.png') repeat-x left top;
	height: 3px;
	margin: 10px 0;
}

ul.thongtin li {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	font-weight: bold;
	line-height: 1.5em;
	margin-right: 20px;
}

.purple {
	color: #c819eb;
	font-size: 14px;
}

.organce {
	color: #ff5500;
	font-size: 14px;
}

h4 {
	color: #787878;
	font-size: 16px;
}

.img {
	margin: 10px 20px 0 0;
}

.layer-boicanh p,
.layer-vukhi p {
	overflow: hidden;
	vertical-align: top;
	text-align: justify;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	width: 80%;
}

.maxheight p {
	max-height: 94px;
}

.more,
.up {
	color: #505050;
	font-size: 10px;
	background: #fff;
	border: 1px solid #898989;
	padding: 5px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	display: inline-block;
}

.marginTop {
	margin-top: 10px;
}

.kynang {
	clear: both;
	margin-top: 20px;
	position: relative;
	z-index: 1000;
}

.tab {
	font-size: 0px;
	word-spacing: -6px;
	letter-spacing: -6px;
}

.tab a {
	background: #d0d0d0;
	border: 1px solid #a5a5a5;
	border-bottom: none;
	padding: 7px 10px 8px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	word-spacing: normal;
	letter-spacing: normal;
	font-size: 12px;
	text-decoration: none;
	color: #444444;
}

.tab a span {
	padding-bottom: 5px;
}

.tab a.current {
	border: 1px solid #a8a8a8;
	border-bottom: none;
	background: url('../images/tab-hover.gif') repeat-x left bottom;
}

.tab .current span {
	background: url('../images/spanhover.gif') repeat-x left bottom;
}

.wrap h4 {
	color: #646464;
	font-size: 14px;
	font-weight: bold;
}

.ct-tab ul li {
	margin: 10px 0;
	padding-bottom: 14px;
	border-bottom: 1px dashed #8b8b8b;
	vertical-align: top;
}

.ct-tab .wrap {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	width: 88%;
	margin-left: 10px;
}

.ct-tab .wrap p {
	color: #787878;
	padding: 5px 0 0;
}

.footer {
	height: 103px;
	padding-top: 40px;
}

.footer .prd-logo {
	font-size: 0;
}

.footer .prd-logo img {
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: middle;
	margin-right: 10px;
}

.footer .ft-sep {
	background: url('../images/ft-sep.png') 0 0 no-repeat;
	width: 1px;
	height: 89px;
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: middle;
	margin: 0 30px 0 20px;
}

.footer ul {
	font-size: 12px;
	font-size: 1.2rem;
	display: inline-block;
	*display: inline;
	zoom: 1;
	text-align: left;
	vertical-align: middle;
}

.footer ul li {
	display: block;
	margin-bottom: 6px;
}

.footer ul li img {
	display: inline-block;
	*display: inline;
	zoom: 1;
	vertical-align: middle;
	margin-top: -3px;
}

.ct-tab {
	height: 360px;
	overflow: auto;
}

.nd-tab {
	margin-top: 10px;
	display: none;
}

.bg {
	position: asolute;
	top: 0;
	right: 0;
}

.brown {
	color: #c70f1e;
	font-size: 14px;
}

.nhanvat ul li a.phuthuy {
	background: url('../images/nhanvat.png') no-repeat 0 -471px;
	width: 153px;
	left: 436px;
}

.nhanvat ul li a.nukysi {
	background: url('../images/nhanvat.png') no-repeat 0 0;
	width: 138px;
	left: 560px;
}

.nhanvat ul li a.namthosan {
	background: url('../images/nhanvat.png') no-repeat 0 -157px;
	width: 182px;
	left: 680px;
}

.nhanvat ul li a.kysi:hover,
.nhanvat ul li.current a.kysi,
.nhanvat ul li.current a.nukysi,
.nhanvat ul li a.nukysi:hover {
	background: url('../images/nhanvat.png') no-repeat -182px 0;
}

.nhanvat ul li a.thosan:hover,
.nhanvat ul li.current a.thosan,
.nhanvat ul li.current a.namthosan,
.nhanvat ul li a.namthosan:hover {
	background: url('../images/nhanvat.png') no-repeat -182px -157px;
}

.nhanvat ul li a.phapsu:hover,
.nhanvat ul li.current a.phapsu {
	background: url('../images/nhanvat.png') no-repeat -182px -314px;
}

.nhanvat ul li a.phuthuy:hover,
.nhanvat ul li.current a.phuthuy {
	background: url('../images/nhanvat.png') no-repeat -182px -471px;
}

.blue {
	color: #0055ff;
	font-size: 14px;
}

.nv1 .layer-nhanvat h2 {
	color: #FF5500;
}

.nv2 .layer-nhanvat h2 {
	color: #d4202e;
}

.nv3 .layer-nhanvat h2 {
	color: #006cff;
}

.nv4 .layer-nhanvat h2 {
	color: #c819eb;
}

.content {
	display: none;
	position: relative;
	z-index: 1000;
}

.more,
.up {
	display: none;
	width: 60px;
	text-align: center;
}

.active {
	display: block;
}

.nv1 .char {
	background: url('../images/kysi.png') 0 0 no-repeat;
	width: 855px;
	height: 1168px;
	position: absolute;
	bottom: 0;
	right: -2808px;
	z-index: 1;
}

.nv2 .char {
	background: url('../images/thosan.png') 0 0 no-repeat;
	width: 803px;
	height: 1168px;
	position: absolute;
	bottom: 0;
	right: -2808px;
}

.nv3 .char {
	background: url('../images/phapsu.png') 0 0 no-repeat;
	width: 951px;
	height: 1168px;
	position: absolute;
	bottom: 0;
	right: -2808px;
}

.nv4 .char {
	background: url('../images/phuthuy.png') 0 0 no-repeat;
	width: 851px;
	height: 1308px;
	position: absolute;
	bottom: 10px;
	right: -2808px;
	z-index: -1;
}

.nv5 .char {
	background: url('../images/kysi.png') 0 0 no-repeat;
	width: 855px;
	height: 1168px;
	position: absolute;
	bottom: 0;
	right: -2808px;
	z-index: 1;
}

.nv6 .char {
	background: url('../images/thosan.png') 0 0 no-repeat;
	width: 803px;
	height: 1168px;
	position: absolute;
	bottom: 0;
	right: -2808px;
}

.nhanvat {
	z-index: 10000;
	position: relative;
}

.layer-boicanh {
	z-index: 1000;
	position: relative;
}

/* Character Story Styles */
.layer-story {
	margin-top: 20px;
	position: relative;
	z-index: 1000;
}

.layer-story .story-content {
	background: rgba(0, 0, 0, 0.3);
	padding: 15px;
	border: 1px solid #333;
	border-radius: 5px;
	margin-top: 10px;
}

.layer-story p {
	color: #bfbfbf;
	font-size: 13px;
	line-height: 1.6em;
	text-align: justify;
	padding: 0;
}

.layer-story .story-images {
	text-align: center;
	margin-top: 15px;
}

.layer-story .story-images img {
	max-width: 46%;
	margin: 5px 1%;
	border: 1px solid #444;
	border-radius: 3px;
	vertical-align: middle;
	background: #000;
}

/* Mobile Responsive Layout */
@media screen and (max-width: 640px) {
	body {
		background-size: cover;
		background-position: center top;
	}

	.page {
		width: 100% !important;
		max-width: 100vw;
		padding: 0 10px;
		box-sizing: border-box;
		overflow-x: hidden; /* Fix horizontal scroll bounds */
	}

	a.logo {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}

	/* Scale character selection tabs instead of horizontal scrolling */
	.nhanvat {
		width: 100%;
		overflow: hidden;
		padding-bottom: 5px;
		margin-top: 20px;
	}

	.title {
		background-position: center bottom !important;
		text-align: center !important;
	}

	.title h2 {
		display: inline-block;
		margin: 0 auto;
	}

	.nhanvat ul {
		width: 620px;
		position: relative;
		left: 50%;
		margin-left: -310px; /* Offset half the width to center the full block before scaling */
		transform: scale(0.6); /* Shrink to fit mobile width ~372px, perfectly fitting iPhone 6/X/11+ */
		transform-origin: center top; /* Scale inwards from the center */
		
		/* Remove explicit height to avoid breaking absolute 'bottom' positioning of tabs */
		/* Instead, pull the subsequent content up to cover empty space left by scaling */
		margin-bottom: -62px !important; 
	}

	.nhanvat ul li {
		height: 157px; /* Keep original inside scale */
	}

	/* Completely hide the background characters on mobile to prevent overflow and overlap */
	.char {
		display: none !important;
	}

	/* Adjust text constraints */
	.layer-boicanh p, 
	.layer-vukhi p {
		width: 100%;
		display: block;
		margin-top: 10px;
	}

	/* Center floating images */
	img.img {
		float: none !important;
		display: block;
		margin: 0 auto 15px auto !important;
		max-width: 100%;
		height: auto;
	}

	/* Skill tabs and content adjustments */
	.tab a {
		padding: 7px 5px 8px;
		font-size: 11px;
	}

	.ct-tab .wrap {
		width: calc(100% - 60px); /* Account for skill icon width */
		display: inline-block;
		margin-left: 5px;
	}

	ul.thongtin li {
		margin-right: 10px;
	}
}