/* ==========================================================================
   # BOF layout.css
   --------------------------------------------------------------------------
   # StyleSheet: Layout
   # Datum: 2019-03-29
   # Version: 1.0.0
   # Autor: Patrick Dietze | MAE Systems GmbH
   ========================================================================== */


/* ==========================================================================
   # Info - Defaults
   --------------------------------------------------------------------------
   # Media-Queries
   # - Standard-Media-Queries, die wir hier nutzen
   # - mobile-first
   #
   # Default:            XS ab    0px  @media screen () 
   # Small:              SM ab  576px  @media screen and (min-width: 36em)
   # Medium:             MD ab  768px  @media screen and (min-width: 48em)
   # Large:              LG ab  992px  @media screen and (min-width: 62em)
   # Extra large:        XL ab 1200px  @media screen and (min-width: 75em)
   # Extra extra large: XXL ab 1408px  @media screen and (min-width: 88em)
   #
   #
   # BULMA:
   # mobile:      up to 768px  48em
   # tablet:      from  769px
   # desktop:     from 1024px  64em
   # widescreen:  from 1216px  76em
   # fullhd:      from 1408px  88em



   ========================================================================== */

/* ==========================================================================
   Basis-Einstellungen
   ========================================================================== */




/* Basis-Variablen
   ========================================================================== 
   #222222      rgb(34, 34, 34)         hsl(0, 0%, 13%)   
   #444444      rgb(68, 68, 68)         hsl(0, 0%, 27%)
   #666666      rgb(102, 102, 102)      hsl(0, 0%, 40%)
   #f5f5f5                                              Hover-Color
   #fafafa                                              Background-Color (odd)
   #bb0000                                              Pflichtfeld-Stern / Counter
*/

:root {
    /* Default Text Color: */
    --mae-custom-color-text-default: #000;
    --mae-custom-color-text-default-light: #fff;
    --mae-custom-color-text-default-dark: #000;

    --mae-custom-color-one: #222222;
    --mae-custom-color-one-hover: hsl(0, 0%, 10%);
    --mae-custom-color-one-activ: hsl(0, 0%, 8%);
    --mae-custom-color-one-focus: rgba(34, 34, 34, 0.25);

    /* INVERSE Color: hell, wenn one dunkel | dunkel, wenn one hell */
    --mae-custom-color-one-inverse: #fff;

    --mae-custom-color-one-light:       #feecf0;  /* alter WErt - anpassen! */
    --mae-custom-color-one-light-hover: #fde0e6;  /* alter WErt - anpassen! */
    --mae-custom-color-one-light-activ: #fcd4dc;  /* alter WErt - anpassen! */
    --mae-custom-color-one-light-focus: #fcd4dc;  /* alter WErt - anpassen! */

    --mae-custom-color-one-dark:       #cc0f35;   /* alter WErt - anpassen! */
    --mae-custom-color-one-dark-hover: #cc0f35;   /* alter WErt - anpassen! */
    --mae-custom-color-one-dark-activ: #cc0f35;   /* alter WErt - anpassen! */
    --mae-custom-color-one-dark-focus: #ee2049;   /* alter WErt - anpassen! */


    --mae-custom-color-one-hero-bold-start: #fa0a62;  /* alter WErt - anpassen! */
    --mae-custom-color-one-hero-bold-end: #f7595f;    /* alter WErt - anpassen! */

    --mae-custom-color-two: #444444;
    --mae-custom-color-three: #666666;

    --swiper-theme-color: #eee;

    --mae-color-counter: #bb0000;
    --mae-color-required: #bb0000;
    
    --mae-special-one-bg-color: transparent;
    --mae-special-one-color: inherit;


    /* aus Bulma */
    --info:#3e8ed0;
    --info-invert:#fff;
    --info-light:#eff5fb;
    --info-dark:#296fa8;


    --bulma-link-text: #485fc7;
    --bulma-arrow-color: #485fc7;

    --bulma-info-light-invert-l: var(--bulma-info-25-l);

}

.card {
    --bulma-card-radius: 0.25rem;
}

.breadcrumb {
    --bulma-breadcrumb-item-active-color: #222;
}

.notification.is-info.is-light {
    --bulma-notification-background-l: 96%;
}


/*
temporär damit navbzrger geht, da navburger bereits auf bulma 1.x angepasst wurde
*/
.navbar-burger span:nth-child(4) {
    display: none;
}



/* Justieren der unbekannten Elemente als Block-Elemente */
header, nav, main, footer, section, article, aside, figcaption, figure {
    display: block;
}


/* Standards */
html {
    /* Lange Worte umbrechen (z.b. bei langen Links)*/
    overflow-wrap: break-word;
    scroll-behavior: smooth;

    /* Automatische Wortrennung - macht so global keinen Sinn, 
    sollte individuell gesetzt werden, wo benoetigt */
    /* hyphens: auto; */
}

/* Selection Anpassung - muss seperat notiert werden, damit es geht */
::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}
::selection {
    background: #b3d4fc;
    text-shadow: none;
}


:target:before {
    content: "";
    border-top: 6rem solid transparent;
    margin-top: -6rem;
    height: 0;
    display: block;
    position: relative;
    z-index: -1;
}


/* Placholder - mit text-overflow elipsis */
[placeholder]{
    text-overflow: ellipsis;
}

/* Standard-Linie */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/* Lücke bei den Elementen entfernen */
audio, canvas, iframe, img, svg, video {
    vertical-align: middle;
}

/* Responsives Verhalten */
audio, embed, img, object, video {
    max-width: 100%;
    height: auto;
}

/* fieldset - Standard-Styles entfernen */
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/* textare nur vertical veränderbar */
textarea {
    resize: vertical;
}


a {
    transition: all 0.3s ease-out;
    position: relative;
    z-index: 1;
}

a.lightbox {
    cursor: zoom-in;
}

ul.no-bullets,
.content ul.no-bullets {
    padding: 0;
    margin: 0;
    list-style: none;
}


.avz-menu ul li {
    margin-top: .25em;
}

#page-main-section-content:target {
    border-top: 5rem solid transparent;
    margin-top: -5rem;
}


.special-one {
    background-color: var(--mae-special-one-bg-color);
    color: var(--mae-special-one-color);
}

/* ==========================================================================
   Helper Klassen
   ========================================================================== */

/* Verstecken: Visuell und in Screen-Readern */
.hidden {
    display: none !important;
}

/* Verstecken: nur Visuell */
.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
}

/* Verstecken: nur Visuell, aber per Keyboard anzeigbar */
.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
    white-space: inherit;
}

.hidden-special {
    display: none;
    visibility: hidden;
    height: 0;
    width: 0;
}


/* Verstecken: Visuell und in Screen-Readern, aber Layout beibehalten */
.invisible {
    visibility: hidden;
}

/* Clearfix */
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}



.no-wrap {
    white-space: nowrap;
}


/* Liste mit Kleinbuchstaben */
.content ol.lower-alpha:not([type]),
ol.lower-alpha {
    list-style-type: lower-alpha;
}

.no-margin-top {
    margin-top: 0;
}
.no-margin-bottom {
    margin-bottom: 0;
}

/* Zeilenumbruch in Überschrift (Überschrift + Unterüberschrift) */
.header-subheader {
    display: block;
}

a.btn-one {
    display: inline-block;
    border: 1px solid #ccc;
    padding: 0.5rem 1rem;
    text-decoration: none;
    margin-right: 0.25rem;
    margin-bottom: 0.25rem;
}
a.btn-one:hover {
    border: 1px solid #666;
    text-decoration: none;
}

a.btn-two {
    display: inline-block;
    border: 1px solid #ccc;
    padding: 0.5rem 1rem;
    text-decoration: none;
    margin-right: 0.25rem;
    margin-bottom: 0.25rem;
}
a.btn-two:hover {
    border: 1px solid #666;
    text-decoration: none;
}


.button-disabled {
    color: #ccc!important;
    cursor: not-allowed!important;
}

.button-min {
    width: 100%;
    max-width: 20rem;
    overflow: hidden;
}


.c-green {
    color: #008000;
}
.c-red {
    color: red;
}
.c-light {
    color: #d3d3d3;
}


.valign-center {
    display: flex;
    align-items: center;
}

/* default-Klassen
   ========================================================================== */



.page-header {
    text-align: center;
}

.page-header-login {
    background-color: #fafafa;
    border-bottom: 1px solid #ddd;
    font-size: 0.875rem;
    padding: 0 0.75rem;
}

.page-header-login .columns {
    margin-top: 0;
    margin-bottom: 0;
}

.page-header-login .phl-user {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    min-width: 20rem;
    white-space: nowrap;
    overflow: hidden;
}
.page-header-login .phl-buttons {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.page-header-container {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}

.page-header-container > div {
    display: flex;
    align-items: center;
    justify-content: center;
}
.page-header-container .va-nav {
    display: flex;
    margin-right: 0.5rem;
}
.va-nav li {
    margin: 0.5rem;
}

.va-nav a {
    color: #999;
}
.va-nav a:hover {
    text-decoration: underline;
}


.page-header-ticket-button {
    margin: 0 0.5rem;
    display: block;
}

.page-header-ticket-button:hover {
    transform: rotate(30deg);
    transition: 800ms ease all;
}


.main-va-date  {
    margin: 0 1rem;
}
.page-header-container .va-daten-header,
.main-va-date .va-daten-header {
    display: block;
    border-radius: 0.25rem;
    text-align: center;
    padding: 0.5rem;
    font-size: 0.875rem;

    margin: 0.5rem;
    background-color: var(--mae-custom-color-one,#999);
    color: var(--mae-custom-color-one-inverse,#fff);
}

.main-va-date .va-daten-header-mobil {
    margin: 0.5rem auto;
    max-width: 64rem;
}

.va-daten-header .va-location,
.va-daten-header .va-date {
    font-weight: 700;
}

.mat-location {
    margin: 1.5rem 0.5rem;
    align-self: flex-end;
    font-weight: bold;
    color: var(--mae-custom-color-one,#000);
}




.phl-user span,
.phl-user i {
    margin-left: 0.25rem;
}

.phl-buttons a {
    margin-left: 0.75rem;
}

.page-logo {
    margin: 0.5rem;
}


.page-nav {
    border-bottom: 1px solid #fff;
    border-top: 1px solid #fff;
    /* entfernt da probleme beim Handy, nicht scollbar
    position:         sticky;
    top: 0;
    */
}

.page-main {
    flex: 1 1 auto;
}

.page-footer {
    background-color: #222222;
    background-color: var(--mae-custom-color-one);
    border-top: 1px solid #fff;
    color: #fff;
    color: var(--mae-custom-color-one-inverse);
}

.page-footer a {
    color: var(--mae-custom-color-one-inverse);
}

.page-footer a:hover {
    color: #bbb;
    text-decoration: underline;
}

.page-footer .title {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    color: var(--mae-custom-color-one-inverse);
}


.section-content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.section-bottom {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

/*

.page-footer-link:link {
    color: #eee;
    text-decoration: none;
}
.page-footer-link:visited {
    color: #ddd;
}

.page-footer-link:hover,
.page-footer-link:focus {
    color: #fff;
    text-decoration: underline;
}

.page-footer-link:active {
    color: red;
}
*/

.meta-nav {
    border-top: 1px solid #fff;
    padding-top: 1rem;
}

.firm-group {
    display: inline-block;
}

.content .table th,
.content .table td {
    vertical-align: middle;
}


.va-delivery {
    margin-bottom: 2rem;
}

.va-delivery .vatag {
    width: 6rem;
}


/* default-IDs
   ========================================================================== */






/* ITEMS
   ========================================================================== */


.upload-info {
    display: flex;
    flex-direction: column;
}


.frame-type-form_formframework {
    max-width: 55rem;
}





.swiper figure.image {
    margin: 0;
}

.swiper figure {
    position: relative;
}
.section-intro .swiper figcaption {
    position: absolute;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    text-shadow: 2px 2px 4px #000000;
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
    display: block;
    border-top-left-radius: 0.5rem;
}

.swiper .slider-link {
    display: block;
}
.swiper .slider-link:hover {
    background-color: #eee;
}


.frame-layout-1 > .tx-maeslider > .slider-v50 > div:not(:last-child),
.frame-layout-1 > .tx-maeslider > .slider-v80 > div:not(:last-child) {
    border-bottom: 1px solid #eee;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
}

.db610 > div:hover,
.slider-v50 > div:hover,
.slider-v80 > div:hover {
    background-color: #fafafa;
}

.db610 .text-kachel,
.slider-v50 .text-kachel,
.slider-v80 .text-kachel {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.slider-v90 {
    max-width: 60rem;
}

.slider-v80 .text-autor,
.slider-v90 .text-autor {
    text-align: right;
    font-size: 0.875rem;
    font-style: italic;
    margin-top: -1rem;
}

.slider-v80 .text-autor::before,
.slider-v90 .text-autor::before {
    content: "— ";
}


.slider-v90 .slider-footer-link {
    border-top: 1px solid #ededed;
    padding-top: 0.5rem;
    text-align: center;
}


.db610 figure,
.slider-v50 figure {
    background-color: #fff;
}

.slider-v60 figure {
    background-color: #fff;
}


.slider-v20 figure.figure-item,
.slider-v20 .slider-link {
    max-width: 15rem;
    margin: auto;
}

.slider-v70 figure.figure-item,
.slider-v70 .slider-link {
    max-width: 15rem;
    margin: auto;
}



.content figure.figure-item {
    margin: auto;
    border: 1px solid #eee;
    padding: 0.75rem;
    display: flex;
    flex: 1 1 auto;
    justify-content: center;
}

.figure-item-1x1 {
    aspect-ratio: 1/1;
}

.figure-item-3x2 {
    aspect-ratio: 3/2;
}

.figure-item-16x9 {
    aspect-ratio: 16/9;
}


.figure-item img {
    object-fit: scale-down;

    width: 100%; /* eventuell nicht ok */
}


.section-breadcrumb {
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

.breadcrumb li {
    align-items: flex-start;
    white-space: normal;
}


.breadcrumb li+li {
    margin-top: 0;
}
.breadcrumb ol {
    margin: 0;
    list-style: none;
}



.mae-container-1 > .column {
    flex: 0 1 auto;
    width: 100%;
    text-align: center;
    margin-bottom: 0;
}

.mae-container-1 > .column.sp-unauthorised {
    display: none;
}


.portal-box-link {
    color: #fff;
    display: flex;
    background-color: rgba(204, 204, 204, 1);
    background-color: var(--mae-custom-color-one);
    flex-direction: column;
    text-align: center;
    height: 10rem;
    max-width: 30rem;
    margin-left: auto;
    margin-right: auto;
}

.portal-box-link:hover {
    color: #fff;
    background-color: rgba(204, 204, 204, 0.6);
    background-color: var(--mae-custom-color-one-hover);
    transform: scale(1.04);

}

.portal-box-link.restricted,
.portal-box-link.restricted:hover {
    background-color: rgba(204, 204, 204, 1);
    transform: none;
    cursor: not-allowed;
}


.portal-box {
    display: flex;
    flex-direction: column;
    padding: 1em 0.5em;
    justify-content: space-around;
    flex: 1 1 auto;
    height: 100%;
    position: relative;
}

.portal-box h3 {
    color: #fff;
    text-transform: uppercase;
    font-size: 1.25rem;
}

.portal-box-icon {
    font-size: 3em;
}

.back-link-wrapper {
    margin-top: 2rem;
    margin-bottom: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #eee;
}

.termin-hint-new {
    display: block;
    position: absolute;
    top: -0.5rem;
    right: -0.5rem;
    color: #fff;
    line-height: 1.75rem;
    height: 1.75rem;
    width: 1.75rem;
    border-radius: 1em;
    background-color: var(--mae-color-counter);
    font-weight: 700;
    border: 1px solid #FFF;
}

.content .sp-portal-headline {
    padding: 0.75rem 1.5rem;
    background-color: var(--mae-custom-color-one);
    color: #fff;
    margin-bottom: 1rem;
    font-size: 1rem;
}
.sp-portal-headline i {
    margin-right: 0.5rem;
}

.sp-portal-subline {
    color: var(--mae-custom-color-one);
    margin-bottom: 1rem;
    font-weight: bold;
}

.sp-portal-info {
    margin-bottom: 1rem;
}

.mae-new-box {
    margin-bottom: 2rem;
}

.sp-selection-stand-firma {
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: #fafafa;
}

.filter-container {
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: #fafafa;
    align-items: flex-end;
}



.sp-portal-config-container {
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: #fafafa;
}

.no-btn-style {
    border: 0;
    outline: 0;
    background-color: transparent;
}

.sp-note-new {
    margin-bottom: 1rem;
}

.sp-last-event {
    margin-bottom: 1rem;
    text-align: right;
}

.sp-ov-wrapper {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0,0,0,.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.sp-ov-inner {
    background-color: #fff;
    text-align: left;
    padding: 1rem;
    max-height: 96%;
    overflow-y: auto;
    border-radius: 0.25rem;
}

.sp-ov-header {
    margin-bottom: 1rem;
}

.sp-ov-close {
    font-weight: bold;
    color: inherit;
    font-size: 1.5rem;
    position: absolute;
    right: 1rem;
    top: 1rem;
}

.catalog-list-item {
    display: flex;
    flex-direction: column;
    margin-bottom: 2rem;
}

.sp-catalogaddress-detail {
    border: 1px solid #ccc;
    padding: 1rem;
    max-width: 60rem;
    max-height: 20rem;
    overflow-y: auto;
    margin-bottom: 1rem;
    flex: 1;
}


.sp-additional-hint {
    color: #888;
    font-size: .875rem;
    font-style: italic;
    font-weight: 400;
    margin: 0.25rem 0 0;
    display: block;
}

.sp-hint {
    color: #888;
    font-size: .875rem;
}

.flex-centered {
    display: flex;
    justify-content: center;
    align-items: center;
}

.v-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-download > span {
    display: inline-block;
    margin-top: 0.25rem;
    margin-bottom: 1rem;

    position: absolute;
    bottom: 0;
}


.banner-item .banner-download {
    margin: 0;
    border: 1px solid #eee;
    padding: 0.75rem;
    display: flex;
    flex: 1 1 auto;
    justify-content: center;

    position: relative;
}

.banner-item .banner-download:hover {
    background-color: #fafafa;
}

.banner-item .banner-image {
    object-fit: scale-down;
    padding-bottom: 3rem;
}




.countdown {
    text-align: center;
    margin: 0;
    padding: 0;
    color: var(--mae-custom-color-one,#999);
    font-weight: bold;
}
.countdown strong {
    color: var(--mae-custom-color-one,#999);
}
.countdown span > span.cd-value {
    font-size: 1.75em;
}
.countdown span > span.cd-unit {
    font-size: 0.75em;
}
.countdown > span > span {
    white-space:nowrap;
}
.countdown .cd-counter {
    margin-left: 0.25rem;
}


/* angebote aussteller */

ul.mae-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

li.mae-list-item {
    padding-bottom: 1rem;
    border-bottom: 1px solid #eee;
    margin-bottom: 1rem;
    margin-top: 1rem;
    position: relative;
}

.list-intro {
    font-size: 0.875rem;
    margin-right: 3rem;
}

.list-text {
    margin-bottom: 1rem;
    margin-right: 3rem;
}

.mae-list-item .firma,
.mae-list-item .stand {
    font-size: 0.875em;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.mae-list-item .btn-merkliste,
.mae-list-item .btn-merkliste-delete {
    display: block;
    top: 0;
    right: 0;
    position: absolute;
}

.button:hover {
    background-color: #ddd;
}


.mae-edit-action {
    text-align: right;
}


/* pressbox */

.pressbox-firma-stand {
    color: #888;
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
}

.pressbox-list-item-image img {
    border: 1px solid #eee;
    padding: 0.25rem;
    object-fit: scale-down;
    height: 90px;
    width: 120px;
}

.mae-pressbox-showfront .pressbox-images {
    text-align: center;
    box-sizing: border-box;
    margin-bottom: 1rem;
}




.mae-pressbox-showfront .pressbox-image {
    margin: 1rem 0 1rem;
    width: 320px;
    border: 1px solid #eee;
    padding: 0.5rem;
    text-align: center;
    box-sizing: border-box;
}

.mae-pressbox-showfront .pressbox-video {
    margin: 1rem 0;
}

.mae-pressbox-showfront .pressbox-pdf {
    margin: 1rem 0;
}


.content .mae-pressbox-table,
.content .mae-pressbox-table:not(:last-child),
.content .mae-appointment-table,
.content .mae-appointment-table:not(:last-child) {
    margin-bottom: 3rem;
}


.mae-pressbox-table tr td:nth-child(1),
.mae-pressbox-table tr td:nth-child(3){
    width: 10rem;
}
.mae-pressbox-table tr td:nth-child(4) {
    text-align: right;
    width: 16rem;
}


.sp-content-wrapper {
}
.checkboxes {
    display: flex;
    flex-wrap: wrap;
}
.checkboxes > .field {
    margin-bottom: 0.75rem;
    width: 20rem;
    max-width: 100%;
    padding: 0.5rem;
}

.mae-ea-show {
    margin-bottom: 2rem;
}


/* sp-orders-table */
.sp-orders-table tr td:nth-child(1) {
    width: 8rem;
}
.sp-orders-table tr td:nth-child(3) {
    width: 12rem;
}
.sp-orders-table tr td:nth-child(4) {
    width: 15rem;
}




/* Angebote / Destinationen */


select.offer-field {
    margin-bottom: 0.875rem;
}

select.cat-field {
    margin-bottom: 0.875rem;
}


/* standaktionen */
.mae-standaction-table tr td:nth-child(1) {
    width: 14rem;
}
.mae-standaction-table tr td:nth-child(2),
.mae-standaction-table tr td:nth-child(3),
.mae-standaction-table tr td:nth-child(5){
    width: 10rem;
}
.mae-standaction-table tr td:nth-child(6) {
    text-align: right;
    width: 14rem;
}

/* employee-access */
.mae-ea-table tr td:nth-child(3) {
    text-align: right;
    width: 14rem;
}



/* Hallenplan */
.mae-hallenplan svg.hp-overview .roof {
    fill: #b0b0b0;
    fill: var(--mae-custom-color-one);
}
.mae-hallenplan svg.hp-overview a:focus .roof,
.mae-hallenplan svg.hp-overview a:hover .roof {
    fill: #9c9c9c;
    fill: var(--mae-custom-color-one-hover);
}
.mae-hallenplan svg.hp-overview .dark {
    fill: #898989;
    fill: var(--mae-custom-color-one-dark);
}
.mae-hallenplan svg.hp-overview a:focus .dark,
.mae-hallenplan svg.hp-overview a:hover .dark {
    fill: #757575;
    fill: var(--mae-custom-color-one-dark-hover);
}
.mae-hallenplan svg.hp-overview .rooff {
    fill: #809040;
}
.mae-hallenplan svg.hp-overview a:focus .rooff,
.mae-hallenplan svg.hp-overview a:hover .rooff {
    fill: #6c7c2c;
}


.felogin-hint {
    margin-bottom: 1rem;
}
.felogin-links {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.felogin-links a {
    font-size: 0.875rem;
}
.select100,
.button100 {
    width: 100%;
}


.fieldset-theme-one {
    padding: 1rem;
    background-color: #fafafa;
    margin-bottom: 2rem;
    margin-top: 1rem;
}

.fieldset-theme-two {
    padding: 1rem;
    background-color: #fafafa;
    margin-bottom: 2rem;
    margin-top: 1rem;
}

/* Register */
.fieldset-register .fieldset-description,
.fieldset-register .help {
    display: none;
}

.fieldset-register .help-block-error {
    display: block;
    font-size: .75rem;
    margin-top: 0.25rem;
    color: var(--mae-color-required);
}

.field.has-addons .control.is-expanded {
    width: 100%;
}


.fieldset-cart .field.has-addons .control:not(:last-child),
.fieldset-register .field.has-addons .control:not(:last-child),
.fieldset-catalogaddress .field.has-addons .control:not(:last-child) {
    margin-right: 1rem;
}

.fieldset-register-firma {
}
.fieldset-register-ansprechpartner {
}
.fieldset-register-stand {
}


.fieldset-theme-one legend {
    color: #fff;
    background-color: var(--mae-custom-color-one);
    padding: 0.25rem 1rem;
}
.fieldset-theme-one.no-legend legend {
    display: none;
}

.fieldset-description {
    font-size: 0.875rem;
    margin-bottom: 1rem;
}


.required {
    color: var(--mae-color-required);
    font-weight: bold;
}

.field-label {
    text-align: left;
}

.label span.required:last-of-type {
    position: absolute;
    padding-left: 0.25rem;
}




.field-note {
    margin: 1rem 0;
}

.field-preview {
    margin: 0.5rem;
}


/* mae apointments termine */
.mae-appointment-table td.standnummer {
    width: 12rem;
}
.mae-appointment-table td.datum {
    width: 6rem;
}
.mae-appointment-table td.uhrzeit {
    width: 8rem;
}
.mae-appointment-table td.name {
    width: 12rem;
}
.mae-appointment-table td.notiz {
    width: auto;
}
.mae-appointment-table td.status {
    width: 8rem;
}
.mae-appointment-table td.aktion {
    text-align: right;
    width: 10rem;
}


.sp-accesscards-table td.type {
    width: 12rem;
}
.sp-accesscards-table td.barcode {
    width: 10rem;
}
.sp-accesscards-table td.email {
    width: 20rem;
}
.sp-accesscards-table td.status {
    width: 7rem;
}

.sp-accesscards-table td.aktion {
    text-align: right;
    width: 4rem;
}


.sp-parkingcards-table td.barcode {
    width: 10rem;
}

.sp-parkingcards-table td.betreff {
    width: 20rem;
}

.sp-parkingcards-table td.date {
    width: 10rem;
}

.sp-parkingcards-table td.aktion {
    text-align: right;
    width: 4rem;
}

dl.ek-statistik,
dl.ek-statistik:not(:last-child){
    margin-bottom: 0rem;
}

.ek-statistik dt {
    font-weight: bold;
}

.ek-statistik dd {
    margin-left: 0;
}

.statistik-container {
    background-color: #fafafa;
    padding: 1rem;
    margin-bottom: 1rem;
}

/* mae-shop */

.content .mae-shop-category-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    hyphens: none;
}

.mae-shop-category-nav .has-subnav ul {
    display: none;
}

.mae-shop-category-nav .has-subnav ul a {
    margin-left: 0.75rem;
}

.mae-shop-category-nav .has-subnav.toggled > ul {
    display: block;
}

.mae-shop-category-nav .rootline {
    background-color: #eee;
}
.mae-shop-category-nav .selected {
    border-bottom: 1px solid #ccc;
}


.mae-shop-cart {
    display: flex;
    justify-content: flex-end;
}


.mae-shop-cart-icon-container {
    position: relative;
    z-index: 10;
}

.navbar-cart-icon {
    position: relative;
    display: inline-block;
    z-index: 20;
    margin-left: 0.5rem;
}

.navbar-cart-icon svg {
    height: 2em;
    width: 2em;
}

.ml-header-lnk {
    padding-right: 0.5em;
}

.mae-shop-cart-counter,
.mae-watchlist-counter {
    display: flex;
    position: absolute;
    justify-content: center;
    align-items: center;
    top: -0.5em;
    right: -0.5em;
    color: #fff;
    line-height: 1em;
    height: 1.5em;
    width: 1.5em;
    border-radius: 50%;
    background-color: var(--mae-color-counter);
    font-weight: 700;
    text-align: center;
    font-size: 0.75em;
    z-index: 30;
}

.mae-shop-cart-small {
    position: absolute;
    z-index: 10;
    display: none;
    background-color: #fff;
    width: 16rem;
    padding: 0.5rem;
    font-size: 0.875rem;
    right: 0;
    top: 2rem;
    z-index: 10;
    box-shadow: 1px 1px 4px 1px rgba(238, 238, 238, 0.5);
    border: 1px solid #eee;
}

.mae-shop-cart-name {
    font-weight: bold;
}

.mae-shop-cart-list-item {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mae-shop-image {
    margin-right: 0.25rem;
}

.content .mae-kachel-list,
.content .mae-shop-category-list,
.content .mae-shop-article-list {
    margin: -0.75rem;
    padding: 0;
    list-style: none;
}


.mae-kachel-list-item,
.mae-shop-category-list-item {
    /* max-width: 424px;  Bild + Rand(padding) */
}

.content .mae-kachel-list li+li,
.content .mae-shop-category-list li+li,
.content .mae-shop-article-list li+li{
    margin: 0;
}

.mae-kachel-list-item a,
.mae-shop-category-list-item a {
    box-shadow: 1px 1px 4px 1px rgba(238, 238, 238, 0.5);
    display: block;
    color: rgb(29, 29, 29);
}

.mae-kachel-list-item a img,
.mae-shop-slider-image img,
.mae-shop-category-list-item a img,
.mae-shop-category-swiper a img {
    transition: all 0.3s ease-out;
}

.mae-kachel-list-item a:hover img,
.mae-shop-slider-image:hover img,
.mae-shop-category-swiper a:hover img,
.mae-shop-category-list-item a:hover img {
    transform: scale(1.04);
}

.content figure.table {
    margin: 0;
    text-align: left;
}

.content h2:not(:first-child).mae-kachel-title,
.content figure.mae-kachel-image,
.content h2:not(:first-child).mae-shop-category-title,
.content h2:not(:first-child).mae-shop-article-title,
.content figure.mae-shop-category-image,
.content figure.mae-shop-article-image {
    margin: 0;
}

.content figure.mae-kachel-image,
.content figure.mae-shop-category-image,
.content figure.mae-shop-article-image {
    overflow: hidden;
}

.mae-shop-article-list figure.mae-shop-article-image {
    aspect-ratio: 1/1;
}

.content h2.mae-kachel-title,
.content h2.mae-shop-category-title {
    text-align: center;
    padding: 0.75rem;
    background-color: rgb(234, 235, 223);
    font-size: 1.25rem;
    font-weight: normal;
}

.content figure figcaption.mae-shop-category-caption {
    color: #363636;
    font-style: normal;
    margin-top: 0.5rem;
}

.mae-shop-category-swiper .swiper-slide {
    text-align: center;
}


.mae-shop-article-navigation {
    display: flex;
    justify-content: space-between;
}

.mae-shop-article-navigation > a,
.mae-shop-article-navigation > div {
    z-index: 1;
}

.mae-shop-article-navigation > div {
    display: none;
}

.mae-shop-article-list-item {
    position: relative;
    display: flex;
}

.mae-shop-article-list-item a.article-link {
    box-shadow: 1px 1px 4px 1px rgba(238, 238, 238, 0.5);
    display: block;
    color: rgb(29, 29, 29);
    overflow: hidden;
    width: 100%;
}
.mae-shop-article-list-item a.article-link img {
    transition: all 0.3s ease-out;
    width: 100%;
    object-fit: cover;

}

.mae-shop-article-list-item a.article-link:hover img {
    transform: scale(1.04);
}

.content h2.mae-shop-article-title {
    padding: 1rem 1rem 0;
    font-size: 1.25rem;
    font-weight: normal;
}
.mae-shop-article-number {
    color: rgb(157, 157, 156);
    padding: 0 1rem;
}
.mae-shop-article-dimension {
    padding: 0 1rem 1rem;
}
.mae-shop-article-price {
    padding: 0 1rem 1rem;
}

.mae-shop-article-cart {
    padding: 1rem;
}

.mae-shop-article-list-item a.article-link {
    padding-bottom: 4rem;
}
.merkliste-row.mae-shop-article-list-item a.article-link {
    padding-bottom: 0;
}

.mae-shop-article-list-item .mae-shop-article-cart {
    position: absolute;
    left: 0.75rem;
    bottom: 0.75rem;
    z-index: 2;
}

.mae-shop-cart-amount {
    width: 3rem;
    z-index: 2;
    text-align: center;
    margin-right: 0.25rem;
}

input.mae-shop-cart-amount::-webkit-outer-spin-button,
input.mae-shop-cart-amount::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input.mae-shop-cart-amount[type=number] {
    -moz-appearance: textfield;
}

.registration-type-selection {
    margin-right: 0.25rem;
}

.mae-shop-article-watchlist {
    font-size: 2rem;
}

.mae-shop-article-list-item .mae-shop-article-watchlist {
    position: absolute;
    z-index: 10;
    top: 1rem;
    left: 2rem;
}

.mae-shop-article-detail-data .mae-shop-article-watchlist {
    margin: 1rem 1.5rem;
}

.mae-shop-article-watchlist a {
    color: rgb(29, 29, 29);
}

.mae-shop-article-detail-info {
    background-color: rgb(234, 235, 223);
}


details.mae-shop-article-detail-description summary::-webkit-details-marker {
    display: none;
}

.mae-shop-article-detail-description summary .toggle-icon {

    font-size: 3rem;

}

.mae-shop-article-detail-description summary .toggle-icon-wrapper {
    overflow: hidden;
    text-align: center;
    display: block;
}
.mae-shop-article-detail-description summary .toggle-icon {
    display: inline-block;
    position: relative;
}

.mae-shop-article-detail-description summary .toggle-icon::before,
.mae-shop-article-detail-description summary .toggle-icon::after {
    content: "";
    position: absolute;
    border-top: 1px solid;
    top: 50%;
    width: 2000px;
}

.mae-shop-article-detail-description summary .toggle-icon::before {
    margin-right: 0.5rem;
    right: 100%;
}

.mae-shop-article-detail-description summary .toggle-icon::after {
    margin-left: 0.5rem;
    left: 100%;
}




.mae-shop-article-detail-description summary .toggle-icon i {
    transform: rotate(0);
    transform-origin: center;
    transition: 0.5s transform ease;
}
details.mae-shop-article-detail-description[open] > summary .toggle-icon i {
    transform: rotate(180deg);
    transition: 0.5s transform ease;
}


.mae-shop-article-detail-description summary {
    outline: none;
    display: block;
    position: relative;
    cursor: pointer;
}

.mae-shop-article-detail-image {
    text-align: right;
}

.mae-shop-cart-button span {
    margin-right: 0.5rem;
}


p.mae-shop-offline-notiz {
    text-align: center;
    background-color: var(--info-light);
    color: var(--info);
    border: 1px solid var(--info);
    padding: 0.5rem;
    max-width: 60rem;
    margin: 0 auto;
}


table.preise .ticketprice {
    text-align: right;
}

.tickettyp-info {
    margin-left: 0.25rem;
}

/* # The Sliding Summary # */
details {
    overflow: hidden;
}
details summary {
    position: relative;
    z-index: 10;
}
@keyframes details-show {
    from {
        margin-bottom: 0;
        opacity: 0;
        transform: translateY(-100%);
    }
}
details > *:not(summary) {
    animation: details-show 500ms ease-in-out;
    position: relative;
    z-index: 1;
    transition: all 0.5s ease-in-out;
    color: transparent;
    overflow: hidden;
}
details[open] > *:not(summary) {
    color: inherit;
}





.frame-layout-600 details,
.frame-layout-601 details {
    margin-bottom: 0.75rem;
}
.frame-layout-600 details summary,
.frame-layout-601 details summary {
    background-color: #fafafa;
    padding: 1rem;
    cursor: pointer;
    font-weight: bold;
}
.frame-layout-600 details summary:hover,
.frame-layout-601 details summary:hover {
    background-color: #f5f5f5;
}
.frame-layout-600 details .toggle-content,
.frame-layout-601 details .toggle-content {
    margin-bottom: 1rem;
    padding: 1rem;
}



.frame-layout-800 {
    max-width: 45rem;
    margin-left: auto;
    margin-right: auto;
}

summary .subheader {
    font-weight: normal;
    font-size: 0.875em;
}



.mae-shop-article-properties {
    margin: 1rem 0;
}

.mae-shop-article-properties dl,
.mae-shop-article-detail-info-list dl {
    display: flex;
    flex-wrap: wrap;
}

.mae-shop-article-properties dl{
    width: 240px;
}

.mae-shop-article-properties dl div,
.mae-shop-article-detail-info-list dl div {
    margin-right: 0;
    margin-bottom: 0.5em;
    width: 100%;
    display: flex;
}

.mae-shop-article-properties dl dt,
.mae-shop-article-detail-info-list dl dt {
    font-weight: 700;
    width: 40%;
    margin-right: 0.25rem;
}

.mae-shop-article-properties dd,
.mae-shop-article-detail-info-list dd {
    margin: 0;
    width: 60%;
    text-align: right;
}


.content .mae-shop-cart-list {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid #eee;
}

.mae-shop-cart-list thead {
    display: none;
}

.mae-shop-cart-list-item td {
    padding: 0.75rem 0.25rem;
    border-bottom: 1px solid #eee;
}

.mae-shop-cart-image {
    width: 4rem;
}
.mae-shop-cart-artikel-count {
    width: 4rem;
}
.mae-shop-cart-artikel-change {
    width: 4rem;
}
.mae-shop-cart-artikel-delete {
    width: 4rem;
}

.mae-shop-cart-sum {
    text-align: right;
}

.mae-shop-cart-sum .mae-shop-cart-price {
    margin-left: 1rem;
    width: 6rem;
    display: inline-block;
}

.mae-shop-article-location {
    margin-top: 5rem;
}
.mae-shop-article-matching {
    margin-top: 5rem;
}

.mae-shop-location-swiper .swiper-slide a {
    display: block;
}
.mae-shop-location-swiper .swiper-slide img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 3/2;
}


.mae-footnotes {
    text-align: right;
    font-size: 0.875rem;
    border-top: 1px solid #eee;
    padding-top: 0.75rem;
    margin-top: 0.75rem;
}

.h-underline span {
    border-bottom: 2px solid #000;
    padding-bottom: 0.25rem;
    display: inline-block;
}
.content h3.h-underline {
    margin-bottom: 2rem;
    text-align: center;
}



.page-main {
    background-color: #fff;
}


.font-opensans {
    font-family: 'Open Sans', sans-serif;
}
.font-sourcesanspro {
    font-family: 'Source Sans Pro', sans-serif;
}
.font-titilliumweb {
    font-family: 'Titillium Web', sans-serif;
}



/* NAVI Vorbereitung */

label.menu-toggle {
    display: block;
    width: 50px;
    height: 50px;
    position: relative;
    margin-right: auto;
}

input#menu-toggle {
    display:none;
}

.line {
    position: absolute;
    left: 10px;
    height: 4px;
    width: 30px;
    background: #fff;
    border-radius: 2px;
    display: block;
    transition: 0.5s;
    transform-origin: center;
}

.line:nth-child(1) {
    top: 12px;
}
.line:nth-child(2) {
    top: 24px;
}
.line:nth-child(3) {
    top: 36px;
}

#menu-toggle:checked + .menu-toggle .line:nth-child(1){
    transform: translateY(12px) rotate(-45deg);
}

#menu-toggle:checked + .menu-toggle .line:nth-child(2){
    opacity: 0;
}

#menu-toggle:checked + .menu-toggle .line:nth-child(3){
    transform: translateY(-12px) rotate(45deg);
}

ul.page-nav-list {
    height: auto;
    max-height: 0;
    overflow: hidden;
    /*transition: all 0.5s;*/
}

#menu-toggle:checked + .menu-toggle  + ul.page-nav-list {
    max-height: 600px;
    overflow-y: auto;
}



.navbar-item.is-mega {
    position: static;
}
.navbar-item.is-mega .is-mega-menu-title {
    margin-bottom: 0;
    padding: .375rem 1rem;
}


/* ICON-MENU 700 */

ul.icon-menu {
    list-style: none;
    padding:0;
    margin: 0;
}

ul.icon-menu li {
    margin: 0.75rem 0;
}

ul.icon-menu li a {
    text-decoration: none;
    display: block;
    padding: .5em;
    border-radius: 0.25rem;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;

    background-color: var(--mae-custom-color-one);
    color: var(--mae-custom-color-one-inverse);
}

ul.icon-menu li a:hover {
    background-color: var(--mae-custom-color-one-activ);
    color: var(--mae-custom-color-one-inverse);
}

ul.icon-menu li a span {
    margin-left: 0.5em;
}


/* InfoBox 210 */

.frame-layout-210 {
}

.content .frame-layout-210 h2 {
    background-color: #666;
    background-color: #c42a54;
    display: inline-block;
    color: #fff;
    padding: 0.25rem 1.5rem 0.25rem 1.5rem;
    box-shadow:         1px 2px 2px 0px rgba(50, 50, 50, 0.75);
    position: relative;
}

.content .frame-layout-210 h2:before,
.content .frame-layout-210 h2:after {
    content: "";
    position: absolute;
    top: 100%;
}
.content .frame-layout-210 h2:before {
    left: 0;
    border-width: 0 1.5rem 1.5rem 0;
    border-style: solid;
    border-color: transparent #000033;
}
.content .frame-layout-210 h2:after {
    left: 1.5rem;
    background: rgba(0, 0, 0, 0.7);
    border-radius: 100%;
    box-shadow: -0.25rem 0px 0.5rem rgba(0, 0, 0, 1);
    height: 6rem;
    width: 1px;
}

.content .frame-layout-210 .ce-textpic {
    margin: 0.25rem 0.5rem 0 3rem;
}

.content .frame-layout-210 a {
    font-size: 1.5rem;
    color: #4a4a4a;
}

.content .frame-layout-210 a .special-one {
    color: #c42a54;
}



div.qc-special {
    font-family: monospace;
    color: #0000bb;
    background-color: #fafafa;
    margin: 0.5rem 0;
    padding: 1rem;
    border: 1px solid #eee;
}

div.qc-special .special-one {
    color: #ff0000;
}
div.qc-special .special-four,
div.qc-special .special-four strong {
    color: #ff9800;
}



.ticketpart-wrapper {
    width: 20rem;
}
.ticketpart {
    text-align: center;
}
.tp-trenner {
    padding: 0.5rem;
    font-weight: bold;
}

.help.error-message {
    color: var(--mae-color-required,red);
}



label.checkbox,
label.form-check-label {
    display: flex;
    align-items: baseline;
}
label.checkbox > span,
label.form-check-label > span {
    margin-left: 0.5rem;
}

label.form-check-label + label.form-check-label {
    margin-left: 0;
}


.field-buttons {
    margin-top: 1.5rem;
}



.responsive-iframe-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    width: 100%;
    height: auto;
}

.responsive-iframe-container.ratio4x3 {
    padding-bottom: 75%;
}



.mae-status-bar {
    background-color: #eee;
    padding: 0.25em;
    border: 1px solid #ccc;
    border-top: none;
    display: flex;
    justify-content: space-between;
    font-size: 0.875em;
    flex-direction: column;
}
.mae-status-bar>div {
    padding: 0 0.25em;
    display: flex;
    justify-content: space-between;
}
.mae-status-bar span {
    white-space: nowrap;
    margin-left: 0.25em;
    font-weight: 700;
}


.merkliste .mae-ticketsale {
    margin-top: 2rem;
}

.mae-ticketsale h3.columns,
.mae-ticket-header > h2.columns,
.ticketshop h3.columns {
    margin: 0rem;
    margin-bottom: 0.5rem;
}


.mae-ticketsale-total {
    padding: 0.5em 0 1em;
    border-bottom: 1px solid #ccc;
    margin: 1em 0;
}

.mae-ticketsale-subtotal, .mae-ticketsale-minus {
    padding: 0.5em 0;
    margin: 0.5em 0;
}

.mae-ticketsale-total-label, .mae-ticketsale-subtotal-label, .mae-ticketsale-minus-label {
    display: inline-block;
    min-width: 8rem;
    margin-right: 0.5em;
}

.mae-ticketsale-total-price {
    display: inline-block;
    min-width: 4rem;
    text-align: right;
    font-weight: 700;
    border-bottom: 3px double #222;
}

#rabattcodes-sale-box {
    width: fit-content;
    display: flex;
    flex-direction: column;
}
.mae-ticketsale-subtotal{
    display: flex;
    flex-direction: row;
    order: 1 ;
    justify-content: space-between;
}
.mae-ticketsale-minus{
    display: flex;
    flex-direction: row;
    order: 2 ;
    justify-content: space-between;
}
.mae-ticketsale-total{
    display: flex;
    flex-direction: row;
    order: 3 ;
    justify-content: space-between;
}
.mae-ticketsale-minus-label, .mae-ticketsale-subtotal-label{
    order: 1;
}
.mae-ticketsale-subtotal-price, .mae-ticketsale-minus-price {
    /* display: inline-block; */
    min-width: 4rem;
    text-align: right;
    font-weight: 700;
    order: 2;


}

.mae-ticketsale-lost-container {
    border-top: solid 1px #ccc;
    margin: 2em 0 0.5em;
    padding: 0.5em 0;
}


.ek-wallet-title {
    margin-top: 3rem;
    border-top: 1px solid #eee;
    padding-top: 1rem;
}







/* ==========================================================================
   Bulma Overrides
   ========================================================================== */


/* BULMA 1.x */
.content table {
    width: 100%;
}



/* START #### Bulma Override by pd|MAE , prefix fuer .table  "bulma-" */


.bulma-table:not(:last-child) {
  margin-bottom: 1.5rem;
}


.bulma-table {
  background-color: white;
  color: #363636;
}

.bulma-table.is-bordered td,
.bulma-table.is-bordered th {
  border-width: 1px;
}

.bulma-table.is-bordered tr:last-child td,
.bulma-table.is-bordered tr:last-child th {
  border-bottom-width: 1px;
}

.bulma-table.is-fullwidth {
  width: 100%;
}

.bulma-table.is-hoverable tbody tr:not(.is-selected):hover {
  background-color: #fafafa;
}

.bulma-table.is-hoverable.is-striped tbody tr:not(.is-selected):hover {
  background-color: #fafafa;
}

.bulma-table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) {
  background-color: whitesmoke;
}

.bulma-table.is-narrow td,
.bulma-table.is-narrow th {
  padding: 0.25em 0.5em;
}

.bulma-table.is-striped tbody tr:not(.is-selected):nth-child(even) {
  background-color: #fafafa;
}

/* ENDE #### Bulma Override by pd|MAE , prefix fuer .table  "bulma-" */


/* Space */
.columns.frame-space-before-extra-small {
    margin-top: 1em !important;
}
.columns.frame-space-before-small       {
    margin-top: 2em !important;
}
.columns.frame-space-before-medium      {
    margin-top: 3em !important;
}
.columns.frame-space-before-large       {
    margin-top: 4em !important;
}
.columns.frame-space-before-extra-large {
    margin-top: 5em !important;
}
.columns.frame-space-after-extra-small  {
    margin-bottom: 1em !important;
}
.columns.frame-space-after-small        {
    margin-bottom: 2em !important;
}
.columns.frame-space-after-medium       {
    margin-bottom: 3em !important;
}
.columns.frame-space-after-large        {
    margin-bottom: 4em !important;
}
.columns.frame-space-after-extra-large  {
    margin-bottom: 5em !important;
}

/* raus genommen pd */
.card-image .ce-row {
    display: flex;
}

.card-image .ce-column {
    flex: 1 1 0px;
    width: 100%;
}

.frame-layout-1 .ce-row {
    display: flex;
}

.frame-layout-1 .ce-column {
    flex: 1 1 0px;
    width: 100%;
}

.frame-layout-1 .ce-outer,
.frame-layout-1 .ce-inner {
    width: 100%;
}

figure.image,
figure.video {
    width: 100%;
}

.subtitle, .title {
    /* hyphens: auto; */ /* deaktiviert wegen der Kacheln */
    hyphens: auto;
    hyphenate-limit-chars: 15 3; /* Mindestens 15 Zeichen vor und 3 nach dem Trennstrich */
}

.ce-gallery .ce-column {
    margin-bottom: 1.5rem;
}
.ce-gallery .ce-column:last-child {
    margin-bottom: 0;
}

.card-image:first-child iframe {
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem;
}


.navbar-dropdown .navbar-item {
    white-space: normal;
}

/* Anpassung für Datums-Felder */
.input-date {
    display: block;
}

input.pk-amount {
    width: 4rem;
    margin-right: 0.5rem;
}


/* Anpassung für Standselection */
.field.is-grouped > .control:last-of-type:not(:last-child) {
    margin-right: 0;
}


.va-datum,
.va-ortname {
    font-weight: bold;
}
.va-zeit,
.va-zusatz {
    padding-left: 0.25rem;
}

.box .va-link {
    color: inherit;
}

.box li {
    border-bottom: 1px solid #eee;
    padding-bottom: 0.5rem;
    padding-top: 0.5rem;
}

.box li:last-child {
    border-bottom-color: transparent;
}

.box .va-link:hover {
    background-color: #f5f5f5;
}

.va-name {
    font-weight: bold;
}

.va-img-container img {
    display: block;
    margin: 0.25rem auto;
    width: 3rem;
    height: 3rem;
    object-fit: contain;
}

.box .va-link:hover .va-img-container img {
    margin: 0 auto;
    width: 3.5rem;
    height: 3.5rem;
}


.va-txt-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.va-date-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.va-calendar .even {
    background-color: #f0f0f0;
}

.va-calendar .columns:hover {
    background-color: #fafafa;
}

.va-calendar .zusatz-info {
    font-size: 0.875rem;
}

.va-calendar h4 {
    margin-top: 3rem;
}


.button.is-maecsone {
    background-color: var(--mae-custom-color-one);
    border-color: transparent;
    color: #fff;
}

.button.is-maecsone:hover, .button.is-maecsone.is-hovered {
    background-color: var(--mae-custom-color-one-hover);
    border-color: transparent;
    color: #fff;
}

.button.is-maecsone:focus, .button.is-maecsone.is-focused {
    border-color: transparent;
    color: #fff;
}

.button.is-maecsone:focus:not(:active), .button.is-maecsone.is-focused:not(:active) {
    box-shadow: 0 0 0 0.125em var(--mae-custom-color-one-f);
}

.button.is-maecsone:active, .button.is-maecsone.is-active {
    background-color: var(--mae-custom-color-one-activ);
    border-color: transparent;
    color: #fff;
}

.button.is-maecsone[disabled],
fieldset[disabled] .button.is-maecsone {
    background-color: var(--mae-custom-color-one);
    border-color: transparent;
    box-shadow: none;
}

.button.is-maecsone.is-inverted {
    background-color: #fff;
    color: var(--mae-custom-color-one);
}

.button.is-maecsone.is-inverted:hover,
.button.is-maecsone.is-inverted.is-hovered {
    background-color: #f5f5f5;
}

.button.is-maecsone.is-inverted[disabled],
fieldset[disabled] .button.is-maecsone.is-inverted {
    background-color: #fff;
    border-color: transparent;
    box-shadow: none;
    color: var(--mae-custom-color-one);
}

.button.is-maecsone.is-loading::after {
    border-color: transparent transparent #fff #fff !important;
}

.button.is-maecsone.is-outlined {
    background-color: transparent;
    border-color: var(--mae-custom-color-one);
    color: var(--mae-custom-color-one);
}

.button.is-maecsone.is-outlined:hover,
.button.is-maecsone.is-outlined.is-hovered,
.button.is-maecsone.is-outlined:focus,
.button.is-maecsone.is-outlined.is-focused {
    background-color: var(--mae-custom-color-one);
    border-color: var(--mae-custom-color-one);
    color: #fff;
}

.button.is-maecsone.is-outlined.is-loading::after {
    border-color: transparent transparent var(--mae-custom-color-one) var(--mae-custom-color-one) !important;
}

.button.is-maecsone.is-outlined.is-loading:hover::after,
.button.is-maecsone.is-outlined.is-loading.is-hovered::after,
.button.is-maecsone.is-outlined.is-loading:focus::after,
.button.is-maecsone.is-outlined.is-loading.is-focused::after {
    border-color: transparent transparent #fff #fff !important;
}

.button.is-maecsone.is-outlined[disabled],
fieldset[disabled] .button.is-maecsone.is-outlined {
    background-color: transparent;
    border-color: var(--mae-custom-color-one);
    box-shadow: none;
    color: var(--mae-custom-color-one);
}

.button.is-maecsone.is-inverted.is-outlined {
    background-color: transparent;
    border-color: #fff;
    color: #fff;
}

.button.is-maecsone.is-inverted.is-outlined:hover, .button.is-maecsone.is-inverted.is-outlined.is-hovered, .button.is-maecsone.is-inverted.is-outlined:focus, .button.is-maecsone.is-inverted.is-outlined.is-focused {
    background-color: #fff;
    color: var(--mae-custom-color-one);
}

.button.is-maecsone.is-inverted.is-outlined.is-loading:hover::after, .button.is-maecsone.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-maecsone.is-inverted.is-outlined.is-loading:focus::after, .button.is-maecsone.is-inverted.is-outlined.is-loading.is-focused::after {
    border-color: transparent transparent var(--mae-custom-color-one) var(--mae-custom-color-one) !important;
}

.button.is-maecsone.is-inverted.is-outlined[disabled],
fieldset[disabled] .button.is-maecsone.is-inverted.is-outlined {
    background-color: transparent;
    border-color: #fff;
    box-shadow: none;
    color: #fff;
}

.button.is-maecsone.is-light {
    background-color: var(--mae-custom-color-one-light);
    color: var(--mae-custom-color-one-dark);
}

.button.is-maecsone.is-light:hover, .button.is-maecsone.is-light.is-hovered {
    background-color: var(--mae-custom-color-one-light-hover);
    border-color: transparent;
    color: var(--mae-custom-color-one-dark);
}

.button.is-maecsone.is-light:active, .button.is-maecsone.is-light.is-active {
    background-color: var(--mae-custom-color-one-light-activ);
    border-color: transparent;
    color: var(--mae-custom-color-one-dark);
}


.notification.is-maecsone {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.notification.is-maecsone.is-light {
    background-color: var(--mae-custom-color-one-light);
    color: var(--mae-custom-color-one-dark);
}

.notification.is-danger h3 {
    color: #fff;
}


.progress.is-maecsone::-webkit-progress-value {
    background-color: var(--mae-custom-color-one);
}

.progress.is-maecsone::-moz-progress-bar {
    background-color: var(--mae-custom-color-one);
}

.progress.is-maecsone::-ms-fill {
    background-color: var(--mae-custom-color-one);
}

.progress.is-maecsone:indeterminate {
    background-image: linear-gradient(to right, var(--mae-custom-color-one) 30%, #ededed 30%);
}


.table td.is-maecsone,
.table th.is-maecsone {
    background-color: var(--mae-custom-color-one);
    border-color: var(--mae-custom-color-one);
    color: #fff;
}


.tag:not(body).is-maecsone {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.tag:not(body).is-maecsone.is-light {
    background-color: var(--mae-custom-color-one-light);
    color: var(--mae-custom-color-one-dark);
}


.is-maecsone.input, .is-maecsone.textarea {
    border-color: var(--mae-custom-color-one);
}

.is-maecsone.input:focus, .is-maecsone.textarea:focus, .is-maecsone.is-focused.input, .is-maecsone.is-focused.textarea, .is-maecsone.input:active, .is-maecsone.textarea:active, .is-maecsone.is-active.input, .is-maecsone.is-active.textarea {
    box-shadow: 0 0 0 0.125em var(--mae-custom-color-one-f);
}


.select.is-maecsone:not(:hover)::after {
    border-color: var(--mae-custom-color-one);
}

.select.is-maecsone select {
    border-color: var(--mae-custom-color-one);
}

.select.is-maecsone select:hover, .select.is-maecsone select.is-hovered {
    border-color: var(--mae-custom-color-one-activ);
}

.select.is-maecsone select:focus, .select.is-maecsone select.is-focused, .select.is-maecsone select:active, .select.is-maecsone select.is-active {
    box-shadow: 0 0 0 0.125em var(--mae-custom-color-one-f);
}


.file.is-maecsone .file-cta {
    background-color: var(--mae-custom-color-one);
    border-color: transparent;
    color: #fff;
}

.file.is-maecsone:hover .file-cta, .file.is-maecsone.is-hovered .file-cta {
    background-color: var(--mae-custom-color-one-hover);
    border-color: transparent;
    color: #fff;
}

.file.is-maecsone:focus .file-cta, .file.is-maecsone.is-focused .file-cta {
    border-color: transparent;
    box-shadow: 0 0 0.5em var(--mae-custom-color-one-f);
    color: #fff;
}

.file.is-maecsone:active .file-cta, .file.is-maecsone.is-active .file-cta {
    background-color: var(--mae-custom-color-one-activ);
    border-color: transparent;
    color: #fff;
}


.help.is-maecsone {
    color: var(--mae-custom-color-one);
}





.message.is-maecsone {
    background-color: var(--mae-custom-color-one-light);
}

.message.is-maecsone .message-header {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.message.is-maecsone .message-body {
    border-color: var(--mae-custom-color-one);
    color: var(--mae-custom-color-one-dark);
}

.navbar.is-maecsone {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.navbar.is-maecsone .navbar-brand > .navbar-item,
.navbar.is-maecsone .navbar-brand .navbar-link {
    color: #fff;
}

.navbar.is-maecsone .navbar-brand > a.navbar-item:focus,
.navbar.is-maecsone .navbar-brand > a.navbar-item:hover,
.navbar.is-maecsone .navbar-brand > a.navbar-item.is-active,
.navbar.is-maecsone .navbar-brand .navbar-link:focus,
.navbar.is-maecsone .navbar-brand .navbar-link:hover,
.navbar.is-maecsone .navbar-brand .navbar-link.is-active {
    background-color: var(--mae-custom-color-one-activ);
    color: #fff;
}

.navbar.is-maecsone .navbar-brand .navbar-link::after {
    border-color: #fff;
}

.navbar.is-maecsone .navbar-burger {
    color: #fff;
}


.panel.is-maecsone .panel-heading {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.panel.is-maecsone .panel-tabs a.is-active {
    border-bottom-color: var(--mae-custom-color-one);
}

.panel.is-maecsone .panel-block.is-active .panel-icon {
    color: var(--mae-custom-color-one);
}



.has-text-maecsone {
    color: var(--mae-custom-color-one) !important;
}

a.has-text-maecsone:hover, a.has-text-maecsone:focus {
    color: var(--mae-custom-color-one-focus) !important;
}

.has-background-maecsone {
    background-color: var(--mae-custom-color-one) !important;
}

.has-text-maecsone-light {
    color: var(--mae-custom-color-one-light) !important;
}

a.has-text-maecsone-light:hover, a.has-text-maecsone-light:focus {
    color: var(--mae-custom-color-one-light-focus) !important;
}

.has-background-maecsone-light {
    background-color: var(--mae-custom-color-one-light) !important;
}

.has-text-maecsone-dark {
    color: var(--mae-custom-color-one-dark) !important;
}

a.has-text-maecsone-dark:hover, a.has-text-maecsone-dark:focus {
    color: var(--mae-custom-color-one-dark-focus) !important;
}

.has-background-maecsone-dark {
    background-color: var(--mae-custom-color-one-dark) !important;
}


.hero.is-maecsone {
    background-color: var(--mae-custom-color-one);
    color: #fff;
}

.hero.is-maecsone a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),
.hero.is-maecsone strong {
    color: inherit;
}

.hero.is-maecsone .title {
    color: #fff;
}

.hero.is-maecsone .subtitle {
    color: rgba(255, 255, 255, 0.9);
}

.hero.is-maecsone .subtitle a:not(.button),
.hero.is-maecsone .subtitle strong {
    color: #fff;
}


.hero.is-maecsone .navbar-item,
.hero.is-maecsone .navbar-link {
    color: rgba(255, 255, 255, 0.7);
}

.hero.is-maecsone a.navbar-item:hover, .hero.is-maecsone a.navbar-item.is-active,
.hero.is-maecsone .navbar-link:hover,
.hero.is-maecsone .navbar-link.is-active {
    background-color: var(--mae-custom-color-one-activ);
    color: #fff;
}

.hero.is-maecsone .tabs a {
    color: #fff;
    opacity: 0.9;
}

.hero.is-maecsone .tabs a:hover {
    opacity: 1;
}

.hero.is-maecsone .tabs li.is-active a {
    opacity: 1;
}

.hero.is-maecsone .tabs.is-boxed a, .hero.is-maecsone .tabs.is-toggle a {
    color: #fff;
}

.hero.is-maecsone .tabs.is-boxed a:hover, .hero.is-maecsone .tabs.is-toggle a:hover {
    background-color: rgba(10, 10, 10, 0.1);
}

.hero.is-maecsone .tabs.is-boxed li.is-active a, .hero.is-maecsone .tabs.is-boxed li.is-active a:hover, .hero.is-maecsone .tabs.is-toggle li.is-active a, .hero.is-maecsone .tabs.is-toggle li.is-active a:hover {
    background-color: #fff;
    border-color: #fff;
    color: var(--mae-custom-color-one);
}

.hero.is-maecsone.is-bold {
    background-image: linear-gradient(141deg, var(--mae-custom-color-one-hero-start) 0%, var(--mae-custom-color-one) 71%, var(--mae-custom-color-one-hero-end) 100%);
}


.content .typo3-messages {
    list-style: none;
    padding: 0;
    margin: 1rem 0;
}

.content .typo3-messages .alert {
    position: relative;
    padding: 0.75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.content .typo3-messages .alert-message {
    margin: 0;
}

.content .typo3-messages h4 {
    color: inherit;
}
.content .typo3-messages .alert-danger {
    color: #712b29;
    background-color: #f7dddc;
    border-color: #f4cfce;
}
.content .typo3-messages .alert-warning {
    color: #7d5a29;
    background-color: #fcefdc;
    border-color: #fbe8cd;
}
.content .typo3-messages .alert-success {
    color: #306030;
    background-color: #def1de;
    border-color: #d1ebd1;
}
.content .typo3-messages .alert-info {
    color: #195364;
    background-color: #d6ecf2;
    border-color: #c5e4ed;
}
.content .typo3-messages .alert-primary {
    color: #081f2b;
    background-color: #cfd8dd;
    border-color: #bcc8cf;
}
.content .typo3-messages .alert-secondary {
    color: #630f15;
    background-color: #f2d2d4;
    border-color: #edc0c3;
}
.content .typo3-messages .alert-light {
    color: #797979;
    background-color: #fbfbfb;
    border-color: #f9f9f9;
}
.content .typo3-messages .alert-dark {
    color: #191919;
    background-color: #d6d6d6;
    border-color: #c5c5c5;
}


/* avz */

.avz-menu {
    border-bottom: 1px solid #eee;
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
}

.avz-menu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.avz-search .button {
    min-width: 10rem;
}

.avz-searchresult {
    text-align: center;
    margin-bottom: 0.5rem;
}

.avz-search-params {
    font-weight: bold;
    font-style: italic;
}

.avz-nav {
    border-bottom: 1px solid #eee;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0.5rem auto;
    padding-bottom: 0.5rem;
}

.avz-nav a {
    display: block;
    padding: 0 0.125rem;
    margin: 0.125rem;
    border: 1px solid transparent;
    line-height: 22px;
    min-width: 24px;
    text-align: center;

}
.avz-nav a:hover {
    background-color: #eee;
    border-color: #eee;
    font-weight: bold;
}

.avz-content-anker,
.programm-header-item,
.merkliste-header-item {
    margin-top: 1.5rem;
    font-weight: bold;
    padding: 0.5rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #eee;
    scroll-margin-top: 4rem;

    border-bottom-color: var(--mae-custom-color-one);
}

.avz-content-anker.mae-offer-category {
    font-weight: normal;
}
.avz-content-anker.cat-breadcrumb {
    font-size: 0.875rem;
    font-weight: normal;
    margin-top: 0;
    margin-bottom: 0;
    border-bottom: none;

}
.avz-offer details {
    margin-bottom: 0.5rem;
}
.avz-offer details summary {
    /* background-color: #fafafa; */
    /* padding: 1rem; */
    cursor: pointer;
}
.avz-offer details summary:hover {
    /* background-color: #f5f5f5; */
}
/* 
.avz-offer details div {
    margin-bottom: 2.5rem;
    padding: 0.5rem 1rem;
}
*/

details .offer-description {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.avz-item,
.programm-item {
    margin: 0;
}

.avz-item.odd,
.programm-item.odd {
    background-color: #fafafa;
}

.avz-item.even,
.programm-item.even {
    background-color: #ffffff;
}

.avz-item:hover,
.avz-item.odd:hover,
.avz-item.even:hover,
.programm-item:hover,
.programm-item.odd:hover,
.programm-item.even:hover {
    background-color: #f5f5f5;
}

.avz-show-item {
    margin: 0;
    border-bottom: 1px solid #eee
}

.avz-col,
.programm-col-action {
    display: flex;
    align-items: center;
}

.avz-col-action,
.programm-col-action {
    justify-content: flex-end;
}

.avz-col-action .button,
.programm-col-action .button {
    margin-bottom: 0;
    margin-left: 0.5rem;
}

.avz-col-action .btn-merkliste,
.programm-col-action .btn-merkliste {
    order: 1;
}

/*
.btn-merkliste:hover i.fa-regular {
    font-weight: 900;
}
.btn-merkliste:hover i.fa-solid {
    font-weight: 400;
}
*/

.avz-logo-container {
    display: flex;
    height: 6rem;
    width: 8rem;
    border: 1px solid #eee;
    background-color: #fff;
    padding: 0.25rem;
    justify-content: center;
    align-items: center;
    max-width: 100%;
}

.avz-logo-container span,
.avz-logo-container:hover span {
    color: #eee;
    font-size: 0.875rem;
}

.avz-logo-container .avz-image {
    height: auto;
    width: auto;
    max-height: 100%;
    max-width: 100%;
    object-fit: scale-down;
}
.avz-link-container {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    align-items: flex-start;
}

.avz .vu {
    font-size: .75rem;
    color: #bbb;
    cursor: help;
}



/* programm */

.programm-filter {
    margin-bottom: 2rem;
}

.programm-overview .day {
    margin-bottom: 2rem;
}

.programm-overview .day:hover {
    background-color: #f5f5f5;
}

.programm-overview h2.title {
    font-size: 1.5rem;
    border-bottom: 1px solid #eee;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}
.programm-overview h2.title span {
    font-size: 1rem;
    font-weight: normal;
    color: #888;
}

.programm-overview h2.title span.sub-info {
    font-size: 0.875rem;
    display: block;
    margin-top: 0.5rem;
}

.programm-overview h3.title {
    font-size: 1.25rem;
    margin-bottom: 1rem;
}

.programm-overview a {
    color: inherit;
    display: block;

}
.programm-overview a:hover {
    color: var(--mae-custom-color-one);
    text-decoration: underline;
}
.programm .topthema + .topthema,
.programm .subthema + .topthema {
    margin-top: 1rem;
}
.programm .topthema {
    font-weight: bold;
}
.programm .subthema {
    margin-left: 0.5rem;
    /*font-size: 0.875rem;*/
    margin-bottom: 0.25rem;
}


.programm .programm-header-item,
.programm .programm-header-zusatz,
.merkliste .merkliste-header-item {
    margin-left: 0;
    margin-right: 0;
}

.programm-header-item .column,
.merkliste-header-item .column {
    padding: 0;
}

.programm-header-item .order-01 {
    order: 2;
}
.programm-header-item .order-02 {
    order: 1;
}

.programm-col-content {
    order: 1;
}



.programm .zeit {
    font-weight: bold;
}
.programm .titel {
    font-weight: bold;
}
.programm .zusatztext {
    font-style: italic;
    display: block;
}
.programm .referent {
    color: #888;
}
.programm .zielgruppe {
    font-size: 0.875rem;
    font-style: italic;
    color: #888;
}
.programm .zusatz-info {
    font-size: 0.875rem;
}

.programm .changes {
    font-size: 0.875rem;
    color: #888;
    margin: 0.75rem;
}


.ml-container {
    text-align: right;
}

.ml-section {
    margin-bottom: 3rem;
}

.header-merkliste h1.columns {
    margin-bottom: -0.125rem;
}


.lnk-merkliste {
    font-weight: normal;
    font-size: 0.875rem;
}




.ticket-links {
    text-align: center;
}
.ticket-links .button {
    margin: 0.5rem;
}

.ticketsales-item {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #eee;
}

.mae-catalogaddress-block ul {
    margin-top: 0;
}


.frame header {
    border-bottom: 1px solid #eee;
    margin-bottom: 0.5rem;
}

.frame .card-header-title header {
    border-bottom: none;
    margin-bottom: 0;
}

.card-header-content .title {
    font-size: 1.25rem;
}
.card-header-content .subtitle {
    font-size: 1rem;
}

.card-header-content {
    border-bottom: 1px solid #eee;
}


.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
    margin-bottom: 0.75rem;
}

.content .card-header-content h1:last-child,
.content .card-header-content h2:last-child,
.content .card-header-content h3:last-child,
.content .card-header-content h4:last-child,
.content .card-header-content h5:last-child,
.content .card-header-content h6:last-child {
    margin-bottom: 0;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: inherit;
}





.ce-uploads li {
    display: flex;
    align-items: center;
}
.ce-uploads li .icon {
    margin-right: 0.5rem;
}

.ce-uploads span {
    display: inline-flex;
}


.ce-uploads-fileName {
    font-weight: bold;
}
.ce-uploads-description {
    display: block;
    font-size: 0.875rem;
}

.frame-layout-1 .ce-uploads li > div {
    flex: 1 1 75%;
}


.elastic-video {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
}
.elastic-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.elastic-video.ar-1-1 {
    padding-bottom: 100%;
}
.elastic-video.ar-16-9 {
    padding-bottom: 56.25%;
}
.elastic-video.ar-4-3 {
    padding-bottom: 75%;
}


.svg-container {
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 2px;
}

.svg-container-inner {
    position: relative;
    padding-bottom: 55%;
    padding-top: 15px;
    height: 0;
    overflow: hidden;
}

.svg-container-inner > svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}




.responsive-iframe-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    width: 100%;
    height: auto;
}

.responsive-iframe-container.ratio4x3 {
    padding-bottom: 75%;
}

.responsive-iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* test */
.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
}


/* ibanner */
.ibanner {
    padding: 1rem;
    background-color: var(--info);
    color: var(--info-invert);
    border: 1px solid var(--info-dark);
    border-radius: 0.25rem;
    line-height: 1.75;
}

.ibanner strong {
    color: var(--info-invert);
}

.ibanner a {
    color: var(--info-light);
}

.ibanner a.special {
    text-decoration: underline;
}

.ibanner a:hover {
    color: var(--info-invert);
}


/* Cookies Datenschutz */
.tx-we-cookie-consent .service__headline {
    font-weight: bold;
}

.tx-we-cookie-consent table:not(:last-child) {
    margin-bottom: 3rem;
}

.tx-we-cookie-consent table caption {
    display: none;
}

.tx-we-cookie-consent table td:nth-child(1) {
    width: 10rem;
}
.tx-we-cookie-consent table td:nth-child(2) {
    width: auto;
}
.tx-we-cookie-consent table td:nth-child(3) {
    width: 10rem;
}

.tx-we-cookie-consent a.btn {
    background-color: var(--mae-custom-color-one);
    border-color: transparent;
    color: #fff;
    border-width: 1px;
    cursor: pointer;
    justify-content: center;
    padding-bottom: calc(0.5em - 1px);
    padding-left: 1em;
    padding-right: 1em;
    padding-top: calc(0.5em - 1px);
    text-align: center;
    white-space: nowrap;
}

/* damit die Tabelle scrollbar ist im mobile*/
.frame-layout-2 .tx-we-cookie-consent {
    max-width: 100%;
    overflow-y: auto;
}



.klaro.we_cookie_consent .cookie-modal .cm-modal.cm-klaro {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

#klaro .klaro.we_cookie_consent .cookie-modal .cm-btn-info::before {
    content: url(../Icons/icon-check-dark.svg);
    contain: content;
    height: 20px;
    width: 20px;
    position: absolute;
    margin-left: -32px;
}




/* RTE - gleiche Einstellungen wie in rte.css
   ========================================================================== */

ol.lower-alpha {
    list-style-type: lower-alpha;
}

ol.no-margin-top {
    margin-top: 0;
}

ol.no-margin-bottom {
    margin-bottom: 0;
}


.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-justify {
    text-align: justify;
}

.small-txt {
    font-size: 0.875em;
}


ul.list-style-none {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.list-style-icon {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.list-style-icon li {
    display: flex;
    align-items: center;
}

ul.list-style-icon span.icon {
    display: inline-flex;
}

ul.list-style-icon .icon.is-large {
    font-size: 2em;
    font-weight: bold;
}



/* wir suchen dich button - wsd-button */
.wsd-button {
    display: none;
    position: absolute;
    z-index: 1;
    top: -1.5rem;
    right: 0;
}

.wsd-button > div {
    overflow: unset;
}

a.btn-wsd {
    display: flex;
    height: 6rem;
    width: 6rem;
    background-color: #005f88;
    border: 3px solid #fff;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    line-height: 1.3;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(20deg);
    flex-direction: column;
}

a.btn-wsd:hover {
    transform: rotate(0deg) scale(1.2);
    background-color: #005f88;
    border-color: #fff;
    color: #fff;
    font-size: 1.2rem;
}


/* wir suchen dich button - wsd-button - zig-button */
a.btn-zig {
    display: flex;
    height: 6rem;
    width: 6rem;
    background-color: #ed193a;
    border: 3px solid #fff;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    line-height: 1.3;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(20deg);
    font-size: 0.875rem;
}

a.btn-zig:hover {
    transform: rotate(0deg) scale(1.0);
    background-color: #ed193a;
    border-color: #fff;
    color: #fff;
}

span.block-txt {
    display: block;
}



.xtoggle {
    margin-top: 1rem;
}
.xtogglelink {
    cursor: pointer;
    color: #485fc7;
}
.xtogglelink:hover {
    color: #363636;
}
.xtoggle .xtoggleitem {
    display: none;
    height: 0;
    margin-left: 0.75rem;
}
.xtoggle.opened .xtoggleitem {
    display: block;
    height: auto;
}


/* Galerie */
.thumbs,
.thumbs-albums,
.thumbs-assets {
    display: flex;
    flex-wrap: wrap;

}

.thumb,
.img-thumbnail {
    flex: 0 1 auto;
    max-width: 25%;
    padding: 1rem;
}

.fs-media-gallery .thumb {
    float: none;
    border: none;
}

.fs-media-gallery h4.name {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.fs-media-gallery h4.name a {
    text-align: left;
}

.fs-media-gallery .description {
    display: flex;
    flex-direction: column;
}

.fs-media-gallery .asset-count {
    font-size: 0.875rem;
}

.fs-media-gallery .album h3 {
    margin-top: 0.5rem;
}

.fs-media-gallery .pagination {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.fs-media-gallery .navigation {
    clear: both;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    text-align: center;
}


.pagination-link.is-current {
    background-color: var(--mae-custom-color-one);
    border-color: var(--mae-custom-color-one);
    color: var(--mae-custom-color-one-inverse);
}

.pagination-link:hover,
.pagination-next:hover,
.pagination-previous:hover
{
    background-color: var(--mae-custom-color-one-hover);
    border-color: var(--mae-custom-color-one-hover);
    color: var(--mae-custom-color-one-inverse);
}


.pagination ul.pagination-list {
    margin: 0;
}
.pagination .pagination-list li+li {
    margin: 0;
}



/* equal hight cards */

.equalbox > .column {
    display: flex;
    flex-direction: column;
}

.equalbox .frame-layout-200 {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.equalbox .frame-layout-200.notequal {
    display: block;
}

.equalbox .frame-layout-200 > .card {
    display: flex;
    flex-direction: column;
    flex: 1;
}


.card {
    transition: all 0.3s ease-out;
}

.card:hover {
    transform: scale(1.04);
}


.card-content {
    flex: 1;
}

.card-content .title {
    font-size: 1.25rem;
}
.card-content .subtitle {
    font-size: 1rem;
}
.card-content header  time {
    font-size: 0.875rem;
}


p.card-footer-item,
.content p.card-footer-item {
    margin-bottom: 0;
    justify-content: right;
}

.card figcaption {
    margin: 0.125rem 0.25rem;
}



.news .news-list-view-110 {
    text-align: center;
    max-width: 60rem;
    margin: auto;
}

.news  .more {
    margin-top: 0.5rem;
    display: inline-block;
}

.news .news-list-view-100 {

}

.news .news-list-view-100 .article {
    display: flex;
    min-height: 15rem;
    flex-direction: column;
}

.news .news-list-view-100 .news-img-wrap {
    width: 100%;
}

.news .news-list-view-100 .header-teaser {
    padding: 1rem;
}

.news .news-list-view-100 .news-img-wrap ~ .header-teaser {
    width: 100%;
}

.news .news-list-view-100 .article .news-img-wrap {
    margin: 0;
    float: none;
    display: flex;
    justify-content: center;
}

.news .news-list-view-100 .article .news-img-wrap a {
    padding: 0;
    border: none;
}
.news .news-list-view-100 img {
    aspect-ratio: 16 / 9;
    border-top-left-radius: .25rem;
    border-bottom-left-radius: .25rem;
}

.news .news-list-view .article .teaser-text {
    margin: 0.5rem 0;
}


.news .footer {
    background: none;
}

.field-label label {
    white-space: nowrap;
}




.ce-uploads figure img {
    float: none;
    padding-right: 0;
    vertical-align: middle;
}
.content .ce-uploads figure {
    margin-right: 1rem;
}


.frame-type-form_formframework .actions {
    margin-top: 1rem;
}

.preview-container {
    padding: 1rem;
}


.preview-container img {
    object-fit: contain;
    max-height: 20rem;
}



.company-list .company-item {
    padding: 0.125rem;
    font-size: 0.875rem;
}
.company-list .company-item:hover {
    background-color: rgba(0,0,0,0.1);
}

.button.mae-ticketsale-btn,
.button.btn-wallet,
.button.card-wallet {
    height: auto;
    white-space: normal;
}

/* Popup
   ========================================================================== */

.popup {
    position: fixed;
    top: 1rem;
    bottom: 1rem;
    right: 1rem;
    left: 1rem;
    background: transparent;
    z-index: 100;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.popup .popup-outer {
    position: relative;
    max-width: 800px;
    border: 1px solid #ccc;
    padding: 1.5rem;
    background-color: #fff;
    box-shadow: 1px 1px 4px 1px var(--mae-custom-shadow-color, #cccccc);
    z-index: 100;
    margin: 1.5rem auto;
    border-radius: 0.5rem;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    width: 100%;
}


.popup .popup-inner {
    overflow-y: auto;
    max-height: 100%;
}

.popup-outer:hover {
    border-color: #000;
    background-color: #fff;
}

.popup .popup-close {
    position: absolute;
    right: 0;
    top: 0;
    padding: 1rem;
    cursor: pointer;
    color: #ccc;
    z-index: 101;
}
.popup .popup-close:hover {
    color: #000;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */


/* on screen - 
   ========================================================================== */

@media screen {

    /* Wrapper, der alles umschließt */
    .wrapper-outer {
        display: flex;
        flex-direction: column;
        min-height: 100vh;
        min-width: 320px;
        margin: 0 auto;
        position: relative;
    }

}


/* ab 36rem - 576px
   ========================================================================== */
@media screen and (min-width: 36rem) {

    .mae-pressbox-showfront .pressbox-images {
        float: right;
        margin-left: 1rem;
    }



}



/* ab 640px - 
   ========================================================================== */
@media screen and (min-width: 640px) {

    .page-header {
        text-align: left;
    }

    .mae-shop-article-detail-info-list dl div {
        width: 50%;
    }

    .mae-shop-location-swiper .swiper-slide img {
        aspect-ratio: 2/1;
    }

    .mae-shop-article-navigation > div {
        display: block;
    }

    .mae-status-bar {
        flex-direction: row;
    }


    .wsd-button {
        display: block;
    }


}


/* bis 768px - 
   ========================================================================== */

@media screen and (max-width: 768px) {

    .hero.is-maecsone.is-bold .navbar-menu {
        background-image: linear-gradient(141deg, var(--mae-custom-color-one-hero-start) 0%, var(--mae-custom-color-one) 71%, var(--mae-custom-color-one-hero-end) 100%);
    }
}


/* ab 768px - 
   ========================================================================== */
@media screen and (min-width: 768px) {

    .mae-container-1 > .column {
        width: 50%;
    }

    .mae-shop-location-swiper .swiper-slide img {
        aspect-ratio: 3/1;
    }

}


/* ab 769px - bulma 
   ========================================================================== */

@media screen and (min-width: 769px) {
    .avz-col-action,
    .programm-col-action {
        flex-direction: column;
        align-items: flex-end;
        justify-content: flex-start;
    }

    .avz-col-action .button,
    .programm-col-action .button {
        margin-bottom: 0.5rem;
        margin-left: 0;
    }

    .avz-col-action .btn-merkliste,
    .programm-col-action .btn-merkliste {
        order: 0;
    }

    .programm-header-item .order-01 {
        order: 1;
    }
    .programm-header-item .order-02 {
        order: 2;
    }

    .programm-col-content {
        order: 0;
    }

    .field-body {
        flex-grow: 3;
    }

    .mae-list-item .stand {
        text-align: right;
    }


    .banner-item .banner-download {
        aspect-ratio: 1/1;
    }

    .frame-type-form_formframework .actions {
        width: 25%;
    }

    .page-header-container {
        flex-direction: row;
    }
    
    
    .news .news-list-view-100 .article {
        flex-direction: row;
    }
    
    .news .news-list-view-100 .news-img-wrap {
        width: 50%;
    }
    
    .news .news-list-view-100 .news-img-wrap ~ .header-teaser {
        width: 50%;
    }
    
}


/* ab 960px - 
   ========================================================================== */

@media screen and (min-width: 960px) {
    .page-nav ul {
        flex-direction: row;
    }

    label.menu-toggle {
        display: none;
    }
    ul.page-nav-list {
        max-height: none;
    }

    .page-nav ul ul {
        display: none;
        position:absolute;
    }

    .page-nav ul li:hover > ul {
        padding-left:0;
        background:#777;
    }

    .page-nav ul li:hover > ul ab{
        color:#fff;
    }

    .nav-level-2 li {
        display: flex;
        padding-right: 2em;
    }

    .nav-level-2 li:hover,
    .nav-level-2 li a:hover {
        background:#ddd;
        color:#777;
    }

    .page-nav ul ul ul {
        margin:0 0 0 100%;
        box-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
    }

}


/* bis 1023px - 
   ========================================================================== */

@media screen and (max-width: 1023px) {

    .hero.is-maecsone .navbar-menu {
        background-color: var(--mae-custom-color-one);
    }

}


/* ab 1024px - bulma
   ========================================================================== */
@media screen and (min-width: 1024px) {

    .page-logo {
        margin: 1.5rem 0.5rem;
    }

    .page-nav {
        position: sticky;
        top: 0;
    }


    .mae-container-1 > .column {
        width: 25%;
    }

    .navbar-item,
    .navbar-link {
        margin: 0 0.5rem;
    }

    .navbar-item.has-dropdown {
        margin: 0;
    }

    .navbar.is-maecsone .navbar-end > .navbar-item .navbar-item {
        color: #aaa;
    }

    .navbar.is-maecsone .navbar-start > .navbar-item,
    .navbar.is-maecsone .navbar-start .navbar-link,
    .navbar.is-maecsone .navbar-end > .navbar-item,
    .navbar.is-maecsone .navbar-end > .navbar-item a.navbar-item,
    .navbar.is-maecsone .navbar-end .navbar-link {
        color: #fff;
    }

    .navbar.is-maecsone .navbar-end > .navbar-item a.navbar-item:hover,
    .navbar.is-maecsone .navbar-end > .navbar-item a.navbar-item.is-active {
        color: var(--mae-custom-color-one);
        background-color: #fff;
    }

    .navbar.is-maecsone .navbar-start > a.navbar-item:focus,
    .navbar.is-maecsone .navbar-start > a.navbar-item:hover,
    .navbar.is-maecsone .navbar-start > a.navbar-item.is-active,
    .navbar.is-maecsone .navbar-start .navbar-link:focus,
    .navbar.is-maecsone .navbar-start .navbar-link:hover,
    .navbar.is-maecsone .navbar-start .navbar-link.is-active,
    .navbar.is-maecsone .navbar-end > a.navbar-item:focus,
    .navbar.is-maecsone .navbar-end > a.navbar-item:hover,
    .navbar.is-maecsone .navbar-end > a.navbar-item.is-active,
    .navbar.is-maecsone .navbar-end .navbar-link:focus,
    .navbar.is-maecsone .navbar-end .navbar-link:hover,
    .navbar.is-maecsone .navbar-end .navbar-link.is-active {
        background-color: var(--mae-custom-color-one-activ);
        color: #fff;
    }

    .navbar.is-maecsone .navbar-start .navbar-link::after,
    .navbar.is-maecsone .navbar-end .navbar-link::after {
        border-color: #fff;
    }

    .navbar.is-maecsone .navbar-item.has-dropdown:focus .navbar-link,
    .navbar.is-maecsone .navbar-item.has-dropdown:hover .navbar-link,
    .navbar.is-maecsone .navbar-item.has-dropdown.is-active .navbar-link {
        background-color: var(--mae-custom-color-one-activ);
        color: #fff;
    }

    .navbar.is-maecsone .navbar-dropdown a.navbar-item.is-active {
        background-color: var(--mae-custom-color-one);
        color: #fff;
    }


    .mae-shop-cart-icon-container:hover .mae-shop-cart-small {
        display: block;
    }

    .wsd-button {
        right: -1.5rem;
    }

}


/* ab 1408px - bulma
   ========================================================================== */
@media screen and (min-width: 1408px) {

    .mae-shop-location-swiper .swiper-slide img {
        aspect-ratio: 4/1;
    }

}


/* ab 1520px - KLARO / WE_cookie_consent Ovverride
   ========================================================================== */
@media screen and (min-width: 1520px) {
    #klaro .klaro.we_cookie_consent .cm-link::before,
    #klaro .klaro.we_cookie_consent .cm-btn::before {
        margin-top: 0;
    }
}



/* Druck / Print
   ========================================================================== */
@media print {

    .no-print,
    .btn-merkliste-delete,
    #page-nav,
    #page-footer,
    #page-main-section-breadcrumb{
        display: none;
        visibility: hidden;
    }
}




/* MOBILE / APP
   ========================================================================== */


.mae-mobile {
    /* max-width: 80rem; */
}

.mae-mobile .navbar-burger {
    display: block;
}

.mae-mobile .navbar-start {
    flex-direction: column;
}

.mae-mobile .page-logo {
    margin: 0.5rem 0;
}


.mae-mobile .mobile-menu {
    display: none;
    position: absolute;
    z-index: 10;
    background: var(--mae-custom-color-one,#444);
    color: var(--mae-custom-color-one-inverse,#fff);
    width: 100%;
    left: 0;
    padding: 1rem;
    text-align: left;
    top: 6rem;

}


.mobile-navbar-dropdown {
    font-size: .875rem;
    padding-bottom: .5rem;
    padding-top: .5rem;
}

.mobile-navbar-dropdown .navbar-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.mae-mobile .navbar-item,
.mae-mobile .navbar-link {
    color: var(--mae-custom-color-one-inverse,#fff);
    display: block;
}

.mae-mobile .navbar-link.is-active,
.mae-mobile .navbar-link:focus,
.mae-mobile .navbar-link:focus-within,
.mae-mobile .navbar-link:hover,
.mae-mobile a.navbar-item.is-active,
.mae-mobile a.navbar-item:focus,
.mae-mobile a.navbar-item:focus-within,
.mae-mobile a.navbar-item:hover {
    background-color: #fafafa;
    color: var(--mae-custom-color-one,#444);
}

.mae-mobile .navbar-item.has-dropdown.is-active .navbar-link,
.mae-mobile .navbar-item.has-dropdown:focus .navbar-link,
.mae-mobile .navbar-item.has-dropdown:hover .navbar-link {
    background-color: #fafafa;
    color: var(--mae-custom-color-one,#444);
}


.mae-mobile .mobile-menu.is-active {
    display: block;
}

.mae-mobile .page-main-section {
    padding: 2rem 1rem;
}

.mae-mobile .wrapper-inner {
    max-width: 64rem;
    margin-left: auto;
    margin-right: auto;
}

.mae-mobile .page-header-nav,
.mae-mobile .page-header-reload {
    padding: 1rem;
}

.mae-mobile .button.reload-button {
    color: var(--mae-custom-color-one,#444);
    width: 3.25rem;
    height: 3.25rem;
}
.mae-mobile .button.reload-button:hover {
    color: var(--mae-custom-color-one-hover,#444);
}


.mae-mobile .page-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--mae-custom-color-one,#444);
}

.mae-mobile .page-footer {
    text-align: center;
}

.mae-mobile .page-footer .wrapper-inner {
    padding: 0.75rem;
}

.mae-mobile .page-footer-link {
    font-size: .875rem;
    padding: 0 0.75rem;
    white-space: nowrap;
    display: inline-block;
}


/* ==========================================================================
   # EOF layout.css
   ========================================================================== */





/* RESPONSIVE TABLE
   ========================================================================== */

ul.table-responsive {
    margin: 0;
    padding: 0;
    list-style: none;
}

.table-responsive,
table.table-responsive {
    display: block;
    width: 100%;
}

.table-responsive .table-row.theader,
table.table-responsive thead {
    display: none;
}

table.table-responsive tbody {
    display: block;
}

.table-responsive .table-row,
table.table-responsive tr {
    display: block;
    padding-top: 0.75rem;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid #eee;
    margin-bottom: 0.75rem;
}

.table-responsive .table-cell,
table.table-responsive th,
table.table-responsive td {
    display: block;
    border-width: 0;
    padding: 0.5em 0.75em;
    padding-top: 0;
    min-width: 100%;
}




.table-responsive .table-cell:before,
table.table-responsive th:before,
table.table-responsive td:before {
    display: block;
    content: attr(data-title);
    font-size: 0.75rem;
    line-height: 1;
    color: #969696;
    margin-bottom: 0.25em;

}

.table-responsive .table-cell.hide-label:before,
table.table-responsive th.hide-label:before,
table.table-responsive td.hide-label:before {
    display: none;
}
.table-responsive .hide-label {
    padding-bottom: 0;
}

@media screen and (min-width: 640px) {

    .table-responsive,
    table.table-responsive {
        display: table;
    }

    table.table-responsive thead {
        display: table-header-group;
    }

    table.table-responsive tbody {
        display: table-row-group;
    }

    .table-responsive .table-row,
    .table-responsive .table-row.theader,
    table.table-responsive tr {
        display: table-row;
        padding-top: 0;
        padding-bottom: 0;
        border-bottom: none;
        margin-bottom: 0;
    }

    .table-responsive .table-cell,
    table.table-responsive th,
    table.table-responsive td {
        display: table-cell;
        border-bottom: 1px solid #eee;
        padding-top: 0.5em;
        min-width: initial;
    }

    .table-responsive .table-row.theader .table-cell {
        font-weight: bold;
        border-bottom-width: 2px;
    }

    .table-responsive .table-cell:before,
    table.table-responsive th:before,
    table.table-responsive td:before {
        display: none;
    }





}

.mae-shop-article-last-seen {
    margin-top: 3rem;
}
.mae-shop-article-last-seen h3 {
    text-align: center;
    padding: .5rem 1rem;
    background-color: var(--mae-custom-color-four,rgb(234, 235, 223));
    color: var(--mae-custom-color-six,#4a4a4a);
    margin-left: -1rem;
    margin-right: -1rem;
    font-weight: 400;
}