/* Contacto (html-original/contacto.html). El marcado lleva los estilos inline del diseño;
   aquí van los estados del formulario (foco, casilla, botón) y el mapa. */

.dc-contacto__form input:focus,
.dc-contacto__form select:focus,
.dc-contacto__form textarea:focus { border-color: #2E7D5B !important; }
.dc-contacto__form input::placeholder,
.dc-contacto__form textarea::placeholder { color: #9AA29B; }

/* Casilla «He leído y acepto» con el aspecto del diseño (la real queda oculta encima). */
.dc-contacto__check { position: relative; display: inline-flex; flex: none; width: 22px; height: 22px; cursor: pointer; }
.dc-contacto__check input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.dc-contacto__box { width: 22px; height: 22px; display: flex; align-items: center; justify-content: center; border-radius: 5px; border: 1px solid #C4CAC5; background: #fff; pointer-events: none; transition: background .15s ease, border-color .15s ease; }
.dc-contacto__box svg { visibility: hidden; }
.dc-contacto__check input:checked + .dc-contacto__box { border-color: #2E7D5B; background: #2E7D5B; }
.dc-contacto__check input:checked + .dc-contacto__box svg { visibility: visible; }
.dc-contacto__check input:focus-visible + .dc-contacto__box { outline: 2px solid #7FC6A2; outline-offset: 2px; }

/* Botón «Enviar solicitud»: gris hasta aceptar las condiciones. */
.dc-contacto__send { cursor: default; background: #E6E8E5; color: #9AA29B; transition: background .15s ease; }
.dc-contacto__form.is-acepta .dc-contacto__send { cursor: pointer; background: #2E7D5B; color: #fff; }
.dc-contacto__form.is-acepta .dc-contacto__send:hover { background: #1E4A38; }

/* Mapa */
#dc-map-contacto { z-index: 0; }
#dc-map-contacto .leaflet-div-icon { background: transparent; border: 0; }
#dc-map-contacto .leaflet-control-attribution { font: 400 10.5px 'Source Sans 3', sans-serif; }
#dc-map-contacto .leaflet-bar a { color: #1A1F1C; }
