/* Separate Vorschau: Originaldateien bleiben unverändert. */
html { scroll-padding-top: 64px; }
.jump-nav { position: sticky; top: 0; z-index: 10; clear: both; display:flex;
  justify-content:center; gap:clamp(0px, 2vw, 24px); background:#101112; border-bottom:1px solid #333;
  font-size:15px; line-height:1.3; font-weight:700; }
.jump-nav a, .jump-nav a:visited { display:flex; align-items:center; min-height:48px;
  padding:10px 12px; color:#f5f5f5; text-decoration:none; white-space:nowrap; }
.jump-nav a:hover, .jump-nav a:focus-visible { color:#65cef4; background:#222; }
.text-block p { font-size:inherit; line-height:inherit; margin:0 0 1.5em; }
.text-block p:last-child { margin-bottom:0; }
.section-title, .subsection-title { position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.back-top { clear:both; text-align:center; padding:25px; font-size:16px; line-height:1.5; }
.back-top a, .back-top a:visited { color:#ddd; text-decoration:none; display:inline-block; padding:8px 16px; }
.text-block { overflow-wrap:break-word; }
.responsive-subline { text-transform:uppercase; }
@media (max-width:900px) {
  .responsive-subline { text-transform:none; }
  .nicolas, .leistung, #leistungblau, #leistungrot { font-size:17px !important; line-height:1.6 !important; }
  .nicolas .text-block, .leistung .text-block, #leistungblau .text-block, #leistungrot .text-block {
    padding:28px clamp(22px,4.2vw,36px); text-align:left; }
  .section-title { position:static; width:auto; height:auto; clip-path:none; white-space:normal;
    clear:both; margin:0; padding:20px clamp(22px,4.2vw,36px) 0; background:#fff;
    font-size:21px; line-height:1.3; font-weight:800; }
  .section-title + .nicolas { margin-top:0; }
  .section-title + .nicolas .text-block { padding-top:18px; }
  #ueber-mich + .section-title, #film-design + .section-title, .subpage-title { background:#ECF8FF; }
  .subsection-title { position:static; width:auto; height:auto; clip-path:none; white-space:normal;
    margin:2em 0 1em; font-size:21px; line-height:1.3; font-weight:800; }
  .section-title + .leistung { margin-top:0; }
  #magic .book-link, #sieben .book-link, #top1500 .book-link { padding:24px; font-size:20px; line-height:1.5; }
  .text-block a { text-underline-offset:3px; }
}
@media (min-width:481px) and (max-width:900px) {
  .nicolas, .leistung, #leistungblau, #leistungrot { font-size:19px !important; line-height:1.65 !important; }
}
@media (max-width:360px) {
  .jump-nav { font-size:13px; gap:0; }
  .jump-nav a { padding-inline:10px; }
}
@media (prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
