/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/* Freesentation 폰트 정의 */
@font-face {
    font-family: 'Freesentation-1Thin';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-1Thin.woff2') format('woff2');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-2ExtraLight';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-2ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-3Light';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-3Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-4Regular';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-4Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-5Medium';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-5Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-6SemiBold';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-6SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-7Bold';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-7Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-8ExtraBold';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-8ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'Freesentation-9Black';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-9Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}

/* 전역 폰트 설정 */
body {
    font-family: 'Freesentation-5Medium', 'Noto Sans KR', sans-serif !important;
    font-weight: 500 !important;
}

/* 제목 및 강조 텍스트 */
h1, h2, h3, h4, h5, h6,
.slider-caption h2,
.feature-box h3,
.feature-box h5,
.accordion-title,
.team-title h4 {
    font-family: 'Freesentation-8ExtraBold', 'Noto Sans KR', sans-serif !important;
    font-weight: 800 !important;
}

/* 기본 텍스트 */
p, div, a, li {
    font-family: 'Freesentation-5Medium', 'Noto Sans KR', sans-serif !important;
    font-weight: 500 !important;
}

/* span은 제목 내부에서만 500 적용, 그 외에는 기본값 */
span {
    font-family: 'Freesentation-5Medium', 'Noto Sans KR', sans-serif !important;
    font-weight: 500 !important;
}

/* 한의원 테마 컬러 - 녹색 계열 */
:root {
	--cnvs-themecolor: #426347; /* Sea Green - 자연스럽고 건강한 녹색 */
	--cnvs-themecolor-rgb: 66, 99, 71;
}

/* fbox-content 폰트 크기 조정 */
.fbox-content h3, 
.fbox-content .h3 {
    font-size: 18px !important;
}

.fbox-content p {
    font-size: 18px !important;
}

/* footer-big-contacts 폰트 두께 조정 */
.footer-big-contacts {
    font-weight: 800 !important;
}

.footer-big-contacts a {
    font-weight: 800 !important;
}

#header {
    --cnvs-primary-menu-font-size: 16px;
}

/* 상단바 스타일 */
#top-bar {
	background-color: #49564b !important;
}

#top-bar .top-links-container a {
	color: white !important;
	transition: color 0.3s ease;
}

#top-bar .top-links-container a:hover {
	color: #49564b !important;
}

/* 진료 예약 버튼 스타일 */
#top-bar .top-links-container .bg-color {
	background-color: #32372b !important;
	color: white !important;
}

/* 인스타그램 아이콘 스타일 */

.h-bg-instagram:hover {
	background-color: #C13584 !important;
}

/* 슬라이더 캡션 글자 색 스타일 */
.slider-caption h2 {
	color: #ffffff !important;
	font-weight: 600 !important;
	font-family: 'Freesentation-6SemiBold', 'Noto Sans KR', sans-serif !important;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.5) !important;
}

.slider-caption h2 span {
	color: #f8f9fa !important;
	font-weight: 800 !important;
	font-family: 'Freesentation-8ExtraBold', 'Noto Sans KR', sans-serif !important;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.5) !important;
}

.slider-caption p {
	color: #f8f9fa !important;
	font-weight: 400;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.5) !important;
}

/* 슬라이더 캡션 위치 조정 */
.slider-caption {
	padding-top: 0 !important;
	margin-top: -150px !important;
	max-width: 800px !important;
	width: 100% !important;
}

/* 슬라이더 캡션 텍스트 줄바꿈 설정 */
.slider-caption h2 {
	word-break: keep-all !important;
	line-height: 1.2 !important;
	white-space: normal !important;
}

/* 슬라이더 캡션 span 텍스트 줄바꿈 방지 */
.slider-caption h2 span {
	white-space: nowrap !important;
	display: inline-block !important;
}

/* 모바일에서 슬라이더 캡션 조정 */
@media (max-width: 767.98px) {
	.slider-caption {
		margin-top: 50px !important;
		padding: 20px !important;
	}
	
	.slider-caption h2 {
		font-size: 2rem !important;
		line-height: 1.2 !important;
		margin-bottom: 1rem !important;
	}
	
	.slider-caption p {
		font-size: 1rem !important;
		line-height: 1.4 !important;
	}
	
	/* 모바일에서 캡션 위치 조정 */
	.slider-caption-left,
	.slider-caption-right,
	.slider-caption-center {
		text-align: center !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		right: auto !important;
		width: 95% !important;
	}
}

/* 태블릿에서 슬라이더 캡션 조정 */
@media (min-width: 768px) and (max-width: 991.98px) {
	.slider-caption {
		margin-top: -100px !important;
	}
	
	.slider-caption h2 {
		font-size: 2.5rem !important;
	}
}

/* 한국어 텍스트 줄바꿈 설정 */
.feature-box .fbox-content p {
	word-break: keep-all !important;
	line-height: 1.5 !important;
}
