.protected-media{
  position:relative;
  display:block;
  width:100%;
  overflow:hidden;
  border-radius:inherit;
}

.protected-media picture,
.protected-media img{
  display:block;
  width:100%;
  height:auto;
  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;
}

.watermark-grid{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:1fr;
  align-items:center;
  justify-items:center;
  gap:12px;
  padding:18px;
  pointer-events:auto;
  background:linear-gradient(to bottom, rgba(0,0,0,.06), rgba(0,0,0,.10));
}

.watermark-grid span{
  transform:rotate(-24deg);
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  font-size:clamp(11px,1.1vw,18px);
  color:rgba(255,255,255,.34);
  text-shadow:0 1px 3px rgba(0,0,0,.55);
  white-space:nowrap;
}

.protected-media::after{
  content:"";
  position:absolute;
  inset:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
  pointer-events:none;
}


/* Conserva el recorte definido por cada componente al añadir la protección. */
.hero-media>.protected-media,.cardmedia>.protected-media{height:100%;border-radius:0}
.hero-media .protected-media picture,.hero-media .protected-media img,.cardmedia .protected-media picture,.cardmedia .protected-media img{height:100%}
.hero-media .protected-media img,.cardmedia .protected-media img{object-fit:cover}
.eventimage>.protected-media{width:100%}
.eventimage .protected-media picture,.eventimage .protected-media img{height:auto}


/* Marca visual como fondo: no añade texto repetido al árbol de accesibilidad. */
.watermark-grid{display:block;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='180' viewBox='0 0 360 180'%3E%3Ctext x='180' y='95' text-anchor='middle' transform='rotate(-24 180 90)' fill='white' fill-opacity='.30' font-family='Arial,sans-serif' font-size='16' font-weight='700' letter-spacing='1'%3ENICO%20FOTOGRAF%C3%8DA%20%C2%B7%20%40nicosfotografia%3C/text%3E%3C/svg%3E"),linear-gradient(to bottom,rgba(0,0,0,.06),rgba(0,0,0,.10));background-repeat:repeat,no-repeat;background-size:360px 180px,100% 100%}
.watermark-grid span{display:none!important}
