:root{
--azul:#143a6d;
--oro:#B8840F;
--blanco:#ffffff;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html, body{
min-height:100vh;
}

body {
  font-family:'Open Sans', sans-serif;
  background:#f5f5f5;
  padding:40px 20px;
  display:flex;
  justify-content:center; 
  align-items:center;   
  min-height:100vh;
}


.contenedor-formulario{
background:var(--blanco);
padding:40px;
border-radius:8px;
width:100%;
max-width:600px;
box-shadow:0 10px 30px rgba(0,0,0,0.1);

}
.btn-volver{
display:inline-block;
margin-bottom:20px;
color:#143a6d;
text-decoration:none;
font-weight:600;
transition:0.3s;

}

.btn-volver:hover{
color:#B8840F;
text-decoration:underline;

}

h2{
font-size: 2.2rem;
 margin-bottom: 20px;
text-align: center;
color:var(--azul);
}

.contenedor-formulario h2::after {
    content: "";
    width: 10%; 
    height: 4px;
    background-color: #B8840F;
    display: block;
    margin: 10px auto 0; 
}

.grupo-form{
margin-bottom:20px;
display:flex;
flex-direction:column;
}

label{
color:var(--azul);
}

input,
textarea{
padding:12px;
border:2px solid #ddd;
border-radius:5px;
font-size:14px;
transition:0.3s;
}

textarea{
resize:none;
height:120px;
}

input:focus,
textarea:focus{
border-color:var(--oro);
outline:none;
}
.aviso-simplificado {
    background-color: #f9f9f9; 
    border-left: 4px solid var(--oro-corp);
    padding: 15px;
    margin: 20px 0;
    font-size: 0.9rem; 
    color: #555;
    line-height: 1.5;
}

/* Estilo del enlace legal */
.aviso-simplificado a {
    color: var(--azul-corp);
    font-weight: bold;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.aviso-simplificado a:hover {
    color: var(--oro-corp);
}

button{
background:var(--azul);
color:var(--blanco);
border:none;
padding:14px;
font-size:16px;
cursor:pointer;
border-radius:5px;
transition:0.3s;
width:100%;
}

button:hover{
background:var(--oro);
}

.error{
color:red;
font-size:12px;
margin-top:4px;
}

/* responsive */

@media (max-width:768px){

.contenedor-formulario{
padding:30px;
}

}

@media (max-width:480px){

.contenedor-formulario{
padding:20px;
}

h2{
font-size:22px;
}

}