html {
	min-height: 100%;

	--line-color: #fff;
	--accent-color: #ff9933;
	--card-width: 130px;
	/* 250px; */
	--card-height: auto;  
	/* 120px; 320px; */
	--font-primary: 'Playfair Display', sans-serif;
	/* --font-secondary: 'Open Sans', sans-serif; */
	--font-secondary: "Nunito Sans", sans-serif;
	--color-dark-primary: #292030;

}

body {
	background: linear-gradient(to bottom, #3a2b44, #455277);
	background-repeat: no-repeat;
	background-attachment: fixed;
	color: #ffffff;
	font-family: var(--font-primary);
	padding: 0;
	margin: 0;
}

@media (max-width: 576px) {
	main, footer {
		margin: 0 2rem;
	}
}

/* Small devices (tablets, 576px and up) */
@media (min-width: 576px) {
	main, footer {
		margin: 0 10%;
	}
	footer {
		margin-top: 2rem;
	}
}

/* Medium devices (laptops, 768px and up) */
@media (min-width: 768px) {}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {}

/* header {
	align-items: center;
	display: flex;
	justify-content: space-between;
} */

header {
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	border-bottom: 1px solid var(--line-color);
	background: #f5f5f7;
	/* height: 3.5rem; */
	align-items: center;
	display: flex;
	justify-content: space-between;
	font-family: var(--font-secondary);
	
	padding: 1rem;
}
header, header a {
	color: var(--color-dark-primary);
	text-decoration: none;
	font-weight: bold;
}
header a:hover {
	color: var(--color-dark-primary);
	text-decoration: underline;
}
h1 {
	font-size: 1.5rem;
	margin: 0;
}
header nav ul {
	margin: 0;
	padding: 0;
  display: flex;
	list-style-type: none;
}
header nav ul li {
	display: inline;
}
header nav ul li:not(:last-child) {
  margin-right: 8px;
  padding-right: 8px;
  border-right: 2px solid;
}
/*h12 {*/
/*	width: 100%;*/
/*	display: table;*/
/*	text-align: center;*/
/*	font-size: 2em;*/
/*	height: 180px;*/
/*	line-height: 180px;*/
/*	margin-bottom: 0;*/
/*}*/

/*h12 > span {*/
/*	display: table-cell;*/
/*	vertical-align: middle;*/
/*}*/

h1 {
	/*width: 100%;*/
	/*display: table;*/
	/*text-align: center;*/
	/*height: 180px;*/
	/*line-height: 180px;*/
	/*margin-bottom: 0;*/

}

h1 span {
	display: table-cell;
	vertical-align: middle;
}

p, h2 {
	line-height: 1.8em;
}

h3 {
	margin: 20px 0;
}

p {
	text-align: left;
}

h2 {
	padding: 40px 0 20px 0;
}

.avatar {
	border-radius: 50%;
	margin: 40px 40px 40px 0;
	height: 100px;
}



svg {
	width: 1.8em;
	height: 1.8em;
	fill: #fff;
	display: float;
}

svg:hover {
	fill: #ED1B60;
}



/*.portfolio {*/
/*	clear: both;*/
/*	*/
/*}*/
/*.portfolio:hover h3 {*/
/*	color: #ED1B60;*/
/*}*/
/*.portfolio img {*/
/*	float: left; */
/*	margin-right: 40px;*/
/*	margin-bottom: 20px;*/
/*}*/
/*.portfolio p {*/
/*	margin: 0;*/
/*}*/
a {
	color: #fff;
	font-weight: 500;
}

a:hover {
	color: #ED1B60;
}

a.holo-btn:hover .holo {
}

.holo {
	background-image: url('/themes/tyllyn/img/waves.png'), url('/themes/tyllyn/img/holofoil.png');
	background-blend-mode: overlay;
	background-attachment: scroll, fixed;
	width: 420px;
	height: 160px;
	border-radius: 0.75rem;
	margin: 1rem;
	text-align: center;
	color: #000;
	text-decoration: none;

	/*display: flex;*/
	/*align-items: center;*/

	align-content: center;
	display: block;
	font-size: 2.5rem;
	font-weight: bolder;
}
.holo > span {
	/*display: grid;*/
	/*place-items: center;*/
	/*height: 160px;*/
}
a.holo-btn {
	text-decoration: none !important;
}

.formal {
	font-family: var(--font-primary);
}


/** Headline Component **/
.headline {
	font-family: var(--font-primary);
	font-size: 4rem;
	text-align: center;
	margin: 2rem 0;
}
.headline p {
	text-align: center;
	margin: 1rem 0;
	line-height: 1.2em;
}
.subheadline {
	font-size: 2rem;
}


/** Timeline Component **/
.timeline {
	display: flex;
	flex-direction: column;
	font-family: var(--font-primary);
	font-size: 1.2rem;
	margin: 2rem 0;
}
.timeline .item {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	/* gap: 30px; */
	gap: 1rem;
}
.timeline .item .date {
	text-align: left;
	min-width: 200px;
	max-width: 200px;
}
.timeline .item .center {
	display: flex;
	align-items: center;
	flex-direction: column;
}
.timeline .item .center .dot {
	--size: .5rem;
	width: var(--size);
	height: var(--size);
	margin: calc((1rem - var(--size))/2);
	border-radius: 50%;
	background-color: var(--accent-color);
	flex-grow: 0;
}

.timeline .item .center .line {
	flex-grow: 1;
	margin: 8px 0;
	width: 2px;
	background-color: var(--line-color);
}

.timeline .item .info {
	display: flex;
	flex-direction: column;
	
}
.timeline .item .info article {
	display: flex;
	gap: 30px;
	width: 100%;
}
.timeline .item .info main {
	padding-bottom: 1rem;
	line-height: 1.5;
	margin: 0 1rem;
}

.timeline .item .info aside {
	/* text-align: left;
	margin-left: 1rem;
	flex: 1; */
	display: flex;
	align-items: center;
	flex-direction: column;
}

.timeline .item .info p {
	margin: 0;
	line-height: normal;
}
.timeline .item .info main h3 {
	margin: 0;
	display: inline;
}
.timeline .item .info main h4 {
	margin: 0;
	margin-top: 1rem;
	border-bottom: 1px solid var(--line-color);
	display: inline-block;
	font-weight: normal;
}
.timeline .item .info main .positions {
	margin: 1rem 0;
	margin-left: 40px;
}


/* Position */
.position strong {
	display: inline;
}
.position .position-date {
	display: inline;
	font-style: italic;
}


/* Portfolio List */
.portfolio-list {
	display: flex;
	flex-direction: row;
	gap: 30px;
	align-items: top;
	justify-content:  center;
	flex-wrap: wrap;
	font-family: var(--font-secondary);
}
.portfolio-list .item {
	background-color: var(--color-dark-primary);
	min-width: var(--card-width);
	max-width: var(--card-width);
	height: var(--card-height);
	border: 1px solid #8e78a0;
	border-radius: 12px;
	padding: 1rem;

	-webkit-box-shadow:0px 0px 8px 2px rgba(142,120,160,1);
	-moz-box-shadow: 0px 0px 8px 2px rgba(142,120,160,1);
	box-shadow: 0px 0px 8px 2px rgba(142,120,160,1);
}
.portfolio-list .item h3 {
	margin: 0;
	font-size: 1.1rem;
	text-align: center;
}

.projects {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.project-category {
	margin: 0 1rem;
	width: 240px;
}
.project-category h2 {
	border-bottom: 4px solid var(--accent-color);
	margin: 0;
	padding: 0;
	font-size: 1.8rem;
}
.project {
	margin: 1rem 0;
	display: block;
	/* min-width: 200px; */
}
.project h3 {
	margin: 0.5rem 0;
	padding: 0;
	font-size: 1rem;
	/*font-family: var(--font-secondary)*/
}



/* Webforms */
form.webform-submission-form {
	margin: 2rem 0;
}
.webform-type-textfield,
.webform-type-email {
	margin: 1rem 0;
}
.webform-type-textfield label,
.webform-type-email label {
	display: block;
}