a:visited {
  color: #fcca03;
  text-decoration: none;
}
a:visited {
  color: #0a605f;
  text-decoration: none;
}
a {
  text-decoration-color: #fcca03;
  color: #fcca03;
}
input[type="checkbox"] {
  background-color: #fff;
  accent-color: #fcca03;
  columns: #0A605F;
}

input[type="checkbox"]:checked {
  background-color: #fcca03;
  color: #0A605F;
  /* Optional: Sie könnten auch die Rahmenfarbe ändern */
  /* border-color: #fcca03; */
}

/* Change highlight color for selected text */
::selection {
  background-color: #fcca03;
  color: #000; 
}

::-moz-selection { /* Firefox specific rule */
  background-color: #fcca03;
  color: #000; 
}

/* --- Footer Font Styles --- */

/* Ensure general text, links, and address use Mulish */
.footer-section .footer-link,
.footer-section .text-block-4 {
  font-family: "Mulish V 13 Latin", sans-serif;
  /* You might want to adjust font-size or weight here if needed */
}

/* Ensure form inputs and labels use Mulish */
.footer-section .footer-form-input,
.footer-section .checkbox-label {
  font-family: "Mulish V 13 Latin", sans-serif;
   /* Adjust font-size or weight as needed */
}

/* Style the form button with Montserrat (like headings) */
.footer-section .form-button {
  font-family: "Montserrat V 26 Latin 500", sans-serif; /* Or use 600/700 if preferred */
  font-weight: 600; /* Example weight */
  /* Adjust font-size as needed */
}

.article-heading {
  border-bottom: 4px solid #fcca03;
}

a.footer-link:visited {
  color: #fff;
}

.tile-text.white {
  font-family: "Mulish V 13 Latin", sans-serif;
}

.sub-sections {
  color: #0a605f;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-top: 78px;
  margin-bottom: 78px;
  display: flex;
}

.sub-section-heading {
    color: #063a39;
    border-bottom: 4px solid #fcca03;
    margin-bottom: 20px;
    font-family: "Montserrat V 26 Latin 500", sans-serif;
    font-weight: 600;
    line-height: 1.3em;
  }
  .sub-sub-section-heading {
    color: #0a605f;
    margin-top: 40px;
    font-family: "Montserrat V 26 Latin 500", sans-serif;
    font-size: 25px;
    font-weight: 600;
  }

  .sub-section-p {
    color: #063a39;
    font-family: "Mulish V 13 Latin", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6em;
    margin-bottom: 20px;
    text-align: justify;
}
 
  .article-image-container {
    display: flex;
    flex-direction: column;;
    justify-content: center;
    align-items: center;
  }
  .article-image {
    display:block;
    margin:auto;
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
  }

  .article-image-caption {
    margin-top: 0px;
    margin-right: 1em;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    font-family: 'Mulish V 13 Latin';
    font-size: small;
    width: 100%;
  }
  .calc-form {
    width: 80vw;
    height: 500px;
    margin-top: 20px;
    font-family: "Montserrat V 26 Latin 500", sans-serif;
    font-weight: 600;
  }  
  .calc-form {
    width: 90%;
  }

  .hidden {
    display: none !important;
  }

  .hero-section {
    /* Standard: Größtes Bild mit Verlauf */
    background-image: linear-gradient(4deg, #0a605f, #fff0 38%), url('/images/HeroImage-min.jpg');
    background-position: 0 0, 0 0; /* Position für Verlauf, Position für Bild */
    background-repeat: repeat, no-repeat; /* Wiederholung für Verlauf, keine für Bild */
    background-size: auto, cover; /* Größe für Verlauf, Größe für Bild */
    /* Beibehaltung der restlichen Stile */
    flex-flow: column;
    justify-content: flex-end;
    align-items: center;
    padding-bottom: 6px;
    display: flex;
  }
  
  .heading {
    font-family: "Montserrat V 26 Latin 500", sans-serif;
  }
  .uui-navbar03_item-heading {
    font-family: "Montserrat V 26 Latin 600", sans-serif;
    /* font-size: medium; */
    font-weight: 600;
    /* color: #0a605f; */
  }

  /* Für Bildschirme bis 1080px Breite */
  @media screen and (max-width: 1080px) {
    .hero-section {
      background-image: linear-gradient(4deg, #0a605f, #fff0 38%), url('/images/HeroImage-min-p-1080.jpg');
    }
  }
  
  /* Für Bildschirme bis 800px Breite */
  @media screen and (max-width: 800px) {
    .hero-section {
      background-image: linear-gradient(4deg, #0a605f, #fff0 38%), url('/images/HeroImage-min-p-800.jpg');
    }
  }
  
  /* Für Bildschirme bis 500px Breite */
  @media screen and (max-width: 500px) {
    .hero-section {
      background-image: linear-gradient(4deg, #0a605f, #fff0 38%), url('/images/HeroImage-min-p-500.jpg');
    }
  }

  @media screen and (max-width: 991px) {
    .sub-sections {
      padding-left: 80px;
      padding-right: 80px;
    }    
    .calc-form {
      flex: 1;
      margin-left: 20px;
      margin-right: 20px;
    }
  }
  
@media screen and (max-width: 767px) {
  .sub-sections {
      padding-left: 27px;
      padding-right: 27px;
  }
}

  @media screen and (max-width: 479px) {
    .sub-sections {
      padding-left: 20px;
      padding-right: 20px;
    }
  }

/* --- Responsive Calculator on Solar-Rechner Page --- */

/* Override .calc-form width specifically within .info-container */
/* Use viewport width like the index page's .home-form for better scaling */
.info-container .calc-form {
  width: 80vw; /* Start with 80vw, can be adjusted. Overrides the 90% */
  max-width: 940px; /* Add a max-width similar to the container */
  margin-left: auto; /* Center the form */
  margin-right: auto; /* Center the form */
  height: auto; /* Override fixed height from custom.css */
}

/* Ensure radio buttons inside the form wrap on smaller screens */
.info-container .checkbox_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* Center items */
}

/* Add some spacing for wrapped radio buttons */
.info-container .radiobutton-field {
  margin: 5px; /* Adjust spacing as needed */
}

/* Adjustments for smaller screens */
@media screen and (max-width: 767px) {
  .info-container .calc-form {
    width: 95vw; /* Use more width on small screens */
  }
  /* Example: Make radio buttons roughly two per row */
  .info-container .radiobutton-field {
     flex-basis: 45%;
     justify-content: center;
  }
}

/* Adjustments for very small screens */
@media screen and (max-width: 479px) {
   /* Example: Make radio buttons one per row */
   .info-container .radiobutton-field {
     flex-basis: 90%;
  }
}

/* --- End Responsive Calculator --- */

/* Automatic legal text: keep all overrides inside the privacy-text area. */
.hero-info-text.legal.legaltext-content {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.legaltext-content .legaltext-source {
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 1.5;
}

.legaltext-source a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.legaltext-content .itrk-legaltext h1 {
  font-size: clamp(24px, 6vw, 36px);
  line-height: 1.2;
}

.legaltext-content .itrk-legaltext h2 {
  font-size: clamp(22px, 5vw, 32px);
  line-height: 1.25;
}
