/* 28.01.2024 */

/* Fußnoten:
 * https://wiki.selfhtml.org/wiki/Fu%C3%9Fnoten_mit_CSS
 * https://dnaber.de/blog/2009/fussnoten_in_html/
 *
 * letter-spacing: 0.1em;
*/

/* --------------------------------------------------------------
 *                          Fonts
 * --------------------------------------------------------------
 */
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v32-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v32-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v32-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v32-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/roboto-v32-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* Roboto monospace */
@font-face {
  font-family: 'RobotoMono';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/RobotoMono-Regular.ttf') format('truetype');
}

/* --------------------------------------------------------------
 *                           HTML
 * --------------------------------------------------------------
 */
body, html {
	height: 100%;
}

.bg-fc {
	background:#fcfcfc !important;
}

body {
	font-family: 'Roboto', sans-serif;
	color: #333;
	background-color:#f8f8f8;
	font-size:16px;
	/* Fußnotenzähler */
   counter-reset: footnotes;
}

h1 {
	font-size:1.75rem;
	margin-top:0.75rem;
	text-align:center;
}

h2 {
	font-size:1.2rem;
}

p {
/*	margin-top:0rem;*/
	margin-bottom:0.75rem !important;
}

p.quote {
	margin-left:2ch;
	margin-right:2ch;
}

.small {
  font-size:95% !important;
}

.smaller {
  font-size:90% !important;
}

.big {
  font-size:100% !important;
}

pre {
	display:inline;
	font-family: 'RobotoMono',monospace;
	font-size:0.925rem;         /* 15/16, also statt 16px jetzt 15px Basishöhe */
  	text-align:left;
  	margin-top:0px;
  	margin-bottom:0px;
}

pre.gap {
	padding-left:0.5ch;
}

span.gap {
	padding-left:0.5ch;
}

sup,
sub {
	padding-left:0.15ch;
}

.img-full {
	 width:100%;
  	 height:auto;
}

img, svg {
    vertical-align: middle;
}

@media only screen and (max-width: 767px) {
   .tex-image { max-width: 90%; height:auto; }
}
@media only screen and (min-width: 768px) {
   .tex-image  { max-width: 80%; height:auto; }
}
@media only screen and (min-width: 992px) {
   .tex-image  { max-width: 70%; height:auto; }
}
@media only screen and (min-width: 1200px) {
   .tex-image  { max-width: 60%; height:auto; }
}

.verb {
	font-family: 'RobotoMono', monospace;
	font-size:0.925rem;
}

.rm {
	font-family: 'Roboto', sans-serif;
	font-size:0.95rem !important;           /* small */
}

.ls {
	letter-spacing: 0.2ch;
}
.ls2 {
	letter-spacing: 0.4ch;
}

.red {
	color:red;
}

a {
   color: #973944;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

/* Links im normalen Text: intern und extern */
a.ilink:hover,
a.ilink:focus,
a.elink:hover,
a.elink:focus {
  background-color:#973944;
  color:white;
}

a.ilink::before {
  content: "";
  background: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" width="24" height="19" fill="%23973944" viewBox="0 0 14.857143 12.970522" version="1.1"%3e%3cpath fill-rule="evenodd" d="m 4.9524606,1.8424039 a 0.49524606,0.51587301 0 0 1 0.495246,-0.5158731 h 7.9239374 a 0.49524606,0.51587301 0 0 1 0.495246,0.5158731 v 9.2857141 a 0.49524606,0.51587301 0 0 1 -0.495246,0.515874 H 5.4477066 A 0.49524606,0.51587301 0 0 1 4.9524606,11.128118 V 9.064626 a 0.49524606,0.51587301 0 0 0 -0.9904921,0 v 2.063492 a 1.4857382,1.5476191 0 0 0 1.4857381,1.54762 h 7.9239374 a 1.4857382,1.5476191 0 0 0 1.485738,-1.54762 V 1.8424039 A 1.4857382,1.5476191 0 0 0 13.371644,0.29478475 H 5.4477066 A 1.4857382,1.5476191 0 0 0 3.9619685,1.8424039 v 2.063492 a 0.49524606,0.51587301 0 0 0 0.9904921,0 z" style="stroke-width:1.01091"/%3e%3cpath fill-rule="evenodd" d="m 10.750802,6.8504991 a 0.49524606,0.51587301 0 0 0 0,-0.7304762 L 7.779325,3.0247847 A 0.49587166,0.51652466 0 1 0 7.0780566,3.7552609 L 9.2046431,5.969388 H 0.49524606 a 0.49524606,0.51587301 0 0 0 0,1.0317459 H 9.2046431 L 7.0780566,9.2152605 A 0.49587165,0.51652465 0 0 0 7.779325,9.9457363 Z" style="stroke-width:1.01091"/%3e%3c/svg%3e')  0 0 no-repeat !important;
  padding-right: 30px;
}

a.elink::before {
  content: "";
  background: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" width="20" height="19" viewBox="0 0 20 20" fill="none" version="1.1"%3e%3cpath fill-rule="evenodd" clip-rule="evenodd" d="m 12.368421,2.8947369 c -0.523232,0 -0.947369,-0.4241559 -0.947369,-0.9473686 C 11.421052,1.4241557 11.845189,1 12.368421,1 h 5.684211 C 18.575862,1 19,1.4241557 19,1.9473683 v 5.6842106 c 0,0.5232315 -0.424138,0.9473683 -0.947368,0.9473683 -0.523232,0 -0.94737,-0.4241368 -0.94737,-0.9473683 V 4.2345147 l -6.909063,6.9090533 c -0.3699455,0.369948 -0.9698202,0.369948 -1.3397675,0 -0.3699758,-0.369947 -0.3699758,-0.969821 0,-1.3397677 L 15.765494,2.8947369 Z M 3.8421052,4.7894736 c -0.5232126,0 -0.9473684,0.4241558 -0.9473684,0.9473684 v 10.421052 c 0,0.523232 0.4241558,0.947369 0.9473684,0.947369 H 14.263158 c 0.52323,0 0.947368,-0.424137 0.947368,-0.947369 v -4.322368 c 0,-0.523231 0.424137,-0.947368 0.947368,-0.947368 0.523232,0 0.947368,0.424137 0.947368,0.947368 v 4.322368 C 17.105262,17.727589 15.832852,19 14.263158,19 H 3.8421052 C 2.2724579,19 1,17.727589 1,16.157894 V 5.736842 C 1,4.1671946 2.2724579,2.8947369 3.8421052,2.8947369 H 8.164474 c 0.5232315,0 0.9473685,0.4241556 0.9473685,0.9473683 0,0.5232127 -0.424137,0.9473684 -0.9473685,0.9473684 z" fill="%23973944" style="stroke-width:0.947368"/%3e%3c/svg%3e')  0 0 no-repeat !important;
  padding-right: 25px;
}

/* --------------------------------------------------------------
 *                           Tabellen
 * --------------------------------------------------------------
 */

/* Grundeinstellungen */
table {
	margin: 0px auto;
	background:#fcfcfc;
	border-collapse:collapse;
}

.crypt {
	/* Schrift */
	font-family: 'RobotoMono',monospace;
	font-size:0.925rem;
	line-height:1.1rem;
	margin-bottom:0.75rem;  /* wie p */
	/* Begrenzungslinien oben/unten */
	border-top:1px solid #973944;
	border-bottom:1px solid #973944;
}

/* Abstand oben/unten von den Begrenzungslinien bei crypt */
.crypt tr:first-child td{
  padding-top:0.4ch !important;
}
.crypt tr:last-child td{
   padding-bottom:0.4ch !important;
}

/* Abstand links */
.crypt td:first-child {
  padding-left:1ch !important;
}
/* Änderung für eine Kennzahl */
.kennzahl td:first-child {
	padding-right:1ch !important;
}

/* Abstand rechts */
.crypt td:last-child {
	padding-right:1ch !important;
}


/* besondere Tabellen: Checkerboard und TabellePlus */
table.checkerboard,
table.tabelleplus {
  font-family: 'RobotoMono', monospace;
  font-size:0.925rem;
  line-height:1.1rem;
  margin-bottom:0.75rem !important;   /* wie p */
}

/* besondere Tabellen: beliebige wxh-Tabelle und Transposition */
table.tabelle,
table.transposition {
  font-family: 'RobotoMono',monospace;
  font-size:0.925rem;
  border:1px solid black;
  margin-bottom:0.75rem !important;   /* wie p */
}

/* Gestaltung der einzelnen Zellen in diesen vier Tabellen */
table.checkerboard td,
table.tabelleplus td,
table.tabelle td,
table.transposition td {
  text-align:center;
  padding: 1px 0.5em;
}

/* Tabelle mit zentrierten Einträgen  und ev. einer Kennzahl links*/
/* normaler Abstand */
.zentriert td {
  padding: 2px 0.18em;     /* 0.18em=0.3cn */
  text-align:center;
}

.zentriert1 td {
  padding: 2px 0.125em;     /* 0.125em=0.2083ch */
  text-align:center;
}
.x-zentriert2 td {
  padding: 2px 0.25em;      /* 0.25em=0.4166ch */
  text-align:center;
}

/* alle Spalten haben die gleiche Breite von 2 Ziffern (annähernd zumindest)*/
.breite2,
.breite2plus {
	table-layout:fixed;
}
/* kein .zentriert, weil unterschidedlich breite Zahlen */
.breite2 td {
  text-align:center;
  padding-top: 2px;
  padding-bottom: 2px;
  min-width:2.5ch !important;
}

.breite2 td:first-child {
  min-width:3ch !important;
}

.breite2plus td {
  text-align:center;
  padding-top: 2px;
  padding-bottom: 2px;
  min-width:3.8ch !important;
}

.breite2plus td:first-child {
  min-width:3.8ch !important;
}

/* --------------------------------------------------------------
 *                            tr
 * --------------------------------------------------------------
 */

/*--- tr: einfache Linien ---*/
tr.o {
	border-top:1px solid #888;
}
tr.u {
	border-top:1px solid #888;
}

/*--- td: einfache Linien ---*/
td.o {
	border-top:1px solid #888;
}
td.u {
	border-bottom:1px solid #888;
}
td.l {
	border-left:1px solid #888;
}
td.r {
	border-right:1px solid #888;
}

/* Abstand links/rechts */
td.gap1 {
	padding-left:1ch !important;
	padding-right:1ch !important;
}
td.gap2  {
	padding-left:2ch !important;
	padding-right:2ch !important;
}
td.gap3{
	padding-left:3ch !important;
	padding-right:3ch !important;
}

td.lgap1 {
	padding-left:1ch !important;
}
td.lgap2 {
	padding-left:2ch !important;
}
td.lgap3 {
	padding-left:3ch !important;
}

td.rgap1 {
	padding-right:1ch !important;
}
td.rgap2 {
	padding-right:2ch !important;
}
td.rgap3 {
	padding-right:3ch !important;
}

/* Abstände für \midrule */
tr.midrule td {
	border-top:1px solid #888;
   padding-top:3px !important;

}

tr.midrule-u td {
   padding-bottom:3px !important;
}


/* --------------------------------------------------------------
 *                          Galerie
 * --------------------------------------------------------------
 */

/*ul.nebeneinander {
	margin-top:0.75rem !important;
}*/

.nebeneinander {
	padding-left: 0;
	margin-top:0.5rem;
	margin-bottom:0.25rem;
}

.nebeneinander li {
	padding-left:1.5em;
	padding-right:1.5em;
}

.nebeneinander table.tabelle {
	margin-bottom:0 !important;
}

.nebeneinander table.tabelle caption {
	margin-bottom:0 !important;
}

/* --------------------------------------------------------------
 *                      Hintergrundfarben
 * --------------------------------------------------------------
 */

.gruen {
  background:#a6ffa6;
}
.blau {
  background:#bfdfff;
}
.rot {
  background:#ffa6a6;
}
.gelb {
  background:#ffff99;
}
.cyan {
  background:#a6ffff;
}
.gray {
  background:#e6e6e6;
}
.gray70 {
	background:#b3b3b3;
}

/* eine ganze Zeile eines Checkerboards grau markieren */
tr.cb-zeile-gray td {
  background:#e6e6e6;
}
tr.cb-zeile-gray td:first-child {
  background:#fcfcfc;
}

/*--- Caption ---*/
caption {
  	font-family:'Roboto';
  	font-size: 80%;
  	margin-top:0px;
  	caption-side:bottom;
	text-align:center;
}

/* --------------------------------------------------------------
 *                               Navbar
 * --------------------------------------------------------------
 */

/* Farbe der Trennlinien */
.dropdown-divider {
    border-top: 1px solid #666;
    border-top: 1px solid var(--bs-dropdown-divider-bg);
}

/* Abstand der Einträge*/
.dropdown-item {
    padding: 0.2rem var(--bs-dropdown-item-padding-x);
}

/* Breite für die Sprachen begrenzen */
.dropdown-menu-language {
    --bs-dropdown-min-width:3.5rem;
}

.dropdown-menu {
   font-size: 16px;
}

/*-------------------- Navbar --------------------*/

/*** Navbar ***/
.navbar-light {
	 background-color:#f9f1e4 !important;             /* dani  */
    border-bottom: 1px solid #973944;                /* dani  */

}

.navbar-light .navbar-nav .nav-link {
    position: relative;
    margin-right: 25px;
    padding: 30px 0;                                 /* <---------------------  ou lr:  Abstand der navbar nach oben/unten - 30 oder 35 ?? */
    color:#33668c;
    color:#973944;
    font-size: 16px;
    font-weight: 400;
    outline: none;
    transition: .5s;
 }

.sticky-top .navbar-light .navbar-nav .nav-link {
    padding: 20px 0;
    color: #ff00ff !important;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active {
    font-weight:500;
}

.navbar-light .navbar-brand img {
   position:relative;
   width:90px;
   height:90px;
   top:0;
   left:0;
   transition: .5s;
}

.sticky-topp .navbar-light .navbar-brand img {
    max-heightxxx: 65px;
 }

/*-------------------- Dropdown-Menü --------------------*/

.dropdown .dropdown-menu a:hover {
     background:#973944;
     color:#fdfaf7;
}

.navbar .nav-item:hover .dropdown-menu {
    transform: rotateX(0deg);
    visibility: visible;
    transition: .5s;
    opacity: 1;
    background: #fdfaf7 !important;
    border:1px solid var(--bs-dropdown-divider-bg);
}

/*-------------------- Media < 992 --------------------*/

@media (max-width: 991.98px) {
   .sticky-top {
      position: relative;
      background: var(--bs-white);
   }
   .navbar.navbar-expand-lg .navbar-toggler {
      padding: 10px 20px;
      border: 1px solid #33668c !important;
       color: #33668c;
     border: 1px solid #973944 !important;
       color: #973944;
   }

   .navbar-light .navbar-collapse {
      margin-top: 15px;
      border-top: 1px solid #DDDDDD;
   }

   .navbar-light .navbar-nav .nav-link,
   .sticky-top .navbar-light .navbar-nav .nav-link {
      padding: 10px 0;
      margin-left: 0;
      color: var(--bs-dark) !important;
   }

   /* Toggler nicht am rechten Rand kleben */
   button.navbar-toggler {
      margin-right:2em;
   }

   /* Bild links ausblenden */
   .navbar-light .navbar-brand img {
      visibility: hidden;
      max-height: 0;
      max-width: 0;
   }

   /* Bild rechts ausblenden */
   .nav-rechts,
   .nav-fotobuch-image {
      visibility: hidden;
      max-height: 0;
      max-width: 0;
   }


}

/*-------------------- 992 < Media  --------------------*/

@media (min-width: 991.98px) {
    .sticky-top .navbar-light {
       background: var(--bs-light) !important;
    }

    /* Dropdown-Menü unsichtbar machen (sichtbar bei hover oder Klick) */
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        border: 0;
        border-radius: 10px;
        transition: .5s;
        opacity: 0;
        background: #fdfaf7 !important;
    }

    /*** Top and Bottom borders go out ***/
    .navbar-light .navbar-nav .nav-link:after,
    .navbar-light .navbar-nav .nav-link::before {
        position: absolute;
        content: "";
        top: 30px;
        bottom: 30px;
        left: 0px;
        width: 100%;
        height: 2px;
        background: #973944;
        opacity: 0;
        transition: all 0.5s;
    }

    .navbar-light .navbar-nav .nav-link:before {
        bottom: auto;
    }

    .navbar-light .navbar-nav .nav-link:after {
        top: auto;
    }

    .navbar-light .navbar-nav .nav-link:hover:before,
    .navbar-light .navbar-nav .nav-link.active:before {
        top: 20px;
        opacity: 1;
    }

    .navbar-light .navbar-nav .nav-link:hover::after,
    .navbar-light .navbar-nav .nav-link.active::after {
        bottom: 20px;
        opacity: 1;
    }
}


/* --------------------------------------------------------------
 *                           Footer
 * --------------------------------------------------------------
 */

.ga-footer3 {
	margin-top:1.25rem !important;
	margin-bottom:0;
}

.ga-footer4 {
   background-color:#f9f1e4;
   line-height:1.5rem;
}

/*------ footer 2 ------*/

.ga-footer a {
   text-decoration:none;
    cursor:pointer !important;
}

.ga-footer img {
  margin: 0 25px;
}


/* ------ curve ------*/

[class*='footer-divider-'] {
  position: relative;
  overflow: hidden;
}

[class*='footer-divider-']:before {
  content: '';
  position: absolute;
}

.footer-divider-curve-top:before {
  top: 0;
  left: -5%;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
/*  background-image: url(../images/svg/curve2.svg);*/
  background-image: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none" version="1.1"%3e%3cpath d="M 600,114.28602 C 268.6314,114.28602 0.00253312,66.356161 0.00253312,7.2274466 V 121.62005 H 1199.9975 V 7.2274466 C 1199.9975,66.356161 931.3686,114.28602 600,114.28602 Z" class="shape-fill" fill="%23f8f8f8" fill-opacity="1" stroke="%2333668c" stroke-width="1.00717" stroke-opacity="1"/%3e%3c/svg%3e');
  background-size: 100% 100%;
  width: 110%;
  height: 50px;
  pointer-events:none;
}

/*.footer-divider-curve-bottom:before {
  bottom: 0;
  left: -5%;
  background-image: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none" version="1.1"%3e%3cpath d="M 600,114.28602 C 268.6314,114.28602 0.00253312,66.356161 0.00253312,7.2274466 V 121.62005 H 1199.9975 V 7.2274466 C 1199.9975,66.356161 931.3686,114.28602 600,114.28602 Z" class="shape-fill" fill="%23f8f8f8" fill-opacity="1" stroke="%2333668c" stroke-width="1.00717" stroke-opacity="1"/%3e%3c/svg%3e');
  background-size: 100% 100%;
  width: 110%;
  height: 60px;
}*/

@media (max-width: 991.98px) {
  .footer-divider-curve-top:before,
/*  .footer-divider-curve-bottom:before {*/
    height: 40px;
  }
}

