/* Public utility pages share the main site's typography and spacing. */
.rp-site .mobile-menu-btn .menu-icon { display: block; position: relative; width: 22px; height: 16px; margin: auto; border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.rp-site .mobile-menu-btn .menu-icon::after { content: ""; position: absolute; top: 5px; left: 0; width: 100%; border-top: 2px solid currentColor; }
.rp-site.rp-not-found { min-height: 100dvh; display: flex; flex-direction: column; background: #111514 !important; }
.rp-site.rp-not-found .not-found-main { flex: 1; }
.rp-site .not-found-hero { min-height: 0; padding-block: 80px; }
.rp-site .not-found-main { min-height: 0; }
.rp-site .not-found-layout { display: grid; grid-template-columns: .35fr 1fr; gap: 64px; align-items: start; }
.rp-site .not-found-code { font: 400 clamp(80px, 12vw, 160px)/1 Georgia, serif; color: #a7e5cb; margin: 0; }
.rp-site .not-found-layout .hero-content { max-width: none; }
.rp-site .not-found-layout h1 { margin-top: 0; }
.rp-site .not-found-note { margin: 18px 0 0; }
.rp-site .not-found-actions { justify-content: flex-start; gap: 12px; margin-top: 28px; }
.rp-site .sitemap-content { padding-block: 48px 64px; }
.rp-site .sitemap-section { padding: 32px 0; border-bottom: 1px solid #c4d2c1; }
.rp-site .sitemap-section h2 { margin: 0 0 20px; font-size: 28px; }
.rp-site .sitemap-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; list-style: none; padding: 0; margin: 0; }
.rp-site .sitemap-links li { padding: 12px 0; border-top: 1px solid #d1dacd; }
.rp-site .sitemap-links a { color: #286747; font-size: 16px; line-height: 1.65; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.rp-site .sitemap-section .sitemap-count { font: 14px/1.5 var(--design-mono); color: #4f6256; margin-left: 12px; }
@media (max-width: 768px) {
    .rp-site .not-found-hero { padding-block: 44px 52px; }
    .rp-site .not-found-layout { grid-template-columns: 1fr; gap: 26px; }
    .rp-site .not-found-code { font-size: 88px; }
    .rp-site .sitemap-links { grid-template-columns: 1fr; }
    .rp-site .sitemap-content { padding-block: 20px 40px; }
}
