@charset "UTF-8";

/* ============================================================
 * index.jsp base 레이아웃 (구 cmmn/layout.css, svc/pythagraph-main.css,
 *  svc/pythagraph-element.css 에서 이관)
 * - 아래 "테마/색상 override" 블록이 이 base 보다 우선해야 하므로
 *   base 규칙은 모두 이 섹션(위쪽)에 둔다.
 * - url() 경로는 css/template/template2/ 기준으로 보정:
 *   폰트 ../../../fonts/ , 이미지 ../../../images/
 * ============================================================ */

/* --- 폰트 (구 cmmn/layout.css) --- */
@font-face {
  font-family: "SCDream-Medium";
  src: url("../../../fonts/SCDream1.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SCDream-bold";
  src: url("../../../fonts/SCDream2.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}

/* --- 최소 리셋 (구 svc/pythagraph-element.css, index.jsp 사용분만) --- */
ol,
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
  color: #000;
}
h1,
strong,
span {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
}
h1 {
  line-height: 1.15;
  font-size: 2.5rem;
}
button {
  padding: 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  box-sizing: border-box;
  cursor: pointer;
}

/* --- 문서/푸터 base (구 cmmn/layout.css) --- */
html,
body {
  margin: 0;
  padding: 0;
  min-width: 1200px;
}
footer {
  width: 100%;
  height: 100px;
  margin-top: auto;
  border-top: 1px solid #ededed;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.footer-wrapper {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
.footer-content {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 24px;
  font-family: "SCDream-Medium";
}
/* 로고 비정상 확대 방지 — 원본 83x42, 높이 고정 */
.footer-logo {
  flex: 0 0 auto;
  line-height: 0;
}
.footer-logo img {
  height: 36px;
  width: auto;
  display: block;
}
.footer-content address {
  font-style: normal;
  font-size: 14px;
  color: #555;
  font-family: "SCDream-bold";
  line-height: 1.5;
}
/* copyright 가시성 — 흰색 상속 방지 위해 색 명시 */
.footer-content .copyright {
  margin: 0 0 0 auto;
  font-size: 13px;
  color: #888;
}

/* --- 메인 컨테이너/타이틀/메뉴 base (구 svc/pythagraph-main.css) --- */
.main-container {
  width: 100vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  font-family: "SCDream-Medium";
  overflow: hidden;
}
.main-welcome-title {
  width: 100%;
  height: 53vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
}
.main-welcome-title > h1 {
  height: 165px;
  font-size: 35px;
  text-align: center;
  color: #fff;
}
.main-welcome-title > h1 > strong {
  font-family: "SCDream-bold";
}
.main-container .main-link {
  min-width: 1200px;
  margin: 0 auto;
  padding: 100px 0px;
  box-sizing: border-box;
}
.main-container .main-link nav {
  width: 100%;
}
.main-link nav ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.main-link nav ul li {
  width: 27%;
  cursor: pointer;
}
.main-link nav ul li > a {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.main-menu {
  font-size: 30px;
  color: #12554A;
  font-weight: 500;
  padding-bottom: 15px;
  border-bottom: 1px solid #12554A;
  margin-bottom: 15px;
  justify-content: center;
  display: flex;
  align-items: center;
}
.main-menu img {
  margin-right: 15px;
}
.main-menu span {
  color: #115648;
  font-family: "paybooc-bold";
  font-weight: 800;
}
.sub-txt {
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -0.3px;
  line-height: 160%;
  color: #2C2C2C;
}

/* ============================================================
 * 테마/색상 override (기존 ddm-main-custom.css 내용 — 위 base 를 덮어씀)
 * ============================================================ */
/* 배경 - 기존 일러스트(main_background.png)를 파랑 톤으로 변환 + 하단 여백 */
.main-welcome-title {
  background-image: url(../../../images/main/main_background.png),
                    linear-gradient(135deg, #005bac 0%, #004b8c 100%);
  background-blend-mode: luminosity, normal;
  background-repeat: no-repeat, no-repeat;
  background-size: cover, cover;
  background-position: center, center;
  box-sizing: border-box;
  padding-bottom: 48px;
}
/* 타이틀 반응형 + 하단 여백 */
.main-welcome-title > h1 {
  height: auto;
  margin-bottom: 16px;
  font-size: clamp(20px, 3vw, 35px);
  padding: 0 20px;
  box-sizing: border-box;
  word-break: keep-all;
}
@media (max-width: 1024px) {
  .main-welcome-title {
    height: 40vh;
    min-height: 260px;
  }
}
@media (max-width: 600px) {
  .main-welcome-title {
    height: auto;
    min-height: 220px;
    padding: 30px 16px;
    justify-content: center;
  }
  .main-welcome-title > h1 {
    font-size: 20px;
    line-height: 1.4;
  }
}
/* 공지사항 바로가기 버튼 */
.btn_notice {
  width: 100%;
  text-align: center;
  margin-top: 24px;
  margin-bottom: 8px;
}
.btn_notice button {
  display: inline-block;
  padding: 12px 24px;
  background: #ffffff;
  color: #005bac;
  font-weight: bold;
  font-size: 16px;
  border: 1px solid #c6d5e8;
  border-radius: 30px;
  cursor: pointer;
}
.btn_notice button:hover {
  background: #f7fbff;
}
/* 메인 가운데 메뉴 */
.main-menu {
  border-bottom: 1px solid #c6d5e8;
}
.main-menu span {
  color: #005bac;
  opacity: 80%;
  font-size: 25px;
}
.main-menu span:hover{
  opacity: 100%;;
}
.main-menu span:hover{

}
.sub-txt {
  font-size: 14px;
  color: #2C2C2C;
}
.main-link nav ul li {
  width: 300px;
  cursor: pointer;
}