* { box-sizing: border-box; }

#site-header {
	display: none !important;
}
#top-bar-wrap {
	display: none !important;
}
.page-header {
	margin-top: 57px;
}
/* 헤너 높이만큼 margin-top을 제외하여 겹치도록 함. */
#main { margin-top: -57px; }
#common_header {
	position: sticky; 
	top:0; 
	left:0; 
	width:100%; 
	height: 57px;
	z-index:100;
	display: flex;
	flex-direction: column;
}
#common_header .header_nav {
	display:flex; justify-content:space-between; align-items:center;
	background:rgba(255,255,255,0.75); padding:15px 64px; backdrop-filter:blur(25px);
}
#common_header nav { font-family: 'NanumSquare Neo', sans-serif; }
#common_header nav a { text-decoration:none; }
#common_header nav a:hover{ color:#4F68FC; }
#common_header nav a:focus{ outline:none!important; }

#common_header .nav-left { display:flex; align-items:center;}
#common_header .nav-left div { display: flex; align-items:center; }
#common_header .nav-left #dn-svg{ display:flex; align-items:center; }
#common_header .nav-left #dn-svg svg { display: block; }
#common_header .nav-left a { font-size:14px; font-weight:500; line-height:110%; letter-spacing:-0.42px; color:#9ca3af; }
#common_header .nav-left .divider{ display:flex; width:2px; height:12px; background:#E5E5E5; margin:0 20px; }

#common_header .nav-center { display: flex; gap: 20px; }
#common_header .nav-center a { font-size:10px; font-weight:800; line-height: normal; letter-spacing: 1px; color: #4d4d4d; padding: 15px 0;}

#common_header .nav-right { display: flex; }

/* 모바일 메뉴 수정 */
#common_header .nav-right .mobile-menu { 
	margin-left: 10px; 
	margin-top: 2px; 
	text-decoration: none !important;               /* 밑줄 제거 */
	-webkit-tap-highlight-color: transparent; /* iOS 탭 하이라이트 제거 */
}
#common_header .nav-right .mobile-menu i.fa.fa-bars { font-size: 15px; }
#common_header .nav-right .mobile-menu:focus { outline: none !important; } /* 포커스 테두리 제거 */

#common_header .nav-right .custom-dropdown{ position:relative; font-family:'Inter',sans-serif; font-size:15px; font-weight:500; cursor:pointer; user-select:none; }
#common_header .nav-right .custom-dropdown .custom-dropdown-toggle { width:70px; display:flex; align-items:center; justify-content:space-between; }
#common_header .nav-right .custom-dropdown .custom-dropdown-toggle .dropdown-toggle{ background:transparent; text-align:center; width:40px; }

#common_header .nav-right .custom-dropdown .dropdown-list{
	position:absolute; margin:0; padding:0; list-style:none;
	background:rgba(255,255,255,0.75); display:none; z-index:10001;
}
#common_header .nav-right .custom-dropdown .dropdown-list.active{ display:block; }
#common_header .nav-right .custom-dropdown .dropdown-list li { width:70px; padding:8px 12px; transition:background-color .2s; }
#common_header .nav-right .custom-dropdown .dropdown-list li:hover { background:#f3f4f6; }

#common_header .nav-right .dn-mobile-menu-btn { display: none; }

#dn-mobile-menu a, a:hover, a:focus { outline: none !important; }

#divider-h { width: 33px; height: 2px; background: #E5E5E5; margin: 40px 0; }

@media (max-width: 1024px){
	#divider-h { margin-left: -5px; }
	header.elementor-section { background-attachment: local !important }
	.display-mobile-only { display: block !important; }
	.hide-on-mobile { display: none !important; }

	#common_header .header_nav { padding: 15px 20px; }
	#common_header .nav-right .custom-dropdown .custom-dropdown-toggle { width: 50px;}
	#common_header .nav-right .custom-dropdown .dropdown-list li { width: 60px; align-items: center; padding: 10px 7px;}

	#common_header .nav-right .dn-mobile-menu-btn { margin-left: 20px !important; }

	/* 딤(배경) */
	.menu-dim {
		position: fixed; inset: 0;
		background: rgba(0,0,0,.35);
		opacity: 0; pointer-events: none;
		pointer-events: none;
		transition: opacity .25s ease;
		z-index: 999;
	}
	.menu-dim.is-active { opacity: 1; pointer-events: auto; }

	/* 모바일 메뉴 패널 */
	#dn-mobile-menu.dn-mobile-menu {
		position: fixed; top: 0; right: 0;
		width: 100%; height: 100vh;  /* 전체 화면을 덮고 싶지 않으면 width: 80%; 로 조정 */
		padding: 14px 16px;
		background: #fff;
		transform: translateX(100%);  /* 화면 밖(오른쪽)에서 시작 */
		transition: transform .3s ease;
		z-index: 1000;
		display: flex; flex-direction: column;
		box-shadow: -12px 0 24px rgba(0,0,0,.12);
		pointer-events: none;
	}
	#dn-mobile-menu.dn-mobile-menu.is-open { transform: translateX(0); pointer-events: auto; }

	/* 패널 헤더(닫기 버튼 영역) */
	#dn-mobile-menu .dn-mobile-menu-header { display: flex;  align-items: center;  justify-content: flex-end; }
	.dn-mobile-menu-button { background: none; border: 0; font-size: 20px; cursor: pointer; }

	/* 모바일 메뉴 UL 불릿 제거 + 들여쓰기/마진 제거 */
	#dn-mobile-menu .menu {
		display: flex;
		flex-direction: column;
		font-size: 30px;
		font-weight: 800;
		letter-spacing: 3px;
		margin-top: 40px;
	}

	#dn-mobile-menu .menu { list-style: none; padding-left: 0; }
	#dn-mobile-menu .menu span { list-style: none; padding-top: 20px; }
	#dn-mobile-menu a { color: var(--gray-700, #4D4D4D); text-decoration: none; }


	#dn-mobile-menu .active-url { color: #4F68FC !important; }

	#dn-mobile-menu .soundpill-nav-buttons a {
		display: flex;
		background: none;
		border: none;
		justify-content: space-between;
		align-items: center;
		text-align: center;

		width: 125px;
		color: var(--gray-600, #666);
		font-size: 20px;
		font-weight: 700;
		line-height: 110%;
		letter-spacing: -0.6px;
		margin-top: 20px;
		padding: 0;
	}
	#dn-mobile-menu .soundpill-nav-buttons a img {
		width:30px;
		height: 30px;
		margin-right: 20px;
	}
	#dn-mobile-menu .soundpill-nav-buttons a p { margin: 0; }
	#dn-mobile-menu .dn-mobile-menu-box { display: flex; align-items: center; margin-left: 5px; }
}