#suche-box {
  display: block;
  margin-bottom: 15px;
  padding-top: 25px;
}


.search_key_button {
  font-weight: 600;
  padding-left: 19px;
  padding-top: 5px;
  border-bottom: 1px solid #ccc;
  width: 388px;
}

.search_key_button {
    font-weight: 600;
    padding-left: 19px;
    padding-top: 5px;
    border-bottom: 1px solid #ccc;
  }

  .search_key_button.active {
    color: #f00;
}
  
  .search_key_button:hover {
      color: #f00;
      cursor: pointer;
  }
  
  
  .search_key_button .red {
      font-weight: normal;
  }


  .search_key_button_list {
    margin-right: 26px;
  }


.text2.active, .text3.active {
    color: #f00;
    font-weight: bolder;
}

.to_termin_wrapper .to_termin {
  position: relative;
}

.to_termin {
  cursor: pointer;
  font-size: .8em;
  line-height: 1em;
  font-weight: 500;
  text-transform: uppercase;
  position: relative;
  padding-left: calc(var(--button-size) * .5);
  margin-bottom: 25px;
}

.to_termin:hover {
  color: #f00;
}

.to_termin:before {
  content: '';
  width: calc(var(--button-size) * .5);
  height: calc(var(--button-size) * .5);
  background-repeat: no-repeat;
  background-position: left center;
  transition: all .3s ease;
  display: flex;
  background-color: #f00;
  mask-repeat: no-repeat;
  left: 0px;
  top: -2px;
  position: absolute;
  mask-image: url('data:image/svg+xml;charset=UTF-8,<svg id="pfeil-icon" class="pfeil" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><polygon display="inline" style="enable-background:accumulate; fill:white;" points="70.6,47.6 47.6,24.6 36.1,36.1 59.1,59.1 36.1,82.1 47.6,93.6 70.6,70.6 82.1,59.1"/></svg>');

}



#free-text-search {
    position: relative;
    display: inline;
  }



.search_key_button {
    font-weight: bold;
}

.search_key_button .red {
    font-weight: normal;
}

#keywords {
    background-color: var(--sub-ausgabe-grey);
    border-radius: 100em;
    border-color: var(--sub-ausgabe-grey);
    padding-right: 50px;
    width: 330px;
    height: 29px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .button.suche-icon {
    display: inline-block;
    background: var(--semmel-red);
    width: 46px;
    height: 46px;
    border-radius: 100rem;
    aspect-ratio: 1 / 1;
    justify-self: end;
    position: absolute;
    display: inline;
    right: 0px;
    top: -11px;
    cursor: pointer;
}


.button.suche-icon::after {
    content: '';
    background-color: white;
    mask-repeat: no-repeat;
    width: 46px;
    height: 46px;
    background-repeat: no-repeat;
    background-position: right center;
    transition: all .3s ease;
    position: relative;
    display: flex;
    mask-repeat: no-repeat;
    display: inline-block;
  }





  #free-text-search {
    position: relative;
    display: inline;
    
  }

  .free-text-search-wrapper
  {
    position: relative;
  }

  #suche_count
  {
    position: absolute;
    _top: -40px;
    left: 438px;
  }

  #suche_count span
  {
    font-size: .8em;
    line-height: 1em;
    font-weight: 500;
    text-transform: uppercase;
    _padding: 5px;
    _border: solid 1px #000;
    _border-radius: 100em;
    position: relative;
    padding-left: calc(var(--button-size) * .5);
  }


  #suche_count span::before {
    content: '';
    width: calc(var(--button-size) * .5);
    height: calc(var(--button-size) * .5);
    background-repeat: no-repeat;
    background-position: left center;
    transition: all .3s ease;
    display: flex;
    background-color: black;
    mask-repeat: no-repeat;
    left: 0px;
    _top: -2px;
    position: relative;
    mask-image: url('data:image/svg+xml;charset=UTF-8,<svg id="pfeil-icon" class="pfeil" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><polygon display="inline" style="enable-background:accumulate; fill:white;" points="70.6,47.6 47.6,24.6 36.1,36.1 59.1,59.1 36.1,82.1 47.6,93.6 70.6,70.6 82.1,59.1"/></svg>');
  }



  #suche_count span:hover {
    color: #f00;
    cursor: pointer;
  }

    #free-text-search-ausgabe
    {
        display: flex;
    }


.tickets-termine-header_img {
    max-width: 440px;
    margin-left: 0px;
}

.search_results_liste .tickets-termine {
  padding-left: 0px;
  padding-right: 0px;
  max-width: 100%;
}

.search_results_liste {
  width: 100%;
}

.search_results_liste h2.headline {
  font-size: 60px;
}


.search_results_liste.opacity {
  opacity: 0.3;
}




.news_fund {
  display: flex;
}

.news_img {
  width: 150px;
  margin-right: 25px;
}

.news_img img {
  width: 100%;
}


h2.newsheadline {
  font-size: 60px !important;
  margin-bottom: 25px !important;
  margin-top: 25px !important;
  display: block !important;<
}

.news .news_title {
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: clamp(1.0em, 1.1vw, 1.7rem);
  line-height: 1.2em;
}



.termine .to_menu {
  margin: 0px auto;
}


#suche_count span.grau {
  _color: #ccc;
}




@media screen and (max-width: 1920px) {
  #suche-box {
    width: auto;
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (max-width: 1000px) {
  #suche_count span {
    display: block;
    _margin-bottom: 10px;
  }
}


@media screen and (max-width: 450px) {
  #keywords {
    width: auto;
  }
}

@media screen and (max-width: 520px) {
  #suche_count {
    _width: 300px;
  }
}


@media screen and (max-width: 650px) {

  .tickets-termine-header_img {
    max-width: 100%;
    /*margin-left: 25px;*/
  }

  #suche_count {
      position: relative;
      top: 0;
      left: 0;
      margin-top: 25px;
  }

  #suche_count span {
      _display: inline !important;
      margin-bottom: 0px !important;
    }
}


/*
.to_termin::after {
    width: 30px;
    height: 30px;
    content: '';
    background-image: url('../files/gui/termin.png');
    display: block;
    background-size: cover;
    background-color: #f00;
    border-radius: 25%;
}
    */



    .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr 1fr auto;
      grid-gap: 3rem;
    }

    .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      ---grid-template-columns: 1fr 1fr ;
      grid-gap: 3rem;

      transition: all .5s ease-in-out;

      top:0px;
      position: relative;
  }


  .ergebniss-kuenstler-liste .artist-section:before{
    position: absolute;
    font-size: clamp(5rem, 7vw, 12rem);
    text-transform: uppercase;
    font-weight: 800;
    color: var(--semmel-red);
    width: auto;
    align-items: center;
    width: 100%;
    text-align: center;
    float: center;
    margin: 0px auto;
    display: block;
    transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    top:10vh;
}


.ergebniss-kuenstler-liste .artist-section.in{
    display: grid;
    opacity:1;
    height:auto;
    position: relative;
    top:0px;
    overflow: hidden;
}
.ergebniss-kuenstler-liste .artist-section.out{
    display: grid;
    opacity: 0;
    height:1px;
    padding:0;
    margin:0;
    position: relative;
    top:1200px;
    overflow: hidden;
}


.artist-section .termine {
       
}
.artist-section .termine img {
    width: 100%;
}

.artist-section .termine  .tickets-termine-liste {
    margin: 0;
    
}

@media screen and (min-width: 300px) {
  #free-text-search-ausgabe {
      display: block;
    }
  .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr;
  }
  #ajax-suche-ergebniss {
      margin-top: 25px;
  }
}


@media screen and (min-width: 900px) {
  #free-text-search-ausgabe {
      display: block;
    }
    .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr 1fr;
  }
  #ajax-suche-ergebniss {
      margin-top: 25px;
  }
}


@media screen and (min-width: 1250px) {
  #free-text-search-ausgabe {
      display: block;
    }
    .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
  }
  #ajax-suche-ergebniss {
      margin-top: 25px;
  }
}

@media screen and (min-width: 1560px) {
  #free-text-search-ausgabe {
      display: flex;
    }
  .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr 1fr;
  }
}

@media screen and (min-width: 1920px) {
  #suche-box {
      width: 1920px;
      padding-left: 30px;
      padding-right: 30px;
  }

  .ergebniss-kuenstler-liste .artist-section {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
  }

}


.getAllresults {
    background-color: var(--semmel-red);
    color: #fff;
    padding: .2vh 1.4em;
    display: inline-table;
    border-radius: 100em;
    cursor: pointer;
    margin-top: 5vh;
    font-weight: bold;
    transition: all .2s ease-in-out;
    font-size: clamp(.7rem, 1.5vw, .8rem);
    font-weight: 300;
    text-transform: uppercase;
}

.getAllresults:hover {
  background-color: var(--backgroundGrey);
  color: #f00;
}

.artist-section .termine {
  margin-top: 0px;
}

::placeholder {
  font-size: .8em; 
}


  
  
  
  ::placeholder {
    font-size: .8em;
    font-style: italic;
  }
  .suche-box {
    grid-column: 1/span2;
  }
 .suche-box,
 .suche-box.open {
   width:100%!important;
   _padding-left:0px!important;
   _padding-right:0px!important;
 }
  .suche-box .featuredHeader {
    display:none;
  }
 
  
  
  .button.suche-icon::after {
      width: 40px;
      height: 40px;
      transition: all .3s ease;
  }
  #suche-box {
      container-type: inline-size;
      container-name: searchContainer;
    }
    
    
    .header-alerts .hinweis-icon {
        margin-left: 0px!important;
    }
    
    @container searchContainer ( min-width: 200px ) {
      .inside {
          grid-template-columns: 1fr 100px!important;
          gap: 10px;
      }
      .header-alerts {
        gap:10px!important;
      }
      #free-text-search {
        display:flex;
        width: 100%;
      }
      #keywords {
        font-size: .8em;
        padding:0px 20px;
        height:38px;
        top:0px;
        width:100%;
        margin:0px;
      }
      .button.suche-icon {
        width: 40px;
        height: 40px;
        top: 0px;
      }
      .search_key_button {
        font-weight: 600;
        padding-left: 19px;
        padding-top: 0px;
        border-bottom: 1px solid #ccc;
        width: 100%;
        font-size:.75rem;
        transition:all .3s ease-in-out;
      }
      
      .kuenstler_img_link {
        _display:none;
      }
      .kuenstler_element_img{
        max-width:60px; 
        transition:all .3s ease-in-out;
      }
      .ergebniss-kuenstler-liste .artist-section {
        grid-gap: 1rem;
      }
      .ergebniss-kuenstler-liste .kuenstler_liste_element {   
           display: grid !important;
          grid-template-columns: 40px 1fr !important;
          min-width: none!important;
          gap: 1rem;
      }
      .kuenstler_element_img {
          width:50px!important;  
      }
      .ergebniss-kuenstler-liste .kuenstler_liste_element_tour .tour_element a {
          line-height: 1.0rem;
      }
      .suche_seite #suche_count {
          position: relative;
          top: 0px;
          margin-top:25px;
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap:10px;
          margin-bottom:25px;
      }
    }
   
    @container searchContainer ( min-width: 600px ) {
      .inside {
          grid-template-columns: 180px 1fr 80px;
      }
      #free-text-search {
        position: relative;
        display: inline;
        height: 40px;
        display: flex;
        max-width: 410px;
      }
      #keywords {
        font-size: .75em;
        padding:0px 20px;
        height:38px;
        margin:0px;
        top:0px;
        max-width: 410px;
      }
      .button.suche-icon {
        width: 40px;
        height: 40px;
        top: 0px!important;
      }
      .search_key_button {
        font-weight: 600;
        padding-left: 19px;
        padding-top: 5px;
        border-bottom: 1px solid #ccc;
        width: 388px;
        font-size:.9rem;
      }
      .ergebniss-kuenstler-liste .kuenstler_liste_element {
        grid-template-columns: 80px 1fr !important;
      }
      .kuenstler_img_link {
        display:inline-block;
      }
      .kuenstler_element_img{
        max-width:none; 
      }
      .ergebniss-kuenstler-liste .artist-section {
        grid-gap: 2rem;
      }
      .kuenstler_element_img {
          width:80px;   
      }
      .kuenstler_element_img {
        border-radius: 100em;
        overflow: hidden;
        max-width:120px;
        width:80px!important;
      }
      .ergebniss-kuenstler-liste .kuenstler_liste_element_tour .tour_element a {
          line-height: 1.2rem;
      }
      .suche_seite #suche_count {
          position: relative;
          display: flex;
          top: 0px;  
          margin-bottom: 20px !important;  
          left:0;
          margin-top:25px;
          
      }
    }
    
    @container searchContainer ( min-width: 800px ) {
      .suche_seite #suche_count {
          display: grid;
          grid-template-columns: 1fr 1fr;
          left: 438px;
          position: absolute;
          top:0;
          margin-top:0;
      }
    }
    @container searchContainer ( min-width: 1000px ) {
      .suche_seite #suche_count {
          grid-template-columns: 1fr 1fr 1fr 1fr;
          top:11px;
      }
    }
  
    
    
    
    ::placeholder {
      font-size: .8em;
      font-style: italic;
    }
    .suche-box {
      grid-column: 1/span2;
    }
   .suche-box,
   .suche-box.open {
     width:100%!important;
     padding-left:0px!important;
     padding-right:0px!important;
   }
    .suche-box .featuredHeader {
      display:none;
    }
   #main .inside .suche-box{
     padding-left:30px!important;
     padding-right:30px!important;
   }
    
    
    .button.suche-icon::after {
        width: 40px;
        height: 40px;
        transition: all .3s ease;
    }
    #main .inside .suche-box,
    #main .inside .suche-box.open {
      padding-left:30px!important;
      padding-right:30px!important;
      
    }
    #main .inside .suche-box.open{
      display: flex;
      height:auto;
      overflow: visible;
    }
    #main .inside .suche-box{
      display: block;
      height:0px;
      overflow: hidden;
      transition:all .3s ease-in-out;
    }
    .suche_seite #header_content .inside .suche-box,
    .suche_seite #main .inside .suche-box{
      display: flex;
      height:auto;
      overflow: hidden;
      transition:all .5s ease-in-out;
    }
    
    #main .inside .free-text-search-wrapper {
      width: calc(100vw - 60px);
    }
    
    #suche_count span {
        font-size: .8em;
        font-size: clamp(.65em, 1vw, .8em);
        line-height: 1em;
        font-weight: 500;
        text-transform: uppercase;
        _padding: 5px;
        _border: solid 1px #000;
        _border-radius: 100em;
        position: relative; 
        border: 1px solid #00000050;
        border-radius: 50em;
        padding: 3px 5px 3px 3px;
        _padding-left: calc(var(--button-size)* .5);
        flex-wrap: nowrap;
        display: flex;
        align-items: center;
    }
    #suche_count span.grau {
      opacity:.3;
    }
    #suche_count span::before {
        content: '';
        width: calc(var(--button-size)* .5);
        height: calc(var(--button-size)* .5);
        background-repeat: no-repeat;
        background-position: left center;
        transition: all .3s ease;
        display: flex;
        background-color: black;
        mask-repeat: no-repeat;
        left: 0px;
        _top: 0px;
        position: relative;
        mask-image: url(data:image/svg+xml;charset=UTF-8,<svg id="pfeil-icon" class="pfeil" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><polygon display="inline" style="enable-background:accumulate; fill:white;" points="70.6,47.6 47.6,24.6 36.1,36.1 59.1,59.1 36.1,82.1 47.6,93.6 70.6,70.6 82.1,59.1"/></svg>);
      }
    
    .search_results_liste h2.headline,
    .ergebniss-kuenstler-liste h2.headline,
    .mod_search h2.headline {
      border-bottom: 1px solid #00000050!important;
      margin-bottom: 5vh!important;
      font-size:2em!important;
      width:100%!important;
      display: flex!important;
    }
    
  /*      mod from artist-tour.css */
      .search_results_liste .tickets-termine-element {
        padding-bottom:20px;
      }
      .search_results_liste .termin-scroll-top {
        transform: scale(.45)!important;
        background-color: #cfcacb!important;
      }
     .search_results_liste .tickets-termine-liste {
          margin-bottom: -35px;
      }
      #suche_count span:before {
        scale: 0.7!important;
      }
  .kuenstler_liste_element .kuenstler_liste_element_tour {
         _padding-top:8px;
       } 
  .kuenstler_liste_element .kuenstler_liste_element_tour .tour_element{
          display:flex;
          mmargin-top:8px;
          padding-left:0!important;
          padding-top:10px;
          right: unset;
          left:unset;
          top: unset; 
        }
  .kuenstler_liste_element .kuenstler_liste_element_tour .tour_element:before {
          position:relative;
          right: unset!important; 
          left:unset!important; 
          top: unset!important; 
          align-self: baseline;
          min-width:20px;
        }
  .kuenstler_liste_element .kuenstler_liste_element_tour .tour_element .tour_link {
          margin:0;
          align-content: center;
        }
        
.ergebniss-kuenstler-liste .icon-before:before {
                  content: '';
                  width: var(--button-size);
                  height: var(--button-size);
                  background-repeat: no-repeat;
                  background-position: right center;
                  transition: all .3s ease;
                  position: relative;
                  display: flex;
                  background-color: black;
                  mask-repeat: no-repeat;
                  right: 0px;
                  top: 0px;
                  position: absolute;
              }
              
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element {
            border-top: 1px solid #00000050;
            width: auto;
            position: relative;
            padding-left: 20px;
            line-height: clamp(1.2em, 2vw, 1.8rem);
            padding-top: top:clamp(0em, 0.3vh, .8rem);
        }
        
        .kuenstler_liste .kuenstler_liste_element_tour .tour_element .tour_link,
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element .tour_link {
            text-decoration: none;
            font-size: clamp(.8em, 1vw, 1rem)!important;
            line-height: 1.0rem;
            margin-top: clamp(0em, 0.6vh, .8rem);
            margin-bottom: clamp(0em, 0.6vh, .8rem);
            display: block;
            margin-top:0;
        }
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element a .text2,
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element a .text2.active {
            display: block;
            font-weight: 400!important;
        }
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element a .text3,
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element a .text3.active {
            display: block;
            font-weight: 300!important;
            font-size: 15px;
        }
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element:before {
            width: calc(var(--button-size)* .5);
            height: calc(var(--button-size)* .5);
            background-repeat: no-repeat;
            background-position: left center !important;
            transition: all .3s ease;
            background-color: var(--semmel-red);
            right: auto;
            left: 0;
            top: clamp(0em, 0.8vh, .8rem);
        }
        #ajax-suche-ergebniss .kuenstler_liste_element_tour .tour_element:before {
            position: relative;
            right: unset;
            left: unset;
            top: unset !important;
            align-self: baseline;
            min-width: 20px;
        }
        #ajax-suche-ergebniss .to_termin {display:none;}
        
  /*  contao suche   */
  
  .mod_search {
      container-name: mod_search_container;
      container-type: inline-size;
      width:100%;
      overflow:visible;
  }
  
  
  
  .mod_search>div {
    margin-bottom: 3vh;
  }
  .mod_search h3 {
    font-size: var(--titelSize)!important;
    padding-bottom: .3rem;
    margin-bottom: .8rem;
    border-bottom: 1px solid var(--lineColor);
    width: auto;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    width:100%;
    display:flex;
    color: var(--semmel-red);
  }       
  .mod_search h3 a{
    color: var(--semmel-red);
  } 
  
  .mod_search p.context {
    margin-bottom: 1px;
  }
  .mod_search p.context mark {
      background-color: #00000015;
      color: var(--semmel-red);
  }
  .mod_search p.url {
    font-style: italic;
    color: var(--semmel-red);
    font-size: smaller;
    margin-top: 0;
    overflow-wrap: break-word;
  }
  
  @container mod_search_container ( min-width: 200px ) {
     p.context {
      font-size: clamp(.8em, 3vw, 1em);
      line-height:1.5;
      margin-bottom:1vh!important;
    }
    p.url {
      
      font-size: clamp(.7em, 2vw, .85em)!important;
      line-height:1.2;
    }
  }
  
  
                       