
/* ========================================
   PLAZA24 - ESTILOS BASE
   Identidad visual: crema, dorado y verde
======================================== */

/* VARIABLES GLOBALES */
:root {
    /* Paleta principal */
    --p24-crema: #F6F4F0;
    --p24-dorado: #A68C71;
    --p24-verde: #2D4632;

    /* Variantes de color */
    --p24-verde-dark: #203426;
    --p24-verde-light: #E8EDE8;
    --p24-dorado-light: #E9E0D6;

    /* Colores de interfaz */
    --p24-white: #FFFFFF;
    --p24-text: #2D4632;
    --p24-muted: #746E65;
    --p24-border: #E5DED4;
    --p24-light: #F6F4F0;

    /* Compatibilidad con los estilos anteriores */
    --p24-navy: #2D4632;
    --p24-navy-dark: #203426;
    --p24-blue: #2D4632;
    --p24-blue-dark: #203426;
    --p24-blue-light: #E8EDE8;

    /* Diseño */
    --p24-radius: 12px;
    --p24-container: 1200px;
    --p24-shadow: 0 12px 30px rgba(45, 70, 50, 0.08);
}

/* ========================================
   REINICIO Y MODELO DE CAJA
======================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

/* ========================================
   DOCUMENTO
======================================== */

html {
    scroll-behavior: smooth;
    scroll-padding-top: 90px;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    color: var(--p24-text);
    background: var(--p24-crema);
    font: 16px/1.6 Arial, Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ========================================
   ELEMENTOS GENERALES
======================================== */

img {
    display: block;
    max-width: 100%;
    height: auto;
}

button,
input,
select,
textarea {
    font: inherit;
}

button,
select {
    cursor: pointer;
}

button {
    color: inherit;
}

a {
    color: var(--p24-verde);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: var(--p24-dorado);
}

h1,
h2,
h3,
h4,
p {
    overflow-wrap: break-word;
}

/* Evitar desbordamientos */
.site-main,
main,
section,
article {
    min-width: 0;
}

/* ========================================
   CONTENEDORES
======================================== */

.container,
.p24-container {
    width: min(var(--p24-container), 92%);
    margin-inline: auto;
}

/* ========================================
   PÁGINA PRINCIPAL
======================================== */

.plaza24-home {
    width: 100%;
    color: var(--p24-text);
    background: var(--p24-crema);
    overflow: hidden;
}

.plaza24-home h1,
.plaza24-home h2,
.plaza24-home h3,
.plaza24-home p {
    font-family: inherit;
}

.plaza24-home h1,
.plaza24-home h2,
.plaza24-home h3 {
    color: var(--p24-verde);
}

/* ========================================
   FORMULARIOS
======================================== */

input,
select,
textarea {
    max-width: 100%;
    color: var(--p24-text);
    background: var(--p24-white);
    border: 1px solid var(--p24-border);
    border-radius: 8px;
}

input:focus,
select:focus,
textarea:focus {
    outline: 2px solid var(--p24-dorado);
    outline-offset: 2px;
}

/* ========================================
   SELECCIÓN DE TEXTO
======================================== */

::selection {
    color: var(--p24-white);
    background: var(--p24-verde);
}

/* ========================================
   ACCESIBILIDAD
======================================== */

:focus-visible {
    outline: 2px solid var(--p24-dorado);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ========================================
   RESPONSIVE GENERAL
======================================== */

@media (max-width: 600px) {
    html {
        scroll-padding-top: 70px;
    }

    body {
        font-size: 15px;
    }

    .container,
    .p24-container {
        width: 92%;
    }
}
