
/* Basic */

	body {
		font-size: 1.1rem;
		font-family: "Helvetica Neue", "Arial", sans-serif;
	}

	h1, h2, .h1, .h2 {
		color: #e1137c;
		font-size: 3rem;
	} h2, .h2 {
		margin-top: 2rem;
	} h3, .h3 {
		font-size: 2rem;
		margin-top: 1em;
	}

	a {
		color: #e1137c;
		transition: all .3s;
	} a:hover {
		color: #e1137c;
		text-decoration: none;
		opacity: .75;
	}

	img {
		max-width: 100%;
		height: auto;
	} .shadow {
		box-shadow: 0 .5rem 1rem rgba(0,0,0,.25) !important;
	}

	[data-animation] {
		opacity: 0;
	} [data-bg] {
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}

/* Cookies */

	.cc-revoke, .cc-window {
		font-size: 12px;
	}

	.cc-grower {
		position: fixed;
		bottom: 0; left: 0;
		z-index: 99999;
		width: 100%;
		text-align: center;
	}

	.cc-btn,
	.cc-banner.cc-theme-edgeless .cc-btn {
		font-size: 20px;
		line-height: 20px;
		padding: .25em 1.5em;
	}

/* Header */

	header {
		position: fixed;
		top: 0; left: 0; right: 0;
		z-index: 9999;

		width: 100%;
		height: 75px;
		padding:1em 2em;
		background-color: #fff;
		box-shadow: 0 0 25px 0 rgba(0,0,0,0.25);

		display: flex;
		align-items: center;

		transition: all .5s;
	}

	header img {
		height: 60px;
		width: auto;
	}

	header ul {
		display: flex;
		margin: 0 0 0 auto;
		list-style: none;
	} header ul li {
		list-style: none;
	} header ul li > ul {
		margin: 0;
		padding: 0;
		max-width: 250px;
		display: block;
		background-color: #eee;

		position: absolute;
		opacity: 0;
		visibility: hidden;
		transition: all .3s;
	} header ul li:hover > ul {
		opacity: 1;
		visibility: visible;
	}

	header ul li a {
		display: block;
		padding: .75em 1em;
		line-height: normal;
	}

/* Main */

	.hero {
		margin-top: 75px;
		position: relative;
		padding: 5em 2em;
		color: #fff;
	} .hero:before {
		content: '';
		position: absolute;
		top: 0; right: 0; bottom: 0; left: 0;
		background-color: rgba(0,0,0,.5);
	} .hero > * {
		position: relative;
		z-index: 1;
	}

	.container {
		padding-top: 125px;
	} .hero + .container {
		padding-top: 75px;
	}

	main {
		padding-right: 2em;
	}

/* Aside */

	aside {
		padding: 1.5em;
		background-color: #eee;
		font-size: 1rem;
	}

	aside h3 {
		margin-top: 0;
	} aside h4 {
		font-size: 1.3rem;
	}

/* Animation */

	.animate {
		opacity: 0;
		visibility: hidden;
		animation-duration: .5s;
		animation-fill-mode: forwards;
	} .animated {
		opacity: 1;
		visibility: visible;
	}

/* Figure */

	figure img {
		display: block;
		margin: 0 auto;
	}

	figure figcaption {
		margin-top: .5em;
		font-size: .8rem;
		text-align: center;
	}

/* Button */

	.btn {
		padding: .75rem 1.5rem;
		transition: all .3s;
	} .btn:hover {
		opacity: .75;
	}

	.btn-primary, .btn-primary:hover {
		background-color: #e1137c;
		border-color: #e1137c;
	}

/* Footer */

	footer {
		padding: 1em 2em;
		position: relative;
		background-color: #eee;
		font-size: 1rem;
	}

	footer ul {
		display: flex;
		list-style: none;
		margin: 0 0 0 auto;
		padding: 0;
	} footer ul li {
		list-style: none;
	} footer ul li a {
		display: inline-block;
		padding: 1em;
	}

	footer img {
		height: 60px;
		width: auto;
	}

	footer .gallery {
		display: flex;
		margin: 2em 0;
	} footer .gallery > * {
		max-width: 100px;
		margin-left: 2em;
	}

@media (min-width: 1200px) {

	.container {
		display: grid;
		grid-template-columns: 3fr 1fr;
	}

	aside {
		position: sticky;
		top: 100px;
		height: calc(100vh - 120px);
		overflow: hidden;
	}
}

@media (max-width: 1199px) {

	h1, h2, .h1, .h2 {
		font-size: 36px;
	}
}

@media (max-width: 991px) {

	header ul li a {
		padding: 1em .5em;
	}

/* Bootstrap */

	.row {
		margin: 0;
	}

	.order-1, .order-2, .order-3, .order-4, .order-5, .order-6, .order-7, .order-8, .order-9, .order-10, .order-11, .order-12 {
		-ms-flex-order: 0;
		order: 0;
	}

/* Figure | Figcaption */

	main figure {
		margin: 1rem calc(-2vw - 15px);
	} figure + p {
		padding: 0;
	}

/* Footer */

	footer {
		font-size: .8rem;
	} footer ul li a {
		padding: 1em .5em;
	}
}

@media (max-width: 500px) {

	header img {
		height: auto;
	}
}
