﻿        /* 
    ------------------------------
    --- Basics to change from Bootstrap
    ------------------------------
*/

* { font-family: 'PT Sans', Arial, Verdana; }
b, strong { font-weight: 700 !important;}

html { font-size: 1rem; }

@media (max-width: 768px) {
    html { font-size: 0.9rem; }
}

.marked-text { text-transform: uppercase; font-size: 0.9rem; font-weight: 700;}
.hiddenPanel { display: none; }


div.Ornament { position: fixed; right: 0; left: 0; bottom: 0; height: 5px; z-index: 1000; background-color: #1e035e; }



/* 
    ------------------------------
    --- Containers
    ------------------------------
*/

.page-content-body { margin-top: 70px; }
.page-content-body-start { margin-top: 0; }

.container.containerWide { max-width: 100% !important; }

@media (min-width: 1300px) {
    .container { max-width: 1170px; }
    .container.containerSlim { max-width: 850px; }
}
@media (min-width: 1200px) {
    .container.containerSlim { max-width: 850px; }
}
@media (min-width: 992px) {
    .container.containerSlim { max-width: 850px; }
}




/* 
    ------------------------------
    --- Header and menu
    ------------------------------
*/

/* Menü - Balken */
.sticky.is-sticky { position: fixed; left: 0; right: 0; top: 0; z-index: 100; width: 100%; }

.menu .navbar { padding-top: 1rem; padding-bottom: 1rem; }
.menu .navbar-brand { padding-top: 0.32rem; padding-bottom: 0.32rem; }
.navbar-expand>.container, 
.navbar-expand>.container-fluid { padding-right: 15px; padding-left: 15px; }

.menu.affix { background-color: #F9F9F9; transition: 0.2s; background-color: #F9F9F9; box-shadow: inset 0 1px 0 rgba(255,255,255,0.15), 0 1px 5px rgba(0,0,0,0.075);}
.menu.affix a.navbar-brand img { transition: 0.3s; height: 25px; }

.navbar-expand .navbar-nav .nav-link { font-weight: 400; font-size: 1.1rem; }
.navbar-expand .navbar-nav .nav-link-language { margin-right: 0; }
.navbar-expand .navbar-nav .nav-link-language img { width: 24px; }

.navbar-expand .navbar-toggler { display: block; }

@media (orientation: landscape) and (max-height: 425px) {
    .navbar-brand img {max-height: 30px !important;}
}

@media (max-width: 576px) {
    .navbar-brand { margin-top: 0.1rem; }
    .navbar-brand img { max-height: 60px; }
    
    .navbar-expand .navbar-nav { flex-direction: column; }
    .navbar > .container, .navbar > .container-fluid { align-items: normal; }
}


/* Menü - Hauptmenü */
header ul.mainNavigation { margin-left: 0; list-style-type: none; padding-left: 0; }
header ul.mainNavigation li { margin-left: 1rem; position: relative; }
header ul.mainNavigation li span.nav-link { cursor: pointer; }
header ul.mainNavigation li ul { position: absolute;  left: -10px; background: #F9F9F9; padding: 20px; display: none; list-style-type: none; 
                                 margin: 0; padding-top: 25px; padding-bottom: 15px; min-width: 150px; }
header ul.mainNavigation li:hover ul { display: block; }
header ul.mainNavigation li ul li { white-space: nowrap; margin-bottom: 0.5rem; margin-left: 0; margin-right: 0; }
header ul.mainNavigation li ul li a { display: block; text-decoration: none; padding: 0;  }
header ul.mainNavigation li ul li a.SubMenuPoint { padding: 0; } 


header ul.mainNavigation .SubMenuPoint { display: block; color: #ffffff; padding: 0.8rem; padding-top: 0.65rem; padding-bottom: 0.65rem; position: relative; cursor: pointer; }

@media (max-width: 1024px) {
    header ul.mainNavigation .SubMenuPoint { padding-top: 0.3rem; padding-bottom: 0.3rem; }
}

header ul.mainNavigation a.hasSubMenu:not(.mainNavigationPoint):before { content: "\f078"; font-family: "Font Awesome 5 Pro"; font-size: 0.75rem; float: right; }
header ul.mainNavigation a.hasSubMenu:not(.mainNavigationPoint)[aria-expanded="true"]:before { content: "\f077"; }

header ul.mainNavigation .SubLevelMenuPoint { display: block; font-size: 0.9rem;  padding: 0.8rem; text-transform: none; }

header ul.mainNavigation li span,
header ul.mainNavigation a,
header ul.mainNavigation a:link,
header ul.mainNavigation a:visited,
header ul.mainNavigation a.hasSubMenu,
header ul.mainNavigation a.hasSubMenu:link,
header ul.mainNavigation a.hasSubMenu:visited { color: #777777; text-decoration: none; transition: 0.2s; }
header ul.mainNavigation a:hover,
header ul.mainNavigation a:active,
header ul.mainNavigation a.hasSubMenu:hover,
header ul.mainNavigation a.hasSubMenu:active { color: #3d0797; text-decoration: none; transition: 0.2s; }

header ul.mainNavigation a.active:link,
header ul.mainNavigation a.active:visited { color: #777777; font-weight: 600;}
header ul.mainNavigation a.active:hover,
header ul.mainNavigation a.active:active { color: #3d0797; font-weight: 600;} /* Active states */

header ul.mainNavigation .mainNavigationPoint { display: block; font-size: 1.6rem; padding: 0.5rem; font-weight: 600; padding-left: 1.2rem; padding-right: 1.2rem; }
header ul.mainNavigation .SubMenuPoint,
header ul.mainNavigation li { font-size: 1rem;}
header ul.mainNavigation li a { color: #3d0797; padding-left: 1.2rem; padding-right: 1.2rem; }





/* Menü - Responsive */
.menuResponsive { position: fixed; right: 0; left: 0; bottom: 0; z-index: 1040; }

@media (min-width: 769px) { .menuResponsive {display: none;} }
@media (max-width: 768px) { .menu .hideResponsive {display: none !important;} }

.menuResponsive .menuResponsiveContainer { color: #ffffff; border-radius: 10px; display: flex; flex-wrap: wrap; position: absolute; right: 10px; bottom: 10px; z-index: 1050; background-color: #090030;}

.menuResponsive .menuResponsiveContainer .menuResponsiveItem { flex:1; }
.menuResponsive .menuResponsiveContainer .menuResponsiveItem:last-child { border-right: none; }

.menuResponsive .menuResponsiveContainer .menuResponsiveItem a { display: block;  text-align: center; padding: 0.5rem 0.7rem; font-size: 1.8rem; color: #ffffff; cursor: pointer; }
.menuResponsive .menuResponsiveContainer .menuResponsiveItem a:link,
.menuResponsive .menuResponsiveContainer .menuResponsiveItem a:visited,
.menuResponsive .menuResponsiveContainer .menuResponsiveItem a:active,
.menuResponsive .menuResponsiveContainer .menuResponsiveItem a:hover { color: #ffffff; text-decoration: underline; }

@media (orientation: landscape) { .menuResponsive .menuResponsiveContainer .menuResponsiveItem a { padding: 0.5rem; font-size: 1.5rem; } }

.menuResponsive .menuResponsiveList { overflow-y: auto; overflow-x: hidden; display: none; z-index: 1000; padding-top: 3rem; padding-bottom: 7rem; 
                                        position: fixed; right: 0; left: 0; bottom: 0; top: 0; background: rgba(255, 255, 255, 0.9);}

.menuResponsive .menuResponsiveList .mainNavigationPoint.hasSubmenu:before { content: "\f078"; font-family: "Font Awesome 5 Pro"; float: right; }
.menuResponsive .menuResponsiveList .mainNavigationPoint.hasSubmenu[aria-expanded="true"]:before { content: "\f077";}

.menuResponsive .menuResponsiveList .navbar-nav { margin: 15px; display: flex; flex-wrap: wrap; flex-direction: row; }
.menuResponsive .menuResponsiveList .navbar-nav li a { margin: 0; padding: 0; font-size: 1.1rem; font-weight: 400; }

.menuResponsive .menuResponsiveList .navbar-nav li:first-child {text-align: left; padding-left: 0.5rem;}
.menuResponsive .menuResponsiveList .navbar-nav li:nth-child(2) { text-align: right; padding-right: 0.5rem; }
.menuResponsive .menuResponsiveList .mainNavigationPoint { font-size: 1.5rem; }
.menuResponsive .menuResponsiveList .SubMenuPoint { text-transform: none; font-size: 1rem;}

.menuResponsive .menuResponsiveList a { display: block; padding: 0.5rem; font-size: 2rem; color: #090030; cursor: pointer; }
.menuResponsive .menuResponsiveList a:link,
.menuResponsive .menuResponsiveList a:visited,
.menuResponsive .menuResponsiveList a:active { color: #090030; text-decoration: none; }
.menuResponsive .menuResponsiveList a:hover { color: #090030; text-decoration: underline; }

.menuResponsive .menuResponsiveList ul { list-style-type: none; margin-left: 0;  padding-left: 1rem;}
.menuResponsive .menuResponsiveList ul li a { display: block; padding: 0.5rem; font-size: 0.8rem; color: #090030; cursor: pointer; }
.menuResponsive .menuResponsiveList ul li a:link,
.menuResponsive .menuResponsiveList ul li a:visited,
.menuResponsive .menuResponsiveList ul li a:active { color: #090030; text-decoration: none; }
.menuResponsive .menuResponsiveList ul li a:hover { color: #090030; text-decoration: underline; }


/* 
    ------------------------------
    --- Carousel Slider
    ------------------------------
*/

.carousel .carousel-indicators li { width: 9px; height: 9px; border-radius: 3px;}

/* Controls */
.carousel-control-next:focus, 
.carousel-control-next:hover, 
.carousel-control-prev:focus, 
.carousel-control-prev:hover { opacity: 1;}

.carousel-control-next,
.carousel-control-prev { width: 10%;  z-index: 6; opacity: 1; border-radius: 3px; }

.carousel-main a.carousel-control-prev .carousel-control-prev-icon { background-image: url(../images/arrow_prev.png); width: 50px;  height: 50px; box-shadow: none !important; border-radius: 3px; }
.carousel-main a.carousel-control-next .carousel-control-next-icon { background-image: url(../images/arrow_next.png); width: 50px; height: 50px; box-shadow: none !important; border-radius: 3px; }

@media (max-width: 576px) {
    .carousel-control-next,
    .carousel-control-prev { width: 50%; align-items: flex-end; padding-bottom: 6rem; }
    .carousel-control-next { justify-content: flex-start; padding-left: 0.5rem; }
    .carousel-control-prev { justify-content: flex-end; padding-right: 0.5rem; }
    
    .carousel-main a.carousel-control-prev .carousel-control-prev-icon,
    .carousel-main a.carousel-control-next .carousel-control-next-icon { transform: scale(0.8);}
}


/* Items */
.carousel-main .carousel-item { overflow: hidden; background-size: cover; height: 40vh; }
.carousel-main .carousel-item div.container { position: relative; height: 100%; }
.carousel-main .carousel-item div.container div.slider-content { position: absolute; bottom: 100px; width: 100%; transition: 1s; opacity: 0; z-index: 10; }
.carousel-main .carousel-item h1 { color: #ffffff; font-weight: 500; font-size: 5.5rem; text-shadow: 1px 1px 5px rgba(0,0,0,0.75); line-height: 3rem; margin-bottom: 1rem; font-family: 'Source Sans 3'; }
.carousel-main .carousel-item h2 { color: #ffffff; font-weight: 400; font-size: 2rem; text-shadow: 1px 1px 5px rgba(0,0,0,0.75); line-height: 2rem; margin-bottom: 1rem; font-family: 'Source Sans 3'; }

.page-content-body-start .carousel-main .carousel-item div.container div.slider-content { bottom: 220px; }
.page-content-body-start .carousel-main .carousel-item h1 { font-weight: 400; font-size: 7.8rem; text-shadow: 1px 1px 5px rgba(0,0,0,0.75); line-height: 7.5rem; margin-bottom: 0; }
.page-content-body-start .carousel-main .carousel-item h2 { font-weight: 300; font-size: 4.2rem; text-shadow: 1px 1px 5px rgba(0,0,0,0.75); line-height: 4rem;}


.carousel-main .carousel-item .btn { background-color: rgba(0, 0, 0, 0.25); border: 2px solid #ffffff;  color: #ffffff;  text-align: center; text-transform: uppercase;
                                     font-weight: 800;  font-size: 0.9rem; margin-bottom: 2rem; transition: 0.2s; border-radius: 3px; text-shadow: 1px 1px 5px rgba(0,0,0,0.75);}
.carousel-main .carousel-item .btn:hover { border-color: #F19A3E; background-color: #F19A3E; color: #ffffff; }

@media (max-width: 768px) {
    .carousel-main .carousel-item div.container div.slider-content {  width: 100%; }
}
@media (max-width: 576px) {
    .carousel-main .carousel-item div.container div.slider-content { bottom: 10rem; }
}
@media (max-width: 450px) {
    .carousel-main .carousel-item div.container div.slider-content,
    .page-content-body-start .carousel-main .carousel-item div.container div.slider-content { width: auto; left: 10px; right: 10px; }
    .carousel-main .carousel-item h1,
    .page-content-body-start .carousel-main .carousel-item h1 {font-size: 2.5rem; line-height: 3rem; margin-bottom: 1.5rem;}
    .carousel-main .carousel-item h2,
    .page-content-body-start .carousel-main .carousel-item h2 {font-size: 2rem; line-height: 2.4rem;}
}
@media (max-width: 350px) {
    .carousel-main .carousel-item div.container div.slider-content,
    .page-content-body-start .carousel-main .carousel-item div.container div.slider-content { width: auto; left: 10px; right: 10px; }
    .carousel-main .carousel-item h1,
    .page-content-body-start .carousel-main .carousel-item h1 {font-size: 1.9rem; line-height: 2.6rem;}
    .carousel-main .carousel-item h2,
    .page-content-body-start .carousel-main .carousel-item h2 {font-size: 1.6rem; line-height: 2rem;}
}


/* Parallax */
.carousel-main .carousel-item div.parallax { position: absolute; z-index: 5; top: 0; right: 0; transition: 1s; opacity: 0; }
.carousel-main .carousel-item div.parallax img { position: relative; display: block; max-width: 100%; }

@media (max-width: 1300px) { .carousel-main .carousel-item div.parallax { width: 1100px; }}
@media (max-width: 1200px) { .carousel-main .carousel-item div.parallax { width: 1000px; }}
@media (max-width: 768px) { .carousel-main .carousel-item div.parallax { width: 750px; }}
@media (max-width: 680px) { .carousel-main .carousel-item div.parallax { display: none; }}




/* 
    ------------------------------
    --- Buttons
    ------------------------------
*/

.btn-primary,
a.btn,
button.btn,
input[type="submit"].btn,
a.btn:link,
a.btn:visited,
a.btn:active {
    background-color: #F19A3E;
    border: 1px solid #F19A3E;
    border-radius: 5px;
    color: #ffffff;
    font-size: 1.1rem; 
    font-weight: 400;
    line-height: 1.5rem; 
    margin-bottom: 0.5rem;
    padding: .4rem 0.8rem;
    text-align: center;
    text-shadow: 0 0 4px rgba(0,0,0,0.85);
    transition: 0.2s;
}

.btn-primary i,
a.btn i,
button.btn i,
input[type="submit"].btn i,
.btn-primary em,
a.btn em,
button.btn em,
input[type="submit"].btn em { margin-right: 0.5rem;}

.btn-primary,
.btn-secondary { background-color: #F19A3E; border-color: #F19A3E; text-shadow: 0 0 4px rgba(0,0,0,0.85);}
.btn-lg { font-size: 1.2rem; }

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled).active, 
.btn-primary:not(:disabled):not(.disabled):active, 
.show>.btn-primary.dropdown-toggle,
div#pnlExportTop .dropdown-item.active,
div#pnlExportTop .dropdown-item:active,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active,
.btn-secondary:not(:disabled):not(.disabled).active, 
.btn-secondary:not(:disabled):not(.disabled):active, 
.show>.btn-secondary.dropdown-toggle,
a.btn:hover,
button.btn:hover,
input[type="submit"].btn:hover,
a.btn:focus,
button.btn:focus,
input[type="submit"].btn:focus
{
    background-color: #F19A3E !important;
    border-color: #F19A3E !important;
    color: #ffffff;
}

.btn-primary.disabled, .btn-primary:disabled { background-color: #F19A3E; color: #FFFFFF; border-color: #F19A3E; }
.btn.focus, .btn:focus { outline: 0; box-shadow: none !important; }


.btn.btn-sm { padding: .5rem 1.25rem; }
.btn.btn-xs { padding: .35rem 1rem; }



/* 
    ------------------------------
    --- Search and contact overlay
    ------------------------------
*/

header div.translatorOverlay,
div.searchOverlay { color: #ffffff; display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 40; overflow-y: auto;
                            background: rgba(222,33,39,0.9); background: linear-gradient(45deg, rgba(222,33,39,1) 0%, rgba(136,8,15,0.9) 100%);}
div.searchOverlay button.buttonSearch:hover,
div.searchOverlay button.buttonSearch:focus,
div.searchOverlay button.buttonSearch:active{ color: #F19A3E;}


div.searchOverlay { padding-top: 30vh; }
div.searchOverlay form { display: flex; flex-wrap: wrap; }

div.searchOverlay .searchHeadline { font-size: 3rem; font-weight: 800; color: #ffffff; }

@media (max-width: 768px) {
    div.searchOverlay .searchHeadline { font-size: 2.5rem; }
}

div.searchOverlay input.textboxSearch {
    font-size: 1.5rem;
    font-weight: 400;
    background-color: transparent;
    border: none;
    border-bottom: 2px solid #ffffff;
    padding: 1rem;
    padding-left: 0; 
    padding-right: 0;
    color: #ffffff;
    flex: 0 0 85%;
    max-width: 85%;
}

div.searchOverlay input.textboxSearch::placeholder {color: #ffffff;}
div.searchOverlay input.textboxSearch:hover,
div.searchOverlay input.textboxSearch:focus,
div.searchOverlay input.textboxSearch:active {outline: none;}

div.searchOverlay button.buttonSearch {
    font-size: 2rem;
    font-weight: 400;
    background-color: transparent;
    padding: 1rem;
    color: #ffffff;
    flex: 0 0 15%;
    max-width: 15%;
    border: none;
}

div.searchOverlay button.buttonSearch:hover,
div.searchOverlay button.buttonSearch:focus,
div.searchOverlay button.buttonSearch:active { outline: none; }

header .navbar-nav .nav-link-search,
header .navbar-nav .nav-link-translator { padding: .5rem .5rem; margin-bottom: 4rem;  margin-right: .5rem;}


@media (max-width: 576px) {
    div.searchOverlay { padding-top:10vh; padding-bottom: 100vh;}
}

@media (max-height: 576px) and (orientation: landscape) {
    div.searchOverlay { padding-top:10vh; padding-bottom: 100vh;}
}


/* 
    ------------------------------
    --- Breadcrumb
    ------------------------------
*/

.breadcrumbs { margin-bottom: 2rem; font-size: 1rem; }
.breadcrumbs span.breadcrumb-delimiter { font-size: 1.6rem; display: inline-block; margin-left: 0.5rem; margin-right: 0.5rem; color: #4b5561; font-weight: 300; vertical-align: middle; }

.breadcrumbs .breadcrumb-menu { margin-bottom: 2rem; line-height: 0.6rem; }
.breadcrumbs .breadcrumb-menu a { display: inline-block; padding-left: 0.25rem; padding-right: 0.25rem; }
.breadcrumbs .breadcrumb-menu span.NoLink { display: inline-block; padding-left: 0.25rem; padding-right: 0.25rem; }

.breadcrumbs .breadcrumb-menu,
.breadcrumbs .breadcrumb-menu a,
.breadcrumbs .breadcrumb-menu a:link,
.breadcrumbs .breadcrumb-menu a:visited,
.breadcrumbs .breadcrumb-menu a:active { color: #3c4959 !important; text-decoration: none !important; }
.breadcrumbs .breadcrumb-menu a:hover,
.breadcrumbs .breadcrumb-menu a:focus { color: #F19A3E !important; }



/* 
    ------------------------------
    --- Content formatting
    ------------------------------
*/

/* Headlines */
h1, h2, h3, h4 { word-break: break-word !important; overflow-wrap: break-word !important; word-wrap: break-word; }

h1 { margin-bottom: 1.5rem; color: #333333; font-size: 2.2rem; font-weight: 500; }
h2 { margin-bottom: 1.5rem; color: #333333; font-size: 1.8rem; font-weight: 400; margin-top: 1.7rem; line-height: 2rem;}
h3 { margin-bottom: 1rem; color: #333333; font-size: 1.5rem; font-weight: 400; margin-top: 0.5rem; }
h4 { color: #333333; font-weight: 400; font-size: 1.4rem; }
p { color: #333333; font-size: 1.1rem; line-height: 1.65rem;}
ol, ul { color: #333333; font-size: 1.1rem; margin-left: 0; }


.container[data-type='MAINCONTENTCONTAINER'] div.row:first-child div h2 { margin-top: 0; }

table tr td, table tr th {color: #333333; }
table tr td p:last-child, table tr th p:last-child { margin-bottom: 0;}

table.table-noborder td,
table.table-noborder th { border-top: none;}

div.col_333333 h1, 
div.col_333333 h2,
div.col_333333 h3, 
div.col_333333 h4,
div.col_333333 h5, 
div.col_333333 h6,
div.col_333333 p, 
div.col_333333 ul li,
div.col_333333 ol li, 
div.col_333333 table tr td, 
div.col_333333 table tr th { color: #333333;}
div.col_ffffff h1, 
div.col_ffffff h2,
div.col_ffffff h3, 
div.col_ffffff h4,
div.col_ffffff h5, 
div.col_ffffff h6,
div.col_ffffff p, 
div.col_ffffff ul li,
div.col_ffffff ol li, 
div.col_ffffff table tr td, 
div.col_ffffff table tr th { color: #ffffff;}
div.col_ffffff a,
div.col_ffffff a:link,
div.col_ffffff a:visited,
div.col_ffffff a:hover,
div.col_ffffff a:focus,
div.col_ffffff a:active { color: #ffffff !important;}
div.col_777777 h1, 
div.col_777777 h2,
div.col_777777 h3, 
div.col_777777 h4,
div.col_777777 h5, 
div.col_777777 h6,
div.col_777777 p, 
div.col_777777 ul li,
div.col_777777 ol li, 
div.col_777777 table tr td, 
div.col_777777 table tr th { color: #777777;}

/* Container */
.container[data-type='MAINCONTENTCONTAINER'] { padding-bottom: 5rem; padding-top: 5rem; }
.container[data-type='MAINCONTENTCONTAINER'].containerCompact { padding-bottom: 2rem; padding-top: 2rem; }


/* Lists */
.container[data-type='MAINCONTENTCONTAINER'] ul {list-style-type: none;}
.container[data-type='MAINCONTENTCONTAINER'] ul li{ margin-bottom: 7px; line-height: 1.6rem; position: relative;}
.container[data-type='MAINCONTENTCONTAINER'] ul li:before { content: ""; background-image: url(../images/list-dot.png); width: 3px; height: 3px; color: #F19A3E; 
                                                            position: absolute; font-weight: 700 !important; left: -18px; top: 10px; }

.container[data-type='MAINCONTENTCONTAINER'] ul li ul { margin-top: 8px; margin-bottom: 8px; position: relative;}
.container[data-type='MAINCONTENTCONTAINER'] ul li ul li:before { content: ""; color: #F19A3E; position: absolute; font-weight: 700 !important; left: -18px; top: 10px; line-height: 1.6rem; }

.container[data-type='MAINCONTENTCONTAINER'] ol {list-style-type: decimal;}
.container[data-type='MAINCONTENTCONTAINER'] ol li{ margin-bottom: 7px; line-height: 1.6rem; position: relative; padding-left: 0.5rem;}

.container[data-type='MAINCONTENTCONTAINER'] ol li ol { margin-top: 8px; margin-bottom: 8px; position: relative;}


/* Links */
.container[data-type='MAINCONTENTCONTAINER'] a:not(.btn),
.container[data-type='MAPTEASER'] a:not(.btn) { transition: .2s; }

.container[data-type='MAINCONTENTCONTAINER'] a:not(.btn):link,
.container[data-type='MAINCONTENTCONTAINER'] a:not(.btn):visited,
.container[data-type='MAINCONTENTCONTAINER'] a:not(.btn):active { color: #3d0797; text-decoration: underline;}
.container[data-type='MAINCONTENTCONTAINER'] a:not(.btn):hover { color: #3d0797; text-decoration: none;}
.container[data-type='MAINCONTENTCONTAINER'] a.btn-secondary:focus,
.container[data-type='MAINCONTENTCONTAINER'] a.btn-secondary:hover{ background-color: #171715 !important; border-color: #171715 !important;}

.container[data-type='MAINCONTENTCONTAINER'] img,
.container[data-type='MAINCONTENTCONTAINER'] .imageContainer,
.container[data-type='MAINCONTENTCONTAINER'] .carousel { margin-bottom: 1rem; background-size: cover; }




@media (max-width: 768px) {
    
    h1 { font-size: 2.5rem;  }
    h2 { line-height: 2.2rem; font-size: 1.8rem;}

    p,
    .breadcrumbs .breadcrumb-menu,
    .collapsiblepanel .card .card-header .btn,
    .container[data-type='MAINCONTENTCONTAINER'] ul,
    .container[data-type='MAINCONTENTCONTAINER'] a.btn,
    .container[data-type='MAINCONTENTCONTAINER'] table { font-size: 1.2rem;}
}


/* Accordion */
.collapsiblepanel .card { border-radius: 5px; background: none; margin-bottom: 0.5rem; border: 1px solid #d8d8d8; }
.collapsiblepanel .card h5 { margin-top: 2rem; margin-bottom: 1.5rem; text-align: center; }
.collapsiblepanel .card .card-header { padding: 0; background-color: transparent;  border: 0;}

.collapsiblepanel .card .card-header .btn .accordion-icon img { max-height: 35px; margin-bottom: 0;}
.collapsiblepanel .card .card-header .btn { padding: .75rem 1.25rem; display: block; width: 100%; text-align: left; background-color: transparent; border: 0; font-weight: 400;
                                            font-size: 1rem; margin-bottom: 0; color: #333333; text-shadow: none; }
.collapsiblepanel .card .card-header .btn:hover,
.collapsiblepanel .card .card-header .btn:focus { box-shadow: none; outline: none; color: #333333 !important; background-color: transparent !important; text-shadow: none; }
.collapsiblepanel .card .card-header .btn:after { content: "\f078"; font-family: 'Font Awesome 5 Pro'; font-weight: 400; width: 1.8rem; height: 1.8rem; position: absolute;
                                                  right: 0.6rem; top: 0.6rem; z-index: 1; text-align: center; padding-top: 2px; }
.collapsiblepanel .card .card-header .btn[aria-expanded="true"] { color: #3d0797; font-weight: 700; }
.collapsiblepanel .card .card-header .btn[aria-expanded="true"]:after { content: "\f077"; }



/* Fact Bubbles */
a.FactBubble {border-radius: 50%; height: 100px; width: 100px; margin-left: 10px; margin-right: 10px; text-align: center; padding: 35px; transition: 0.5s; display: inline-block; background-color: #1E035E; color: #ffffff; border: 1px solid #ffffff;}
a.FactBubble:hover { transform: scale(1.1); background-color: #18024a; box-shadow: 0 0 15px 0 rgba(100,70,184,1);}
a.FactBubble i.fa {font-size: 30px;}


@media (max-width: 768px) {
    a.FactBubble {height: 80px; width: 80px; padding: 25px; margin-bottom: 10px;}
    a.FactBubble i.fa {font-size: 25px;}
}



/* 
    ------------------------------
    --- Custom Controls
    ------------------------------
*/

.custom-control .custom-control-label::before { border-color:#ffffff;  }
.custom-control .custom-control-input:checked~.custom-control-label::before { border-color: #F19A3E; background-color: #F19A3E;}

.custom-control-input:checked~.custom-control-label::before { border-color: #F19A3E; background-color: #F19A3E;}
.custom-control-input:focus~.custom-control-label::before { box-shadow: 0 0 0 0.2rem rgba(209, 0, 10, .15);}
.custom-control-input:not(:disabled):active~.custom-control-label::before { background-color: rgba(209, 0, 10,.15); border-color: #ecf4dc; }



/* 
    ------------------------------
    --- Timeline
    ------------------------------
*/

/* Switch */
.timeline-item { position: relative; }
.timeline-item.timeline-presentation-switch.timeline-item-left { text-align: right; padding-right: 3rem;}
.timeline-item.timeline-presentation-switch.timeline-item-right { text-align: left; padding-left: 3rem;}

.timeline-item.timeline-presentation-switch.timeline-item-left:before {
    content: ""; background-color: #F19A3E; position: absolute; top: 13px; bottom: 0; right: -8px; 
    height: 18px; width: 18px; border-radius: 50%; transition: 0.2s; border: 2px solid #ededed; z-index: 2; }
.timeline-item.timeline-presentation-switch.timeline-item-right:before { 
    content: ""; background-color: #F19A3E; position: absolute; top: 13px; bottom: 0; left: -10px; 
    height: 18px; width: 18px; border-radius: 50%; transition: 0.2s; border: 2px solid #ededed; z-index: 2; }

.timeline-item.timeline-presentation-switch.timeline-item-left.important:before {  right: -12px; height: 26px; width: 26px; }
.timeline-item.timeline-presentation-switch.timeline-item-right.important:before { left: -14px; height: 26px; width: 26px; }

.timeline-item.timeline-presentation-switch.timeline-item-left:after { content: ""; border-right: 2px solid #F19A3E; position: absolute; top: 0; bottom: 0; right: 0; z-index: 1; }
.timeline-item.timeline-presentation-switch.timeline-item-right:after { content: ""; border-left: 2px solid #F19A3E; position: absolute; top: 0; bottom: 0; left: -2px; z-index: 1; }

.timeline-item.timeline-presentation-switch:first-child:after { top: 15px;}
.timeline-item.timeline-presentation-switch:last-child:after { bottom: auto; height: 15px;}

@media (max-width: 767px) {
    .timeline-item.timeline-presentation-switch { padding-bottom: 2rem;}
    .timeline-item.timeline-presentation-switch.timeline-item-left { text-align: left; padding-right: 0; padding-left: 3rem; }
    .timeline-item.timeline-presentation-switch.timeline-item-left:before { left: -10px; right: auto; }
    .timeline-item.timeline-presentation-switch.timeline-item-left.important:before { left: -14px; right: auto;}
    .timeline-item.timeline-presentation-switch.timeline-item-left:after { left: -2px; right: auto; border-left: 2px solid #F19A3E; border-right: none; }
}

@media (max-width: 575px) {
    .row.timeline { margin-left: 1rem; margin-right: 1rem;}
    .timeline-item.timeline-presentation-switch.timeline-item-left { padding-left: 2rem;}
    .timeline-item.timeline-presentation-switch.timeline-item-right { padding-left: 2rem;}
    .timeline-item.timeline-presentation-switch:last-child { padding-bottom: 0;}
}

/* Straight */
.timeline-item.timeline-presentation-straight { text-align: center; margin-top: 1rem;}
.timeline-item.timeline-presentation-straight:before { content: "\f078"; font-family: 'Font Awesome 5 Pro'; font-size: 2rem; font-weight: 400; 
                                                      color: #F19A3E; margin-bottom: 1.5rem; display: block; }
.timeline-item.timeline-presentation-straight.important:before { font-size: 2.5rem; font-weight: 600; }
.timeline-item.timeline-presentation-straight:first-child { margin-top: 0; }
.timeline-item.timeline-presentation-straight:first-child:before { display: none;}




/* 
    ------------------------------
    --- Posts
    ------------------------------
*/

@media (max-width: 576px) {
    section { margin-top: 1rem; }
}


/* Anpassungen für Masonry - Breite wird bei kurzen Texten sonst nicht korrekt berechnet, resultiert in zu schmalen (eigentlich 100% breiten) Grafiken */
@media (min-width: 769px){
    .postsCategoryTeaser .poststeaserColumn.col-md-3 h3 { font-size: 1.3rem; line-height: 1.5rem; }
    .postsCategoryTeaser .poststeaserColumn.col-md-3 p { font-size: 1rem; line-height: 1.2rem; }
    .masonry .poststeaserColumn.col-md-4 .imageContainer.small { width: 200px; }
}
@media (min-width: 1025px){
    .masonry .poststeaserColumn.col-md-4 .imageContainer.small { width: 300px; }
}
@media (min-width: 1280px){
    .masonry .poststeaserColumn.col-md-4 .imageContainer.small { width: 376px; }
}

@media (max-width: 576px) {
    .postsCategoryTeaser .poststeaserColumn { padding-left: 15px; padding-right: 15px;}
    .postsCategoryTeaser .poststeaserColumn div.row div h2,
    .postsCategoryTeaser .poststeaserColumn div.row div h3,
    .postsCategoryTeaser .poststeaserColumn div.row div h4,
    .postsCategoryTeaser .poststeaserColumn div.row div h5,
    .postsCategoryTeaser .poststeaserColumn div.row div h6,
    .postsCategoryTeaser .poststeaserColumn div.row div p { padding-left: 0; padding-right: 0; }
}



/* 
    ------------------------------
    --- Footer and scroll-to-top arrow
    ------------------------------
*/

footer { color: #333333; border-top: 1px solid #e9e9e9; }
footer p { color: #333333; font-size: 0.9rem; line-height: 1.2rem; }

footer .footer-base { padding-top: 1.2rem; padding-bottom: 0.7rem; position: relative; }
footer .footer-base .pictogram { position: absolute; left: 15px; top: -1.5rem;}

footer a,
footer a:link,
footer a:visited,
footer a:hover,
footer a:active { color: #3d0797; text-decoration: none; }


/* Footer Menü */
footer .footer-base .menu { margin-bottom: 1rem; }
footer .footer-base .menu a { font-size: 1rem; font-weight: 500; margin-right: 1rem; }
footer .footer-base .menu a,
footer .footer-base .menu a:link,
footer .footer-base .menu a:visited { color: #3d0797; text-decoration: none; }
footer .footer-base .menu a:hover,
footer .footer-base .menu a:focus,
footer .footer-base .menu a:active { color: #3d0797; text-decoration: none; }


/* Copyright */
footer .copyright { text-align: center; color: #a6a6a6; font-size: 0.8rem; margin-top: 0.5rem; }
footer .copyright .copyright-delimiter { display: inline-block; padding-left: 0.5rem; padding-right: 0.5rem; }

@media (max-width: 768px) {
    footer .footer-base .menu { text-align: center; padding-top: 0.5rem; }
    footer .address-information { display: none;}
}


/* 
    ------------------------------
    --- Waiting Dialog
    ------------------------------
*/

#waiting-dialog .modal-content { border: none;}
#waiting-dialog .modal-body p { font-size: 1.3rem; line-height: 2rem; }
#waiting-dialog .modal-body p i { color: #b60303;}




/* 
    ------------------------------
    --- Validators
    ------------------------------
*/

.form-control.error { background-color: rgba(209, 0, 10, .15); }

.tooltip-error { z-index: 3000; font-size: 0.9rem; }
.tooltip-error .tooltip-inner { background-color: #ffffff; opacity: 1; color: #b60303;}
.tooltip-error.bs-tooltip-top .arrow:before { border-top-color: #ffffff;}
.tooltip-error.bs-tooltip-right .arrow:before { border-right-color: #ffffff; }
.tooltip-error.bs-tooltip-left .arrow:before { border-left-color: #ffffff; }
.tooltip-error.bs-tooltip-bottom .arrow:before { border-bottom-color: #ffffff; }


/* 
    ------------------------------
    --- Select 2
    ------------------------------
*/

.select2 { width: 100% !important; max-width: 100% !important; }

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple { border: 1px solid; }

.select2Small .select2-container--default .select2-selection--single,
.select2Small .select2-container--default .select2-selection--multiple { padding-top: 0; padding-bottom: 0; }

.select2-dropdown input:focus,
.select2-selection { outline: none; }

.select2Small .select2-container--default .select2-selection--single .select2-selection__arrow { height: 1.8rem; }
.select2-container--default .select2-results > .select2-results__options {  max-height: 300px; }

.select2-container--default.select2-container--focus .select2-selection--single, 
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-search--dropdown .select2-search__field,
.select2-dropdown {
    border-color: #F19A3E;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.ui-select-container.ui-select-bootstrap .ui-select-choices-row.active > a {
    background-color: #F19A3E;
}




/* 
    ------------------------------
    --- Google Translate
    ------------------------------
*/

.goog-te-banner-frame.skiptranslate { display: none !important; }

.container[data-type="MAINCONTENTCONTAINER"] div.google-translator a:not(.btn):link,
.container[data-type="MAINCONTENTCONTAINER"] div.google-translator a:not(.btn):visited,
.container[data-type="MAINCONTENTCONTAINER"] div.google-translator a:not(.btn):active { text-decoration: none !important; }

div.google-translator .goog-te-gadget-icon { margin-bottom: 0; }





/* 
    ------------------------------
    --- Cookie Notice
    ------------------------------
*/


.modal-cookienotice p { font-size: 1rem; color: #333333;}
.accordion-cookienotice p { font-size: 0.9rem; line-height: 1.2rem;}
.accordion-cookienotice .card { border: none;}
.accordion-cookienotice .card .card-header { padding: .6rem 1rem; background-color: #F2F2F2; border-bottom: 2px solid #ffffff; }
.accordion-cookienotice .card .card-header button { font-weight: 400; padding: 0;  border: none; margin: 0; font-size: 1rem; text-shadow: none !important; }
.accordion-cookienotice .card .card-header button,
.accordion-cookienotice .card .card-header button:hover,
.accordion-cookienotice .card .card-header button:focus { color: #333333; text-decoration: none; background: none !important; background-color: transparent !important; box-shadow: none; text-transform: none; }
.accordion-cookienotice .card .card-header button:before { content: "\f078"; color: #333333; font-family: 'Font Awesome 5 Pro'; font-weight: 300; font-size: 1.3rem; margin-right: 0.5rem;}
.accordion-cookienotice .card .card-header button[aria-expanded=true]:before { content: "\f077";}
.accordion-cookienotice .card .card-header .custom-switch { padding-top: 5px; float: right;}

.modal-cookienotice a,
.modal-cookienotice a:link,
.modal-cookienotice a:visited,
.modal-cookienotice a:active { color: #F19A3E; text-decoration: underline;}
.modal-cookienotice a:hover,
.modal-cookienotice a:focus { color: #F19A3E; text-decoration: none;}
.accordion-cookienotice .custom-control-input:checked~.custom-control-label::before {border-color: #F19A3E; background-color: #F19A3E;}

.modal-cookienotice .modal-footer button.btn { text-transform: none; font-weight: 600; padding: 0.5rem; padding-left: 1rem; padding-right: 1rem; margin-bottom: 0; font-size: 1rem;}

.ccm-settings-summoner.ccm-show  {bottom: 15px;}


/* 
    ------------------------------
    --- Mark Search
    ------------------------------
*/

.mark-searchterm { padding-left: 2px; padding-right: 2px;  background-color: #EEEEEE;}
a.btn .mark-searchterm { background-color: #b60303; }



/* 
    ------------------------------
    --- Fancybox
    ------------------------------
*/

.fancybox-progress { background: #F19A3E;}
button.fancybox-arrow--left:before { content: 'f054'; font-family: FontAwesome; }



/* 
    ------------------------------
    --- Kontakt Button
    ------------------------------
*/

div.help-button { position: fixed; bottom: 4rem; right: 1.5rem; background-color: #ffffff; z-index: 35; display: flex; cursor: pointer; 
                          width: 4rem; border-radius: 5px; box-shadow: 0 0 10px rgba(0,0,0,0.4); overflow: hidden; }
div.help-button .flyout-icon { color: #1e035e; font-size: 2rem; }
div.help-button .flyout-item { padding: 1rem; padding-top: 0.5rem; padding-bottom: 0.5rem; cursor: pointer; display: flex; cursor: pointer; }
div.help-button .flyout-item .flyout-text { padding-left: 1rem; padding-right: 1rem; color: #333333;  width: 0; display: none; opacity: 0; 
                                                   font-weight: 400; font-size: 0.9rem; padding-top: 4px; line-height: 1.2rem; white-space: nowrap;  }

@media (max-width: 768px) {
    div.help-button { display: none; width: 0; height: 0; visibility: hidden;}
}


/* 
    ------------------------------
    --- Kontakt Formular
    ------------------------------
*/


.custom-control .custom-control-label::before { border: 1px solid #ffffff; background-color: transparent; border-radius: 0; }
.custom-control.custom-switch .custom-control-label::before { border: 1px solid #adb5bd; border-radius: 10px;}
.custom-control-input:not(:disabled):active~.custom-control-label::before { border: 1px solid #f6f6f6; background-color: #f6f6f6; border-color: #f6f6f6;}




/* 
    //////////////////////////////////////////////////////////////////////////////////////////////
    //                                                                                          //
    //   CUSTOM CONTENT STYLES                                                                  //
    //   Bitte keine Layout Styles nach diesem Abschnitt einfügen!                              //
    //                                                                                          //
    //////////////////////////////////////////////////////////////////////////////////////////////
*/


/* 
    ---------------------------------
    --- Address info footer and menu
    ---------------------------------
*/

.menuOverlay h3,
.menuOverlay p,
.contactOverlay h2,
.contactOverlay h3,
.contactOverlay p,
.contactOverlay,
.contactOverlay a,
.contactOverlay a:link,
.contactOverlay a:visited   { color: #ffffff; text-decoration: none; }
.contactOverlay a:hover,
.contactOverlay a:focus,
.contactOverlay a:active  { color: #ffffff; text-decoration: underline; }

div[data-overlay="true"] .btn,
div[data-overlay="true"] .btn:link,
div[data-overlay="true"] .btn:visited { background-color: transparent; border: 2px solid #ffffff; color: #ffffff; }
div[data-overlay="true"] .btn:hover,
div[data-overlay="true"] .btn:focus,
div[data-overlay="true"] .btn:active { border-color: #ffffff; background-color: rgba(256,256,256, 0.25); color: #ffffff; }






/* 
    //////////////////////////////////////////////////////////////////////////////////////////////
    //                                                                                          //
    //   WEB CONTENT CONTROLS                                                                   //
    //   Bitte keine Layout Styles nach diesem Abschnitt einfügen!                              //
    //                                                                                          //
    //////////////////////////////////////////////////////////////////////////////////////////////
*/



/* 
    ------------------------------
    --- Youtube Embed
    ------------------------------
*/

.video-wrapper { background-size: cover; background-position: center center; width: 100%; margin-bottom: 50px; position: relative; height: 0; padding-bottom: 56.25%; }
.video-wrapper .video-trigger { position: absolute; z-index: 9; background-color: rgba( 0, 0, 0, .6 ); color: #fff; right: 0; bottom: 0; top: 0; left: 0; }
.video-wrapper .video-trigger .video-info { color: #fff; font-size: 1.2rem;  margin-left: 25%; margin-right: 25%; margin-top: 15%; }
.video-wrapper .video-layer { position: relative; display: none;  margin: auto; position: absolute;  top: 0; left: 0; bottom: 0;  right: 0; } 
.video-wrapper .video-layer iframe.video-external { border: 0px none transparent;  width: 100%; height: 100%; }

@media (max-width: 1024px) {
    .video-wrapper .video-trigger .video-info { margin-left: 10%; margin-right: 10%; margin-top: 5%; }
}
@media (max-width:424px) {
    .video-wrapper .video-trigger .video-info { margin-left: 1rem; margin-right: 1rem;  margin-top: 1rem; } 
}

.video-wrapper .video-info h2 { text-align: center; margin-bottom: 3rem; color: #ffffff;}
.video-wrapper .video-info .btn { margin-top: 2rem; background-color: #F19A3E; color: #ffffff; font-size: 1.2rem; }
.video-wrapper .video-info p { color: #ffffff; font-size: 1rem;}

@media (max-width: 1024px) {
    .video-wrapper .video-info h2 { margin-bottom: 2rem;}
    .video-wrapper .video-info .btn { margin-top: 1rem;}
}
@media (max-width:576px) {
    .video-wrapper .video-info h2 { margin-bottom: .5rem;}
    .video-wrapper .video-info p { margin-bottom: .5rem;}
}
@media (max-width:424px) {
    .video-wrapper .video-info h2 { margin-bottom: .5rem; line-height: 1;}
    .video-wrapper .video-info p { margin-bottom: .5rem; font-size: 0.8rem;}
    .video-wrapper .video-info .btn { margin-top: 0;}
}

.video-wrapper .video-trigger p a { text-decoration: none; }

.video-wrapper .video-info p a,
.video-wrapper .video-info p a:link,
.video-wrapper .video-info p a:visited
.video-wrapper .video-info p a:active { text-decoration: none !important; }
.video-wrapper .video-info p a:hover { text-decoration: underline !important; }





/* 
    ------------------------------
    --- Infobox
    ------------------------------
*/

.Infobox { margin-bottom: 1rem; }
.Infobox .card.bg-primary .btn { margin-left: auto; margin-right: auto;  margin-right: 0; display: block; }

.Infobox .card.bg-primary,
.Infobox .card.bg-primary p,
.Infobox .card.bg-primary ul li,
.Infobox .card.bg-primary ol li,
.Infobox .card.bg-primary .btn { color: #ffffff !important; }



/* 
    ------------------------------
    --- Downloads
    ------------------------------
*/


.downloads { display: flex; flex-wrap: wrap; }
.downloads .download { width: 16.5rem; text-align: center;  margin: 0.5rem; padding-top: 0.75rem; }
.downloads .download i { color: #F19A3E; }

.downloads .download .card-body { padding: 0.25rem; }
.downloads .download .card-title { margin-bottom: 0.25rem;  font-size: 0.9rem; font-weight: 500; line-height: 1.2; color: #F19A3E;}
.downloads .download .card-text { font-size: 0.8rem; margin-bottom: 0.1rem; line-height: 1rem; }

.downloads a,
.downloads a:link,
.downloads a:visited,
.downloads a:active { text-decoration: none !important; }

@media (max-width: 425px) {
    .downloads .download { max-width: 50%; }
}

.asset-previewimage {
    width: 6rem;
}



/* 
    ------------------------------
    --- Search form/results
    ------------------------------
*/
.search-mainheadline {
    margin-top: 5rem;
} 

div.searchRealmResults::after { content: ""; border-bottom: 1px solid #cecece; display: block; padding-top: 2rem; margin-bottom: 3.5rem;}
div.searchRealmResults.lastItem::after { display: none;}

div.searchRealmResults h3 .badge-primary { background-color: #2F3F4F; font-size: 0.8rem; text-transform: none; font-weight: 400; padding: .35em .5em; vertical-align: middle; margin-left: 0.5rem; }

@media (max-width: 1024px) {
    div.searchRealmResults h3 .badge-primary { font-size: 1rem; }
}

div.searchRealmResults li.searchRealmResult { margin-bottom: 1rem;}
div.searchRealmResults li.searchRealmResult .searchRealmResultHeadline { font-size: 1.2rem; font-weight: 600; }
div.searchRealmResults li.searchRealmResult .searchRealmResultUrl { word-break: break-all; }





/* 
    ------------------------------
    --- Images and galleries
    ------------------------------
*/

div[data-row-type='IMG'] .imageContainer { width: 100%; background-color: #EEEEEE; background-repeat: no-repeat;  }

div[data-row-type='IMG'] a.imageContainer,
div[data-type='IMAGEGALLERY'] .imageContainer { display: block; width: 100%; background-repeat: no-repeat;  }

div[data-row-type='IMG'] .imageContainer.small,
div[data-type='IMAGEGALLERY'] .imageContainer.small {  height: 220px;}
div[data-row-type='IMG'] .imageContainer.smallvertical,
div[data-type='IMAGEGALLERY'] .imageContainer.smallvertical { height: 380px;  }
div[data-row-type='IMG'] .imageContainer.medium,
div[data-type='IMAGEGALLERY'] .imageContainer.medium { height: 400px;}
div[data-row-type='IMG'] .imageContainer.large,
div[data-type='IMAGEGALLERY'] .imageContainer.large { height: 800px; }

div.row-gallery div.col-lg-3 .imageContainer.small,
div.row-gallery div.col-lg-3 .imageContainer.small,
div.row-gallery div.col-md-3 .imageContainer.small,
div.row-gallery div.col-md-3 .imageContainer.small  { height: 150px;}


@media(min-width: 768px) {
    div[data-type='IMAGEGALLERY'] .col-lg-2 .imageContainer.small { height: 100px; }
}
@media(min-width:992px){
    div[data-type='IMAGEGALLERY'] .col-lg-2 .imageContainer.small { height: 180px; }
    div[data-row-type='IMG'] .col-md-3 .imageContainer.smallvertical,
    div[data-type='IMAGEGALLERY'] .col-lg-3 .imageContainer.smallvertical { height: 180px; }
}


 /* Gallery */
.row.row-gallery .col-md-4 { padding-left: 0.5rem; padding-right: 0.5rem;}
.row.row-gallery div.gallery-item-container { height: 150px;}

.row-gallery div p.caption { margin-bottom: 1.5rem; }

.row-gallery div a { position: relative; display: block; }
.row-gallery div a:after { color: #ffffff; content: "\f00e"; font-family: 'Font Awesome 5 Pro'; font-size: 35px; position: absolute; top: 0; bottom: 0; left: 0; right: 0;
    background: rgba(0,0,0,0.5); display: block; opacity: 0; z-index: 15;  transition: 0.5s; cursor: pointer; text-align: center; display:flex;
    flex-direction:row; align-items: center; justify-content: center; }
.row-gallery div a:hover:after { opacity: 1; }






/* 
    ------------------------------
    --- Jumbotron / Image Divider
    ------------------------------
*/

.jumbotron { background-position: center; background-repeat: no-repeat;  background-size: cover; height: 60vh; overflow: hidden; position: relative; z-index: 10;
             margin: 0; display: flex;  align-items: center; justify-content: center; }

.jumbotron.imagedivider-split { background-color: #2c2a28;}
.jumbotron.imagedivider-split .divider-content { padding-right: 0; }
.jumbotron.imagedivider-split .divider-image { position: absolute; top: 0; bottom: 0; width: 50%; }
.jumbotron.imagedivider-split.Right .divider-image { right: 0; }
.jumbotron.imagedivider-split.Left .divider-image {left: 0; }


.jumbotron .divider-content-boxed { background-color: rgba(256, 256, 256, 0.8); padding: 2.5rem; padding-top: 3rem; }
.jumbotron .divider-content-boxed h2 { margin-top: 0;  }
.jumbotron .divider-content-boxed a.btn { margin-bottom: 0; margin-top: 1rem; }

.jumbotron .divider-content { padding-right: 10rem; }
.jumbotron .divider-content h2,
.jumbotron .divider-content p { color: #ffffff; }
.jumbotron .divider-content a,
.jumbotron .divider-content a:link,
.jumbotron .divider-content a:visited,
.jumbotron .divider-content a:hover,
.jumbotron .divider-content a:focus,
.jumbotron .divider-content a:active { color: #F19A3E; }
.jumbotron .divider-content a.btn { border-color: #ffffff; color: #ffffff; margin-top: 1rem; }
.jumbotron .divider-content a.btn:hover { border-color: #F19A3E; }


@media (min-width: 990px) {
    .jumbotron.imagedivider-split.Right .divider-content { padding-right: 2rem; }
    .jumbotron.imagedivider-split.Left .divider-content { padding-left: 2rem; }
}
@media (max-width: 1024px) {
    .jumbotron.imagedivider-split .divider-content { padding-right: 0; }
}
@media (max-width: 991px) {
    .jumbotron.imagedivider-split { display: block; height: auto !important; padding-bottom: 0; padding-top: 2rem; }
    .jumbotron.imagedivider-split .divider-content { padding-bottom: 2rem; }
    .jumbotron.imagedivider-split .divider-image { position: relative; right: auto; top: auto; bottom: auto; width: 100%; height: 50vh; }
    .jumbotron .divider-content-boxed { margin-bottom: 2rem;}
}



/* 
    ------------------------------------
    --- Image containers / Image menu
    ------------------------------------
*/

div.image-content { background-position: center;  background-repeat: no-repeat; background-size: cover;  position: absolute; top: 0; left: 0;  right: 0; bottom: 0; transition: 0.5s;  z-index: -10;}

.thirdImageContainer { overflow: hidden; color: #ffffff; }

.thirdImageContainer a, 
.thirdImageContainer div.textPanel { display: block;  position: absolute; left: 0; top: 0;  bottom: 0; right: 0;  line-height: 2rem; color: #ffffff; color: #ffffff;
                                    font-size: 2rem; font-weight: 500; text-transform: uppercase; text-decoration: none; text-align: right; text-shadow: 2px 2px 15px rgba(0, 0, 0, 0.8);}
.thirdImageContainer a div.linkPanel { position: absolute; bottom: 5vh;  left: 0; top: auto; right: 30%; }
.thirdImageContainer a:link,
.thirdImageContainer a:visited,
.thirdImageContainer a:hover,
.thirdImageContainer a:active { color: #ffffff; }

.thirdImageContainer a span { padding-top: 10px;  padding-bottom: 10px; display: inline-block; }
.thirdImageContainer a span.Separator,
.thirdImageContainer div.textPanel span.Separator { height: 0.15rem; background-color: #ffffff;  display: block; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.8); padding: 0; }


@media (max-width: 1024px) {
    .thirdImageContainer a div.linkPanel {right: 10%;}
}
@media (max-width: 768px) {
    .thirdImageContainer { height: 40vh !important;}
}
@media (max-width: 576px) {
    .thirdImageContainer { height: 50vh !important; }
}
@media (max-height: 425px) and (orientation: landscape) {
    .thirdImageContainer { height: 100vh !important; }
    .thirdImageContainer a, .thirdImageContainer div.textPanel {padding-top: 60vh;}
}





/* 
    ------------------------------
    --- Search
    ------------------------------
*/

.searchContainer { padding: 0; margin: 0; margin-top: 2rem; }

.searchContainer input { outline: none; border-radius: 0; border: none; border-bottom: 2px solid #858382; font-size: 1.2rem; background-color: transparent; 
                         color: #333333; flex: 1; font-weight: 600; height: auto; padding-left: 0; padding-right: 0;}
.searchContainer input:focus { outline: none;  }
.searchContainer input::placeholder { color: #858382; }

.searchContainer form { display: flex; flex-direction: row; justify-content: space-between; }
.searchContainer button { width: 4rem; border: none; color: #333333; transition: 0.2s; font-size: 1.8rem; background-color: transparent; }
.searchContainer button:hover { color: #F19A3E; }




/* 
    ------------------------------
    --- Maps
    ------------------------------
*/

.mapteaser { margin-top: 50px; }

img.img-greyscale-hover { -webkit-filter: grayscale(100%); filter: grayscale(100%); transition: 1s;  margin-left: 3px; }
img.img-greyscale-hover:hover { -webkit-filter: grayscale(0%);  filter: grayscale(0%); }

/* Info Window */
.iconLeftToText { margin-right: 5px; }
.mapInfoWindow { padding-right: 10px; padding-left: 10px;  padding-top: 5px; padding-bottom: 5px;}
.gm-style-iw-t button:focus { outline: none;}



/* 
    ------------------------------
    --- Contact form
    ------------------------------
*/

span.RequiredMarker { color: #F19A3E; font-weight: 600; }

div[data-form] label { transition: 0.5s; line-height: normal; color: #333333; font-size: 1rem; font-weight: 600; }
div[data-form] input[type=text],
div[data-form] input[type=date],
div[data-form] input[type=number],
div[data-form] select,
div[data-form] textarea { color: #333333; height: auto; line-height: normal; border: 1px solid rgba(0,0,0,.125); border-radius: 0.25rem; background-color: #ffffff; color: #333333; }
div[data-form] select { padding-left: 0.6rem; padding-right: 0.6rem; }

div[data-form] input[type=text]:disabled,
div[data-form] input[type=date]:disabled,
div[data-form] input[type=number]:disabled,
div[data-form] textarea:disabled { color: #575555; }

div[data-form] .form-control:focus { outline-style:none !important; outline: none !important; box-shadow: none !important;  border-color: #F19A3E; }

div[data-form] input[type=text]::placeholder,
div[data-form] textarea::placeholder { color: #858382;}

div[data-form] .select2 .select2-selection--single { padding-left: .6rem !important; padding-top: .75rem !important; min-height: 18px !important;  padding-bottom: .15rem !important; }
div[data-form] .select2 .select2-selection { padding: .375rem .75rem; font-weight: 400; }
div[data-form] .select2.select2-container { border-color: #ced4da; margin-bottom: 0; }
div[data-form] .select2 .select2-selection .select2-selection__rendered{ padding-right: 0; padding-left: 0; min-height: 24px; line-height: normal; }
div[data-form] .select2.select2-container--default .select2-selection--single .select2-selection__arrow { height: 2.2rem; }
.select2-results__option { min-height: 30px;}

.custom-control.same-background-color .custom-control-input:checked~.custom-control-label::before { border-color: #b60303; background-color: #b60303;}


[data-form] { overflow: hidden; }
[data-form] div.email-regular { position: absolute; right: -100vw;}


/* 
    ------------------------------
    --- Large blockquote row
    ------------------------------
*/

div[data-type="QUOTE"] {padding-bottom: 3rem; padding-top: 3rem;}

div[data-type="QUOTE"] blockquote { border-left: 2px solid #969391; color: #969391;  font-size: 2rem; font-style: italic; font-weight: 400; line-height: 2.7rem;
                                    padding: 0; padding-left: 4rem; padding-right: 4rem; margin-left: 4rem; }
div[data-type="QUOTE"] blockquote p { color: #969391; font-size: 2rem; font-style: italic; font-weight: 400; line-height: 2.7rem; padding: 0; margin: 0; }

div[data-type="QUOTE"] figcaption { color: #72706f; font-size: 1.2rem; font-weight: 700; margin-bottom: 0; text-transform: uppercase; margin-top: 2rem; }
div[data-type="QUOTE"] cite { color: #969391; font-style: normal; font-size: 1rem; margin-bottom: 0; line-height: 0; margin-top: 0; margin-bottom: 3.5rem;}

div[data-type="QUOTE"] div.quote-caption { width: 50%; float: right; }
div[data-type="QUOTE"] div.quote-caption:after { display: block; clear: both; }


@media (max-width:768px) {
    div[data-type="QUOTE"] div.quote-caption { width: auto; float: none; text-align: center; margin-top: 4rem; }
}
@media (max-width:425px) {
    div[data-type="QUOTE"] { padding: 0; }
    div[data-type="QUOTE"] blockquote { border-left: none; padding-left: 0; padding-right: 0; margin-left: 2rem; margin-right: 2rem; line-height: 2rem; font-size: 1.8rem;}
    div[data-type="QUOTE"] figcaption { font-size: 1rem; }
    div[data-type="QUOTE"] cite { font-size: 1.2rem;}
}





/* 
    ------------------------------
    --- Sub/shop navigation
    ------------------------------
*/

div.subnavigation ul { display: block; list-style-type: none; margin: 0; padding: 0; margin-bottom: 1rem; }
div.subnavigation ul li { display: inline-block; margin-bottom: 0 !important; }
div.subnavigation ul li:before { display: none; }

div.subnavigation ul li a.btn { border-color: #1e035e; background-color: #1e035e; display: inline-block; padding: 0.1rem 0.5rem !important; margin-bottom: 5px !important; font-size: 0.8rem; }
div.subnavigation ul li a.btn:hover,
div.subnavigation ul li a.btn:focus,
div.subnavigation ul li a.btn:active { border-color: #57418b !important; background-color: #57418b !important; }
div.subnavigation ul li a.btn.active {  color: #ffffff;}




/* 
    ------------------------------
    --- Carousel
    ------------------------------
*/

.image-carousel-container { padding-top: 1rem; padding-bottom: 1rem; }
.image-carousel-container .owl-stage { display: flex; }

.image-carousel-container .owl-item .image-carousel-item { background-color: #ffffff; border-radius: 0.5rem; margin-right: 1rem; height: 100%; 
                                                           display: flex; flex-direction: column; justify-content: center;}
.image-carousel-container .owl-item .image-carousel-item p { padding: 1rem; text-align: center; margin-bottom: 0;}
.image-carousel-container .owl-item .image-carousel-item p a { display: block; text-align: center;}
.image-carousel-container .owl-item .image-carousel-item p a img { filter: grayscale(1); max-height: 70px !important; max-width: 100% !important; width: auto !important; transition: 0.2s;
                                                                    margin-left: auto; margin-right: auto; margin-bottom: 0;}
.image-carousel-container .owl-item .image-carousel-item p a img:hover {filter: grayscale(0); transform: scale(1.1); }