/* ARCANUOVA 20.95 — Calabria Pura V1.29 als Referenz
   Nur Typografie + Sprachleiste. Layout, Farben, Logos, Schnecke und Siegel bleiben unangetastet. */
:root{
  --arc-cal-font:Georgia,"Times New Roman",serif;
  --arc-cal-text-size:1.15rem;
  --arc-cal-text-line:1.74;
  --arc-cal-lang-height:40px;
}

/* Lesetypografie wie Calabria Pura V1.29 */
html body{
  font-family:var(--arc-cal-font)!important;
  font-size:var(--arc-cal-text-size)!important;
  line-height:var(--arc-cal-text-line)!important;
}
html body main :where(
  .content,.legal-page,.thought-page,.section,.forum-bridge,.built-thoughts-teaser,
  .projekt-kompass,.built-copy,.author-info-card__content,.author-info-card__text,
  .footer-sight-card__content,.intro-story,.thought-story,.rules,.category,.card
) p:not(.eyebrow):not(.lead):not(.image-caption):not(.small):not(.translation-note),
html body main :where(
  .content,.legal-page,.thought-page,.section,.forum-bridge,.built-thoughts-teaser,
  .projekt-kompass,.built-copy,.author-info-card__content,.author-info-card__text,
  .footer-sight-card__content,.intro-story,.thought-story,.rules,.category,.card
) li{
  font-family:var(--arc-cal-font)!important;
  font-size:var(--arc-cal-text-size)!important;
  line-height:var(--arc-cal-text-line)!important;
  letter-spacing:.005em!important;
}

/* Navigation wie Calabria Pura V1.29, Zahn-Icon bleibt reines Markenelement. */
html body .site-header .main-nav a:not(.nav-tooth-link){
  font-family:var(--arc-cal-font)!important;
  font-size:1.15rem!important;
  font-weight:400!important;
  line-height:1.18!important;
  letter-spacing:.002em!important;
}

/* Sprachleiste 1:1 nach dem ruhigen Calabria-Pura-Prinzip. */
html{scroll-padding-top:48px!important}
html body{padding-top:var(--arc-cal-lang-height)!important}
html body .language-strip.lang-harbors{
  position:fixed!important;
  inset:0 0 auto 0!important;
  top:0!important;left:0!important;right:0!important;
  width:100%!important;max-width:none!important;
  height:var(--arc-cal-lang-height)!important;min-height:0!important;
  z-index:2147483000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  flex-wrap:nowrap!important;gap:.42rem!important;
  margin:0!important;padding:.35rem .65rem!important;
  background:rgba(250,246,235,.97)!important;
  border:0!important;border-bottom:1px solid rgba(91,72,42,.22)!important;border-radius:0!important;
  box-shadow:0 2px 10px rgba(70,52,25,.06)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;
  transform:none!important;opacity:1!important;visibility:visible!important;
  line-height:1!important;text-align:center!important;
}
html body .language-strip.lang-harbors::-webkit-scrollbar{display:none!important}
html body .language-strip.lang-harbors a,
html body .language-strip.lang-harbors a:hover,
html body .language-strip.lang-harbors a:focus-visible,
html body .language-strip.lang-harbors a.active,
html body .language-strip.lang-harbors a.is-current{
  flex:0 0 auto!important;
  min-width:66px!important;width:auto!important;height:27px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:.38rem!important;margin:0!important;padding:.16rem .55rem!important;
  border:1px solid rgba(91,72,42,.18)!important;border-radius:999px!important;
  background:rgba(255,255,255,.58)!important;
  color:#514736!important;text-decoration:none!important;text-transform:none!important;
  font:700 .76rem/1 var(--arc-cal-font)!important;
  letter-spacing:0!important;text-shadow:none!important;
  box-shadow:0 2px 7px rgba(70,52,25,.045)!important;
  white-space:nowrap!important;
}
html body .language-strip.lang-harbors a:hover,
html body .language-strip.lang-harbors a:focus-visible{
  background:#fffaf0!important;border-color:rgba(145,98,25,.28)!important;
}
html body .language-strip.lang-harbors a.active,
html body .language-strip.lang-harbors a.is-current{
  background:#f6e6b6!important;border-color:rgba(145,98,25,.38)!important;
  box-shadow:0 2px 8px rgba(80,55,15,.10)!important;
}
html body .language-strip.lang-harbors a.active .code,
html body .language-strip.lang-harbors a.is-current .code{
  border:0!important;padding-bottom:0!important;
}
html body .language-strip.lang-harbors a::before{content:none!important;display:none!important}
html body .language-strip.lang-harbors .flag{
  display:block!important;width:22px!important;height:14px!important;
  min-width:22px!important;max-width:22px!important;min-height:14px!important;max-height:14px!important;
  flex:0 0 22px!important;border-radius:2px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  box-shadow:inset 0 0 0 .5px rgba(255,255,255,.22)!important;
  font-size:0!important;line-height:0!important;
}
html body .language-strip.lang-harbors .code{
  font:700 .76rem/1 var(--arc-cal-font)!important;
  white-space:nowrap!important;letter-spacing:.025em!important;
}
html body .language-strip.lang-harbors .lang-de .flag{background:linear-gradient(#111 0 33.333%,#d00 33.333% 66.666%,#ffce00 66.666%)!important}
html body .language-strip.lang-harbors .lang-it .flag{background:linear-gradient(90deg,#009246 0 33.333%,#fff 33.333% 66.666%,#ce2b37 66.666%)!important}
html body .language-strip.lang-harbors .lang-en .flag{background:linear-gradient(135deg,#012169 0 42%,#fff 42% 55%,#c8102e 55% 68%,#012169 68%)!important}
html body .language-strip.lang-harbors .lang-es .flag{background:linear-gradient(#aa151b 0 25%,#f1bf00 25% 75%,#aa151b 75%)!important}
html body .language-strip.lang-harbors .lang-fr .flag{background:linear-gradient(90deg,#0055a4 0 33.333%,#fff 33.333% 66.666%,#ef4135 66.666%)!important}
html body .language-strip.lang-harbors .lang-pt .flag{background:linear-gradient(90deg,#009739 0 38%,#ffdf00 38% 70%,#002776 70%)!important}
html body .language-strip.lang-harbors .lang-ru .flag{background:linear-gradient(#fff 0 33.333%,#1c57a7 33.333% 66.666%,#d52b1e 66.666%)!important}
html body .language-strip.lang-harbors .lang-hu .flag{background:linear-gradient(#ce2939 0 33.333%,#fff 33.333% 66.666%,#477050 66.666%)!important}
html body .site-header{top:auto!important}

@media(max-width:1280px){
  html body .site-header .main-nav a:not(.nav-tooth-link){font-size:1.06rem!important}
}
@media(max-width:800px){
  html body .language-strip.lang-harbors{
    justify-content:flex-start!important;gap:.32rem!important;padding:.32rem .45rem!important;
  }
  html body .language-strip.lang-harbors a,
  html body .language-strip.lang-harbors a:hover,
  html body .language-strip.lang-harbors a:focus-visible,
  html body .language-strip.lang-harbors a.active,
  html body .language-strip.lang-harbors a.is-current{
    min-width:62px!important;height:26px!important;padding:.14rem .48rem!important;font-size:.72rem!important;
  }
  html body .language-strip.lang-harbors .flag{
    width:20px!important;height:13px!important;min-width:20px!important;max-width:20px!important;
    min-height:13px!important;max-height:13px!important;flex-basis:20px!important;
  }
  html body .language-strip.lang-harbors .code{font-size:.72rem!important}
  html body .site-header .main-nav a:not(.nav-tooth-link){font-size:1.02rem!important;line-height:1.2!important}
}
@media(max-width:520px){
  :root{--arc-cal-lang-height:38px}
  html body .language-strip.lang-harbors a{min-width:60px!important}
}
@media print{
  html body{padding-top:0!important}
  html body .language-strip.lang-harbors{display:none!important}
}
