
@font-face {
    font-family: 'BickhamScriptPro-Regular';
    src: url('../fonts/BickhamScriptPro-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/BickhamScriptPro-Regular.otf')  format('opentype'),
    url('../fonts/BickhamScriptPro-Regular.woff') format('woff'),
    url('../fonts/BickhamScriptPro-Regular.ttf')  format('truetype'),
    url('../fonts/BickhamScriptPro-Regular.svg#BickhamScriptPro-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'TrajanPro-Regular';
    src: url('../fonts/TrajanPro-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/TrajanPro-Regular.otf')  format('opentype'),
    url('../fonts/TrajanPro-Regular.woff') format('woff'),
    url('../fonts/TrajanPro-Regular.ttf')  format('truetype'),
    url('../fonts/TrajanPro-Regular.svg#TrajanPro-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ElegantGaramondBT-Roman';
    src: url('../fonts/ElegantGaramondBT-Roman.eot?#iefix') format('embedded-opentype'),
    url('../fonts/ElegantGaramondBT-Roman.woff') format('woff'),
    url('../fonts/ElegantGaramondBT-Roman.ttf')  format('truetype'),
    url('../fonts/ElegantGaramondBT-Roman.svg#ElegantGaramondBT-Roman') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*@font-face {
    font-family: 'OptimusPrinceps-Regular';
    src: url('../fonts/OptimusPrinceps-webfont.eot');
    src: url('../fonts/OptimusPrinceps-webfont.eot?#iefix') format('embedded-opentype'),
    url('../fonts/OptimusPrinceps-webfont.woff2') format('woff2'),
    url('../fonts/OptimusPrinceps-webfont.woff') format('woff'),
    url('../fonts/OptimusPrinceps-webfont.ttf') format('truetype'),
    url('../fonts/OptimusPrinceps-webfont.svg#optimusprincepsregular') format('svg');
    font-weight: normal;
    font-style: normal;
}*/

html {
    overflow: hidden;
}

html, body {
    background: #000;
    /*position: relative;*/
}
.h3, h3 {
    /*font-size: 1.7em;*/
    font-size: 28px; /* 1.7em of 14px is 28px */
}

.ellipsis {
    text-overflow: ellipsis;

    /* Required for text-overflow to do anything */
    white-space: nowrap;
    overflow: hidden;
}

.btn-read-more { display: none; }
.mobile-only { display: none; }

/* do not show before calculating correct width */
img.image-autosize-horizontal { display: none; }

.dark-border { border: 3px solid rgba(0,0,0,0.5); }

/* page backgrounds  */
.page-background { display:none; position: fixed; top: 0; left: 0; width: 100%; z-index: 1; }
.page-background img { width: 100%; }
.page-background.cover { height: 100%; background: url(../img/page_background.jpg) 0 0 no-repeat; background-size: cover; }
.page-background.cover img { display: none; }

/* -- */
.logo { position: absolute; right: 5%; top: 5%; z-index: 10; }
.center { position: relative; top: 50%; 	width: 600px; 	text-align: center; 	margin: 0 auto; }
.pr0 { padding-right: 0; }
.mt0 { margin-top: 0; }
.mb0 { margin-bottom: 0; }

html.loaded .hide-when-loading { display: block; }
.hide-when-loading { display: none; }

.quote {
    color: white;
    font-size: 1.6em;
    height: 60px;
    z-index: 10;
    position: absolute;
    left: 50%;
    top: 44%;
    margin-left: -325px;
    margin-top: -30px;
}

.panel .quote {
    position: relative;
    display: inline-block;
    /*max-width: 90%;*/
    float: left;
    margin: 10px 0;
    left: inherit;
    top: inherit;
}

.quote h3 { font-family: 'Tangerine', 'BickhamScriptPro-Regular'; /*font-size: 2.5em;*/ font-size: 34px; }
.quote-secondary h3 { color: #E9B548;  }
/*.quote-secondary h3 { color: #76641A; text-shadow: -1px 1px #E9B548, -1px 1px 1px #E9B548; }*/

.quote-author { font-size: 11px; float: right; font-family: 'TrajanPro-Regular'; }


.scroll-hint {
    position: absolute;
    bottom: 10px;
    left: 50%;
    margin-left: -24px;
}

.panel {
    background-color: rgba(0,0,0,0.7);
    font-family: 'ElegantGaramondBT-Roman';
    z-index: 1;
}

/* TOP MENU (form first page) */
#menu-toggle {display: none; }

.top-menu {
    display:none;
    height: 76px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 2;
}

#top-menu-navigation-wrapper { width: 100%; display: inline-block; background-color: rgba(0,0,0,0.9); }
#top-menu-navigation-wrapper ul { list-style: none; margin: 0; padding: 0 10px; float: right;}
#top-menu-navigation-wrapper ul li { float: left; padding: 20px 0; margin-right: 20px;}
#top-menu-navigation-wrapper ul li a { font-size: 20px; text-transform: uppercase;}
#top-menu-navigation-wrapper a { float: left; padding: 5px; padding-bottom: 2px;}
#top-menu-navigation-wrapper a.brand { padding: 5px 10px; }
#top-menu-navigation-wrapper a.current { border-bottom: 1px solid white; }

#top-menu-navigation-wrapper a:focus,
#top-menu-navigation-wrapper a:hover { color: white; text-decoration: none; }

/* SUB MENU */
#top-menu-navigation-wrapper ul { display:block; list-style:none; }
#top-menu-navigation-wrapper li { display:block; position:relative; float:left; }
/* ------------- Submenu --------- */
#top-menu-navigation-wrapper ul li ul.submenu {
    background-color: rgba(0,0,0,0.9);
    display:none;
    left:0;
    position:absolute;
    top:75px;
    z-index:10000;
    width: 210px;
}
#top-menu-navigation-wrapper ul li ul.submenu li { margin: 10px 0; padding: 0; min-width: 120px;}
#top-menu-navigation-wrapper ul li ul.submenu li:last-child { margin-bottom: 20px; }
#top-menu-navigation-wrapper ul li ul.submenu li a { font-size: 14px; }
#top-menu-navigation-wrapper ul li ul.submenu li a:hover { font-weight: bold; }


/* Footer */
.footer-menu {
    display: none;
    position: fixed;
    bottom: 0;
    width: 101%;
    margin: 0;
    z-index: 2;
    color: white;
    background-color: rgba(0,0,0,0.97);
}
.footer-menu .social { padding: 10px 20px; }
.footer-menu .social a.email { font-size: 25px; }
.footer-menu .organization-footer { font-size: 0.8em; height: 60px; padding-top: 7px; }
.footer-menu .guestbook { padding: 20px 30px 0 0; }
.footer-menu .guestbook img { margin-left: 10px; }
.footer-menu .guestbook a { text-decoration: none; color: white; }
.footer-menu .guestbook a:hover { text-decoration: underline; }


section .panel {
    background-color: rgba(0,0,0,0.7);
    position: relative;
    padding: 20px 40px;
    /*padding: 20px 0 20px 40px;*/
    color: white;
    /*font-size: 1.2em;*/
    font-size: 17px;
    margin-top: 90px;
    margin-bottom: 0px;
}

section .content-panel { padding-top: 50px; }
section .content-panel .panel { margin-top: 80px; }


.scrollable-text-container { overflow-y: auto; overflow-x: hidden;  }

/* SUB PAGES */
.sub-pages ul { padding: 0; margin: 0;}
.sub-pages ul li { list-style: none; margin: 0; }
.sub-pages ul li a { display: inline-block; color: white; text-decoration: none;  margin-top: 30px; padding: 0px 5px; white-space: nowrap;}
.sub-pages ul li a.current {color: white; font-weight:bold; border-bottom: 1px solid white;}
.sub-pages ul li a:hover { background-color: rgba(255,255,255,.7);  color: black; font-weight:bold; text-decoration: none; }
.sub-pages ul li:first-child a { margin-top: 0px; }

.sub-pages-container { /* height set via js */ overflow-y: auto; overflow-x: hidden; }
.sub-pages-container > ul { padding: 0; margin: 0; display: table; width: 100%; }
.sub-pages-container > ul > li { display: table-cell; vertical-align: middle; }
.sub-pages-container .text-container { list-style: none; width: 100%; display: table-cell; vertical-align: middle;}

/*.sub-pages > ul { padding: 0; margin: 0; display: table; }*/
/*.sub-pages > ul > li { list-style: none; width: 100%; display: table-column; vertical-align: middle;}*/


/* GALLERY */
/*section#galleries .sub-pages ul li a { margin-top: 5px; }*/
/*section#galleries .has-gallery { overflow: hidden; }
section#galleries .has-gallery .blueimp-gallery-carousel {
    margin: 0;
    padding-bottom: 53.25%; *//* override default blueimp css *//*
}*/

section#galleries .sub-pages-container ul li.text-container a { float:left; margin: 0; padding: 1px; }
section#galleries .sub-pages-container ul li.text-container a:nth-child(4n +1) {
    clear: both;
}


/* loading layer */
div#loading-layer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black;
    z-index: 1000000;
}
/*div#loading-layer .logo{
    top: 10%;
    left: 50%;
    margin-left: -185px;
}*/
div#loading-layer .spinner {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 4em;
    line-height: 1;
    width: 1em;
    height: 1em;
    margin-left: -0.5em;
    margin-top: -0.5em;
    opacity: 0.75;
    color: white;
}
div#loading-layer .spinner:before {
    content: "\e01e";
    font-family: VideoJS;
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    text-align: center;
    text-shadow: 0em 0em 0.1em #000;
}

div#loading-layer .spinner.on {
    display: block;
    /* only animate when showing because it can be processor heavy */
    /* animation */
    -webkit-animation: spin 1.5s infinite linear;
    -moz-animation: spin 1.5s infinite linear;
    -o-animation: spin 1.5s infinite linear;
    animation: spin 1.5s infinite linear;
}

@-moz-keyframes spin {
    0% {
        -moz-transform: rotate(0deg);
    }
    100% {
        -moz-transform: rotate(359deg);
    }
}
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
    }
}
@-o-keyframes spin {
    0% {
        -o-transform: rotate(0deg);
    }
    100% {
        -o-transform: rotate(359deg);
    }
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(359deg);
    }
}

/* progress bar was missing :) */
.vjs-default-skin.vjs-controls-disabled .vjs-control-bar {display: block; height: 0;background: none;}
.vjs-default-skin.vjs-controls-disabled .vjs-control-bar {background: none;}
.vjs-default-skin .vjs-control-bar{display: block;visibility: visible !important; opacity: 1 !important; position: absolute;top: 3px; bottom: inherit; }
.vjs-default-skin .vjs-play-progress { background-color: white; transition: 50ms; }
.vjs-default-skin .vjs-progress-holder .vjs-load-progress,
.vjs-default-skin .vjs-progress-holder .vjs-load-progress div {display: none;}
.vjs-default-skin .vjs-seek-handle {display: none;}
.vjs-default-skin .vjs-slider { background: none; }
.vjs-default-skin .vjs-control { display: none; }
.vjs-default-skin .vjs-progress-control { display: block; }
.vjs-default-skin .vjs-time-divider { display: none; }
