@font-face {
	font-family: 'defaultFont';
	src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'emphFont';
	font-style: normal;
	font-weight: 400;
	src: url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamMedium.woff2') format('woff2'),
		 url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamMedium.woff') format('woff');
}

@font-face {
	font-family: 'LotteMartDream';
	font-style: normal;
	font-weight: 700;
	src: url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamBold.woff2') format('woff2'),
		 url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamBold.woff') format('woff');
}

@font-face {
	font-family: 'LotteMartDream';
	font-style: normal;
	font-weight: 300;
	src: url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamLight.woff2') format('woff2'),
		 url('//cdn.jsdelivr.net/korean-webfonts/1/corps/lottemart/LotteMartDream/LotteMartDreamLight.woff') format('woff');
}

.lottemartdream * {
	font-family: 'LotteMartDream', sans-serif;
}

/* 공통 본문 */
.cke_editable,
.content {
	font-family: 'defaultFont', sans-serif;
	font-size: 15px;
	line-height: 1.9;
	letter-spacing: -0.3px;
	color: #3f3f3f;
	word-break: keep-all;
	overflow-wrap: break-word;
	text-align: left;
	background: #fff;
	margin: 0;
	padding: 0;
	font-style: inherit;
}

.cke_editable {
	word-wrap: break-word;
}

/* 문단 */
.content p,
.cke_editable p {
	margin: 0;
}

/* 제목 공통 */
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6,
.cke_editable h1,
.cke_editable h2,
.cke_editable h3,
.cke_editable h4,
.cke_editable h5,
.cke_editable h6 {
	margin: 32px 0 16px 0;
	color: #2f2f2f;
	word-break: keep-all;
}

/* 메인 제목 */
.content h1,
.cke_editable h1 {
	font-size: 1.9em;
	line-height: 1.45;
	font-family: 'defaultFont', serif;
	font-weight: 400;
	letter-spacing: -2px;
	display: block;
	width: 100%;
	border-bottom: 2px solid #d9d9d9;
	text-align: left;
	padding: 0 0 14px 0;
	margin: 10px 0 28px 0;
}

/* 중제목 */
.content h2,
.cke_editable h2 {
	font-size: 1.55em;
	letter-spacing: -1.5px;
	font-family: 'defaultFont';
	line-height: 1.5;
	font-weight: 400;
	color: #333333;
	padding-left: 2px;
}

/* 소제목 */
.content h3,
.content h4,
.content h5,
.content h6,
.cke_editable h3,
.cke_editable h4,
.cke_editable h5,
.cke_editable h6 {
	font-size: 1.2em;
	letter-spacing: -1px;
	font-family: 'defaultFont', serif;
	line-height: 1.6;
	font-weight: 700;
	color: #333333;
}

/* 강조 */
.content strong,
.content b,
.cke_editable strong,
.cke_editable b {
	font-weight: 700;
	color: #222222;
}

.content strong b,
.cke_editable strong b {
	font-weight: 700;
	font-size: 1em;
}

/* 구분선 */
.content .underCut,
.cke_editable .underCut,
.underCut {
	height: 4px;
	position: relative;
	background: linear-gradient(90deg, #e7e7e7 0%, #d7d7d7 100%);
	border-radius: 999px;
	width: 90px;
	margin: 50px 0;
	padding: 0;
	box-shadow: none;
}

/* 링크 */
.content a,
.cke_editable a {
	color: #2457a6;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.content a:hover,
.cke_editable a:hover {
	color: #183d77;
}

/* 인용문 */
.content blockquote,
.cke_editable blockquote {
	margin: 24px 0;
	padding: 18px 22px;
	background: #fff;
	border-left: 4px solid #c8c8c8;
	color: #555;
	font-size: 1.8em;
	letter-spacing: -0.8px;
	font-family: 'emphFont';
	line-height: 1.6;
}

.cke_contents_ltr blockquote {
	padding-left: 20px;
	padding-right: 8px;
	border-left-width: 5px;
}

.cke_contents_rtl blockquote {
	padding-left: 8px;
	padding-right: 20px;
	border-right-width: 5px;
}

/* 리스트 공통 */
.content ol,
.content ul,
.cke_editable ol,
.cke_editable ul {
	padding: 0;
}

/* OL */
.content ol,
.cke_editable ol {
	margin: 18px 0 24px 35px;
	list-style: none;
	counter-reset: item;
}

.content ol li,
.cke_editable ol li {
	position: relative;
	counter-increment: item;
	margin: 0 0 14px 0;
	padding: 0 0 0 38px;
	line-height: 1.85;
	letter-spacing: -0.3px;
	color: #444;
}

.content ol li:before,
.cke_editable ol li:before {
	content: counter(item);
	position: absolute;
	left: 0;
	top: 2px;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	font-size: 0.78em;
	font-weight: 700;
	color: #555;
	background: linear-gradient(180deg, #f6f6f6 0%, #e8e8e8 100%);
	border: 1px solid #d8d8d8;
	border-radius: 50%;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
}

/* UL */
.content ul,
.cke_editable ul {
	margin: 18px 0 24px 42px;
	list-style: none;
}

.content ul li,
.cke_editable ul li {
	position: relative;
	margin: 0 0 12px 0;
	padding: 0 0 0 22px;
	line-height: 1.8;
	letter-spacing: -0.3px;
	font-size: 1em;
	color: #444;
	text-align: left;
}

.content ul li:before,
.cke_editable ul li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.78em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: linear-gradient(135deg, #8d8d8d 0%, #c6c6c6 100%);
	transform: translateY(-50%);
	box-shadow: 0 0 0 3px rgba(180,180,180,0.12);
}

/* 표 */
.content table,
.cke_editable table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 1.6;
	margin: 24px 0 18px 0;
	width: 100%;
	border-top: 2px solid #bdbdbd;
	background: #fff;
}

.content table td,
.content table th,
.cke_editable table td,
.cke_editable table th {
	padding: 12px 14px;
	vertical-align: top;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #f1f1f1;
}

.content table td:first-child,
.content table th:first-child,
.cke_editable table td:first-child,
.cke_editable table th:first-child {
	border-left: none;
}

.content table th,
.cke_editable table th {
	background: #f7f7f7;
	font-weight: 700;
	color: #333;
}

.content table .even,
.cke_editable table .even {
	background: #fafafa;
}

/* 형광펜 */
.content .marker,
.cke_editable .marker {
	background-color: #fff3a3;
	padding: 0 2px;
}

/* 모바일 */
@media all and (max-width: 768px) {

	.cke_editable,
	.content {
		font-size: 14px;
		line-height: 1.75;
		letter-spacing: -0.2px;
	}

	.content h1,
	.cke_editable h1 {
		font-size: 1.55em;
		line-height: 1.4;
		letter-spacing: -1.2px;
		margin: 8px 0 22px 0;
		padding: 0 0 12px 0;
	}

	.content h2,
	.cke_editable h2 {
		font-size: 1.32em;
		line-height: 1.45;
		letter-spacing: -1px;
		margin: 26px 0 14px 0;
	}

	.content h3,
	.content h4,
	.content h5,
	.content h6,
	.cke_editable h3,
	.cke_editable h4,
	.cke_editable h5,
	.cke_editable h6 {
		font-size: 1.08em;
		line-height: 1.5;
		margin: 24px 0 12px 0;
	}

	.content .underCut,
	.cke_editable .underCut,
	.underCut {
		width: 68px;
		height: 3px;
		margin: 34px 0;
	}

	.content ol,
	.cke_editable ol {
		margin: 14px 0 20px 20px;
	}

	.content ul,
	.cke_editable ul {
		margin: 14px 0 20px 24px;
	}

	.content ul li,
	.cke_editable ul li {
		margin: 0 0 10px 0;
		padding: 0 0 0 18px;
		line-height: 1.7;
		font-size: 0.98em;
	}

	.content ul li:before,
	.cke_editable ul li:before {
		width: 6px;
		height: 6px;
		top: 0.8em;
		box-shadow: 0 0 0 2px rgba(180,180,180,0.10);
	}

	.content ol li,
	.cke_editable ol li {
		margin: 0 0 12px 0;
		padding: 0 0 0 32px;
		line-height: 1.75;
		font-size: 0.98em;
	}

	.content ol li:before,
	.cke_editable ol li:before {
		width: 20px;
		height: 20px;
		line-height: 20px;
		font-size: 0.72em;
		top: 3px;
	}

	.content blockquote,
	.cke_editable blockquote {
		margin: 20px 0;
		padding: 14px 16px;
		font-size: 1.28em;
		letter-spacing: -0.5px;
		line-height: 1.6;
	}

	.content table,
	.cke_editable table {
		font-size: 0.92em;
		line-height: 1.5;
	}

	.content table td,
	.content table th,
	.cke_editable table td,
	.cke_editable table th {
		padding: 10px 10px;
	}
}