@charset "utf-8";

html{
  font-size: 100%;
}
a, button, .shop-item-card, #menu li a, .shop-detail-categories li a, #shop-submenu li a {
  /* Consistent tap feedback across WebKit (Safari) and Chromium-based mobile
     browsers (Samsung Internet, Chrome, MIUI) - avoids the default gray
     flash-on-tap clashing with our custom hover/selected colors. */
  -webkit-tap-highlight-color: transparent;
}

/* Skip-link: hidden off-screen until keyboard-focused, lets keyboard/screen-reader
   users jump straight past the navigation into the main content (EAA/WCAG 2.4.1). */
.skip-link {
  position: absolute;
  left: -999em;
  top: 0;
  z-index: 1000;
  padding: 0.5em 1em;
  background-color: #800000;
  color: #F0F0F0;
  text-decoration: none;
}
.skip-link:focus {
  left: 0.5em;
  top: 0.5em;
}

/* Footer "Cookie-Einstellungen" control uses a real <button> for correct
   assistive-technology semantics, styled to look identical to the surrounding link text. */
.link-button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  cursor: pointer;
  color: #B52C07;
  text-decoration: none;
}
.link-button:hover {
  color: #F0F0F0;
  background-color: #800000;
}

@media screen and (max-width:768px) {
  #container {
    margin: 1em auto;
    width : 100%;
    text-align: left;
    border: 0.083em solid black;
    background-color: #FFFFFF;
  }
}
@media screen and (min-width:769px) {
  #container {
    margin: 1em auto;
    width : 66em;
    text-align: left;
    border: 0.083em solid black;
    background-color: #FFFFFF;
  }
}

#header {
  height: 5em;
  font: 175% Vito, arial, hevetica, sans-serif;
  font-weight: bold;
  border-bottom: 0.083em solid #000000;
  background-image: url(/images/logo.jpg);
  color: #DAA520;
  text-align: center;
  padding: 0.415em;
}
#menu_list {
  font-size: 100%;
  float: left;
  background: #FFEBCD;
  width: inherit;
  border-bottom: 0.083em solid #000000;
}
#menu li
{
  font: bold 1.083em Vito, arial, hevetica, sans-serif;
  font-size: 100%;
  float: left;
  background:#FFEBCD;
  list-style: none inside none;
  padding: 0 0.63em;
}
#menu li a.current {
  background:#DEB887;
  color: #BC8F8F;
}
#menu li a:hover {
  background:#DEB887;
  color: #800000;
}
#menu li a {
  float: left;
  padding: 0.42em 0.83em;
  color: #BC8F8F;
}
#menu li a.selected {
 background: #FFE4B5;
}
#menu li a:visited {
  color: #BC8F8F;
}
@media screen and (max-width:768px) {
  #menu_list {
    float: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    scroll-snap-type: x proximity;
    /* Scroll affordance: a soft fade on the right edge hints that the menu
       continues off-screen. This is a mask on #menu_list itself (not a
       separate element layered on top), so it never intercepts taps or
       pretends to be a button - it only softens the rendering of whatever
       real, clickable menu item happens to sit at the edge. */
    -webkit-mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
    mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
  }
  #menu {
    display: inline-flex;
    flex-wrap: nowrap;
  }
  #menu li {
    float: none;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }
  #menu li a {
    float: none;
    padding: 0.6em 0.7em;
  }
}
#fb_add {
  clear: both;
  float: left;
  width: 23.9em;
  background-color: #FFEBCD;
}
#content {
  margin-right: 1.6em;
  margin-left: 25.6em;
}
#content p {
  line-height: 145%;
}
#footer {
  clear: both;
  text-align: right;
  padding: 0.415em;
  font-size: 90%;
  background-color: #800000;
  color: #FFFAFA;
  border-top: 0.083em solid #000000;
}
#footer a { color: #FFFFFF; }
.footer-copyright {
  white-space: nowrap;
}
@media screen and (max-width:480px) {
  .footer-copyright {
    white-space: normal;
  }
}
#space_ho {
  clear: both;
  padding: 0.415em;
  float: left;
  height: 0.4em;  
}
#space_border {
  padding: 0.415em;
}
.blogentry {
  border-bottom: 0.083em solid #800000;
}
.blogtext {
  margin-left: 18.5em;
  padding-top: 0.42em;
}
.blogtextMedHori{
  margin-left: 26em;
  padding-top: 0.42em;
}
#events-list {
  margin-top: 1em;
}
.event-month-group {
  margin-bottom: 1.5em;
}
.event-month-group h2 {
  margin-bottom: 0.6em;
  padding-bottom: 0.2em;
  color: #800000;
  border-bottom: 0.15em solid #800000;
}
.blogbild-gallery {
  padding: 0 0 0 2.75em;
}
@media screen and (max-width:768px) {
  .blogbild-gallery {
    padding: 0;
  }
}
.blogbild {
  float: left;
  padding: 0 0 0 2em;
}
.blogbildBig {
  float: left;
  padding: 0 1em 0 1em;
}
.blogTextMini {
  margin-left: 12em;
  padding-top: 0.083em;
}
.dateInfo {
  color: #C0C0C0;
  font-size:85%;
}
.clear { clear: both;}
/*ul.nlist {
  list-style: disc inside none;
}*/
.bild {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 12.5em;
  height: 15em;
}
.bildBigh {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  height: 22.5em;
  width: 30em;
}
.bildMedHori {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  height: 15.5em;
  width: 22em;
}
.bildAbout {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 16.5em;
  height: 12.5em;
}
@media screen and (max-width:768px) {
  .blogbild {
    float: none;
    width: auto;
    padding: 0 0 0.83em 0;
    text-align: center;
  }
  .bildAbout {
    width: auto;
    max-width: 100%;
    height: auto;
  }
}
.bildMini {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 6em;
  height: 8em;
}
.bildMiniLong {
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 3.5em;
  height: 14em;
}
.bildMiniMed{
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 4em;
  height: 11em;
}
.bildMiniQuad{
  padding: 0.42em 0.42em 0.42em 0.42em;
  border: 0.083em solid #800000;
  width: 4em;
  height: 4em;
}
.blogBildBox {
 margin: 1.5em;
 padding: 0;
 float: left;
}
.blogBildBox img {
 border: none;
} 
.blogBildBox li {
 list-style: none;
 position: relative;
}
.prodText {
  margin-left: 14.5em;
  padding-top: 0.42em;
}
.skull {
  width: 8em;
  height: 2em;
}

.addressButton:hover{
  font-weight:bold; color:#800000; text-decoration:none;
}

body {
  margin: 0;
  padding: 0;
  font: 85% Vito, arial, hevetica, sans-serif;
  text-align: center;
  color: #505367;
  background: #F5F5F5 url('/images/background.jpg') no-repeat fixed center center;
  background-size:cover;
}
a:link { color: #B52C07; }
a:visited { color: #600; }
a:hover, a:active {
  color: #F0F0F0;
  background-color: #800000;
}
h1 {
  font-weight: bold;
  color: #FFFFFF;
  background-color: #800000;
}
h2 {
  color: #B52C07;
  font: 120% Vito, georgia, times, "times new roman", serif;
  font-weight: bold;
  margin: 0 0 0.16em 0;
}
h2 a { text-decoration: none; }
h3 {
  color: #5B5E0E;
  font: 106% Vito, georgia, times, "times new roman", serif;
  font-weight: bold;
  margin-top: 0;
}

ul {
  list-style-type: circle;
  padding: 0;
  margin: 0;
}

#ng-consent-banner {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background-color: rgba(0, 0, 0, 0.85);
  padding: 0.83em;
  /* iPhone home-indicator safe-area: without this, the fixed bottom banner's
     buttons can sit under/flush with the gesture bar on notched iPhones. */
  padding-bottom: calc(0.83em + env(safe-area-inset-bottom));
}
.ng-consent-box {
  max-width: 66em;
  margin: 0 auto;
  color: #FFFAFA;
  font-size: 90%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.83em;
}
.ng-consent-box p {
  flex: 1 1 20em;
  margin: 0;
}
.ng-consent-box a {
  color: #FFE4B5;
}
.ng-consent-actions {
  flex: 0 0 auto;
  display: flex;
  gap: 0.42em;
}
.ng-consent-actions button {
  cursor: pointer;
  border: 0.083em solid #FFFAFA;
  background-color: #800000;
  color: #FFFAFA;
  padding: 0.42em 0.83em;
  font: bold 100% Vito, arial, hevetica, sans-serif;
}
.ng-consent-actions button:hover {
  background-color: #DAA520;
  color: #800000;
}
#ng-consent-cookie-settings-link {
  cursor: pointer;
}

/*
li {
  list-style-type: circle;
}
 */

/* ul { */
/*   list-style: none inside none; */
/*   padding: 0; */
/*   margin: 0; */
/* } */

a .bildGross {
 display:none;
}
a:hover .bildGross {
 display: block;
 position: absolute;
 top: 0;
 left: 0;
}
.let {
  text-decoration: underline;
  font-weight: bold;
}
@font-face {
  font-family: 'Vito';
  src: url('/fonts/Vito-ExtendedRegular.woff2') format('woff2'), url('/fonts/Vito-ExtendedRegular.woff') format('woff'), local("Vito Extended");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Vito';
  src: url('/fonts/Vito-ExtendedBold.woff2') format('woff2'), url('/fonts/Vito-ExtendedBold.woff') format('woff'), local("Vito Extended Bold");
  font-weight: bold;
  font-display: swap;
}
.addressButton{
  background:none!important;
  border:none;
  padding:0!important;
  border-bottom:1px solid #444;
}

.addressButton:hover {
  font-weight:bold; color:#800000; text-decoration:none;
}

#hall-of-fame-summary {
  padding: 0.83em 0;
  text-align: center;
}
.medal-count {
  display: inline-block;
  float: none;
  width: 8em;
  text-align: center;
  margin: 0 0.5em;
  padding: 0.42em 0;
  border: 0.083em solid #800000;
  vertical-align: top;
}
.medal-count-number {
  display: block;
  font-size: 180%;
  font-weight: bold;
}
.medal-count-label {
  display: block;
}
.medal-count-gold { background-color: #D4AF37; color: #4A3B00; }
.medal-count-silver { background-color: #C0C0C0; }
.medal-count-bronze { background-color: #CD7F32; color: #FFFFFF; }
@media screen and (max-width:480px) {
  .medal-count {
    display: block;
    width: auto;
    margin: 0.42em 0;
  }
}
.award-year-group {
  clear: both;
  padding-top: 0.83em;
}
.shop-item-awards-block {
  margin: 0.42em 0 0.83em;
  padding-left: 0.6em;
  border-left: 0.2em solid #D4AF37;
}
.shop-item-awards-block strong {
  display: block;
  margin-bottom: 0.2em;
  font-weight: normal;
  color: #666;
  font-size: 90%;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.shop-item-awards {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 92%;
  color: #444;
}
.shop-item-awards li {
  padding: 0.1em 0;
}
.shop-item-details-block,
.shop-item-hints-block {
  margin: 0.83em 0;
  padding: 0.6em 0.83em;
  background-color: #FAFAFA;
  border: 0.06em solid #E0E0E0;
}
.shop-item-details-block p,
.shop-item-hints-block p {
  margin: 0.3em 0;
}
.event-card-list {
  list-style: none;
  margin: 0.83em 0;
  padding: 0;
}
.event-card {
  display: flex;
  align-items: baseline;
  gap: 0.83em;
  padding: 0.5em 0.6em;
  margin-bottom: 0.42em;
  border-left: 0.25em solid #800000;
  background-color: #F7F5F5;
}
.event-card-date {
  flex: 0 0 auto;
  min-width: 8em;
  font-weight: bold;
  color: #800000;
}
.event-card-details {
  display: block;
}
.event-card-name {
  display: block;
  font-weight: bold;
}
.event-card-location {
  display: block;
  color: #555555;
  font-size: 90%;
}
.landing-events-more-link {
  text-align: right;
}
@media screen and (max-width:768px) {
  .event-card {
    flex-direction: column;
    gap: 0.2em;
  }
  .event-card-date {
    min-width: auto;
  }
}
#shop-submenu {
  list-style: none;
  margin: 0.83em 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.42em;
  border-bottom: 0.083em solid #000000;
  background: #FFEBCD;
}
#shop-submenu li {
  margin: 0;
}
#shop-submenu li a {
  display: inline-block;
  padding: 0.42em 0.83em;
  color: #BC8F8F;
  font: bold 100% Vito, arial, hevetica, sans-serif;
}
#shop-submenu li a:hover {
  background: #DEB887;
  color: #800000;
}
#shop-submenu li a.selected {
  background: #FFE4B5;
  color: #800000;
}
.shop-category-group {
  margin-bottom: 1.5em;
}
.shop-category-heading {
  margin-bottom: 0.6em;
  padding-bottom: 0.2em;
  color: #800000;
  border-bottom: 0.15em solid #800000;
}
.shop-category-count {
  font-size: 75%;
  font-weight: normal;
  color: #555555;
}
.shop-item-card-list {
  list-style: none;
  margin: 0.83em 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}
.shop-item-card {
  border: 0.083em solid #DEB887;
  border-left: 0.25em solid #800000;
  background-color: #F7F5F5;
  padding: 0.42em 0.83em;
}
.shop-item-card a {
  color: #800000;
  text-decoration: none;
  font-weight: bold;
}
.shop-item-card:hover {
  background-color: #FFE4B5;
}
.shop-item-card a:hover,
.shop-item-card a:active {
  color: #800000;
  background-color: transparent;
}
@media screen and (max-width:768px) {
  #shop-submenu {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    -webkit-mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
    mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
  }
  #shop-submenu li {
    flex: 0 0 auto;
  }
  .shop-item-card-list {
    gap: 0.3em;
  }
}
@media screen and (max-width:480px) {
  .shop-item-card-list {
    flex-direction: column;
  }
  .shop-item-card {
    padding: 0.6em 0.83em;
    min-height: 1.6em;
    display: flex;
    align-items: center;
  }
}
#shop-detail-submenu {
  display: flex;
  clear: both;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em;
  border-bottom: 0.083em solid #000000;
  background: #FFEBCD;
}
.shop-detail-categories {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.shop-detail-categories li {
  margin: 0;
}
.shop-detail-categories li a {
  display: inline-block;
  padding: 0.42em 0.83em;
  color: #BC8F8F;
  font: bold 100% Vito, arial, hevetica, sans-serif;
}
.shop-detail-categories li a:hover {
  background: #DEB887;
  color: #800000;
}
.shop-detail-categories li a.selected {
  background: #FFE4B5;
  color: #800000;
}
.shop-checkout-section {
  padding: 0.42em 0.83em;
  flex-shrink: 0;
}
.shop-checkout-placeholder {
  display: block;
  height: 1.9em;
  width: auto;
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  #shop-detail-submenu {
    justify-content: flex-start;
    flex-wrap: nowrap;
  }
  .shop-detail-categories {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    -webkit-mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
    mask-image: linear-gradient(to right, black 0, black calc(100% - 2em), transparent 100%);
  }
  .shop-detail-categories li {
    flex: 0 0 auto;
  }
  .shop-checkout-placeholder {
    height: 1.3em;
  }
}
