@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/anton-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/anton-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#e9e9e9;font-family:Helvetica,Arial,sans-serif;color:#222;font-size:15px;line-height:1.45}
a{color:inherit}
.preview-bar{background:#111;color:#ffd24a;text-align:center;padding:6px;font-size:13px}

.page{position:relative;max-width:960px;margin:0 auto;background:#fff;box-shadow:0 0 40px rgba(0,0,0,.35);overflow:hidden}

/* ---------- Header ---------- */
.hero{position:relative;height:185px;background:linear-gradient(120deg,#cfd6dd,#eef1f4 40%,#c5ccd3);background-size:cover;background-position:center}
.logo{position:absolute;left:18px;top:14px;max-width:110px;max-height:110px;z-index:3}
.voucher{position:absolute;left:36%;top:28px;width:228px;height:152px;background:#fff;border-radius:14px;box-shadow:0 4px 14px rgba(0,0,0,.25);transform:rotate(-8deg);z-index:3;padding:22px 20px;overflow:hidden}
.v-label{display:block;font-family:Anton,Impact,sans-serif;font-size:24px;color:#555;letter-spacing:.3px}
.v-value{display:block;font-size:44px;color:var(--accent);line-height:1.1;margin-top:6px}
.v-logo{position:absolute;right:12px;top:10px;max-width:62px;max-height:62px}
.hero-circle{position:absolute;right:18px;top:22px;width:440px;height:440px;border-radius:50%;border:14px solid var(--ring);box-shadow:0 2px 0 6px rgba(242,165,170,.35);overflow:hidden;z-index:2;background:#dfe5ea}
.hero-circle img{width:100%;height:100%;object-fit:cover;display:block}
.hero-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--accent);background:radial-gradient(circle at 40% 35%,#fff,#f6d7d9)}
.hero-placeholder svg{width:45%;height:45%}

.intro{min-height:310px;padding:40px 0 20px;width:52%;display:flex;align-items:center;justify-content:center}
.headline{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:50px;line-height:1.15;color:var(--headline);text-align:center;margin:0 10px;letter-spacing:.2px}
.headline .hl{color:var(--accent)}
.no-intro .hero{height:150px}
.no-intro .content{z-index:1}

/* ---------- Content ---------- */
.content{padding:30px 20px 40px;position:relative;z-index:4;background:#fff}
.has-intro .content{padding-top:10px}

.stepper{list-style:none;display:flex;justify-content:space-between;align-items:center;max-width:680px;margin:0 auto 26px;padding:0;position:relative}
.stepper::before{content:"";position:absolute;left:40px;right:40px;top:50%;height:1px;background:#ccc}
.stepper li{position:relative;z-index:1;background:#fff;padding:0 12px}
.stepper .dot{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff}
.stepper .dot svg{width:24px;height:24px}
.stepper .current .dot{width:64px;height:64px;background:var(--success)}
.stepper .current .dot svg{width:32px;height:32px}

.step-title{text-align:center;font-size:20px;margin:0 0 20px;color:#333}
.reg-form{max-width:894px;margin:0 auto}
.row{margin-bottom:14px}
.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.cols-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}
.cols-street{display:grid;grid-template-columns:1fr 217px;gap:7px}
.reg-form input[type=text],.reg-form input[type=email],.reg-form input[type=tel],.reg-form select{width:100%;height:40px;border:1px solid #ccc;background:#fff;padding:0 9px;font:700 13px Helvetica,Arial,sans-serif;color:#333;border-radius:0;outline:0}
.reg-form input::placeholder{color:#777;opacity:1}
.reg-form input:focus,.reg-form select:focus{border-color:var(--primary);box-shadow:0 0 0 2px rgba(59,38,114,.15)}
.reg-form select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='26'%3E%3Crect width='22' height='26' fill='%23777'/%3E%3Cpath d='M7 11h8l-4 5z' fill='%23fff'/%3E%3C/svg%3E") no-repeat right 8px center;padding-right:40px;color:#555}
.reg-form .invalid,.reg-form select.invalid{border-color:#e3001b;background-color:#fff5f5}
.salutation{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.sal{position:relative;cursor:pointer}
.sal input{position:absolute;opacity:0;pointer-events:none}
.sal span{display:block;height:40px;line-height:40px;text-align:center;font-weight:700;color:var(--primary);border:1px solid #ddd;box-shadow:0 2px 8px rgba(0,0,0,.12);background:#fff;transition:.15s}
.sal input:checked+span{background:var(--primary);color:#fff;border-color:var(--primary)}
.sal input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}
.hint{color:var(--accent);font-weight:700;font-size:11.5px;text-align:center;margin:6px 0 0}
.note{text-align:right;font-weight:700;margin:8px 0 0;font-size:14px}
.note-red{color:var(--accent);font-size:11.5px}
.err{color:#e3001b;font-size:12px;margin-top:3px;font-weight:700}
.err-box{text-align:center;margin-bottom:12px}
.btn-next{display:block;width:100%;height:40px;margin-top:34px;border:0;background:var(--primary);color:#fff;font:700 18px Helvetica,Arial,sans-serif;text-transform:uppercase;cursor:pointer}
.btn-next:hover{filter:brightness(1.12)}
.btn-next[disabled]{opacity:.7;cursor:wait}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- Coreg ---------- */
.coreg-intro{text-align:center;font-size:14px}
.coreg-intro p{margin:0 0 18px}
.coreg-title{text-align:center;font-size:19px;color:var(--coreg-title);margin:26px 0 40px}
.coreg-title .hl{color:var(--accent)}
.coreg-form{max-width:930px;margin:0 auto}
.coreg-q{background:#eee;border:0;margin:0 0 30px;padding:10px 24px 14px;border-radius:2px}
.coreg-q.invalid{box-shadow:inset 0 0 0 2px #e3001b}
.q-head{display:flex;align-items:center;gap:20px;min-height:40px}
.q-head img{width:218px;max-height:220px;object-fit:contain;flex:0 0 218px}
.q-text{color:#c00;font-weight:700;font-size:15px;padding:0;float:none}
.q-head:not(.has-img) .q-text{padding-top:8px}
.q-consent{font-size:13px;margin:12px -14px 0}
.q-answers{margin-top:14px}
.q-answers label{display:flex;align-items:center;gap:6px;font-weight:700;font-size:14px;margin:0 0 9px;cursor:pointer}
.q-answers input{width:20px;height:20px;margin:0;accent-color:var(--primary)}

.message{text-align:center;max-width:700px;margin:10px auto 30px}
.message h2{font-size:26px;margin:10px 0 18px}

/* ---------- Footer ---------- */
.footer{background:#eaeaea;padding:22px 20px 14px;font-size:9.5px;line-height:1.5}
.footer-links{text-align:center;font-size:12px;margin-top:22px}
.footer-links a{color:#222}

/* ---------- Popups ---------- */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:8vh 12px 12px;overflow:auto}
.overlay[hidden]{display:none}
.modal{position:relative;background:#fff;width:100%;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.modal-consent{max-width:870px;padding:22px 31px 22px;margin-top:20vh}
.modal-consent h2{text-align:center;font-size:21px;margin:8px 0 22px}
.consent-text{font-size:14px;line-height:1.43}
.btn-consent{display:block;width:100%;min-height:54px;margin-top:20px;border:0;background:var(--consent);color:#fff;font:700 17px Helvetica,Arial,sans-serif;text-transform:uppercase;cursor:pointer;padding:6px 10px}
.btn-consent:hover{filter:brightness(1.06)}
.consent-cb{display:grid;grid-template-columns:30px 1fr;gap:10px;font-size:14px;line-height:1.43;margin:0 0 20px;cursor:pointer}
.consent-cb input{width:30px;height:30px;margin:2px 0 0;accent-color:var(--primary)}
.modal-links{text-align:center;margin-top:24px;font-size:14px}
.modal-links a{margin:0 3px}
.modal-consent .consent-settings .btn-consent:first-of-type{margin-top:6px}

.modal-legal{max-width:920px;height:84vh;margin-top:0;display:flex;flex-direction:column}
.modal-legal .modal-body{overflow:auto;padding:30px 46px 40px;font-size:14px;flex:1}
.modal-legal h1{font-size:36px;font-weight:400;margin:10px 0 50px}
.modal-x{position:absolute;right:0;top:0;width:40px;height:40px;border:0;background:var(--primary,#3b2672);color:#fff;cursor:pointer;padding:9px;z-index:2}
.modal-x svg{width:22px;height:22px}

.modal-sponsors{max-width:600px;margin-top:6vh;border-radius:6px;border:1px solid #333;overflow:hidden;max-height:80vh;display:flex;flex-direction:column;font-size:13px}
.sp-close{border:0;background:#eee;padding:8px;font-weight:700;cursor:pointer;width:100%}
#sponsor-body{display:flex;flex-direction:column;min-height:0;flex:1}
.sp-wrap{display:flex;flex-direction:column;min-height:0;flex:1}
.sp-head{padding:8px 14px 10px}
.sp-head p{margin:0 0 4px}
.sp-tab{border:0;background:none;padding:5px 7px;border-radius:9px;font-size:13px;cursor:pointer}
.sp-tab.active{background:#000;color:#fff;font-weight:700}
.sp-list{overflow:auto;padding:4px 18px 12px 6px;margin-left:0;text-align:justify;flex:1;min-height:0}
.sp-list[hidden]{display:none}
.sp-item{padding:4px 0 6px}
.sp-item strong{font-weight:700}
.sp-item a{color:#444;text-decoration:none;word-break:break-all}
.sp-active{display:flex;align-items:center;gap:2px;font-size:10px;margin-top:4px}
.sp-active input{width:20px;height:20px;margin:0;accent-color:#2f7cf6}

.modal-info{max-width:900px;padding:20px 26px 40px;text-align:center;font-size:20px;margin-top:22vh}
.modal-info h2{font-size:34px;margin:10px 0 30px}
.info-x{position:absolute;right:20px;top:14px;border:0;background:none;font:700 22px Arial;cursor:pointer}

.legal h1{font-size:34px;font-weight:400}
.simple-page{padding:30px 40px;min-height:100vh}
body.modal-open{overflow:hidden}

/* ---------- Mobil ---------- */
@media (max-width:760px){
  .hero{height:140px}
  .logo{max-width:70px;max-height:70px;left:10px;top:10px}
  .voucher{left:auto;right:12px;top:16px;width:150px;height:100px;padding:12px 12px;border-radius:10px}
  .v-label{font-size:16px}
  .v-value{font-size:28px}
  .v-logo{max-width:36px;max-height:36px}
  .hero-circle{right:auto;left:50%;top:70px;margin-left:-115px;width:230px;height:230px;border-width:8px}
  .voucher{z-index:3}
  .intro{width:auto;min-height:0;padding:175px 10px 10px}
  .headline{font-size:34px}
  .content{padding:20px 12px 30px}
  .stepper .dot{width:38px;height:38px}
  .stepper .current .dot{width:50px;height:50px}
  .stepper li{padding:0 6px}
  .cols-3{grid-template-columns:1fr 1fr}
  .cols-3>:last-child:nth-child(3){grid-column:span 2}
  .birthdate{grid-template-columns:1fr 1fr 1.3fr}
  .birthdate>:last-child:nth-child(3){grid-column:auto}
  .cols-street{grid-template-columns:1fr 90px}
  .modal-consent{padding:16px;margin-top:2vh}
  .btn-consent{font-size:14px}
  .q-head{flex-direction:column;align-items:flex-start}
  .q-head img{width:100%;flex-basis:auto;max-height:180px}
  .modal-legal .modal-body{padding:24px 18px}
  .modal-legal h1{font-size:26px;margin-bottom:24px}
  .modal-info{font-size:16px}
  .modal-info h2{font-size:24px}
}

/* ---------- Komplette Kopfgrafik ---------- */
.hero-graphic{line-height:0;background:#fff}
.hero-graphic img{display:block;width:100%;height:auto}
.has-graphic .content{padding-top:24px}

/* ---------- Interne Vorschau ---------- */
.pv-nav{position:sticky;top:0;z-index:200;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:8px 12px;background:#1f1640;color:#fff;font:600 12.5px/1.2 system-ui,Arial,sans-serif}
.pv-nav a{color:#d9d4ee;text-decoration:none;padding:5px 9px;border-radius:5px}
.pv-nav a:hover{background:rgba(255,255,255,.1)}
.pv-nav a.on{background:#ffd24a;color:#1f1640}
.pv-label{color:#ffd24a;margin-right:6px;letter-spacing:.5px}
.pv-note{margin-left:auto;opacity:.65;font-weight:400}
.pv-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#1f1640;color:#fff;padding:10px 16px;border-radius:8px;z-index:300;font:14px system-ui,Arial,sans-serif}
.pv-mail{max-width:720px;margin:30px auto;background:#fff;box-shadow:0 4px 30px rgba(0,0,0,.2)}
.pv-mail-head{padding:16px 22px;border-bottom:1px solid #ddd;font-size:14px;line-height:1.7;background:#fafafa}
.pv-mail-body{padding:22px;font-family:Arial,sans-serif;font-size:15px}

/* Beantwortete Coreg-Fragen ausblenden */
.coreg-q{transition:opacity .35s ease,transform .35s ease,max-height .35s ease,margin .35s ease,padding .35s ease;max-height:1200px;overflow:hidden}
.coreg-q.leaving{opacity:0;transform:translateX(60px);max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0}
.coreg-q[hidden]{display:none}

.q-footer{font-size:14px;margin:18px 0 6px}

.sp-item a.sp-more{color:#2f7cf6;text-decoration:underline;cursor:pointer}
.sp-long{display:block;margin:4px 0 2px;padding:6px 8px;background:#f6f6f6;border-radius:4px;font-size:12px;text-align:justify}
.sp-long[hidden]{display:none}
.pv-mail-frame{display:block;width:100%;min-height:600px;border:0;background:#e8e8e8}
.pv-mail{max-width:760px}

/* ---------- Countdown ---------- */
.countdown{text-align:center;color:var(--countdown,var(--accent));font-weight:700;font-size:15px;margin:0 0 14px}

/* ---------- Einwilligung neben dem Formular (FR-Stil) ---------- */
.reg-form.reg-inline{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;max-width:none}
.reg-inline .reg-fields .row:last-child{margin-bottom:0}
.reg-consent{font-size:11.5px;line-height:1.45;text-align:justify}
.inline-consent{display:grid;grid-template-columns:18px 1fr;gap:6px;cursor:pointer}
.inline-consent input{width:14px;height:14px;margin:2px 0 0;accent-color:var(--primary)}
.inline-consent a{color:inherit;text-decoration:underline}
.btn-inline{height:auto;min-height:40px;margin-top:26px;font-size:16px;padding:8px 10px;line-height:1.2}
.btn-inline+.btn-inline{margin-top:22px}

/* ---------- Sponsoren-Laufband ---------- */
.sp-band{margin:36px 0 6px;text-align:center}
.sp-band-title{margin:0 0 4px;font-size:13px;letter-spacing:.6px;color:#888}
.sp-band-sub{margin:0 0 16px;font-size:10.5px;font-weight:700;color:#999;letter-spacing:.3px}
.sp-band-viewport{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.sp-band-track{display:flex;gap:16px;width:max-content;animation:sp-scroll 40s linear infinite}
.sp-band-viewport:hover .sp-band-track,.sp-band-viewport:focus-within .sp-band-track{animation-play-state:paused}
@keyframes sp-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
.sp-logo{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:128px;height:62px;padding:8px 10px;background:#fff;border:1px solid #ddd;border-radius:6px;text-decoration:none;color:#777;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.sp-logo:hover{border-color:#bbb;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.sp-logo img{max-width:100%;max-height:44px;object-fit:contain;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}
.sp-logo:hover img{filter:none;opacity:1}
.sp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;max-width:800px;margin:0 auto}
.sp-grid .sp-logo{width:auto;height:52px;padding:6px 8px;border-color:#e2e2e2}
.sp-logo span{font:700 11px/1.2 Helvetica,Arial,sans-serif;text-transform:uppercase;letter-spacing:.3px;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (prefers-reduced-motion:reduce){.sp-band-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.sp-band-track>[aria-hidden]{display:none}}
.sp-item.sp-hl{background:#fff6d6;transition:background 1.5s}

/* ---------- Coreg-Karten (FR-Stil) ---------- */
.coreg-cards{max-width:930px}
.coreg-cards .coreg-q.coreg-card{background:#fff;border:1px solid var(--coreg-border);border-radius:3px;padding:0;margin:0 0 30px}
.cc-head{display:flex;align-items:center;gap:20px;padding:10px 12px;min-height:60px}
.cc-head.no-img{justify-content:center;text-align:center;padding:20px 24px}
.cc-img{flex:0 0 222px;display:flex;align-items:center;justify-content:center}
.cc-img img{max-width:222px;max-height:240px;object-fit:contain;display:block}
.cc-text{font-weight:700;font-size:14.5px;line-height:1.5;color:#111;padding:0;float:none;flex:1}
.cc-head.has-side .cc-text{flex:1.2}
.cc-side{flex:1;font-weight:700;font-size:14.5px;line-height:1.5;color:#111}
.cc-body{background:#eee;padding:16px 24px 14px}
.cc-consent{font-size:14px;margin:0 0 12px}
.cc-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 30px}
.cc-btn{position:relative;cursor:pointer;display:block}
.cc-btn input{position:absolute;opacity:0;pointer-events:none}
.cc-btn span{display:flex;align-items:center;justify-content:center;min-height:33px;padding:5px 10px;background:var(--coreg-btn);border:1px solid rgba(0,0,0,.15);color:#fff;font-weight:700;font-size:14px;line-height:1.2;text-align:center;transition:filter .15s,transform .1s}
.cc-btn:hover span{filter:brightness(1.08)}
.cc-btn:active span{transform:translateY(1px)}
.cc-btn input:checked+span{filter:brightness(.88)}
.cc-btn input:focus-visible+span{outline:2px solid #222;outline-offset:2px}
.cc-more{margin-top:18px;font-size:14px}
.cc-more-text{overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-style:italic}
.cc-more.open .cc-more-text{display:block;-webkit-line-clamp:unset}
.cc-more-btn{margin-top:10px;min-width:150px;height:33px;border:1px solid rgba(0,0,0,.15);background:var(--coreg-btn);color:#fff;font:italic 700 14px Helvetica,Arial,sans-serif;cursor:pointer}
.coreg-cards .btn-next{background:var(--coreg-border);border-radius:3px;height:44px;margin-top:10px;font-size:17px}

@media (max-width:760px){
  .reg-form.reg-inline{grid-template-columns:1fr;gap:6px}
  .btn-inline{margin-top:18px}
  .sp-logo{width:104px;height:54px}
  .sp-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .sp-grid .sp-logo{width:auto;height:48px}
  .cc-head{flex-direction:column;align-items:stretch;text-align:left}
  .cc-img{flex-basis:auto}
  .cc-img img{max-height:150px}
  .cc-body{padding:14px 12px}
  .cc-answers{grid-template-columns:1fr 1fr;gap:8px}
}

/* Häkchen der Einwilligung fehlt */
.inline-consent.invalid{outline:2px solid #e3001b;outline-offset:4px;background:#fff5f5}
.inline-consent.invalid input{outline:2px solid #e3001b;accent-color:#e3001b}
.reg-consent .err[hidden]{display:none}
.reg-consent .err{margin-top:8px}

/* Vorschau: Testdaten für die DOI-Mail */
.pv-test{max-width:760px;margin:20px auto 0;padding:12px 16px;background:#fff;border:1px dashed #999;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;font:13px/1.3 Arial,sans-serif}
.pv-test>b{width:100%}
.pv-test label{display:flex;flex-direction:column;gap:3px;flex:1 1 130px}
.pv-test input,.pv-test select{padding:6px 8px;border:1px solid #bbb;border-radius:3px;font:inherit}
.pv-test button{padding:7px 14px;background:#333;color:#fff;border:0;border-radius:3px;cursor:pointer;font:inherit}
.pv-test a{color:#555;font-size:12px;align-self:center}

/* ===== ES-Stil ===== */
/* Einwilligungs-Popup mit zwei Checkboxen */
.consent-checks .consent-cb{margin-bottom:16px}
.consent-checks .consent-cb input{appearance:none;-webkit-appearance:none;width:30px;height:30px;border:1px solid #666;border-radius:3px;background:#fff;cursor:pointer;position:relative}
.consent-checks .consent-cb input:checked{background:var(--consent);border-color:var(--consent)}
.consent-checks .consent-cb input:checked::after{content:"";position:absolute;left:10px;top:4px;width:7px;height:15px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg)}
.consent-checks .btn-consent-all{margin-top:4px}
.btn-consent-sel{display:block;width:100%;min-height:29px;margin-top:16px;border:1px solid #888;background:#fff;color:#999;font:700 12.5px Helvetica,Arial,sans-serif;text-transform:uppercase;cursor:pointer;padding:5px 10px}
.btn-consent-sel:hover{color:#555;border-color:#555}
.consent-checks-text{margin-top:22px}
/* Adresse: Calle | Número – Piso | Puerta | CP */
.cols-addr{display:grid;gap:7px}
.cols-addr-1{grid-template-columns:1fr}
.cols-addr-2{grid-template-columns:1fr 1fr}
.cols-addr-3{grid-template-columns:1fr 1fr 2fr}
.cols-addr-4{grid-template-columns:1fr 1fr 1.3fr 2fr}
/* Coreg-Karten mit farbigem Kopf */
.cc-blue .coreg-q.coreg-card{border-color:var(--coreg-border)}
.cc-blue .cc-head{background:var(--coreg-border);padding:10px;min-height:70px}
.cc-blue .cc-head.no-img{padding:18px 24px}
.cc-blue .cc-text{color:#fff;font-size:14px}
.cc-blue .cc-img{flex:0 0 222px;background:#fff;padding:4px;align-self:stretch}
.cc-blue .cc-img img{max-height:120px}
.cc-blue .cc-body{display:flow-root;padding:26px 24px 26px}
.cc-blue .cc-answers{float:left;display:flex;gap:30px;margin:0 12px 6px 0}
.cc-blue .cc-btn span{width:272px;min-height:33px}
.cc-blue .cc-consent{font-size:13px;font-style:italic;color:#666;line-height:1.55;margin:4px 0 0;text-align:justify}
.cc-blue .cc-consent a{color:inherit}
/* UK-Stil: Text über den Antworten, Einwilligung darunter, max. 3 Buttons je Zeile, Auswahlliste */
.cc-bodytext{font-size:14px;line-height:1.45;color:#111;margin:0 0 14px}
.q-bodytext{font-size:14px;line-height:1.45;margin:10px 0 0}
.cc-below .cc-body{padding:14px 12px 22px}
.cc-below .cc-head.no-img{justify-content:center;text-align:center}
.cc-below .cc-head.no-img .cc-text{width:100%;text-align:center}
.cc-below .cc-answers{float:none;display:flex;flex-wrap:wrap;gap:14px 30px;margin:0 12px 6px}
.cc-below .cc-btn{flex:0 0 calc((100% - 60px) / 3)}
.cc-below .cc-btn span{width:auto}
.cc-below .cc-consent{font-size:15px;color:#222;margin:22px 12px 0;text-align:left}
.cc-select{display:block}
.cc-sel,.q-sel{width:266px;max-width:100%;height:40px;padding:0 8px;border:1px solid #ccc;background:#fff;font-weight:700;color:#555;font-size:13px}
.cc-below .cc-answers.cc-select{margin:10px 14px 4px}
/* Teilnahme ohne Werbung (Footer-Link) */
.footer .noads{text-align:center;font-size:13px;font-weight:700;margin:0 0 14px}
.footer .noads a{color:#777}
.notice{background:#eef6e8;border:1px solid #9cc68a;color:#2b5a1c;padding:10px 14px;margin:14px 0;font-size:14px;text-align:center}
/* PL-Stil */
.before-btn{text-align:center;font-size:14px;margin:18px 0 -14px}
.before-btn a,.after-btn a{color:inherit}
.after-btn{text-align:center;font-size:14px;line-height:1.45;margin:18px 0 10px}
.consent-list .btn-consent{margin:0 0 22px}
.consent-list .btn-consent-sel{margin:0 0 18px}
.consent-list-text{font-size:14px;line-height:1.45}
.consent-terms-warn h2{font-size:21px;line-height:1.3}
.thanks-banner{max-width:none;background:var(--primary);color:#fff;padding:24px 16px;margin:0 0 0}
.thanks-banner h2{color:#fff;font-size:22px;margin:0}
.thanks-banner p{color:#fff}
/* Danke-Seite im Kasten */
.thanks-box{max-width:none;text-align:left;background:#ececec;border:4px solid #8c8c74;padding:18px 12px 10px;margin:22px 0 60px}
.thanks-box h2{font-size:38px;font-weight:400;color:#7c6a5d;margin:4px 0 14px}
.thanks-box p{color:#7c6a5d;font-weight:700;margin:0 0 6px}
@media (max-width:760px){
  .cols-addr-3,.cols-addr-4{grid-template-columns:1fr 1fr}
  .cols-addr-3>:last-child,.cols-addr-4>:nth-child(n+3){grid-column:span 1}
  .cols-addr-3>:last-child{grid-column:span 2}
  .cc-blue .cc-answers{float:none;margin:0 0 12px}
  .cc-blue .cc-btn{flex:1}
  .cc-blue .cc-btn span{width:auto}
  .cc-blue .cc-img{align-self:center;flex-basis:auto}
  .cc-below .cc-btn{flex:1 1 calc(50% - 15px)}
  .thanks-box h2{font-size:28px}
}
