* {
	margin: 0;
	padding: 0;
	font-family: "Lato", sans-serif;
	box-sizing: border-box;
}

body { 
background-image: url(images/1.png),url(images/2.png), url(images/3.png); 
padding:0; margin:0; height: 100%; 
}

[disabled] {
	cursor: not-allowed;
}
a{
	padding: .5em;
}

/*navigation targets*/

#profile-picture:target h2,
#find-friends:target h2,
#about:target h2,
#photo-albums:target h2,
#password:target h2 {
	animation: highlight .5s ease;
}
@keyframes highlight {
	0%, 100% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
}

/*Popup figure*/

#popup {
	display: none;
	background: white;
	position: fixed;
	margin: auto;
	top: calc(50% - 14em);
	box-shadow: 0 0 0 100vmax rgba(0,0,0,.8);
	z-index: 1;
	max-width: min-content;
	max-width: -webkit-min-content;
	max-width: -moz-min-content;
	animation: bounce .5s cubic-bezier(.25,.1,.3,1.5);
}

#popup img {
	width: 20em;
}

#popup:target {
	display: block;
}

#close {
	background-color: #34495e;
	color: white;
	text-decoration: none;
	padding: 1.7em 1em;
	position: absolute;
	right: 0;
	z-index: 0;
}
#close:hover,
#close:focus {
	background-color: #2c3e50; 
}
input[type="checkbox"] {
	position: absolute;
	clip: rect(0,0,0,0);
}
input[type="checkbox"] + label::before {
	content: '\a0';
	display: inline-block;
	vertical-align: .2em;
	width: 1em;
	height: 1em;
	margin: 0 .5em 1em 1em;
	border-radius: .2em;
	background: #ecf0f1;
	text-indent: .25em;
	line-height: .75;
}
input[type="checkbox"]:checked + label::before {
	content: '\2713';
	background: #1abc9c;
}
input[type="checkbox"]:focus + label::before {
	box-shadow: 0 0 .1em .1em #58a;
}

input[type="checkbox"]:disabled + label::before {
	background: gray;
	box-shadow: none;
	color: #555;
	cursor: not-allowed;
}

figcaption {
	margin-top: .5em;
	color: #34495e;
	font-weight: 600;
	margin: 1em;
}
@keyframes bounce {
	0%, to {
		transform: scale(0);
	}
	50% {
		transform: scale(1.2);
	}
	100% {
		transform: scale(1);
	}
}

/*navigation*/

[role="navigation"], ul {
	background-color: #34495e;
	list-style: none;
}

svg {
	width: 1em;
	height: 1em;
	margin-right: 1em;
	fill: #1abc9c;
}

.profilePicture {
	width: 5em;
	border-radius: 3em;
	margin: 1em;
	display: block;
    margin-left: auto;
    margin-right: auto;
}

[role="banner"] p {
	text-align: center;
	color: #2c3e50;
}

[role="banner"] {
	background-color: #ecf0f1;
}

[role="banner"] li a:hover,
[role="banner"] li a:focus {
	display: block;
	background-color: #2c3e50;
}

[role="banner"] p {
	margin-bottom: 1em;
}

[role="banner"] h1 {
	padding-top: .5em;
	font-size: 2em;
	font-family: Ampersand, Helvetica, sans-serif;
	text-align: center;	
	color: #2c3e50;
}

@font-face {
  font-family: 'Ampersand';
  src: local( 'Times New Roman');
  unicode-range: U+26;
}

[role="navigation"] a, ul {
	color: white;
	display: block;
}

[role="navigation"] a {
	padding: 1em;
	list-style: none;	
	text-decoration: none;
}

/*main*/

main > article {	
	color: white;
	padding: 1em;
	line-height: 1.7em;
}

/*about*/

#about {
	background-color: white;
	margin: 1em 0
}

#about h1, p {
	color: #2c3e50;
}

#about span {
	color: #1abc9c;
	font-size: 0.8em;
}

main > article h2 {
	color: #2c3e50;
	font-size: 1.3em;
}

main > article p {
	margin-top: 1em;
}

/*profile picture*/

#profile-picture {
	background-color: #ecf0f1;
	margin-bottom: 1em;
}

#profile-picture header {
	text-align: center;
}

#profile-picture h3 {
	color: #2c3e50;
	font-size: 1em;
	font-weight: 400;
	margin: 1em;
}

#profile-picture h2 {
	margin-bottom: .5em;
}

.profile-picture {
	width: 100%;
	height: 100%;
}

[role="button"] {
	background-color: #34495e;
	padding: .7em 3em;
	color: white;
	text-decoration: none;
	text-align: center;
	margin: 0 auto;
	display: block;
	width: min-content;
	border: none;
	font-size: 1em;
}

[role="button"]:hover,
[role="button"]:focus {
	background-color: #2c3e50;
}

.current-profile-picture {
	display: flex;
	justify-content: center;
}

.filter-effects {
	display: flex;
	flex-wrap: wrap;
}

.filter-effects figure {
	margin: .5em;
}

.filter-effects img {
	width: 6em;
	height: 6em;
	border-radius: 4em;
}

.filter-effects img:hover,
.filter-effects img:focus {
	border: .3em solid #1abc9c;
}

.filter-effects > header {
	color: #1abc9c;
	margin: 1em;
	width: 100vw;
}

.filter-effects figcaption {
	font-size: .8em;
	text-align: center;
}

.effect-01 img {
	-webkit-filter: opacity(50%);
}

.effect-02 img {
	-webkit-filter: invert(1);
}

.effect-03 img {
	-webkit-filter: brightness(50%);
}

.effect-04 img {
	-webkit-filter: saturate(50%);
}

.effect-05 img {
	-webkit-filter: contrast(50%);
}


/*password*/

#password {
	background-color: #1abc9c;
	margin-bottom: 1em;
}

#password fieldset {
	border: none;

}
#password input[type="password"] {
	width: 100%;
	height: 3em;
}

#password button {
	background-color: #16a085;
	border: none;
	width: 100%;
	height: 3em;
	color: white;
	font-size: 1em;
	margin-top: 1em;
}

#password button:hover,
#password button:focus {
	opacity: .7;
	filter: alpha(opacity=70);
}

#password legend {
	color: #2c3e50;
	margin-bottom: 1em;
}


/*photo album*/

#photo-albums img {
	width: 100%;
}

#photo-albums img:hover,
#photo-albums img:focus {
	opacity: .8;
	filter: alpha(opacity=80);
}

#photo-albums svg {
	display: none;
}

#photo-albums {
	margin-bottom: 1em;
	background-color: #ecf0f1;
	color: #2c3e50;
}

#photo-albums h2 {
	color: #2c3e50;
}
#photo-albums figcaption{
	margin: -.5em 0 1em 0;

}


/*find friends*/

#find-friends {
	display: flex;
	flex-wrap: wrap;
	background-color: white;
}

#find-friends header {
	width: 100%;
}

#find-friends figure {
	margin: .5em;
}

#find-friends img {
	width: 6em;
	height: 6em;
}


/*loader*/

.loader{
	width: 50px; 
	height: 50px;
	text-indent: 999px;
	overflow: hidden; 
	background: url(images/loader.png);
	animation: loader 1s infinite steps(16);
	margin: 2em;
	margin: 0 auto;
}

@keyframes loader {
	to { background-position: -800px 0; }
}

#loader {
	background-color: white;
	width: 100%;
}


/*footer*/

[role="contentinfo"] {
	background-color: #34495e;
	line-height: .5em;
	color: white;
	min-width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	padding: 1em;
}

[role="contentinfo"] > * {
	min-width: 15em;
	text-align: center;
}

[role="contentinfo"] li {
	list-style: none;
	padding: 1em;
}

[role="contentinfo"] a {
	text-decoration: none;
	color: white;
}

address {
	line-height: 2em;
	border-top: 1px solid #2c3e50;
	border-bottom: 1px solid #2c3e50;
	padding-top: 1.5em;
	margin: .5em 0;
}

@media (min-width: 38em) {
	
	/*main*/

	main, body {
		display: flex;
		flex-wrap: wrap;
		box-pack: center;
		justify-content: center;
	}
	
	main {
		width: 50%;
		margin: 1em;
	}
	
	#photo-albums, #profile-picture {
		width: 100%;
	}

	/*navigatie*/
	
	[role="banner"] h1 {
		font-size: 1.4em;
		margin: 0 .5em;
	}
	
	[role="banner"] {
		min-width: 25%;
		max-height: 20em;
	}

	/*about*/

	#about header {
		width: 100%;
	}
	
	#about h1 {
		font-size: 3em;
	}
	
	#about span {
		font-size: .5em;
	}

	/*password*/

	#password {
		margin-bottom: 1em;
	}	

	/*find-friends*/

	#find-friends img {
		width: 8em;
		height: 8em;
	}
}

@media (min-width: 32em) and (max-width: 47em) {
	
	[role="contentinfo"] > * {
		min-width: 30em;
	}
}

@media (min-width: 39em) and (max-width: 53em) {
	
	main{
		width: 60%;
	}
}

@media (max-width: 39em) {
	
	[role="navigation"] {
		text-align: center;
	}
	#popup{
		left: calc(50% - 8.5em);
	}
	#popup img{
		width: 17em;
	}
	
}






