#UIWrapper{
	margin:0 2em;
	text-align:left;
}
#UIWrapper.flex{
	display:flex;
}

#UINotifications{
	position: absolute;
	right: 30px;
	bottom: 30px;
	z-index: 100001;
}

#UIWelcome{
}

	#UIWelcome h2,
	#UIWelcome h3,
	#UIWelcome h4{
		text-transform: uppercase;
		font-size: 3vh;
		font-weight: 100;
		text-align: center;
		margin: 0 auto;
		color: #444;
	}

	#UIWelcome p{
		text-transform: uppercase;
		font-size: 1.75vh;
		color: #666;
		text-align: center;
	}
.UILogoLayer{
margin-top:2em;
}

@media only screen and (min-width: 1024px) {
.UILogoLayer{
	position:absolute;
	bottom:20%;
	left:0;
	min-width:360px;
}
}
.UILogoLayer a{
	display:inline-block;
	margin:0 2vh;
}

.UILogoLayer a img{
	max-height:40px;
	width:auto;
}

.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0);
  white-space: nowrap; border: 0;
}

/* Container */
.UIPaging {
  display: flex;
  justify-content: center;
  margin: 1rem 0;
}

.UIPaging ul {
  display: flex;
  flex-wrap: wrap;
  gap: .5em;
  margin: 0;
  padding: 0;
}

/* Items */
.UIPaging li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Links und Spans */
.UIPaging li a,
.UIPaging li span {
  display: block;
  min-width: 40px;
  padding: .35em .5em;
  text-align: center;
  line-height: 1.1;
  border-radius: 4px;
}

/* Standard-Link */
.UIPaging li a {
  background: #EEE;
  color: #333;
  border: 1px solid #CCC;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  text-decoration: none;
}

/* Hover/Focus */
.UIPaging li a:hover,
.UIPaging li a:focus-visible {
  background: #2753A8;
  color: #FFF;
  border-color: #2753A8;
  outline: none;
}

/* Aktuelle Seite */
.UIPaging li.current a,
.UIPaging li.current span {
  background: #2753A8;
  color: #FFF;
  border: 1px solid #2753A8;
  font-weight: 700;
}

/* Ellipse */
.UIPaging li.empty span {
  background: transparent;
  border: 1px solid transparent;
  color: #666;
  min-width: auto;
  padding: .35em .25em;
}

/* Prev/Nächste Buttons */
.UIPaging li.prev a,
.UIPaging li.prev span,
.UIPaging li.next a,
.UIPaging li.next span {
  min-width: 32px;
  font-weight: 700;
}

/* Disabled-Zustände */
.UIPaging li.disabled span,
.UIPaging li.disabled a {
  background: #f5f5f5;
  color: #b5b5b5;
  border: 1px solid #e6e6e6;
  cursor: not-allowed;
  pointer-events: none;
}

/* Optional: kompaktes Layout auf sehr schmalen Screens */
@media (max-width: 420px) {
  .UIPaging li a,
  .UIPaging li span {
    min-width: 34px;
    padding: .3em .4em;
  }
}

.uiModalOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100001;
}

/* Container für den Modal-Inhalt */
.uiModalContainer {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 640px;
    max-height: 400px;
    overflow: auto;
    position: relative;
    opacity: 0;
    transform: scale(0.95);
    transition: opacity 0.3s ease, transform 0.3s ease, width 0.3s ease, height 0.3s ease;
}

/* Sichtbare Modal-Animation */
.uiModalVisible {
    opacity: 1;
    transform: scale(1);
}

/* Responsive Anpassung */
@media (max-width: 600px) {
    .uiModalContainer {
        width: 90vw;
        height: auto;
        max-height: 90vh;
    }
}

/* Schließen-Button */
.uiModalCloseButton {
position: absolute;
    top: 22px;
    right: 22px;
    border: none;
    background: transparent;
    font-size: 20px;
    cursor: pointer;
    line-height: 1em;
    padding: 7px;
    margin: 0;
    color:#FFF
}

figcaption{
	display:none;
}

.ui-bc .crumb{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  height:2.25rem;                 /* visuelle Höhe */
  padding:0 .95rem;               /* Innenabstand */
  margin-right:.75rem;            /* Abstand zum nächsten Crumb */
  background:#f3f4f6;             /* hellgrau wie Vorlage */
  border:1px solid #e5e7eb;       /* feine Kontur */
  line-height:1; text-decoration:none;
  /* abgeschrägte linke & rechte Kante */
  clip-path:polygon(14px 0, 100% 0, calc(100% - 14px) 100%, 0% 100%);
}

/* „Weiße Kerbe“ zwischen den Crumbs (wie im Screenshot) */
.ui-bc .crumb:not(:last-child)::after{
  content:""; position:absolute; top:-1px; bottom:-1px; right:-10px; width:20px;
  background:#fff; border-top:1px solid #fff; border-bottom:1px solid #fff;
  transform:skewX(20deg);
}

/* Hover */
.ui-bc .crumb:hover{ background:#eef2f7; }

/* Home-Icon etwas schmaler */
.ui-bc .crumb-icon{ width:2.25rem; padding:0; }
.ui-bc .crumb-icon i{ font-size:1rem; }

/* Responsive Feinschliff */
@media (max-width: 640px){
  .ui-bc{ font-size:.95rem; }
  .ui-bc .crumb{ height:2rem; padding:0 .7rem; clip-path:polygon(12px 0, 100% 0, calc(100% - 12px) 100%, 0 100%); }
  .ui-bc .crumb:not(:last-child)::after{ right:-8px; width:16px; }
}

iframe {
  display: inline-block;
}

iframe[data-src] {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><text text-anchor="middle" alignment-baseline="central" y="50%" font-size="1em" fill="black"><tspan x="50%" dy="-1.5em">Dieses Video kann nur mit</tspan><tspan x="50%" dy="1.5em">aktiviertem JavaScript</tspan><tspan x="50%" dy="1.5em">abgespielt werden</tspan></text></svg>');
}

.video-wrapper,
iframe[data-src] {
  position: relative;
  font: 400 1em/1.46 Helvetica, Arial, sans-serif;
  color: #333;
  display: inline-block;
  min-height: 18em;
  min-width: 28em;
  margin: 0;
  background-color: #eee;
  box-sizing: border-box;
  border: 1.5em solid #ccc;
  padding: 1em;
}

.video-wrapper strong {
  display: block;
  text-align: center;
  font-size: 1.1em;
  margin: 0;
}

.video-wrapper div {
  position: absolute;
  width: calc(100% - 2em);
  top: 3em;
  bottom: 7em;
  overflow-y: auto;
}

.video-wrapper p {
  font-size: 0.8em;
  margin: 0 0 1em;
}

.video-wrapper a {
  color: inherit;
}

.video-wrapper .video-link {
  display: block;
  white-space: nowrap;
  font-size: 0.8em;
  margin: 0;
  position: absolute;
  left: 50%;
  bottom: 6em;
  transform: translateX(-50%);
}

.video-wrapper button {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  color: #eee;
  font: 700 0.8em/1.2 Helvetica, Arial, sans-serif;
  display: block;
  width: 11.5em;
  height: 4.25em;
  border: 0 none;
  border-radius: 0.75em;
  padding: 0 0 0 5.5em;
  text-align: left;
  margin: 0;
  position: absolute;
  left: 50%;
  bottom: 1em;
  transform: translateX(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath fill='%23eee' d='M11.109 17.625l7.562-3.906-7.562-3.953v7.859zM14 4.156c5.891 0 9.797 0.281 9.797 0.281 0.547 0.063 1.75 0.063 2.812 1.188 0 0 0.859 0.844 1.109 2.781 0.297 2.266 0.281 4.531 0.281 4.531v2.125s0.016 2.266-0.281 4.531c-0.25 1.922-1.109 2.781-1.109 2.781-1.062 1.109-2.266 1.109-2.812 1.172 0 0-3.906 0.297-9.797 0.297v0c-7.281-0.063-9.516-0.281-9.516-0.281-0.625-0.109-2.031-0.078-3.094-1.188 0 0-0.859-0.859-1.109-2.781-0.297-2.266-0.281-4.531-0.281-4.531v-2.125s-0.016-2.266 0.281-4.531c0.25-1.937 1.109-2.781 1.109-2.781 1.062-1.125 2.266-1.125 2.812-1.188 0 0 3.906-0.281 9.797-0.281v0z'%3E%3C/path%3E%3C/svg%3E") no-repeat 1em center #666;
  background-size: 3.5em;
  transition: background-color 0.3s;
}

.video-wrapper button:hover {
  background-color: #900;
}