/*
 *	Dysometric theme by Luis Glez
 *  hello@dysometric.com
*/

@charset "UTF-8";

* {
	font-family: ui-rounded, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 18px;
	line-height: 1.54;
	font-weight: normal;
	letter-spacing: normal;
	color: #333;
	text-rendering: optimizeLegibility;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

:root {
	--title-color: #3c3c3c;
    --text-color: #333;
    --text-color2: #999;
    --bg-color: #fff; /* f5f6f8 */
    --img-opacity: 1.0;
    --link-color: #007bff;
    --link-hover-color: #000000;
	--red: #d72b30;
	--orange: #ff8c04;
	--blue: #00e9ff;
	--green: #00eebb;
	--gray: #8c8c8c;
	--black: #3c3c3c;
	--lightblue: #fafaff;
	--lightgreen: #fafffa;
	--lightyellow: #fffffa;
	--lightred: #ff5522;
	--lightwhite: #eaeaea;
	--lightgray: #dfdfdf;
}

@media (prefers-color-scheme: dark) {
	:root {
		--title-color: #e6e6ef;
	    --text-color: #c2c2cb;
	    --text-color2: #a6a6af;
	    --bg-color: #202529;
	    --img-opacity: 1.0;
	    --link-color: #028fa3;
	    --link-hover-color: #fff;
		--red: #c61b21;
		--orange: #ee7c01;
		--blue: #00a9dd;
		--green: #117975;
		--gray: #76767f;
		--black: #eaeaea;
		--lightblue: #2a2a34;
		--lightgreen: #2a342a;
		--lightyellow: #342a2a;
		--lightred: #342a2a;
		--lightwhite: #303438;
		--lightgray: #36363f;
	}
}

@font-face {
	font-family: "Code";
	src: url("./fonts/SourceCodePro-Regular.ttf");
}

html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	overflow: hidden;
	height: 100%;
}

body {
	height: 100%;
	overflow: auto;
	background-color: var(--bg-color);
	color: var(--text-color);
	font-size: 18px;
	line-height: 1.6;
	font-synthesis: none;
	-webkit-font-smoothing: antialiased !important;
}

img { 
	opacity: var(--img-opacity); 
}

p { 
	margin: 0 0 26px; 
	color: var(--text-color); 
}

a { 
	color: var(--link-color); 
	cursor: pointer; 
	text-decoration: none; 
	font-size: inherit;
}

a:hover { 
	color: var(--link-hover-color); 
}

b, strong { 
	font-weight: bold;
	font-size: inherit;
	color: var(--text-color); 
}

h1, h2, h3, h4, h5, h6 { 
	color: var(--title-color); 
	font-weight: bold;
	line-height: 1.3;
}

h3 { 
	font-size: 28px; 
	margin-bottom: 16px; 
}

h4 { 
	font-size: 22px; 
	margin-bottom: 8px;
}

/* --- WRAPPERS --- */

.grid {
	display: grid;
	grid-gap: 15px;
	grid-template-columns: 1fr 1fr;
	width: 100%;
}

.grid-inner {
	display: grid;
	grid-gap: 30px;
	grid-template-columns: 1fr 1fr;
}

.tercio-wrapper {
	display: flex;
	width: 95%; 
	max-width: 1200px; 
	margin: 0 auto;
}

.tercio {
	display: flex;
	align-items: center;
	width: 100%;
	background: transparent;
	padding: 40px 40px 35px;
	border-radius: 5px;
}

.tercio .wide {
	display: block;
}

.tercio .mobile { 
	display: none; 
	text-align: center; 
	margin-top: 30px;
}

.tercio picture {
	text-align: right;
}

.tercio .texto { 
	display: flex;
	flex-wrap: wrap;
	align-content: center;
}

.tercio .texto h3, 
.tercio .texto h3 strong,
.tercio .mobile h3,
.tercio .mobile h3 strong { 
	font-size: 28px;
	margin: 0 0 5px; 
	letter-spacing: normal;
	line-height: 1.3;
	color: var(--title-color);
	width: 100%;
}

.tercio .texto h3 strong, 
.tercio .mobile h3 strong { 
	color: var(--text-color);
	letter-spacing: normal; 
	font-weight: normal; 
}

.tercio .mobile h3 { 
	margin-bottom: 0;
}

.tercio .mobile .texto {
	margin-bottom: 0;
	padding-bottom: 0;
}

.tercio .texto p {
	max-width: 200px;
	width: 85%;
	line-height: 1.4; 
	color: var(--text-color);
	font-size: 17px;
}

.tercio span { 
	color: #008bac; 
	font-size: 15px;
}

.tercio a:hover span { 
	color: #006b8c; 
}

.tercio.orange *,
.tercio.orange .mobile * { 
	color: #fafafa !important; 
}

.tercio.blue *,
.tercio.blue .mobile * {
	color: #3c3c3c !important;
}

/* --- COLORS --- */

.tercio.blue { 
	background: var(--blue); 
	/*border: 1px solid #00d9ef;*/
}

.tercio.orange { 
	background: var(--orange); 
}

.tercio.gray {
	background: var(--lightgray);
}

.tercio.red {
	background: var(--lightred);
}

.tercio.white {
	background: var(--lightwhite);
}

.tercio.black {
	background: var(--black);
}

.tercio.green {
	background: var(--green);
}

@media screen and (max-width: 1000px) {
	.grid { 
		grid-template-columns: 1fr;
	}
	
	.grid-inner {
		grid-gap: 60px;
	}
	
	.tercio { 
		justify-content: center; 
		align-content: center; 
		align-items: center;
	}
	
	.tercio#blog {
		justify-content: left; 
		align-content: left; 
		align-items: left;
	}
	
	.tercio .texto.wide h3 {
		font-size: 28px;
	}
}

@media screen and (max-width: 650px) {
	.tercio picture { 
		text-align: center;
		margin-bottom: 25px;
	}
	
	.grid-inner { 
		grid-template-columns: 1fr;
		grid-gap: 15px;
	}
	
	.tercio .wide { 
		display: none; 
	}
	
	.tercio img { 
		float: none; 
	}
	
	.tercio .texto {
		margin: 10px auto 30px; 
		justify-content: center; 
		text-align: center; 
		width: 80%;
	}
	
	.tercio .texto p { 
		margin-top: 4px; 
		font-size: 18px;
	}
	
	.tercio .mobile { 
		display: block; 
	}
	
	.tercio .texto h3 { 
		display: none; 
	}
}

@media screen and (max-width: 450px) {
	.tercio-wrapper {
		width: 100%;
	}
	
	.tercio {
		border-radius: 0;
		margin: 0;
	}
	
	.grid, .grid-inner { 
		grid-gap: 1px; 
	}
	
	.tercio.gray, .tercio.white {
		justify-content: left; 
		align-content: left; 
		align-items: left;
	}
	
	.about-image { 
		display: none; 
	}
}

.tercio a { 
	text-decoration: none; 
}

/* --- IMAGES --- */

img#appicon { 
	width: 82px; 
	height: 82px; 
	margin-bottom: 18px; 
}

img#appicon2 { 
	width: 80px; 
	height: 80px; 
	margin-bottom: 18px; 
}

img#aviofuel, 
img#vitalsigns { 
	max-width: 300px; 
	width: 100%; 
	opacity: var(--img-opacity); 
}

img#aviofuel { 
	max-width: 300px; 
}

.about-text {
	max-width: 450px;
}

.about-text p {
	font-size: 15px;
	line-height: 1.5;
}

.about-image img {
	float: left;
	width: 80px;
	height: auto;
	object-fit: contain;
	align-self: flex-start;
	margin: 20px 35px 18px 0;
	border: 2px solid #fff;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.44);
	-moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.44);
	box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.44);
}

.social-links {
	margin: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

ul.social { 
	list-style: none; 
	list-style-type: none; 
	display: flex;
	flex-direction: row;
	justify-content: center;
	text-align: center;
}

ul.social li { 
	float: left;
	margin-left: 15px;
	margin-right: 15px; 
}

ul.social li a {
	color: var(--text-color2);
	font-size: 15px;
}

img#mail {
	width: 20px; 
	height: 16px;
	margin-right: 4px;
	vertical-align: text-bottom;
	opacity: 0.7;
}

@media (prefers-color-scheme: dark) {
	img#mail {
		filter: invert();
	}
}

img#twitter { 
	width: 20px; 
	height: 16px;
	margin-right: 2px;
	vertical-align: middle;
	filter: grayscale();
	opacity: 0.7;
}

img#mastodon {
	width: 20px;
	height: auto;
	margin-right: 2px;
	vertical-align: middle;
	filter: grayscale();
	opacity: 0.7;
}

ul.social li a:hover {
	color: var(--link-hover-color);
}

li a:hover img#twitter, 
li a:hover img#mastodon {
	filter: none;
	opacity: 1.0;
}

li a:hover img#mail {
	filter: invert();
	opacity: 1.0;
}

@media (prefers-color-scheme: dark) {
	li a:hover img#mail {
		filter: none;
	}
}

/* HEADER & FOOTER */

.header { 
	width: 100%; 
	background: var(--bg-color);
}

footer { 
	margin: 50px auto 30px; 
	float: left; 
	width: 100%; 
}

/* --- LOGO --- */

.main-logo { 
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 40px;
	padding-bottom: 40px;
}

.main-logo a { 
	text-decoration: none; 
}

.main-logo img { 
	display: inline-block;
	float: left;
	width: 40px; 
	height: 40px; 
	margin-right: 14px;
	margin-top: 1px;
}

.title {
	font-family: ui-monospace, "Code", "Courier New", sans-serif;
	font-weight: 500; 
	font-size: 20px;  
	line-height: 36px;
	letter-spacing: 1px;
	color: var(--title-color);
}

.subtitle { 
	font-weight: bold; 
	font-size: 10px; 
	line-height: 1.0;
	clear: left;
	margin: 0;
	padding: 6px 0 0;
	letter-spacing: 5px; 
	color: var(--text-color2);
	text-align: center;
	text-transform: uppercase;
}

/* --- SPACERS --- */

.spacer, .spacer.x2, .spacer.x3 { 
	display: block; 
	position: relative; 
	float: none; 
	width: 100%;
}

.spacer { 
	height: 25px; 
}

.spacer.x2 { 
	height: 50px; 
}

.spacer.x3 { 
	height: 75px; 
}





