/* 다독다독 글꼴과 상단 메뉴 */

/* 글꼴: 에스코어 드림(무료 글꼴) — 굵기마다 파일이 따로 있습니다. */
@font-face {
	font-family: "DadokFont";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-4Regular.woff") format("woff");
	font-weight: 100 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "DadokFont";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-6Bold.woff") format("woff");
	font-weight: 600 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "DadokFont";
	src: url("https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-7ExtraBold.woff") format("woff");
	font-weight: 800 900;
	font-style: normal;
	font-display: swap;
}

/* ---------- 사이트 전체 글꼴 (사이트 공통 글꼴 설정보다 우선) ---------- */
html body,
html body *:not(code):not(pre):not(kbd):not(samp):not(.dashicons):not(.ab-icon):not(#wpadminbar):not(#wpadminbar *) {
	font-family: "DadokFont", "Noto Sans KR", sans-serif !important;
}

/* ---------- 상단 메뉴 ---------- */
.main-header-menu.ast-nav-menu .menu-item > a.menu-link {
	font-family: "DadokFont", "Noto Sans KR", sans-serif !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	letter-spacing: -0.3px;
	color: #1a1a1a !important;
	transition: color 0.15s ease;
}

/* 메뉴 앞 그림 */
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link::before {
	display: inline-block;
	margin-right: 6px;
	font-size: 20px;
	line-height: 1;
	vertical-align: -2px;
	transition: transform 0.2s ease;
}

/* 어느 메뉴인지는 연결된 주소로 알아봅니다(메뉴를 다시 만들어도 그대로 붙어요). */
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href$="/about/"]::before { content: "🏡"; }
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href*="%ec%9a%b0%eb%a6%ac-%ec%b1%85" i]::before { content: "📚"; }
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href*="%ec%9d%bd%ea%b8%b0-%ec%88%b2" i]::before { content: "🌲"; }
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href*="%ec%88%b2%ec%86%8d-%ea%b7%b9%ec%9e%a5" i]::before { content: "🎬"; }
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href*="%eb%8b%a4%eb%8f%85%eb%8b%a4%eb%8f%85-%ec%86%8c%ec%8b%9d" i]::before { content: "📣"; }
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link[href$="/contact/"]::before { content: "✉️"; }

/* 마우스를 올리거나 지금 보고 있는 메뉴 */
.main-header-menu.ast-nav-menu .menu-item > a.menu-link:hover,
.main-header-menu.ast-nav-menu .menu-item > a.menu-link:focus-visible,
.main-header-menu.ast-nav-menu > .current-menu-item > a.menu-link,
.main-header-menu.ast-nav-menu > .current-menu-ancestor > a.menu-link {
	color: #e84343 !important;
}

.main-header-menu.ast-nav-menu > .menu-item > a.menu-link:hover::before,
.main-header-menu.ast-nav-menu > .menu-item > a.menu-link:focus-visible::before {
	transform: translateY(-3px) rotate(-10deg) scale(1.12);
}

/* PC 화면: 메뉴 사이 간격 */
.ast-desktop .main-header-menu.ast-nav-menu > .menu-item > a.menu-link {
	padding: 0 13px !important;
}

/* 화면이 조금 좁은 PC/태블릿: 한 줄에 들어가도록 살짝 줄이기 */
@media (min-width: 922px) and (max-width: 1180px) {
	.ast-desktop .main-header-menu.ast-nav-menu > .menu-item > a.menu-link {
		padding: 0 8px !important;
		font-size: 17px !important;
	}

	.ast-desktop .main-header-menu.ast-nav-menu > .menu-item > a.menu-link::before {
		margin-right: 4px;
		font-size: 17px;
	}
}

/* 휴대폰 메뉴(펼쳤을 때) */
.ast-header-break-point .main-header-menu.ast-nav-menu .menu-item > a.menu-link {
	font-size: 19px !important;
	line-height: 2.8;
}

.ast-header-break-point .main-header-menu.ast-nav-menu > .menu-item > a.menu-link::before {
	width: 28px;
	margin-right: 8px;
	font-size: 20px;
	text-align: center;
}

@media (prefers-reduced-motion: reduce) {
	.main-header-menu.ast-nav-menu > .menu-item > a.menu-link::before {
		transition: none;
	}
}

/* ---------- 연구소 소개 본문 ---------- */
.dkabout {
	max-width: 860px;
	margin: 0 auto !important;
	padding: 88px 24px 96px !important;
	color: #2a2a2a;
	word-break: keep-all;
}

.entry-content .dkabout .dkabout-title {
	margin: 0 0 18px;
	font-size: 38px !important;
	font-weight: 800 !important;
	line-height: 1.45;
	letter-spacing: -0.5px;
	color: #1a1a1a;
}

.entry-content .dkabout .dkabout-sub {
	display: table;
	margin: 0 auto 48px !important;
	padding: 8px 22px;
	font-size: 19px !important;
	font-weight: 700 !important;
	line-height: 1.5;
	color: #e84343;
	background: #fff1ef;
	border-radius: 24px;
}

.entry-content .dkabout p {
	margin: 0 0 30px;
	font-size: 19px;
	font-weight: 400;
	line-height: 1.95;
	color: #2a2a2a;
}

.entry-content .dkabout p strong {
	font-weight: 700;
	color: #e2416a;
}

.entry-content .dkabout .dkabout-card {
	margin: 0 0 56px;
	padding: 40px 36px 12px;
	background: #fffdf7;
	border: 1.5px solid #f0ebe0;
	border-radius: 28px;
}

.entry-content .dkabout .dkabout-flow {
	margin-bottom: 56px;
	font-size: 20px;
}

.entry-content .dkabout .dkabout-flow strong {
	font-size: 25px;
	font-weight: 800;
	line-height: 1.8;
	color: #b5b5b5;
}

/* 글자색 표시(형광펜 바탕은 쓰지 않음) */
.entry-content .dkabout mark {
	padding: 0;
	background: transparent !important;
}

.entry-content .dkabout .dkabout-quote {
	font-size: 21px;
}

.entry-content .dkabout .dkabout-closing {
	margin: 56px 0 0;
	padding: 36px 24px;
	font-size: 20px;
	line-height: 1.9;
	color: #444;
	background: #f0f9f3;
	border-radius: 28px;
}

.entry-content .dkabout .dkabout-closing br {
	display: none;
}

.entry-content .dkabout .dkabout-closing strong {
	display: block;
	margin-bottom: 4px;
	font-size: 28px;
	font-weight: 800;
	color: #2d6a4f;
}

@media (max-width: 782px) {
	.dkabout {
		padding: 56px 16px 64px !important;
	}

	.entry-content .dkabout .dkabout-title {
		font-size: 26px !important;
	}

	.entry-content .dkabout .dkabout-sub {
		margin-bottom: 32px !important;
		font-size: 16px !important;
	}

	.entry-content .dkabout p {
		font-size: 17px;
		line-height: 1.9;
	}

	.entry-content .dkabout .dkabout-card {
		padding: 28px 18px 4px;
		border-radius: 22px;
	}

	.entry-content .dkabout .dkabout-flow strong {
		font-size: 20px;
	}

	.entry-content .dkabout .dkabout-quote {
		font-size: 18px;
	}

	.entry-content .dkabout .dkabout-closing strong {
		font-size: 22px;
	}
}

/* =====================================================================
   글씨 크기 키우기 (참고: 웅진주니어·길벗어린이 — 본문 18px, 제목 36~40px)
   다른 플러그인 글씨보다 우선하도록 html body 를 앞에 붙였습니다.
   ===================================================================== */

/* 기본 본문 */
html body,
html body p,
html body li {
	font-size: 18px;
}

html body h2 { font-size: 38px !important; letter-spacing: -0.5px; }

/* 제목 옆 회색 설명은 글자 사이를 띄워 읽기 쉽게 */
html body .dadok-books__subtitle,
html body .dkforest__subtitle,
html body .dknotice__subtitle,
html body .dktheater__subtitle { letter-spacing: -0.2px !important; }
html body h3, html body h4, html body h5, html body h6 { font-size: 22px !important; }

/* 아주 작은 표시(새 글, 배지) */
html body .dknotice-new,
html body .dktheater-new { font-size: 13px !important; }

html body .dadok-badge,
html body .dktheater-card__tag,
html body .dk-hero-badge,
html body .dkletter .dkletter__note { font-size: 14px !important; }

html body .dkforest-lv,
html body .dknotice-badge,
html body .dknotice-files__size,
html body .dknotice-files__get,
html body .dkletter .dkletter-field__hint { font-size: 15px !important; }

/* 날짜·작은 안내 */
html body .dk-feat-label span,
html body .dadok-books .dadok-books__more,
html body .dkforest .dkforest__link,
html body .dkforest-article__photo figcaption,
html body .dkforest-article__body .wp-caption-text,
html body .dknotice-row__info,
html body .dknotice .dknotice__link,
html body .dknotice-mini__date,
html body .dknotice-post .dknotice-post__meta,
html body .dknotice-near__date,
html body .dktheater-card__date,
html body .dktheater .dktheater__link,
html body .dktheater-post .dktheater-post__meta,
html body .dktheater-post .dktheater-post__source,
html body .dkletter .dkletter-field__error,
html body .dkletter .dkletter-photos__add,
html body .dkletter .dkletter-card__meta { font-size: 16px !important; }

/* 부제목·버튼·작은 글 */
html body .dk-btn-red,
html body .dk-btn-outline,
html body .dk-feat-label strong,
html body .dadok-books__count,
html body .dadok-book__tagline,
html body .dadok-books .dadok-book__byline,
html body .dadok-books .dadok-book__price.is-upcoming,
html body .dadok-books__subtitle,
html body .dadok-detail .dadok-detail__back,
html body .dadok-detail__price-label,
html body .dadok-detail .dadok-detail__facts,
html body .dadok-detail .dadok-detail__note,
html body .dkforest__subtitle,
html body .dkforest .dkforest__empty,
html body .dkforest .dkforest__none,
html body .dkforest-article .dkforest-article__back,
html body .dkforest-article .dkforest-article__meta,
html body .dkforest-article .dkforest-tags li,
html body .dknotice .dknotice__total,
html body .dknotice .dknotice__search input[type="search"],
html body .dknotice .dknotice__search button,
html body .dknotice-clip,
html body .dknotice .dknotice__page,
html body .dknotice__subtitle,
html body .dknotice-post .dknotice-post__back,
html body .dknotice-post .dknotice-files__title,
html body .dknotice-post .dknotice-files li,
html body .dknotice-near,
html body .dktheater .dktheater__total,
html body .dktheater .dktheater__search input[type="search"],
html body .dktheater .dktheater__search button,
html body .dktheater .dktheater__page,
html body .dktheater__subtitle,
html body .dktheater-post .dktheater-post__back,
html body .dktheater-player__go,
html body .dkletter .dkletter__how,
html body .dkletter .dkletter__noscript,
html body .dkletter .dkletter__panel-desc,
html body .dkletter .dkletter-field__label,
html body .dkletter .dkletter-agree,
html body .dkletter .dkletter-form__msg,
html body .dkletter .dkletter-card__reply-title,
html body .dkletter .is-waiting .dkletter-card__reply-body { font-size: 17px !important; }

/* 일반 글 */
html body .dk-letter-desc,
html body .dk-btn-white,
html body .dadok-detail .dadok-detail__byline,
html body .dadok-detail .dadok-buy,
html body .dkforest .dkforest__tab,
html body .dkforest .dkforest__more button,
html body .dkforest--others .dkforest-card__title,
html body .dknotice .dknotice__empty,
html body .dknotice-mini__title,
html body .dknotice-post .dknotice-post__list a,
html body .dktheater .dktheater__empty,
html body .dktheater--others .dktheater-card__title,
html body .dktheater-post .dktheater-post__list a,
html body .dkletter .dkletter-field input[type="text"],
html body .dkletter .dkletter-field input[type="password"],
html body .dkletter .dkletter-field input[type="tel"],
html body .dkletter .dkletter-field input[type="email"],
html body .dkletter .dkletter-field textarea,
html body .dkletter .dkletter-done__text,
html body .dkletter .dkletter-card__body,
html body .dkletter .dkletter-card__reply-body { font-size: 18px !important; }

/* 책 이름·본문 */
html body .dk-hero-desc,
html body .dadok-books__empty,
html body .dadok-cover__empty,
html body .dadok-book__title,
html body .dadok-books .dadok-book__price,
html body .dadok-detail .dadok-detail__tagline,
html body .dadok-detail__content,
html body .dkforest-article .dkforest-box p,
html body .dkforest-box dl,
html body .dkforest-box ol,
html body .dknotice-post .dknotice-post__body,
html body .dktheater-post .dktheater-post__body,
html body .dkletter .dkletter__p,
html body .dkletter .dkletter__btn { font-size: 19px !important; }

/* 카드 제목 */
html body .dkforest-card__title,
html body .dknotice-row__title,
html body .dknotice-row__arrow,
html body .dktheater-card__title,
html body .dkletter .dkletter__subtitle,
html body .dkletter .dkletter-photos__remove,
html body .dkletter .dkletter-form__submit .dkletter__btn { font-size: 20px !important; }

html body .dkforest-article__body,
html body .dkletter .dkletter-card__title { font-size: 21px !important; }

html body .dkforest-article .dkforest-box__title { font-size: 22px !important; }

html body .dadok-detail .dadok-detail__heading,
html body .dkforest-article .dkforest-article__more,
html body .dktheater-post .dktheater-post__more,
html body .dkletter .dkletter__panel-title { font-size: 24px !important; }

html body .dkletter .dkletter-done__title { font-size: 26px !important; }
html body .dadok-detail .dadok-detail__price { font-size: 30px !important; }

/* 글 제목 */
html body .dknotice-post .dknotice-post__title,
html body .dktheater-post .dktheater-post__title { font-size: 34px !important; }

/* 각 칸의 큰 제목(우리 책, 읽기 숲, 숲속 극장, 다독다독 소식, 편지 쓰기) */
html body .dadok-books .dadok-books__title,
html body .dadok-books.dadok-books--home .dadok-books__title,
html body .dkforest .dkforest__title,
html body .dknotice .dknotice__title,
html body .dktheater .dktheater__title,
html body .dkletter .dkletter__title,
html body .dk-letter-title { font-size: 38px !important; }

html body .dadok-detail .dadok-detail__title { font-size: 40px !important; }
html body .dkforest-article .dkforest-article__title { font-size: 42px !important; }

/* 글 안의 소제목은 글 제목보다 작게 */
html body .dkforest-article__body h2,
html body .dknotice-post__body h2,
html body .dktheater-post__body h2,
html body .dadok-detail__content h2 { font-size: 30px !important; }

/* ---------- 태블릿·휴대폰 ---------- */
@media (max-width: 782px) {
	html body .dadok-detail .dadok-detail__title,
	html body .dkforest-article .dkforest-article__title { font-size: 30px !important; }

	html body .dknotice-post .dknotice-post__title,
	html body .dktheater-post .dktheater-post__title,
	html body .dkletter .dkletter__title { font-size: 27px !important; }

	html body .dadok-detail .dadok-detail__price { font-size: 24px !important; }

	html body .dknotice-post .dknotice-post__body,
	html body .dktheater-post .dktheater-post__body,
	html body .dkletter .dkletter__subtitle,
	html body .dkletter .dkletter__p { font-size: 18px !important; }

	html body .dkforest-article__body { font-size: 19px !important; }
}

@media (max-width: 768px) {
	html body,
	html body p,
	html body li { font-size: 17px; }

	html body h2 { font-size: 26px !important; }

	html body .dkforest-article__body h2,
	html body .dknotice-post__body h2,
	html body .dktheater-post__body h2,
	html body .dadok-detail__content h2 { font-size: 23px !important; }
	html body .dk-hero-desc { font-size: 16px !important; }
	html body .dk-letter-title { font-size: 28px !important; }
}

@media (max-width: 640px) {
	html body .dadok-books .dadok-books__title,
	html body .dadok-books.dadok-books--home .dadok-books__title,
	html body .dkforest .dkforest__title,
	html body .dknotice .dknotice__title,
	html body .dktheater .dktheater__title { font-size: 26px !important; }

	html body .dadok-book__tagline,
	html body .dadok-books .dadok-book__byline,
	html body .dadok-books__subtitle,
	html body .dadok-books .dadok-books__more,
	html body .dkforest__subtitle,
	html body .dkforest .dkforest__link,
	html body .dknotice__subtitle,
	html body .dknotice .dknotice__link,
	html body .dknotice-row__info,
	html body .dknotice-mini__date,
	html body .dknotice-near__label,
	html body .dktheater__subtitle,
	html body .dktheater .dktheater__link { font-size: 15px !important; }

	html body .dadok-book__title,
	html body .dadok-books .dadok-book__price,
	html body .dknotice-row__arrow,
	html body .dknotice-mini__title { font-size: 17px !important; }

	html body .dknotice-row__title { font-size: 18px !important; }
}
