/* ============================================================
   NexoFlow — Modal de portfólio ALB Seven
   ============================================================ */

.pm-overlay{
  position:fixed;inset:0;z-index:9999;
  background:rgba(10,15,35,.82);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;
  opacity:0;visibility:hidden;
  transition:opacity .3s ease,visibility .3s ease;
}
.pm-overlay.pm-visible{opacity:1;visibility:visible}

.pm-card{
  background:#fff;border-radius:18px;max-width:440px;width:100%;
  overflow:hidden;box-shadow:0 40px 100px -20px rgba(0,0,0,.6);
  transform:translateY(20px) scale(.96);
  transition:transform .38s cubic-bezier(.2,.7,.3,1);
}
.pm-overlay.pm-visible .pm-card{transform:none}

/* Cabeçalho escuro */
.pm-header{
  background:#0f1830;padding:30px 28px 22px;
  text-align:center;
}
.pm-header-logo{
  height:38px;width:auto;display:block;margin:0 auto 14px;
  filter:brightness(0) invert(1);
}
.pm-subtitle{
  font-family:var(--font-head,'Plus Jakarta Sans'),sans-serif;
  font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.65);margin:0; /* era .45 — WCAG AA */
}

/* Corpo */
.pm-body{
  padding:26px 28px 20px;
  border-bottom:1px solid #eef2f7;text-align:center;
}
.pm-body p{
  font-size:15px;line-height:1.65;color:var(--ink-soft,#475569);margin:0 0 18px;
}
.pm-body p strong{color:var(--ink,#1e293b)}
.pm-links{
  display:flex;align-items:center;justify-content:center;gap:10px;
  font-size:13.5px;font-weight:600;
  font-family:var(--font-head,'Plus Jakarta Sans'),sans-serif;
}
.pm-links a{color:var(--blue,#1E3A8A);text-decoration:none;transition:opacity .15s}
.pm-links a:hover{opacity:.7}
.pm-links-sep{color:#cbd5e1;font-weight:300}

/* Botões */
.pm-actions{padding:20px 28px 26px;display:flex;flex-direction:column;gap:10px}
.pm-btn{
  display:flex;align-items:center;justify-content:center;
  padding:15px 20px;border-radius:10px;
  font-family:var(--font-head,'Plus Jakarta Sans'),sans-serif;
  font-weight:700;font-size:13px;letter-spacing:.07em;text-transform:uppercase;
  cursor:pointer;text-decoration:none;border:1.5px solid transparent;
  transition:transform .15s,box-shadow .15s,background .15s;
}
.pm-btn:hover{transform:translateY(-1px)}
.pm-btn-primary{background:#0f1830;color:#fff;border-color:#0f1830}
.pm-btn-primary:hover{background:#1a2847;box-shadow:0 8px 24px -8px rgba(15,24,48,.5)}
.pm-btn-outline{background:#fff;color:#1e293b;border-color:#e2e8f0}
.pm-btn-outline:hover{border-color:#94a3b8;background:#f8fafc}
