.contacto-section { background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url("../medios/image/tarima.png") center/cover no-repeat; padding: 220px 0 60px 0;  color: #f2f2f2;}
.contacto-info { max-width: 850px; margin: -80px auto 0; padding: 0; text-align: center; flex: 1; min-width: 300px;}
.contacto-info h2 { font-size: 2.4rem; color: var(--dorado); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 20px;}
.contacto-info p { font-size: 1.1rem; line-height: 1.5; color: #ffffff; font-weight: 600; margin-bottom: 18px;}
.contacto-datos { margin-top: 20px;}
.contacto-datos p { margin: 6px 0; font-size: 0.9rem; color: #ffffff; font-weight: 600; margin-top: 10px; text-align: left;}
.contacto-datos strong { color: var(--dorado);}
.contacto-wrapper { max-width: 1100px; margin: auto; display: flex; gap: 60px; flex-wrap: wrap;}
.contacto-info h2 { color: #c9a86a; font-size: 32px; margin-bottom: 20px;}
.contacto-info p { line-height: 1.7; opacity: 0.85;}
.contacto-datos p { margin: 8px 0;}
.contacto-formulario { flex: 1; min-width: 300px;}
.contacto-formulario input, .contacto-formulario textarea { width: 100%; padding: 12px; margin-bottom: 15px; border-radius: 6px; border: none; background: #1a1a1a; color: #f2f2f2;}
.contacto-formulario textarea { height: 140px; resize: none;}
.btn-contacto { padding: 12px 25px; background: #c9a86a; color: #1a1a1a; border: none; font-weight: bold; cursor: pointer; border-radius: 6px; transition: 0.3s;}
.btn-contacto:hover { background: #d8b77a;}
.btn-contacto:disabled { opacity: 0.4; cursor: not-allowed;}
.contacto-mensaje { margin-top: 15px; text-align: center; opacity: 0; transition: opacity 0.5s;}
.contacto-label { display: block; margin-bottom: 6px; color: #c9a86a; font-weight: bold; font-size: 14px;}
.contacto-formulario input, .contacto-formulario textarea { border: 1px solid #c9a86a; }
.contacto-formulario input:focus, .contacto-formulario textarea:focus { outline: none; border-color: #e3c58a; box-shadow: 0 0 8px rgba(201, 168, 106, 0.4);}
.contacto-terminos { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 20px;}
.contacto-terminos input[type="checkbox"] { width: 18px; height: 18px; cursor: pointer; accent-color: #c9a86a;}
.contacto-terminos label { color: #c9a86a; cursor: pointer; font-size: 14px; line-height: 1.4; user-select: none; margin-top: 1px; }
.contacto-terminos input[type="checkbox"] { width: 18px; height: 18px; cursor: pointer; accent-color: #c9a86a; border-radius: 3px;}
.contacto-terminos a { color: #c9a86a; text-decoration: underline; font-weight: bold;}
.contacto-terminos a:hover { color: #e3c58a;}
.icono-contacto { width: 40px; height: 40px; vertical-align: middle; margin-right: 0px;}

@media (max-width: 768px) {
  .contacto-formulario input, .contacto-formulario textarea, .btn-contacto { width: 90%; margin-left: auto; margin-right: auto; display: block; }
   .contacto-formulario label { width: 90%; margin-left: auto; margin-right: auto; display: block; text-align: left; }
}

@media (max-width: 480px) {
  .contacto-formulario input, .contacto-formulario textarea, .contacto-formulario label, .btn-contacto { width: 85%; }
}