*{
    padding:0;
    margin:0;
}

@font-face {
    font-family: 'zantrokeregular';
    src: url('fonts/zantroke-webfont.eot');
    src: url('fonts/zantroke-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/zantroke-webfont.woff2') format('woff2'),
         url('fonts/zantroke-webfont.woff') format('woff'),
         url('fonts/zantroke-webfont.ttf') format('truetype'),
         url('fonts/zantroke-webfont.svg#zantrokeregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* Regular (400) – aufrecht */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-Regular.otf") format("opentype"); /* OTF-Fallback */
  font-weight: 400;        /* Normalgewicht */
  font-style: normal;      /* Aufrecht */
  font-display: swap;      /* Schnelles Rendering mit Fallback */
}

/* Regular Italic (400) – kursiv */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-Italic.otf") format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* Medium (500) – aufrecht */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-Medium.otf") format("opentype");
  font-weight: 500;        /* Mittelgewicht */
  font-style: normal;
  font-display: swap;
}

/* Medium Italic (500) – kursiv */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-MediumItalic.otf") format("opentype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

/* Bold (700) – aufrecht */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-Bold.otf") format("opentype");
  font-weight: 700;        /* Fett */
  font-style: normal;
  font-display: swap;
}

/* Bold Italic (700) – kursiv */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-BoldItalic.otf") format("opentype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* Black (900) – aufrecht */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-Black.otf") format("opentype");
  font-weight: 900;        /* Extra Fett (Black) */
  font-style: normal;
  font-display: swap;
}

/* Black Italic (900) – kursiv */
@font-face {
  font-family: "Gunterz";
  src: url("fonts/Gunterz-BlackItalic.otf") format("opentype");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

body{
    overflow:hidden !important;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    display:flex;
    justify-content:center;
    padding:0 20px;
}

#loader{
    visibility:hidden;
    display:none;
    width:100px;
    height:10px;
    position:absolute;
    z-index: 10000;
    left:50VW;
    top:5px;
    transform: translate(-50%,0);
    background:url("Loading.gif");
    background-size:contain cover;
    background-position: center center;
    transition-duration:0.5s;
}

#rp-tool{
    padding:20px 0;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    width:100%;
    transition:all 0.3s ease-out;
    margin-top:25px;
    margin-bottom:30px;
    overflow:visible;
    position:relative;
}

#rp-wahl, #ortsteil-wahl{
    text-decoration: none;
    font-size:12pt;
    border:none;
    padding:3px;
    height:40px;
    width:320px;
    margin:5px;
    border-radius: 3px;
}

label{
    float:left;
    color:#fff;
}

#berechnenButton{
    background:#fff;
    width:320px;
    margin-right:40px;
    margin-top:24px;
    float:right;
    height:40px;
    text-align: center;
    border-radius: 3px;
    line-height: 40px;
    cursor:pointer;
}

@media (max-width:1050px){
    
    #berechnenButton{
        width:200px;
    }
    
}

#ausgabetabelle{
    margin-top:15px;
    background:#6e97cf;
    padding:20px;
    display:table;
    width:100VW;
    
}

#ausgabetabelle td, #ausgabetabelle th{
    width:50%;
    text-align:left;
    padding:5px 10px;
}

#ausgabetabelle th{
    font-family:'Gunterz', serif;
    font-size:16pt;
    color:#fff;
    color:#fff;
    padding-bottom: 15px;
}

#ausgabetabelle td{
    border-bottom: 0.5px solid #5b76bd;
}

.netto, .brutto{
    text-align:right !important;
}




.ofv{
    overflow:visible;
}






#searchForm{
    display:flex;
    align-items:stretch;
    flex-direction:column;
    overflow:visible;
    width:400px;
    max-width:calc(100% - 40px);
    background:#6e97cf;
    padding:20px;
    min-height:310px;
    position:relative;
    border-radius:20px;
    box-shadow: rgba(50, 50, 93, 0.45) 0px 6px 12px -2px, rgba(0, 0, 0, 0.5) 0px 3px 7px -3px;
    border:2px solid #fff;
}

#searchForm > h2{
    text-align:center;
    color:#fff;
    margin-bottom:10px;
    font-family:"Gunterz", serif;
}

#rp-tool .ausgabe{
    width:0;
    padding:0px;
    transition:all 500ms linear;
    border-radius:20px;
}

#rp-tool .ausgabe *{
    color:#000;
}

#rp-tool .inside{
    width:100%;
    
}

#searchForm label{
    font-size:14px;
    width:100%;
    padding:0 15px;
    margin-bottom:5px;
}

#searchForm input[type=text]{
    padding:10px 20px;
    font-size:16px;
    border:0;
    border-radius:25px;
    height:30px;
    outline:0;
    transition:all 0.2s ease-in-out;
    display:block;
    position:relative;
    z-index:2;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}

#rp-tool #rp > *{
    padding:0;
}

#searchForm .inputbox{
    position:relative;
    overflow:visible;
    width:100%;

}

#searchForm .inputbox > .inner{
    width:100%;
    display:flex;
    flex-direction:column;
    padding-top:10px;
}

#searchForm #suggestions{
    position:relative;
    list-style:none;
    max-height:205px;
    overflow-x:hidden;
    overflow-y:auto;
    box-shadow:0 -20px 0 #fff;
}

#searchForm #suggestions li{
    padding:10px 20px 10px;
    background-color:#fff;
    user-select:none;
    cursor:pointer;
    color:#666;
    
}

#searchForm #suggestions li em{
    opacity:0;
}

#searchForm #suggestions li span{
    transition:all 0.2s ease;
    width:100%;
    display:block;
    border-radius:3px;

}

#searchForm #suggestions li:hover span{
    background-color:rgba(0,0,0,0.1);
    box-shadow:0 0 0 5px rgba(0,0,0,0.1);
}

#searchForm #suggestions li:last-child{
    border-bottom-left-radius:25px;
    border-bottom-right-radius:25px;
    padding-bottom:15px;
}

#searchForm #suggestions li:first-child{
    box-shadow:0 -22px 0 #fff;
    padding-top:15px;
}

#searchForm .quest{
    position:relative;
    z-index:1;
}

#searchForm .sub{
    margin-top: auto;
        width: 100%;
        max-width: 100%;
        position:unset;
    max-width: calc(100% - 0px);

}

#containerfinder[disabled]{
    pointer-events:none;
    filter:grayscale(1);
}


#searchForm .inputbox.inf{
    max-width: inherit;
    width: calc(100% - 30px);
    padding: 10px 20px;
    font-size: 14px;
    color: #fff;
    hyphens: auto;
}

.inputbox.inf p a{
    color:#fff !important;
}

#searchForm .inputbox.inf p{
    display:block;
}


#searchForm button{
    padding:10px 20px;
    font-size:18px;
    border:2px solid #fff;
    border-radius:25px;
    height:50px;
    align-items:center;
    white-space:nowrap;
    justify-content: center;
    display:flex;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
    background-color:#6E97CF;
    color:#fff;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    position:relative;
    z-index:0;
}


#ergebnisse table{
    width:100%;
    text-align:left;
    vertical-align:top;
    margin-bottom:40px;
    border-collapse: collapse; 
}

#ergebnisse sub{
    opacity:0.5;
}

#ergebnisse h2{
    margin-bottom:10px;
}


#ergebnisse table tr td:not(tr:last-child td){
    border-bottom:1px solid rgba(0,0,0,0.1) !important;
    padding-bottom:5px;
    padding-top:5px;
}

#ergebnisse table tr th{
    background-color:rgba(0,0,0,0.1);
    padding:5px;
   
}

#ergebnisse td{
    padding:5px;
}


#rp-tool .suchenach em{
    font-weight:bold;
}

#rp-tool .suchenach{
    position:absolute;
    top:0;
    left:0;
    background:#6E97CF;
    padding: 10px 15px !important;
    width: calc(100% - 30px) !important;
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
    color: #fff;
    text-align:center;
}

#rp-tool .suchenach *{
    color:#fff;
    
}

#rp-tool > .ausgabe{
    position:relative;
    padding-top:45px !important;
    
}

#rp-tool .ausgabe[style]{
border: 2px solid #6E97CF !important;
}


#ergebnisse h3:not(th h3){
    font-family:"Gunterz" !important;
    color:#6e97cf !important;
}

#rp-tool h2{
    font-family:"Gunterz" !important;
}

#rp-tool *{
    font-family: proxima-nova, sans-serif;
}

#ergebnisse table tr td:nth-child(1), #ergebnisse table tr th:nth-child(1){
    width:60%;
    padding-right:20px;
}


#ergebnisse table tr td:nth-child(2), #ergebnisse table tr td:nth-child(3), #ergebnisse table tr th:nth-child(2), #ergebnisse table tr th:nth-child(3){
    width:20%;
    text-align:right;
    padding-left:10px;
}

#rp-tool .parkinfo{
    margin-bottom:15px;
}

#rp-tool #rp{
    display:flex;
    flex-wrap:wrap;
}

#rp-tool #rp p{
    width:100%;
}








@media (max-width:1199px){

    #rp-tool{
        width: calc(100VW - 40px);
    }
    
    
    #rp-tool .ausgabe table tr td{
        font-size:14px;
    }
    
}




@media (max-width:992px){

    #rp-tool{
        width: calc(100VW - 40px);
        justify-content:center;
        display:flex;
        flex-wrap:wrap;
    }
    
    #rp-tool #searchForm, #rp-tool .ausgabe{
        width:100%;
        margin-left:0;
        margin-right:0;
        margin-bottom:30px;
    }
    
    body #rp-tool .ausgabe{
        margin-left:0 !important;
    }
        
    
}



@media (max-width:768px){
    
    
    
    

    #rp-tool label{
        width:100%;
    }
    
    #rp-wahl, #ortsteil-wahl{
        width: calc(100% - 15px);
    }
    
    #ausgabetabelle{
        padding:10px;
        margin-bottom:50px;
        hyphens:auto;
    }
    
    #ausgabetabelle h2{
        width: calc(100VW - 60px);
    }
    
    #ausgabetabelle th{
        font-size:12px;
        max-width:65px;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    #ausgabetabelle td{
        font-size:12px;
        max-width:65px;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    #ausgabetabelle::after{
        content:"INFO: In der mobilen Ansicht kann es zu unregulären Wortumbrüchen kommen.";
        font-size:12px;
        width:100%;
        position:absolute;
        margin-top:25px;
    }
    
    
    #rp-tool .ausgabe table td{
        font-size:12px;
    }
    
    #rp-tool .ausgabe table tr td:nth-child(2), #rp-tool .ausgabe table tr td:nth-child(3){
      
    }
    
    div #searchForm .inputbox.inf{
        position:unset;
        width:100%;
        padding-top:10px;
        padding-bottom:10px;
    }
    
    
    div #searchForm .sub{
        margin-top: auto;
        width: 100%;
        max-width: 100%;
        position:unset;
    }
    
    #rp-tool > .ausgabe {
        padding-top: 50px !important;
        margin-left: 0px !important;
        min-width: calc(100% - 15px) !important;
        max-width: calc(100% - 15px) !important;
    }
    
    #searchForm #suggestions li span{
        font-size:14px;
    }
}



@media (max-width:550px){

    #berechnenButton{
        width:100%;
        margin-right:0px;
    }
    
}