/* Piezas propias de la versión estática (mapa diferido y avisos del formulario). */
/* Caja del mapa de Contacto. El tema la copia en una capa fija con parallax (.covers), más
   alta que la cabecera: el contenido va centrado en la parte de arriba, que es la que se ve. */
.hero__bg-map {
  background-color: #ecebe8;
  background-image: linear-gradient(rgba(0,0,0,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.035) 1px, transparent 1px);
  background-size: 48px 48px;
}
.mapa-diferido {
  position: absolute; top: 0; left: 0; right: 0; bottom: 25%; display: flex;
  flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  color: #333; text-align: center; cursor: pointer;
}
.mapa-diferido.mapa-cargado, .touch .mapa-diferido { bottom: 0; }
.mapa-diferido.mapa-cargado { cursor: auto; }
.mapa-diferido-boton {
  padding: 14px 28px; border: 0; background: #222; color: #fff; cursor: pointer;
  font: inherit; letter-spacing: .12em; text-transform: uppercase; font-size: 13px;
}
.mapa-diferido-boton:hover, .mapa-diferido-boton:focus-visible { background: #000; }
.mapa-diferido-boton:focus-visible { outline: 3px solid #222; outline-offset: 3px; }
.mapa-diferido-nota { font-size: 12px; opacity: .7; }
.mapa-diferido-sitios { display: flex; gap: 18px; flex-wrap: wrap; justify-content: center; }
.mapa-diferido-sitios a {
  color: #333; font-size: 13px; letter-spacing: .12em; text-transform: uppercase;
  background: #fff; padding: 8px 22px; border-radius: 20px; text-decoration: none;
  box-shadow: 0 1px 4px rgba(0,0,0,.12);
}
.mapa-diferido-sitios a:hover, .mapa-diferido-sitios a:focus-visible { text-decoration: underline; }
form[data-estatico] .wpcf7-not-valid { border-color: #dc3232 !important; }
form[data-estatico] input[type=checkbox].wpcf7-not-valid { outline: 2px solid #dc3232; }
/* Vídeos de Vimeo diferidos */
.video-diferido { overflow: hidden; margin: 0 0 1.5em; }
.video-diferido-boton {
  position: absolute; inset: 0; width: 100%; height: 100%; border: 0; cursor: pointer;
  background: rgba(0, 0, 0, .15);
}
.video-diferido-boton::before {
  content: ""; position: absolute; left: 50%; top: 50%; width: 72px; height: 44px;
  margin: -22px 0 0 -36px; border-radius: 6px; background: rgba(23, 35, 34, .85);
  transition: background .2s;
}
.video-diferido-boton:hover::before, .video-diferido-boton:focus-visible::before { background: #00adef; }
.video-diferido-boton::after {
  content: ""; position: absolute; left: 50%; top: 50%; margin: -10px 0 0 -6px;
  border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff;
}
.video-diferido-boton:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
