.sitemap-intro { background: var(--bg-alt); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 1.5rem 1.75rem; display: flex; gap: 1.25rem; align-items: flex-start; margin-bottom: 3rem; }
.sitemap-intro .si-icon { width: 40px; height: 40px; border-radius: 10px; flex-shrink: 0; background: var(--blue); color: white; display: flex; align-items: center; justify-content: center; }
.sitemap-intro h3 { font-size: 1.05rem; margin-bottom: 0.35rem; }
.sitemap-intro p { font-size: 0.93rem; line-height: 1.55; }
.sitemap-intro p a { color: var(--blue); font-weight: 600; }

.sm-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
@media (max-width: 760px) { .sm-grid { grid-template-columns: 1fr; } }

.sm-section { background: white; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 1.75rem 2rem; display: flex; flex-direction: column; }
.sm-section.full { grid-column: 1 / -1; }
.sm-section-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; margin-bottom: 1.25rem; border-bottom: 1px solid var(--border); }
.sm-section-head .sm-title { display: flex; align-items: center; gap: 0.75rem; }
.sm-section-head .sm-num { font-family: 'Outfit', sans-serif; font-weight: 900; width: 32px; height: 32px; border-radius: 8px; background: rgba(3,105,161,.08); color: var(--blue); display: flex; align-items: center; justify-content: center; font-size: 0.85rem; }
.sm-section-head h2 { font-size: 1.15rem; margin: 0; }
.sm-section-head .sm-count { font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 0.82rem; color: var(--text-muted); background: var(--bg-alt); padding: 0.25rem 0.65rem; border-radius: 4px; }

.sm-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.15rem; }
.sm-list.cols-2 { grid-template-columns: 1fr 1fr; gap: 0.15rem 1.5rem; }
.sm-list.cols-3 { grid-template-columns: repeat(3, 1fr); gap: 0.15rem 1.5rem; }
@media (max-width: 760px) { .sm-list.cols-2, .sm-list.cols-3 { grid-template-columns: 1fr; } }

.sm-list li { border-bottom: 1px solid var(--border-soft); }
.sm-list li:last-child { border-bottom: none; }
.sm-list a { display: flex; align-items: center; gap: 0.6rem; padding: 0.65rem 0; font-size: 0.92rem; text-decoration: none; color: var(--text-2); transition: color var(--ease), padding var(--ease); }
.sm-list a:hover { color: var(--blue); padding-left: 0.35rem; }
.sm-list a .sm-bullet { width: 6px; height: 6px; border-radius: 50%; background: var(--blue-light); flex-shrink: 0; transition: background var(--ease), transform var(--ease); }
.sm-list a:hover .sm-bullet { background: var(--blue); transform: scale(1.4); }
.sm-list a .sm-meta { margin-left: auto; font-size: 0.78rem; color: var(--text-muted); font-family: 'Outfit', sans-serif; font-weight: 500; }

.xml-callout { background: var(--navy); border-radius: var(--radius-lg); padding: 2rem; color: white; display: flex; gap: 1.5rem; align-items: center; flex-wrap: wrap; }
.xml-callout .xml-icon { width: 56px; height: 56px; border-radius: 12px; background: rgba(14,165,233,.15); color: var(--blue-light); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.xml-callout .xml-text { flex: 1; min-width: 260px; }
.xml-callout h3 { color: white; font-size: 1.15rem; margin-bottom: 0.35rem; }
.xml-callout p { color: rgba(255,255,255,.8); font-size: 0.93rem; line-height: 1.55; margin: 0; }
.xml-callout p code { background: rgba(255,255,255,.1); padding: 0.15rem 0.45rem; border-radius: 4px; font-family: 'JetBrains Mono', monospace; font-size: 0.85rem; }
