/* iCall Rechtsseiten — angeglichen an icall.html */
.header-nav-gradient {
  color: #635bff;
  background: linear-gradient(90deg, #635bff 0%, #7c4dff 35%, #00d4ff 65%, #ff8c42 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: filter 0.2s ease;
}
.header-nav-gradient:hover {
  background: linear-gradient(90deg, #7c4dff 0%, #00d4ff 40%, #ff8c42 70%, #ff80ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
.cta-stripe-btn {
  background: linear-gradient(135deg, #635bff 0%, #7c4dff 35%, #ff8c42 70%, #635bff 100%);
  background-size: 200% 200%;
  transition: background-position 0.3s ease, box-shadow 0.3s ease;
}
.cta-stripe-btn:hover {
  background-position: 100% 0;
  box-shadow: 0 4px 14px rgba(99, 91, 255, 0.35);
}
.footer-stripe-link {
  transition: color 0.2s ease;
  color: rgba(0, 0, 0, 0.6);
}
.footer-stripe-link:hover {
  color: #ff8c42;
}
.nav-link-underline {
  position: relative;
}
.nav-link-underline::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 50%;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, #635bff, #7c4dff, #ff8c42);
  transition: width 0.3s cubic-bezier(0.16, 1, 0.3, 1), left 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.nav-link-underline:hover::after {
  width: 80%;
  left: 10%;
}
.hover-lift-strong {
  transition: transform 0.25s cubic-bezier(0.33, 1, 0.68, 1);
}
@media (hover: hover) {
  .hover-lift-strong:hover {
    transform: translateY(0) scale(1.05);
  }
}
.header-nav-readable {
  filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.55)) drop-shadow(0 1px 1px rgba(255, 255, 255, 0.35));
}
html.dark .header-nav-readable {
  filter: drop-shadow(0 0 14px rgba(0, 0, 0, 0.75)) drop-shadow(0 1px 2px rgba(0, 0, 0, 0.9));
}
.header-bg {
  background: rgba(255, 255, 255, 0.38) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: none !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.045) !important;
}
html.dark .header-bg {
  background: rgba(12, 12, 14, 0.52) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}
.icall-bg-grid {
  transition: opacity 0.2s ease;
}
html.dark .icall-bg-grid {
  opacity: 0.045 !important;
  background-image: linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px) !important;
}
html.dark article {
  background-color: rgba(48, 48, 54, 0.94) !important;
}
html.dark article [class*="border-black"] {
  border-color: rgba(255, 255, 255, 0.14) !important;
}
html.dark article .text-black {
  color: #fafafa !important;
}
html.dark article [class*="text-black/75"] {
  color: rgba(240, 240, 243, 0.92) !important;
}
html.dark article [class*="text-black/45"] {
  color: rgba(180, 180, 188, 0.82) !important;
}
html.dark article a.font-medium {
  color: #a5b4fc !important;
}
html.dark article a.font-medium:hover {
  color: #c4b5fd !important;
}
html.dark .legal-heading-bar {
  border-left-color: rgba(165, 180, 252, 0.55);
  color: #fafafa !important;
}
html.dark footer {
  background-color: #0c0c0e !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  color: rgba(228, 228, 231, 0.72) !important;
}
html.dark footer [class*="text-black/60"] {
  color: rgba(200, 200, 208, 0.85) !important;
}
html.dark .footer-stripe-link {
  color: rgba(212, 212, 216, 0.88);
}
html.dark .footer-stripe-link:hover {
  color: #fdba74;
}
html.dark #cookie-banner {
  background-color: #0c0c0e !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.glow-orb {
  border-radius: 50%;
  filter: blur(52px);
  animation: legal-glow-pulse 8s ease-in-out infinite;
  pointer-events: none;
}
@keyframes legal-glow-pulse {
  0%,
  100% {
    opacity: 0.48;
  }
  50% {
    opacity: 0.62;
  }
}
.legal-heading-bar {
  border-left: 3px solid rgba(99, 91, 255, 0.45);
  padding-left: 0.75rem;
}
@media (prefers-reduced-transparency: reduce) {
  .header-bg {
    background: rgba(255, 255, 255, 0.94) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  html.dark .header-bg {
    background: rgba(12, 12, 14, 0.94) !important;
  }
}
html.icall-lite-visuals .header-bg {
  background: rgba(255, 255, 255, 0.94) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html.icall-lite-visuals.dark .header-bg {
  background: rgba(12, 12, 14, 0.94) !important;
}
html.icall-lite-visuals .glow-orb {
  animation: none !important;
  opacity: 0.2 !important;
  filter: blur(36px);
}
html.icall-lite-visuals.dark .glow-orb {
  opacity: 0.12 !important;
}
@media (prefers-reduced-motion: reduce) {
  .glow-orb {
    animation: none !important;
  }
}
