/* --- STYLES --- */


/* --- General --- */

:root {
	--content-width: 70em;
	--timeline-height: 9em;
}


* {
	box-sizing: border-box;
}

html {
	width: 100%;
	height: 100%;
	margin: 0;
	scroll-behavior: smooth;
}

body {
	background: var(--white) url("images/bg/1.jpg") bottom no-repeat;
	background-size: cover;
	background-attachment: fixed;
	width: 100%;
	margin: 0;
	position: relative;
	min-height: 100%;
}



/* --- Top bar --- */

#topbar {
	position: relative;
	background: var(--white);
	height: 8em;
	width: 100%;
	margin: auto;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	box-shadow: 0 0 0.5em 0.1em rgba(0,0,0,0.1);
	z-index: 100;
}

#topbar .content {
	position: relative;
	height: 100%;
	width: var(--content-width);
	margin: auto;
	padding: 0 2em;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}

#logo {
	min-width: 8em;
	display: block;
	height: 100%;
	text-align: center;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	transition: transform 150ms;
}
#logo img {display: block; height: 100%}
#logo:hover {transform: scale(0.95);}

#navigation {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-end;
	align-items: center;
	text-align: right;
	column-gap: 3em;
}



/* --- Banner --- */

.banner {
	position: relative;
	width: 100%;
	min-height: 20em;
	color: var(--white);
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.banner #logo1 {
	width: 30em;
	max-width: 90%;
	filter: drop-shadow(0.05em 0.05em 0.25em rgba(0,0,0,0.1));
	margin-bottom: -2em;
	animation: rotation 1.5s ease-in-out 0s backwards;
}
.banner #logo2 {
	width: 7em;
	max-width: 25%;
	filter: drop-shadow(0.05em 0.05em 0.25em rgba(0,0,0,0.1));
	animation: reveal 1s ease-out 1s backwards;
}


/* --- Page & blocks --- */

.page {
	position: relative;
	/*background: var(--white);*/
	width: 100%;
	min-height: 30em;
}

.page .section {
	position: relative;
	/*background: var(--white);*/
	width: 100%;
}

.page .section.basic {
	/*background: var(--white);*/
}

.page .section.marketing {
	/*background: var(--gradient);*/
}

.page .section .content {
	position: relative;
	width: var(--content-width);
	min-height: 15em;
	margin: auto;
	padding: 2em 2em 2em 2em;
}

.page .section .gallery {
	background: rgba(9,33,94,0.25);
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	overflow: scroll;
	column-gap: 1.25em;
	padding: 1em;
	border-radius: 1em;
	margin-bottom: 2em;
}

.page .section .gallery img {
	height: 30em;
	display: block;
	border-radius: 0.5em;
	box-shadow: 0 0.15em 0.5em 0.15em rgba(0,0,0,0.15);
	transition: transform 150ms, filter 150ms;
}
.page .section .gallery img:hover {transform: scale(1.01); filter: brightness(1.1);}


.fixed-img {
	width: 100%;
	height: 10em;
	background-color: var(--white);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: local;
	border-radius: 1em;
	margin: 2em 0 3em;
}
.fixed-img.workshop {background-image: url("images/workshop.jpg");}



/* --- Timeline --- */


.timeline {
	position: relative;
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: center;
	column-gap: 2em;
	row-gap: 2em;
	margin-top: 3em;
	margin-bottom: 4em;
}

.timeline .item {
	position: relative;
	height: var(--timeline-height);
	width: var(--timeline-height);
	animation: reveal 1s ease-out backwards;
}
/*.timeline .item.a {animation-delay: 3s;}
.timeline .item.b {animation-delay: 4s;}
.timeline .item.c {animation-delay: 5s;}
.timeline .item.d {animation-delay: 6s;}
.timeline .item.e {animation-delay: 7s;}*/

.timeline .item.total {
	height: calc( var(--timeline-height) * 1.35);
	width: calc( var(--timeline-height) * 1.35);
}

.timeline .item .circle {
	position: relative;
	background: linear-gradient(to bottom, var(--accent) , var(--accent2));
	height: 100%;
	width: 100%;
	border-radius: 100%;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	box-shadow: 0 0.15em 0.25em 0.1em rgba(0,0,0,0.35);
}

.timeline .item .year {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.timeline .item .year span {background-color: var(--black); padding: 0.1em 0.5em;}

.timeline .item .icon {width: 35%;}





.qualities {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 2em;
}

.numbers {
	width: 75%;
	height: 35em;
}

.numbers .list {
	background: url("images/worker.webp") left bottom no-repeat;
	background-size: contain;
	width: 100%;
	height: 100%;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: flex-end;
	row-gap: 1em;
}

.numbers .item {
	background: var(--black);
	border-radius: 50em;
	padding: 0.75em 3em;
	box-shadow: 0 0.15em 0.25em 0.1em rgba(0,0,0,0.35);
}

.qualities .sticker {
	position: relative;
	background: linear-gradient(to bottom, var(--accent) , var(--accent2));
	width: 14em;
	height: 14em;
	border-radius: 100%;
	text-align: center;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	box-shadow: 0 0.15em 0.25em 0.1em rgba(0,0,0,0.35);
	transform: rotate(5deg);
}

.qualities .sticker .icon {width: 15%;}



/* --- Misc --- */

.section .actions {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	column-gap: 2em;
	row-gap: 1em;
}

.button {
	padding: 0.85em 2em;
	border-radius: 50em;
	min-width: 15em;
	max-width: 100%;
	text-align: center;
	box-shadow: 0 0.1em 0.5em 0em rgba(0,0,0,0.25);
	transition: 150ms;
}

.button:hover {
	box-shadow: 0 0.05em 0.25em 0em rgba(0,0,0,0.35);
	transform: scale(0.98);
}

.button.yellow {background: var(--accent); color: var(--black);}
.button.yellow:hover {background: var(--accent2); color: var(--black);}



.section.bottom-logo {}
.section.bottom-logo .content {
	height: 10em;
	padding: 0;
	text-align: right;
	margin-top: -5em;
	margin-bottom: -2.5em;
}
.section.bottom-logo .content img {height: 100%;}



/* --- Footer --- */

footer {
	background: var(--accent);
	color: var(--black);
	padding: 2em;
}

.footer-main {
	width: 100%;
	height: 8em;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 1em;
}

.footer-logo {
	height: 100%;
	transition: transform 150ms;
}
.footer-logo img {height: 100%}
.footer-logo:hover {transform: scale(0.95);}




















