/*
Theme Name: Uncode Child
Description: Child theme for Uncode theme
Author: Undsgn™
Author URI: http://www.undsgn.com
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/
:root {
    --f: 1;
    --theme-grey: #414F5A;
    --theme-dogwood-rose: #D4205C;
    --mainnavigation-nav-height: 132px;
    --blink-delay: 5s; /* Initial delay */
    --theme-white: #fff;
}
/* /app/themes/uncode-child/fonts/inter/inter100 - latin */
@font-face {
    font-family: 'Inter Tight';
    src: url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.eot');
    src: url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.woff2') format('woff2'),
        url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.woff') format('woff'),
        url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.ttf') format('truetype'),
        url('/app/themes/uncode-child/fonts/inter/InterTight-ExtraBold.svg#InterTight-ExtraBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 100;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-100.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter200 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 200;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-200.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter300 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-300.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/interregular - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-regular.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter500 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-500.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-600.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter700 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-700.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter800 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 800;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-800.svg#Inter') format('svg'); /* Legacy iOS */
  }
  
  /* /app/themes/uncode-child/fonts/inter/inter900 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 900;
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.eot'); /* IE9 Compat Modes */
    src: url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.woff2') format('woff2'), /* Super Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.woff') format('woff'), /* Modern Browsers */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/app/themes/uncode-child/fonts/inter/inter-v12-latin-900.svg#Inter') format('svg'); /* Legacy iOS */
  }
body , html{
    font-family: 'Inter' !important;
   
    font-weight: normal;
}
body.home , body.home p {
  font-size: clamp(18px, 2vw, 24px) !important;
  line-height: clamp(1.75, 2vw, 34px) !important;
}
body.home , body.home p.small {
  font-size: clamp(18px, 2vw, 18px) !important;
  line-height: normal!important;
  font-weight: normal !important;
}
 body.home p.bold {
  font-weight: bold !important;
}
h1, h2, h3, h4, h5, h6, p , a{
    font-family: 'Inter' !important;
}
.owl-carousel-wrapper .heading-bigtext h1,
.owl-carousel-wrapper .heading-bigtext h1 span,
.starter-slide .heading-bigtext h1,
.starter-slide .heading-bigtext h1 span{
  font-weight: 900;
  font-size: clamp(25px, 8vw, 84px) !important;
  line-height: clamp(50px, 8vw, 94px) !important;
  font-family: 'Inter' !important;
  font-variant: normal;
}
.fontsize-518774 {
  font: normal normal 900 36px/normal 'Inter' !important;
}
.home h2 {
  /* font: normal normal 900 40px/40px 'Inter' !important; */
  font-weight: 900;
  font-size: clamp(22px, 5vw, 40px) !important;
  line-height: clamp(28px, 5vw, 40px) !important;
  font-family: 'Inter' !important;
  font-style: normal;
  font-variant: normal;
  color: var(--theme-grey) !important;
  margin-bottom: 15px;
}
.menu-wrapper .row-menu.limit-width .row-menu-inner {
  padding: 0px 18px 0px 18px !important;
}
#logo-container-mobile {
  left: 0 !important;
}
.logo-container {
  padding: 27px 36px 42px 36px ;
}
.top-menu {
    background-color: var(--theme-grey);
    height: 45px !important;
    font-size: 20px;
}
.top-menu .row-menu {
    display: flex;
    justify-content: end;
}
.top-menu .row-menu {
    display: flex;
    justify-content: end;
}
.row-menu .menu-horizontal a{ 
    font-size: 22px !important;
}
.row-menu .menu-horizontal .menu-item-button a .btn{ 
    background-color: var(--theme-grey) !important;
    border-radius:45px !important;
    border: none !important;
    color: #fff !important;
    font-weight: bold;
    padding: 15px 60px !important;
}
.row-menu .menu-horizontal .menu-item-button a .btn:hover{ 
    background-color: var(--theme-dogwood-rose) !important;
}
.btn-container {
    display: flex !important;
    justify-content: end !important;
    padding-right: 53px !important;
}
.btn.btn-primary, .btn.btn-flat, .btn.btn-accent{
    background-color: var(--theme-grey) !important;
    border-radius:45px !important;
    border: none !important;
    color: #fff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 30px !important;
}

.btn.btn-primary:hover, .btn.btn-defaul.btn-primary:hover , .style-light .btn.btn-defaul.btn-primary:hover,
.style-light .btn-default:not(.btn-hover-nobg):not(.icon-animated):not(.btn-flat):hover
{
    background-color: var(--theme-dogwood-rose) !important;
    color: #fff !important;
}

/* Secondary-Button: wie Primary, aber in Dogwood-Rose; Hover in Grau */
.btn.btn-secondary{
    background-color: var(--theme-dogwood-rose) !important;
    border-radius: 45px !important;
    border: 1px solid var(--theme-dogwood-rose) !important;
    color: #fff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 30px !important;
}
.btn.btn-secondary:hover,
.style-light .btn.btn-secondary:not(.btn-hover-nobg):not(.icon-animated):not(.btn-flat):hover{
    background-color: var(--theme-grey) !important;
    border: 1px solid var(--theme-grey) !important;
    color: #fff !important;
}
.btn.btn-white {
  background-color: #fff !important;
  color: var(--theme-grey) !important;
  font-weight: bold !important;
}
.search-icon i.fa-search3::before{
    content: "";
    width: 22px !important;
    height: 22px !important;
    display: block;
    background-image: url('img/search.svg') !important;
}
.drop-menu { 
  left: auto !important;
}
.top-menu .row-menu .menu-horizontal{
    display: none;
}
.top-menu .hotline {
    display: inline-block;
    line-height: 45px !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    margin-left: 0 !important;
    text-align: end;
    padding-right: 57px;
}
.top-menu .hotline a {
    font-weight: 400 !important;
}
.top-menu.top-menu-padding .menu-bloginfo {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
}
.top-menu .menu-bloginfo .menu-bloginfo-inner{
    display: flex !important;
}
.wpml-ls-legacy-list-horizontal  {
  padding: 7px 0;
}
.wpml-ls-legacy-list-horizontal a {
  padding: 5px 0 6px 10px;
}
.wpml-ls-legacy-list-horizontal ul li {
  position: relative;
}
.wpml-ls-legacy-list-horizontal ul li:first-child {
  padding-right: 10px;
}
.wpml-ls-legacy-list-horizontal ul li:first-child::after {
  content: "";
  position: absolute;
  right: 0;
  top: 8px;
  width: 1px;
  color: white;
  background-color: white;
  height: 16px;
}
.hotline img {
    position: relative;
    top: 5px;
    margin-left: 0;
    margin-top: 0;
    margin-right: 15px;
}
.text-small p {
    font-size: 18px !important;
}
p strong{
    font-weight: 800;
}
.text-small p strong{
    font-weight: bold !important;
}
.post-body .bullet-list-arrow li::before , .bullet-list-arrow li::before{
  background-color: transparent;
  background-image: url('img/right-arrow.svg') !important;
  background-repeat: no-repeat;
  background-position: center center;
  width: 27px;
  height: 19px;
  
}
.form-section input:not([type="submit"]):not([type="button"]):not([type="number"]):not([type="checkbox"]):not([type="radio"]){
    border-right: none !important;
    border-top: none !important;
    border-left: 2px solid #ced1d2 !important;
    border-bottom: 2px solid #ced1d2 !important;
    background-color: none !important;
    box-shadow: none !important;
    width: 100% !important;
    padding: 5px 15px 5px 15px;
}
.form-section input:not([type="submit"]):not([type="button"]):not([type="number"]):not([type="checkbox"]):not([type="radio"]):focus {
    border-left: 2px solid #ced1d2 !important;
    border-bottom: 2px solid #ced1d2 !important;
    margin-bottom: 0;
}
.form-section input.btn:hover, .form-section .btn-accent:not(.btn-hover-nobg):not(.icon-animated):hover , .form-section .btn-accent:not(.btn-flat):not(.btn-hover-nobg):not(.icon-animated):not(.btn-text-skin):hover{
  background-color: var(--theme-dogwood-rose) !important;
  color: #fff !important;
 }

 .wpcf7-submit.btn-accent:not(.btn-hover-nobg):not(.icon-animated) {
  position: relative !important;
  background-color:var(--theme-grey) !important;
  left: 0 !important;
  color: #fff !important;
 }
 .wpcf7-submit.btn-accent:not(.btn-hover-nobg):not(.icon-animated):hover {
  background-color:var(--theme-dogwood-rose) !important;
  color: #fff !important;
 }
 div.wpcf7 form .wpcf7-response-output {
    width: 100% !important;
    display: block !important;
    margin: 100px 0 0 0 !important;
 }
 .captcha-div {
  display: block !important;
  width: 100% !important;
 }
.form-section input::placeholder {
    color: #323e48;
    opacity: 0.7;
    font-size: 18px !important;
  }
  .form-section input.btn {
    background-color: var(--theme-grey) !important;
    border-radius:45px !important;
    border: none !important;
    color: #fff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 60px !important;
    float: left;
    margin-right: 53px !important;
  }
  .wpcf7-inline-field {
    margin-top: 20px;
  }
  .form-section textarea {
    border-right: none !important;
    border-top: none !important;
    border-left: 2px solid #ced1d2 !important;
    border-bottom: 2px solid #ced1d2 !important;
  }
  .form-section textarea:focus {
    border-right: none !important;
    border-top: none !important;
    border-left: 2px solid #ced1d2 !important;
    border-bottom: 2px solid #ced1d2 !important;
  }
  .form-section textarea::placeholder {
    color: #323e48;
    opacity: 0.7;  
    font-size: 18px !important;
  }
  .wpcf7-not-valid-tip {
    margin: 12px 0 0 0 !important;
  }
  .site-footer,  .site-footer div {
    background-color: var(--theme-grey);
  }
  .site-footer {
    color: #fff !important;
  }
  .site-footer .footer-location-box .row-inner {
    padding-top: 35px !important;
  }
  .site-footer .footer-location-box .uncell {
    padding: 0 !important;
  }
  .site-footer .footer-location-box .vc_custom_heading_wrap{
    border-radius: 30px !important; 
    border: 1px solid #fff !important;
    padding: 35px 45px 55px 45px;
    font-size: 20px !important;
    text-align: center !important;
    font-weight: bold !important;
  }
  .site-footer .footer-location-box .vc_custom_heading_wrap p span{
    font-weight: bold !important;
    font-size: 20px !important;
}
  .site-footer .footer-location-box .uncell{
    border-radius: 30px !important;
    padding: 25px; 
  }
  .site-footer .footer-location-box .btn{
    text-transform:unset;
  }
  .site-footer .footer-location-box .btn-container {
    padding: 0 50px !important;
    margin-top: -50px !important;
  }
  .site-footer .footer-location-box .btn-container .btn {
    background-color: #fff !important;
    border-radius:45px !important;
    border: none !important;
    color: var(--theme-grey) !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 10px 60px !important;
  }
  .site-footer .btn-color-xsdn:not(.btn-flat):not(.btn-hover-nobg):not(.icon-animated):not(.btn-text-skin):hover {
    background: var(--theme-dogwood-rose) !important;
    color: #fff !important;
  }
  .site-footer .footer-location-box .btn-container .btn-color-xsdn:hover {
    background: var(--theme-dogwood-rose) !important;
    color: #fff !important;
  }
  .site-footer span {
    color: #fff !important;
    font-size: 20px !important;
    line-height: 32px !important;
  }
  .site-footer .footer-support  {
    border-bottom: 1px solid #fff;
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 40px !important;
  }
  .site-footer .footer-support > .row {
    padding: 0 !important;
  }
  .site-footer .footer-support .divider-wrapper {
    margin-top: 0 !important;
  }
  .site-footer .footer-support .uncont {
    line-height: 70px !important;
  }
  .site-footer .footer-support .heading-text {
    text-align: center;
  }
  .site-footer .footer-support .heading-text p {
    line-height: 0 !important;
    margin: 0 !important;
  }
  .sidenavigation-container a{
    width: 60px;
    height: 50px;
    background: var(--theme-grey) 0% 0% no-repeat padding-box;
    border-radius: 40px 0px 0px 40px;
    display: block;
    margin-bottom:10px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .sidenavigation-container a:hover{
    background: var(--theme-dogwood-rose);
  }
  .sidenavigation-container a img {
    max-width: 45% !important;
    height: 100%;
  }
  .sitenavigation {
    margin-bottom: 0;
  }

  .blog-slider-headline {
    margin-right: 0;
    margin-left: calc(50vw - 565px);
  }
  .blog-slider-main {
    margin-right: 0;
    margin-left: calc(50vw - 565px);
    padding-bottom: 100px;
  }
  .blog-slider-main .t-entry-text-tc{
    background-color: transparent !important;
  }
  .blog-slider-main .t-entry-title a{
    font-size: 18px !important;
  }
  .blog-slider-main .t-entry-excerpt p {
    font-size: 18px !important;
  }
  .blog-slider-main .t-entry-visual {
    border: none !important;
  }
.homepage-partner-section .wpb_row, .homepage-partner-section-2 .wpb_row{
  display: flex;
}
.homepage-partner-section , .homepage-partner-section-2 {
  min-height: 700px;
}
.homepage-partner-section-3 {
  min-height: 100px;
}
.home .owl-prev .btn-default {
  background-color: transparent !important;
}
.home .owl-prev {
  margin-left: 0 !important;
  display: block  !important;
  left: 45% !important;
  right: 49% !important;
  top:100% !important;
}
.home .owl-prev .fa-angle-left::before {
  content: '';
  background-image: url('img/owl-prev.svg') !important;
  background-repeat: no-repeat;
  background-position: center center;
  width: 50px !important;
  height: 33px !important;
  position: absolute !important;
}
.home .owl-next , .home .owl-carousel-container.single-gutter .owl-next, .home .wpb_column-logo-slider.single-gutter .owl-next{
  margin-right: 0 !important;
  display: block  !important;
  top:100% !important;
  right: 45% !important;
}
.logo-slider-lp .owl-carousel-wrapper{
  padding:0 0 5px 0;
}
.main-container .row-container.logo-slider-lp .row-parent {
  padding: 5px !important;
}
.home .owl-prev .owl-nav-container, .home  .owl-next .owl-nav-container {
  position: unset !important;
}
.home .owl-next .btn-default {
  background-color: transparent !important;
}
.home .owl-next .fa-angle-right::before {
  content: '';
  background-image: url('img/owl-next.svg') !important;
  background-repeat: no-repeat ;
  background-position: center center;
  width: 50px !important;
  height: 33px !important;
  position: absolute !important;
}
.home .tmb .t-entry-visual .t-overlay-content {
  vertical-align: bottom !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}
.home .tmb .t-entry-visual .t-overlay-content .single-block-padding{
  padding: 0 !important;
}
.home .tmb .t-entry-visual .t-overlay-content h3{
  padding: 10px 10px 60px 10px !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}
.t-overlay-content h3{ 
  text-align: center !important;
}
.wpb_column-media-slider .owl-carousel {
  padding-bottom: 220px;
}
.wpb_column-media-slider .owl-carousel .owl-next{
  top:70% !important;
  right: 45% !important;
}
.wpb_column-media-slider .owl-carousel .owl-prev{
  top:70% !important;
}
.wpb_column-media-slider .owl-carousel .owl-next {
  right: 45% !important;
}
#BorlabsCookieBox  p {
  color: inherit !important;
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: 1.4em !important;
}
/* POSTS */
.news-slider-section {
  
}
.post-single-main .btn-container{
  padding:30px 0 !important;
  justify-content: start;
}
.post-single-main .btn-container a{
  background-color: var(--theme-grey) !important;
    border-radius:45px !important;
    border: none !important;
    color: #fff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 30px !important;
}
.post-body .wp-block-search__label {
  display: none;
}
.post-body .wp-block-search__input{
  border-radius:45px !important;
}
.post-body .wp-block-search__button {
  background: transparent !important;
  padding: 10px !important;
  position: absolute !important;
  right: 0 !important;
  top: 10px !important;
  font-size: 0px !important;
  background-image: url('img/owl-next.svg') !important;
  background-repeat: no-repeat !important;
  background-position: center center;
  background-size: 70% !important;
  width: 50px;
  height: 30px;
}
.post-body h3.t-entry-title {
  font-size: 18px !important;
  font-weight: bold !important;
  margin-bottom: 20px !important;
  line-height: 28px !important;
  min-height: 56px !important;
}
.post-body ul li {
  list-style: none;
  position: relative;
  padding-left: 36px;
  font-size: clamp(18px, 2vw, 24px);
}
.post-body ul{
  padding: 0 !important;
}
.post-body ul li::before{
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 20px;
  height: 20px;
  background-color: #d4205c;
  border-radius: 100%;
  color: #fff;
  text-align: center;
  line-height: 30px;
  font-weight: 700;
}
.col-widgets-sidebar ul li {
  list-style: none;
  position: relative;
  padding: 3px 0;
  font-size: 18px !important;

}
.col-widgets-sidebar ul{
  padding: 10px 0 !important;
}
.col-widgets-sidebar ul li::before{
    display: none;
}
.col-widgets-sidebar ul li a:hover {
  color: var(--theme-dogwood-rose) !important;
}
.tagcloud .tag-cloud-link {
  border-radius:45px !important;
  padding: 10px 20px !important;
  font-weight: bold !important;
  background-color: #E8E8E8;
}
.tagcloud .tag-cloud-link:hover {
 color:#fff !important;
  background-color: var(--theme-dogwood-rose)
}
.featured-image-float {
  float: left;
  margin: 0 20px 0 0;
}
.post-body p img {
  float: left;
  margin: 0 20px 0 0;
}
.header-wrapper .header-content-inner {
  padding: 54px 16px 0 16px !important;
  /* border-bottom: 1px solid #b8b8b8; */
}
.main-container .row-container .double-top-padding {
  padding-top: 62px !important;
}
.archive-list-item {
  top: 20px !important;
}
.post-body .main-container .row-container .row-parent {
  padding: 36px 16px 36px 16px !important;
}
.panel-heading.wpb_accordion_header.ui-accordion-header {
  background-color: #fff;
}
.panel-group .panel-heading + .panel-collapse::before {
  border-bottom-width: 0px !important;
  border-bottom-style: solid;
}
.wpb_accordion_wrapper .panel {
  border: none !important;
}
.uncode-accordion:not(.default-typography) .panel-title > a > span {
  color: black !important;
}
.wpb_accordion_wrapper .panel .panel-heading {
  border-top: none !important;
  border-bottom: 1px solid #000 !important;
}
.panel .panel-collapse .panel-body{
  padding-top: 25px !important;
}
.panel-title.active > a span {
  font-weight: 500;
}
.panel-title.active > a span::after {
  transform: translateY(-50%) rotate(90deg);
  color: #000 !important;
  font-size: 1.8em !important;
}
.panel-title > a span::after{
 
  color: #000 !important;
  font-size: 1.8em !important;
}

@media (min-width: 961px) {

  .homepage-partner-section .wpb_column-logo-slider{
    display: flex;
    align-items: end !important;
    margin-right: 0;
    margin-left: calc(50vw - 565px);
    margin-top: 0 !important;
    /* padding-bottom: 100px !important; */
    height: 100% !important;
  }
  .homepage-partner-section .wpb_column-logo-slider > .uncol{
    min-height: 120px !important;
  }
  .homepage-partner-section .wpb_column-media-slider{
    display: flex;
    align-items: start !important;
    margin-right: 0;
    margin-left: calc(50vw - 565px);
    margin-top: 80px !important;
  }
  .homepage-partner-section-2 .wpb_column-logo-slider{
    display: flex;
    align-items: end !important;
    margin-right: 0;
    margin-top: 0 !important;
    /* padding-bottom: 100px !important; */
    height: 100% !important;
  }
  .homepage-partner-section-2 .wpb_column-logo-slider > .uncol{
    min-height: 120px !important;
  }
  .homepage-partner-section-2 .wpb_column-media-slider{
    display: flex;
    align-items: start !important;
    margin-right: 0;
    margin-left: calc(50vw - 565px);
    margin-top: 80px !important;
  }
  body[class*="hmenu"] div:not(.menu-accordion) > ul.menu-smart > li > a, .main-wrapper ul.menu-smart.menu-horizontal > li > a, .navbar-cta ul.menu-smart > li > a {
    top: 16px !important;
  }
  .main-container .post-body > .row-container .col-std-gutter > .row-inner .col-lg-8{
    padding-left: 34px;
    padding-right: 20px;
  }
 .post-single-main .row-container:last-child > .row-parent {
    padding: 36px 16px 56px 0 !important;
  }
}
.btn.btn-secondary.btn-accent {
  background-color: var(--theme-dogwood-rose) !important;
}
 .btn.btn-secondary.btn-accent:hover , .btn.btn-secondary.btn-accent:not(.btn-flat):not(.btn-hover-nobg):not(.icon-animated):not(.btn-text-skin):hover {
  background-color: var(--theme-grey) !important;
  color: white !important;
}
@media (max-width: 960px) {
  #menu-rce-webseite {
    
  }
  .box-container .menu-container .logo-container {
    padding: 27px 0 27px 0 !important;
  }
  #menu-rce-webseite li{
    padding-left: 18px !important;
    padding-right: 18px !important;
    margin:0 !important;
  }
  #menu-rce-webseite li a{
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin:0 !important;
    width: 100% !important;
  }
  #menu-rce-webseite li a .fa::before{
    display: inline-block !important;
   
  }
  #menu-rce-webseite li a .fa{
    display: none ;
  }
  #menu-rce-webseite li.menu-item-has-children a .fa{
    display: inline-block !important;
    position: absolute;
    right: 0;
    font-size: 1.2em;
  }
  #menu-rce-webseite li.menu-item-button a .btn{
    background-color: transparent !important;
      border-radius: 0 !important;
      border: none !important;
      color: unset !important;
      padding: unset !important;
      font-weight: 400 !important;
      letter-spacing: 0.05em;
    font-size: 20px !important;
    text-transform: none;
  }
  .navbar-main-after {
    padding-top: 0;
  }
  .navbar-main-after .search-icon{
    padding-left: 18px !important;
    padding-right: 18px !important;
    margin: 0 !important;
  }
  .navbar-main-after .search-icon a {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
  .mobile-menu-button {
    padding: 0 0 0 36px !important;
  }
  .sidenavigation-container {
    display: flex;
    width: 100%;
    justify-content: space-around;
    background: var(--theme-grey) 0% 0% no-repeat padding-box;
    align-items: center;
    padding-top: 10px;
  }
  .homepage-partner-section .wpb_column-logo-slider > .uncol{
    height: auto !important;
  }
  .homepage-partner-section .wpb_column-logo-slider{
    align-items: center !important;
    margin-left: auto;
    display: flex;
  }
  .homepage-partner-section .wpb_column-media-slider{
    align-items: center !important;
    margin-left: auto;
  }
  .wpb_column-media-slider .owl-carousel .owl-next{
    top:85% !important;
    right: 20% !important;
  }
  .wpb_column-media-slider .owl-carousel .owl-prev{
    top:85% !important;
    left: 0 !important;
  }
  .blog-slider-main {
    margin-right: 0;
    margin-left: unset;
    padding-bottom: 100px;
  }
  .home .blog-slider-main .owl-carousel .owl-next{
    top:100% !important;
    right: 25% !important;
  }
  .home .blog-slider-main .owl-carousel .owl-prev{
    top:100% !important;
    left: 0 !important;
  }
  .news-slider-section > .row{
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .starter-slide4 .background-inner, div.owl-item:nth-child(3) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) {
    background-position: right 0 !important;
  }
  .home .owl-carousel-wrapper .start-slider{
      min-height: 450px;
  }
  .home .owl-carousel-wrapper .wpb_column:nth-child(1){
    display: inline-block;
  }
  .home .owl-carousel-wrapper .wpb_column:nth-child(2){
  
   /* top: 45%; */
  }
  .top-menu .menu-bloginfo {
    padding: 0 0 0 0;
  }
 
  .top-menu .hotline {
    line-height: 30px !important;
    text-align: left;
  }
  .top-menu .hotline , .top-menu .hotline a{
    font-size: 12px !important;
  }
  .wpml-ls-legacy-list-horizontal ul li a{
     font-size: 12px !important;
  }
  .wpml-ls-legacy-list-horizontal ul li:first-child::after{
     height: 10px;
  }
  .btn-container {
    display: block !important;
    width: 100%;
    padding: 0 !important;
  }
  .btn-container .btn {
    width: 100% !important;
  }
  .form-section input.btn {
    margin-right: none !important;
    float: unset;
  }
  
  .footer-support {
    padding: 10px !important;
  }
  .site-footer .footer-location-box .btn-container{
  }
  .site-footer .footer-location-box .btn-container .btn{
   transform: unset !important;
    margin-top: -50px !important;
  }
  .featured-image-float {
    float: unset;
    display: block;
    margin: 0 20px 0 0;
    width: 100%;
  }
  .featured-image-float  img{
    width: 100%;
  }
  .wpcf7-inline-wrapper {
    margin-top: 0 !important;
  }
  .wpcf7-inline-wrapper .wpcf7-inline-field {
    width: 100% !important;
    display: block !important;
    margin-bottom: 20px !important;
  }
}

@media (max-width: 480px) {
  .home-header .background-inner{
    background-position: 85% center !important;
  }
  .btn-container .btn{
    width: 100% !important;
    max-width: 100% !important;
    transform: unset !important;
  }
  footer.site-footer .footer-last{
    padding-bottom: 70px !important;
  }
}

/* RCE Video Hero - video background + rotating headline/subheadline */
.rce-hero-rotator-wrap {
  position: relative;
  display: flex;
  /* Anchor the headline block to the bottom of the hero */
  align-items: flex-end;
  justify-content: center;
  /* Break out of Uncode's boxed .uncont container to fill the viewport width */
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  /* Fallback so the hero keeps its height even if no valid min-height is set */
  min-height: 70vh;
  overflow: hidden;
}

/* Bottom-weighted gradient scrim so white text stays legible over any video */
.rce-hero-rotator-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.65) 0%,
    rgba(0, 0, 0, 0.35) 30%,
    rgba(0, 0, 0, 0) 60%
  );
}

.rce-hero-rotator__video {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.rce-hero-rotator__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #000;
}

.rce-hero-rotator {
  position: relative;
  z-index: 2;
  /* Stack every slide in one grid cell so they share the exact same box */
  display: grid;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  box-sizing: border-box;
  /* Bottom-left placement, aligned to the site content column */
  padding: 0 clamp(24px, 5vw, 70px) clamp(40px, 9vh, 100px);
}

.rce-hero-rotator__slide {
  /* All slides occupy the same cell; the tallest one drives the height */
  grid-area: 1 / 1;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.7s ease, transform 0.7s ease, visibility 0s linear 0.7s;
}

.rce-hero-rotator__slide.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 0.7s ease, transform 0.7s ease, visibility 0s linear 0s;
}

.rce-hero-rotator--center {
  text-align: center;
}

.rce-hero-rotator--left {
  text-align: left;
}

.rce-hero-rotator--right {
  text-align: right;
}

.rce-hero-rotator__heading {
  margin: 0 0 0.4em;
  text-align: left;
  font-weight: 800;
  letter-spacing: -0.01em;
  font-size: clamp(25px, 8vw, 84px) !important;
  line-height: clamp(50px, 8vw, 94px) !important;
  font-family: 'Inter' !important;
  font-variant: normal;
  color: #ffffff !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.35);
}

.rce-hero-rotator__subheading {
  text-align: left;
  font-weight: 700;
  font-size: clamp(22px, 5vw, 40px) !important;
  line-height: clamp(28px, 5vw, 40px) !important;
  font-family: 'Inter' !important;
  font-style: normal;
  font-variant: normal;
  color: #ffffff !important;
  margin-bottom: 15px;
}
.ditty-item__content {
  text-align: center;
  min-height: 100px;
  padding-left: 20px;
  padding-right: 20px;
  font-size: clamp(22px, 3vw, 36px) !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Counter Card
---------------------------------------------------------- */
.counter-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  box-sizing: border-box;
  padding: clamp(24px, 3vw, 48px) clamp(20px, 2.5vw, 40px);
  border: 3px solid #d4205c;
  border-radius: clamp(20px, 2.5vw, 40px);
  background-color: rgba(0, 0, 0, 0.35);
  text-align: center;
}

/* Zahlen-Zeile: Uncode rendert sie als direktes <p>-Kind (ohne eigene Klasse).
   Doppelte Wrapper-Klasse, damit die Regel `body.home p` (Zeile 161) nicht gewinnt. */
.uncode-counter-wrap.counter-card > p {
  margin: 0 0 0.4em;
  line-height: 1.05 !important;
  font-weight: 800;
  font-size: clamp(40px, 5vw, 64px) !important;
  color: #d4205c !important;
}

.counter-card .counter,
.counter-card .counter-prefix,
.counter-card .counter-suffix {
  color: #d4205c !important;
}

.uncode-counter-wrap.counter-card .counter-text,
.uncode-counter-wrap.counter-card .counter-text p {
  margin: 0;
  color: #ffffff !important;
  font-weight: 400;
  font-size: clamp(17px, 1.4vw, 24px) !important;
  line-height: 1.55 !important;
}

.counter-card .separator-break {
  display: none;
}

/* Gleiche Höhe für nebeneinanderliegende Karten */
.uncode-counter-wrap.counter-card {
  margin: 0;
}

/* Video-Kacheln im Karussell
----------------------------------------------------------
   Bild-Kacheln erzeugen ihre Höhe über <div class="dummy" style="padding-top:180%">.
   Video-Kacheln haben kein dummy, sondern .self-video mit inline padding-top:56.25%
   und wären dadurch deutlich flacher.

   Fallback für den Hochformat-Fall; die exakte Höhe setzt rce-carousel-video.js.
   --rce-tile-ratio muss der Medien-Proportion des Grids und TILE_RATIO im Script
   entsprechen (aktuell 3:4-Einstellung => 180%). */
.tmb-carousel {
  --rce-tile-ratio: 180%;
}

.tmb-carousel .t-entry-visual-cont .fluid-object.self-video {
  padding-top: var(--rce-tile-ratio) !important;
}

/* Video den Container ausfüllen lassen. Querformat-Videos bekommen über data-merge
   eine breitere Kachel, sodass der Beschnitt durch cover minimal bleibt. */
.tmb-carousel .self-video .wp-video,
.tmb-carousel .self-video .mejs-container,
.tmb-carousel .self-video mediaelementwrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.tmb-carousel .self-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}
/* Kundenfeedback-Slider
----------------------------------------------------------
   Markup kommt aus dem Shortcode [rce_kundenfeedback] (functions.php).
   Logo im weissen Kreis links, Zitat rechts, Dots unter dem Kreis,
   Foto oben rechts ueber der Kante des dunklen Bandes.

   Die Sektionsregeln unten gelten fuer die Uncode-Row, die den Slider
   aufnimmt (Row-Settings > Extra class name: homepage-kundenfeedback-section).
   Sie liefern nur Hintergrund und Abstaende; das Layout steckt in .rce-kf. */
.homepage-kundenfeedback-section {
  --kf-lift: 64px;
  --kf-pad-y: clamp(48px, 5vw, 88px);
  --kf-circle: clamp(170px, 16vw, 250px);
  --kf-gap: clamp(32px, 6vw, 96px);
  position: relative;
}

/* Der dunkle Hintergrund startet um --kf-lift eingerueckt. In dem weissen
   Streifen darueber liegt das Kundenfoto. */
.homepage-kundenfeedback-section .background-wrapper {
  top: var(--kf-lift);
}

.homepage-kundenfeedback-section .background-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(40, 44, 48, 0.72);
}

.homepage-kundenfeedback-section .row-child {
  padding-top: 0 !important;
  padding-bottom: var(--kf-pad-y) !important;
}

/* Slider
   -------------------------------------------------------
   Aufbau: .rce-kf__head (statische Headline, wechselt nicht mit),
   darunter .rce-kf__slides mit den Folien und den Dots.

   Fallback-Werte, damit das Element auch ausserhalb der Sektion oben
   funktioniert. */
.rce-kf {
  --kf-lift: 64px;
  --kf-pad-y: clamp(48px, 5vw, 95px);
  --kf-circle: clamp(170px, 16vw, 230px);
  --kf-gap: clamp(32px, 6vw, 78px);
  /* Viewport-basiert statt in Prozent, damit die Hoehe unten in calc()
     ausrechenbar ist — Prozentwerte haetten dort keinen Bezugsrahmen. */
  --kf-photo-w: clamp(180px, 20vw, 350px);
  --kf-photo-h: calc(var(--kf-photo-w) * 2 / 3);
  position: relative;
  padding-top: calc(var(--kf-lift) + var(--kf-pad-y));
  color: #ffffff;
}

/* Der Kopfbereich haelt den Platz frei, um den das Foto unter die Kante des
   dunklen Bandes haengt. Sonst liefe die erste Zitatzeile unter das Bild.
   padding-right haelt zusaetzlich die Headline selbst davon frei. */
.rce-kf__head {
  min-height: max(0px, calc(var(--kf-photo-h) - var(--kf-lift) - var(--kf-pad-y) + 24px));
  /* Links auf die Textspalte eingerueckt, rechts am Foto vorbei. */
  padding-left: calc(var(--kf-circle) + var(--kf-gap));
  padding-right: calc(var(--kf-photo-w) + 40px);
}

.home h2.rce-kf__headline {
  color: #AFB2B4 !important;
  margin: 0 0 24px;
}

/* Alle Folien liegen in derselben Rasterzelle: der Container ist so hoch wie
   die laengste Folie und springt beim Wechsel nicht. */
.rce-kf__slides {
  display: grid;
}

.rce-kf__slide {
  grid-area: 1 / 1;
  display: grid;
  grid-template-columns: var(--kf-circle) minmax(0, 1fr);
  column-gap: var(--kf-gap);
  align-items: start;
  opacity: 0;
  visibility: hidden;
}

.rce-kf__slide.is-active {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}

/* Beim Wechsel blendet nur die abgehende Folie aus, die neue steht bereits voll
   sichtbar darunter. Ein gegenlaeufiger Crossfade wuerde die Deckkraft in der
   Mitte absacken lassen. */
.rce-kf__slide.is-leaving {
  opacity: 0;
  visibility: visible;
  z-index: 3;
  transition: opacity 0.4s ease;
}

/* Logo im weissen Kreis. Die Logos muessen dunkle Varianten sein — weisse
   Logos sind auf dem Kreis unsichtbar. */
.rce-kf__logo {
  grid-column: 1;
  grid-row: 1;
  width: var(--kf-circle);
  height: var(--kf-circle);
  border-radius: 50%;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rce-kf__logo-img {
  display: block;
  width: 62%;
  height: auto;
  margin: 0 auto;
}

/* min-width: 0 hebt das auto-Minimum des Grid-Items auf. Ohne das zieht die
   Intrinsic-Breite des Fotos den Textblock ueber die Spalte hinaus — auf
   schmalen Viewports lief der Satz rechts aus dem Bild. */
.rce-kf__body {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
}

/* Browser-Defaults fuer blockquote zuruecknehmen. */
.rce-kf__quote {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  max-width: 42em;
}

.rce-kf__quote p {
  color: #ffffff !important;
  font-weight: 500;
}

.rce-kf__quote p:last-child {
  margin-bottom: 0;
}

.rce-kf__author {
  color: #ffffff !important;
  margin-top: 1.5em;
  margin-bottom: 0;
}

.rce-kf__author span {
  display: block;
}

/* Foto oben rechts, im weissen Streifen ueber der Kante des dunklen Bandes.
   Bezugsrahmen ist .rce-kf — weder .rce-kf__slides noch .rce-kf__slide duerfen
   deshalb positioniert werden. Das feste Seitenverhaeltnis haelt die
   Platzreservierung in .rce-kf__head berechenbar; Fotos anderer Proportionen
   werden mittig beschnitten. */
.rce-kf__photo {
  position: absolute;
  top: -40px;
  right: 0;
  width: var(--kf-photo-w);
  aspect-ratio: 3 / 2;
}

.rce-kf__photo-img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Dots liegen in derselben Rasterzelle wie die Folien und werden von deren
   Oberkante um Kreis + Abstand eingerueckt. Dadurch sitzen sie unter dem Kreis,
   egal wie hoch die Headline darueber ausfaellt. */
.rce-kf__dots {
  grid-area: 1 / 1;
  align-self: start;
  justify-self: start;
  width: var(--kf-circle);
  margin-top: calc(var(--kf-circle) + 134px);
  text-align: center;
  z-index: 4;
}

.rce-kf__dot {
  background: none;
  border: 0;
  padding: 6px;
  margin: 0;
  line-height: 0;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.rce-kf__dot span {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  transition: background-color 0.2s ease;
}

.rce-kf__dot:hover span,
.rce-kf__dot.is-active span {
  background-color: #ffffff;
}

.rce-kf__dot:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 2px;
  border-radius: 50%;
}

/* Button unter dem Slider, rechtsbuendig in der Textspalte. Steht ausserhalb
   der Folien und wechselt deshalb nicht mit. Das Aussehen kommt aus der
   bestehenden .btn.btn-outline-Regel weiter unten in dieser Datei. */
.rce-kf__actions {
  display: flex;
  justify-content: flex-end;
  padding-left: calc(var(--kf-circle) + var(--kf-gap));
  margin-top: 24px;
}

.rce-kf__button {
  margin: 0 !important;
}

@media (max-width: 959px) {
  /* Kein Platzhalter mehr noetig: das Foto laeuft hier im Fluss mit, und ohne
     Spalte daneben faellt auch die Einrueckung weg. */
  .rce-kf__head {
    min-height: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .rce-kf__actions {
    justify-content: center;
    padding-left: 0;
  }

  .rce-kf__slide {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 32px;
  }

  /* Nur der Kreis wird zentriert — der Textblock bleibt wie vom Theme gesetzt. */
  .rce-kf__logo {
    justify-self: center;
  }

  .rce-kf__body {
    grid-column: 1;
    grid-row: 2;
  }

  .rce-kf__quote {
    max-width: none;
  }

  .rce-kf__photo {
    position: static;
    grid-column: 1;
    grid-row: 3;
    width: 100%;
    aspect-ratio: auto;
  }

  .rce-kf__photo-img {
    height: auto;
  }

  /* Aus der gestapelten Zelle heraus in die naechste Rasterzeile, also unter
     die Folien. */
  .rce-kf__dots {
    grid-area: auto;
    justify-self: stretch;
    width: 100%;
    margin-top: 24px;
  }
}
/* #Button-style */
.buttons-style,
input[type="submit"]:not(.btn-custom-typo):not(.btn-inherit),
input[type="reset"]:not(.btn-custom-typo):not(.btn-inherit),
input[type="button"]:not(.btn-custom-typo):not(.btn-inherit),
button[type="submit"]:not(.btn-custom-typo):not(.btn-inherit),
.btn:not(.btn-custom-typo):not(.btn-inherit),
.btn-link:not(.btn-custom-typo):not(.btn-inherit),
.tab-container:not(.default-typography) .nav-tabs,
.uncode-accordion:not(.default-typography) .panel-title > a > span,
.search_footer {
  font-weight: 700 !important;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif, -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif !important;
  letter-spacing: 0.1em;
  text-transform: none !important;
}
.btn.btn-outline{
    background-color: var(--theme-white) !important;
    border-radius:45px !important;
    border: 1px solid #3C4145;
    color: #000000 !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 30px !important;
}
.btn.btn-outline:hover, .style-light .btn-default.btn-outline:not(.icon-animated):not(.icon-automatic-video):hover{
    border: 1px solid var(--theme-dogwood-rose) !important;
    text-transform: inherit !important;
}

/* #Pill-Button-Grid — wiederverwendbares Layout
   Anwendung: Extra-Klasse "pill-button-grid" auf die Uncode-Row setzen
   (Row-Settings › Extra class name). Funktioniert mit beliebig vielen
   Spalten (col-lg-4, col-lg-3 …); die Buttons stapeln pro Spalte,
   werden gleich breit und mittig ausgerichtet. */
.pill-button-grid .uncont {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.pill-button-grid .btn-container {
    display: block;
    margin: 0;
    width: 100%;
}
.pill-button-grid .custom-link.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    margin: 0 !important;
}
/* Hervorgehobener (gefüllter) Button */
.pill-button-grid .custom-link.btn.btn-primary {
    background-color: var(--theme-dogwood-rose) !important;
    border: 1px solid var(--theme-dogwood-rose) !important;
    color: var(--theme-white) !important;
    border-radius: 45px !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 17.5px 30px !important;
    text-transform: none !important;
    margin-bottom: 10px !important;
}
.pill-button-grid .custom-link.btn.btn-primary:hover {
    filter: brightness(1);
}
 .homepage-background-c .background-inner {
    background-position: center 100% !important;
  }
/* Enge Buttons (langer/kurzer Text) auf gleicher Höhe halten */
@media (max-width: 991px) {
    .pill-button-grid .uncont {
        gap: 18px;
    }
}

/* Ninja Forms — Felder & Textarea transparent statt grauem Standard-Hintergrund
   (#f7f7f7 aus ninja-forms/assets/css/display-opinions-light.css, Regel
   ".nf-form-content input, .nf-form-content textarea"). Submit-Button,
   Checkbox/Radio und Hidden-Feld ausgenommen, die behalten ihr eigenes Styling. */
.ninja-forms-field:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
  background-color: transparent !important;
}