.pm-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 16px;
}

.pm-title{
  text-align:center;
  font-weight: 800;
  letter-spacing: 1px;
  text-decoration: underline;
  margin: 0 0 40px;
}

.pm-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
  gap: 64px 80px;
  align-items:start;
}

@media (max-width: 900px){
  .pm-grid{ grid-template-columns: 1fr; gap: 48px; }
}

.pm-card{
  text-align:center;
}

.pm-clickzone{
  display:block;
  color: inherit;
  text-decoration:none;
}

.pm-avatar-wrap{
  width: 160px;
  height: 160px;
  margin: 0 auto 14px;
  border-radius: 50%;
  overflow: hidden;          /* <-- CLAVE: recorta */
  position: relative;
}

.pm-avatar{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.pm-avatar--placeholder{
  display:block;
}

.pm-name{
  font-size: 18px;
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.pm-lines{
  color:#9a9a9a;
  font-weight:600;
  line-height:1.6;
}

.pm-icons{
  margin-top: 16px;
  display:flex;
  gap: 14px;
  justify-content:center;
}

.pm-ico{
  width: 40px;
  height: 40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border:1px solid #e6e6e6;
  border-radius: 6px;
  color:#666;
  background:#fafafa;
  font-size: 16px;
  cursor: pointer;
  transition: 
    color 0.25s ease,
    background-color 0.25s ease,
    border-color 0.25s ease,
    transform 0.2s ease;
}

.pm-ico:hover{
  color: #1e73ff;                 /* azul corporativo */
  background-color: #eef4ff;
  border-color: #1e73ff;
  transform: translateY(-2px);    /* micro-elevación */
}

.pm-ico:focus{
  outline: none;
  box-shadow: 0 0 0 2px rgba(30,115,255,.25);
}
.pm-divider{
  width: 180px;
  height: 2px;
  background: #1e73ff;
  margin: 18px auto 0;
}

.pm-historico{
  max-width: 650px;
  margin: 0 auto;
  padding: 0;
  list-style: disc;
  list-style-position: inside;
}

.pm-historico-item{
  padding: 10px 0;
  border-bottom: 1px solid #e9e9e9;
}

.pm-historico-item:last-child{
  border-bottom: 0;
}

.pm-historico-years{
  font-weight: 700;
}

.pm-historico-link{
  color: inherit;
  text-decoration: none;
}

.pm-historico-link:hover{
  text-decoration: underline;
}
/* Evita que algún estilo del tema “flote” o posicione el contenido raro */
.pm-card, .pm-clickzone, .pm-avatar-wrap, .pm-name{
  position: static;
}

.pm-clickzone{
  display: block !important;
  float: none !important;
  clear: both;
}

/* Reserva espacio fijo arriba: aunque el tema haga cosas raras, el texto nunca sube */
.pm-card{
  padding-top: 1px; /* fuerza un flujo estable */
}

/* Asegura separación real entre foto y nombre */
.pm-name{
  margin-top: 10px;
}