body {
    background: var(--fondo);
}


h1 {
    color: var(--color_p) !important;
} 


#inicio {
    margin-bottom: 2rem;
}

/* CONTENIDO */
#contenido {
    position: relative;
    display: flex;
    flex-direction: row;
}

/* `TEXTO INICIO */
#texto_inicio {
    margin-left: 10rem;
    position: relative;
    z-index: 9999;
}

#texto_inicio h2 {
    color: white;
    margin-top: 4rem;
    font-size: 2.5rem;
}

#texto_inicio p {
    font-size: 2rem;
    color: #8e8e8e;
    margin-bottom: 1rem;
}

#form_contrasenas {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

#form_contrasenas #boton_formulario {
    cursor: pointer;
    width: 100%;
    border: var(--border);
    background: transparent;
    padding: 0.5rem;
    border-radius: 16px;
    color: var(--color_p);
}

#form_contrasenas #boton_formulario:hover {
    background: white;
    color: black;
}


#imagen_inicio {
	pointer-events: none;
	user-select: none;
	width: 100%;
	position: absolute;
}

#seccion {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    padding-top: 1rem;
}

.permiso {
    overflow: hidden;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    background: var(--background_div);
    border: var(--border);
    width: 100%;
    border-radius: 16px;
    height: 15rem;
}

.permiso h2 {
    color: white;
}

.permiso p {
    color: var(--color_p_dos);
}

.titulo_permiso {
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    padding: 2rem 2rem 4rem 2rem;
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 55%, rgba(0, 0, 0, 0) 100%);
    backdrop-filter: blur(50px);
}

.imagen_permiso {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* NORMATIVA */
h3 {
    font-weight: 300;
    font-size: 28px;
    color: var(--color_p_dos);
}

h3 b {
    font-weight: 600;
    color: var(--color_p);
}

#row_h3 {
    margin-top: 3rem;
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

#row_h3 h3 {
    margin-top: 0;
}

#row_h3 i {
    height: fit-content;
    font-size: 20px;
    width: fit-content;
    align-items: center;
    justify-content: center;
    display: flex;
    background: #fcc50770;
    color: orange;
    padding: 0.5rem;
    border-radius: 16px;
}

#aviso {
    margin-top: 1rem;
    padding: 2rem;
    background: var(--background_div);
    border: var(--border);
    border-radius: 16px;
    display: flex;
    flex-direction: row;
    gap: 1rem;
    color: var(--color_p);
}

#izquieda_aviso {
    gap: 1rem;
    flex-direction: column;
    display: flex;
    width: 50%;
}

#izquieda_aviso h4 {
    font-weight: 400;
    font-size: 28px;
}

#izquieda_aviso ul {
    list-style: none;
}

#derecha_aviso {
    padding: 1rem;
    border-radius: 10px;
    border: var(--border);
    background: var(--fondo);
    width: 50%;
}

#derecha_aviso h4 {
    display: flex;
    gap: 0.5rem;
}

#derecha_aviso p {
    margin-top: 1rem;
}

.detalle {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    align-items: center;
    display: flex;
    color: var(--corporativo);
    height: fit-content;
    font-family: 'IBM Plex Mono', monospace;
    text-decoration: none;
    position: relative;
    font-weight: 900;
    font-size: 16px;
}

/* CAJAS */
#row_seccion {
    gap: 1rem;
    display: flex;
    flex-direction: row;
}

#linea_dos {
    position: absolute;
    background: var(--corporativo_background);
    height: 2px;
    width: -webkit-fill-available;
}

.div_apartado h4 {
    font-size: 28px;
}

.div_apartado i {
    color: var(--corporativo);
    margin-bottom: 1rem;
    font-size: 32px;
    width: min-content;
    display: flex;
    justify-content: center;
    align-items: center;
}

.div_apartado .circulo {
    align-items: center;
    justify-content: center;
    display: flex;
    height: 1rem;
    width: 1rem;
    position: absolute;
    top: -3rem;
    padding: 0.5rem;
    border-radius: 99px;
    background: var(--corporativo_background);
    border: solid var(--corporativo) 1px;
    color: var(--corporativo);
}

.div_apartado {
    background: var(--background_div);
    color: var(--color_p);
    margin-top: 1rem;
    position: relative;
    padding: 2rem;
    border: var(--border);
    height: 20rem;
    border-radius: 16px;
}



        .contenedor {
            max-width: 1200px;
            margin: 0 auto;
            padding: 60px 20px;
        }

        /* --- SECCIÓN 1: CAMBIO DE NORMATIVA --- */
        .cabecera_normativa {
            text-align: center;
            margin-bottom: 50px;
        }

        .cabecera_normativa h1 {
            font-size: 32px;
            font-weight: 800;
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
        }

        .cabecera_normativa h1 span { color: #f97316; font-size: 24px; }

        .cabecera_normativa p {
            color: var(--color_p);
            max-width: 800px;
            margin: 0 auto;
        }

        .cuadricula_normativa {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 24px;
            margin-bottom: 40px;
        }

        .tarjeta_normativa {
            background: var(--background_div);
            border: var(--border);
            border-radius: 12px;
            padding: 24px;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
        }

        .tarjeta_roja { border-top: var(--border); }
        .tarjeta_azul { border-top: var(--border); }

        .tarjeta_normativa span { font-size: 11px; color: #94a3b8; font-weight: 600; }
        .tarjeta_normativa h3 { font-size: 18px; margin: 10px 0; font-weight: 700; }
        .tarjeta_normativa p { font-size: 14px; color: var(--color_p); }

        .que_se_usa {
            background-color: var(--background_div);
            border-radius: 16px;
            padding: 30px;
            display: flex;
            gap: 40px;
            align-items: center;
        }

        .que_se_usa_info h2 { font-size: 20px; margin-bottom: 15px; }
        .que_se_usa_info ul { list-style: none; }
        .que_se_usa_info li { 
            display: flex; 
            align-items: center; 
            gap: 10px; 
            font-size: 14px; 
            margin-bottom: 8px; 
        }

        .caja_marcado_clase {
            background: white;
            border: var(--border);
            border-radius: 12px;
            padding: 20px;
            flex: 1;
        }

        .caja_marcado_clase h4 { 
            font-size: 14px; 
            color: var(--corporativo); 
            display: flex; 
            align-items: center; 
            gap: 8px; 
            margin-bottom: 10px;
        }

        .caja_marcado_clase p { font-size: 13px; font-style: italic; color: var(--color_p); }

        /* --- SECCIÓN 2: DOCUMENTACIÓN NECESARIA --- */
        .titulo_documentos { text-align: center; margin-bottom: 60px; }
        .titulo_documentos h2 { font-size: 36px; font-weight: 800; margin-bottom: 10px; }
        .titulo_documentos p { color: var(--color_p); font-size: 15px; }

        .cuadricula_documentos {
            padding-bottom: 4rem;
            margin-top: 1rem;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
        }

        .tarjeta_documento {
            background: var(--background_div);
            border: var(--border);
            border-radius: 16px;
            display: flex;
            flex-direction: column;
            transition: all 0.3s ease;
        }

        .cuerpo_documento { padding: 24px; flex-grow: 1; }
        .icono_documento { font-size: 20px; margin-bottom: 15px; color: var(--color_p); }
        .etiqueta_documento {
            font-size: 20px;
            font-weight: 800;
            color: var(--color_p);
            margin-bottom: 5px;
            display: block; 
        }
        
        .nombre_documento { font-size: 16px; font-weight: 700; margin-bottom: 10px; line-height: 1.3; }
        .descripcion_documento { font-size: 16px; color: var(--color_p); margin-bottom: 20px; }

        .boton_saber_mas {
            width: 100%;
            background: none;
            border: none;
            border-top: var(--border);
            padding: 12px 0;
            font-size: 16px;
            font-weight: 700;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: var(--color_p);
        }

        .informacion_extra {
            color: var(--color_p);
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.4s ease;
            font-size: 16px;
        }

        .informacion_extra.activo { max-height: 500px; padding-top: 15px; }

        .etiqueta_azul {
            display: flex;
            gap: 0.5rem;
            background: #57bcff78;
            padding: 15px;
            border: 1px solid var(--corporativo);
            font-size: 16px;
            color: var(--color_p);
            border-radius: 0 0 16px 16px;
        }

        /* --- SECCIÓN 3: COMUNICACIÓN INTERIOR --- */
        .seccion_interior {
            display: flex;
            align-items: center;
            gap: 60px;
            padding: 50px 0;
        }

        .imagen_interior {
            flex: 1;
            border-radius: 24px;
            overflow: hidden;
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
        }

        .imagen_interior img { width: 100%; display: block; filter: grayscale(0.5); }

        .contenido_interior { flex: 1; color:var(--color_p); }
        .contenido_interior h2 { font-size: 28px; margin-bottom: 20px; }
        .contenido_interior p { font-size: 16px; color: var(--color_p); margin-bottom: 30px; }

        .item_interior {
            display: flex;
            gap: 15px;
            margin-bottom: 20px;
        }

        .icono_item {
            width: 32px;
            height: 32px;
            background: var(--corporativo);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        .texto_item h4 { font-size: 16px; font-weight: 700; }
        .texto_item p { font-size: 16px; margin: 0; }


        .contenedor_llamada_accion {
            padding: 4rem 0;
            width: 100%;
            display: flex;
            flex-direction: column;
            gap: 30px;
        }
        
        .titulo_llamada_accion { color: var(--color_p); font-size: 32px; font-weight: 800; max-width: 600px; line-height: 1.1; }
        .descripcion_llamada_accion { color: var(--color_p); max-width: 600px; font-size: 16px; }

        .cuadricula_caracteristicas {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 15px;
            max-width: 700px;
        }

        .caracteristica { color: var(--color_p); display: flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 600; }
        .icono_caracteristica { color: #10b981; }

        .botones_contenedor { display: flex; align-items: center; gap: 30px; margin-top: 20px; }
        .boton_principal {
            background-color: var(--corporativo);
            color: white;
            padding: 14px 28px;
            border-radius: 16px;
            text-decoration: none;
            font-weight: 700;
            font-size: 14px;
            display: flex;
            align-items: center;
            gap: 1rem;
        }

        .boton_enlace {
        
            background-color: #ffffff;
            padding: 14px 28px;
            border-radius: 16px;
            display: flex;
            align-items: center;
            gap: 10px;
            color: var(--acento);
            text-decoration: none;
            font-size: 14px;
            font-weight: 600;
                    
        }


/* RESPONSIVE */
@media (max-width: 800px) {
    #inicio {
        padding: 1rem;
    }
    
    #seccion {
        padding: 1rem;
        gap: 1rem;
        grid-template-columns: repeat(1, 1fr);
    }
    
    #row_seccion {
        flex-direction: column;
        padding: 1rem;
    }
    
    #row_h3 {
        padding: 1rem;
    }
    
    #configuracion {
        padding: 0 1rem 1rem 1rem;
    }
    
    .cuadricula_normativa, .cuadricula_documentos { padding: 1rem; grid-template-columns: 1fr; }
            .seccion_interior { padding: 1rem; flex-direction: column; }
            .que_se_usa { flex-direction: column; }
        
        
}