* { box-sizing: border-box; }
    html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
    body { margin: 0; background: #FAF8F5; color: #0E1014; font-family: 'Geist', system-ui, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
    ::selection { background: rgba(210,84,42,0.16); }
    [data-route-scroll] { scrollbar-width: none; -ms-overflow-style: none; }
    [data-route-scroll]::-webkit-scrollbar { width: 0; height: 0; display: none; }
    a { color: inherit; text-decoration: none; }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Estados hover/focus/active - generados desde los atributos style-* del diseno original.
   !important es necesario para prevalecer sobre los estilos inline del markup. */
.rp-x1:hover { color:#D2542A !important; }
.rp-x2:hover { color:#0E1014 !important; }
.rp-x3:hover { color:#0E1014 !important; }
.rp-x4:hover { color:#0E1014 !important; }
.rp-x5:hover { background-color:rgba(210,84,42,0.07) !important; border-color:rgba(210,84,42,0.4) !important; }
.rp-x5:focus-visible { outline:2px solid #D2542A !important; outline-offset:3px !important; }
.rp-x6:hover { color:#0E1014 !important; gap:13px !important; }
.rp-x6:focus-visible { outline:2px solid #D2542A !important; outline-offset:3px !important; }
.rp-x7:hover { color:#FAF8F5 !important; }
.rp-x7:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x8:hover { color:#C8C5BF !important; }
.rp-x8:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x9:hover { color:#C8C5BF !important; }
.rp-x9:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x10:focus-visible { outline:2px solid #E8845F !important; outline-offset:3px !important; }
.rp-x11:hover { color:#5A5754 !important; }
.rp-x11:focus-visible { outline:2px solid #E8845F !important; outline-offset:3px !important; }
.rp-x12:hover { color:#5A5754 !important; }
.rp-x12:focus-visible { outline:2px solid #E8845F !important; outline-offset:3px !important; }
.rp-x13:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x14:hover { color:#5A5754 !important; border-color:rgba(14,16,20,0.24) !important; }
.rp-x14:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x15:hover { color:#5A5754 !important; border-color:rgba(14,16,20,0.24) !important; }
.rp-x15:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x16:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x17:hover { color:#5A5754 !important; border-color:rgba(14,16,20,0.24) !important; }
.rp-x17:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x18:hover { color:#5A5754 !important; border-color:rgba(14,16,20,0.24) !important; }
.rp-x18:focus-visible { outline:2px solid #0E1014 !important; outline-offset:3px !important; }
.rp-x19:hover { background-color:#B8461E !important; }
.rp-x19:focus-visible { outline:2px solid #D2542A !important; outline-offset:4px !important; }
.rp-x20:hover { transform:translateY(-2px) !important; filter:drop-shadow(0 30px 56px rgba(0,0,0,0.7)) !important; }
.rp-x20:active { transform:translateY(0) scale(0.988) !important; filter:drop-shadow(0 16px 34px rgba(0,0,0,0.6)) !important; transition:transform 90ms cubic-bezier(0.2,0,0,1), filter 90ms cubic-bezier(0.2,0,0,1) !important; }
.rp-x21:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x22:hover { color:#B7A9A2 !important; }
.rp-x22:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x23:hover { color:#B7A9A2 !important; }
.rp-x23:focus-visible { outline:2px solid #E8845F !important; outline-offset:4px !important; }
.rp-x24:hover { background-color:#B8461E !important; }
.rp-x24:focus-visible { outline:2px solid #D2542A !important; outline-offset:4px !important; }
.rp-x25:hover { color:#0E1014 !important; }
.rp-x26:hover { color:#0E1014 !important; }
.rp-x27:hover { color:#0E1014 !important; }
.rp-x28:hover { color:#0E1014 !important; }
