/* Sremske Nekretnine V2 - newsletter.css */
.sn-nl__row { display: flex; gap: var(--sn-space-2); flex-wrap: wrap; }
.sn-nl input[type=email] { flex: 1 1 220px; min-width: 0; height: 44px; padding: 0 var(--sn-space-3); border: var(--sn-border-width) solid var(--sn-border-color); border-radius: 10px; font: inherit; font-size: 16px; background: #fff; color: var(--sn-ink-900); }
.sn-nl .sn-btn { height: 44px; white-space: nowrap; }
.sn-nl__hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.sn-nl__note { margin: var(--sn-space-2) 0 0; font-size: var(--sn-text-xs); opacity: .75; }
.sn-nl__msg { margin: var(--sn-space-2) 0 0; font-size: var(--sn-text-sm); }
.sn-nl__msg[hidden] { display: none; }
.sn-nl__msg.is-ok { color: #9fe0b8; }
.sn-nl__msg.is-error { color: #ffb4a8; }
.sn-nl--card .sn-nl__msg.is-ok { color: var(--sn-primary-dark); }
.sn-nl--card .sn-nl__msg.is-error { color: var(--sn-danger); }
.sn-footer__newsletter { padding-block: var(--sn-space-5) var(--sn-space-4); }
.sn-footer__newsletter-inner { display: flex; justify-content: center; }
.sn-footer__newsletter-box { width: 100%; max-width: 640px; padding: var(--sn-space-4); border: 1px solid rgba(255,255,255,.18); border-radius: 14px; background: rgba(255,255,255,.04); text-align: center; display: flex; flex-direction: column; gap: var(--sn-space-3); align-items: center; }
.sn-footer__newsletter-text p { margin: 0; }
.sn-footer__newsletter .sn-nl { width: 100%; max-width: 480px; }
.sn-footer__newsletter .sn-nl__row { flex-wrap: nowrap; }
.sn-footer__newsletter .sn-nl__note { text-align: center; }
.sn-nl-card { margin: var(--sn-space-5) 0 0; padding: var(--sn-space-4); border: var(--sn-border-width) solid var(--sn-border-color); border-radius: 12px; background: var(--sn-ink-50); max-width: 560px; }
.sn-nl-card h2 { margin: 0 0 var(--sn-space-1); font-size: clamp(1.25rem, 1.05rem + 0.9vw, 1.6rem); }
.sn-nl-card p { margin: 0 0 var(--sn-space-3); color: var(--sn-ink-500); }
.sn-nl-card .sn-nl__note { color: var(--sn-ink-500); }
.sn-nl-notice { position: fixed; z-index: 9999; top: 12px; left: 50%; transform: translateX(-50%); max-width: calc(100% - 24px); display: flex; gap: var(--sn-space-3); align-items: center; padding: 12px 16px; border-radius: 10px; color: #fff; box-shadow: 0 6px 20px rgba(0,0,0,.25); font-size: var(--sn-text-sm); }
.sn-nl-notice--ok { background: var(--sn-primary-dark); }
.sn-nl-notice--err { background: #a33; }
.sn-nl-notice button { background: none; border: 0; color: inherit; font-size: 22px; line-height: 1; cursor: pointer; }
