/* Godz Casino Deutschland - Stil. Quelle fuer den Inline-Block der Startseite und fuer medien/stil.css */
@font-face{font-family:"Gilda Display";src:url(schrift/gilda.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow Condensed";src:url(schrift/barlowc-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(schrift/barlowc-700.woff2) format("woff2");font-weight:700 800;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url(schrift/inter.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Inter Ersatz";src:local("Segoe UI"),local("Arial");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}
@font-face{font-family:"Gilda Ersatz";src:local("Georgia"),local("Times New Roman");size-adjust:97%;ascent-override:100%;descent-override:26%;line-gap-override:0%}

:root{
  --dn-bg:#061230; --dn-bg2:#0b1a3d; --dn-panel:#11244d; --dn-panel2:#193060; --dn-rail:#07142f;
  --dn-blitz:#58c4ff; --dn-blitz-hell:#d2efff; --dn-blitz-dunkel:#4f9fe0; --dn-metall:#e8c86a;
  --dn-stahl:#93a9d2; --dn-stahl-hell:#dee6f7; --dn-sturm:#1f3f86;
  --dn-text:#e6e9f2; --dn-leise:#96a0bc;
  --dn-kante:rgba(88,196,255,.26); --dn-kante2:rgba(147,169,210,.14);
  --dn-schiene:252px; --dn-kopf:56px;
  --dn-text-font:"Inter","Inter Ersatz",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --dn-antiqua:"Gilda Display","Gilda Ersatz",Georgia,"Times New Roman",serif;
  --dn-schmal:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
}
html{color-scheme:dark;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:120px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--dn-text-font);background:var(--dn-bg);color:var(--dn-text);line-height:1.62;font-size:15.5px;overflow-x:clip;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--dn-antiqua);font-weight:400;letter-spacing:.02em;line-height:1.2}
/* Marmor ohne Bilddatei: zwei Lichtquellen und zwei Aderungen aus Farbverlaeufen, 0 Byte Ladung */
body::before{content:"";position:fixed;inset:0;z-index:-2;background:
  radial-gradient(58% 38% at 17% 6%,rgba(31,63,134,.34),transparent 64%),
  radial-gradient(46% 32% at 84% 3%,rgba(147,169,210,.11),transparent 66%),
  repeating-linear-gradient(113deg,rgba(147,169,210,.030) 0 2px,transparent 2px 11px),
  repeating-linear-gradient(-67deg,rgba(88,196,255,.017) 0 1px,transparent 1px 15px),
  linear-gradient(180deg,#081838,var(--dn-bg) 58%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(120% 78% at 50% 0,rgba(31,63,134,.22),transparent 58%),linear-gradient(180deg,rgba(6,18,48,.42),rgba(6,18,48,.88))}

/* ---------- Grundgeruest ---------- */
.dn-shell{display:grid;grid-template-columns:var(--dn-schiene) minmax(0,1fr);width:100%;min-height:100vh}
.dn-shell.dn-rail-off{grid-template-columns:minmax(0,1fr)}
.dn-shell.dn-rail-off .dn-rail{display:none}
.dn-main{min-width:0}
.dn-wrap{width:100%;padding:18px 26px 56px}
.dn-skip{position:absolute;left:-999px;top:0;z-index:400;background:var(--dn-blitz);color:#04102a;padding:10px 18px;font-weight:700;border-radius:0 0 8px 0}
.dn-skip:focus{left:0}

/* ---------- Kopfbalken der App ---------- */
.dn-appbar{display:flex;align-items:center;gap:12px;padding:8px 16px;background:linear-gradient(180deg,#121829,#050f28);border-bottom:1px solid var(--dn-kante)}
.dn-appbar__x{width:26px;height:26px;border:0;background:none;color:var(--dn-leise);font-size:15px;cursor:pointer;flex-shrink:0;line-height:1}
.dn-appbar__ico{width:38px;height:38px;border-radius:9px;border:1px solid var(--dn-kante);background:linear-gradient(160deg,var(--dn-panel2),var(--dn-rail));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dn-appbar__ico svg{width:20px;height:20px;stroke:var(--dn-blitz);fill:none;stroke-width:1.6}
.dn-appbar__txt{min-width:0;line-height:1.25}
.dn-appbar__t{font-family:var(--dn-schmal);font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dn-blitz-hell)}
.dn-appbar__s{font-size:11.5px;color:var(--dn-leise);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dn-appbar__spacer{flex:1}

/* ---------- Kopf ---------- */
.dn-head{position:sticky;top:0;z-index:40;background:linear-gradient(180deg,rgba(6,18,48,.97),rgba(10,14,26,.93));backdrop-filter:blur(7px);border-bottom:1px solid var(--dn-kante)}
.dn-head::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--dn-blitz),transparent);opacity:.75}
.dn-head__bar{display:flex;align-items:center;gap:12px;min-height:var(--dn-kopf);padding:8px 20px}
.dn-burger{display:none;width:42px;height:42px;border-radius:9px;border:1px solid var(--dn-kante);background:linear-gradient(180deg,var(--dn-panel2),var(--dn-rail));color:var(--dn-blitz);align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.dn-burger svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none}
/* Der gelieferte Schriftzug ist mit 2,77:1 gedrungener als der geplante Slot (3,57:1).
   Also wird er hoeher gesetzt, sonst wird er schmal und wirkt verloren. */
.dn-logo{height:40px;width:auto;display:block}
.dn-logo-link{display:inline-flex;align-items:center;flex-shrink:0}
.dn-head__spacer{flex:1}
.dn-head__akt{display:flex;align-items:center;gap:9px;flex-shrink:0}

/* ---------- Knoepfe ---------- */
.dn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--dn-schmal);font-weight:700;font-size:16px;letter-spacing:.09em;text-transform:uppercase;border-radius:7px;cursor:pointer;padding:11px 24px;white-space:nowrap;border:1px solid transparent;transition:filter .18s,transform .18s,border-color .18s}
.dn-btn--blitz{background:linear-gradient(180deg,#e6f7ff 0%,var(--dn-blitz) 45%,#3a94d8 100%);color:#04102a;border-color:#dff4ff;box-shadow:0 2px 0 rgba(255,255,255,.35) inset,0 6px 18px rgba(88,196,255,.28)}
.dn-btn--blitz:hover{filter:brightness(1.08);transform:translateY(-1px)}
.dn-btn--geist{background:rgba(147,169,210,.06);color:var(--dn-stahl-hell);border-color:rgba(147,169,210,.42)}
.dn-btn--geist:hover{border-color:var(--dn-stahl);background:rgba(147,169,210,.13)}
.dn-btn--gross{padding:15px 38px;font-size:19px;letter-spacing:.11em}
.dn-btn--klein{padding:9px 16px;font-size:14px}
.dn-btn--block{width:100%}

/* ---------- Schiene ---------- */
.dn-rail{background:linear-gradient(180deg,rgba(14,19,36,.82),rgba(6,18,48,.92));border-right:1px solid var(--dn-kante2);position:sticky;top:var(--dn-kopf);height:calc(100vh - var(--dn-kopf));overflow-y:auto;padding:16px 13px 28px;scrollbar-width:none}
.dn-rail::-webkit-scrollbar{display:none}
.dn-kacheln{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:16px}
.dn-kachel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:94px;border-radius:10px;border:1px solid var(--dn-kante);background:radial-gradient(120% 90% at 50% 0,rgba(88,196,255,.13),transparent 62%),linear-gradient(180deg,var(--dn-panel2),var(--dn-panel));padding:12px 6px;text-align:center;transition:.18s}
.dn-kachel:hover{border-color:var(--dn-blitz);transform:translateY(-2px)}
.dn-kachel svg{width:28px;height:28px;stroke:var(--dn-blitz);fill:none;stroke-width:1.5}
.dn-kachel--breit{grid-column:1/-1;flex-direction:row;justify-content:flex-start;gap:12px;min-height:56px;padding:10px 14px;text-align:left}
.dn-kachel--breit svg{width:23px;height:23px}
.dn-kachel__t{font-family:var(--dn-schmal);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--dn-text)}
.dn-rail__nav{display:flex;flex-direction:column;gap:4px}
.dn-rail__nav a{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:8px;border:1px solid transparent;font-family:var(--dn-schmal);font-size:15.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--dn-text);transition:.16s}
.dn-rail__nav a:hover,.dn-rail__nav a.dn-an{color:var(--dn-blitz-hell);border-color:var(--dn-kante);background:rgba(88,196,255,.07)}
.dn-rail__nav svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.7;flex-shrink:0;opacity:.85}
.dn-rail__grp{margin:16px 4px 7px;font-family:var(--dn-schmal);font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--dn-blitz-dunkel);text-transform:uppercase}
.dn-rail__cta{margin-top:16px;display:grid;gap:8px}
.dn-rail__hinweis{margin-top:16px;padding:11px 12px;border:1px solid var(--dn-kante2);border-radius:9px;background:rgba(31,63,134,.14);font-size:11.5px;line-height:1.5;color:var(--dn-leise)}

/* ---------- Startbildschirm ---------- */
/* Hoehe folgt der BREITE DES INHALTS, nicht dem Fenster: (vw - Schiene 252 - Rand 52) / 1,95.
   1,95 ist die native Proportion von held - so wird nichts beschnitten.
   Kein Schleier ueber dem Bild: die linke Haelfte des Arts ist von sich aus dunkel
   (gemessen 41 von 255), der Text steht ohne Abdunklung mit Abstand ueber der Norm. */
.dn-hero{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--dn-kante);box-shadow:0 20px 54px rgba(0,0,0,.55);background:#0a0d14 url(bilder/held-1100.webp) center top/cover no-repeat;min-height:clamp(340px,51.3vw - 156px,840px);display:flex;align-items:center}
@media(min-width:1281px){.dn-hero{background-image:url(bilder/held-1751.webp)}}
.dn-hero__in{position:relative;z-index:2;padding:34px 44px;max-width:60%}
.dn-hero__kick{display:inline-flex;align-items:center;gap:9px;font-family:var(--dn-schmal);font-size:15px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--dn-blitz-hell);margin-bottom:12px}
.dn-hero__kick::before,.dn-hero__kick::after{content:"";width:26px;height:1px;background:linear-gradient(90deg,transparent,var(--dn-blitz))}
.dn-hero__kick::after{background:linear-gradient(270deg,transparent,var(--dn-blitz))}
.dn-hero__sum{font-family:var(--dn-antiqua);font-size:clamp(30px,4.3vw,54px);font-weight:700;line-height:1.05;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.8)}
.dn-hero__sum b{display:block;background:linear-gradient(180deg,#fdf3d4,var(--dn-metall) 62%,#8f6a1c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}
/* Weiss statt Blaugrau: ohne Schleier ueber dem Art muss der Kontrast aus der
   Schriftfarbe kommen. Gemessen 4,49:1 vorher, ueber 6:1 nachher (arte-pruefen.js). */
.dn-hero__sub{margin-top:10px;font-size:16px;font-weight:500;color:#fff;max-width:34em;text-shadow:0 1px 10px rgba(0,0,0,.8)}
.dn-hero__akt{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.dn-hero__fein{margin-top:12px;font-size:12.5px;color:#eaeffb;text-shadow:0 1px 8px rgba(0,0,0,.85)}

/* ---------- Merkmalsband wie auf dem Marken-Banner ---------- */
/* Der Streifen steht mittig und laeuft nicht bis an die Kanten - sonst wirkt er wie eine Leiste */
.dn-band5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:16px auto 4px;max-width:1240px;border:1px solid var(--dn-kante);border-radius:12px;overflow:hidden;background:var(--dn-kante2)}
.dn-band5 li{list-style:none;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;padding:16px 12px;background:linear-gradient(180deg,var(--dn-panel),#0d1222)}
.dn-band5 svg{width:26px;height:26px;stroke:var(--dn-blitz);fill:none;stroke-width:1.5}
.dn-band5 b{font-family:var(--dn-schmal);font-size:15px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--dn-blitz-hell)}
.dn-band5 span{font-size:12px;line-height:1.45;color:var(--dn-leise)}

/* ---------- Sprungmarken ---------- */
.dn-chips{display:flex;gap:8px;overflow-x:auto;padding:16px 0 4px;scrollbar-width:none}
.dn-chips::-webkit-scrollbar{display:none}
.dn-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:8px;border:1px solid var(--dn-kante2);background:linear-gradient(180deg,var(--dn-panel2),var(--dn-panel));font-family:var(--dn-schmal);font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--dn-leise);transition:.16s}
.dn-chip:hover{color:var(--dn-blitz-hell);border-color:var(--dn-blitz)}
.dn-chip svg{width:15px;height:15px;stroke:var(--dn-blitz);fill:none;stroke-width:1.8}

/* ---------- Inhalt ---------- */
.dn-crumbs{font-size:12.5px;color:var(--dn-leise);margin:14px 0 4px}
.dn-crumbs a{color:var(--dn-stahl)}
.dn-inhalt h1{font-size:clamp(28px,3.6vw,44px);color:#fff;margin:14px 0 8px;text-align:center;text-transform:uppercase;letter-spacing:.06em;text-shadow:0 3px 20px rgba(0,0,0,.6)}
.dn-inhalt h1 span{background:linear-gradient(180deg,#fdf3d4,var(--dn-metall) 60%,#8f6a1c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dn-zier{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 16px;max-width:420px;color:var(--dn-blitz)}
.dn-zier::before,.dn-zier::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--dn-blitz))}
.dn-zier::after{background:linear-gradient(270deg,transparent,var(--dn-blitz))}
.dn-zier i{width:7px;height:7px;transform:rotate(45deg);background:var(--dn-blitz);flex-shrink:0}
.dn-lead{color:#ccd4ea;font-size:17px;margin:0 auto 20px;text-align:center;max-width:68ch}
.dn-inhalt h2{font-size:clamp(21px,2.5vw,29px);color:#fff;margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}
.dn-inhalt h3{font-family:var(--dn-schmal);font-size:21px;font-weight:700;letter-spacing:.04em;color:var(--dn-blitz-hell);margin:22px 0 7px;text-transform:uppercase}
.dn-inhalt h4{font-family:var(--dn-schmal);font-size:18px;font-weight:600;letter-spacing:.04em;color:var(--dn-stahl-hell);margin:16px 0 5px}
.dn-inhalt p{margin:0 0 12px}
.dn-inhalt .dn-liste{margin:0 0 14px;padding-left:2px;list-style:none}
.dn-inhalt .dn-liste li{position:relative;padding-left:24px;margin-bottom:7px}
.dn-inhalt .dn-liste li::before{content:"";position:absolute;left:6px;top:.62em;width:6px;height:6px;transform:rotate(45deg);background:var(--dn-blitz)}
.dn-inhalt a:not(.dn-btn):not(.dn-chip):not(.dn-kachel){color:var(--dn-stahl);font-weight:600;border-bottom:1px solid rgba(147,169,210,.32)}
.dn-inhalt a:not(.dn-btn):not(.dn-chip):not(.dn-kachel):hover{color:var(--dn-blitz-hell);border-bottom-color:var(--dn-blitz)}
.dn-abschnitt{background:linear-gradient(180deg,rgba(17,36,77,.86),rgba(12,16,30,.78));border:1px solid var(--dn-kante2);border-radius:14px;padding:24px 26px;margin:18px 0;position:relative}
.dn-abschnitt::before{content:"";position:absolute;left:24px;right:24px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--dn-kante),transparent)}

/* ---------- Stufen des Pakets ---------- */
.dn-stufen{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.dn-stufe{border:1px solid var(--dn-kante2);border-radius:12px;padding:16px 14px;text-align:center;background:linear-gradient(180deg,var(--dn-panel2),#0d1222)}
.dn-stufe--top{border-color:var(--dn-blitz);box-shadow:0 0 0 1px rgba(88,196,255,.18),0 10px 26px rgba(88,196,255,.13)}
.dn-stufe__nr{font-family:var(--dn-schmal);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--dn-leise)}
.dn-stufe__pz{font-family:var(--dn-antiqua);font-size:34px;font-weight:700;color:var(--dn-blitz-hell);line-height:1.1;margin:4px 0 2px}
.dn-stufe__bt{font-family:var(--dn-schmal);font-size:19px;font-weight:700;color:#fff}
.dn-stufe__fs{margin-top:6px;font-size:12.5px;color:var(--dn-leise)}

/* ---------- Tabellen ---------- */
.dn-tabwrap{overflow-x:auto;margin:14px 0}
.dn-tab{width:100%;border-collapse:collapse;font-size:14.5px;min-width:520px}
.dn-tab caption{text-align:left;font-family:var(--dn-schmal);font-size:14px;letter-spacing:.09em;text-transform:uppercase;color:var(--dn-leise);padding-bottom:8px}
.dn-tab th{background:linear-gradient(180deg,var(--dn-panel2),var(--dn-panel));color:var(--dn-blitz-hell);font-family:var(--dn-schmal);font-size:14.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;text-align:left;padding:11px 15px;border:1px solid var(--dn-kante)}
.dn-tab td{padding:10px 15px;border:1px solid var(--dn-kante2);vertical-align:top}
.dn-tab td:first-child{font-weight:600;color:#fff}
.dn-tab tbody tr:nth-child(even) td{background:rgba(147,169,210,.035)}

/* ---------- Promo-Streifen ---------- */
/* Hoehe = Inhaltsbreite / 3,00 - das ist die native Proportion von promo, also kein
   Beschnitt auf keiner Breite. Ohne Schleier: die linke Haelfte des Arts misst 8 von 255. */
.dn-promo{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--dn-blitz);margin:20px 0;min-height:clamp(300px,33.33vw - 101px,560px);display:flex;align-items:center;background:linear-gradient(120deg,#0c1b3f,#151d34 58%,#1e2a48)}
.dn-promo__in{position:relative;z-index:2;padding:22px 32px;max-width:58%;display:flex;flex-direction:column;gap:7px}
.dn-promo__kick{font-family:var(--dn-schmal);font-size:14px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--dn-stahl)}
.dn-promo__gross{font-family:var(--dn-antiqua);font-size:clamp(26px,3.4vw,44px);font-weight:700;line-height:1.04;color:var(--dn-blitz-hell);text-shadow:0 2px 16px rgba(88,196,255,.3)}
.dn-promo__gross span{display:block;font-size:.58em;color:#fff;text-shadow:none}
.dn-promo__zeile{font-size:14px;color:#c8d1e8;max-width:46ch}
.dn-promo .dn-btn{align-self:flex-start;margin-top:6px}

/* ---------- App-Bereich ---------- */
.dn-appzone{display:grid;grid-template-columns:minmax(0,1.15fr) auto minmax(0,1fr);align-items:center;gap:18px;margin:18px 0}
.dn-appzone__txt{display:flex;flex-direction:column;gap:10px}
.dn-appzone__phone{display:flex;align-items:center;justify-content:center;padding:10px}
.dn-appzone__phone img{height:320px;width:auto;filter:drop-shadow(0 18px 34px rgba(0,0,0,.6))}
.dn-vorteile{list-style:none;display:flex;flex-direction:column;gap:9px}
.dn-vorteile li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;font-weight:500}
.dn-vorteile li::before{content:"";width:19px;height:19px;flex-shrink:0;margin-top:2px;border-radius:50%;border:1px solid var(--dn-blitz);background:radial-gradient(circle at 36% 30%,var(--dn-blitz-hell),var(--dn-blitz-dunkel));box-shadow:0 0 10px rgba(88,196,255,.35)}

/* ---------- Stimmen ---------- */
.dn-stimmen{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:14px 0}
.dn-stimme{background:linear-gradient(180deg,rgba(17,36,77,.92),rgba(12,16,30,.8));border:1px solid var(--dn-kante2);border-radius:12px;padding:16px 18px}
.dn-stimme__top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.dn-stimme__av{width:34px;height:34px;border-radius:50%;background:linear-gradient(160deg,var(--dn-panel2),var(--dn-rail));border:1px solid var(--dn-kante);display:flex;align-items:center;justify-content:center;font-family:var(--dn-antiqua);font-weight:700;color:var(--dn-blitz);font-size:14px;flex-shrink:0}
.dn-stimme__name{font-family:var(--dn-schmal);font-weight:700;font-size:16px;letter-spacing:.03em;color:#fff}
.dn-stimme__meta{font-size:11.5px;color:var(--dn-leise)}
.dn-stimme p{font-size:14px;margin:0}

/* ---------- Hinweiskasten ---------- */
.dn-kasten{position:relative;border:1px solid var(--dn-kante);background:rgba(88,196,255,.06);border-radius:10px;padding:15px 18px;margin:14px 0}
.dn-kasten--recht{border-color:var(--dn-kante2);background:rgba(31,63,134,.18)}
.dn-kasten__t{display:flex;align-items:center;gap:9px;font-family:var(--dn-schmal);font-size:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dn-blitz-hell);margin-bottom:5px}
.dn-kasten__t::before{content:"";width:7px;height:7px;flex-shrink:0;transform:rotate(45deg);background:var(--dn-blitz)}
.dn-kasten--recht .dn-kasten__t{color:var(--dn-stahl-hell)}
.dn-kasten--recht .dn-kasten__t::before{background:var(--dn-stahl)}
.dn-kasten p:last-child{margin-bottom:0}

/* ---------- Zwei Spalten ---------- */
.dn-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:14px 0}
.dn-karte{border:1px solid var(--dn-kante2);border-radius:12px;padding:18px 20px;background:linear-gradient(180deg,rgba(31,39,64,.6),rgba(12,16,30,.6))}
.dn-karte h3{margin-top:0}
.dn-karte p:last-child,.dn-karte ul:last-child{margin-bottom:0}

/* ---------- Abschluss-Aufruf ---------- */
.dn-schluss{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--dn-blitz);margin:24px 0 8px;min-height:clamp(260px,26vw - 60px,380px);display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(140deg,#0d1322,#18213d 55%,#0c1120)}
.dn-schluss::before{content:"";position:absolute;inset:0;background:radial-gradient(80% 110% at 50% 60%,rgba(6,18,48,.5),rgba(6,18,48,.9))}
.dn-schluss__in{position:relative;z-index:2;padding:30px 26px;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:760px}
.dn-schluss__t{font-family:var(--dn-antiqua);font-size:clamp(26px,3.6vw,40px);font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.05em}
.dn-schluss__t b{background:linear-gradient(180deg,#fdf3d4,var(--dn-metall) 60%,#8f6a1c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dn-schluss__akt{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* ---------- FAQ ---------- */
.dn-faq details{background:rgba(17,36,77,.86);border:1px solid var(--dn-kante2);border-radius:10px;padding:13px 16px;margin-bottom:9px}
.dn-faq details[open]{border-color:var(--dn-kante)}
.dn-faq summary{font-family:var(--dn-schmal);font-size:18px;font-weight:700;letter-spacing:.02em;cursor:pointer;color:#fff;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.dn-faq summary::-webkit-details-marker{display:none}
.dn-faq summary::after{content:"+";flex-shrink:0;color:var(--dn-blitz);font-size:20px;line-height:1}
.dn-faq details[open] summary::after{content:"–"}
.dn-faq details p{margin:10px 0 0;color:#c2cbe3;font-size:14.5px}

/* ---------- Fuss ---------- */
.dn-foot{border-top:1px solid var(--dn-kante);background:linear-gradient(180deg,rgba(6,18,48,.6),rgba(5,7,16,.92));margin-top:28px}
.dn-foot__in{padding:30px 26px;display:grid;grid-template-columns:1.6fr repeat(4,minmax(0,1fr));gap:24px}
.dn-foot__marke img{height:36px;width:auto;margin-bottom:10px}
.dn-foot__marke p{font-size:13px;color:#b6bfd8;line-height:1.6}
.dn-foot__soc{display:flex;gap:9px;margin-top:12px}
.dn-foot__soc a{width:34px;height:34px;border-radius:8px;border:1px solid var(--dn-kante2);background:var(--dn-panel);display:flex;align-items:center;justify-content:center}
.dn-foot__soc a:hover{border-color:var(--dn-blitz)}
.dn-foot__soc svg{width:17px;height:17px;fill:var(--dn-leise)}
.dn-foot__soc a:hover svg{fill:var(--dn-blitz)}
.dn-foot__sp .dn-h{font-family:var(--dn-schmal);font-size:14px;font-weight:700;letter-spacing:.13em;color:var(--dn-blitz-dunkel);text-transform:uppercase;margin-bottom:9px}
.dn-foot__sp a{display:block;color:#c5cee6;font-size:13px;padding:3px 0}
.dn-foot__sp a:hover{color:var(--dn-blitz-hell)}
.dn-foot__unten{border-top:1px solid var(--dn-kante2);padding:14px 24px 18px;text-align:center;font-size:11.8px;color:var(--dn-leise);line-height:1.6}
.dn-foot__unten b{color:var(--dn-stahl-hell);font-weight:600}
.dn-foot__zahl{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:14px 24px 0}
.dn-foot__zahl span{font-family:var(--dn-schmal);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--dn-leise);border:1px solid var(--dn-kante2);border-radius:5px;padding:4px 10px}

/* ---------- Leiste unten auf dem Telefon ---------- */
.dn-dock{display:none;position:fixed;left:0;right:0;bottom:0;z-index:120;padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:9px;background:linear-gradient(180deg,rgba(10,14,26,.96),rgba(5,7,11,.99));border-top:1px solid var(--dn-kante);box-shadow:0 -8px 28px rgba(0,0,0,.6)}
.dn-dock .dn-btn{flex:1;min-width:0;padding:12px 8px;font-size:15px}

/* ---------- Cookie ---------- */
.dn-cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:160;max-width:560px;margin:0 auto;background:linear-gradient(180deg,var(--dn-panel),#050f28);border:1px solid var(--dn-blitz);border-radius:12px;padding:16px 18px;box-shadow:0 22px 60px rgba(0,0,0,.7);display:none;max-height:calc(100vh - 28px);overflow-y:auto}
.dn-cookie.dn-zeig{display:block}
.dn-cookie p{font-size:12.5px;color:var(--dn-leise);margin:0 0 11px}
.dn-cookie a{color:var(--dn-stahl);text-decoration:underline}
.dn-cookie__kats{display:grid;gap:7px;margin:0 0 12px}
.dn-cookie__kat{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:8px 10px;border:1px solid var(--dn-kante2);border-radius:8px;background:rgba(88,196,255,.04)}
.dn-cookie__kat b{display:block;font-size:12.5px;color:var(--dn-text)}
.dn-cookie__kat small{display:block;font-size:11px;line-height:1.45;color:var(--dn-leise)}
/* Schalter statt Eingabefeld: die Seite kommt ohne ein einziges input aus */
.dn-schalter{width:38px;height:22px;flex-shrink:0;margin-top:2px;border-radius:12px;border:1px solid var(--dn-kante2);background:rgba(147,169,210,.16);cursor:pointer;padding:0;position:relative;transition:background .16s,border-color .16s}
.dn-schalter i{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--dn-leise);transition:transform .16s,background .16s}
.dn-schalter[aria-checked="true"]{background:rgba(88,196,255,.3);border-color:var(--dn-blitz)}
.dn-schalter[aria-checked="true"] i{transform:translateX(16px);background:var(--dn-blitz)}
.dn-schalter:disabled{cursor:not-allowed;opacity:.75}
.dn-schalter:focus-visible{outline:2px solid var(--dn-blitz);outline-offset:2px}
.dn-cookie__reihe{display:flex;gap:9px;flex-wrap:wrap}
.dn-cookie__reihe button{flex:1;min-width:120px}
.dn-fuss__cookie{margin-top:8px;background:none;border:0;padding:0;color:var(--dn-stahl);font:inherit;font-size:11.8px;text-decoration:underline;cursor:pointer}
.dn-fuss__cookie:hover{color:var(--dn-blitz-hell)}

/* ---------- Bonus-Fenster ---------- */
.dn-modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;background:rgba(4,6,14,.86);backdrop-filter:blur(4px);padding:18px}
.dn-modal.dn-auf{display:flex}
.dn-modal__karte{position:relative;width:100%;max-width:430px;background:linear-gradient(180deg,var(--dn-panel),#050f28);border:1px solid var(--dn-blitz);border-radius:14px;padding:28px 24px 22px;box-shadow:0 0 0 4px rgba(88,196,255,.1),0 30px 80px rgba(0,0,0,.75);max-height:calc(100vh - 36px);overflow-y:auto}
.dn-modal__x{position:absolute;top:12px;right:14px;background:none;border:0;color:var(--dn-blitz);font-size:17px;cursor:pointer;line-height:1}
.dn-modal__t{font-family:var(--dn-antiqua);font-size:22px;font-weight:700;color:#fff;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}
.dn-modal__s{font-size:13px;color:var(--dn-leise);margin-bottom:14px}
.dn-opt{display:flex;align-items:center;gap:12px;border:1px solid var(--dn-kante2);border-radius:10px;background:linear-gradient(180deg,rgba(147,169,210,.05),rgba(0,0,0,.2));padding:11px 13px;margin-bottom:9px;cursor:pointer;transition:.15s}
.dn-opt:hover{border-color:var(--dn-blitz)}
.dn-opt__ico{width:36px;height:36px;border-radius:8px;border:1px solid var(--dn-kante);background:linear-gradient(160deg,var(--dn-panel2),var(--dn-rail));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dn-opt__ico svg{width:19px;height:19px;stroke:var(--dn-blitz);fill:none;stroke-width:1.6}
.dn-opt__txt{flex:1;min-width:0;line-height:1.3}
.dn-opt__txt small{display:block;font-family:var(--dn-schmal);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--dn-leise)}
.dn-opt__txt b{font-size:14px;color:#fff;font-weight:600}
.dn-opt input{position:absolute;opacity:0;pointer-events:none}
.dn-opt__r{width:19px;height:19px;border-radius:50%;border:2px solid rgba(88,196,255,.5);flex-shrink:0;position:relative}
.dn-opt input:checked+.dn-opt__r{border-color:var(--dn-blitz)}
.dn-opt input:checked+.dn-opt__r::after{content:"";position:absolute;inset:3px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--dn-blitz-hell),var(--dn-blitz-dunkel))}
.dn-opt input:focus-visible+.dn-opt__r{outline:2px solid var(--dn-stahl);outline-offset:2px}
.dn-modal__fuss{text-align:center;margin-top:11px;font-size:12.5px;color:var(--dn-leise)}
.dn-modal__fuss a{color:#fff;text-decoration:underline;font-weight:600}

.dn-scrim{display:none}
.dn-scrim.dn-zeig{display:block;position:fixed;inset:0;background:rgba(0,0,0,.66);z-index:55}

/* ---------- Seiten ohne Inhalt: Weiterleitung und Recht ---------- */
.dn-schmalseite{max-width:860px;margin:0 auto;padding:26px 22px 60px}
.dn-schmalseite h1{font-size:clamp(24px,3vw,34px);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#fff;margin-bottom:10px}
.dn-schmalseite h2{font-size:20px;margin:22px 0 8px;color:var(--dn-blitz-hell);text-transform:none;letter-spacing:.02em}
.dn-schmalseite p{margin:0 0 12px}
.dn-stand{font-size:12.5px;color:var(--dn-leise);margin-bottom:18px}

/* Das Aktionsbild traegt nur dort, wo der Kasten wirklich breit ist */
@media(min-width:1280px){
  .dn-promo{background-image:url(bilder/promo-1300.webp);background-position:center;background-size:cover;background-repeat:no-repeat}
}
@media(min-width:1600px){
  .dn-promo{background-image:url(bilder/promo-1750.webp)}
}
/* Zwischen 601 und 1439 zieht sonst der Textblock die Hoehe des Startbildes hoch */
@media(min-width:601px) and (max-width:1439px){
  .dn-hero__in{max-width:78%;padding:22px 28px}
  .dn-hero__kick{font-size:13px;margin-bottom:8px}
  .dn-hero__sum{font-size:clamp(26px,3.3vw,38px)}
  .dn-hero__sub{font-size:14.5px;margin-top:8px}
  .dn-hero__akt{margin-top:14px;gap:9px}
  .dn-hero__akt .dn-btn--gross{padding:12px 26px;font-size:17px}
  .dn-hero__fein{font-size:11.5px;margin-top:9px}
}
/* Unter 780 px ist der Kasten so schmal, dass der Text den Slot hoeher zieht, als die
   Proportion des Arts erlaubt - bei 601 px waren das 5,6 % Beschnitt. Also enger fuehren,
   bis der Text unter die Sollhoehe passt. Gemessen mit arte-pruefen.js. */
@media(min-width:601px) and (max-width:780px){
  .dn-hero__in{max-width:97%;padding:8px 18px}
  .dn-hero__kick{font-size:12px;margin-bottom:5px}
  .dn-hero__sum{font-size:clamp(23px,4.1vw,30px)}
  .dn-hero__sub{font-size:13px;margin-top:5px;max-width:none}
  .dn-hero__akt{margin-top:8px;gap:8px}
  .dn-hero__akt .dn-btn--gross{padding:10px 20px;font-size:16px}
  .dn-hero__fein{font-size:10px;margin-top:4px;line-height:1.45}
}
@media(max-width:1080px){
  .dn-appzone{grid-template-columns:1fr;justify-items:center;text-align:center}
  .dn-appzone__txt{align-items:center}
  .dn-vorteile li{text-align:left}
  .dn-band5{grid-template-columns:repeat(3,1fr)}
  .dn-stufen{grid-template-columns:repeat(2,1fr)}
  .dn-foot__in{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dn-foot__marke{grid-column:1/-1}
}
@media(max-width:960px){
  .dn-shell{grid-template-columns:minmax(0,1fr)}
  .dn-rail{position:fixed;left:0;top:0;width:284px;height:100vh;z-index:60;transform:translateX(-100%);transition:transform .25s ease;box-shadow:0 0 60px rgba(0,0,0,.8);background:linear-gradient(180deg,var(--dn-rail),#06080f)}
  .dn-rail.dn-auf{transform:translateX(0)}
  .dn-burger{display:flex}
  .dn-head__bar{padding:8px 12px;gap:9px}
  .dn-logo{height:32px}
  .dn-btn{padding:10px 16px;font-size:15px}
  .dn-appbar__s{display:none}
  .dn-wrap{padding:14px 14px 0}
  /* Untergrenze 280, nicht 300: bei 601 px verlangt die Proportion 294 px, und eine
     zu hohe Untergrenze war es, die dort 2,1 % Beschnitt erzeugt hat. */
  .dn-hero{min-height:clamp(280px,51.3vw - 15px,500px)}
  .dn-abschnitt{padding:20px 18px}
  .dn-duo,.dn-stimmen{grid-template-columns:1fr}
  .dn-promo__in{max-width:100%}
}
@media(max-width:700px){
  /* Auf schmalen Geraeten bleibt im Kopf nur der blaue Knopf. Einloggen und
     Registrieren stehen dafuer in der Leiste am unteren Rand. */
  .dn-head__akt .dn-nur-breit{display:none}
  .dn-band5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dn-band5 li:last-child{grid-column:1/-1}
  .dn-foot__in{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 14px;gap:18px}
  .dn-dock{display:flex}
  body.dn-hat-dock{padding-bottom:74px}
  .dn-cookie{bottom:78px;max-height:calc(100vh - 92px)}
}
@media(max-width:600px){
  body{font-size:15px}
  /* Telefon: das Bild bekommt einen eigenen Kasten in seiner nativen Proportion 1:1
     und bleibt VOLLSTAENDIG sichtbar - keine Maske, kein Verlauf darueber. Der Text
     steht darunter auf der Panelflaeche, nicht auf dem Bild. */
  .dn-hero{background-image:none;display:block;min-height:0;align-items:stretch;background-color:var(--dn-panel)}
  .dn-hero::before{content:"";position:static;display:block;width:100%;aspect-ratio:1/1;background:url(bilder/held-mobil-760.webp) center top/cover no-repeat}
  .dn-hero__in{max-width:100%;padding:12px 16px 16px;text-align:center}
  /* Das Art ist quadratisch und darf nicht beschnitten werden. Damit der Knopf trotzdem
     in den ersten Bildschirm passt, faellt hier alles weg, was ihn nach unten schiebt:
     der Werbebalken ganz oben und der Fliesstext, der zwei Zeilen weiter unten ohnehin
     noch einmal steht. Gemessen auf 360/390/414/480/600. */
  .dn-appbar{display:none}
  .dn-hero__sub{display:none}
  .dn-hero__kick{font-size:12px;margin-bottom:4px}
  .dn-hero__sum{font-size:clamp(23px,6.8vw,34px)}
  .dn-hero__akt{margin-top:10px;gap:8px}
  .dn-hero__akt .dn-btn--gross{padding:12px 18px;font-size:17px}
  .dn-hero__fein{margin-top:8px;font-size:11px;line-height:1.45}
  .dn-hero__kick{justify-content:center}
  .dn-hero__sub{margin-left:auto;margin-right:auto}
  .dn-hero__akt{justify-content:center}
  .dn-hero__akt .dn-btn{flex:1;min-width:140px}
  .dn-promo{min-height:auto}
  .dn-promo__in{padding:20px 18px;text-align:center;align-items:center}
  .dn-promo .dn-btn{align-self:center}
  .dn-stufen{grid-template-columns:1fr}
  .dn-foot{margin-bottom:0}
  .dn-appzone__phone img{height:270px}
  .dn-schluss{min-height:auto}
  .dn-schluss__akt .dn-btn{width:100%}
  .dn-inhalt h1{font-size:26px}
  /* Auf dem Telefon stapeln, zwei Spalten quetschen die Bildunterschriften zu stark */
  .dn-band5{grid-template-columns:1fr}
  .dn-band5 li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;align-items:start;text-align:left;padding:13px 16px}
  .dn-band5 li svg{grid-row:1/span 2;margin-top:3px}
  .dn-wrap{padding:12px 12px 0}
  .dn-abschnitt{padding:18px 15px;margin:14px 0}
}
/* Ab 441 px lohnt die groessere Fassung: 600 css x 2 Pixeldichte = 1200 */
@media(min-width:441px) and (max-width:600px){
  .dn-hero::before{background-image:url(bilder/held-mobil-1160.webp)}
}
@media(max-width:380px){
  .dn-band5{grid-template-columns:1fr}
  .dn-band5 li:last-child{grid-column:auto}
  .dn-foot__in{grid-template-columns:1fr}
  .dn-btn{font-size:14px;padding:10px 12px}
  /* Auf 320 px reicht die Hoehe knapp nicht fuer Art plus Knopf. Hier zaehlt jeder
     Pixel ueber dem Knopf, darunter darf es ruhig weiterlaufen. */
  .dn-head__bar{min-height:48px;padding:5px 10px}
  .dn-logo{height:28px}
  .dn-hero__in{padding:8px 12px 14px}
  .dn-hero__kick{font-size:11px;margin-bottom:3px;letter-spacing:.14em}
  .dn-hero__akt{margin-top:8px}
  .dn-hero__akt .dn-btn--gross{padding:11px 12px;font-size:16px}
  .dn-dock{padding:7px 9px calc(7px + env(safe-area-inset-bottom))}
  .dn-dock .dn-btn{padding:11px 6px;font-size:14px}
}
/* Telefon quer: es bleiben keine 400 px Hoehe. Alles, was fest am Rand klebt, muss
   scrollbar werden, sonst liegen Knoepfe unter dem Falz. Gemessen mit falz.js. */
@media(orientation:landscape) and (max-height:620px){
  .dn-dock{display:none}
  body.dn-hat-dock{padding-bottom:0}
  .dn-appbar{display:none}
  /* Quer liegt der Balken sonst genau ueber dem Knopf im ersten Bildschirm.
     Deshalb rueckt er nach rechts und wird schmal, die linke Haelfte bleibt frei. */
  .dn-cookie{left:auto;right:10px;bottom:10px;margin:0;max-width:392px;padding:12px 14px;max-height:calc(100vh - 20px);overflow-y:auto}
  .dn-cookie p{font-size:11.5px;margin-bottom:9px}
  .dn-cookie__reihe button{min-width:110px;padding:9px 12px;font-size:13px}
  .dn-modal__karte{max-height:calc(100vh - 20px);overflow-y:auto;padding:20px 20px 16px}
  .dn-modal__t{font-size:19px}
  .dn-opt{padding:8px 12px;margin-bottom:7px}
  .dn-rail{justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 12px 20px}
  .dn-kachel{min-height:72px}
  .dn-hero{min-height:320px}
  .dn-hero__in{padding:16px 22px}
  .dn-schluss{min-height:0}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
