body {
    font-family: euphemia,"Helvetica Neue",Helvetica,Arial,sans-serif;
    color: #1f497d;
}

.navbar-left {
    flex:1;
    text-align:start;
}

.navbar-right {
    flex:1;
    text-align:end;
}

.navbar-right .moduletable.links a {
    text-decoration: none;
    margin: 1rem;
}

.navbar-right .moduletable.links a.btn:hover {
    background: #ccc;
}

.navbar-right .moduletable.links img {
    max-width: 25px;
}

.container-header {
    background: none;
}

.container-header .grid-child {
    align-items: center;
}

.container-header .navbar-brand {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: center;
    margin: auto;
}

.container-header .site-logo {
    margin: auto 1rem;
    border: 1px solid #1f497d;
}

.container-header .site-description {
    font-size: 100%;
    margin: auto;
}

.container-banner {
    margin: 0;
}

.container-component {
    margin: 0;
}

@media (max-width: 550px) {
    .container-header .site-description {
        font-size: 80%;
    }
}

.container-header nav {
    margin: auto;
}

.offline-message {
    margin:2rem auto;
}

.footer .grid-child {
    padding: 0.5rem;
}

.footer .grid-child .mod-custom {
    margin: auto;
    text-align:center;
}

.back-to-top-link {
    bottom: 4rem;
}

#main-menu {
    flex-direction: row;
    flex-wrap: wrap;
    margin: auto;
    justify-content: center;
    gap: 1rem;
    background: #1f497d;
    font-size: 125%;
}

#main-menu li.active {
    font-weight:bold;
    pointer-events: none;
}

#main-menu li:hover {
    text-decoration: underline;
}

.tableinarticle.home,
.tableinarticle.gallery {
    margin: auto;
}

.tableinarticle.home td.italic1 {
    text-align: center;
    line-height: 2em;
    font-size: 200%;
    font-style: italic;
    color: #1f497d;
    padding: 0 1em;
}

.tableinarticle.gallery th {
    text-align: center;
}

.tableinarticle.gallery td {
    padding: 1rem;
}

.footer .grid-child {
    padding: 0.5rem;
}

.footer .grid-child .mod-custom {
    margin: auto;
    text-align:center;
}

.footer a {
    text-decoration: none;
}

.footer a:hover {
    text-decoration: underline;
}

.footer a .icon-new-tab {
    vertical-align: center;
    font-size: 50%;
}

address .address-links a {
    text-decoration: none;
}

address .address-links a:hover {
    text-decoration: underline;
}