:root {
	/**--freelance-bg: #9c27b0;*/
	--freelance-bg: #e07502;
	--foss-bg: #ab3814;
	--sites-bg: #869e08;
	--dys-bg: #0e62ce; /* social */
	--link-hover-bg: #ffb591;
}
body {
	font-family: sans-serif;
	font-size: 14px;
	background: #eeeeec;
}
body,
body a {
	color: #555;
}
@keyframes loadingFading {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
#whole-page {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 20px 0;
	display: flex;
	align-items: center;
	flex-direction: column;
}
#whole-page {
	z-index: 0;
	overflow-y: scroll;
}
img {
	border: 0;
}
.links img {
	width: 48px;
	height: 48px;
}
#soflair {
	width: 208px;
	height: 58px;
}
.opener,
.closer {
	justify-content: center;
	cursor: pointer;
}
section .opener:hover::before,
section .closer:hover::before {
	color: var(--link-hover-bg);
}
.opener::before {
	content: '\25BC';
}
.closer::before {
	content: '\25B2';
}
section {
	box-shadow: 0px 6px 10px rgba(0, 0, 0, .3);
	padding: 0;
	padding-bottom: 10px;
	margin-top: 20px;
	margin-bottom: 12px;
	background: white;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	position: relative;
}
section > .more {
	display: none;
}
section, section h1 {
	border-radius: 3px 3px 0 0;
}
section h1 {
	margin-top: 0;
	margin-bottom: 10px;
	padding: 8px 0 6px 10px;
	color: white;
	font-size: 15px;
	line-height: 24px;
	font-weight: normal;
	text-align: center;
}
.picots {
	position: absolute;
	top: -15px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.picot {
	height: 15px;
	z-index: -1;
}
.picot:first-child {
	margin-left: 8px;
}
.picot:last-child {
	margin-right: 6px;
}
section.foss h1 {
	background: var(--foss-bg);
}
section.foss .picot {
	background: linear-gradient(90deg, white -150%, var(--foss-bg) 50%, black 250%);
}
section.foss .opener, section.foss .closer {
	color: var(--foss-bg);
}
section.freelance {
	background-image: url(dys-st-michel-soleil.jpeg);
	background-size: cover;
	background-position-y: 29px;
}
section.freelance h1 {
	background: var(--freelance-bg);
}
section.freelance div.p {
	padding: 15px 10px 90px 12px;
	min-height: 51px;
}
section.freelance div.more p {
	color: white;
	padding: 150px 10px 0px 10px;
}
section.freelance div.p {
	display: block;
}
section.freelance div.p a {
	color: #222;
}
section.freelance div.more a {
	color: #fdf8d2;
}
section.freelance .picot {
	background: linear-gradient(90deg, white -150%, var(--freelance-bg) 50%, black 250%);
}
section.freelance .opener, section.freelance .closer {
	color: var(--freelance-bg);
}
.freelance a {
	padding: 3px;
}
.freelance a:hover {
	text-decoration: none;
	color: white;
	background: var(--freelance-bg);
}
section.freelance p {
	text-align: left;
	padding: 5px;
}
section.dys h1 {
	background: var(--dys-bg);
}
section.dys .picot {
	background: linear-gradient(90deg, white -150%, var(--dys-bg) 50%, black 250%);
}
section.dys .opener, section.dys .closer {
	color: var(--dys-bg);
}
section.sites h1 {
	background: var(--sites-bg);
}
section.sites .picot {
	background: linear-gradient(90deg, white -150%, var(--sites-bg) 50%, black 250%);
}
section.sites .opener, section.sites .closer {
	color: var(--sites-bg);
}
section .p {
	text-align: left;
	padding: 23px 10px 24px 10px;
}
section > a, section > div, section > p {
	display: flex;
	padding: 5px;
}
section > .so {
	padding: 0;
}
section > .so > img {
	margin-right: 5px;
}
section > a {
	align-items: center;
	flex-direction: row;
	text-decoration: none;
	text-align: left;
}
section > a:hover {
	background: var(--link-hover-bg);
}
.all-repos {
	justify-content: center;
	height: 40px;
}
.icon {
	flex: 0 0 48px;
	height: 48px;
	margin-right: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.icon img {
	max-width: 48px;
	max-height: 48px;
}
section a img.nomargin {
	padding: 0;
}
#contact {
	clear: both;
	display: block;
	text-align: center;
	text-decoration: none;
	font-size: 90%;
	margin-left: -10px;
	padding: 5px;
	margin-bottom: 10px;
}
#contact,
#contact a {
	color: #ccc;
	text-decoration: none;
}

#main > h1 {
	text-align: center;
	color: #eee;
	font-size: 160%;
	margin-top: 10px;
}
.centered {
	margin: 20px 0;
}

.social-media-bluesky {
	fill: #0085ff;
}

@media (max-height: 125px) {
	#contact {
		display: none;
	}
}
@media (max-width: 250px) {
	.opener,
	.closer {
		height: 30px;
		line-height: 35px;
		font-size: 24px;
	}
	section {
		display: none;
	}
	#main {
		height: 90px;
	}
	#main:after {
		text-align: center;
		content: "What is this ? A browser for ants ?";
	}
	#contact {
		position: fixed;
		bottom: 20px;
	}
}
@media (min-width: 250px) and (max-width: 900px) {
	.picots {
		width: 320px;
		padding: 6px;
	}
	.picot {
		width: 20px;
		height: 15px;
	}
	.picot:first-child {
		margin-left: 4px;
	}
	.picot:last-child {
		margin-right: 15px;
	}
	.opener,
	.closer {
		height: 21px;
		line-height: 35px;
		font-size: 30px;
	}
	#main {
		width: 320px;
	}
}
@media (min-width: 900px) {
	.picots {
		width: 400px;
		padding: 6px;
	}
	.picot {
		width: 24px;
		height: 15px;
	}
	.picot:first-child {
		margin-left: 8px;
	}
	.picot:last-child {
		margin-right: 6px;
	}
	.opener,
	.closer {
		height: 27px;
		line-height: 27px;
		font-size: 30px;
	}
	#main {
		height: 650px;
		width: 840px;
	}
	section + section {
		margin-top: 26px;
	}
	#c1,
	#c2 {
		width: 49%;
	}
	#c1 {
		float: left;
	}
	#c2 {
		float: right;
	}
}
