.top-margin {
    margin-top: 1.5em;
}

#wide-logo {
  max-height: 30px;
}

#logo {
    margin-bottom: -5px;
}

@media screen and (min-width: 1024px) {
    #main-nav-menu .navbar-start .navbar-item {
        padding-bottom: 0;
    }

    #main-nav-menu .navbar-start .navbar-item .navbar-link {
        padding-bottom: 0;
    }
}

.simple-carousel-item {
    width: 100%;
}

.simple-carousel-item .title {
    background: rgba(0,115,165,0.7) !important;
    padding: 0.5em;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px; /* mysteriously, bulma increases the hero height by 6px => this is to bottom align the title with the hero image. */
}

div.hero {
    margin-bottom: -6px;
}

section.hero {
    margin-bottom: -0.5em;
}

section.section {
    padding: 1.5rem;
}

ul.with-bullets {
    margin-left: 2em;
    list-style: none;
}

ul.with-bullets li::before {
    content: "\2022";
    color: grey;
    font-weight: bold;
    display: inline-block;
    width: .5em;
}

.image.is-80x64 {
    width: 80px;
    height: 64px;
}

table.no-grid {
    border: none;
}

table.no-grid td {
    border: none;
}

img.center {
    display: block;
    margin: 0 auto;
}

/* mark required fields in the registration forms */
.required::after {
    content: " *";
    color: red;
    font-weight: bold;
}

/* some bottom space for section contents */
.section > .title, .card:not(:last-child) {
    margin-bottom: 0.5em;
}
.section > h1, h2, h3, h4, h5, p:not(:last-child), ul:not(:last-child) {
    margin-bottom: 0.5em;
}

/* let wide tables scroll instead of overflowing their parent container */
table.scroll {
    display: block;
    overflow: auto;
}

/* bulma cards with equal height */
.equal-height {
    display: flex;
    flex-direction: column;
    height: 100%;
    flex: 0 0 auto
}
.equal-height .card-content {
    flex: 1 0 auto;
}
.equal-height .card-image {
    flex: 0 0 auto;
}

/* ce-style background color for fluidbox image overlays */
.fluidbox__overlay {
    background-color: rgba(0,115,165,0.7);
}

/* avoid focus borders on firefox */
a:focus { 
    outline: none; 
}
button::-moz-focus-inner {
    border: 0;
}
input::-moz-focus-inner {
    border: 0;
}

/* 16by10 images (for video screen caps) */
.image.is-16by10 {
    padding-top: 62.5%;
}
.image.is-16by10 img {
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

/* vertically center media items */
.media.center {
    align-items: center;
}

/* external link */
.external::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f35d"; /* https://fontawesome.com/icons/external-link-alt */
  
    font-size: .7em;
    position: relative;
    top: -.15em;
    margin-left: .5em;
  
    display: inline-block;
}
/* avoid external link icon above to be shown in a new line */
/*
.external {
    white-space: nowrap;
}
*/

/* smaller language selection footer in press cards */
.language-footer {
    flex: 0 0 auto;
}

/* top button section without bottom padding */
section.top-buttons {
    padding-bottom: 0;
}

/* a separator between the navigation and the hero */
.nav-separator {
    height: 1.5em;
}

#main-nav-menu .navbar-start {
    margin-top: auto;
}

.altair-logo-stack {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.altair-logo-container {
    position: absolute;
    width: 100%;
    z-index: 1000;
}

.altair-logo {
    width: 400px;
    margin-top: 50px;
}
