/* 법무법인 공명 블로그 아티클 스타일.
 * rich_html_v10.LANDING_CSS 에서 뽑았다. 손으로 고치지 말고
 * tools/export_landing_article_css_20260823.py 를 다시 돌릴 것.
 * 만든 날: 2026-09-08
 */
.gm-art{max-width:760px;margin:0 auto;padding:8px 20px 80px;
  font-family:Pretendard,'Malgun Gothic','Apple SD Gothic Neo',sans-serif;color:#22262e;
  --navy:#16407a;--blue:#2f6fed;--ink:#161b25;scroll-behavior:smooth;
  word-break:keep-all;overflow-wrap:break-word}
.gm-theme-main{--navy:#163a63;--blue:#b23a48;--ink:#161b25}
.gm-theme-incheon{--navy:#155b61;--blue:#16858a;--ink:#183235}
.gm-theme-busan{--navy:#245846;--blue:#d85c4a;--ink:#1d2925}
.gm-theme-main .gm-lead{background:#f7f9fc;border-color:#cbd8e8}
.gm-theme-incheon .gm-lead{background:#eff8f8;border-color:#bfdcdd}
.gm-theme-busan .gm-lead{background:#fff4f1;border-color:#efd1cb}
.gm-theme-main .gm-fig img{border:3px solid #cbd8e8}
.gm-theme-incheon .gm-fig img{border:3px solid #bfdcdd}
.gm-theme-busan .gm-fig img{border:3px solid #d85c4a}
@supports (animation-timeline: scroll()){
  .gm-progress{position:fixed;top:0;left:0;z-index:99;height:4px;width:100%;
    background:linear-gradient(90deg,var(--navy),var(--blue));transform-origin:0 50%;
    transform:scaleX(0);animation:gmgrow linear;animation-timeline:scroll(root)}
  @keyframes gmgrow{to{transform:scaleX(1)}}}
.gm-badge{display:inline-block;background:#eef4ff;color:var(--navy);font-size:14px;font-weight:800;
  padding:6px 14px;border-radius:999px;margin:14px 0 14px}
.gm-title{font-size:32px;font-weight:800;line-height:1.4;color:var(--ink);margin:4px 0 14px}
.gm-meta{font-size:15px;color:#7a8598;margin:0 0 26px;padding-bottom:20px;border-bottom:1px solid #edf0f5}
.gm-lead{margin:26px 0;padding:26px 28px;border-radius:16px;color:#1c2b4a;
  background:linear-gradient(135deg,#eef4ff,#f7faff);border:1px solid #dbe6fb;
  font-size:21px;line-height:1.85}
.gm-lead .gm-cap{display:block;font-size:14px;font-weight:800;color:var(--blue);margin-bottom:10px;letter-spacing:.4px}
.gm-toc{margin:24px 0 32px;padding:0 18px;background:#f8fafd;border:1px solid #e6ebf3;border-radius:8px}
.gm-art .gm-toc>summary{cursor:pointer;min-height:48px;padding:12px 0;font-size:17px;font-weight:700;color:var(--ink)}
.gm-art .gm-toc .gm-toc-list{padding:0 0 18px}
.gm-toc b{display:block;font-size:15px;color:#6b7688;margin-bottom:12px;letter-spacing:.5px}
/* 목차 번호는 HTML 에 글자로 넣는다. CSS 카운터로 그리면 사이트의
   '.article-content ol li{counter-increment:gm-ol}' 가 특정도로 이겨서 우리
   카운터가 0 에 머물고 전부 '00' 으로 찍힌다(라이브에서 실제로 그랬다).
   <ol><li> 도 쓰지 않는다 — 사이트가 ol li::before 로 자기 번호를 하나 더
   붙이기 때문에 번호가 두 개 보인다. */
.gm-toc-list{display:flex;flex-direction:column;gap:9px}
.gm-toc-list a{display:flex;gap:11px;align-items:baseline;font-size:17.5px;font-weight:600;color:#2a3a56;text-decoration:none}
.gm-toc-list a:hover{color:var(--blue)}
.gm-toc-n{flex:none;font-size:13.5px;font-weight:800;color:var(--blue)}
.gm-h2{display:flex;align-items:baseline;gap:14px;font-size:24.5px;font-weight:800;color:var(--ink);
  line-height:1.4;margin:72px 0 32px;scroll-margin-top:24px}
.gm-h2 .gm-num{flex:none;font-size:15px;font-weight:800;color:#fff;background:var(--navy);
  border-radius:9px;padding:5px 10px;letter-spacing:.5px;transform:translateY(-3px)}
.gm-h3{font-size:21px;font-weight:800;color:#1f2d45;margin:40px 0 14px}
.gm-p{font-size:20px;line-height:1.95;margin:0 0 36px;color:#22262e}
.gm-p.gm-cont{margin-bottom:16px} /* 같은 문단에서 나뉜 덩어리: 간격 1줄 */
.gm-art strong{font-weight:800;color:var(--navy);
  background:linear-gradient(transparent 62%,#ffe9a8 62%);padding:0 2px;border-radius:2px}
.gm-quote{margin:36px 0;padding:24px 28px;background:#f5f8ff;border-left:6px solid var(--blue);
  border-radius:12px;font-size:21.5px;font-weight:700;color:#1e2a44;line-height:1.75}
.gm-list{margin:22px 0 32px;padding:0;list-style:none}
.gm-list li{font-size:19.5px;line-height:1.85;margin:0 0 15px;padding-left:34px;position:relative;color:#2a2f39}
.gm-list li:before{content:"✓";position:absolute;left:2px;top:1px;width:22px;height:22px;border-radius:7px;
  background:#e8f0ff;color:var(--blue);font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center}
/* 번호는 HTML 에 글자로 넣는다. 목차와 같은 이유다 — 사이트의
   '.article-content ol li{counter-increment:gm-ol}' 가 특정도로 이겨서
   CSS 카운터가 0 에 머문다. ol/li 도 쓰지 않는다(사이트가 번호를 또 붙인다). */
.gm-steps{margin:26px 0 36px;padding:0;display:flex;flex-direction:column;gap:20px}
.gm-steps .gm-step{font-size:19.5px;line-height:1.85;margin:0;padding:2px 0 2px 52px;position:relative}
.gm-steps .gm-step-n{position:absolute;left:0;top:2px;width:34px;height:34px;border-radius:50%;
  background:var(--navy);color:#fff;font-weight:800;font-size:16px;display:flex;align-items:center;justify-content:center}
.gm-steps .gm-step:not(:last-child):after{content:"";position:absolute;left:16.5px;top:40px;bottom:-16px;width:2px;background:#dce4f0}
.gm-tblwrap{max-width:100%;overflow-x:auto;margin:28px 0 36px;border:1px solid #dfe5ef;border-radius:8px}
.gm-tblwrap:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.gm-tblwrap table{width:100%;border-collapse:collapse;min-width:560px}
.gm-tblwrap th{background:var(--navy);color:#fff;font-size:16px;font-weight:700;text-align:left;padding:13px 15px}
.gm-tblwrap td{font-size:16.5px;color:#333;line-height:1.75;padding:13px 15px;border-top:1px solid #e7ebf2;vertical-align:top}
.gm-tblwrap tr:nth-child(even) td{background:#f7f9fc}
.gm-fig{margin:38px 0;text-align:center}
.gm-fig img{max-width:100%;border-radius:14px;box-shadow:0 6px 24px rgba(10,16,28,.12)}
.gm-fig figcaption{font-size:14.5px;color:#8a93a3;margin-top:10px}
.gm-video{position:relative;margin:36px 0;padding-top:56.25%;border-radius:14px;overflow:hidden;
  box-shadow:0 6px 24px rgba(10,16,28,.16)}
.gm-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gm-faq{margin:0 0 14px;border:1px solid #e2e8f2;border-radius:13px;background:#fff;overflow:hidden}
.gm-faq summary{cursor:pointer;list-style:none;display:flex;gap:12px;align-items:baseline;
  padding:19px 22px;font-size:19.5px;font-weight:800;color:#1f2d45;background:#f8fafd}
.gm-faq summary::-webkit-details-marker{display:none}
.gm-faq summary:before{content:"Q";flex:none;color:#fff;background:var(--blue);border-radius:8px;
  font-size:14px;font-weight:900;padding:3px 9px}
.gm-faq summary:after{content:"﹀";margin-left:auto;color:#9aa7ba;font-size:15px;transition:transform .2s}
.gm-faq[open] summary:after{transform:rotate(180deg)}
.gm-faqa{padding:6px 24px 20px}
.gm-faqa .gm-p{font-size:18.5px;line-height:1.9;margin:14px 0}
.gm-office{margin:30px 0 38px;padding:26px 28px;border-radius:16px;background:#0f2a4a;color:#eaf1fb}
.gm-office .gm-oname{font-size:21px;font-weight:800;color:#fff;margin:0 0 16px}
.gm-office .gm-orow{display:flex;gap:12px;font-size:17.5px;line-height:1.7;margin:9px 0;color:#d9e5f5}
.gm-office .gm-orow b{flex:none;color:#8fc1ff;font-weight:700;min-width:78px}
.gm-office .gm-walk{display:inline-block;margin-top:14px;background:#ffd24a;color:#3a2c00;
  font-size:15px;font-weight:800;padding:7px 14px;border-radius:999px}
.gm-btns{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 40px}
.gm-btn{flex:1 1 220px;text-align:center;text-decoration:none;font-size:19px;font-weight:800;
  padding:18px 20px;border-radius:13px}
.gm-btn-tel{background:var(--navy);color:#fff;box-shadow:0 6px 18px rgba(22,64,122,.28)}
.gm-btn-form{background:#fff;color:var(--navy);border:2px solid var(--navy)}
.gm-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 36px}
.gm-gallery figure{margin:0}
.gm-gallery img{width:100%;border-radius:11px;box-shadow:0 3px 12px rgba(10,16,28,.10)}
.gm-gallery figcaption{font-size:13px;color:#949cab;margin-top:6px;line-height:1.5}
.gm-others{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 8px}
.gm-obranch{display:flex;flex-direction:column;gap:8px;padding:20px 22px;border-radius:14px;
  background:#f7f9fc;border:1px solid #e2e8f2;text-decoration:none;color:#22262e}
.gm-obranch b{font-size:17.5px;color:var(--navy)}
.gm-obranch .gm-owalk{font-size:14.5px;color:#6b7688}
.gm-obranch .gm-ogo{font-size:14.5px;font-weight:800;color:var(--blue)}
.gm-obranch:hover{border-color:var(--blue)}
.gm-author{margin:50px 0 0;padding:22px 26px;border-radius:14px;background:#f7f9fc;border:1px solid #e6ebf3;
  font-size:16.5px;color:#5b6678;line-height:1.7}
.gm-author b{color:var(--navy)}
.gm-secline{margin:60px 0 0;border:none;border-top:1px solid #edf0f5}
@media (max-width:480px){
  .gm-art{padding:6px 16px 70px}
  .gm-p{font-size:18.5px;line-height:1.9;margin-bottom:26px}
  .gm-lead{font-size:19px;padding:22px 20px;line-height:1.8}
  .gm-title{font-size:26px;line-height:1.42}
  .gm-h2{font-size:22px;margin-top:58px;gap:10px}
  .gm-h2 .gm-num{font-size:13px;padding:4px 8px}
  .gm-toc{padding:18px 18px}.gm-toc a{font-size:16.5px}
  .gm-list li,.gm-steps .gm-step{font-size:18px}
  .gm-faq summary{font-size:18px;padding:16px 16px}
  .gm-faqa{padding:4px 16px 16px}.gm-faqa .gm-p{font-size:17.5px}
  .gm-office{padding:22px 20px}.gm-office .gm-orow{font-size:16.5px;gap:9px}
  .gm-office .gm-orow b{min-width:70px}
  .gm-quote{font-size:19px;padding:20px 20px}
  .gm-btn{font-size:17.5px;padding:16px 16px}
  .gm-gallery{grid-template-columns:1fr}
  .gm-others{grid-template-columns:1fr}}
