/* ── Design Tokens ─────────────────────────────────────── */
:root {
--clr-primary-dark:   #015f9d;
--clr-primary-mid:    #317dba;
--clr-primary-light:  #f4f8ff;
--clr-primary-hover:   #d0e1f4;
--clr-primary-header:  #d0e1f4;
--clr-text:         #333333;
--clr-muted:        #666666;
--clr-white:        #FFFFFF;
--font-main: 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
}

/* ── Base ───────────────────────────────────────────────── */
body {
font-family: var(--font-main);
font-size: 1.1rem;
line-height: 1.6;
color: var(--clr-text);
background-color: #fff;
}

.col-lg-2 { min-width: 13em; }

a { color: var(--clr-primary-dark); font-weight: 500; text-decoration: none; }
a:hover { color: var(--clr-primary-dark); text-decoration: underline; }

h1, h2, h3, h4 { font-family: Helvetica, 'Open Sans', Arial, Helvetica, sans-serif; 
color: var(--clr-primary-dark); }
h1 { font-size: 1.4rem; font-weight: 400; margin-bottom: 1.0rem; }
h2 { font-size: 1.2rem; font-weight: 400; }
h3 { font-size: 1.1rem; font-weight: 400; line-height:1.3; }
h4 { font-size: 1.0rem; font-weight: bold; margin: 1.25rem 0 0.25rem; }

p, li, td { font-size: 1rem; }
.pe-10 { padding-right: 1rem; }
.bg-color { background-color: var(--clr-primary-light); }
.fa-2x { font-size: 1.2em; }
img.bildlinks { float:left; padding-right:20px; padding-bottom:10px; margin-top:16px; }

/* ── Header ─────────────────────────────────────────────── */
#page-header {
background-color: var(--clr-primary-header);
height: 117px;
display: flex;
align-items: flex-end;
justify-content: space-between;
overflow: hidden;
}
#page-header .header-left {
display: flex;
align-items: flex-start;
gap: 0;
height:117px;
}
#page-header .header-label {
font-size: 1.1rem;
hyphens: auto; 
font-weight: 500;
color: var(--clr-primary-dark);
padding: 0px 0 10px 0px;
letter-spacing: 0em;
margin-top:16px;
}
#page-header .header-right {
position:relative;
height: 100%;
}

#page-header .header-title {
display:block;
position:absolute;
bottom:6px;
right:2rem;
}

#page-header .header-title .logo-font {
display:none;
font-family: Helvetica;
font-size:2.6em;
line-height:0.85em;
font-weight: 300;
color: var(--clr-primary-dark);
padding-left:12px;
margin-top:6px;
}
#page-header .header-title .logo-font span {
opacity:0.4;
}

#page-header .header-title img.logo {
width:94px;
height:auto;
float:left;
}

#home-header .header-block { position:relative; display:block; background: rgba(0,0,0,0.4); padding:5rem 0rem 1rem 1rem; }
#home-header .header-pre {
  font-family: Helvetica;
  font-size: 2.6em;
  line-height: 0.85em;
  font-weight: 300;
  color: var(--clr-primary-hover);
}
#home-header .header-title { margin-top:1rem; font-size: 1.8rem; line-height:1.3em; font-weight: 400;color:#FFF;}
#home-header .header-slogan {margin-top:1rem; font-size: 1.3rem; font-weight: 400;color:#FFF;}
#home-header .header-block img.logo { 
position:absolute; top:2rem; right:2rem; width:4em; height:auto;float:right; }

/* ────────────────────────────────────────── */

.bg-img-center {
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
}
.bg-img-center {
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
}

/* ── Top Nav Bar ────────────────────────────────────────── */
#topnav {
background-color: var(--clr-primary-dark);
font-size: 0.8rem;
min-height: 27px;
padding: 0 32px 0 20px;
}

#topnav .sys-nav {
text-align: right;
padding: 5px 0 4px 0;
color: var(--clr-muted);
}
#topnav .sys-nav .nav-item {
margin-left: 20px;
}
#topnav .sys-nav a {
color: var(--clr-white);
font-weight: 400;
}
#topnav .sys-nav a:hover { color: var(--clr-primary-hover); text-decoration: none; }
#topnav .sys-nav .nav-item.active a { font-weight:600; text-decoration: none; }

/* ── Hamburger Button ───────────────────────────────────── */
#nav-toggle {
display: none;
background: none;
border: none;
padding: 4px 6px;
cursor: pointer;
flex-shrink: 0;
}
#nav-toggle .bar {
display: block;
width: 22px;
height: 2px;
background-color: #fff;
margin: 4px 0;
border-radius: 2px;
transition: transform 0.25s, opacity 0.25s;
}
#nav-toggle.is-open .bar:nth-child(1) { transform: translateY(6px) rotate(45deg); }
#nav-toggle.is-open .bar:nth-child(2) { opacity: 0; }
#nav-toggle.is-open .bar:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* ── Main Nav ───────────────────────────────────────────── */
#mainnav {
background-color: var(--clr-white);
padding: 16px 0 0 0;
}
#mainnav .nav-link {
color: var(--clr-muted);
font-size: 0.9rem;
font-weight: 400;
padding: 4px 4px 4px 0;
display: block;
line-height: 1.5;
}
#mainnav .nav-link:hover {
color: var(--clr-primary-dark);
text-decoration: none;
}
#mainnav .nav-link.active {
color: var(--clr-primary-dark);
font-weight: 600;
}
#mainnav .nav-divider { height: 10px; }
#mainnav .nav-item img { opacity:0; }
#mainnav .nav-item:hover img,
#mainnav .nav-item.active img,
#mainnav .nav-item.current img { opacity:1; }

nav {margin-bottom: 9em;}
#mainnav img.foto { padding: 1em;}

/* ── Content Area ───────────────────────────────────────── */
main {
background-color: var(--clr-white);
padding: 0px 0 60px;
}

/* ── Content Column ─────────────────────────────────────── */
#inhalt p { margin-bottom: 0.6rem; }
#inhalt ul, #sidebar-right ul {
padding-left: 1.2rem;
margin-bottom: 0.6rem;
list-style-image: url(../img/bull.gif);
}
#inhalt ul li, #sidebar-right ul li { margin-bottom: 4px; }
#inhalt img { max-width:100%; }

.hellorange {
background-color: #FFE8B2;
display: block;
padding: 10px;
}

/* ── Sidebar Right ──────────────────────────────────────── */
#sidebar-right {
background-color: var(--clr-primary-light);
border-left: 3px solid var(--clr-primary-hover);
padding: 20px;
border-radius: 2px;
}
#sidebar-right h2 {
color: var(--clr-primary-dark);
font-size: 1.2rem;
padding-bottom: 10px;
}
#sidebar-right p { margin-bottom: 0.5rem; }
#sidebar-right img { max-width:100%; }

/* ── Bear image in sidebar nav ──────────────────────────── */
.side-img {
margin-top: 28px;
width: 100%;
max-width: 180px;
border-radius: 4px;
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
display:none;
width:40px;
height:40px;
position: fixed;
right: 25px;
bottom: 25px;
z-index: 99;
border-radius: 50%;
background-color: var(--clr-primary-mid);
transition: all 0.4s;
text-align:center;
}

.back-to-top i {
font-size: 24px;
color: #fff;
}

.back-to-top:hover {
background-color: var(--clr-primary-dark);
color: #fff;
}

.back-to-top.active {
visibility: visible;
opacity: 1;
}

body.article-12 #sidebar-right { 
background-color: #FFF;
border-left: 3px solid #FFF;
} 



@media (max-width: 582px) {
#page-header .header-left img { display: none; }
#home-header .header-block img.logo { top:1rem; right:1rem; width:4.5em; }
#page-header .header-title {right:1rem;}
#home-header .container { padding-left:0; padding-right:0; }
.sys-nav { display:none; }
.footer { display:block; }
.sys-nav-footer { padding-bottom:2em;  }
.sys-nav-footer ul.list-unstyled {  display:flex; flex-direction:row;margin-bottom:0; }
.footer ul.list-unstyled li, .footer ul.list-unstyled span  { margin:6px 10px; float:left; }
.footer ul.list-unstyled li a  { white-space: nowrap; }
}

@media (min-width: 583px) {
.footer, .sys-nav-footer { display:none !important; }
#home-header .header-block { padding:4rem 2rem 2rem 2rem; }
#home-header .header-block img.logo { width:7em; }
}

/* ── Responsive tweaks ──────────────────────────────────── */
@media (max-width: 767.98px) {
#nav-toggle { display: block; margin-top:4px; }
#page-header { height: auto; }
#mainnav {
overflow: hidden;
max-height: 0;
transition: max-height 0.3s ease;
padding-top: 0 !important;
padding-bottom: 0 !important;
background-color: var(--clr-white);
border-top: 2px solid var(--clr-primary-dark);
}
#mainnav.is-open {
max-height: 500px;
padding-top: 8px !important;
padding-bottom: 12px !important;
}
#mainnav nav { padding: 0 16px; }
#mainnav .nav-link { padding: 6px 4px; border-bottom: 1px solid var(--clr-primary-light); }
#mainnav .nav-divider { height: 0px; }
.side-img { display: none !important; }
nav {margin-bottom: 0em;}
.pt-5 { padding-top: 1rem !important; }
.pe-10 { padding-right: 2rem !important;padding-left: 1.5rem !important; }
.pe-0 { padding-right: 2rem !important;padding-left: 1.5rem !important; }
#inhalt.py-5 { padding-top: 0.5rem !important;padding-bottom: 0.5rem !important; }
aside.mt-4 { margin-top:0.5rem !important; margin-bottom:1.5rem; }
}
@media (min-width: 768px) {
#page-header .header-title .logo-font { display:inline-block; }
}

@media (min-width: 992px) {
.pe-10 { padding-right: 6rem; }
.min-vh-lg-75 { min-height: 75vh !important; }
.w-lg-65 { width: 60% !important; }
}

