/* =========================================================
   SEMBLANZAS - Modal de perfil (Rene Quezada / Guillermo Gonzalez)
   Reutiliza la paleta de la app: --or, --or-d, --or-xl, --w, --g...
   ========================================================= */

.cn-link{
  background:none; border:none; padding:0; margin:0; font:inherit;
  color:inherit; cursor:pointer; text-decoration:none;
  border-bottom:1px dotted rgba(255,255,255,.55);
}
.cn-link:hover{ opacity:.85; }

.semb-overlay{
  position:fixed; inset:0; background:rgba(26,26,26,.55);
  display:none; align-items:center; justify-content:center;
  z-index:9100; padding:20px; opacity:0; transition:opacity .2s;
}
.semb-overlay.open{ display:flex; opacity:1; }

.semb-card{
  background:var(--w); width:100%; max-width:420px; border-radius:18px;
  max-height:88vh; overflow-y:auto; position:relative;
  box-shadow:0 12px 40px rgba(0,0,0,.3);
  transform:scale(.94); transition:transform .2s;
}
.semb-overlay.open .semb-card{ transform:scale(1); }

.semb-close{
  position:absolute; top:12px; right:12px; background:rgba(255,255,255,.9);
  border:none; border-radius:50%; width:30px; height:30px; font-size:14px;
  color:var(--g700); cursor:pointer; z-index:2;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
}

.semb-foto-wrap{
  width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:18px 18px 0 0;
  background:var(--or-xl);
}
.semb-foto-wrap img{ width:100%; height:100%; object-fit:cover; object-position:center center; }

.semb-body{ padding:20px 22px 24px; }
.semb-nombre{
  font-family:"Montserrat",sans-serif; font-weight:800; font-size:17px;
  color:var(--g900); margin-bottom:2px;
}
.semb-cargo{
  font-size:12.5px; font-weight:700; color:var(--or-d);
  text-transform:uppercase; letter-spacing:.5px; margin-bottom:14px;
}
.semb-bio p{
  font-size:13.5px; line-height:1.65; color:var(--g700); margin:0 0 10px;
}
.semb-bio p:last-child{ margin-bottom:0; }
