/* =====================================================================
   WIENINGER · Newsletter-Band  —  wgn-newsletter.css
   Sanfte Conversion: Kicker + Titel + Text + E-Mail-Formular + Opt-in-Hinweis.
   Tokens + Buttons aus wgn-ui.css. rem/em/%/clamp · Safari-/iOS-gehärtet.
   ===================================================================== */

.wgn-nl {
	background: var(--wgn-cream);
	padding: clamp(3.5rem, 8vw, 6rem) var(--wgn-pad-x);
	text-align: center; font-family: var(--wgn-sans); color: var(--wgn-ink);
	-webkit-text-size-adjust: 100%; text-size-adjust: 100%;
}
.wgn-nl * { box-sizing: border-box; }
.wgn-nl--dark { background: var(--wgn-dark); color: #EDE7DE; }

.wgn-nl__inner { max-width: 42rem; margin-inline: auto; }
.wgn-nl__kicker { margin: 0 0 1rem; color: var(--wgn-red); font-size: .78rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.wgn-nl__title { margin: 0 0 1rem; font-family: var(--wgn-serif); font-weight: 500; letter-spacing: -.02em; line-height: 1.15; font-size: clamp(1.8rem, 4vw, 2.75rem); color: inherit; }
.wgn-nl__text { margin: 0 0 2rem; font-size: 1.05rem; line-height: 1.6; color: var(--wgn-ink-soft); }
.wgn-nl--dark .wgn-nl__text { color: rgba(237,231,222,.82); }

.wgn-nl__form { display: flex; gap: .6rem; max-width: 30rem; margin: 0 auto; }
.wgn-nl__input {
	flex: 1 1 auto; min-width: 0;
	font-family: inherit; font-size: 1rem;            /* >=16px: kein iOS-Zoom */
	padding: .85rem 1.1rem; border-radius: .25rem; line-height: 1.2;
	border: 1px solid var(--wgn-line); background: var(--wgn-paper); color: var(--wgn-ink);
	-webkit-appearance: none; appearance: none;
	transition: border-color .2s, box-shadow .2s;
}
.wgn-nl__input::placeholder { color: var(--wgn-ink-soft); }
.wgn-nl__input:focus { outline: none; border-color: var(--wgn-red); box-shadow: 0 0 0 2px rgba(70,70,45,.18); }
.wgn-nl--dark .wgn-nl__input { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.2); color: #fff; }
.wgn-nl--dark .wgn-nl__input::placeholder { color: rgba(255,255,255,.6); }
/* <button> wird sonst von Elementor-Kit-Globalstyles ueberstylt -> scoped re-deklarieren */
.wgn-nl__form .wgn-btn {
	flex: 0 0 auto;
	font-family: var(--wgn-sans); font-weight: 600; font-size: .82rem; line-height: 1.1;
	letter-spacing: .1em; text-transform: uppercase;
	padding: .95em 1.9em; border-radius: .2rem; border: 1.5px solid var(--wgn-red);
	background: var(--wgn-red); color: #fff;
}
.wgn-nl__form .wgn-btn:hover { background: var(--wgn-red-hover); border-color: var(--wgn-red-hover); color: #fff; }

/* ---- DSGVO-Einwilligung (Checkbox, Pflicht vor Absenden) ---- */
.wgn-nl__consent {
	display: flex; align-items: flex-start; gap: .55rem;
	max-width: 30rem; margin: .9rem auto 0; text-align: left;
	font-size: .82rem; line-height: 1.5; color: var(--wgn-ink-soft); cursor: pointer;
}
.wgn-nl__consent input[type=checkbox] {
	flex: 0 0 auto; width: 1.05rem; height: 1.05rem; margin: .15rem 0 0;
	accent-color: var(--wgn-red); cursor: pointer;
}
.wgn-nl__consent a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.wgn-nl--dark .wgn-nl__consent { color: rgba(237,231,222,.75); }

.wgn-nl__note { margin: 1rem auto 0; max-width: 36rem; font-size: .78rem; line-height: 1.5; color: var(--wgn-ink-soft); }
.wgn-nl--dark .wgn-nl__note { color: rgba(237,231,222,.6); }
.wgn-nl__note a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 520px) {
	.wgn-nl__form { flex-direction: column; }
	.wgn-nl__form .wgn-btn { width: 100%; }
}
