@charset "utf-8";
/* 서브페이지 공통 스타일 */
:root{
  --dk-navy:#16304d; --dk-navy-deep:#0d1f33;
  --dk-blue:#0b50d0; --dk-blue-soft:#f0f5ff;
  --dk-gold:#ffbb00;
  --dk-ink:#1e2124; --dk-sub:#58616a; --dk-mute:#8a949e;
  --dk-line:#e6e8ea;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Pretendard GOV','Malgun Gothic',system-ui,sans-serif;color:var(--dk-ink);background:#fff;-webkit-font-smoothing:antialiased;letter-spacing:-.01em;word-break:keep-all}
a{color:inherit;text-decoration:none}
img{display:block}

/* ===== SUBPAGE HERO ===== */
.subpage-hero{background:#f6f8fb;border-bottom:1px solid #e6e8ea;padding:28px 32px;text-align:center;color:#16304d}
.subpage-hero__title{margin:0 0 8px;font-size:32px;font-weight:700;letter-spacing:-.03em}
.subpage-hero__desc{margin:0;font-size:16px;color:#58616a;font-weight:500}

/* ===== SUBPAGE CONTENT ===== */
.subpage-content{padding:40px 0 12px}
.content-section{max-width:900px;margin:0 auto;padding:0 32px}
.content-wrapper > h2{margin:0 0 20px;font-size:32px;font-weight:700;color:var(--dk-navy);letter-spacing:-.02em;line-height:1.3}
.intro-text{margin:0 0 40px;font-size:16px;line-height:1.8;color:var(--dk-sub);max-width:600px}

/* ===== GREETING ===== */
.greeting-body{margin:32px 0}
.greeting-body p{margin:0 0 20px;font-size:15px;line-height:1.8;color:var(--dk-sub)}
.greeting-body h3{margin:32px 0 16px;font-size:18px;font-weight:700;color:var(--dk-navy)}
.greeting-list{margin:0 0 32px;padding-left:24px;list-style:disc}
.greeting-list li{margin:0 0 12px;font-size:15px;line-height:1.8;color:var(--dk-sub)}
.greeting-list strong{color:var(--dk-navy);font-weight:600}
.greeting-signature{margin:48px 0 0;padding:32px 0 0;border-top:1px solid var(--dk-line);font-weight:500;color:var(--dk-sub)}

/* ===== INSTRUCTORS ===== */
.instructors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:48px 0}
.instructor-card{background:#fff;border:1px solid var(--dk-line);border-radius:16px;overflow:hidden;transition:box-shadow .25s}
.instructor-card:hover{box-shadow:0 12px 30px rgba(13,31,51,.1)}
.instructor-card__image{height:200px;background:var(--dk-blue-soft);display:flex;align-items:center;justify-content:center}
.instructor-placeholder{color:var(--dk-blue);font-size:16px;font-weight:600;text-align:center}
.instructor-card__body{padding:24px}
.instructor-card__name{margin:0 0 6px;font-size:18px;font-weight:700;color:var(--dk-navy)}
.instructor-card__title{margin:0 0 14px;font-size:14px;color:var(--dk-blue);font-weight:600}
.instructor-card__meta{margin:0 0 14px;padding:0 0 14px;border-bottom:1px solid var(--dk-line)}
.instructor-card__meta p{margin:0 0 8px;font-size:13px;line-height:1.5;color:var(--dk-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.instructor-card__meta strong{color:var(--dk-navy)}
.instructor-card__intro{margin:0;font-size:13px;line-height:1.6;color:var(--dk-mute)}
.instructor-note{margin:32px 0 0;padding:16px 20px;background:#f0f5ff;border-left:3px solid var(--dk-blue);border-radius:4px;font-size:13px;color:var(--dk-sub)}

/* ===== CTA INLINE ===== */
.cta-inline{margin:48px 0 0;padding:40px 0 0;border-top:1px solid var(--dk-line);text-align:center}
.cta-link{display:inline-block;padding:15px 32px;background:var(--dk-navy);color:#fff;border-radius:8px;font-size:16px;font-weight:600;transition:background .2s}
.cta-link:hover{background:var(--dk-navy-deep)}

/* ===== TABLE ===== */
.content-table{width:100%;border-collapse:collapse;margin:32px 0}
.content-table th{background:var(--dk-navy);color:#fff;padding:16px 12px;text-align:left;font-weight:600;font-size:14px}
.content-table td{padding:14px 12px;border-bottom:1px solid var(--dk-line);font-size:14px;line-height:1.5;color:var(--dk-sub)}
.content-table tbody tr:hover{background:#fafbfc}

/* ===== GALLERY ===== */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0}
.gallery-item{aspect-ratio:1;background:var(--dk-blue-soft);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--dk-blue);font-size:14px;text-align:center;cursor:pointer;transition:transform .2s}
.gallery-item:hover{transform:scale(1.02)}

/* ===== 반응형 ===== */
@media(max-width:700px){
  /* 과정 상세의 인라인/페이지 스타일 그리드를 모바일 1열로 강제 */
  .course-grid{grid-template-columns:1fr !important}
  .content-section div[style*="grid-template-columns"]{grid-template-columns:1fr !important}
}
@media(max-width:768px){
  .subpage-hero__title{font-size:28px}
  .instructors-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .content-table{font-size:13px}
  .content-table th,.content-table td{padding:10px 8px}
}
@media(max-width:480px){
  .subpage-hero{padding:60px 20px}
  .content-section{padding:0 20px}
  .content-wrapper > h2{font-size:24px}
  .gallery-grid{grid-template-columns:1fr}
}
