/* 블로그 상세의 모바일 본문 폭과 읽기 흐름을 조정한다. */
.page .article {
  min-width: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 32px 32px 48px;
}
.article-head h1 { font-size: 32px; letter-spacing: 0; overflow-wrap: anywhere; }
.article-content, .article-content * { letter-spacing: 0; }
.article-content { min-width: 0; }
.article-content iframe[src*="youtube.com/embed/"],
.article-content iframe[src*="youtube-nocookie.com/embed/"] {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border: 0;
}
.article-content .gm-art { padding-inline: 0; }
.article-content .gm-art .gm-lead {
  padding: 0 0 24px;
  margin: 0 0 24px;
  border: 0;
  border-bottom: 1px solid #dfe5eb;
  border-radius: 0;
  background: transparent;
  font-size: 20px;
  line-height: 1.85;
}
.article-head:has(~ .article-content .gm-lead) .article-summary { display: none; }
.article-trust-row { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.article-trust-row div { border: 0; border-radius: 0; padding: 0; background: transparent; }
.article-trust-row dt, .article-trust-row dd { display: inline; font-size: 14px; }
.article-trust-row dt { margin-right: 8px; }
.article-content .gm-tblwrap { max-width: 100%; overscroll-behavior-x: contain; }
.article-content .gm-tblwrap table { display: table; margin: 0; }
.article-content a:focus-visible, .article-content summary:focus-visible {
  outline: 2px solid #235ca0;
  outline-offset: 3px;
}
.article-content .gm-toc-list a { min-height: 40px; align-items: center; }
.article-content .gm-fig img { box-shadow: none; border-width: 1px; border-radius: 8px; }
.article-content .gm-h2 { scroll-margin-top: 100px; }
.article-content .gm-lead .gm-cap { display: none; }
.article-content details.gm-toc { border-radius: 8px; }
.article-content details.gm-toc > nav { font-size: inherit; }
@media (max-width: 920px) {
  body { background: #fff; }
  .page.shell { width: min(760px, calc(100% - 32px)); padding-top: 24px; }
  .page .article { padding: 0 0 32px; }
  .article-head { margin-bottom: 28px; padding-bottom: 24px; }
  .article-head h1 { font-size: 28px; line-height: 1.45; }
  .article-content, .article-content .gm-p { font-size: 18.5px; line-height: 1.85; }
  .article-content .gm-lead { font-size: 19px; }
  .article-content p, .article-content .gm-p { margin-bottom: 28px; }
  .article-content h2, .article-content .gm-h2 { font-size: 23px; line-height: 1.5; margin-top: 44px; }
  .article-content .gm-faqa .gm-p { font-size: 18px; }
  .article-content .gm-office .gm-orow { flex-wrap: wrap; }
  .article-content .gm-office .gm-orow b { min-width: 0; }
  .tag-row span { font-size: 14px; padding: 4px 8px; }
}
@media (max-width: 480px) {
  .article-head h1 { font-size: 26px; }
  .article-content .gm-art { padding-inline: 0; }
}
