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%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
/* ==========================================================================
   CONTAO 5 - NAVIGATION STYLES
   ========================================================================== */

/* Farbvariablen */
:root {
  --color-primary: #8C4A2D;     /* Warmes Cello-Braut / Terracotta */
  --color-primary-dark: #63321C;
  --color-bg-light: #FAF8F5;    /* Sanftes Off-White */
  --color-text: #2C2A29;         /* Dunkles Anthrazit statt Rein-Schwarz */
  --color-accent: #D9822B;       /* Akzent-Farbe für Hover */
  --font-sans: 'Plus Jakarta Sans', system-ui, sans-serif;
}

/* Base Nav Container */
.mod_navigation {
  background-color: var(--color-bg-light);
  padding: 1rem 1.5rem;
  border-bottom: 2px solid rgba(140, 74, 45, 0.1);
  font-family: var(--font-sans);
}

.mod_navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column; /* Mobile first: Untereinander */
  gap: 0.5rem;
}

/* Links & Menüpunkte */
.mod_navigation li a,
.mod_navigation li span.active,
.mod_navigation li span.forward {
  display: block;
  padding: 0.75rem 1rem;
  text-decoration: none;
  color: var(--color-text);
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.25s ease-in-out;
}

/* Hover-Status für Links */
.mod_navigation li a:hover,
.mod_navigation li a:focus {
  background-color: rgba(140, 74, 45, 0.08);
  color: var(--color-primary);
}

/* Aktiver Menüpunkt (Contao setzt span.active oder li.active) */
.mod_navigation li.active a,
.mod_navigation li.active span.active,
.mod_navigation li span.active {
  color: var(--color-primary);
  background-color: rgba(140, 74, 45, 0.12);
  font-weight: 700;
}

/* ==========================================================================
   DESKTOP RESPONSIVE BREAKPOINT (ab 768px)
   ========================================================================== */
@media (min-width: 768px) {
  .mod_navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 3rem;
  }

  .mod_navigation ul {
    flex-direction: row; /* Desktop: Nebeneinander */
    align-items: center;
    gap: 1.5rem;
  }

  .mod_navigation li a,
  .mod_navigation li span.active {
    padding: 0.5rem 1rem;
  }

  /* Subzentrierte elegante Hover-Linie unter den Links */
  .mod_navigation li a {
    position: relative;
  }

  .mod_navigation li a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background-color: var(--color-primary);
    transition: all 0.3s ease;
    transform: translateX(-50%);
  }

  .mod_navigation li a:hover::after {
    width: 80%;
  }
}
