html {
  scroll-behavior: smooth;
}

html #wpadminbar {
  overflow: hidden;
}

div {
  scroll-margin-top: 100px;
}

input {
  accent-color: var(--primary);
}
textarea {
  width: 100%;
  min-height: 7rem;
  field-sizing: content;
}

a {
  transition: 250ms;
}
.border-radius-kiwu {
  border-radius: var(--border-radius-kiwu);
}
.main a:hover {
  opacity: 0.7;
  text-decoration: none;
}

a[href^="tel:"] {
  cursor: default;
}

p:last-child {
  margin-bottom: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--primary);
  font-family: "Barlow Condensed", sans-serif;
  margin-bottom: 1.25rem;
}
.vc_row-o-equal-height .wpb_wrapper {
  height: 100%;
}
.wpb_wrapper :not(.testimonial) blockquote::before {
  font-family: "Font Awesome 7 Pro";
  content: "\f10d";
  display: inline-block;
  margin-right: 0.5rem;
  font-weight: 900;
  font-size: 3rem;
  line-height: 1;
  color: var(--primary);
  padding-bottom: 0.5rem;
}

.mt-n3 {
  margin-top: -2.25rem !important;
}

.bg-grey {
  background-color: var(--light-100);
}
.bg-green {
  background-color: rgb(194, 189, 4, 0.1);
}
.accordion ul,
.wpb_text_column ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.accordion ul li,
.wpb_text_column ul li {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 0.4rem;
}
.accordion ul li::before,
.wpb_text_column ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 1rem;
  height: 1rem;
  background-image: url("/wp-content/themes/kinderwunsch/assets/images/layout/hand.png");
  background-size: contain;
  background-repeat: no-repeat;
}
.vc_row .vc_column-inner {
  margin-bottom: 80px;
}
.module-button .btn {
  padding: 0.7rem 1.9rem;
}

.btn.btn-inverse {
  background: var(--primary);
  color: #fff;
  border: 2px solid var(--primary);
}
.btn.btn-inverse:hover,
.btn.btn-inverse:focus {
  background: #fff;
  color: var(--primary);
}

.header-logo-sticky {
  width: auto !important;
  height: 44px !important;
  padding-top: 6px;
}

.home .page-header {
  display: none !important;
}

.page-header .parallax-background {
  background-position-y: 50%;
}
.page-header.page-header-background h1 {
  position: relative;
  top: -24px;
}
.page-header.bg-color-green {
  background: #c2bd04;
  background: linear-gradient(90deg, rgba(194, 189, 4, 1) 0%, rgba(194, 189, 4, 1) 15%, rgba(222, 220, 127, 0.8) 100%);
}

.modul-headline .headlinesmall {
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--primary);
  position: relative;
  font-family: "Patrick Hand";
  line-height: 1;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 0.25rem;
}
.modul-headline .headlinesmall img {
  width: 22px;
  height: 22px;
}
.modul-headline.text-center .headlinesmall {
  justify-content: center;
}
.modul-headline.text-end .headlinesmall {
  justify-content: end;
}
.modul-headline h2 {
  font-size: 2.75rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--textcolor);
  font-family: "Barlow Condensed", sans-serif;
}
.modul-headline h3 {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--textcolor);
  font-family: "Barlow Condensed", sans-serif;
}
.modul-headline h4 {
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--textcolor);
  font-family: "Barlow Condensed", sans-serif;
}
.modul-headline h5 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--textcolor);
  font-family: "Barlow Condensed", sans-serif;
}
.modul-headline h6 {
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.1;
  color: var(--textcolor);
  font-family: "Barlow Condensed", sans-serif;
}
.faqbordered {
  border: 1px solid var(--light-100);
  border-radius: var(--border-radius-kiwu);
  padding: 1.6rem 0.9rem;
}
.accordion-bggradient {
  background: var(--primary);
  background: linear-gradient(90deg, rgba(194, 189, 4, 1) 0%, rgba(194, 189, 4, 1) 15%, rgba(222, 220, 127, 0.8) 100%);
  padding: 1.6rem 0.9rem;
  border-radius: var(--border-radius-kiwu);
}
.floatingimage2 {
  bottom: 20px;
  left: 35px;
}
.floatingimage2 img {
  max-width: 140px !important;
}
.floatingimage2 .ytplay > div {
  font-size: 72px;
  position: relative;
}
.floatingimage2 .ytplay a:hover {
  color: #fff;
}
.floatingimagebtn {
  bottom: 1.5rem;
  right: 1.5rem;
}
#kwimagedivider {
  display: flex;
  align-content: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  box-shadow: 0 0 0 999px rgb(0, 0, 0, 0.55) inset;
}
#kwimagedivider .modul-headline {
}
#kwimagedivider .wrapper-imgdividertextblock {
  padding: 6rem 0;
}

#kwimagedivider .headlinesmall {
  font-size: 1.75rem;
  justify-content: center;
  color: var(--light-100);
}
#kwimagedivider h2 {
  font-size: 3rem;
  color: var(--light-100);
}

.newsheadline .headlinesmall {
  justify-content: center;
  font-size: 1.75rem;
}
.newsheadline .modul-headline h2 {
  font-size: 3.5rem;
  line-height: 1;
}
.newsteaser .post-content h4 {
  font-family: "Barlow Condensed";
}
.owl-carousel:not(.nav-arrows-1):not(.show-nav-title) .owl-nav button[class*="owl-"] {
  transition: 300ms;
  border-color: transparent;
}

.owl-carousel:not(.nav-arrows-1):not(.show-nav-title) .owl-nav button[class*="owl-"]:hover,
.owl-carousel:not(.nav-arrows-1):not(.show-nav-title) .owl-nav button[class*="owl-"].hover {
  background-color: var(--tertiary);
}
.owl-carousel .owl-nav button.owl-prev::before,
.owl-carousel .owl-nav button.owl-next::before {
  font-size: 0.8rem;
}

.counter i {
  margin: 0 auto;
}
.counters.counters-lg [class*="fa-"] {
  font-size: 4.5rem;
  line-height: 4.5rem;
}

.bibtextbox > div {
  background-color: var(--primary);
  border-radius: var(--border-radius-kiwu);
  z-index: 1;
}
.bibtextbox :is(.headlinesmall, h2) {
  color: #fff !important;
}
.iconboxoutlined {
  border: 2px solid var(--primary);
  display: inline-block;
  padding: 1.5rem;
  border-radius: var(--border-radius-kiwu);
  transition: 250ms;
}
.iconboxoutlined:hover {
  background-color: var(--primary);
}
.iconboxoutlined:hover .iconbox-text {
  color: #fff;
}
.iconboxoutlined .iconbox-text {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--textcolor);
  transition: 250ms;
}
.iconboxoutlined .iconbox-text a {
  color: inherit;
}
.iconboxoutlined:hover,
.iconboxoutlined:hover p {
  color: #fff;
  text-decoration: none;
}
.iconboxoutlined img {
  width: 36px;
  height: 36px;
}
.iconboxoutlined:hover img {
  filter: brightness(0) invert(1);
}
.iconboxoutlined p,
.iconboxoutlined i {
  margin-bottom: 0;
  font-size: 1.25rem;
}

.vimeobox {
  padding: 56.25% 0 0 0;
  position: relative;
  border: 1px solid #e8e8e8;
}
.videobox-wrapper-module {
  border: 1px solid #e8e8e8;
}
.videobox-wrapper-module a {
  display: block;
  position: relative;
}
.videobox-wrapper-module i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 64px;
  color: var(--primary);
}

.paginavigation {
  margin-top: 2rem;
}

.paginavigation ul {
  padding-left: 0;
}

.paginavigation li a,
.paginavigation li a:hover,
.paginavigation li.active a,
.paginavigation li.disabled {
  color: #fff;
  text-decoration: none;
}

.paginavigation li a.btn {
  font-size: 16px;
  line-height: 1;
}

.paginavigation li.btnseite {
  position: relative;
  top: -3px;
}

.paginavigation li.btnseite .btn {
  border: 0;
}

.paginavigation li {
  display: inline;
}

.paginavigation li a,
.paginavigation li a:hover,
.paginavigation li.active a,
.paginavigation li.disabled {
  background-color: #fff;
  color: var(--primary);
  border: 2px solid var(--primary);

  border-radius: 3px;
  cursor: pointer;
  padding: 12px;
  padding: 0.75rem;
  transition: 300ms;
}

.paginavigation li a:hover,
.paginavigation li.active a {
  color: #fff;
  background-color: var(--primary);
}

.newsteaserbox {
  border: 1px solid var(--light-100);
  border-radius: var(--border-radius-kiwu);
  padding: 1.6rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  transition: 250ms;
}
.newsteaserbox__image img {
  height: 200px;
  object-fit: cover;
  width: 100%;
  object-position: center;
}
.accordion-toggle i {
  margin-right: 0.5rem;
  font-size: 1.25rem;
  color: var(--primary);
  transition: 250ms;
}

.ei-wrap {
  position: relative;
  overflow: hidden;
}

.ei-wrap::before {
  content: "";
  position: absolute;
  width: 280px;
  height: 275px;
  right: 15%;
  bottom: 15%;
  background-image: url("/wp-content/themes/kinderwunsch/assets/images/layout/ei-2-bg.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transform-origin: 100% 100%;
  animation: ei-swim 30s ease-in-out infinite;
  will-change: transform;
  pointer-events: none;
}

/* „Schwimmen“ – minimaler Drift */
@keyframes ei-swim {
  0% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
  25% {
    transform: translate3d(-16px, -12px, 0) rotate(0.1deg) scale(1.01);
  }
  50% {
    transform: translate3d(-32px, 12px, 0) rotate(0deg) scale(1.03);
  }
  75% {
    transform: translate3d(-18px, 24px, 0) rotate(-0.1deg) scale(1.01);
  }
  100% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ei-wrap::before {
    animation: none;
  }
}

.ei-wrap2::after {
  content: "";
  position: absolute;
  width: 360px;
  height: 388px;
  left: 15%;
  top: 15%;
  background-image: url("/wp-content/themes/kinderwunsch/assets/images/layout/ei-3-bg.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transform-origin: 0% 0%;
  animation: ei-swim-3 30s ease-in-out infinite;
  will-change: transform;
  pointer-events: none;
  z-index: -1;
}

@keyframes ei-swim-3 {
  0% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
  25% {
    transform: translate3d(40px, 28px, 0) rotate(0.1deg) scale(1.01);
  }
  50% {
    transform: translate3d(58px, -28px, 0) rotate(0deg) scale(1.03);
  }
  75% {
    transform: translate3d(42px, 36px, 0) rotate(-0.1deg) scale(1.01);
  }
  100% {
    transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ei-wrap2::after {
    animation: none;
  }
}

@media (max-width: 576px) {
  .ei-wrap2::after {
    left: clamp(8px, 10vw, 15%);
    top: clamp(8px, 10vw, 15%);
    animation: none;
    transform: none;
  }
}

.box-gradient {
  background: #c2bd04;
  background: linear-gradient(45deg, rgba(194, 189, 4, 1) 0%, rgba(194, 189, 4, 1) 15%, rgba(222, 220, 127, 0.9) 100%);
  border: 1px solid var(--light-100);
  border-radius: var(--border-radius-kiwu);
  padding: 2.5rem 1rem;
}
.box-gradient :is(i, div, h3) {
  color: #fff;
}
.box-gradient .box-gradient-icon i {
  font-size: 6rem;
}
.box-gradient .box-gradient-text i {
  top: 4px;
  position: relative;
}

.custom-section {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 992px) {
  .custom-section .custom-section-left-content,
  .custom-section .custom-section-right-content {
    width: 34vw;
  }
  .custom-section .custom-section-middle-content {
    width: 40vw;
  }
}

.modul-greenbox {
  background-color: var(--primary);
  background: linear-gradient(
    135deg,
    rgba(194, 189, 4, 1) 0%,
    rgba(194, 189, 4, 1) 15%,
    rgba(222, 220, 127, 0.95) 100%
  );
  padding: 2rem 1.5rem;
  border-radius: var(--border-radius-kiwu);
  color: #fff;
}
.modul-greenbox p,
.modul-greenbox a {
  color: #fff;
}
.vc_row-o-equal-height .card {
  height: 100%;
}

textarea.form-control {
  height: 120px;
}

.wpcf7 label {
  margin-bottom: 0.3rem;
  font-weight: 600;
  font-size: 1.1rem;
}
.wpcf7 strong {
  font-weight: 600;
  font-size: 1.1rem;
}
.wpcf7 .wpcf7-form-control-wrap label {
  font-size: 1rem;
}
.wpcf7-form .row > div {
  margin-bottom: 1rem;
}
div[data-wpcf7-id="602"] .wpcf7-form .row > div {
  margin-bottom: 1.5rem;
}
.wpcf7-list-item {
  margin: 0 1em 0 0;
}
.wpcf7-list-item label {
  display: flex;
  gap: 0.4rem;
  align-items: start;
}
.wpcf7-acceptance .wpcf7-list-item label input[type="checkbox"] {
  position: relative;
  top: 5px;
}
.wpcf7-list-item label input[type="checkbox"] {
  position: relative;
  top: 6px;
  width: 18px;
  height: 18px;
}
.wpcf7-list-item label input[type="radio"] {
  position: relative;
  top: 8px;
}
.wpcf7-list-item-label {
  margin: 0;
  font-weight: 400;
}
.wpcf7-radio.form-control,
.wpcf7-checkbox.form-control {
  border: none;
  padding-left: 0;
}

.sticky-btn {
  position: fixed;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  background: #fff;
  color: var(--primary);
  font-size: 2.3rem;
  border-radius: 100px;
  box-shadow: 5px 5px 15px rgb(0, 0, 0, 0.2);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease, visibility 0.6s ease;
  z-index: 9999;
  transition: 300ms;
  width: 5rem;
  height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sticky-btn.show {
  opacity: 1;
  visibility: visible;
}

.sticky-btn:hover {
  background: var(--primary);
  text-decoration: none !important;
  color: #fff;
}

#policy h2 {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: 1.5rem;
  padding-top: 1rem;
}
#policy h3 {
  font-size: 1.75em;
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: 0.9rem;
  padding-top: 1rem;
}
#policy h4 {
  font-size: 1.4em;
  font-weight: 600;
  line-height: 1.25;
  padding-bottom: 0.4rem;
}
#footer a {
  color: var(--textcolor);
}
#footer .menu-item:not(:last-of-type) .nav-link {
  padding-right: 1rem !important;
}

.footerimage2 {
  max-width: 120px;
  max-height: 80px;
}

.labelrezept {
  display: none;
}

.card-body {
  padding: 1rem 1.5rem;
}
