/* 원정 박래헌 명장 포트폴리오 (artist-park.html) 전용 — 04_사이트_v0.4_생성기/pages_park.py (2026-10-17)
   규칙: 최소 15px · 본문 17px Light · 카드 네 변 1px(한쪽 변 장식 없음) · 카드는 배경보다 밝게 · 작품 이미지는 원본 비율 그대로(잘라내기·늘리기 금지) */
.pk-fig{margin:0;display:flex;flex-direction:column;gap:10px}
.pk-fig img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--cline);background:#0d0b08}
.pk-fig figcaption{font-size:15px;color:var(--text2)}
.pk-portrait img,.pk-tall img{width:auto;max-width:100%;max-height:720px;margin:0 auto}

.pk-intro{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:center}
.pk-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pk-split.pk-rev>.pk-fig{order:2}
.pk-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.pk-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}

.pk-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:6px 0 0}
.pk-facts div{background:var(--card);border:1px solid var(--cline);border-radius:12px;padding:18px 16px}
.pk-facts dt{font-family:var(--cine);font-size:40px;line-height:1;color:var(--gold)}
.pk-facts dd{margin:6px 0 0;font-size:16px;font-weight:300;color:var(--text2);word-break:keep-all}

.pk-stats{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pk-stats li{background:var(--card);border:1px solid var(--cline);border-radius:12px;padding:18px 16px;display:flex;flex-direction:column;gap:6px}
.pk-stats b{font-family:var(--cine);font-weight:400;font-size:40px;line-height:1;color:var(--gold)}
.pk-stats span{font-size:16px;font-weight:300;color:var(--text2);word-break:keep-all}

.pk-card{background:var(--card);border:1px solid var(--cline);border-radius:14px;padding:16px 16px 22px;display:flex;flex-direction:column;gap:10px}
.pk-card .pk-fig img{width:auto;max-width:100%;max-height:420px;margin:0 auto}
.pk-card b{font-family:var(--head);font-weight:700;font-size:22px;color:var(--moon);margin-top:6px}
.pk-card>span{font-size:16px;font-weight:300;line-height:1.7;color:var(--text2);word-break:keep-all}
.pk-spec{font-size:16px;color:var(--gold);opacity:.9;border-top:1px solid var(--cline);padding-top:16px}

.pk-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}
.pk-work figcaption{font-size:16px;color:var(--moon)}
.pk-zoom{all:unset;cursor:zoom-in;display:block;border-radius:12px}
.pk-zoom:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.pk-zoom img{transition:opacity .2s}.pk-zoom:hover img{opacity:.88}

.pk-path{list-style:none;margin:0;padding:0;border-top:1px solid var(--cline)}
.pk-path li{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:baseline;padding:18px 4px;border-bottom:1px solid var(--cline)}
.pk-y{font-family:var(--cine);font-size:30px;line-height:1;color:var(--gold)}
.pk-path b{font-size:18px;font-weight:500;color:var(--moon);word-break:keep-all}
.pk-path small{font-size:16px;font-weight:300;color:var(--text2);word-break:keep-all}
.pk-ex{margin-top:28px}

.pk-quote{margin:0;background:var(--card);border:1px solid var(--cline);border-radius:14px;padding:30px 26px;display:flex;flex-direction:column;gap:16px}
.pk-quote blockquote{margin:0;font-size:22px;font-weight:400;line-height:1.55;color:var(--moon);word-break:keep-all}
.pk-quote figcaption{font-size:15px;color:var(--gold)}

.pk-lb{position:fixed;inset:0;z-index:200;background:rgba(5,5,5,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:14px}
.pk-lb[hidden]{display:none}
.pk-lb img{max-width:100%;max-height:82vh;width:auto;height:auto;border-radius:10px}
.pk-lb p{font-size:17px;color:var(--text)}
.pk-lb-x{all:unset;position:absolute;top:12px;right:16px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:36px;color:#fff;cursor:pointer}
.pk-lb-x:focus-visible{outline:3px solid var(--gold)}

@media (max-width:900px){
  .pk-intro,.pk-split{grid-template-columns:1fr;gap:28px}
  .pk-split.pk-rev>.pk-fig{order:0}
  .pk-three{grid-template-columns:1fr}
  .pk-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pk-path li{grid-template-columns:1fr;gap:4px}
  .pk-portrait img,.pk-tall img{max-height:560px}
}
@media (max-width:520px){
  .pk-facts,.pk-stats{grid-template-columns:1fr}
  .pk-two{grid-template-columns:1fr}
}
