.public-shell { max-width: 1000px; margin: 0 auto; padding: 28px; }
.public-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 64px; }
.public-document { line-height: 1.75; overflow-wrap: anywhere; }
.public-document h1 { font-size: clamp(28px, 5vw, 48px); line-height: 1.2; }
.public-document h2 { margin-top: 36px; }
.public-document .panel h2 { margin-top: 0; }
.public-document ul { padding-left: 24px; }
.public-lead { font-size: 21px; color: #b5c5d8; max-width: 760px; }
.public-footer { margin-top: 48px; padding: 24px 0; border-top: 1px solid #303846; line-height: 1.8; }
.public-footer nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }
@media (max-width: 600px) { .public-shell { padding: 20px; } .public-header { align-items: flex-start; flex-direction: column; margin-bottom: 36px; } }
