html {
  min-height: 100%;
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

.visually-hidden {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	padding:0 !important;
	border:0 !important;
	height: 1px !important; 
	width: 1px !important; 
	overflow: hidden;
}

body {
  position: relative;
  box-sizing: border-box;
  height: 100%;
  margin: 0;
  background-color: #151515;
  color: #FFFFFF;
  font: 100% 'Montserrat', Arial, 'Helvetica Neue', Helvetica, sans-serif;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
  -webkit-overflow-scrolling: touch;
}

header {
	margin-bottom: 50px;
}
h2 {
	margin: 0 0 50px;
	font-size: 1.125rem;
	text-transform: uppercase;
}
img {
	width: 100%;
	height: auto;
	margin: 0;
	vertical-align: bottom;
}
p {
	font-size: 16px;
	margin: .1em;
}
a {
	display: inline-block;
	color: #FFFFFF;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
}
a:focus,
a:hover {
	text-decoration: underline;
}

.layout-container {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 20px;
}

.logo {
	max-width: 300px;
}
.header-image {
	max-width: 750px;
	margin-bottom: 80px;
}

.info__wrapper--fransen,
.info__wrapper--ip {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	max-width: 140px;
	margin: 0 auto 30px;
}
.info__wrapper--fransen img,
.info__wrapper--ip img {
	margin-bottom: 40px;
}
.wrapper--contact a {
	margin-bottom: 10px;
}

@media screen and (min-width: 480px) {
	.wrapper--partners {
		display: flex;
		justify-content: space-between;
		max-width: 380px;
		margin: 0 auto;
	}
	.info__wrapper--fransen,
	.info__wrapper--ip {
		margin: 0;
	}
}
