.site-map-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; align-items: start; }
.site-map-group { min-width: 0; padding: 28px; border: 1px solid #e3d6c3; border-radius: 14px; background: #fffdf8; }
.site-map-group h2 { font-family: var(--font-display); font-size: 1.45rem; line-height: 1.5; padding-bottom: 20px; border-bottom: 1px solid #e3d6c3; }
.site-map-group ul { list-style: none; padding: 0; margin: 0; }
.site-map-group li + li { border-top: 1px solid #eee4d5; }
.site-map-group a { display: block; padding-block: 13px; color: #685239; font-size: .92rem; line-height: 1.8; overflow-wrap: anywhere; }
.site-map-group a:hover { color: #a86c25; }
@media (max-width: 900px) { .site-map-grid { grid-template-columns: 1fr; gap: 24px; } }
@media (max-width: 767px) { .site-map-group { padding: 24px; } .site-map-group a { min-height: 44px; font-size: .9rem; } }
