* {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

html {
    color: #444;
    font-family: 'Helvetica Neue', Calibri, sans-serif;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.3;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: #08c;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
address {
    font-style: normal;
}

p + p {
    margin-top: .5em;
}

h1, h2, h3, h4, h5, h6 {
    margin-bottom: .5em;
}
h1 {
    font-size: 2em;
    font-weight: 200;
}
h2 {
    font-size: 1.5em;
    font-weight: 200;
}
h3 {
    font-size: 1.4em;
    font-weight: 200;
}
h4 {
    font-size: 1.3em;
}
h5 {
    font-size: 1.2em;
}
h6 {
    font-size: 1.1em;
}

body#default {
    background: #e2f1f5 url(img/background@2x.png);
    background-size: 28px 28px;
}
body#default > article {
    position: relative;
    background-color: #fafafa;
    border: 1px solid #dcdcdc;
    width: 720px;
    margin: 32px auto 5px;
    padding: 12px 16px;
    border-radius: 4px;
}
body#default > article::before,
body#default > article::after {
    content: '';
    position: absolute;
    bottom: 12px;
    width: 40%;
    height: 10px;
    background: transparent;
    box-shadow: 0 6px 12px rgba(0,0,0,.25);
    z-index: -1;
}
body#default > article::before {
    left: 12px;
    transform: skew(-5deg) rotate(-5deg);
    -webkit-transform: skew(-5deg) rotate(-5deg);
}
body#default > article::after {
    right: 12px;
    transform: skew(5deg) rotate(5deg);
    -webkit-transform: skew(5deg) rotate(5deg);
}
body#default > header {
    padding-top: 60px;
    background: #404040 url(img/header@2x.png) left top repeat;
    background-size: 32px 32px;
    border-bottom: 1px solid #dadada;
    box-shadow: rgba(0, 0, 0, .04) 0 0 1px 0;
    -webkit-user-select: none;
}
body#default > footer {
    margin: auto;
    width: 720px;
    height: 60px;
    line-height: 25px;
    color: #aaa;
    font-size: .8em;
    text-align: center;
    -webkit-user-select: none;
}
body#default > footer a {
    color: #686c6e;
}
body#default > footer > :first-child {
    position: fixed;
    line-height: 1em;
    font-size: .8em;
    text-decoration: underline;
    left: 5px;
    bottom: 4px;
}
body#default > footer > :last-child {
    position: fixed;
    line-height: 1em;
    right: 5px;
    bottom: 4px;
    text-decoration: none;
}
body#default > article a {
    font-style: italic;
}

body#minimal > header,
body#minimal > footer {
    display: none;
}




#menu {
    border-bottom: 5px solid #fafafa;
    box-shadow: rgba(0, 0, 0, .03) 0 -2px 1px 0 inset;
}
#menu > ul {
    margin: auto;
    width: 720px;
    height: 34px;
    list-style-type: none;
}
#menu > ul > li {
    float: left;
    position: relative;
    margin: 0 2px;
    font-weight: bold;
    color: #fff;
    text-shadow: rgba(0, 0, 0, .3) 0 -1px 0;
    border-radius: 3px 3px 0 0;
    background-color: #759aaf;
    background-image: linear-gradient(top, #b1d0dd, #89b8cc);
    background-image: -webkit-linear-gradient(top, #b1d0dd, #89b8cc);
    background-image: -moz-linear-gradient(top, #b1d0dd, #89b8cc);
    background-image: -o-linear-gradient(top, #b1d0dd, #89b8cc);
    background-image: -ms-linear-gradient(top, #b1d0dd, #89b8cc);
    box-shadow: rgba(255, 255, 255, .3) 0 1px 0 0 inset;
    height: 34px;
}
#menu > ul > li:hover {
    background-color: #85a6b8;
    background-image: linear-gradient(top, #afc5d1, #85a6b8);
    background-image: -webkit-linear-gradient(top, #afc5d1, #85a6b8);
    background-image: -moz-linear-gradient(top, #afc5d1, #85a6b8);
    background-image: -o-linear-gradient(top, #afc5d1, #85a6b8);
    background-image: -ms-linear-gradient(top, #afc5d1, #85a6b8);
}
#menu > ul > li.selected,
#menu > ul > li:active,
#menu > ul > li.dropdown:hover {
    color: #404040;
    background: #fafafa;
    text-shadow: none;
    box-shadow: none;
    height: 39px;
}
#menu > ul > li > a,
#menu > ul > li > span {
    display: block;
    height: 34px;
    line-height: 34px;
    padding: 0 12px;
    color: inherit;
    text-decoration: inherit;
}
#menu > ul > li > .fa-fw {
    width: 1em;
}
#menu > ul > li > ul {
    display: none;
    position: absolute;
    top: 39px;
    left: -1px;
    background: #fafafa;
    border: 1px solid #dadada;
    border-width: 0 1px 1px;
    border-radius: 0 0 3px 3px;
    box-shadow: rgba(0,0,0,.2) 0 5px 8px 0;
    z-index: 50;
}
#menu > ul > li > ul::before {
    display: block;
    content: '';
    background: #fafafa;
    position: absolute;
    top: -5px;
    left: -10px;
    width: calc(100% + 20px);
    height: 5px;
    border-bottom: 1px solid #dadada;
}
#menu > ul > li > ul::after {
    display: block;
    content: '';
    background: #fafafa;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
}
#menu > ul > li.dropdown:hover > ul {
    display: block;
}
#menu > ul > li > ul > li {
    display: block;
    white-space: nowrap;
    font-weight: normal;
    color: #555;
}
#menu > ul > li > ul > li:hover {
    color: #222;
}
#menu > ul > li > ul > li > a {
    display: block;
    padding: 8px 12px;
    color: inherit;
}
#menu > ul > li > ul > li:last-child > a {
    padding-bottom: 10px;
}







.journeys {
    margin: 32px -6px 0;
}
.journeys p {
    margin: 0 6px;
}
.journeys figure + p {
    margin-top: 10px;
}
.journeys figure {
    position: relative;
    width: 354px;
    height: 236px;
    margin: 6px;
    display: inline-block;
}
.journeys figure img {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 4px;
    box-shadow: rgba(0,0,0,.2) 0 0 3px;
}
.journeys figure figcaption {
    position: absolute;
    background: red;
    left: 0;
    bottom: 10%;
    padding: 2px 10px;
    line-height: 25px;
    background: rgba(255,255,255,.95);
    box-shadow: 1px 1px 1px rgba(0,0,0,.2);
    transition: all .3s;
}
.journeys figure:not(:hover) figcaption {
    background: rgba(255,255,255,.8);
    color: #444;
}
.journeys figure figcaption a {
    color: inherit;
}
.journeys:after {
    display: block;
    clear: both;
    content: '';
}
.journeys figure.new:after {
    content: '';
    width: 64px;
    height: 64px;
    background-image: url(img/new@2x.png);
    background-size: 100% 100%;
    position: absolute;
    top: -16px;
    right: -16px;
    pointer-events: none;
}



.page > footer {
    text-align: center;
    margin-top: 32px;
}
.counter {
    display: inline-block;
    background-color: white;
    margin-top: 2px;
    padding: 4px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 2px 2px rgba(0,0,0,.1);
}
.counter span {
    display: inline-block;
    border: 1px solid #000;
    border-radius: 2px;
    background-color: #444;
    color: #fff;
    padding: 2px 4px;
}



.entry header,
.journey header {

}
.entry header img {
    display: block;
    width: 720px;
    height: 360px;
    margin: auto;
    border-radius: 4px;
    box-shadow: rgba(0,0,0,.2) 0 0 3px;
    margin-bottom: 23px;
}
.entry header h2 {
    font-variant: small-caps;
    font-style: italic;
}
.entry header time {
    display: block;
    font-size: .9em;
    margin: 1.6em 0 0 2px;
    font-weight: 200;
    font-style: italic;
}
.entry footer {

}
.entry .stats {
    border: 1px solid #888;
    border-width: 1px 0;
    padding: 16px 10px;
    position: relative;
    margin-top: 60px;
}
.entry .stats p {
    margin: 0 80px 0 0;
}
.rating {
    width: 90px;
    height: 16px;
    vertical-align: -10%;
    margin-left: 5px;
}
.entry .stats img.weather {
    width: 72px;
    height: 72px;
    position: absolute;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
}

.entry nav,
.hotel nav {
    margin-top: 32px;
    text-align: center;
    position: relative;
    height: 20px;
    line-height: 20px;
}
.entry nav a,
.hotel nav a {
    display: inline-block;
    text-decoration: none;
    font-style: normal !important;
}
.entry nav a.prev,
.hotel nav a.prev {
    position: absolute;
    left: 0;
    top: 0;
}
.entry nav a.next,
.hotel nav a.next {
    position: absolute;
    right: 0;
    top: 0;
}
.entry nav span,
.hotel nav span {
    font-size: .85em;
}



.guestbook header a {
    display: block;
    margin-top: 10px;
}





.journey header > img {
    display: block;
    width: 720px;
    height: 360px;
    margin: auto;
    border-radius: 4px;
    box-shadow: rgba(0,0,0,.2) 0 0 3px;
    margin-bottom: 23px;
}
.journey .snapshots {
    overflow: hidden;
    margin: -5px -16px 0;
    padding: 5px 0;
    height: 310px;
    position: relative;
    -webkit-user-select: none;
}
.journey .snapshots .wrapper {
    white-space: nowrap;
    font-size: 0;
    padding: 0 67px;
    position: absolute;
}
.journey .snapshots .wrapper a {
    display: inline-block;
    width: 620px;
    height: 310px;
}
.journey .snapshots .wrapper a img {
    width: 100%;
    height: 100%;
    border-radius: 3px;
    box-shadow: 0 0 3px rgba(0,0,0,.3);
    filter: grayscale(.8);
    -webkit-filter: grayscale(.8);
    -moz-filter: grayscale(.8);
    -o-filter: grayscale(.8);
    -ms-filter: grayscale(.8);
    transform: translateZ(0) scale(.9, .9) rotate(4deg) translate(20px, -20px);
    -webkit-transform: translateZ(0) scale(.9, .9) rotate(4deg) translate(20px, -20px);
    -moz-transform: translateZ(0) scale(.9, .9) rotate(4deg) translate(20px, -20px);
    -o-transform: translateZ(0) scale(.9, .9) rotate(4deg) translate(20px, -20px);
    -ms-transform: translateZ(0) scale(.9, .9) rotate(4deg) translate(20px, -20px);
}
.journey .snapshots .wrapper a.active + a img {
    transform: translateZ(0) scale(.9, .9) rotate(-4deg) translate(-20px, -20px);
    -webkit-transform: translateZ(0) scale(.9, .9) rotate(-4deg) translate(-20px, -20px);
    -moz-transform: translateZ(0) scale(.9, .9) rotate(-4deg) translate(-20px, -20px);
    -o-transform: translateZ(0) scale(.9, .9) rotate(-4deg) translate(-20px, -20px);
    -ms-transform: translateZ(0) scale(.9, .9) rotate(-4deg) translate(-20px, -20px);
}
.journey .snapshots .wrapper a.active img {
    filter: grayscale(0);
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -o-filter: grayscale(0);
    -ms-filter: grayscale(0);
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -o-transform: translateZ(0);
    -ms-transform: translateZ(0);
}
.journey .snapshots.setup .wrapper,
.journey .snapshots.setup .wrapper a img {
    transition: all .5s;
}

.journey .snapshots .wrapper a + a {
    margin-left: 20px;
}




.journey .introduction {
    margin-top: 30px;
}
.journey .entries {
    margin: 12px 0;
    padding: 0 36px;
}
.journey ol.entries {
    counter-reset: day;
    list-style-type: disc;
}
.journey ol.entries li:before {
    counter-increment: day;
    content: "Tag " counter(day) ":";
    display: inline-block;
    width: 58px;
    position: relative;
    left: -5px;
}
.journey .map-link {
    display: block;
    margin: 30px auto 10px;
    width: 620px;
}
.journey .map {
    margin: 10px auto 12px;
    width: 620px;
    display: block;
    border: 1px solid #aaa;
    box-shadow: 0 1px 3px rgba(0,0,0,.3);
    overflow: hidden;
}





.group {
    margin: 12px 0;
}
.group::after {
    content: '';
    display: block;
    clear: both;
}

hr {
    margin: 32px 15%;
    height: 1px;
    background: #888;
}

.group figure {
    display: block;
}
.group figure img {
    display: block;
    border-radius: 4px;
    box-shadow: rgba(0,0,0,.2) 0 0 3px;
    opacity: 0;
    transition: opacity .5s;
    height: 100%;
    width: 100%;
    margin: auto;
}
.group figure iframe {
    width: 100%;
    height: 100%;
}
.group figure.visible img {
    opacity: 1;
}

/* 3x 2:3 portraits */
.group.group-3-1 figure {
    width: 232px;
    height: 348px;
    margin-left: 12px;
    float: left;
}
.group.group-3-1 figure:first-child {
    margin-left: 0;
}
.group.group-3-5 figure {
    width: 232px;
    height: 232px;
    margin-left: 12px;
    float: left;
}
.group.group-3-5 figure:first-child {
    margin-left: 0;
}

/* 2x 3:2 landscapes */
.group.group-2-1 figure {
    width: 354px;
    height: 236px;
}
.group.group-2-2 figure {
    width: 354px;
    height: 531px;
}
.group.group-2-1 figure:first-child,
.group.group-2-2 figure:first-child {
    float: left;
}
.group.group-2-1 figure:last-child,
.group.group-2-2 figure:last-child {
    float: right;
}

/* 1x panorama */
.group.group-1-1 figure {
    width: 720px;
    height: auto;
}

/* 1x centered */
.group.group-1-2 figure {
    width: auto;
    height: 236px;
    margin: auto;
}
.group.group-1-3 figure {
    width: 720px;
    height: 480px;
}

/* 1x small landscape centered */
.group.group-1-4 figure {
    width: 354px;
    height: 236px;
    margin: auto;
}

/* 1x small portrait centered */
.group.group-1-5 figure {
    width: 236px;
    height: 354px;
    margin: auto;
}

.group.group-4-1 figure:nth-child(1),
.group.group-4-1 figure:nth-child(3),
.group.group-4-2 figure:nth-child(2),
.group.group-4-2 figure:nth-child(3) {
    width: 354px;
    height: 531px;
}
.group.group-4-1 figure:nth-child(2),
.group.group-4-1 figure:nth-child(4),
.group.group-4-2 figure:nth-child(1),
.group.group-4-2 figure:nth-child(4) {
    width: 354px;
    height: 236px;
}
.group.group-4-1 figure:nth-child(1),
.group.group-4-1 figure:nth-child(4),
.group.group-4-2 figure:nth-child(1),
.group.group-4-2 figure:nth-child(3) {
    float: left;
}
.group.group-4-1 figure:nth-child(2),
.group.group-4-1 figure:nth-child(3),
.group.group-4-2 figure:nth-child(2),
.group.group-4-2 figure:nth-child(4) {
    float: right;
}
.group.group-4-1 figure:nth-child(3),
.group.group-4-1 figure:nth-child(4),
.group.group-4-2 figure:nth-child(3),
.group.group-4-2 figure:nth-child(4) {
    margin-top: 12px;
}

/* port - land - port */
.group.group-3-2 figure {
    float: left;
    margin-left: 12px;
}
.group.group-3-2 figure:nth-child(1),
.group.group-3-2 figure:nth-child(3) {
    width: 164px;
    height: 246px;
}
.group.group-3-2 figure:nth-child(2) {
    width: 368px;
    height: 246px;
}
.group.group-3-2 figure:first-child {
    margin-left: 0;
}



.group.group-3-3 figure:nth-child(2),
.group.group-3-3 figure:nth-child(3),
.group.group-3-4 figure:nth-child(1),
.group.group-3-4 figure:nth-child(3) {
    width: 371px;
    height: 247px;
}
.group.group-3-3 figure:nth-child(1),
.group.group-3-4 figure:nth-child(2){
    width: 337px;
    height: 506px;
}
.group.group-3-3 figure:nth-child(1),
.group.group-3-4 figure:nth-child(1),
.group.group-3-4 figure:nth-child(3) {
    float: left;
}
.group.group-3-3 figure:nth-child(2),
.group.group-3-3 figure:nth-child(3),
.group.group-3-4 figure:nth-child(2) {
    float: right;
}
.group.group-3-3 figure:nth-child(3),
.group.group-3-4 figure:nth-child(3) {
    margin-top: 12px;
}

.group.group-text {
    margin: 16px 0;
}

.group.group-mixed {
    position: relative;
}
.group.group-mixed div {
    width: 354px;
}
.group.group-mixed figure:not(.smiley) {
    width: 354px;
    height: 236px;
}
.group.group-mixed p + p {
    margin-top: 10px;
}
.group.group-mixed > :first-child {
    float: left;
}
.group.group-mixed > :last-child {
    float: right;
}






#overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: -100%;
    left: 0;
    display: block;
    visibility: hidden;
    transition: visibility 0 linear .75s, top .75s ease-in-out;
}
#overlay.visible {
    top: 0;
    visibility: visible;
    transition-delay: 0;
}
#overlay::before {
    content: '';
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0;
    transition: opacity .75s ease-in-out;
}
#overlay.visible::before {
    opacity: .9;
}
#overlay img {
    display: none;
    border-radius: 5px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    height: auto;
}




.transform #overlay img {
    left: -50%;
    right: auto;
    display: block;
    max-width: 20%;
    max-height: 50%;
    -webkit-filter: grayscale(.8);
    -webkit-transform: translate(-50%, 0);
    transition: 0s ease-in-out;
    transition-property: left, max-width, max-height, -webkit-filter;
}
.transform #overlay.visible img {
    transition-duration: .4s;
}
.transform #overlay img.previous {
    left: 0%;
}
.transform #overlay img.current {
    left: 50%;
    -webkit-filter: grayscale(0);
}
.transform #overlay img.next {
    left: 100%;
}
.transform #overlay img.next ~ img {
    left: 150%;
}

#overlay img.current {
    display: block;
    max-width: 70%;
    max-height: 90%;
}








#guestbook {
    font-size: 13px;
}
#guestbook .comment {
    margin: 20px 0;
    padding: 11px 15px 5px 36px;
    line-height: 21px;
    background-color: #fdfbe9;
    background-image: url(img/vertical@2x.png), url(img/horizontal@2x.png);
    background-position: 24px 0, 0 9px;
    background-repeat: repeat-y, repeat;
    background-size: 5px 1px, 1px 21px;
    border: 1px solid #eae7d5;
    border-radius: 2px;
    position: relative;
    box-shadow: rgba(0,0,0,.05) 0 1px 3px 0;
    color: #766958;
}

#guestbook .comment-meta {
    margin-top: 20px;
}
#guestbook .comment-author {
    font-weight: bold;
/*    font-size: 1.1em;*/
}
#guestbook .comment-author a {
    color: inherit;
    font-style: inherit;
    text-decoration: none;
}
#guestbook .comment-author a:hover,
#guestbook .comment-author a:active {
    text-decoration: underline;
}
#guestbook .comment-date {
    display: block;
    color: #ae9e8a;
/*    font-size: .9em;*/
}
#guestbook .comment.not-yet-approved .comment-date:after {
    content: '(noch nicht freigegeben)';
    margin-left: 5px;
    font-style: italic;
}
#guestbook .comment:before {
    content: '';
    position: absolute;
    left: -11px;
    top: -12px;
    background-image: url(img/tape@2x.png);
    background-size: 63px 32px;
    background-position: 0 0;
    width: 32px;
    height: 28px;
}
#guestbook .comment:after {
    content: '';
    position: absolute;
    right: -10px;
    top: -10px;
    background-image: url(img/tape@2x.png);
    background-size: 63px 32px;
    background-position: 32px 0;
    width: 31px;
    height: 32px;
}
#guestbook .comment p + p {
    margin-top: 21px;
}
#guestbook .comment a {
    font-style: normal;
}



.hotel dl {
    margin: 30px 0;
}
.hotel dl dt {
    float: left;
    clear: left;
    width: 105px;
}
.hotel dl dd {
    margin-left: 105px;
}
.hotel .rating {
    margin-left: 0;
}
.hotel h2 {
    margin: 30px 0 10px;
    font-style: italic;
}
.hotel h2 + dl {
    margin-top: 10px;
}

.hotel h3 {
    margin: 20px 0 0;
    font-style: italic;
}
.hotel h3 + ul {
    margin: 0;
    padding: 0 25px;
}





body#minimal {
    background-color: #f2f2f2;
}
body#minimal > article {
    width: 400px;
    margin: auto;
    background: #fff;
    margin: 100px auto;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(0,0,0,.25);
    padding: 10px;
    transition: box-shadow .3s;
}
body#minimal > article:hover,
body#minimal > article:active {
    box-shadow: 0 1px 2px rgba(0,0,0,.4);
}




form {
    border-radius: 4px;
    font-size: 14px;
}
form.standalone fieldset {
    border: 1px solid transparent;
    margin: -1px;
}
form input[type='submit'],
form input[type='button'] {
    display: inline-block;
    padding: 0 .9em;
    line-height: 2.3em;
    height: 2.3em;
    border-radius: 4px;
    font: bold 13px 'Helvetica Neue', Calibri, sans-serif;
    cursor: pointer;
    transition: background .3s, border .3s, box-shadow .3s, opacity .3s;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
form input[type='submit'] {
    color: #fff;
    border: 0;
}
form input[type='submit']:hover {
    background-color: #3a7dec;
    box-shadow: inset 0 -2px 0 rgba(31,89,178,1), inset 0 0 2px rgba(0,0,0,0);
}
form input[type='submit']:active,
form input[type='submit']:focus {
    background-color: #2f69c2;
    box-shadow: inset 0 -2px 0 rgba(31,89,178,0), inset 0 0 2px rgba(0,0,0,.5);
    outline: 0;
}
form input[type='submit'],
form input[type='submit'][disabled] {
    background-color: #4285f4;
    box-shadow: inset 0 -2px 0 #2f69c2, inset 0 0 2px rgba(0,0,0,0);
}
form input[type='submit'][disabled] {
    opacity: .5;
    cursor: default;
}
form input[type='button'] {
    color: inherit;
}
form input[type='button']:hover {
    border-color: #b8b8b8;
    box-shadow: 0 1px 0 rgba(226,226,226,1), inset 0 0 1px -1px rgba(204,204,204,0);
}
form input[type='button']:active,
form input[type='button']:focus {
    border-color: #b8b8b8;
    background-color: #e5e5e5;
    box-shadow: 0 1px 0 rgba(226,226,226,0), inset 0 2px 1px -1px rgba(204,204,204,1);
    outline: 0;
}
form input[type='button'],
form input[type='button'][disabled] {
    background-color: #fbfbfb;
    border: 1px solid #d9d9d9;
    box-shadow: 0 1px 0 #f2f2f2, inset 0 0 1px -1px rgba(204,204,204,0);
}
form input[type='button'][disabled] {
    opacity: .5;
    cursor: default;
}



fieldset {
/*    border: 1px solid transparent;*/
/*    margin: -1px;*/
    position: relative;
}
fieldset legend {
    margin: 0 15px;
    padding: 5px 0;
    font-weight: bold;
    font-size: 1.2em;
    text-shadow: 1px 1px 0 #eee;
}
fieldset dl {
    margin: 10px 0;
}
fieldset dl dt,
fieldset dl dd {
    min-height: 26px;
}
fieldset dl dt {
    line-height: 26px;
}
fieldset dl dt:not(:first-of-type),
fieldset dl dd:not(:first-of-type) {
    margin-top: 5px;
}
fieldset dl dt {
    float: left;
    clear: left;
    width: 90px;
    text-align: right;
}
fieldset dl dd {
    margin-left: 90px;
}
fieldset dl dt label {
    padding-right: 12px;
    line-height: inherit;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
fieldset dl input[type='text'],
fieldset dl input[type='password'],
fieldset dl textarea {
    font: inherit;
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    outline: 0;
    padding: 3px 7px;
    background-color: #fbfbfb;
    border: 1px solid #d9d9d9;
    border-radius: 4px;
    transition: border-color .2s;
    color: inherit;
    -webkit-font-smoothing: inherit;
    -moz-osx-font-smoothing: inherit;
}
fieldset dl input[type='text']:hover,
fieldset dl input[type='password']:hover,
fieldset dl textarea:hover {
    border-color: #b3b3b3;
}
fieldset dl input[type='text']:focus,
fieldset dl input[type='password']:focus,
fieldset dl textarea:focus {
    border-color: #4285f4;
}
fieldset dl textarea {
    min-height: 240px;
    resize: vertical;
}



fieldset aside {
    padding: 8px 10px;
    border-radius: 3px;
    border: 1px solid #ddd;
    margin: 10px 0;
    line-height: 1.2em;
    width: 100%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
}
fieldset aside.warning {
    background-color: #ffc;
    border-color: #ddd #ddd #ccc;
}
fieldset aside.error {
    background-color: #fcc;
    border-color: #caa #caa #b99;
}
fieldset aside p + p {
    margin-top: .5em;
}
fieldset aside ul {
    margin-top: .5em;
    padding: 0 25px;
    list-style-type: disc;
}
fieldset aside ul li + li {
    margin-top: .5em;
}

fieldset abbr {
    cursor: help;
    border-bottom: 1px dashed #888;
}
fieldset .actions {
    height: 27px;
    line-height: 27px;
}
fieldset .actions .options {
    margin-left: 90px;
    padding: 0 4px;
    display: inline-block;
    line-height: inherit;
}
fieldset .actions .options input[type='checkbox'] {
    position: relative;
    top: -1px;
}
fieldset .actions .buttons {
    float: right;
    height: 100%;
}
fieldset .actions .buttons * {
    height: 100%;
    margin-left: .75em;
    float: left;
}





.impressum {

}
.impressum h2 {
    margin: 1.4em 0 .5em;
    font-style: italic;
}
.impressum h1 + h2 {
    margin-top: .8em;
}
.impressum h3 {
    margin: 1em 0 .5em;
    font-style: italic;
}
.impressum p:last-child {
    margin-top: 2em;
}





.links .banners a,
.links .banners a img {
    display: block;
    width: 588px;
    height: auto;
}
.links .banners a {
    margin: 20px auto;
}
.links .banners .banner-own {
    display: block;
    margin: 20px auto;
    border-radius: 4px;
    box-shadow: rgba(0,0,0,.3) 0 0 3px;
}
.links .text-links {
    margin: 60px 0 10px;
}
.links .text-links a {
    display: block;
}



.about section {
    display: block;
    width: 560px;
    margin: 20px auto;
}
.about section:after {
    display: block;
    clear: both;
    content: '';
}
.about .about-image {
    float: left;
    width: 256px;
    height: 256px;
    box-shadow: rgba(0,0,0,.3) 0 0 3px;
    border-radius: 4px;
}
.about .about-info {
    padding: 64px 0px;
    width: 240px;
    float: right;
}
.about .about-info dt {
    width: 100px;
    float: left;
}
.about .about-info dt:after {
    content: ":";
}
.about .about-info dd {
    margin-left: 120px;
    width: 140px;
}
.about .about-info ul {
    list-style-type: none;
}
.about > li:not(:first-child) {
    margin-top: 32px;
}
.about h2,
.about h3 {
    margin: 1.4em 0 .5em;
    font-style: italic;
}
.about h2 + ul {
    padding: 0 30px;
}







img.smiley {
    display: inline-block;
    vertical-align: -2px;
}
