/* ==========================================================================
   CM Realty — Design tokens
   Paleta obligatoria: #fd6818 (naranja) + #01172d (navy) + blancos/grises/negro.
   Tipografía: Poppins (titulares, sans-serif geométrica y gruesa, igual al
   demo Homirx) + Inter (texto/UI), vía Google Fonts.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root {
    /* --- Marca --- */
    --cm-navy-900: #01172d;   /* base de marca — fondos oscuros, header, footer */
    --cm-navy-800: #072238;
    --cm-navy-700: #0f2f47;
    --cm-navy-600: #1a3f5c;

    --cm-orange-600: #e05a10; /* hover/active del naranja de marca */
    --cm-orange-500: #fd6818; /* base de marca — CTAs, acentos, badges */
    --cm-orange-400: #ff8a4d;
    --cm-orange-100: #ffe4d2; /* fondos suaves de acento (badges, chips) */

    /* --- Neutros --- */
    --cm-white: #ffffff;
    --cm-gray-50:  #f7f8f9;
    --cm-gray-100: #eef0f2;
    --cm-gray-200: #dde1e6;
    --cm-gray-300: #c3c9d1;
    --cm-gray-400: #9aa3ad;
    --cm-gray-500: #707a86;
    --cm-gray-600: #4f5860;
    --cm-gray-700: #363d44;
    --cm-gray-800: #23282d;
    --cm-black: #0b0d0f;

    /* --- Estados de propiedad (independientes del acento de marca) --- */
    --cm-estado-disponible: #1f9d55;
    --cm-estado-vendido: #b3261e;
    --cm-estado-reservado: #b8860b;

    /* --- Semántico --- */
    --color-bg: var(--cm-white);
    --color-bg-alt: var(--cm-gray-50);
    --color-bg-dark: var(--cm-navy-900);
    --color-text: var(--cm-navy-900);
    --color-text-muted: var(--cm-gray-600);
    --color-text-inverso: var(--cm-white);
    --color-border: var(--cm-gray-200);
    --color-accent: var(--cm-orange-500);
    --color-accent-hover: var(--cm-orange-600);
    --color-focus: #1a73e8; /* foco de teclado, deliberadamente distinto al acento */

    /* --- Tipografía --- */
    --font-titulos: 'Poppins', 'Inter', -apple-system, sans-serif;
    --font-texto: 'Inter', -apple-system, Segoe UI, Roboto, sans-serif;
    --fs-base: 1rem;
    --lh-texto: 1.65;
    --lh-titulos: 1.2;

    /* --- Espaciado (escala de 4px) --- */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-8: 3rem;
    --space-10: 4rem;
    --space-12: 6rem;

    /* --- Radios y sombras --- */
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --radius-full: 999px;

    --shadow-sm: 0 1px 2px rgba(1, 23, 45, 0.06);
    --shadow-md: 0 8px 24px rgba(1, 23, 45, 0.10);
    --shadow-lg: 0 20px 48px rgba(1, 23, 45, 0.16);

    /* --- Transiciones --- */
    --duration-fast: 150ms;
    --duration-base: 250ms;
    --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);

    /* --- Escala z-index (evita conflictos entre header/lightbox/modales) --- */
    --z-dropdown: 10;
    --z-header: 20;
    --z-overlay: 30;
    --z-lightbox: 40;
    --z-modal: 50;

    /* --- Contenedor --- */
    --container-max: 1240px;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
