/* Gewinnspiel: Hinweisleiste */
.gw-bar { background: #FDF3D7; color: #4A3500; border-bottom: 1px solid #EBD79A; }
.gw-bar-inner { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.gw-bar a { flex: 1; color: inherit; font-size: 14px; padding: 8px 0; text-decoration: none; }
.gw-bar a .u { text-decoration: underline; font-weight: 700; }
.gw-bar button { border: 0; background: none; font-size: 24px; line-height: 1; color: inherit; cursor: pointer; width: 44px; height: 44px; }

/* Hinweis im Newsletter-Kasten */
.nl-promo { display: grid; grid-template-columns: 22px 1fr; gap: 8px; align-items: start; margin: 4px 0 0; padding: 10px 12px; background: #FDF3D7; border-radius: 8px; font-size: 14px; line-height: 1.45; color: #4A3500; }
.nl-promo a { color: inherit; text-decoration: underline; }

/* Aktionsseite */
.gw { max-width: 1040px; margin: 0 auto; }
.gw-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: 36px; align-items: center; padding: 8px 0 28px; }
.gw-kicker { margin: 0 0 10px; font-weight: 700; color: #8A5A00; font-size: 15px; }
.gw-hero h1 { font-family: var(--serif, Georgia, serif); font-size: clamp(32px, 5vw, 50px); line-height: 1.06; margin: 0 0 14px; letter-spacing: -0.01em; }
.gw-lead { font-size: 19px; line-height: 1.55; color: var(--ink-3, #3A3F48); margin: 0 0 16px; max-width: 44ch; }
.gw-count { display: inline-block; margin: 0; padding: 10px 14px; border-radius: 10px; background: #16181D; color: #fff; font-size: 15px; }
.gw-count strong { color: #FFD66B; }
.gw-img { margin: 0; }
.gw-img img { width: 100%; height: auto; border-radius: 14px; display: block; box-shadow: 0 18px 40px -22px rgba(22, 24, 29, 0.45); }
.gw-how { background: #fff; border: 1px solid var(--rule, #D9D5CC); border-radius: 12px; padding: 22px 24px; margin: 8px 0 22px; }
.gw-how h2, .gw-cond-wrap h2 { font-family: var(--serif, Georgia, serif); font-size: 26px; margin: 0 0 14px; }
.gw-how ol { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; counter-reset: gw; }
.gw-how li { counter-increment: gw; display: grid; grid-template-columns: 34px 1fr; column-gap: 10px; align-content: start; }
.gw-how li::before { content: counter(gw); grid-row: 1 / span 2; width: 30px; height: 30px; border-radius: 50%; background: var(--accent, #0B4DA2); color: #fff; font-weight: 800; display: grid; place-items: center; font-size: 15px; }
.gw-how li strong { font-size: 16px; }
.gw-how li span { color: var(--muted, #5A606B); font-size: 14px; line-height: 1.45; }
.gw-already { margin: 16px 0 0; font-size: 15px; font-weight: 600; }
.gw-form { margin: 0 0 30px; }
.gw-form .nl-box { border-top: 4px solid #E3A21A; }
.gw-cond-wrap { border-top: 1px solid var(--rule, #D9D5CC); padding-top: 22px; margin-bottom: 40px; }
.gw-cond { margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: 8px; font-size: 15px; line-height: 1.55; color: var(--ink-3, #3A3F48); max-width: 78ch; }
.gw-btn { display: inline-flex; align-items: center; min-height: 48px; padding: 0 20px; border-radius: 10px; background: var(--accent, #0B4DA2); color: #fff; font-weight: 700; text-decoration: none; }
@media (max-width: 760px) {
	.gw-hero { grid-template-columns: 1fr; gap: 20px; }
	.gw-img { order: -1; }
	.gw-how ol { grid-template-columns: 1fr; }
}
