/* Popup newsletter all'uscita (newsletter-popup.php) */
.jc-nlp { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 16px; opacity: 0; transition: opacity .2s ease; }
.jc-nlp[hidden] { display: none; }
.jc-nlp.is-visible { opacity: 1; }
.jc-nlp-backdrop { position: absolute; inset: 0; background: rgba(30, 20, 25, .55); }
.jc-nlp-box { position: relative; width: 100%; max-width: 440px; max-height: calc(100vh - 32px); overflow-y: auto; background: #fff; border-radius: 18px; padding: 34px 28px 24px; box-shadow: 0 18px 50px rgba(0, 0, 0, .22); text-align: center; color: #2f2f2f; transform: translateY(12px); transition: transform .2s ease; font-family: inherit; }
.jc-nlp.is-visible .jc-nlp-box { transform: none; }
html.jc-nlp-open { overflow: hidden; }

.jc-nlp-x { position: absolute; top: 8px; right: 10px; width: 36px; height: 36px; border: 0; background: transparent; font-size: 28px; line-height: 1; color: #999; cursor: pointer; border-radius: 50%; padding: 0; }
.jc-nlp-x:hover { color: #333; background: #f5f5f5; }

.jc-nlp-badge { display: inline-block; margin-bottom: 10px; padding: 6px 16px; border-radius: 999px; background: linear-gradient(135deg, #d4637a, #e8799a); color: #fff; font-weight: 800; font-size: 20px; letter-spacing: 1px; }
.jc-nlp-icon { font-size: 44px; margin-bottom: 6px; }
.jc-nlp h2 { margin: 0 0 10px; font-size: 21px; line-height: 1.3; font-weight: 800; color: #2f2f2f; }
.jc-nlp-lead { margin: 0 0 18px; font-size: 14px; line-height: 1.6; color: #555; }

.jc-nlp-form { display: flex; flex-direction: column; gap: 10px; text-align: left; }
.jc-nlp-form input[type="text"], .jc-nlp-form input[type="email"] { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #ddd; border-radius: 10px; font-size: 15px; }
.jc-nlp-form input[type="text"]:focus, .jc-nlp-form input[type="email"]:focus { outline: none; border-color: #d4637a; box-shadow: 0 0 0 3px rgba(212, 99, 122, .15); }
.jc-nlp-form .jc-nlp-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.jc-nlp-privacy { display: flex; align-items: flex-start; gap: 8px; font-size: 12px; line-height: 1.5; color: #666; cursor: pointer; }
.jc-nlp-privacy input { margin-top: 3px; flex-shrink: 0; width: 15px; height: 15px; accent-color: #d4637a; }
.jc-nlp-privacy a { color: #d4637a; }
.jc-nlp-msg { margin: 0; min-height: 0; font-size: 13px; color: #c0392b; }
.jc-nlp-msg:empty { display: none; }

.jc-nlp-btn { width: 100%; margin-top: 4px; padding: 13px 20px; border: 0; border-radius: 12px; background: linear-gradient(135deg, #d4637a, #e8799a); color: #fff; font-weight: 700; font-size: 16px; cursor: pointer; }
.jc-nlp-btn:hover { filter: brightness(1.05); }
.jc-nlp-btn:disabled { opacity: .7; cursor: wait; }
.jc-nlp-small { margin: 14px 0 0; font-size: 11px; line-height: 1.5; color: #999; }

@media (max-width: 480px) {
    .jc-nlp-box { padding: 30px 20px 20px; }
    .jc-nlp h2 { font-size: 19px; }
}
