@charset "utf-8";
/* CSS Document */
@font-face {
	font-family:"Agenda One Light";
	font-style:normal;
	font-weight:300;
	src : url("font/AgendaOne-Light.woff");
}
@font-face {
	font-family:"Baskerville Pro";
	font-style:normal;
	font-weight:normal;
	src : url("font/BaskervillePro-Regular.woff");
}
@font-face {
	font-family:"LTC Caslon Pro Italic";
	font-style:normal;
	font-weight:normal;
	src : url("font/LTCCaslon-ProItalic.woff");
}
@font-face {
	font-family:"LTC Caslon Pro Regular";
	font-style:normal;
	font-weight:normal;
	src : url("font/LTCCaslon-ProRegular.woff");
}
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, pre, code, blockquote, figure {
	margin:0;
	padding:10;
	border-width:0;
}
body {
	-epub-hyphens:auto;
}
@page {
	margin : 0px 10px 0px10px;
}
div.Einfacher-Textrahmen {
	border-style:solid;
}
div.logo-container {
	border-style:solid;
}
p.fliesstext {
	-epub-text-align-last:left;
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.6;
	margin-bottom:0.0em;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:justify;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
p.flow {
	-epub-text-align-last:left;
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.6;
	margin-bottom:0;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:justify;
	text-decoration:none;
	text-indent:0.0em;
	text-transform:none;
	widows:1;
}
p.airanna {
	-epub-text-align-last:left;
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.6;
	margin-bottom:0;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0.0em;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:justify;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
p.first {
	-epub-text-align-last:left;
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.6;
	margin-bottom:0;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:justify;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
h4.ort {
	color:#3e3d40;
	font-family: system-ui, sans-serif;
	font-size:1em;
	font-style:normal;
	font-variant:normal;
	font-weight:300;
	line-height:1.5;
	margin-bottom:0.917em;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:center;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
h3.subtitel_basic {
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.167em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.286;
	margin-bottom:0.5em;
	margin-left:0.5rem;
	margin-right:0.5rem;
	margin-top:0;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:center;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
h2.kapitel {
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	line-height:1.25;
	margin-bottom:0.5em;
	margin-left:0;
	margin-right:0;
	margin-top:0.833em;
	orphans:1;
	page-break-after:auto;
	page-break-before:auto;
	text-align:center;
	text-decoration:none;
	text-indent:0;
	text-transform:none;
	widows:1;
}
.kursiv {
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	text-transform:none;
}
p._idGenParaOverride-1, h2._idGenParaOverride-1 {
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	text-transform:none;
}
.kursiv_idGenCharOverride-1 {
	color:#000000;
	font-family: system-ui, sans-serif;
	font-size:1.1em;
	font-style:normal;
	font-variant:normal;
	font-weight:normal;
	text-transform:none;
}
#_idContainer008 {
	display:inline-block;
	height:10px;
	width:10px;
}
div._idGenObjectLayout-1 {
	text-align:center;
}#


.white-header .logo {
  font-family: "JetBrains Mono", monospace;
  font-size: 0.9rem;
  letter-spacing: 0.18em;
  color: #0a0a0a;
}

.logo a{
    text-decoration: none; 
    color: inherit;        
}
.white-header nav a {
  margin-left: 2rem;
  text-decoration: none;
  color: #333;
  font-size: 1.05rem;
}

.white-header nav a:hover {
  color: #000;
}

.whitepage {
  background: #ffffff;
  color: #0a0a0a;
  font-family: "Inter", system-ui, sans-serif;
  padding: 2rem 0.5rem 3.5rem;
  max-width: 880px;
  margin: 0 auto;
  line-height: 1.45;
}
@media (max-width: 720px) {
  .whitepage {
    padding: 1.2rem 0.8rem 2rem;
  }
}

#.white-header {
  background: #ffffff;
  border-bottom: 1px solid #e5e5e5;
  padding: 2.0rem 2.5rem;
  position: sticky;
  top: 0;
  z-index: 50;
}

.white-header .wrap {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.diagram-img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid #e5e5e5;
}
.diagram-s-img {
  width: 100%;
  aspect-ratio: 1 / 0.35;
  object-fit: cover;
  border: 1px solid #e5e5e5;
}
.diagram-block-img {
  width: 300px;
	padding-top: 1rem;
	align-self: center;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 0px solid #e5e5e5;
}

.main-nav a.active {
  color: #000;          /* aktiver Link schwarz */
  border-bottom: 1px solid #000;  /* optional: dezente Linie */
}

.main-nav {
  display: flex;
  gap: 2rem;
}

.main-nav a,
.dropdown-menu a,
.mobile-nav a {
  font-family: system-ui, -apple-system, sans-serif;
  text-decoration: none;
  color: #555;
  font-size: 1.05rem;
 border-bottom: 1px solid transparent;
}

.main-nav a:hover {
  color: #000;
}

/* Dropdown */
.dropdown {
  position: relative;
}

.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  border: 1px solid #e5e5e5;
  padding: 0.4rem 0;
  min-width: 220px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.dropdown-menu a {
  display: block;
  padding: 0.6rem 1rem;
  white-space: nowrap;
}

.dropdown-menu a + a {
  border-top: 1px solid #f0f0f0;
}

.dropdown:hover .dropdown-menu {
  display: block;
}
.mobile-nav-toggle {
  display: none;
}


.mobile-nav {
  display: none;
  flex-direction: column;
  gap: 1.2rem;
  padding: 1.5rem 2.5rem;
  background: #fff;
  border-top: 1px solid #e5e5e5;
}
@media (max-width: 900px) {

  .main-nav {
    display: none;
  }

  .mobile-nav-toggle {
    display: block;
    margin-top: 0.3rem;
    font-size: 1.8rem;
    cursor: pointer;
    padding: 0.3rem 2.5rem;
  }

  .mobile-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    flex-direction: column;
    gap: 1.2rem;
    padding: 1.5rem 2.5rem;
    border-top: 1px solid #e5e5e5;
    z-index: 999;
  }
.logo a{
    text-decoration: none; 
    color: inherit;   
}

.site-footer {
  padding: 2rem 6vw;
  border-top: 1px solid #e0e0e5;
  font-size: 0.8rem;
  color: #666;
  background: #f8f8fa;
}

.footer-links {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 0.5rem;
}

.footer-links a {
  color: #666;
  text-decoration: none;
}

.footer-links a:hover {
  color: #111;
}

.footer-copy {
  opacity: 0.7;
}
.mobile-nav-toggle {
  display: none;
}/* DESKTOP STANDARD */

.mobile-nav {
  display: none;
}
+

/* MOBILE */
@media (max-width: 900px) {

  .main-nav {
    display: none;
  }

  .mobile-nav-toggle {
    display: block;
    margin-top: 0.3rem;
    font-size: 1.8rem;
    cursor: pointer;
    padding: 0.3rem 2.5rem;
  }

  .mobile-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    flex-direction: column;
    gap: 1.2rem;
    padding: 1.5rem 2.5rem;
    border-top: 1px solid #e5e5e5;
    z-index: 999;
  }

  .mobile-nav.open {
    display: flex;
  }

  .white-header {
    padding: 1.2rem 1.5rem;
    height: auto;
  }

  .columns {
    grid-template-columns: 1fr;
  }
}
