/* Карта сайта для посетителей */
.sm { padding-bottom: var(--space-48); }
.sm-title { margin: 0 0 var(--space-24); font-size: 30px; font-weight: 500; line-height: 1.2; }
.sm-grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-48); align-items: start; }
.sm-group { margin: 0 0 var(--space-32); }
.sm-side .sm-group:last-child { margin-bottom: 0; }
.sm-h2 { margin: 0 0 var(--space-12); padding-bottom: 10px; border-bottom: 1px solid var(--hairline); font-size: 18px; font-weight: 700; line-height: 1.3; }
.sm-h2 a { color: var(--ink); }
.sm-cats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-24) var(--space-32); }
.sm-h3 { margin: 0 0 var(--space-8); font-size: 15px; font-weight: 700; line-height: 1.35; }
.sm-h3--spaced { margin-top: var(--space-24); }
.sm-h3 a { color: var(--ink); }
.sm-list { margin: 0; padding: 0; list-style: none; }
.sm-list li { margin: 0; }
.sm-list a { display: block; padding: 5px 0; color: var(--ink-muted); font-size: 14px; line-height: 1.4; transition: color var(--dur-fast) var(--ease); }
.sm-list a:hover, .sm-h2 a:hover, .sm-h3 a:hover { color: var(--primary-pressed); }
.sm-list--nested { margin-top: var(--space-8); padding-left: var(--space-16); border-left: 1px solid var(--hairline); }
.sm a:focus-visible { outline: none; box-shadow: var(--shadow-focus); border-radius: var(--radius-sm); }
.sm-xml { margin: var(--space-32) 0 0; padding-top: var(--space-16); border-top: 1px solid var(--hairline-soft); color: var(--ink-subtle); font-size: 13px; }
.sm-xml a { color: var(--primary-pressed); text-decoration: underline; text-underline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .sm-list a, .sm-h2 a, .sm-h3 a { transition: none; } }
@media (max-width: 1023px) { .sm-grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-32); } }
@media (max-width: 719px) { .sm-title { font-size: 24px; } .sm-cats { grid-template-columns: minmax(0, 1fr); } }
