/* Compatibility fixes which preserve the established RISK-Project design. */
@media (max-width: 991px) {
  body.risk-project-site:not(.body-lead-page) { padding-top: 60px; }
}
@media (min-width: 992px) {
  body.risk-project-site { padding-top: 0; }
}
.top-bar button.nav-open { border: 0; background: transparent; color: inherit; }
.top-bar button.nav-open:focus-visible,
#easy-offcanvas a:focus-visible,
#easy-offcanvas button:focus-visible { outline: 3px solid #cd1719; outline-offset: -4px; }
#easy-offcanvas .navbar-nav > li > a { color: #33425b; }
#easy-offcanvas { overflow-y: auto; overscroll-behavior: contain; }
#easy-offcanvas .dropdown-menu.active { display: block; }
#easy-offcanvas .mobile-dropdown { height: 50px; border-top: 0; border-right: 0; border-bottom: 0; background: transparent; color: #33425b; }
.background-image.native-cover > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.background-image.native-cover > .risk-cover-picture { display: block; width: 100%; height: 100%; }
.background-image.native-cover > .risk-cover-picture > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
/* Preserve the brand's neutral palette while meeting text contrast on its
   white and #f5f7f8 surfaces; white copy on the dark CTA remains unchanged. */
.teaser-usp-icon p,
.teaser-module p,
.leistungen-teaser p,
.teaser-blog-item p { color: #59565d; }
.job-item .job-place,
.job-item .job-kind,
.job-item .job-beginning { color: #47556b; }
.footer .footer-nav li a { color: #47556b; }
.footer p { color: #59565d; }
.footer .footer-nav li a:hover,
.footer .footer-nav li a:focus { color: #cd1719; }
.owl-dots .owl-dot:focus-visible,
.owl-nav button:focus-visible { outline: 3px solid #cd1719; outline-offset: 2px; }
/* Reserve the existing carousel footprint. Native source cards remain readable
   without JavaScript; while waiting, preview only the current breakpoint's row. */
.testimonials-region { min-height: 354px; }
.testimonials-region .teaser-testimonials-slider:not(.owl-loaded) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}
.testimonials-pending .teaser-testimonials-slider:not(.owl-loaded) > .teaser-testimonials-box:nth-child(n+2) { display: none; }
@media (min-width: 678px) {
  .testimonials-region .teaser-testimonials-slider:not(.owl-loaded) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .testimonials-pending .teaser-testimonials-slider:not(.owl-loaded) > .teaser-testimonials-box:nth-child(-n+2) { display: block; }
}
@media (min-width: 1024px) {
  .testimonials-region .teaser-testimonials-slider:not(.owl-loaded) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .testimonials-pending .teaser-testimonials-slider:not(.owl-loaded) > .teaser-testimonials-box:nth-child(-n+3) { display: block; }
}
@media (prefers-reduced-motion: reduce) {
  .animate-box { opacity: 1 !important; }
  .animated-fast, .navbar-animated, .hamburger-inner,
  .hamburger-inner::before, .hamburger-inner::after { animation: none !important; transition: none !important; }
}
