@charset "utf-8";
:root{
  --blue-700:#007a9f;
  --blue-600:#1472c4;
  --blue-500:#1e88e5;
  --teal-600:#1fa77a;
  --green-600:#2a8f5c;
  --green-700:#2f7f3f;
  --ink:#0f172a;
  --muted:#475569;
  --bg:#f8fafc;
  --card:#ffffff;
  --ring:#e2e8f0;
  --pill:#e6f0ff;
  --radius:16px;
  --radius-lg:22px;
  --shadow:0 2px 5px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
/* body{margin:0; color:var(--ink); background:var(--bg); font-family:system-ui,-apple-system,Segoe UI,Roboto,Pretendard,Apple SD Gothic Neo,Malgun Gothic,sans-serif; line-height:1.5} */
.kv-container { max-width:1200px; margin:0 auto; padding:24px 16px; }
.section{margin-bottom:28px}
.pill{
  background:var(--card);
  border:1px solid var(--ring);
  border-radius:var(--radius-lg);
  padding:20px 22px;
  box-shadow:var(--shadow);
  margin-bottom:60px;
}
.tag{
  display:inline-block;
  font-weight:700;
  font-size:22px;
  color:#fff;
  background:var(--blue-600);
  border-radius:999px;
  padding:10px 30px;
  margin-bottom:8px;
}
.pill h2{
  margin:6px 0 2px; font-size:22px; font-weight:800; color:var(--ink);
}
.pill p{
  margin:0; color:var(--muted)
}

  .kv-container .h2{
  margin:28px 0 12px; font-size:20px; font-weight:800; color:#0b3f7a; letter-spacing:.02em
}

/* 전략 5기둥 */
.pillars{
  display:grid;
  gap:16px;
  grid-template-columns:repeat(auto-fit, minmax(220px,1fr));
}
.pillar{
  background:var(--card);
  border:1px solid var(--ring);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  display:flex; flex-direction:column;
}
/* 헤더는 중앙 정렬 */
.pillar .head{
  padding:16px 16px 14px;
  display:grid;
  place-items:center;
  gap:12px;
  color:#fff;
  text-align:center;
}
/* 아이콘 박스 */
.pillar .icon{
  width:100px; height:100px;
  border-radius:10px;
  /* background:rgba(255,255,255,.18); */
  position:relative;          /* 절대 중앙 정렬용 기준 */
  overflow:hidden;
}
.pillar[data-theme="safety"] .head{background:var(--blue-700)}
.pillar[data-theme="creative"] .head{background:#0e8b64}
.pillar[data-theme="efficiency"] .head{background:#005f5c}
.pillar[data-theme="integrity"] .head{background:#0b49a0}
.pillar[data-theme="sustain"] .head{background:#568f45}
.pillar .icon img{max-width:90%; max-height:90%; display:block}
.pillar .title{font-size:22px; font-weight:800; padding:10px 0;}

.pillar .body{padding:12px 16px 16px; display:grid; gap:12px}
.badge{display:inline-block; font-weight:700; font-size:16px; letter-spacing:.02em; padding:4px 10px; border-radius:999px; background:#eef2ff; color:#334155; border:1px solid #e5e7eb; margin:15px 0;}
.card{
  border:1px solid var(--ring); border-radius:12px; padding:12px; background:#fff;
}

.pillar li{list-style: none !important; }
.card h4{margin:0 0 8px; font-size:14px; font-weight:800; color:#0f2f5a !important;}
.card p{margin:0; color:var(--muted); font-size:14px}
.card ul{margin:0; padding-left:18px; color:var(--muted); font-size:14px !important;}
.goal{font-weight:800; color:#0b49a0; padding:10px 0;}
.goal[data-theme="safety"]{color:var(--blue-700)}
.goal[data-theme="creative"]{color:#0e8b64}
.goal[data-theme="efficiency"]{color:#005f5c}
.goal[data-theme="integrity"]{color:#0b49a0}
.goal[data-theme="sustain"]{color:#568f45}

/* 인재상 */
.talent{
  background:var(--card);
  border:1px solid var(--ring);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
  padding:18px;
}
.talent h3{margin:0 0 8px; font-size:20px; font-weight:900; text-align:center}
.talent p.lead{margin:0 0 18px; text-align:center; color:var(--muted); font-size:24px; line-height: 1.5em;}
.talent .grid{
  display:grid; gap:14px;
  grid-template-columns:repeat(auto-fit, minmax(220px,1fr));
}
.tcard{
  border:1px solid var(--ring); border-radius:14px; padding:14px; background:#fff;
}
.tcard .row-k{
 gap:10px; align-items:center; margin-bottom:6px; display:flex; justify-content:center;
}
.tcard .row-k .icon{
  width:100px;
  height:100px;
  display:flex;          /* 내부에서도 flex */
  align-items:center;    /* 세로 가운데 */
  justify-content:center;/* 가로 가운데 */
}
.tcard .row-k .icon img{max-width:100%; max-height:100%; display:block}
.tcard h4{margin:0; font-size:16px; font-weight:800}
.tcard ul{margin:6px 0 0; padding-left:18px; color:var(--muted)}

/* 작은 화면 여백 */
@media (max-width:520px){
  .pill{padding:16px}
  .pill .tag{font-size:13px}
}
.text-center{text-align:center !important;}
.d-none{display:none !important;}
.card ul{margin:10px 0;}
.card li, .tcard li{list-style: disc;}
.tcard h5{text-align: center; font-size:20px; font-weight: 800; padding:20px 0;}
.space-20{height:20px !important;}

/* 기본 상태 (모바일): .pc-only는 숨기고, .mobile-only는 보이게 설정 */
.pc-only {
  display: none !important; /* !important를 사용하여 다른 스타일에 덮어쓰이지 않도록 함 */
}
.mobile-only {
  display: block !important; /* span 등 인라인 요소에 사용 시 'inline' 또는 'inline-block'으로 변경 */
}

/* 화면 너비가 769px 이상일 때 (태블릿/PC) */
@media (min-width: 769px) {
  .pc-only {
    display: block !important; /* 기본값인 none을 덮어써서 보이게 함 */
  }
  .mobile-only {
    display: none !important; /* 기본값인 block을 덮어써서 숨김 */
  }
}