#events-teaser15 .events-teaser__texts-2col{
     padding-bottom: var(--padding-bottom);
}

#events-teaser15 .events-teaser__content {
margin-bottom: clamp(3rem, 5vw, 5rem);
}

#events-teaser15 .events-teaser__content {
padding-bottom: 0;
}

.events-teaser__text-main img {
  width: 70%;
  height: auto;
  display: block;
  margin: 2rem auto;
}


/* kleinere Screens */
@media (max-width: 750px) {
  .events-teaser__text-main img {
    width: 80%;
  }
}

/* kleinere Screens */
@media (max-width: 500px) {
  .events-teaser__text-main img {
    width: 95%;
  }
}

#inhalt2spalten83 .innerspalte-text {
  max-width: 58ch;
}

@media (max-width: 450px){
  #textrahmen87 h2{
    font-size: 1.7rem;
    letter-spacing: 0.02em;  
  }
}


  #textrahmen87 {
    margin-top: clamp(2rem, 5vw, 5rem);
  }

#inhalt2spalten13{
  --img-ratio: 3 / 2.1;
}


@media (max-width: 1500px){
  #inhalt2spalten13 {
    --img-ratio: 3 / 2.5;  
  }
}

@media (max-width: 1300px){
  #inhalt2spalten13 {
    --img-ratio: 3 / 2.8 !important;  
  }
}


@media (max-width: 1200px){
  #inhalt2spalten13 {
    --img-ratio: 3 / 3.3 !important ;  
  }
}


@media (max-width: 1000px){
  #inhalt2spalten13 {
    --img-ratio: 3 / 2 !important ;  
  }
}


@media (max-width: 1200px){
  #inhalt2spalten16 {
    --img-ratio: 3 / 2.5 !important ;  
  }
}

@media (max-width: 1000px){
  #inhalt2spalten16 {
    --img-ratio: 3 / 2 !important ;  
  }
}



#inhalt2spalten83{
  --img-ratio: 3 / 2;
}

@media (max-width: 1500px){
  #inhalt2spalten83 {
    --img-ratio: 3 / 2.6 !important;  
  }
}

@media (max-width: 1400px){
  #inhalt2spalten83 {
    --img-ratio: 3 / 2.8 !important;  
  }
}


@media (max-width: 1300px){
  #inhalt2spalten83 {
    --img-ratio: 3 / 3 !important;  
  }
}


@media (max-width: 1000px){
  #inhalt2spalten83 {
    --img-ratio: 3 / 2 !important;  
  }
}



/* =========================================================
   KONTAKTFORMULAR – Look wie Screenshot
========================================================= */

.kontaktformular,
.yform--fiesemichel{
  --line: rgba(70, 35, 28, .75);
  --text: rgba(70, 35, 28, .92);
  --muted: rgba(70, 35, 28, .70);
  --bg: transparent;
  --gapY: clamp(22px, 3.2vw, 34px);
  --gapX: clamp(28px, 4vw, 70px);
}

/* Nur auf großen Bildschirmen begrenzen */
@media (min-width: 1200px){
  .kontaktformular,
  .yform--fiesemichel{
    width: min(100%, 130ch);
    margin-inline: auto;
  }
}

/* Überschrift */
.kontaktformular h2,
.kontaktformular .headline,
.yform--fiesemichel .headline{
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .14em;
  margin-bottom: clamp(24px, 4vw, 52px);
}

/* ---------------------------------------------------------
   Labels
--------------------------------------------------------- */
.kontaktformular select,
.yform--fiesemichel select{
  text-transform: uppercase;
}

.kontaktformular .form-group > label,
.yform--fiesemichel .form-group > label{
  text-transform: uppercase;
  letter-spacing: .22em;
  font-size: 1.0em;
  line-height: 1.1;
  color: var(--text);
  margin: 0 0 10px 0;
  display: none;
}

.kontaktformular .checkbox label,
.yform--fiesemichel .checkbox label{
  display: block;
  text-transform: none;
  letter-spacing: 0;
  font-size: 16px;
  line-height: 1.35;
  margin: 0;
  color: var(--text);
}

/* ---------------------------------------------------------
   Form-Groups
--------------------------------------------------------- */

.kontaktformular .form-group,
.yform--fiesemichel .form-group{
  margin: 0 0 var(--gapY) 0;
}

/* ---------------------------------------------------------
   Input Felder
--------------------------------------------------------- */

.kontaktformular input[type="text"],
.kontaktformular input[type="email"],
.kontaktformular input[type="tel"],
.kontaktformular input[type="datetime-local"],
.kontaktformular select,
.kontaktformular textarea,
.yform--fiesemichel input[type="text"],
.yform--fiesemichel input[type="email"],
.yform--fiesemichel input[type="tel"],
.yform--fiesemichel input[type="datetime-local"],
.yform--fiesemichel select,
.yform--fiesemichel textarea{
  width: 100%;
  border: 0;
  border-bottom: 2px solid var(--color-primary);
  background: var(--bg);
  color: var(--text);
  padding: 17px 0 12px 0;
  letter-spacing: var(--letter-spacing);
  outline: none;
  border-radius: 0;
  box-shadow: none;
  font-size:1.1em;
  font-family:'Barlow', sans-serif;
}

input:placeholder,
textarea:placeholder {
  color: var(--text);
  opacity: 1;
}

/* Fokus */

.kontaktformular input:focus,
.kontaktformular select:focus,
.kontaktformular textarea:focus,
.yform--fiesemichel input:focus,
.yform--fiesemichel select:focus,
.yform--fiesemichel textarea:focus{
  border-bottom-color: rgba(70, 35, 28, 1);
}

/* Placeholder */

.kontaktformular ::placeholder,
.yform--fiesemichel ::placeholder{
  color: rgba(70, 35, 28, 1);
}

/* ---------------------------------------------------------
   Select Pfeil
--------------------------------------------------------- */

.kontaktformular select,
.yform--fiesemichel select{
  appearance: none;
  -webkit-appearance: none;
  padding-right: 44px;
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 22px 22px;

background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='13' viewBox='0 0 20 13' fill='none'%3E%3Cpath d='M0.746094 0.672657L9.65827 10.6726L18.7461 0.672607' stroke='%23441C14' stroke-width='2'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------
   Textarea
--------------------------------------------------------- */

.kontaktformular textarea,
.yform--fiesemichel textarea{
  min-height: 44px;
  resize: vertical;
}

/* =========================================================
   LAYOUT
========================================================= */

.kontaktformular .fm-cols,
.yform--fiesemichel .fm-cols{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--gapX);
  align-items: start;
  margin-top: clamp(18px, 2.6vw, 28px);
}

.kontaktformular .fm-full,
.yform--fiesemichel .fm-full{
  grid-column: 1 / -1;
}

/* Bottom */

.kontaktformular .fm-bottom,
.yform--fiesemichel .fm-bottom{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--gapX);
  align-items: center;
  margin-top: clamp(18px, 2.6vw, 26px);
}

/* ---------------------------------------------------------
   CHECKBOX – BRAUN, ECKIG
--------------------------------------------------------- */

.kontaktformular .checkbox,
.yform--fiesemichel .checkbox{
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.kontaktformular .checkbox input[type="checkbox"],
.yform--fiesemichel .checkbox input[type="checkbox"]{
  appearance: none;
  -webkit-appearance: none;

  width: 26px;
  height: 26px;

  margin-top: 7px;   /* vorher 2px → jetzt tiefer */

  border: 2px solid #46231C;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  position: relative;
}

/* Haken */

.kontaktformular .checkbox input[type="checkbox"]:checked::after,
.yform--fiesemichel .checkbox input[type="checkbox"]:checked::after{
  content: "";
  position: absolute;

  width: 7px;
  height: 14px;

  border-right: 3px solid #46231C;
  border-bottom: 3px solid #46231C;

  transform: rotate(45deg);
  left: 7px;
  top: 2px;
}

/* Checkbox Text */

.kontaktformular .checkbox label,
.yform--fiesemichel .checkbox label{
  text-transform: none;
  letter-spacing: 0;
  font-size: 16px;
  line-height: 1.35;
  margin: 0;
  color: var(--text);
}

/* Links */

.kontaktformular .checkbox a,
.yform--fiesemichel .checkbox a{
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Pflichtfeld */

.kontaktformular .fm-req,
.yform--fiesemichel .fm-req{
  margin-top: 12px;
  font-weight: 700;
  color: var(--text);
  font-size:1.0em;
}

/* ---------------------------------------------------------
   Button
--------------------------------------------------------- */

.kontaktformular .fm-bottom .button,
.kontaktformular .fm-bottom button,
.kontaktformular .fm-bottom input[type="submit"],
.yform--fiesemichel .fm-bottom .button,
.yform--fiesemichel .fm-bottom button,
.yform--fiesemichel .fm-bottom input[type="submit"]{
  justify-self: end;
  text-transform: uppercase;
  letter-spacing: .22em;
  padding: 12px 28px;
  border-radius: 0;
}

/* =========================================================
   Responsive
========================================================= */

@media (max-width: 900px){

  .kontaktformular .fm-cols,
  .yform--fiesemichel .fm-cols{
    grid-template-columns: 1fr;
    gap: var(--gapY);
  }

  .kontaktformular .fm-bottom,
  .yform--fiesemichel .fm-bottom{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .kontaktformular .fm-bottom .button,
  .kontaktformular .fm-bottom button,
  .kontaktformular .fm-bottom input[type="submit"],
  .yform--fiesemichel .fm-bottom .button,
  .yform--fiesemichel .fm-bottom button,
  .yform--fiesemichel .fm-bottom input[type="submit"]{
    justify-self: start;
  }

}

#rex-yform{
  margin-bottom: var(--padding-bottom);
}


