@charset "utf-8";
:root {
	--bs-body-font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
	--bs-primary-rgb: 255, 49, 202;
	--bs-primary: #ff31ca;
}
/*
@media (min-width: 1920px) {
	.container {
		max-width: 1872px;
	}
}
*/

body {
	background: #ccc;
	font-size: 16px;
	color: #2a2a2a;
  	font-weight: 500;
}
* {
	cursor: url('/img/cursor@1x.png') 4 4, pointer;
	cursor: -webkit-image-set(url('/img/cursor@2x.png') 2x) 4 4, pointer;
}
p {
	word-break: keep-all;
}

.btn-outline-primary {
    color: #ff31ca; /* Text color */
    border-color: #ff31ca; /* Border color */
}
.btn-outline-primary:active,
.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background-color: #ff31ca !important;
  border-color: #ff31ca !important;
}

.btn-outline-primary:hover {
    color: #ffffff; /* Text color on hover */
    background-color: #ff31ca; /* Background color on hover */
    border-color: #ff31ca; /* Border color on hover */
}

.btn-outline-primary:focus {
    box-shadow: 0 0 0 0.25rem rgba(255, 0, 0, 0.5); /* Focus outline color */
}
.xmenu-btn {
	appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	cursor: pointer;
	line-height: 0;
	line-height: 44px;
}
.xmenu {
	width: 40px; height: 40px;
	overflow: visible;
}
/* 기본 색상/테두리 */
.tile { fill:#ff31ca; stroke:#ff31ca; stroke-width:6; }

.main-header .main-nav-menu .nav-link.depth1 {
	color: black;
	text-transform: uppercase;
}

.outline-text {
  position: relative;
  display: inline-block;
  font-size: 1.2rem;
  color: black;
}
.outline-text.active {
  color: #ccc;
}
.outline-text::before {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  color: transparent; /* 채움 없음 */
  -webkit-text-stroke: 6px #ccc; /* 윤곽선 두께·색상 */
  z-index: -1; /* 뒤로 보내기 */
}
.outline-text:hover {
	color: #ccc;
}
.outline-text:hover::before {
  -webkit-text-stroke: 6px #ff31ca;
}
.outline-text.active:before {
  -webkit-text-stroke: 6px #ff31ca;
}
#stage {
	width: 100%;
	height: 100vh;
}
#stage image {
	max-width: auto;
	max-height: 100px;
}
.gotop {
	bottom: 0;
}
@media (max-width: 768px) {
	.nav-link {
		padding: .5rem !important;
	}
}