:where(.cta,.line-link,.quiet-link,.gate-action,.shop-action,.contact-action,.memorial-page-hero a,.author-social nav a,.socials a){
  min-height: 48px;
  padding: .9rem 1.05rem;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.025);
  color: #f5f4f7;
  font-family: Arial,Helvetica,sans-serif;
  font-size: .7rem;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: .13em;
  text-decoration: none;
  text-transform: uppercase;
  box-shadow: none;
  transition: transform .25s ease,border-color .25s ease,background-color .25s ease,color .25s ease;
}

:where(.cta,.line-link,.quiet-link,.gate-action,.shop-action,.contact-action,.memorial-page-hero a,.author-social nav a,.socials a):hover,
:where(.cta,.line-link,.quiet-link,.gate-action,.shop-action,.contact-action,.memorial-page-hero a,.author-social nav a,.socials a):focus-visible{
  transform: translateY(-3px);
  border-color: #00e5ff;
  background: rgba(125,77,255,.12);
  color: #fff;
}

:where(.cta,.line-link,.quiet-link,.gate-action,.shop-action,.contact-action,.memorial-page-hero a,.author-social nav a,.socials a):focus-visible{
  outline: 2px solid #00e5ff;
  outline-offset: 3px;
}

.hero-cta,.author-actions{align-items:stretch}
.hero-cta .quiet-link{text-align:left}
.line-link{margin-top:1.25rem;min-width:230px}
.closing .cta{margin-inline:auto}

/* Partnerschaft verwendet bewusst denselben ruhigen Stil wie „Folge mir“. */
.partnership .cta{
  margin-top:1.7rem;
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.025);
  color:#f5f4f7;
  box-shadow:none;
}
.partnership .cta:hover,
.partnership .cta:focus-visible{
  filter:none;
  border-color:#00e5ff;
  background:rgba(125,77,255,.12);
  color:#fff;
  box-shadow:none;
}

header nav a,.kicker,footer{font-size:.76rem}
.wordmark small::after{font-size:.58rem}
.book-shop .shop-label{font-size:.7rem}

/* Verhindert, dass die äußeren Buchstaben langer Farbzeilen angeschnitten werden. */
.home-book-copy h3 .accent-gradient{
  display:inline-block;
  margin-left:-.04em;
  padding:.03em .06em .08em;
  overflow:visible;
}

.accent-gradient.accent-cool{background-image:linear-gradient(100deg,#00d9f5,#2474ff)}
.accent-gradient.accent-violet{background-image:linear-gradient(100deg,#2474ff,#8a4dff,#e43bd0)}
.accent-gradient.accent-warm{background-image:linear-gradient(100deg,#b83fe4,#f22987,#ff7447)}

/* Etwas ruhigere Laufweite im großen Namenszug „Hartung“. */
.author-hero h1>span{letter-spacing:.005em;white-space:nowrap}
.author-hero h1 .rt-gap{display:inline-block;margin-left:.05em;font-style:normal}

.book-shop{
  width:fit-content;
  max-width:100%;
  margin-top:2rem;
  padding:1rem;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025);
}

.book-shop .shop-label{
  margin:0 0 .7rem;
  color:#a4a4af;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.book>.book-shop,.second-book>.book-shop{grid-column:1/-1;max-width:none}
.shop-actions{display:grid;grid-template-columns:minmax(0,260px);gap:.75rem}
.shop-action{width:100%}
.shop-action.shop-bod{border-color:rgba(226,180,35,.62)}
.shop-action.shop-thalia{border-color:rgba(0,158,113,.68)}
.shop-action.shop-hugendubel{border-color:rgba(239,121,38,.72)}
.shop-action.shop-amazon{border-color:rgba(255,153,0,.76)}
.shop-action.shop-bod:hover,.shop-action.shop-bod:focus-visible{border-color:#f0c329;background:rgba(226,180,35,.12)}
.shop-action.shop-thalia:hover,.shop-action.shop-thalia:focus-visible{border-color:#00ad7b;background:rgba(0,158,113,.12)}
.shop-action.shop-hugendubel:hover,.shop-action.shop-hugendubel:focus-visible{border-color:#ff8535;background:rgba(239,121,38,.12)}
.shop-action.shop-amazon:hover,.shop-action.shop-amazon:focus-visible{border-color:#ffad28;background:rgba(255,153,0,.12)}
@media(max-width:540px){
  :where(.cta,.line-link,.quiet-link,.gate-action,.shop-action,.contact-action,.memorial-page-hero a,.socials a){width:100%;min-width:0}
  .book-shop{width:100%}
  .shop-actions{grid-template-columns:1fr}
}

/* Ruhige, farbige Autorenzeile im Wortzeichen */
.wordmark small{
  text-align:center;
  font-size:0!important;
  color:transparent;
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
}
.wordmark small::after{
  content:attr(data-label);
  font-size:.52rem;
  letter-spacing:.22em;
}

.lang-switch{
  display:flex;
  align-items:center;
  gap:.2rem;
  margin-left:1rem;
  margin-right:1rem;
  padding:.18rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.045);
}

.lang-switch a{
  min-width:34px;
  min-height:30px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  line-height:1;
  background:transparent;
}

.lang-switch a.is-active{
  background:rgba(255,255,255,.075);
  box-shadow:0 0 0 1px rgba(255,255,255,.2);
}

.flag{
  width:21px;
  height:14px;
  display:block;
  border-radius:2px;
  box-shadow:0 0 0 1px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.16) inset;
  overflow:hidden;
}

.flag-de{
  background:linear-gradient(to bottom,#000 0 33.33%,#dd0000 33.33% 66.66%,#ffce00 66.66% 100%);
}

.flag-gb{
  background:
    linear-gradient(27deg,transparent 0 42%,#fff 42% 47%,#c8102e 47% 53%,#fff 53% 58%,transparent 58%),
    linear-gradient(153deg,transparent 0 42%,#fff 42% 47%,#c8102e 47% 53%,#fff 53% 58%,transparent 58%),
    linear-gradient(to bottom,transparent 0 35%,#fff 35% 45%,#c8102e 45% 55%,#fff 55% 65%,transparent 65%),
    linear-gradient(to right,transparent 0 35%,#fff 35% 45%,#c8102e 45% 55%,#fff 55% 65%,transparent 65%),
    #012169;
}

footer>div a{
  font-weight:800;
  background:var(--grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-decoration-color:#7d4dff;
}

/* Abschluss-Feinschliff: kompaktere Homepage ohne Inhaltsänderungen */
.author-hero{
  min-height:auto;
  padding-top:7.5rem;
  padding-bottom:4rem;
}
.author-hero h1{font-size:clamp(4.5rem,8.8vw,8.6rem);margin-bottom:2.1rem}
.author-focus{padding:clamp(4.5rem,7vw,7rem) 0}
.focus-line{font-size:clamp(2rem,3.25vw,3.35rem)}
.author-quote{padding-top:clamp(5rem,8vw,7.5rem);padding-bottom:clamp(5rem,8vw,7.5rem);font-size:clamp(2.1rem,4vw,4rem)}
.remains{padding:clamp(4.8rem,7.5vw,7.5rem) 0}
.remains h2,.author-social h2{font-size:clamp(3rem,5vw,5.1rem)}
.thanks{padding:clamp(2.8rem,5vw,5rem)}
.partnership{padding:clamp(5rem,8vw,8rem) 0}
.partnership h2{font-size:clamp(3.6rem,5.6vw,5.8rem)}
.home-books{padding:clamp(5rem,8vw,8rem) 0}
.home-section-heading{margin-bottom:clamp(3rem,5vw,5rem)}
.home-section-heading h2{font-size:clamp(3.4rem,5.6vw,5.8rem)}
.home-book-grid{gap:clamp(4rem,7vw,7rem)}
.home-book-cover{min-height:540px}
.home-book-cover img{max-height:580px}
.home-book-copy h3{font-size:clamp(3rem,4.8vw,4.9rem)}
.author-social{padding:clamp(5rem,8vw,7.5rem) 1.5rem}
#autor-inhalt,#geschichte,#buecher,#partnerschaft,#kontakt{scroll-margin-top:5.5rem}

@media(max-width:850px){
  .author-hero{padding-top:6.5rem;padding-bottom:3.5rem;gap:1.75rem}
  .author-hero h1{font-size:clamp(3.9rem,15vw,6.8rem);line-height:.78;margin:1rem 0 1.7rem}
  .author-lead{font-size:clamp(1.05rem,4vw,1.3rem)}
  .author-portrait{width:min(410px,84vw)}
  .author-focus,.remains,.partnership{padding:4rem 0;gap:2rem}
  .focus-line{font-size:clamp(1.85rem,6.5vw,2.8rem)}
  .author-quote{padding:4.25rem 1.25rem;font-size:clamp(1.85rem,6.3vw,2.8rem)}
  .remains h2,.author-social h2{font-size:clamp(2.8rem,10vw,4.3rem)}
  .remains>p{font-size:1.03rem}
  .thanks{padding:2.5rem 1.75rem}
  .partnership h2{font-size:clamp(3rem,11vw,4.8rem)}
  .partnership blockquote em,.partnership blockquote strong{font-size:clamp(1.65rem,6.2vw,2.5rem)}
  .home-books{padding:4.25rem 0}
  .home-section-heading{margin-bottom:3rem}
  .home-section-heading h2{font-size:clamp(3rem,10.5vw,4.7rem)}
  .home-book-grid{gap:4.5rem}
  .home-book-card,.home-book-card-reverse{gap:1.75rem}
  .home-book-cover img,.home-book-card-reverse .home-book-cover img{width:min(300px,68vw)}
  .home-book-copy h3{font-size:clamp(2.75rem,9.5vw,4.2rem)}
  .author-social{padding:4.25rem 1rem}
}

@media(max-width:520px){
  html,body{max-width:100%;overflow-x:hidden}
  header{width:100%;max-width:100vw;padding:.85rem 1rem}
  .wordmark{gap:.6rem;font-size:.68rem;letter-spacing:.13em}
  .wordmark small{display:block}
  .sigil{width:18px;height:30px}
  .lang-switch{margin-left:.55rem;margin-right:.45rem}
  .lang-switch a{min-width:30px;min-height:28px}
  .flag{width:20px;height:13px}
  .menu{flex:0 0 auto;margin-left:.75rem}
  .author-hero{width:calc(100% - 2rem)}
  .author-hero>*{min-width:0}
  .author-hero-copy{width:100%;max-width:100%;overflow:hidden}
  .author-hero h1{max-width:100%;font-size:clamp(3.3rem,15.2vw,4.8rem);letter-spacing:-.07em}
  .author-hero h1>span{white-space:nowrap}
  .author-lead{width:100%;max-width:100%;overflow-wrap:anywhere}
  .author-portrait{width:min(310px,82vw);max-width:100%;justify-self:center}
  .author-focus,.remains,.partnership,.home-books{width:calc(100% - 2rem)}
  .author-focus,.remains,.partnership{padding:3.5rem 0}
  .author-quote{padding:3.75rem 1rem}
  .thanks{width:calc(100% - 2rem);padding:2rem 1.25rem}
  .thanks .thanks-main{font-size:1.6rem}
  .home-books{padding:3.75rem 0}
  .home-section-heading h2{font-size:clamp(2.75rem,13vw,3.8rem)}
  .home-book-copy h3{font-size:clamp(2.55rem,12vw,3.6rem)}
  .home-book-cover img,.home-book-card-reverse .home-book-cover img{width:min(270px,72vw)}
  .home-book-copy>p:not(.kicker),.home-section-heading>p:last-child>div:last-child{font-size:1rem}
  .book-shop{max-width:340px;margin-top:1.5rem;padding:.85rem}
  .book-shop .shop-label{line-height:1.5;letter-spacing:.12em}
  .author-social{padding:3.75rem 1rem}
  .author-social h2{margin-bottom:2rem}
  footer{padding:1.6rem 1rem}
}
