

body,
html {
	background: $off_white;
	color: #000000;
	font-family: "Archivo Narrow", Helvetica, Arial, sans-serif;
	font-size: 14px;
}

body {
	overflow-y: scroll;
	overflow-x: hidden;
}

main,
footer {
	margin-left: 220px;

	@include responsive( null, null, $bp_shallow ){
		padding-bottom: 60px;
	}

	@include responsive( $bp_medium ){
		margin-left: 0;
	}
}

main {
	position: relative;
	min-height: 100vh;

	a {
		color: inherit;
		text-decoration: none;
		border-bottom: 1px dotted transparent;

		&:hover {
			border-color: #000000;
		}
	}

	p {
		font-size: 18px;
		line-height: 1.5em;
		white-space: pre-wrap;
	}

	section.grid-wrapper,
	section.text-wrapper {
		padding: 40px;
	}

	section.list-wrapper {
		padding: 20px 0;
	}

	@include responsive( $bp_medium ){

		section.grid-wrapper,
		section.text-wrapper {
			padding: 20px;
		}

		section.list-wrapper {
			padding: 10px 0;
		}
	}

	pre {
		padding: 20px;
		background: $faint_grey;
		white-space: pre-wrap;
		word-wrap: break-word;
	}
}

h1 {
	font-weight: 500;
	font-size: 40px;
}

h2 {
	font-weight: 500;
	font-size: 30px;
}

h3 {
	font-weight: 100;
	font-style: italic;
	font-size: 20px;
}

h4 {
	font-size: 14px;
	margin-bottom: 14px;
	text-transform: uppercase;

	&.underline {
		padding-bottom: 4px;
		border-bottom: 1px solid #000000;
	}

	&:not(:first-child){
		padding-top: 40px;
	}
}

.no-top-padding {		padding-top: 0 !important; }
.no-bottom-padding {	padding-bottom: 0 !important; }
.no-right-padding {		padding-right: 0 !important; }
.no-left-padding {		padding-left: 0 !important; }

.top-padding {			padding-top: 20px; }
.bottom-padding {		padding-bottom: 20px; }
.right-padding {		padding-right: 40px; }
.left-padding {			padding-left: 40px; }

.col {
	min-height: 1px;
	float: left;

	&.w5 {		width: 5%; }
	&.w10 {		width: 10%; }
	&.w15 {		width: 15%; }
	&.w20 {		width: 20%; }
	&.w25 {		width: 25%; }
	&.w30 {		width: 30%; }
	&.w33 {		width: 33.3334%; }
	&.w35 {		width: 35%; }
	&.w40 {		width: 40%; }
	&.w45 {		width: 45%; }
	&.w50 {		width: 50%; }
	&.w55 {		width: 55%; }
	&.w60 {		width: 60%; }
	&.w65 {		width: 65%; }
	&.w66 {		width: 66.6667%; }
	&.w70 {		width: 70%; }
	&.w75 {		width: 75%; }
	&.w80 {		width: 80%; }
	&.w85 {		width: 85%; }
	&.w90 {		width: 90%; }
	&.w95 {		width: 95%; }
	&.w100 {	width: 100%; }
}

.pull-left {
	float: left;
}

.pull-right {
	float: right;
}

.cf {
	@include clearfix;
}

.one-liner { @include one_line_text; }
.grey-text { color: $mid_grey !important; }
.red-text { color: $red !important; }
.green-text { color: $green !important; }
.dark-text { color: $dark_grey !important; }

footer {
	display: block;
	color: $light_grey;
	padding-top: 50px;
	padding-bottom: 50px;
	text-align: center;
}

.details {
	list-style-type: none;
	color: $mid_grey;
	text-transform: uppercase;

	li {
		padding-bottom: 4px;
	}
}

.flag {
	font-size: 12px;
	display: inline-block;
	padding: 2px 4px;
	border-radius: 2px;
	background: $light_grey;
	color: $dark_grey;

	&.blue {
		background: $blue;
		color: #FFFFFF;
	}
}


@include responsive( $bp_medium ){
	
	.right-padding {		padding-right: 20px; }
	.left-padding {			padding-left: 20px; }

}