/* =============================================================================
   FOOTER-NEWSLETTER.CSS — pruh s odběrem novinek nad sloupci patičky
   Šablona: includes/layout/footer.php, odeslání: js/footer-newsletter.js
   ========================================================================== */
.footer-nl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--sp-8, 2rem);
    padding: 1.6rem 1.9rem;
    margin: 0 0 var(--sp-10, 2.5rem);
    border-radius: 16px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .09);
}
.footer-nl-copy b { display: block; color: #fff; font-size: 1.125rem; margin-bottom: .25rem; font-family: var(--font-head, inherit); }
.footer-nl-copy span { color: #AFC0D2; font-size: .875rem; line-height: 1.5; }
.footer-nl-form { flex: 0 1 440px; min-width: 0; }
.footer-nl-row { display: flex; gap: .5rem; }
.footer-nl-row input {
    flex: 1; min-width: 0; padding: .75rem .9rem; border-radius: 11px; font: inherit; font-size: .95rem;
    background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18); color: #fff;
}
.footer-nl-row input::placeholder { color: #8EA3B8; }
.footer-nl-row input:focus { outline: none; border-color: var(--c-blue-500, #25A9EA); box-shadow: 0 0 0 3px rgba(37, 169, 234, .25); }
.footer-nl-row button {
    flex: none; padding: .75rem 1.15rem; border-radius: 11px; border: 0; cursor: pointer;
    background: var(--c-blue-500, #25A9EA); color: #fff; font: inherit; font-weight: 700; font-size: .95rem;
    transition: background-color .15s;
}
.footer-nl-row button:hover { background: #1593D3; }
.footer-nl-row button:disabled { opacity: .6; cursor: default; }
.footer-nl-msg { margin: .5rem 0 0; font-size: .75rem; color: #8EA3B8; }
.footer-nl-msg.is-ok { color: #7FD8A6; font-weight: 600; font-size: .85rem; }
.footer-nl-msg.is-err { color: #F4A3AE; font-weight: 600; font-size: .85rem; }
.footer-nl-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 860px) {
    .footer-nl { flex-direction: column; align-items: stretch; gap: 1rem; padding: 1.25rem; }
    .footer-nl-form { flex: none; }
}
@media (max-width: 420px) { .footer-nl-row { flex-direction: column; } }
.footer-nl-row[hidden] { display: none; }
