.public-article { background: var(--soft); }
.public-article__shell { max-width: var(--site-shell-max); }
.public-article__content { padding-top: 30px; padding-bottom: 72px; }
.public-article__cover { aspect-ratio: 16 / 9; margin: 0 0 32px; overflow: hidden; border-radius: 10px; background: var(--soft); }
.public-article__cover img { width: 100%; height: 100%; object-fit: cover; }
[data-website-page] .public-article__body img { display: block; max-width: 100%; height: auto; margin: 20px auto; }
.public-article__body { padding: clamp(22px, 4vw, 42px); border: 1px solid var(--line); border-radius: 10px; background: #fff; font-size: 1.02rem; line-height: 1.72; }
@media (max-width: 640px) {
    .public-article { padding-top: 0; }
    .public-article__content { padding-top: 20px; padding-bottom: 54px; }
    .public-article__body { padding: 20px; }
}
