.zd-hero .detail-top { grid-template-columns: 300px minmax(0,1fr); align-items:center; gap:65px; padding-block:65px 80px; }
.zd-hero .detail-cover { display:block; width:270px; max-width:100%; height:auto; border-radius:2px; }
.zd-hero .detail-copy h1 { font-family:Oswald,Montserrat,sans-serif; font-size:clamp(38px,4.5vw,58px); font-weight:400; letter-spacing:.02em; line-height:1.12; margin-bottom:15px; }
.zd-hero .detail-copy h3 { font-size:21px; line-height:1.5; color:#b0bbb6; margin-bottom:24px; }
.zd-hero .detail-copy > p { color:#b9c1bd; max-width:540px; line-height:1.8; }
.zd-hero .detail-copy .kicker { color:var(--green); font-size:10px; letter-spacing:.16em; }
.zd-facts { grid-template-columns:1fr .8fr 1.4fr; gap:15px; border-color:#333c36; }
.zd-facts b { font-size:12px; white-space:normal; line-height:1.6; }
.zd-hero-actions { display:flex; flex-direction:column; align-items:flex-start; gap:18px; margin-top:25px; }
.zd-hero-actions .button { font-size:11px; padding:16px 24px; }
.zd-quiet-link,.zd-back { color:#bdc8c1; font-size:12px; text-decoration:underline; text-underline-offset:5px; line-height:1.6; }
.zd-small { color:#89968d!important; font-size:11px; line-height:1.7; margin-top:14px!important; }
.zd-synopsis { padding-top:35px; padding-bottom:70px; }
.zd-synopsis .synopsis-lead { max-width:780px; line-height:1.8; font-size:21px; }
.zd-reading-strip { border-block:1px solid #2c382d; background:linear-gradient(100deg,#101811,#070b09); padding:50px 0; }
.zd-reading-strip > div { display:flex; gap:40px; align-items:center; justify-content:space-between; }
.zd-reading-strip h2 { font-weight:300; font-size:31px; line-height:1.3; }
.zd-reading-strip p:not(.kicker) { color:#a6b2a9; max-width:570px; font-size:13px; line-height:1.8; }
.zd-reading-strip .button { white-space:nowrap; font-size:11px; }
.zd-intro { color:#a1aea5; font-size:14px; line-height:1.9; }.zd-form-message { color:#c7d3c8; font-size:12px; line-height:1.8; }
.zd-dialog { box-sizing:border-box; width:min(560px,calc(100vw - 30px)); max-height:calc(100dvh - 30px); overflow:auto; margin:auto; padding:38px; background:#0e1511; color:#f1f5ef; border:1px solid var(--green); font-family:Montserrat,Arial,sans-serif; box-shadow:0 35px 90px #000; }
.zd-dialog::backdrop { background:rgba(0,0,0,.82); backdrop-filter:blur(3px); }
.zd-dialog h2 { font-size:31px; font-weight:300; line-height:1.3; margin:18px 0; }
.zd-dialog > p:not(.kicker) { font-size:13px; color:#a5b2a8; line-height:1.8; }
.zd-dialog-close { position:absolute; right:9px; top:7px; border:0; background:none; color:#c5cec6; width:36px; height:36px; font:28px Arial; cursor:pointer; }
.zd-access-form { display:grid; gap:12px; margin-top:24px; }
.zd-access-form > label:first-child { font-size:12px; color:#c6d0c7; }
.zd-access-form input[type=email] { width:100%; box-sizing:border-box; border:1px solid #536050; border-radius:0; background:#070c08; color:white; padding:15px; font:14px Montserrat,Arial,sans-serif; }
.zd-consent { display:flex; align-items:flex-start; gap:12px; font-size:11px; color:#bdc9be; line-height:1.8; margin-top:7px; }
.zd-consent input { flex:0 0 auto; margin-top:5px; accent-color:var(--green); width:17px; height:17px; }
.zd-consent a { text-decoration:underline; text-underline-offset:3px; color:#d8e2d7; }
.zd-form-hint { font-size:10px; line-height:1.7; color:#8d9c90; margin:0 0 7px; }
.zd-access-form .button { font-size:10px; width:100%; }
.zd-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.zd-reader { padding-block:50px 90px; }
.zd-reader-grid { display:grid; grid-template-columns:220px minmax(0,1fr); gap:60px; margin-top:45px; max-width:900px; }
.zd-reader-grid > img { display:block; width:100%; height:auto; border:1px solid #4a554b; }
.zd-reader h1{ font-size:clamp(32px,5vw,49px); font-weight:300; margin:15px 0 25px; }
.zd-reader h2 { font-size:25px; font-weight:300; }
.zd-reader-status,.zd-reader-grid p{ line-height:1.8; color:#b7c5ba; font-size:13px; }
.zd-formats .button { display:block; margin:14px 0; text-align:center; }
.zd-dialog button:focus-visible,.zd-dialog a:focus-visible,.zd-reader button:focus-visible{ outline:2px solid var(--green); outline-offset:4px; }
[hidden] { display:none!important; }
@media(max-width:780px) { .zd-hero .detail-top { grid-template-columns:210px minmax(0,1fr); gap:30px; }.zd-hero .detail-cover{width:210px}.zd-facts{grid-template-columns:1fr 1fr}.zd-reading-strip>div{flex-direction:column;align-items:flex-start;gap:20px}.zd-reader-grid{grid-template-columns:170px minmax(0,1fr);gap:30px} }
@media(max-width:560px) { .zd-hero .detail-top { grid-template-columns:1fr; gap:35px; padding-block:40px 45px; }.zd-hero .detail-cover-stage{justify-self:center}.zd-hero .detail-cover{width:min(58vw,240px)}.zd-hero .detail-copy h1{font-size:40px}.zd-hero .detail-copy h3{font-size:19px}.zd-facts{grid-template-columns:1fr 1fr}.zd-dialog{padding:30px 23px}.zd-dialog h2{font-size:28px}.zd-reader-grid{grid-template-columns:1fr;gap:30px}.zd-reader-grid>img{max-width:150px}.zd-reader{padding-top:30px}.zd-reading-strip h2{font-size:28px} }

@media(max-width:560px){.zd-access-form input[type=email]{font-size:16px}}

/* Überarbeiteter Entwurf: grauer Coverakzent, klare Texte, Downloadbereich. */
.zd-hero .detail-cover-stage { --cover-accent:185,188,186; }
.zd-hero .detail-cover-stage::after { background:linear-gradient(90deg,transparent,#b9bcba); box-shadow:none; }
.zd-hero .detail-cover-stage::before { animation:none; opacity:.45; }
.zd-reading-strip { border-color:#303532; background:#101412; }
.zd-reading-strip .button { background:transparent; border:1px solid var(--green); color:var(--green); }
.zd-reading-strip .button:hover,.zd-reading-strip .button:focus-visible { background:var(--green); color:#090c09; }



.zd-reader-grid>.shortstory-cover{align-self:start}
@media(max-width:560px){.zd-reader-grid>.shortstory-cover{max-width:150px}}

/* Lesebereich: dunkle Formulare und explizite Buttonflächen, auch in Safari. */
.zd-access-form input[type=email]{appearance:none;-webkit-appearance:none;color-scheme:dark;background:#080e0a;color:#f1f5ef;border:1px solid #627264;border-radius:4px;min-height:50px;font-size:16px;caret-color:var(--green)}
.zd-access-form input[type=email]::placeholder{color:#8e9c92;opacity:1}
.zd-access-form input[type=email]:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-color:var(--green)}
.zd-access-form input[type=email]:-webkit-autofill,.zd-access-form input[type=email]:-webkit-autofill:hover,.zd-access-form input[type=email]:-webkit-autofill:focus{-webkit-text-fill-color:#f1f5ef;caret-color:var(--green);-webkit-box-shadow:0 0 0 1000px #080e0a inset}
.zd-access-form .button,.zd-formats .button{appearance:none;-webkit-appearance:none;font-family:Montserrat,Arial,sans-serif;cursor:pointer;min-height:48px}
.zd-formats .button:not(.solid){background:#0e1511;border-color:var(--green);color:var(--green)}
.zd-formats .button:not(.solid):hover,.zd-formats .button:not(.solid):focus-visible{background:var(--green);color:#101510}
.zd-access-form .button:disabled,.zd-formats .button:disabled{opacity:.65;cursor:wait}
.zd-form-message:not(:empty){padding:16px 18px;border:1px solid #465449;border-left:3px solid var(--green);background:#131e16;font-size:14px;line-height:1.8;margin:12px 0 0}
.zd-form-message.is-error{border-left-color:#e79a91;background:#211713}

/* Lesebereich: Cover wie auf der Buchseite und gleichwertige Downloads. */
.zd-reader-grid>.shortstory-cover{padding:0;border:1px solid rgba(225,233,233,.62);border-radius:2px;box-shadow:0 14px 33px rgba(0,0,0,.6),0 0 0 1px rgba(185,188,186,.08)}
.zd-reader-grid>.shortstory-cover>img{width:100%;height:auto;border-radius:1px}
.zd-formats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:580px}
.zd-formats>p{grid-column:1/-1;margin:0}
.zd-formats .button,.zd-formats .button.solid,.zd-formats .button:not(.solid){display:flex;width:100%;margin:0;padding:14px 18px;background:var(--green);border:1px solid var(--green);color:#101510;font-size:12px;line-height:1.5;text-align:center;transition:background-color .18s,color .18s,border-color .18s}
@media(hover:hover){.zd-formats .button:hover,.zd-formats .button.solid:hover,.zd-formats .button:not(.solid):hover{background:#0e1511;border-color:var(--green);color:var(--green)}}
.zd-formats .button:focus-visible,.zd-formats .button.solid:focus-visible,.zd-formats .button:not(.solid):focus-visible{background:#0e1511;color:var(--green);outline:2px solid var(--green);outline-offset:4px}
@media(max-width:560px){.zd-formats{grid-template-columns:1fr;max-width:none}.zd-formats .button{font-size:12px}}
