body {
  margin: 0;
  font-family: 'Noto Sans KR', Arial, sans-serif;
  background: linear-gradient(135deg, #5a4fcf, #7c7cff);
}

/* CENTER */
.container {
  max-width: 1000px;
  margin: 40px auto;
}

/* GRADIENT BORDER */
.card-wrapper {
  padding: 2px;
  border-radius: 18px;
  background: linear-gradient(135deg, #7c7cff, #5a4fcf, #9f7aea);
}

/* CARD */
.card {
  display: flex;
  gap: 20px;
  background: rgba(255,255,255,0.92);
  border-radius: 16px;
  padding: 30px;
  backdrop-filter: blur(10px);
  box-shadow: 0 20px 50px rgba(0,0,0,0.2);
}

/* LEFT */
.card-left {
  width: 180px;
  position: sticky;
  top: 20px;
  text-align: center;
}

/* LOGO */
.logo img {
  max-width: 140px;
  transition: 0.2s;
}
.logo img:hover {
  transform: scale(1.05);
}

/* MENU */
.menu a {
  display: block;
  margin: 10px 0;
  border-radius: 8px;
  transition: 0.2s;
}

.menu a:hover {
  background: rgba(90,79,207,0.15);
}

.menu a.active {
  background: rgba(90,79,207,0.25);
  box-shadow: 0 0 10px rgba(90,79,207,0.4);
}

.menu img {
  width: 100%;
  max-width: 160px;
  transition: 0.2s;
}

.menu img:hover {
  transform: scale(1.05);
}

/* RIGHT */
.card-right {
  flex: 1;
}

.header-img {
  max-width: 100%;
}

/* TEXT */
.title { text-align:center; font-size:22px; font-weight:600; }
.subtitle { text-align:center; }
.desc { text-align:center; color:#777; font-style:italic; }
.text { line-height:1.7; }
.highlight { color:red; font-weight:bold; }
.lang { text-align:center; font-weight:bold; }
.muted { color:#666; }
.center { text-align:center; }

/* BUTTON */
.btn {
  display:inline-block;
  padding:12px 24px;
  background:#5a4fcf;
  color:white;
  border-radius:8px;
  text-decoration:none;
  transition:0.25s;
}
.btn:hover {
  background:#7c7cff;
  transform:translateY(-2px);
}

/* FOOTER */
.footer {
  margin-top:30px;
  padding-top:20px;
  border-top:1px solid #ccc;
  text-align:center;
  font-size:12px;
}

.counter {
  margin-top:10px;
  color:#666;
}

/* FADE */
.fade-in {
  opacity:0;
  transform:translateY(20px);
  animation:fadeIn 0.8s ease forwards;
}
.fade-in.delay-1 { animation-delay:0.2s; }
.fade-in.delay-2 { animation-delay:0.4s; }
.fade-in.delay-3 { animation-delay:0.6s; }

@keyframes fadeIn {
  to { opacity:1; transform:translateY(0); }
}

/* MOBILE */
.menu-toggle {
  display:none;
}

@media (max-width:768px) {

  .menu-toggle {
    display:block;
    font-size:26px;
    cursor:pointer;
  }

  .card {
    flex-direction:column;
  }

  .card-left {
    position:fixed;
    left:-240px;
    top:0;
    height:100%;
    background:#5a4fcf;
    transition:0.3s;
    z-index:1000;
  }

  .card-left.show {
    left:0;
  }
}

/* DARK */
@media (prefers-color-scheme: dark) {

  body {
    background: linear-gradient(135deg, #1e1b4b, #2b266f);
    color:#eee;
  }

  .card {
    background: rgba(30,27,75,0.85);
  }

  .footer {
    border-top:1px solid #444;
  }
}
