/*
 Theme Name: Astra Child KEGM
 Template: astra
 Text Domain: astra-child-kegm
*/


body,
.site {
  background-color: #ffffff !important;
}



/* --- 헤더 기본 --- */
.site-header{
  display:flex; justify-content:space-between; align-items:center;
  padding:10px 40px; width:100%;
}
.site-logo img{ max-height:70px; }

/* --- 메뉴 바 --- */
.nav{ position:relative; z-index:9999; width:100%; }

.menu{
  list-style:none; display:flex; justify-content:center; gap:50px;
  margin:0; padding:12px 0;
}

.menu > li > a{
  display:block;
	padding:8px 10px;
	text-decoration:none;
	color:#222;
	font-size: 22px; 
	font-weight: 600;
}

.menu > li > a:hover{ color:#0a68ff; }

/* 패널 */
.mega-panel{
  display:none;                 /* 기본 숨김(값 비워두지 말고 none으로) */
  position:absolute;
	z-index:9999;
  top:calc(100% - 2px);

  /* 헤더의 좌우 패딩 40px을 상쇄해서 '화면(뷰포트)' 좌우 끝에 맞춤 */
  left:-110px;
  right:-40px;
  width:auto-flow;                   /* left+right로 폭 결정 */
  margin:0;

  background:#fff;
  border-top:1px solid #e5e5e5;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
  padding:20px 32px;
  box-sizing:border-box;
}

/* --- 패널 표시 트리거: 상단 메뉴 영역에 마우스 올라오면 표시 --- */
.nav:hover .mega-panel,
.mega-panel:hover {
  display: block;
}


/* --- 패널 내부 레이아웃 --- */
.mega-inner{
  max-width:1200px; margin:0 auto;
  display:grid; grid-template-columns:repeat(5, minmax(180px,1fr));
  gap:20px 28px;
}
.mega-inner section h3{ margin:0 0 10px; font-size:16px; font-weight:700; }
.mega-inner ul{ list-style:none; margin:0; padding:0; }
.mega-inner li{ margin:6px 0; }
.mega-inner a{
  text-decoration:none; color:#222; line-height:1.6;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.mega-inner a:hover{ color:#0a68ff; }

/* --- 한글 줄바꿈/세로깨짐 방지 --- */
.mega-panel, .mega-panel *{
  writing-mode: horizontal-tb !important;
  word-break: keep-all;
  white-space: normal;
}

/* --- 반응형 --- */
@media (max-width:1100px){ .mega-inner{ grid-template-columns:repeat(4, minmax(160px,1fr)); } }
@media (max-width:900px){  .mega-inner{ grid-template-columns:repeat(3, 1fr); } }
@media (max-width:700px){  .mega-inner{ grid-template-columns:repeat(2, 1fr); } }
@media (max-width:520px){
  .menu{ gap:16px; flex-wrap:wrap; }
  .mega-inner{ grid-template-columns:1fr; }
}

/* --- footer --- */
/* ----- Custom Footer ----- */#custom-footer {
  background:#555;
  color:#ccc;
  font-size:12px;
  line-height:1.5;
  padding:12px 20px;
}

.footer-container {
  max-width:1200px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
}

/* 로고 + 텍스트 */
.footer-left {
  display:flex;
  align-items:center;
}
.footer-logo {
  height:40px;           /* 로고 크기 */
  margin-right:12px;
}
.footer-info p {
  margin:2px 0;
}

/* 소셜 아이콘 */
.footer-right a {
  color:#ccc;
  font-size:14px;
  margin-left:12px;
  text-decoration:none;
  transition:all 0.2s ease;
}
.footer-right a:hover {
  color:#0a68ff;
  transform:scale(1.2);
}

/* 저작권 문구 가운데 */
.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.2);
  margin-top:10px;
  padding-top:6px;
  text-align:center;
  font-size:10px;
}

.site-below-footer-wrap,
.ast-small-footer,
.ast-footer-copyright {
  display: none !important;
}



/* 모바일 대응 */
@media (max-width:768px) {
  .footer-container {
    flex-direction:column;
    text-align:center;
  }
  .footer-left {
    flex-direction:column;
  }
  .footer-logo {
    margin-bottom:8px;
  }
  .footer-right {
    margin-top:8px;
  }
}
