/*******************
  TITLES
*******************/

.title > * {
	font-weight: 400;
	font-family: var(--titleFont);
}
.f-title {
  font-family: var(--titleFont);
}
.title.huge > * {
	font-size: 5em;
	line-height: 1.1em;
	font-weight: 400;
}
.title.big > * {
	font-size: 3.5em;
	line-height: 1.1em;
	font-weight: 400;
}
.title.medium > * {
	font-size: 3em;
	line-height: 1.1em;
	font-weight: 400;
}
.title.small > * {
	font-size: 1.5em;
	line-height: 1.25em;
	font-weight: 400;
}
.title.tiny > * {
	font-size: 1.25em;
	line-height: 1.3em;
}
.title.thin > * {
	font-weight: 400;
}
.title.light > * {
	font-weight: 200;
}
.title.strong > * {
	font-weight: 700;
}


.title.boxed {
	display: inline-block;
	padding: 0.125em 1.5em 0.33em 1.5em;
	border-radius: 9999px;
	background-color: var(--color2);
}
.title.boxed.white-boxed {
	background-color: #fff;
}

.title.underlined > * {
	text-decoration: underline;
}

.title > * span {
	position: relative;
	color: var(--color1);
}
.title.animated > * span::before {
	content: '';
	position: absolute;
	top: calc(100% - 2px);
	left: 0;
	width: 0;
	height: 2px;
	background-color: currentColor;
	transition: 0.3s;
}
.title.animated > * span::before {
	width: 100%;
}

.pretitle > * {
	z-index: 1;
	position: relative;
	display: inline-block;
	font-family: var(--defaultFont);
	font-size: 1.2em;
	line-height: 1.2em;
	text-transform: uppercase;
	font-weight: 400;
}
.pretitle > *::after {
	content: '';
	z-index: -1;
	position: absolute;
	top: auto;
	bottom: -0.1em;
	left: -1em;
	right: 100%;
	height: 0.7em;
	width: auto;
	background-color: var(--color2);
	transition: 0.3s;
}
.reveal .pretitle > *::after {
	right: 0;
}


.pretitle + .text,
.text + .text,
.title + .text {
	margin-top: 1.5em;
}
.pretitle + .title,
.title + .title {
	margin-top: 1em;
}

@media screen and (max-width:1600px) {
	.title.huge > * { font-size: 4.75em; }
}
@media screen and (max-width:1400px) {
	.title.huge > * { font-size: 4.5em; }
	.title.big > * { font-size: 3em; }
}
@media screen and (max-width:1200px) {
	.title.huge > * { font-size: 4em; }
	.title.big > * { font-size: 3em; }
	.title.medium > * { font-size: 2.25em; }
}
@media screen and (max-width: 1000px) {
	.title > * { text-wrap: balance; }
	.title > * br { display: none; }
}
@media screen and (max-width:600px) {
	.title > * {
		hyphens: auto;
	}
	.title.huge > * { font-size: 3.75em; }
	.title.big > * { font-size: 2.75em; }
	.title.medium > * { font-size: 2em; }
	.title.small > * { font-size: 1.5em; }
	.title.tiny > * { font-size: 1.125em; }
}
@media screen and (max-width:400px) {
	.title.huge > * { font-size: 3.5em; }
	.title.big > * { font-size: 2.875em; }
	.title.medium > * { font-size: 1.875em; }
	.title.small > * { font-size: 1.375em; }
	.title.tiny > * { font-size: 1.1em; }
}