#main {
    display: inline-block;

    max-width: 1000px;
    min-height: 100vh;
    
    background-color: white;
    color: black;
    
    position: relative;
    z-index: 1000;
    
    /*overflow: hidden;*/
}

#main .logo {
	width: calc(100% - 2 * var(--side-margin));
	margin: var(--side-margin);
    max-width: 1000px;
}

#main a.logo-link {
	color: inherit;
	text-decoration: none;
}

/*#main .section {
	overflow: hidden;
}*/

#main .section-footer {
	color: black;
	padding: 1em 0;
	position: relative;
}

#main .section-header a {
	color: inherit;
}

#main .section-header {
	color: black;
	padding: 1em 0;
	position: relative;
}

#main .section-footer a {
	color: inherit;
}

/***************************************************************************/

#main .section .header {
	font-weight: bold;
    padding: 0.2em calc(var(--side-margin) / 1.5);
    font-size: 1.5em;
    text-align: left;
    overflow: auto;
}

@media all and (width <= 800px) {
	#main .section .header {
	    font-size: 1em;
	}
}

#main .section .header .text {
}

#main .section .header .date {
	float: right;
}

#main .section .header .location,
#main .section .header .top-button {
	float: right;
	margin-left: calc(var(--side-margin) / 1.5);
}

#main .section .header .top-button {
	transition: color 0.2s;	
	position: relative;
	top: 0.2em;
	color: inherit;
	text-decoration: none;
}

#main .section .header .top-button:hover {
	color: gray;
}
	
#main .section .content {
	padding: var(--horizontal-margin) var(--side-margin);
	overflow-wrap: break-word;
	display: inline-block;
}

#main .section-left {
	text-align: left;
}

#main .section-right {
	text-align: right;
}

#main .section-centered {
	text-align: center;
}

#main .section-fullwidth > .content {
	width: calc(100% - 2 * var(--side-margin));
}

#main .section .content * {
	margin-block-start: 0;
}
#main .section .content p:last-child {
	margin-block-end: 0;
}

/***************************************************************************/

#main .section .footer {
	display: inline-block;
	text-align: left;
	width: calc(100% - 2 * var(--side-margin));
	padding: 0 var(--side-margin) var(--horizontal-margin) var(--side-margin);
}

#main .section .footer .footer-left {
	display: inline-block;
}

/***************************************************************************/

#main .section .footer .facts {
	display: inline;
	text-align: left;
    width: fit-content;
    padding: 0.3em;
	background: var(--color-lightblue);
	font-weight: bold;
}

/***************************************************************************/

#main .section .footer .socials {
	display: inline-block;
	margin-top: 1em;	
	margin-right: 1em;
}
	
#main .section .footer .social {
	display: inline;
    font-size: 4em;
    cursor: pointer;
    transition: color 0.2s;
}

#main .section .footer a.social {
	color: inherit;
	text-decoration: none;
}

#main .section .footer .social:hover {
	color: #555;
}

/***************************************************************************/

#main .section .footer .links {
	display: inline-block;
	vertical-align: super;
    margin-top: 1em;
}
	
/***************************************************************************/

#main .section .footer .sponsors {
	display: inline;	
}
	
#main .section .footer .sponsor {
	display: inline;
	float: right;
    font-size: 4em;
    cursor: pointer;
    transition: color 0.2s;
    width: 20%;
    margin-left: 0.4em;
}

#main .section .footer a.sponsor {
	color: inherit;
	text-decoration: none;
}

/***************************************************************************/

.header-socials {
	margin-right: var(--side-margin);
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.header-socials > * {
	font-size: 1.5em;
	text-decoration: none;
	color: inherit;
	margin-left: 0.2em;
}

@media all and (width <= 800px) {
	.header-socials {
		position: relative;
		top: unset;
		right: unset;
		float: right;
		transform: none;
	}
	
	.header-socials > * {
		position: relative;
		top: -0.08em;
	}
}

/***************************************************************************/

.section-image-left {
	float: left;
	max-width: 22%;
	
	margin-right: 1em;	
}

.section-image-halfscreen {
	width: calc(50% - 0.5em);
}

.section-image-fullwidth {
	width: 100%;
}

.section-image-halfscreen:nth-child(2n-1) {
	margin-right: 0.5em;
}
.section-image-halfscreen:nth-child(2n) {
	margin-left: 0.5em;
}

#main .section.section-no-margin > .content {
	padding: 0;	
}

#main .section.section-no-bottom-margin > .content {
	padding-bottom: 0;
}

#main .section.section-no-margin > .content > *,
#main .section.section-no-bottom-margin > .content > * {
	vertical-align: bottom;
}

@media all and (width <= 800px) {
    #main .section .content .section-image-left {
    	max-width: 35%; 	
    }
    #main .section .content .section-image-right {
    	max-width: 35%; 	
    }
    
	.section-image-halfscreen {
		width: 100%;	
	}
	.section-image-halfscreen:nth-child(2n-1) {
		margin-right: 0;
	}
	.section-image-halfscreen:nth-child(2n) {
		margin-left: 0;
	}
}

/***************************************************************************/

.decoration {
	position: fixed;
	z-index: 10;
}

.decoration-top-left {
	top: 0;
	left: 0;
}

.decoration-top-right {
	top: 0;
	right: 0;
}

.decoration-bottom-left {
	bottom: 0;
	left: 0;
}

.decoration-bottom-right {
	bottom: 0;
	right: 0;
}

