/*****************************
* fundamental site structure *
*****************************/

body {
    background-color: var(--bg1);

    padding:    0px;
    margin:     0px;
    border:     0px;
}

#background_wrap {
    z-index: -1;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-image: url('../pics/sky.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll;
}

.page {
    padding:    0px;
    margin:     0px;
    border:     0px;

    max-width: 100rem;

    display:    flex;
    flex-flow:  row wrap;
}

/***************
* layout stuff *
***************/

article, aside {
    margin-top:     1.5rem;
    margin-left:    0px;
    margin-right:   0px;
    margin-bottom:  1.5rem;

    flex: 1 1 100%;
}

article {
    padding-top:    2.5rem;
    padding-left:   5.0rem;
    padding-right:  5.0rem;
    padding-bottom: 1.5rem;
}

article h1, article h2, article p, article details {
    max-width: 42rem;
    margin-left: auto;
    margin-right: auto;
}

aside {
    padding-top:    2.5rem;
    padding-left:   0.0rem;
    padding-right:  0.0rem;
    padding-bottom: 2.5rem;
}

@media (max-width: 1000px) {
    /* mobile version */
    article {
        /* less space left and right */
        padding-top:    2.5rem;
        padding-left:   1.0rem;
        padding-right:  1.0rem;
        padding-bottom: 2.5rem;
        margin: 0.0rem;
    }
    aside {
        padding: 0.0rem;
        margin: 0.0rem;
    }
}

aside img, article img {
    width:  100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
}

img {
    transition: transform 0.8s;
}

img:hover {
    transform: scale(1.05);
}

.fullWidthImgContainer {
    width: 100%;
    margin: 0 5rem 0 5rem;
}
@media (max-width: 1000px) {
    .fullWidthImgContainer {
        width: 100%;
        margin: 0 1rem 2.5rem 1rem;
    }
}

div.anchor {
    position: static;
    display: block;
    height: 8.0rem;
}

div.anchor.large {
    height: 8.0rem; /* mobile first: same as normal anchor */
}

/******************
* for big screens *
******************/
@media (min-width: 1000px) {
    article {
        flex: 1 1 45%;
    }
    aside {
        flex: 1 1 25%;
    }
    .fullwidth {
        flex: 1 1 100%;
    }
    div.anchor.large {
        height: 15rem;
    }
}

/*****************
* little helpers *
*****************/

.hidden {
    display: none;
}

.hiddenOnMobile {}

@media (max-width: 1000px) {
    /* mobile version */
    .hiddenOnMobile {
        display: none;
    }
}
