/* Blok: newsletter / nws-01 — Klasik CTA */
.blok-nws-01 { padding: 56px 0; background: var(--tema-bg); }
.nws-01-wrap { max-width: var(--blok-container-max); margin: 0 auto; padding: 0 16px; }
.nws-01-card {
    background: linear-gradient(135deg,
        var(--tema-primary),
        color-mix(in srgb, var(--tema-primary) 70%, var(--tema-text)));
    color: var(--tema-primary-text);
    border-radius: 22px; padding: 48px 36px;
    display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: center;
    box-shadow: 0 20px 50px color-mix(in srgb, var(--tema-primary) 25%, transparent);
}
.nws-01-text { display: flex; flex-direction: column; gap: 10px; }
.nws-01-title {
    margin: 0; font-family: var(--font-heading);
    font-size: var(--text-h2); font-weight: var(--font-weight-heading);
    color: var(--tema-primary-text); letter-spacing: -0.02em;
}
.nws-01-sub {
    margin: 0; font-family: var(--font-body);
    font-size: calc(var(--text-body) * 1.05); line-height: 1.55;
    color: color-mix(in srgb, var(--tema-primary-text) 90%, transparent);
}

.nws-01-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.nws-01-field { flex: 1; min-width: 200px; }
.nws-01-field input {
    width: 100%; padding: 14px 18px;
    background: var(--tema-primary-text); color: var(--tema-text);
    border: 0; border-radius: 99px;
    font: inherit; font-family: var(--font-body); font-size: var(--text-body);
}
.nws-01-field input:focus { outline: 2px solid var(--tema-accent); outline-offset: 2px; }
.nws-01-btn {
    padding: 14px 28px; border: 0; border-radius: 99px;
    background: var(--tema-text); color: var(--tema-primary-text);
    font: inherit; font-family: var(--font-body); font-weight: 700;
    font-size: var(--text-body); cursor: pointer;
    transition: transform .15s, background .15s;
}
.nws-01-btn:hover:not([disabled]) { transform: translateY(-1px); background: color-mix(in srgb, var(--tema-text) 80%, var(--tema-primary)); }
.nws-01-btn:active { transform: translateY(0) scale(.98); }
.nws-01-btn[disabled] { opacity: .6; cursor: not-allowed; }
.nws-01-mini {
    flex-basis: 100%;
    font-family: var(--font-body); font-size: var(--text-small);
    color: var(--tema-primary-text);
    min-height: 18px;
}

@media (max-width: 768px) {
    .blok-nws-01 { padding: 36px 0; }
    .nws-01-card { grid-template-columns: 1fr; padding: 32px 22px; gap: 22px; }
    .nws-01-title { font-size: calc(var(--text-h2) * 0.75); }
    .nws-01-btn { padding: 12px 22px; }
}
