/* ZEITUNG.IO NAVIGATION 54
   Clickable editorial headlines + fixed right-side return-to-top control. */

.story-title-link,
h1 > a.story-title-link,
h2 > a.story-title-link,
h3 > a.story-title-link{
  color:inherit!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
}

h1 > a.story-title-link,
h2 > a.story-title-link,
h3 > a.story-title-link{
  display:block!important;
  width:100%!important;
}

.story-title-link:hover{
  opacity:.78;
}

.story-title-link:focus-visible{
  outline:2px solid #ef4135!important;
  outline-offset:4px!important;
}

.io-back-to-top{
  position:fixed;
  right:clamp(10px,1.35vw,22px);
  bottom:clamp(18px,3vh,34px);
  z-index:9999;
  width:48px;
  height:58px;
  padding:0;
  border:1px solid rgba(255,255,255,.28);
  border-top:3px solid #ef4135;
  background:rgba(24,39,46,.96);
  color:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.16);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(10px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease,background .18s ease;
  cursor:pointer;
}

.io-back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.io-back-to-top:hover{
  background:#ef4135;
}

.io-back-to-top .io-up-arrow{
  font:700 23px/1 Arial,sans-serif;
  transform:translateY(-1px);
}

.io-back-to-top small{
  font:700 7px/1 Arial,sans-serif;
  letter-spacing:.16em;
}

.io-back-to-top:focus-visible{
  outline:2px solid #ef4135;
  outline-offset:3px;
}

@media (max-width:800px){
  .io-back-to-top{
    right:10px;
    bottom:76px;
    width:42px;
    height:50px;
  }
  .io-back-to-top .io-up-arrow{font-size:20px}
  .io-back-to-top small{font-size:6px}
}

@media (prefers-reduced-motion:reduce){
  .io-back-to-top{transition:none}
}

/* v54: clickable headlines must remain editorial text, never inherit CTA nowrap rules. */
h1 > a.story-title-link,
h2 > a.story-title-link,
h3 > a.story-title-link{
  white-space:normal!important;
  text-overflow:clip!important;
  overflow-wrap:inherit!important;
  word-break:inherit!important;
  hyphens:inherit!important;
}

/* HOME: after headings became links, the old CTA selector also matched them.
   Clamp the link itself so cards wrap naturally again. */
@media (min-width:801px){
  body main.publication-shell .country .countrystories>article h3{
    display:block!important;
    overflow:visible!important;
    max-height:none!important;
  }
  body main.publication-shell .country .countrystories>article h3>a.story-title-link{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:6!important;
    overflow:hidden!important;
    white-space:normal!important;
    max-height:6.18em!important;
  }
  body main.publication-shell .europe .europelead h2{
    display:block!important;
    overflow:visible!important;
    max-height:none!important;
  }
  body main.publication-shell .europe .europelead h2>a.story-title-link{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:4!important;
    overflow:hidden!important;
    white-space:normal!important;
    max-height:3.92em!important;
  }
  body main.publication-shell .europe .europebrief h3{
    display:block!important;
    overflow:visible!important;
    max-height:none!important;
  }
  body main.publication-shell .europe .europebrief h3>a.story-title-link{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:5!important;
    overflow:hidden!important;
    white-space:normal!important;
    max-height:5.2em!important;
  }
}

/* Internal pages get a server-rendered fallback arrow in v54, so it remains usable
   even when a browser delays or caches JavaScript. */
a.io-back-to-top{
  text-decoration:none!important;
}
.io-back-to-top.io-static-top{
  display:flex;
}

/* ZEITUNG.IO NAVIGATION 55
   Defensive headline links: editorial headlines must never inherit CTA positioning,
   sizing or arrows from generic card-link rules. */
h1 > a.story-title-link,
h2 > a.story-title-link,
h3 > a.story-title-link{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  float:none!important;
  transform:none!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
}
a.story-title-link::before,
a.story-title-link::after{
  content:none!important;
  display:none!important;
}

/* IO BRIEFING: reserve the lower CTA lane and clamp live text so every signal stays clean. */
@media (min-width:801px){
  body main.publication-shell .briefs>blockquote,
  body main.publication-shell .briefs>article{
    box-sizing:border-box!important;
    padding-bottom:66px!important;
  }
  body main.publication-shell .briefs>blockquote h3,
  body main.publication-shell .briefs>article h3{
    position:static!important;
    min-width:0!important;
    overflow:visible!important;
  }
  body main.publication-shell .briefs>blockquote h3>a.story-title-link{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:5!important;
    overflow:hidden!important;
    max-height:5.1em!important;
    white-space:normal!important;
  }
  body main.publication-shell .briefs>article h3>a.story-title-link{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:5!important;
    overflow:hidden!important;
    max-height:5.15em!important;
    white-space:normal!important;
  }
  body main.publication-shell .briefs>article p{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:6!important;
    overflow:hidden!important;
    max-height:9em!important;
  }
  body main.publication-shell .briefs>blockquote p{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:5!important;
    overflow:hidden!important;
    max-height:7.4em!important;
  }
  body main.publication-shell .briefs>blockquote>a:not(.story-title-link),
  body main.publication-shell .briefs>article>a:not(.story-title-link){
    position:absolute!important;
    bottom:30px!important;
    white-space:nowrap!important;
  }
  body main.publication-shell .briefs>blockquote>a:not(.story-title-link){
    bottom:46px!important;
  }
}

/* Brand always behaves as a home control. */
a.logo,a.brand,a.footlogo,a.footbrand{
  cursor:pointer!important;
  text-decoration:none!important;
}
a.logo:focus-visible,a.brand:focus-visible{
  outline:2px solid #ef4135!important;
  outline-offset:6px!important;
}
