/* quicksand-300 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 300;
  src: url('webfonts/quicksand-v31-latin_latin-ext-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* quicksand-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 400;
  src: url('webfonts/quicksand-v31-latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* quicksand-500 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 500;
  src: url('webfonts/quicksand-v31-latin_latin-ext-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* quicksand-600 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 600;
  src: url('webfonts/quicksand-v31-latin_latin-ext-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* quicksand-700 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 700;
  src: url('webfonts/quicksand-v31-latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
:root {
  --brand: #b42326;
  --brand-700: #a01f22;

}
    html{scroll-behavior:smooth}
    
    body{
    margin:0;font-family: 'Quicksand',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;color:var(--text);background:#fafafa; 
    font-size: 1.6em;
    background-image: url(images/abc_bg.svg);
    background-repeat: repeat-y;
    background-position: right;
    }
    
    a {
    	color: #b42326;
    }
    a:hover {
    	color: #000 !important;
    }
  nav a {
  	color: #000 !important;
  	font-weight: 700;
  }  
.fas {
   color:var(--brand);
}
header {
	//height: 100px;
	width: 100%;
}
ul {
	list-style: none;
}
ul li {
	margin-left: 0;
	padding-left: 0;
}
ul.nebennavi {
	list-style: none;
	padding-left: 0;
	margin-left: 0;
	font-weight: 700;
}
.rounded-top-right-0 {
  border-radius: 20px;                 
  border-top-right-radius: 0;          
}
.rounded-top-left-0 {
  border-radius: 20px;                 
  border-top-left-radius: 0;          
}
.schatten {
	box-shadow: 0 4px 12px rgba(0,0,0,.18);
}
.dachzeile {
	padding: 0;
	margin: 0;
	font-style: oblique;
	color:var(--brand);
}
.rund {
	border-radius: 50%;
}

sl-button[variant="primary"]::part(base):hover {
  background: #b42326 !important;   
  border-color: #b42326 !important; 
  color: #000 !important;      
}
button {
	background: #b42326 !important;
	border: none !important;
	color: #fff;
	font-weight: 700;
	padding: 8px;
	border-radius: 10px;
}

body {
	//background-color: #fff;
	color: #000;
	font-family: 'Quicksand', sans-serif;
	font-weight: 300;
	font-size: 1.2em;
	letter-spacing: 0.05em;
	//overflow-x: hidden;
	
}
.container, .row {
  //overflow-x: hidden;
}
a:focus {
	outline: none;
}
a {
	color: #a4312e;
	text-decoration: none;
}
a:hover {
	color: #333;
}

h1, h4 {
	font-weight: 700;
	color: #a4312e;
	//text-transform: uppercase;
}
/*
h1 {
	font-size: 2.8em;
}
h2 {
	font-size: 2em;
}
*/
h3 {
	font-size: 1.2em;
}
/*
h4 {
	font-size: 1.3em;
}
*/
strong {
	font-weight: 700;
}
.rot {
	background-color: #a4312e;
}
.weiss {
	background-color: #fff;
}
.zentriert {
	text-align: center;
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -1;
}

body.user-is-tabbing .skip-link:focus {
  position: absolute;
  left: 16px;
  top: 16px;
  width: auto;
  height: auto;
  z-index: 10000;
  padding: 10px;
  background: #000;
  color: #fff;
}

#scrollBtn {
  display: none; 
  position: fixed; 
  bottom: 30px; 
  right: 30px;
  z-index: 99; 
  border: none; 
  outline: none; 
  background-color: none !important; 
  cursor: pointer; 
  font-size: 2.3em !important; 
}

#scrollBtn:hover, #scrollBtn a:hover {
  color: #a4312e; 
}
iframe {
	padding: 0px !important;
}
.abstand {
	padding-top: 50px;
	padding-bottom: 50px;
}
ul.inhalt {
	list-style-type: circle;
	margin-left: 5px;
	padding-left: 15px;
}
ul.inhalt li::before {

}
ul.inhalt li {
	margin-bottom: 10px;	
}
button.accordion-button {
	background-color: #fff !important;
}
.accordion-button a {
	color: #a4312e !important;
}
.accordion-body {
	border: none !important;
}
        .sticky {
            transition: all 0.3s ease-in-out;
        }
        
        .sticky.scrolled {
            background-color: white;
            padding: 10px 0;
            z-index: 2;
        }
        
        .sticky.scrolled .topbar {
            height: 60px;
        }
        
        .sticky.scrolled .brand-icon img {
            height: 50px !important;
        }
        
        .sticky.scrolled .brand h1 {
            //font-size: 1.2rem;
        }
        
        /* Hamburger Menu Styles */
        .hamburger {
            display: none;
            flex-direction: column;
            cursor: pointer;
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            z-index: 1001;
        }
        
        .hamburger span {
            width: 25px;
            height: 3px;
            background-color: #333;
            margin: 3px 0;
            transition: 0.3s;
        }
        
        .hamburger.active span:nth-child(1) {
            transform: rotate(-45deg) translate(-5px, 6px);
        }
        
        .hamburger.active span:nth-child(2) {
            opacity: 0;
        }
        
        .hamburger.active span:nth-child(3) {
            transform: rotate(45deg) translate(-5px, -6px);
        }
        
        /* Navigation responsive */
        .sticky.scrolled nav {
            display: none;
        }
        
        .sticky.scrolled nav.mobile-nav-open {
            display: block;
            position: absolute;
            top: 100%;
            left: 0;
            right: 0;
            background: white;
            box-shadow: 0 2px 5px rgba(0,0,0,0.1);
            padding: 20px;
        }
        
        .sticky.scrolled nav.mobile-nav-open a {
            display: block;
            padding: 10px 0;
            border-bottom: 1px solid #eee;
        }
        
        /* Kontakt Button ausblenden beim Scrollen */
        .sticky.scrolled .topbar > div:last-child {
            display: none;
        }
        
        .sticky.scrolled .hamburger {
            display: flex;
        }