/************************** GENERAL *************************+*/
html, body {
    margin: 0;
    width: 100%;
    height: 100%;
}

body, #content {
    background-image: url('design/bg.gif');
    color: #d9bca8;
}

#content {
    padding: 0 1rem;
}

#content.content-wohnviertel,
#content.content-einkaufsstrasse {
    padding: 0;
}

td {
    text-align: left;
}

.tdcenter {
    text-align: center;
}

a {
    color: #c1952c;
    text-decoration: none;
    font-weight: 600
}

a:hover {
    color: #8d8d1f;
}

.radio {
    border: none;
}

.head, h1 {
    margin: 0px auto 1em auto;
    font-family: "Quattrocento", "Palatino Linotype", serif;
    font-size: 1.8rem;
    font-weight: normal;
    text-align: center;
}

h2 {
    font-weight: bold;
    width: 100%;
    font-size: 1rem;
    margin: 1.5rem auto 1.2rem;
}

.oben_leiste {
    background-image: url('design/leiste-oben.gif');
}

.oben_schatten {
    background: url('design/leiste-oben-schatten.gif') repeat-x;
}

.radio {
    border: none;
}

.apparieren {
    font-family: "Open Sans", Tahoma, Geneva, sans-serif;
    border: 1px solid #212529;
    width: 207px;
}

/* Clearfix */
.clear:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clear {
    display: inline-block;
}


/* Phials */
.phial {
    display: inline-block;
}

.phial .badge {
    display: inline-block;
    min-width: 10px;
    padding: 3px 7px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    background-color: #777;
    border-radius: 10px;
    position: relative;
    top: -80px;
    left: -20px;
}


/************************** LAYOUT ******************/
#head {
    position: relative;
    z-index: 2;
}

@media (max-width: 863px) {
    #head {
        background: #7f6140 url('design/mobile_header_bg.png') repeat-x;
    }

    #head #logo {
        background: url('design/mobile_header_logo.png') no-repeat;
    }

    #head #mobile-menu {
        background: rgba(220, 224, 207, 0.16);
        -webkit-box-shadow: 1px 1px 3px 0 rgba(255, 255, 255, .25), inset 1px 1px 10px 0 rgba(0, 0, 0, .4);
        -moz-box-shadow: 1px 1px 3px 0 rgba(255, 255, 255, .25), inset 1px 1px 10px 0 rgba(0, 0, 0, .4);
        box-shadow: 1px 1px 3px 0 rgba(255, 255, 255, .25), inset 1px 1px 10px 0 rgba(0, 0, 0, .4);
        color: #d6f6bc;
    }
}


#head #navigation {
    width: 897px;
}

#head #navigation li.fahrenderritter {
    width: 162px;
    height: 62px;
    background-image: url('design/navigation/fahrenderritter.png');
}

#head #navigation li.zaubern {
    width: 134px;
    height: 62px;
    background-image: url('design/navigation/zaubern.png');
    cursor: pointer;
}

#head #navigation li.einloggen {
    width: 150px;
    height: 62px;
    background-image: url('design/navigation/einloggen.png');
}

#head #navigation li.ausloggen {
    width: 150px;
    height: 62px;
    background-image: url('design/navigation/ausloggen.png');
}

#head #navigation li.online {
    width: 131px;
    height: 62px;
    background-image: url('design/navigation/online.png');
}

#head #navigation li.zuhause {
    width: 131px;
    height: 62px;
    background-image: url('design/navigation/zuhause.png');
}

#head #navigation li.dorfzentrum {
    width: 129px;
    height: 62px;
    background-image: url('design/navigation/dorfzentrum.png');
}

#menu {
    display: none;
}

.mobile-menu {
    font-family: Delius, cursive;
    font-size: 15px;
    font-weight: 600;
    background: url(../design/mobile/images/navigation_pergament_middle.png) repeat-y;
    list-style-type: none;
    padding: 1rem 0 0;
    margin: -1px auto;
    text-align: center;
}

.mobile-menu li {
    margin-bottom: 10px;
}

.mobile-menu li:last-child {
    margin-bottom: 0;
}

.mobile-menu li a {
    color: #418a0e;
    font-weight: 600;
}

.mobile-menu li a:hover {
    opacity: 0.6;
}

.mobile-menu li.secondary-link a {
    color: #9d8245;
}

@media (min-width: 864px) {
    #menu {
        display: none !important;
    }
}

/************************ CAFE ***************************/

.cafe_head, .cafe_body, .cafe_delete {
    padding: 5px;
    text-align: left;
}

.cafe_delete {
    text-align: right;
    margin: auto;
}

.cafe_head {
    margin: 20px auto 0 auto;
    font-weight: bold;
    -moz-border-radius: 5px 5px 0 0;
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
    background: #c682af;
}

.cafe_body {
    margin: 2px auto;
    -moz-border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    background: #d9a1c5;
    overflow-wrap: anywhere;
}

.cafe_info {
    padding: 10px 5px;
    margin: auto auto 10px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.etage-cafe .melden {
    font-size: 0.8rem;
    text-align: right;
}


.cafe p {
    margin: 1em auto;
    text-align: justify;
}


/************************** ZAUBERBOX *********************************/

#navigation_zauberbox {
    cursor: pointer;
}

.tdcenter {
    text-align: center;
}

/* Articles */
.article-item {
    cursor: pointer;
    display: block;
    color: #303030;
    width: 100%;
    height: 100%;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(213, 213, 213, 0.2);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.4);
    padding: 10px;
}

.item {
    display: flex;
    flex-direction: column;
    text-align: center;
    height: 100%;
}

.item .article-image {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 10px auto 0;
    position: relative;
    flex-grow: 1;
}

.item .article-image img {
    max-width: 100%;
    max-height: 150px;
    margin-bottom: 1rem;
}

/** Bootstrap **/
.alert-success {
    background-color: #a8cc8e !important;
    color: #217400 !important;
}

input[type=file].file-form-control {
    height: auto;
}

input[type=file].file-form-control::file-selector-button {
    display: block;
    width: 100%;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    background-color: #e3e3e3;
    border: 1px solid #c2c2c2;
    color: #757575 !important;
    margin-right: 1rem;
}

.alert-info {
    background-color: rgb(195 231 241 / 70%)
}