/* ========== GLOBAL FIXES ========== */
body {
  overflow-x: hidden !important;
}



#ct-builder h1 {
  color: #fff;
}
#ct-builder .headline-anim-span{
    color: red !important;
}

h1.headline-anim {
    color:transparent !important;
}

h1.headline-anim.fade-out {
    color:#FFFFFF !important;
}


html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

.ct-text-block a:hover {
    font-weight: 700 !important;
  }

/* Silbentrennung für Überschriften auf kleineren Bildschirmen */
@media (max-width: 992px) {
  h1, h2, h3, h4, h5, h6 {
    //hyphens: auto;
    //overflow-wrap: break-word;
    //word-break: normal;
    text-align: left !important;
  }
  #ai-summary-placeholder {
    font-size: 16px;
    line-height: 26px;
  }
  .ct-text-block{
    text-align: left !important;
  }

  .oxy-rich-text{
    text-align: left !important;
  }
}

/* Oxygen-Builder Fix */
.oxygen-builder-body .comment-sidebar {
  display: none !important;
}

@media (min-width: 1440px) {
  .ct-inner-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* ========== FONTS ========== */
@font-face {
  font-family: 'Manrope';
  src: url('/wp-content/uploads/fonts/manrope/subset-Manrope-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Manrope';
  src: url('/wp-content/uploads/fonts/manrope/subset-Manrope-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Manrope';
  src: url('/wp-content/uploads/fonts/manrope/subset-Manrope-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ========== TYPOGRAPHIE DESKTOP ========== */
h1,
.ct-section h1,
.ct-text-block h1,
.oxy-h1 {
  font-size: 64px;
  font-weight: 500;
  line-height: 76px;
  font-style: normal;
}

h2,
.ct-section h2,
.ct-text-block h2,
.oxy-h2 {
  font-size: 48px;
  font-weight: 500;
  line-height:58px;
  font-style: normal;
}

h3,
.ct-section h3,
.ct-text-block h3,
.oxy-h3 {
  font-size: 32px;
  font-weight: 500;
  font-style: normal;
}

h4,
.ct-section h4,
.ct-text-block h4,
.oxy-h4 {
  font-size: 28px;
  font-weight: 500;
  font-style: normal;
  line-height: 40px;
}

/* Standard Textblöcke */
body, p, .ct-text-block {
  font-size: 20px;
  font-weight: 400;
  font-style: normal;
  line-height: 32px ;
}

/* ========== LINKS ========== */
.insights-page .oxy-rich-text:not(.links-dark-background) p a,
.insights-page .oxy-rich-text:not(.links-dark-background) li a,
.insights-page .ct-inner-content .oxy-rich-text:not(.links-dark-background) a {
    font-weight: 700;
    text-decoration: underline;
}

.anchor-padding p a {
    line-height: 22px !important;
}

.insights-page .oxy-rich-text:not(.links-dark-background) p a:hover,
.insights-page .oxy-rich-text:not(.links-dark-background) li a:hover,
.insights-page .ct-inner-content .oxy-rich-text:not(.links-dark-background) a:hover {
    font-weight: 700;
    text-decoration: underline;
    color:#545454;
}

.wp-theme-oxygen-is-not-a-theme .oxy-rich-text p strong a,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text li strong a,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text ul li strong a {
  font-weight: 700;
  text-decoration: underline;
}

.wp-theme-oxygen-is-not-a-theme .oxy-rich-text p a strong,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text ul li a strong {
  font-weight: 700;
  text-decoration: underline;
}

/* Hover-Farbe */
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text p strong a:hover,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text li strong a:hover,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text ul li strong a:hover,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text p a strong:hover,
.wp-theme-oxygen-is-not-a-theme .oxy-rich-text ul li a strong:hover {
  color: #545454;
}


.insights-page .oxy-rich-text.links-dark-background a {
    text-decoration: none;
}

.faq-answer a{
  font-weight: 700;
  text-decoration: underline ;
}
.faq-answer a:hover{
  font-weight: 700;
  text-decoration: underline;
  color:#545454;
}



/* ========== TABLET (1023px und kleiner) ========== */
@media (max-width: 1023px) {
  h1,
  .ct-section h1,
  .ct-text-block h1,
  .oxy-h1 {
    font-size: 50px !important;
    line-height: 60px !important;
  }
  h2,
  .ct-section h2,
  .ct-text-block h2,
  .oxy-h2 {
    font-size: 37px !important;
    line-height: 46px !important;
  }
  h3,
  .ct-section h3,
  .ct-text-block h3,
  .oxy-h3 {
    font-size: 26px !important;
    line-height: 35px !important;
  }
  h4,
  .ct-section h4,
  .ct-text-block h4,
  .oxy-h4 {
    font-size: 23px !important;
    line-height: 32px !important;
  }
  body, p, .ct-text-block {
    font-size: 18px !important;
    line-height: 25px !important;
  }
}

/* ========== MOBILE (767px und kleiner) ========== */
@media (max-width: 767px) {
  h1,
  .ct-section h1,
  .ct-text-block h1,
  .oxy-h1 {
    font-size: 34px !important;
    line-height: 44px !important;
  }
  h2,
  .ct-section h2,
  .ct-text-block h2,
  .oxy-h2 {
    font-size: 26px !important;
    line-height: 34px !important;
  }
  h3,
  .ct-section h3,
  .ct-text-block h3,
  .oxy-h3 {
    font-size: 20px !important;
    line-height: 26px !important;
  }
  h4,
  .ct-section h4,
  .ct-text-block h4,
  .oxy-h4 {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  body, p, .ct-text-block {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  
}

/* ========== ENDE ========== */



@media (max-width: 992px) {
  /* Oberste Section */
  .section-padding > div {
    gap: 25px !important;
  }
  .dark-section .custom-tabs-dropdown .dropdown-arrow {
     background-repeat: no-repeat;
     background-position: center;
     background-size: contain;
     background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20.704 8.707L12.704 16.707L11.997 17.414L11.29 16.707L3.28998 8.707L3.99698 8L11.997 16L19.997 8L20.704 8.707Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
  }

  section {
    padding: 0 16px !important;
  }

  /* Erste Verschachtelung */
  .section-padding > div {
      gap: 64px !important;
      padding:48px 0 !important;
      flex-direction: column-reverse !important;
      flex-direction: column !important;
  }

  /* Erste Verschachtelung */
  .section-padding > div > div {
      gap: 32px !important;
      padding: 0 !important;
      flex-direction: column-reverse !important;
      flex-direction: column !important;
  }

  .section-padding > div > div > div {
      gap: 16px !important;
      text-align: left !important;
      padding: 0 !important;
      flex-direction: column-reverse !important;
      flex-direction: column !important;
  }

  .oxy-tab-content > div {
      gap: 16px !important;
      padding: 16px;
  }

  .module-teaser-imgl > div > div{
    padding:16px !important;
  }

  .oxy-tab-content > div > div {
      gap: 16px !important;
      padding:0 !important;
  }

  .anitext > .ct-div-block {
    padding: 0 16px !important;
  }

  .button-grau-auf-schwarz {
    text-align: center !important;
    justify-content: center;
}

  .mobile-video-block{
    width:100% !important;
  }


  

  .dark-section .oxy-tab-content > div > div:nth-child(2) {
      padding-top: 10px;
      padding-right: 10px;
      padding-bottom: 10px;
      padding-left: 10px;
  }


  .oxy-post-title {
    font-size: 20px;
    line-height: 26px;
  }

  .oxy-post {
    gap: clamp(16px, 2vw, 16px);
    padding:16px !important;
  }

  .custom-tabs-dropdown{
    background-color: #2c2c2c !Important;
  }

  .oxy-posts{
    gap: 16px !important;
  }

  .oxy-post-title{
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .oxy-post-content p{
    font-size: 16px !important;
  }



  .footer-dropdown-toggle{
    border-bottom: 1px solid #545454 !important;
  }
  .footer-gap > div > div {
    gap: 15px !important;
  }
}



/* Mint für Placeholder-Spans */
span[id^="ct-placeholder-"],
[data-anchor="apps"] span {
    color: #00bea3 !important;
}

/* Mint für Placeholder-Spans in .dark-section Headlines */
.dark-section h1.ct-headline span[id^="ct-placeholder-"],
.dark-section h2.ct-headline span[id^="ct-placeholder-"],
.dark-section h3.ct-headline span[id^="ct-placeholder-"] {
    color: #00bea3 !important;
    line-height: 82px;
}

/* Rot nur wenn KEIN data-anchor="apps" und KEIN ct-placeholder */
h2.ct-headline span:not([id^="ct-placeholder-"]):not(:has(ancestor-or-self::*[data-anchor="apps"])) {
    color: #ea1901 !important;
}

/* Zitat-Abschnitt – nur rote Farbe, wenn kein Placeholder */
.zitat-section-hell span:not([id^="ct-placeholder-"]) {
    color: #ea1901 !important;
}

@media (max-width: 479px) {
    .section-padding {
        padding: 0;
    }
}
