body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
#mbOverlay{position:fixed;z-index:9998;top:0;left:0;width:100%;height:150%;background-color:#000;cursor:pointer}#mbOverlay.mbOverlayOpaque{background:url(../../assets/mediabox/images/80.png)}#mbOverlay.mbOverlayAbsolute{position:absolute}#mbOverlay.mbMobile{position:absolute;background-color:transparent}#mbBottom.mbMobile{line-height:24px;font-size:16px}#mbCenter{position:absolute;z-index:9999;left:50%;padding:10px;background-color:#000;-webkit-border-radius:10px;-khtml-border-radius:10px;-moz-border-radius:10px;border-radius:10px;filter:progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=180, Color='#000000');-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=180, Color='#000000')";-webkit-box-shadow:0 5px 20px rgba(0,0,0,.5);-khtml-box-shadow:0 5px 20px rgba(0,0,0,.5);-moz-box-shadow:0 5px 20px rgba(0,0,0,.5);box-shadow:0 5px 20px rgba(0,0,0,.5)}#mbCenter.mbLoading{background:#000 url(../../assets/mediabox/images/loading-dark.gif) no-repeat center;-webkit-box-shadow:none;-khtml-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#mbMedia{position:relative;left:0;top:0;font-family:Myriad,Verdana,Arial,Helvetica,sans-serif;line-height:20px;font-size:12px;color:#fff;text-align:left;background-position:center center;background-repeat:no-repeat}#mbBottom{line-height:20px;font-size:12px;font-family:Myriad,Verdana,Arial,Helvetica,sans-serif;text-align:left;color:#999;min-height:20px;padding:10px 0 0}#mbTitle,#mbPrevLink,#mbNextLink,#mbCloseLink{display:inline;color:#fff;font-weight:700}#mbNumber{display:inline;color:#999;font-size:.8em;margin:auto 10px}#mbCaption{display:block;color:#999;line-height:1.6em;font-size:.8em}#mbPrevLink,#mbNextLink,#mbCloseLink{float:right;outline:0;margin:0 0 0 10px;font-weight:400}#mbPrevLink b,#mbNextLink b,#mbCloseLink b{color:#eee;font-weight:700;text-decoration:underline}#mbPrevLink big,#mbNextLink big,#mbCloseLink big{color:#eee;font-size:1.4em;font-weight:700}#mbBottom a,#mbBottom a:link,#mbBottom a:visited{text-decoration:none;color:#ddd}#mbBottom a:hover,#mbBottom a:active{text-decoration:underline;color:#fff}#mbError{position:relative;font-family:Myriad,Verdana,Arial,Helvetica,sans-serif;line-height:20px;font-size:12px;color:#fff;text-align:center;border:10px solid #700;padding:10px 10px 10px;margin:20px;-webkit-border-radius:5px;-khtml-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#mbError a,#mbError a:link,#mbError a:visited,#mbError a:hover,#mbError a:active{color:#d00;font-weight:700;text-decoration:underline}

@font-face {
  font-family: 'ArchitectsDaughter';
  src: url('../../files/css/ArchitectsDaughter-Regular.ttf');
}

@font-face {
  font-family: 'FiraSansCondensed-Regular';
  src: url('../../files/css/FiraSansCondensed-Regular.ttf');
}

@media (min-width: 601px) {

#unter-Header-mobil, #mySidenav {
  display: none;
  }

body {
  background-image: url('../../files/img/bg_punkt.png');
  font-family: 'ArchitectsDaughter';
  font-size: 1.2rem;
  color: white;
  }
  
#wrapper {
  width: 1200px;
  margin: 0 auto;
  background-color: black;
  }
  
.flex-hori {
  padding: 15px;
  display: flex;
  justify-content: space-around; 
  align-items: start;
  }

    /* ////////////////////////// Header ///////////////////////////// */

    #header {
      height: 200px;
      background-color: black;
      background-image: url('../../files/img/HF_header_1200.jpg');
      background-position: bottom center;
      background-repeat: no-repeat;
    }

    /* das ist der Minus-Strich, der im Header existiert, nur, damit dort Inhalt vorhanden ist. */
    #header .inside {
      color: black;
      }
      
    h1 {
      padding: 14px 0;
      background: url('../../files/img/bg_dark.jpg');
      text-align: center;
      }
      
      .center {
        text-align: center;
        }
      
    /* //////////////////////// unter-Header / Navi-Top /////////////////// */

    #unter-Header .mod_navigation ul.level_1 {
      display: flex;
      justify-content: space-around; 
      align-items: center;
      list-style: none;
      margin: 0;
      padding: 0;
      height: 80px;
    }

    #unter-Header .mod_navigation ul.level_1 li {
      width: 150px;
      text-align: center; 
      }

    #unter-Header .mod_navigation ul.level_1 > li > a,
    #unter-Header .mod_navigation ul.level_1 > li > strong {
      display: block;
      color: white;
      background: black;
      text-decoration: none;
      line-height: 3.0rem;
      font-size: 1.4rem;
      font-weight: bold;
      border-radius: 8px; 
      transition: background 0.3s;
    }

    #unter-Header .mod_navigation ul.level_1 > li.trail > a {
      background: #99ff32;
      color: black;
    }

    #unter-Header .mod_navigation ul.level_1 > li > a:hover,
    #unter-Header .mod_navigation ul.level_1 > li > strong:hover {
      background: #99ff32;
      color: black;
    }

    #unter-Header .mod_navigation ul.level_1 > li .active {
      background: #99ff32;
      color: black;
      }

    #unter-Header .mod_navigation ul.level_2 {
      position: absolute;
      width: 150px;
      margin: 0;
      padding: 0;
      list-style: none;
      border-radius: 0 0 8px 8px;
      overflow: hidden;
      opacity: 0;
      pointer-events: none;
      box-shadow: 0 8px 24px rgba(0,0,0,0.2);
      transition: max-height 0.35s cubic-bezier(.4,0,.2,1), opacity 0.3s;
      z-index: 99;
    }

    #unter-Header .mod_navigation ul.level_1 > li.submenu:hover > ul.level_2,
    #unter-Header .mod_navigation ul.level_1 > li.submenu:focus-within > ul.level_2 {
      min-height: 200px;
      opacity: 1;
      pointer-events: auto;
    }

    #unter-Header .mod_navigation ul.level_2 li {
      border-radius: 8px;
      background-color: grey;
      }

    #unter-Header .mod_navigation ul.level_2 li a {
      display: block;
      color: white;
      padding: 12px 18px;
      font-size: 1.1rem;
      text-decoration: none;
      transition: background 0.2s;
      border-radius: 8px;
    }

    #unter-Header .mod_navigation ul.level_2 li a:hover {
      background: #99ff32;
      color: black;
    }

    #unter-Header .mod_navigation ul.level_2 .active {
      background: #99ff32;
      color: black;
      line-height: 3.0rem;
      font-size: 1.1rem;
      border-radius: 8px;
      }
      
    /* /////////////////////////// MAIN ////////////////////////////// */

    #main .mod_article {
      padding: 40px;
      }
      
    #main a {
      color: white;
      transition: 0.3s;
      }
      
    #main a:hover {
      color: #99ff32;
      }
      
    figure {
      margin: 20px;
      }
      
    #main .content-text {
      border-bottom: solid 1px #99ff32;
      }
      
    #main figcaption {
      max-width: 215px;
      font-size: 0.9rem;
      white-space: normal !important;
      word-break: break-word;
      overflow-wrap: break-word;
    }

    #main #songs h2 {
      margin: 70px 0 -20px 0;
      }

    #main #songs .content-player {
      display: flex;
      justify-content: space-around; 
      align-items: center;
      margin-bottom: -40px;
      }
      
    #main #songs .content-player h3 {
      width: 350px;
      text-align: right;
      }
      
    #main #songs .content-player audio {
      width: 700px;
      text-align: left;
      background-color: #99ff32;
      }
      
    /* ///////////////////////// Form /////////////////////////////// */

    form[data-ajax-form="1"] {
      border-radius: 16px;
      max-width: 480px;
      margin: 40px auto;
      font-family: 'ArchitectsDaughter';
    }

    .formbody {
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    .widget input[type="text"],
    .widget input[type="email"],
    .widget input[type="tel"],
    .widget textarea {
      font-family: 'ArchitectsDaughter';
      width: 97%;
      padding: 12px 14px;
      background: #fff;
      border: 2px solid #222;
      border-radius: 8px;
      font-size: 1.08rem;
      color: #222;
      transition: border 0.2s, box-shadow 0.2s;
      outline: none;
    }

    .widget input[type="text"]:focus,
    .widget input[type="email"]:focus,
    .widget input[type="tel"]:focus,
    .widget textarea:focus {
      border-color: #99ff32;
      box-shadow: 0 0 0 2px #99ff3270;
    }

    .widget label {
      display: block;
      margin-bottom: 6px;
      font-weight: 600;
      color: #99ff32;
      letter-spacing: 0.03em;
      font-size: 1rem;
    }

    .widget textarea {
      min-height: 100px;
      resize: vertical;
    }

    .widget-submit {
      text-align: center;
    }

    .widget-submit button[type="submit"] {
      font-family: 'ArchitectsDaughter';
      background: #99ff32;
      color: #111;
      border: none;
      border-radius: 8px;
      padding: 12px 32px;
      font-size: 1.1rem;
      font-weight: bold;
      letter-spacing: 0.03em;
      cursor: pointer;
      transition: background 0.18s, color 0.18s;
      box-shadow: none;
    }

    .widget-submit button[type="submit"]:hover,
    .widget-submit button[type="submit"]:focus {
      background: #111;
      color: #99ff32;
      outline: none;
    }

    ::placeholder {
      color: #444;
      opacity: 1;
    }

    /* Optional: Fehler-Input (required + invalid) */
    .widget input:invalid,
    .widget textarea:invalid {
      border-color: #99ff32;
      background: #fafafa;
    }

    /* Optional: Flat Scrollbar für textarea */
    .widget textarea {
      scrollbar-width: thin;
      scrollbar-color: #99ff32 #eee;
    }

    /* ////////////////////////// FOOTER ////////////////////////// */

    #footer {
      height: 500px;
      width: 100%;
      background: linear-gradient(to bottom, black, #444);
      border-top: solid 2px #99ff32;
      margin-bottom: 30px;
    }

    #im-Footer {
      display: flex;
      justify-content: space-around;
      align-items: top;
      }
      
    #im-Footer a {
      color: white;
      text-decoration: none;
      transition: 0.3s;
      }
      
    #im-Footer a:hover {
      color: #99ff32;
      }
      
    #unter-Footer {
      background: black;
      text-align: center;
      line-height: 2.5rem;
      font-family: 'FiraSansCondensed-Regular';
      font-size: 0.9rem;
      }
      
    #unter-Footer a {
      text-decoration: none;
      color: white;
      transition: 0.3s;
      }
      
    #unter-Footer a:hover {
      color: orange;
      }
      
}

@media (max-width: 600px) {

body {
  background-color: black;
  font-family: 'ArchitectsDaughter';
  color: white;
  }  
  
.flex-hori {
  padding: 15px;
  display: flex;
  justify-content: space-around; 
  align-items: start;
  flex-wrap: wrap;
  }

#header, footer, unter-Header, .mod_navigation {
  display: none;
  }
  
#main {
  padding: 10px;
  }
  
#main #songs .content-player audio {
 width: 340px;
}
  
#main iframe {
  width: 340px;
  height: auto;
  }
  
figure {
  margin: 8px;
  width: 120px;
  height: auto;
  }
  
h1, h2, h3 {
  text-align: center;
  }
  
#main .content-text {
  border-bottom: solid 1px #99ff32;
  }
  
a {
  text-decoration: none;
  color: white;
  }

a:hover {
  color: #99ff32;
  }
  
/* //////////////////// FORM /////////////////////////// */

.ce_form.center.block {
    background: #111;
    color: #fff;
    max-width: 480px;
    margin: 10px auto 20px auto;
    padding: 18px 12px 22px 12px;
    border-radius: 8px;
    box-shadow: 0 3px 22px rgba(0,0,0,0.15);
  }
  .ce_form h2 {
    color: white;
    font-size: 1.35rem;
    font-weight: 600;
    text-align: left;
    margin-bottom: 20px;
    letter-spacing: 0.02em;
  }
  .ce_form .formbody {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  .ce_form .widget {
    width: 100%;
    margin: 0;
  }
  .ce_form input[type="text"],
  .ce_form input[type="email"],
  .ce_form input[type="tel"],
  .ce_form textarea {
    width: 100%;
    padding: 12px 13px;
    font-size: 1em;
    border: none;
    border-radius: 8px;
    background: f0f0f0;
    color: black;
    margin: 0;
    box-sizing: border-box;
    outline: none;
    transition: background 0.15s, box-shadow 0.18s;
    box-shadow: 0 0 0 1.5px #222;
  }
  .ce_form input[type="text"]:focus,
  .ce_form input[type="email"]:focus,
  .ce_form input[type="tel"]:focus,
  .ce_form textarea:focus {
    background: #222;
    box-shadow: 0 0 0 2px #99ff32;
  }
  .ce_form textarea {
    resize: vertical;
    min-height: 90px;
    max-height: 300px;
  }
  .ce_form .mandatory input,
  .ce_form .mandatory textarea {
    border-left: 4px solid #99ff32;
    padding-left: 9px;
  }
  .ce_form button.submit {
    width: 100%;
    background: #99ff32;
    color: #222;
    font-weight: 700;
    font-size: 1.1em;
    border: none;
    border-radius: 8px;
    padding: 14px 0;
    margin-top: 7px;
    cursor: pointer;
    transition: background 0.18s, color 0.18s;
    box-shadow: 0 2px 9px #00000019;
  }
  .ce_form button.submit:hover,
  .ce_form button.submit:active {
    background: #fff;
    color: #222;
  }
  /* Fehlermeldung / Hinweis (falls du so etwas hast) */
  .ce_form .error {
    color: #ff5151;
    background: #232323;
    padding: 9px 12px;
    border-radius: 7px;
    margin-top: 4px;
    font-size: 0.97em;
  }
  
/* ///////////////////// Navigation /////////////////// */
    
 /* Hamburger Button */
  .circle-hamburger {
    position: fixed;
    top: 18px;
    left: 18px;
    z-index: 1001;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #222;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0,0,0,0.13);
    border: none;
    outline: none;
    transition: background 0.2s;
  }
  
  .circle-hamburger:hover {
    background: #99ff32;
  }
  
  .hamburger-bar {
    width: 24px;
    height: 3px;
    background: #fff;
    border-radius: 2px;
    margin: 3px 0;
    transition: background 0.2s;
  }
  
  /* The side navigation menu */
.sidenav {
  height: 100%; /* 100% Full-height */
  width: 0; /* 0 width - change this with JavaScript */
  position: fixed; /* Stay in place */
  z-index: 1; /* Stay on top */
  top: 0; /* Stay at the top */
  left: 0;
  background-color: #111; /* Black*/
  overflow-x: hidden; /* Disable horizontal scroll */
  padding-top: 60px; /* Place content 60px from the top */
  transition: 0.5s; /* 0.5 second transition effect to slide in the sidenav */
}

/* The navigation menu links */
.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 1.0rem;
  color: white;
  display: block;
  transition: 0.3s;
}

/* Position and style the close button (top right corner) */
.sidenav .closebtn {
  position: absolute;
  top: 0;
  right: 25px;
  font-size: 3.0rem;
  margin-left: 50px;
}

.sidenav .closebtn:hover {
  color: #99ff32;
  }

    
}

