
/* The base .content-sections and .cta-button styles and their Customizer colors remain authoritative. */
.rp-404-content { min-height: 58vh; display:flex; align-items:center; }
.rp-404-content .rp-404-inner { width:100%; max-width:900px; margin-inline:auto; text-align:center; padding:60px 20px; }
.rp-404-image { margin:0 auto 34px; max-width:480px; }
.rp-404-image img { display:block; width:auto; height:auto; max-width:100%; max-height:360px; margin:auto; object-fit:contain; }
.rp-404-content h1 { margin:0 0 18px; }
.rp-404-body { max-width:660px; margin:0 auto; }
.rp-404-buttons { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:14px; margin-top:30px; }
.rp-404-buttons a.cta-button { display:inline-flex; justify-content:center; align-items:center; text-decoration:none; }
/* Customizer-driven secondary: transparent fill, Customizer's primary button color for border/text. */
body .rp-404-content .rp-404-buttons a.rp-404-secondary {
    background:transparent;
    color:var(--rp-404-secondary-color);
    border:2px solid var(--rp-404-secondary-color);
}
body .rp-404-content .rp-404-buttons a.rp-404-secondary:hover,
body .rp-404-content .rp-404-buttons a.rp-404-secondary:focus-visible {
    background:var(--rp-404-secondary-hover-bg);
    color:var(--rp-404-secondary-hover-color);
    border-color:var(--rp-404-secondary-hover-bg);
}
@media(max-width:600px) { .rp-404-content .rp-404-inner {padding:42px 12px;} .rp-404-image {max-width:300px;} }
