@font-face {
	font-family: 'Calibri';
	src: url('./fonts/Calibri.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Rockwell';
	src: url('./fonts/Rockwell.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

a {
	color: black;
}

body, html {
	color: black;
	font-size: 12pt;
	position: relative;
	text-align: justify;
}

article.page-break {
	height: 297mm;
	position: relative;
	overflow: hidden;
	width: 210mm;
}

article.page-padding {
	padding: 0.75in;
}

article#page1 > header {
	display: flex;
	justify-content: space-between;

	& > div#comms {
		display: flex;
		flex-direction: column;
		gap: 1mm;

		& > div {
			align-items: center;
			display: flex;
			gap: 4mm;
			justify-content: end;

			& > img {
				height: 11pt;
				width: 11pt;
			}
		}
	}
}

.hr-margin {
	margin-bottom: 5mm;
	margin-top: 5mm;
}

.hr-thick {
	border: 1px solid black;
}

.hr-thin {
	border: none;
	border-bottom: 1px solid black;
}

.font-calibri {
	font-family: 'Calibri';
}

.font-rockwell {
	font-family: 'Rockwell';
}

.uppercase {
	text-transform: uppercase;
}

div.experience-heading {
	align-items: baseline;
	display: flex;
	gap: 5mm;
	justify-content: space-between;
}

ul.experience-list {
	list-style-type: square;
	margin-left: 4mm;

	& > li {
		margin-top: 4pt;

		& > span:first-child {
			font-weight: bolder;
		}
	}
}

footer.page-number {
	font-size: small;
	right: 0.75in;
	bottom: 0.4in;
	position: absolute;
}

a.external-link {
	display: inline-flex;
	gap: 4pt;

	& > svg {
		height: 1rem;
		width: 8pt;
	}
}

div#skill-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 5mm;

	& > div {
		align-items: center;
		display: flex;
		gap: 0.5rem;

		& > img {
			width: 1.2rem;
		}

		& > p {
			font-size: large;
		}
	}
}
