/*! style.css | (c) Dieter Schärf <ds@dschaerf.de> */

/* Design */
main h2 { font-size: 2em; font-variant: small-caps; font-weight: normal; letter-spacing: 0.1em; margin: 0.67em 0; }
main h3 { font-size: 1.5em; font-variant: small-caps; font-weight: normal; letter-spacing: 0.1em; margin: 0.83em 0; }
main h4 { font-size: 1.17em; margin: 1em 0; }
main h5 { font-size: 1em; margin: 1.33em 0; }
main h6 { font-size: 0.83em; margin: 1.67em 0; }
main ol,
main ul { padding-left: 2.5em; }
main li { margin: 0.75em 0; }
main > article h3 { margin-top: 1.33em; }
main > aside ul,
main > aside ol { padding-left: 1.5em; }
@media print {
	body > footer { border-top: thin solid currentColor; margin-top: 2em; }
}
@media screen {
	body { display: grid; grid-template-rows: auto 1fr auto; max-width: 64em; min-height: 100vh; }
	main { display: grid; grid-template-rows: auto 1fr; }
	main h2 { background: transparent url("../images/caption.gif") no-repeat bottom left; color: #2E386C; }
	main h3 { color: #6C2E44; }
	main > div img { width: 64em; }
	main > article { min-width: 0; padding: 0 1.25em; }
	main > aside { display: grid; font-size: smaller; gap: 0 2em; grid-template-columns: repeat(auto-fit, minmax(min(20em, 100%), 1fr)); padding: 0 1.25em; }
}
@media screen and (max-width: 83.9375em) {
	html { background-color: #B1B1B1; }
	body { background-color: #E7BDC6; box-shadow: 0 0 0.5em rgba(0,0,0,0.8); }
	body > header { padding: 0 1.25em; }
	body > footer { background-color: #6C2E44; color: #E7BDC6; padding: 0 1.25em; }
	main { background-color: #FFFFFF; }
	main > aside { background-color: #F0DCE3; }
	.with-sidebar main { grid-template-rows: auto 1fr auto; }
}
@media screen and (min-width: 84em) {
	html { background: #F0DCE3 url("../images/background.gif") repeat-x fixed top left; }
	body > footer { color: #6C2E44; }
	main { gap: 1em; }
	main > * { background-color: #FFFFFF; border: thin solid #6C2E44; box-shadow: inset 0 0 0.5em rgba(0,0,0,0.2); }
	main > div { position: relative; }
	main > div::after { box-shadow: inset 0 0 0.5em rgba(0,0,0,0.2); content: ""; inset: 0; pointer-events: none; position: absolute; }
	.with-sidebar { gap: 0 1em; grid-template-columns: 4fr 1fr; max-width: 81em; }
	.with-sidebar main { grid-column: 1 / 3; grid-template-columns: 4fr 1fr; }
	.with-sidebar main > * { grid-column: 1 / 2; }
	.with-sidebar main > aside { align-self: start; grid-column: 2 / 3; grid-row: 1 / 3; }
}


/* Navigation "Allgemeine Seiten" */
.commonpages ul { display: flex; flex-flow: row wrap; gap: 1em; justify-content: center; padding: 0; }
.commonpages ::marker { font-size: 0; }
/* Navigation "Hauptseiten inkl. Logo und Suche" */
.navigation { display: flex; flex-flow: row wrap; gap: 1em; justify-content: center; margin: 1em 0; }
.navigation ::marker { font-size: 0; }
.navigation ul { margin: 0; padding: 0; }
.navigation-logo img { width: 22.6875em; }
.navigation-search { align-items: center; background-color: #F0DCE3; border: thin solid #6C2E44; display: flex; justify-content: flex-end; margin: 0; width: 100%; }
.navigation-search input { background-color: transparent; border-style: none; color: #6C2E44; font-weight: bold; padding-right: 4em; }
.navigation-search button { background-color: transparent; border-style: none; color: #6C2E44; }
.navigation-menu { background: #DCDFF0 url("../images/menubar.gif") repeat-x top left; border: thin solid #2E386C; color: #2E386C; width: 100%; }
@media (any-hover: hover) {
	.navigation-search button:hover { background-color: #6C2E44; color: #F0DCE3; }
	.navigation-toggle a:hover { background-color: #2E386C; color: #DCDFF0; }
}
@media screen and (max-width: 83.9375em), screen and (min-width: 84em) and (any-hover: none) {
	.navigation-menu { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(20em, 100%), 1fr)); }
	.navigation-toggle { grid-column: 1 / -1; }
	.navigation-toggle a { align-items: center; display: flex; justify-content: space-between; padding: 0.75em 1.25em; text-decoration: none; }
	.navigation-toggle [class*="icon-"] { margin-left: 1.25em; }
	.navigation-hide { border-bottom: thin solid #B9BFE0; }
	.navigation-item { padding: 0.75em 1.25em; }
	.navigation-item li { padding-top: 0.5em; }
	.navigation-item li li { padding-left: 1.25em; }
	.navigation-item > a { font-size: large; text-transform: uppercase; }
	.no-script .navigation:target .navigation-show,
	.no-script .navigation:not(:target) .navigation-item,
	.no-script .navigation:not(:target) .navigation-hide,
	.script .navigation.open .navigation-show,
	.script .navigation:not(.open) .navigation-item,
	.script .navigation:not(.open) .navigation-hide { display: none; }
}
@media screen and (min-width: 50em) {
	.navigation { align-items: center; justify-content: space-between; }
	.navigation-search { max-width: 20em; }
}
@media screen and (min-width: 84em) and (any-hover: hover) {
	.navigation-menu { display: flex; }
	.navigation-menu ul { position: absolute; }
	.navigation-menu ul ul { opacity: 0.96; }
	.navigation-menu li { position: relative; }
	.navigation-menu li:not(:hover) > ul:not(:focus-within) { height: 1px; margin: -1px; overflow: hidden; width: 1px; }
	.navigation-menu li:hover > ul,
	.navigation-menu li > ul:focus-within { background: #E7BDC6 url("../images/menu.gif") repeat-x top left; border: thin solid #6C2E44; box-shadow: 0 0 0.125em rgba(0,0,0,0.4); color: #6C2E44; min-width: 20em; z-index: 101; }
	.navigation-menu li li:hover > ul,
	.navigation-menu li li > ul:focus-within { left: 100%; top: -1px; z-index: 102; }
	.navigation-menu a { display: block; padding: 0.75em 1.25em; text-decoration: none; }
	.navigation-toggle { display: none; }
	.navigation-item { border-right: thin solid #B9BFE0; }
	.navigation-item:hover > a { background-color: #2E386C; color: #DCDFF0; }
	.navigation-item li:hover > a { background-color: #6C2E44; color: #F0DCE3; }
}
/* Navigation "Inhaltsverzeichnis" */
.table-of-contents { background: #DCDFF0 url("../images/button.gif") repeat-x top left; border: thin solid #2E386C; color: #2E386C;  max-width: max-content; }
.table-of-contents summary { padding: 0.75em 1.25em; }
.table-of-contents[open] summary { border-bottom: thin solid #B9BFE0; }
.table-of-contents ol { padding-right: 1.5em; }
@media (any-hover: hover) {
	.table-of-contents summary:hover { background-color: #2E386C; color: #DCDFF0; }
}
/* Navigation "Seitennummerierung" */
.subpages { display: flex; flex-flow: row wrap; gap: 0.5em; justify-content: center; margin: 1em 0;  }
.subpages > * { background-color: #E7BDC6; border: thin solid #6C2E44; color: #6C2E44; line-height: 2.875em; text-align: center; width: 3em; }
.subpages > a { background: #DCDFF0 url("../images/button.gif") repeat-x top left; border-color: #2E386C; color: #2E386C; text-decoration: none; }
@media (any-hover: hover) {
	.subpages > a:hover { background: #2E386C; color: #DCDFF0; }
}
/* Navigation "Sie sind hier" */
.you-are-here { background: transparent url("../images/line.gif") no-repeat bottom right; display: flex; flex-flow: row wrap; justify-content: flex-end; margin: 1em 0; padding-bottom: 0.25em; }
/* Navigation "Springe zum Hauptinhalt-Link" */
.skip-to-content { background: #DCDFF0 url("../images/button.gif") repeat-x top left; box-shadow: 0 0 0.5em rgba(0,0,0,0.8); color: #2E386C; display: block; left: 0; padding: 0.75em 1.25em; position: fixed; text-align: center; text-decoration: none; top: 0; z-index: 99; }
.skip-to-content:not(:focus) { box-shadow: none; transform: translateY(-100%); transition: transform 0.5s ease-out; }
@media (any-hover: hover) {
	.skip-to-content:hover { background: #2E386C; color: #DCDFF0; }
}
/* Navigation "Springe zum Seitenanfang-Link" */
.skip-to-top { background: #DCDFF0 url("../images/button.gif") repeat-x top left; bottom: 2em; box-shadow: 0 0 0.5em rgba(0,0,0,0.8); color: #2E386C; padding: 0.75em 1.25em; position: fixed; right: 2em; text-decoration: none; z-index: 99; }
.skip-to-top:not(:focus):not(:hover) { opacity: 0.54; }
@media (any-hover: hover) {
	.skip-to-top:hover { background: #2E386C; color: #DCDFF0; }
}
/* Navigation "Suchregister" */
.lookup { border-bottom: thin solid #E7BDC6; display: flex; flex-flow: row wrap; gap: 0.5em; justify-content: center; padding-bottom: 1em; margin: 1em 0;  }
.lookup > * { background-color: #E7BDC6; border: thin solid #6C2E44; color: #6C2E44; line-height: 2.875em; text-align: center; width: 3em; }
.lookup > a { background: #DCDFF0 url("../images/button.gif") repeat-x top left; border-color: #2E386C; color: #2E386C; text-decoration: none; }
@media (any-hover: hover) {
	.lookup > a:hover { background: #2E386C; color: #DCDFF0; }
}
/* Navigation "Weiter-/Zurück-Sequenz" */
.previous-next-sequence { background: transparent url("../images/line.gif") no-repeat top right; display: flex; flex-flow: row wrap; justify-content: flex-end; margin: 1em 0; padding-top: 0.25em; }
.previous-next-sequence a > span { display: inline-block; }


/* Absatztyp "Aufmacher (Standard)" */
.teaser { background-color: #F0DCE3; border: thin solid #6C2E44; color: #6C2E44; margin: 1em 0; padding: 0 1.25em; }
.teaser ::marker { font-size: 0; }
.teaser h4 { border-bottom: thin solid #E7BDC6; font-variant: small-caps; font-weight: normal; letter-spacing: 0.2em; padding-bottom: 1em; text-align: center; }
.teaser ul { padding: 0; }
.teaser li { margin: 1em 0; }
.teaser li > a { color: #2E386C; font-size: large; font-weight: bold; }
.teaser li > em { display: block; margin-top: 0.5em; }
.teaser li > img { border: thin solid #B1B1B1; margin-bottom: 0.5em; }
.teaser li + li { border-top: thin solid #E7BDC6; padding-top: 1em; }
@media print and (min-width: 480.75pt), screen and (min-width: 42.5625em) {
	:not(.teaser-group) > .teaser li > img { float: right; margin-bottom: 0; margin-left: 2em; width: 30%; }
	:not(.teaser-group) > .teaser li > img + br { display: none; }
}
@media screen {
	.teaser-group { align-items: start; display: grid; gap: 1em 1.25em; grid-template-columns: repeat(auto-fit, minmax(min(16em, 100%), 1fr)); margin: 1em 0; }
	.teaser-group > .teaser { margin: 0; }
}
/* Absatztyp "Aufmacher (Als Galerie darstellen)" */
.gallery { display: grid; gap: 1em 1.25em; grid-template-columns: repeat(auto-fill, minmax(min(16em, 100%), 1fr)); margin: 1em 0; }
.gallery a { background-color: #F0DCE3; border: thin solid #6C2E44; color: #6C2E44; }
.gallery figure { margin: 0; }
.gallery figcaption { line-height: 1.8; margin: 1em 1.25em; text-align: center; }
/* Absatztyp "Aufzählung" */
ol.emphasize,
ul.emphasize { background-color: #F0DCE3; border: thin solid #6C2E44; color: #6C2E44; line-height: 1.8; padding-right: 1.5em; }
ol.emphasize li,
ul.emphasize li { margin: 1em 0; padding-left: 0.75em; }
ul[class="emphasize"] { list-style-image: url("../images/bullet.gif"); }
ul[class="sitemap"] { list-style-image: url("../images/arrow.gif"); }
ul[class="sitemap"] li { padding-left: 0.75em; }
ul[class="sitemap"] ul { padding-left: 1.25em; }
/* Absatztyp "Formular" */
.form button { background: #DCDFF0 url("../images/button.gif") repeat-x top left; border: thin solid #2E386C; color: #2E386C; }
.form textarea { border: thin solid #B1B1B1; }
.form [type="email"] { border: thin solid #B1B1B1; }
.form [type="search"] { border: thin solid #B1B1B1; }
.form [type="text"] { border: thin solid #B1B1B1; }
.form :required:invalid { background-color: #F0DCE3; border-color: #6C2E44; color: #6C2E44; }
.form :required:valid { border-color: currentColor; }
@media (any-hover: hover) {
	.form button:hover { background: #2E386C; color: #DCDFF0; }
}
/* Absatztyp "Grafik" */
.picture { margin: 1em 0; }
.picture figcaption { color: #6C2E44; margin-top: 0.25em; text-align: center; }
.picture figcaption strong { color: #2E386C; }
div.picture img { border: thin solid #B1B1B1; }
figure.picture img { border: thin solid #6C2E44; }
main > article .picture img { width: 61.5em; }
main > aside .picture img { width: 40em; }
/* Absatztyp "Medienclip" */
.movie { margin: 1em 0; }
.movie figcaption { color: #6C2E44; margin-top: 0.25em; text-align: center; }
.movie figcaption strong { color: #2E386C; }
div.movie video { border: thin solid #B1B1B1; }
figure.movie video { border: thin solid #6C2E44; }
main > article .movie video { width: 61.5em; }
/* Absatztyp "Registerkarte (Akkordeonbereich)" */
.accordion summary { background-color: #F0DCE3; border: thin solid #E7BDC6; color: #6C2E44; padding: 0.75em 1.25em; }
@media (any-hover: hover) {
	.accordion summary:hover { background-color: #6C2E44; color: #F0DCE3; }
}
@media print and (min-width: 480.75pt), screen and (min-width: 42.5625em) {
	.accordion summary { border-bottom: unset; width: 65%; }
	.accordion:not([open]) { border-bottom: thin solid #E7BDC6; }
	.accordion[open] summary + * { border-top: thin solid #E7BDC6; margin-top: 0; padding-top: 1em; }
}
/* Absatztyp "Registerkarte (Registerbereich)" */
/* Absatztyp "Tabelle (Standard)" */
table.border,
table.borders td,
table.borders th { border: thin solid #6C2E44; }
table.bordered tr { border-bottom: thin solid #F0DCE3; }
table.striped thead tr { background-color: #E7BDC6; }
table.striped tbody tr:nth-child(even) { background-color: #DCDFF0; }
table.striped tbody tr:nth-child(odd) { background-color: #F0DCE3; }
@media (any-hover: hover) {
	table.hoverable.striped tbody tr:hover { background-color: #E7BDC6; color: #6C2E44; }
}
/* Absatztyp "Tabelle (Als Galerie darstellen)" */
.pictures-collection { display: grid; gap: 1em 1.25em; grid-template-columns: repeat(auto-fill, minmax(min(12em, 100%), 1fr)); margin: 1em 0; }
.pictures-collection > a { background-color: #F0DCE3; border: thin solid #6C2E44; color: #6C2E44; }
.pictures-collection > img { border: thin solid #B1B1B1; }
/* Absatztyp "Text (Standard)" */
p.emphasize { border-left: 0.75em solid #E7BDC6; line-height: 1.8; padding: 0.25em 0 0.25em 1.25em; }
/* Absatztyp "Text (Mehrspaltig - Als Registerkarten)" */
/* Absatztyp "Text (Mehrspaltig - In Spalten nebeneinander)" */
.text-columns { align-items: start; display: grid; gap: 1em 2em; grid-template-columns: repeat(auto-fit, minmax(min(16em, 100%), 1fr)); margin: 1em 0; }
.text-columns > div > :first-child { margin-top: 0; }
.text-columns > div > :last-child { margin-bottom: 0; }
/* Absatztyp "Text (Quelltext)" */
/* Absatztyp "Text (Vorformatiert)" */
/* Absatztyp "Text (Zitat)" */


/* Absatzbild */
.sidepicture { margin: 1em 0; }
.sidepicture figcaption { color: #6C2E44; font-size: smaller; margin-top: 0.25em; text-align: center; }
.sidepicture figcaption strong { color: #2E386C; }
.sidepicture img { width: 40em; }
div.sidepicture img { border: thin solid #B1B1B1; }
figure.sidepicture img { border: thin solid #6C2E44; }
@media print and (min-width: 480.75pt), screen and (min-width: 42.5625em) {
	.sidepicture-left .sidepicture { background-position: top right; padding-right: 1.25em; }
	.sidepicture-right { flex-direction: row-reverse; }
	.sidepicture-right .sidepicture { background-position: top left; padding-left: 1.25em; }
	[class^="sidepicture-"] { display: flex; gap: 0 2em; margin: 1em 0; }
	[class^="sidepicture-"] > * { align-self: start; flex: 0 0 65%; margin: 0; }
	[class^="sidepicture-"] > div > :first-child { margin-top: 0; }
	[class^="sidepicture-"] > div > :last-child { margin-bottom: 0; }
	[class^="sidepicture-"] .sidepicture { background-image: url("../images/separator.gif"); background-repeat: no-repeat; flex: 1 1 0%; }
}


/* Querverweis */
a.link { color: #2E386C; font-weight: bold; }


/* Selektoren "Allgemein" */
/* Selektoren "Sonstige" */
