@charset "utf-8";

/*
	http://meyerweb.com/eric/tools/css/reset/
	v2.0 | 20110126
	License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/** Site styles */
html {
	background: #fff;
}
body {
	color: #111;
	font-family: "Trebuchet MS", arial;
	font-size: 12px;
	padding: 0 1rem;
}
p, ul, ol, h4 {
	line-height: 1.4;
	margin: 0.75rem 0;
}
ul, ol {
	margin: 0 0 0 1.5rem;
}
ul:not(:first-child), ol:not(:first-child) {
	margin-top: 0.5rem;
}
h1 {
	font-size: 300%;
}
h2 {
	font-size: 200%;
	margin: 0 0 0.5rem 0;
}
h3 {
	font-size: 150%;
	font-style: italic;
	font-weight: bold;
}
h4 {
	font-size: 95%;
	font-style: italic;
	opacity: 0.6;
}
h5 {
	font-size: 120%;
	font-style: italic;
}
h3:first-child,
h4:first-child,
h5:first-child {
	margin-top: 0;
}
a {
	color: #22f;
	text-decoration: none;
}
h4 + h3 {
	margin-top: 0;
}
h3 + p {
	margin-top: 0;
}
p + ul {
	margin-bottom: 1rem;
	margin-top: -0.25rem;
}
em {
	font-style: italic;
	opacity: 0.8;
}
header {
	clear: both;
}
main li {
	list-style: disc;
}
main > section {
	margin: 1rem 0;
}
main > section + section {
	margin: 3rem 0 1rem 0;
}
footer {
	margin: 0.75rem 0 1rem;
}

.page {
	border-top: 2px solid #ccc;
	margin-top: 2rem;
	padding-top: 2rem;
}
.page > * {
	vertical-align: top;
}

.note {
	font-style: italic;
}

.social {
	display: none;
}

#container {
	margin: 0 auto;
	max-width: 780px;
	padding: 3rem;
}

#container > header {
	padding: 1rem 0;
	position: relative;
}
#container > header h2 {
	opacity: 0.5;
}
#container > header ul {
	margin-top: 3rem;
}
#container > header img {
	float: left;
	margin-right: 0.5rem;
}
#container > header ul span {
	color: #555;
	padding-right: 0.5rem;
}

#intro p {
	line-height: 1.2;
}

/* TECHNICAL */
#technical > article {
	display: grid;
	gap: 2rem;
	grid-template-columns: 7fr 5fr;
	/* grid-template-columns: 1fr 1fr; */
}
#technical h3 {
	font-size: 140%;
	font-style: normal;
	font-weight: 400;
	margin: 1rem 0 0.25rem 0;
}
#technical h3:first-child {
	margin: 0 0 0.25rem 0;
}

/* PORTFOLIO */
#portfolio h3 {
	margin-bottom: 0;
}

/* WORK HISTORY */
/* #work-history > section > article:not(:last-child) { */
#work-history > section > article {
	border-bottom: 1px solid #ccc;
	margin-bottom: 2rem;
	padding-bottom: 1rem;
}

.job {
	display: grid;
	gap: 2rem;
	grid-template-columns: 7fr 5fr;
}
.the-role p + ul {
	margin-top: -0.5rem;
}
.the-role ul {
	margin-top: 0.1rem;
}
.the-role header h3 {
	font-size: 150%;
}
.the-role header h4 {
	font-size: 150%;
	margin: 0;
}
.the-role .timeline {
	float: right;
	font-style: italic;
	margin-top: 0.4rem;
}

#references {
	display: none !important;
}
#references > article {
	display: grid;
	gap: 1rem;
	grid-template-columns: 4fr 8fr;
}
#references h4 {
	font-size: 140%;
	margin: 0;
}
.timeline {
	font-style: italic;
	float: right;
}

#references article + article {
	border-top: 1px solid #ccc;
	margin-top: 2rem;
	padding-top: 2rem;
}

.accomplishments h5 {
	font-size: 150%;
	font-style: italic;
	margin-bottom: 0.5rem;
	opacity: 0.5;
}
.accomplishments h4 {
	color: black;
	font-size: 130%;
	font-weight: bold;
	line-height: 1.2;
	margin: 0;
	opacity: 0.8;
}
.accomplishments h4 + p {
	margin-top: 0;
}
.accomplishments p + p {
	margin: -0.3rem 0 0.5rem;
}
/* .accomplishments article {
	border-left: 1px solid #ccc;
	padding-left: 1rem;
} */

@media print, (min-width: 630px) {
	#container > header {
		padding-bottom: 4rem;
	}
	#container > header ul {
		margin-top: 0.5rem;
		position: absolute;
		right: 0;
		text-align: right;
		top: 1rem;
	}
}

@media print, (min-width: 960px) {
	#container {
		box-shadow: 0 2px 5px #000;
	}
	.page {
		border-top: none;
		margin-top: 2rem;
		padding-top: 0;
	}
	/*
	.page > * {
		display: inline-block;
		padding-left: 210px;
	}
	.page > header {
		margin-left: -210px;
		max-width: 210px;
		position: absolute;
		width: 185px;
	}
	*/

	.page {
		display: grid;
		gap: 1rem;
		/* grid-template-columns: 190px 1fr; */
	}
}


@media print {
	#container {
		box-shadow: none;
		padding: 0;
	}
	.page {
		/* padding-top: 2rem; */
		/* page-break-inside: avoid;
		break-inside: avoid; */
		/* break-before: page; */
	}
	.break {
		/* page-break-before: always; */
		page-break-inside: avoid;
		break-inside: avoid;
	}
	article {
		/* page-break-inside: avoid;
		break-inside: avoid; */
	}
	a {
		color: black;
		text-decoration: none;
	}
}
