:root {
	--bold:#130238;
	--black:#2d303f;
	--grey:#6b6a6a;
	--whitegrey:#cbcbcb;
	--white:#f5f5f5;
	
	--red:#bf3146;
	
	--purple:#310b89;
	/* --lilac:#8365ba; */
	--lilac: #946CD0;
}


html, body{
	background:var(--white);
	font-family:"Oswald", sans-serif;
	font-weight:300;
	letter-spacing:0;
	padding:0;
	margin:0;
	color:var(--black);
	overflow-x:hidden;
}
html.lock, body.lock {
	overflow:hidden;
}

body {
	margin-top:270px;
	transition:all .2s ease-in-out;
}


@media(max-width:1200px) {
	html, body{
		overflow-x:auto;
	}
	
	body {
		margin-top:225px;
		overflow-x:hidden;
	}
}

@media(max-width:991px) {
	body {
		margin-top:185px;
	}
	body.has-share {
		margin-bottom:32px;
	}
}

@media(max-width:767px) {
	body {
		margin-top:142px;
	}
}

a, button, a:hover, button:hover, a:focus, button:focus {-moz-transition:all ease-in-out .2s;-webkit-transition:all ease-in-out .2s;transition:all ease-in-out .2s; text-decoration:none; cursor:pointer; color:currentColor}
a:focus, button:focus, input:focus, a:active, button:active, input:active, textarea:focus, select:focus {outline:none; box-shadow:none;}

input::placeholder, input::-webkit-placeholder {
	color:currentColor;
}
input:-ms-input-placeholder {
	color:currentColor;
}

.container {
	position:relative;
	width:100%;
	padding:0 20px;
}

@media(min-width:1200px) {
	.container {
		max-width:1310px; /* 1270 + 40 padding */
	}
	
	.container.container-sm {
		max-width:840px; /* 800 + 40 padding */
	}
}


/****************************/
/********** HEADER **********/
/****************************/

header {
	position:fixed;
	top:0;left:0;
	width:100%;
	height:270px;
	padding:80px 0;
	font-size:0;
	z-index:10;
	background-image:url(../img/blog-header-bg.jpg);
	background-position:center;
	background-size:cover;
	transition:all .2s ease-in-out;
}
body.header-sm header {
	height:150px;
	padding:40px 0;
}

header > .upper {
	position:absolute;
	top:35px;
	right:50px;
	height:39px;
	display:flex;
	align-items:center;
	margin:0 -25px;
	z-index:2;
}
header > .upper > div {
	padding:0 25px;
}

body.header-sm header > .nav {
	height:90px;
	padding:20px 50px 20px 20px;
}

/********** Logo **********/

header .container, header .container img {
	height:100%;
	transition:all .2s ease-in-out;
}

/********** Language **********/

header .language {
	line-height:39px;
	height:100%;
	position:relative;
	transition:all .2s ease-in-out;
}

header .upper .language img {
	width:17px;
	height:17px;
	margin-right:20px;
}

header .upper .language span,
header .upper .language a {
	font-family:"Ubuntu";
	font-weight:500;
	font-size:.75rem;
	color:white;
	text-transform:uppercase;
	display:inline-block;
	position:relative;
	vertical-align:middle;
	opacity:.5;
}
header .upper .language span {
	padding:0 17px;
	opacity: 1;
}
header .upper .language a.selected,
header .upper .language a:hover {
	opacity: 1;
}

header .upper .language > div {
	position:absolute;
	top:100%;left:0;
	width:100%;
	height:100%;
	background-color:var(--bold);
	text-align:center;
	max-height:0;
	overflow:hidden;
	z-index:2;
	transition:all .2s ease-in-out;
}
header .upper .language > div a {
	padding:0;
}
header .upper .language:hover > div {
	max-height:100%;
}

/********** Font sizes **********/

header .upper .sizes {
	margin:0 -10px;
}

header .upper .sizes > div {
	font-family:"Ubuntu";
	font-weight:400;
	color:white;
	font-size:.75rem;
	text-transform:uppercase;
	cursor:pointer;
	display:inline-block;
	padding:0 10px;
}
header .upper .sizes > div:last-of-type {
	opacity:.5;
}
header .upper .sizes > div > span {
	font-size:150%;
}

header .upper .sizes > div > sup {
	top:-1em;
}

/********** Top links list **********/

header .upper .list {
	height:100%;
	position:relative;
	margin:0 -15px;
}

header .upper .list a {
	font-size:.75rem;
	letter-spacing:.05em;
	color:white;
	text-transform:uppercase;
	display:inline-block;
	padding:0 15px;
	vertical-align:middle;
	line-height:39px;
	position:relative;
	text-align:center;
}
header .upper .list.home a {
	font-size:0;
}
header .upper .list.home a.active::after {
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	height:55px;
	width:55px;
	border-radius:100%;
	background-color:var(--bold);
	z-index:-1;
}

header .upper .list a img {
	display:inline-block;
	width:18px;
	margin-right:10px;
	transform:translateY(-10%);
	vertical-align:middle;
}
header .upper .list.home a img {
	transform:none;
	margin:0;
}

@media(max-width:1200px) {
	header {
		padding-bottom:60px;
		height:225px;
	}
}

@media(max-width:991px) {
	header {
		height:auto;
		padding:80px 0 40px;
	}
	body.header-sm header {
		height:auto;
		padding:80px 0 0;
	}
	
	header .container img {
		max-width:300px;
		display:block;
		margin:auto;
	}
	body.header-sm header .container img {
		max-width:0;
	}
	
	header > .upper {
		top:0;
		left:0;right:auto;
		margin:0;
		display:flex;
		width:100vw;
		margin-top:13px;
	}
	header > .upper > div {
		flex:1;
		text-align:center;
		padding:0 10px;
	}
	
	header .upper .list {
		margin:0;
	}
	header .upper .list:first-of-type a img {
		width:21px;
	}
}

@media(max-width:767px) {
	header {
		padding:70px 0 25px;
	}
	body.header-sm header {
		padding:70px 0 0;
	}
	header .container img {
		max-width:220px;
	}
}


/**********************************/
/********** BLOG LISTING **********/
/**********************************/

.content {
	padding:115px 0 100px;
	min-height:calc(100vh - 270px - 118px);
}
.content.blog-listing {
	padding-bottom:65px;
}

.content .row {
	margin:-25px;
}
.content .row > div {
	padding:25px;
}
.content.blog-content .row > div:first-of-type {
	padding-right:55px;
}


@media(max-width:991px) {
	.content, .content.blog-listing {
		padding:40px 0;
	}
	
	.content {
		min-height:calc(100vh - 185px - 118px);
	}
	.content.blog-listing {
		min-height:calc(100vh - 223px - 118px);
	}
}

@media(max-width:767px) {
	.content, .content.blog-listing {
		padding:40px 0;
	}
	
	.content .row {
		margin:-10px;
	}
	.content.blog-content .row > div:first-of-type {
		padding-right:10px;
	}
}


/****************************************/
/********** BLOG LISTING ITEMS **********/
/****************************************/

.blog-listing .row .row {
	display:flex;
    flex-wrap:wrap;
    flex-direction:column;
}
.blog-listing .row .row .item {
    flex:none;
}
.blog-listing .row .row .item:nth-child(odd) {
    order:1;
}
.blog-listing .row .row .item:nth-child(even) {
    order:2;
}

.item > div {
	cursor:pointer;
	box-shadow:0 10px 25px 0 rgba(35,31,32,.1);
	transition:all .2s ease-in-out;
}
.item > div:hover {
	box-shadow:0 10px 25px 0 rgba(35,31,32,.3);
}

.item .image {
	padding-top:49.74%;
	height:0;
	position:relative;
}
.item .image img {
	position:absolute;
	min-width:100%;
	min-height:100%;
	top:50%;
	left:50%;
	transform:translateX(-50%) translateY(-50%);
	filter:gray;
	filter:grayscale(1);
	-webkit-filter:grayscale(100%);
	transition:all .2s ease-in-out;
}
.item > div:hover .image img {
	filter:none;
	-webkit-filter:none;
}

.item .description {
	padding:35px 40px;
	background-color:white;
}

.content .tag {
	display:block;
	margin-top:50px;
	font-size:.875rem;
	font-weight:bold;
	color:#6b6a6a;
	text-transform:uppercase;
}
.item .description .tag {
	margin-top:0;
	margin-bottom:15px;
}
.content .tag a {
	color:var(--red);
	border-bottom:1px dotted transparent;
}
.content .tag a:hover {
	border-bottom:1px dotted currentColor;
}

.content .author {
	display:block;
	font-size:1rem;
	font-weight:300;
	color:#5e5e5e;
}

.corner {
	position:relative;
}
.corner::before {
	content:"";
	position:absolute;
	bottom:0;right:0;
	width:0;height:0;
	border-bottom:80px solid var(--red);
	border-left:80px solid transparent;
}

.corner .corner-icon {
	position:absolute;
	bottom:15px;right:15px;
	width:20px;height:15px;
	background-size:contain;
	background-repeat:no-repeat;
	transition:all .2s ease-in-out;
}
.item > div:hover .corner .corner-icon {
	transform:translateX(5px);
}

.corner svg.corner-icon path {
	fill:white
}

@supports(mix-blend-mode: multiply) {
	.banner .image img {
		width:100%;
		height:100%;
		object-fit:cover;
	}
}


@media(max-width:991px) {	
	.item .description {
		padding:30px 20px;
	}
	
	.content .tag {
		font-size:.75rem;
		margin-top:25px;
	}
	
	.blog-listing .row {
		margin:-10px;
	}
	.content .row > div {
		padding:10px;
	}
	
	.corner::before {
		border-bottom:60px solid var(--red);
		border-left:60px solid transparent;
	}
	.corner .corner-icon {
		bottom:10px;right:10px;
		width:15px;height:12px;
	}
}

@media(max-width:767px) {
	.blog-listing .row .row .item:nth-child(odd), .blog-listing .row .row .item:nth-child(even) {
		order:1;
	}
}


/********************************************************/
/********** BLOG NAV / BLOG LISTING PAGINATION **********/
/********************************************************/

.blog-nav {
	padding:90px 0 100px;
}

.blog-nav .pagination ul {
	display:block;
	text-align:center;
	list-style:none;
	font-size:0;
	padding:0;
	margin:0 auto;
}
.blog-nav .pagination ul li {
	font-family:inherit;
	font-size:1.5rem;
	font-weight:300;
	color:var(--lilac);
	line-height:1;
	display:inline-block;
}
.blog-nav .pagination ul li.prev {
	margin-right:10px;
}
.blog-nav .pagination ul li.next {
	margin-left:10px;
}
.blog-nav .pagination ul li::before {
	content:normal;
}
.blog-nav .pagination ul li a, .blog-nav .pagination ul li.ellipsis {
	padding:0 9px;
	display:inline-block;
}
.blog-nav .pagination ul li a:hover, .blog-nav .pagination ul li a:focus, .blog-nav .pagination ul li.active a {
	color:white;
}

.blog-nav .pagination ul li img {
	width:18px;
	position:relative;
    top:-2px;
	pointer-events:none;
}
.blog-nav .pagination ul li.disabled img {
	opacity:.2;
}
.blog-nav .pagination ul li.prev img {
	transform:rotate(180deg);
}

.blog-nav .container .row > div:nth-of-type(2) {
	text-align:center;
}
.blog-nav .container .row > div:last-of-type {
	text-align:right;
}

.blog-nav .container .row > div a {
	font-size:.875rem;
	font-weight:500;
	text-transform:uppercase;
	position:relative;
	padding-right:2.25em;
	color:white;
}
.blog-nav .container .row > div a img {
	width:1.05em;
	height:.875em;
	position:absolute;
	top:0;bottom:0;
	right:0;
	margin:auto;
	transition:all .2s ease-in-out;
	will-change:transform;
}
.blog-nav .container .row > div a.reverse {
	padding-left:2.25em;
	padding-right:0;
}
.blog-nav .container .row > div a.reverse img {
	left:0;
	right:auto;
	transform:rotate(180deg);
}

.blog-nav .container .row > div a.nopadd {
	padding:0;
}

.blog-nav .container .row > div a:hover, .blog-nav .container .row > div a:focus  {
	opacity:.5;
}
.blog-nav .container .row > div a:hover img, .blog-nav .container .row > div a:focus img  {
	transform:translateX(5px);
}
.blog-nav .container .row > div a.reverse:hover img, .blog-nav .container .row > div a.reverse:focus img  {
	transform:rotate(180deg) translateX(5px);
}


@media(max-width:991px) {
	.blog-nav {
		padding:50px 0;
	}
	
	.blog-nav .pagination ul li {
		font-size:1.25rem;
	}
	
	.blog-nav .row {
		margin:-10px;
	}
	.blog-nav .row > div {
		padding:10px;
	}
	
	.blog-nav .container .row > div a {
		font-size:.75rem;
	}
}

@media(max-width:767px) {
	.blog-nav .row > div:first-child {
		order:1;
	}
	.blog-nav .row > div:nth-child(2) {
		order:3;
	}
	.blog-nav .row > div:last-child {
		order:2;
	}
}


/**********************************/
/********** BLOG SIDEBAR **********/
/**********************************/

.content .sidebar.fixed {
	position:fixed;
}

.content .sidebar > div {
	padding:45px 50px 55px;
	background-color:var(--bold);
	position:relative;
    z-index:2;
}
.content .sidebar > div.related {
	padding:0;
	margin-top:35px;
	background-color:transparent;
}

.content .sidebar h2 {
	color:white!important;
	margin-top: 0!important
}

.content .sidebar hr {
	margin:15px 0 20px;
	border-top:2px solid var(--red);
	width:65px;
}

.content .sidebar p {
	font-size:1rem;
	color:white;
}
.content .sidebar p .see-more {
	display:inline-block;
	width:20px;
	height:20px;
	background-color:var(--red);
	border-radius:100%;
	margin-left:5px;
	vertical-align:text-bottom;
	border:none;
	position:relative;
	will-change:transform;
}
.content .sidebar p .see-more:hover {
	transform:scale(1.1)
}
.content .sidebar p .see-more::before, .content .sidebar p .see-more::after {
	content:"";
	position:absolute;
	top:0;bottom:0;
	left:0;right:0;
	margin:auto;
	height:2px;
	width:12px;
	background-color:white;
}
.content .sidebar p .see-more::after {
	transform:rotate(90deg);
}

.content .sidebar .search {
	margin-top:30px;
}

.content .sidebar .search .search-wrapper {
	position:relative;
}

.content .sidebar .search input {
	padding:18px 23px;
	border:2px solid var(--purple);
	border-radius:50px;
	background-color:transparent;
	width:100%;
	font-size:.75rem;
	font-weight:300;
	letter-spacing:.04em;
	line-height:1;
	color:white;
	text-transform:uppercase;
}
.content .sidebar .search input + img {
	position:absolute;
	width:15px;
	height:15px;
	top:0;bottom:0;
	right:20px;
	margin:auto;
	cursor:pointer;
}

.content .sidebar .search .tags {
	margin:25px -5px -5px;
	font-size:0;
}
.content .sidebar .search .tags a {
	display:inline-block;
	position:relative;
	padding:10px 22px;
	font-size:.75rem;
	font-weight:300;
	letter-spacing:.05em;
	color:white;
	text-transform:uppercase;
	margin:5px;
}
.content .sidebar .search .tags a::before {
	content:"";
	position:absolute;
	top:0;bottom:0;
	left:0;right:0;
	background-color:var(--red);
	border-radius:40px;
	z-index:-1;
	will-change:transform;
	transition:all .2s ease-in-out;
}
.content .sidebar .search .tags a:hover::before {
	transform:scale(1.1);
}


.content .sidebar .related > h2 {
	color:#2d303f!important;
	text-align:center;
}
.content .sidebar .related hr {
	margin-left:auto;
	margin-right:auto;
	margin-bottom:40px;
}
.content .sidebar .related .item + .item {
	margin-top:50px;
}

@media(max-width:991px) {
	.content .sidebar > div {
		position:fixed;
		top:100%;
		left:0;
		width:100vw;
		z-index:10;
		height:100vh;
		padding:0;
	}
	.content .sidebar > div.sidebar-nav {
		top:auto;
		bottom:0;
		left:0;
		height:39px;
		background-color:black;
		padding:0;
	}
	body.has-share .content .sidebar > div.sidebar-nav {
		bottom:32px;
		z-index:9999999;
	}
	
	.content .sidebar > div > div {
		padding:15px;
		height:100vh;
		transition:all .2s ease-in-out;
		overflow:auto;
	}
	.content .sidebar .search {
		margin:0;
		background-color:var(--bold);
		display:flex;
		flex-direction:column;
		justify-content:center;
	}
	.content .sidebar > div > div.open, .content .sidebar > div.related.open {
		transform:translateY(-100%);
	}
	
	.content .sidebar > div.related {
		padding:20px 0 59px;
		background-color:#f8f8f8;
		margin:0;
		transition:all .2s ease-in-out;
		overflow:auto;
	}
	.content .sidebar > div.related > div {
		height:auto;
	}
	.content .sidebar .related .item + .item {
		margin:0;
	}
	.content .sidebar .related hr {
		margin-bottom:20px;
	}
	
	.content .sidebar > div.sidebar-nav > div {
		background-color:transparent;
		padding:0 10px;
		height:100%;
		font-size:.7rem;
		color:white;
		line-height:39px;
		text-align:center;
		text-transform:uppercase;
		transition:all .2s ease-in-out;
		flex:1;
	}
	.content .sidebar > div.sidebar-nav > div.active {
		color:var(--red);
	}
	
	.content .sidebar > div.sidebar-nav > div img {
		width:16px;
		margin-left:5px;
		position:relative;
		top:-2px;
	}
}


/**********************************/
/********** BLOG CONTENT **********/
/**********************************/

.content h1 {
	font-weight:300;
    color:#2d303f;
    margin:0;
	font-size:2.5rem;
	line-height:1.3;
	margin-bottom:25px;
}
.content.blog-about h1 {
	text-align:center;
	text-transform:uppercase;
	margin-bottom:60px;
}

.content ul.breadcrumbs {
	padding:0;
	margin:0;
	list-style:none;
	margin-bottom:10px;
	font-size:.825rem;
	font-weight:400;
	color:var(--red);
	text-transform:uppercase;
}
.content.blog-about ul.breadcrumbs {
	text-align:center;
}
.content ul.breadcrumbs li {
	display:inline-block;
}
.content ul.breadcrumbs li a:hover, .banner ul.breadcrumbs li a:focus {
	opacity:.5;
}

.content h2, .content .item h2 {
	font-size:1.875rem;
	font-weight:300;
	color:var(--grey);
	line-height:1.4;
	margin-bottom:15px;
}
.content .item h2 {
	color:var(--grey) !important;
}
.content.blog-about h2 {
	color:#1f1c1c;
	margin-top:15px;
	margin-bottom:0;
}

.content h3 {
	font-size:1.75rem;
	font-weight:300;
	color:var(--black);
}
.content h4 {
	font-size:1.5rem;
	font-weight:300;
	color:var(--black);
}

.content p {
	font-family:"Ubuntu", sans-serif;
	font-size:1.1875rem;
	color:#6f6f6f;
	margin:0;
	line-height:1.65;
}
.content p b, .content p strong {
	color:black;
	font-weight:400;
}
.content p a {
	color:black;
	font-weight:400;
	border-bottom:1px dotted currentColor;
}
.content p a:hover, .content p a:focus {
	border-bottom:1px dotted transparent;
}

.content.blog-content .author {
	margin-bottom:32px;
}
.content.blog-content .item .author {
	margin-bottom:0;
}

.content.blog-content .image img {
	margin:20px 0;
	width:100%;
}

.content.blog-content p big {
	display:block;
	margin:40px 0 40px 78px;
    padding-left:20px;
    border-left:3px solid #c13b21;
	font-family:"Oswald";
    font-size:1.625rem;
    color:black;
}


@media(max-width:991px) {
	.content h1 {
		font-size:1.875rem;
		margin-bottom:15px;
	}
	.content.blog-about h1 {
		margin-bottom:30px;
	}
	
	.content ul.breadcrumbs {
		font-size:.75rem;
	}
	
	.content h2, .content .item h2 {
		font-size:1.5rem;
	}
	.content p {
		font-size:1rem;
	}
	
	.content.blog-content .author {
		margin-bottom:15px;
	}
	.content.blog-content .image img {
		margin:10px 0;
	}
	
	.content.blog-content p big {
		margin:10px 0 10px 20px;
		font-size:1.25rem;
	}
}


/****************************/
/********** FOOTER **********/
/****************************/

footer {
	background-image:url(../img/blog-footer-bg.jpg);
	background-position:bottom;
}

footer .lower {
	padding:50px 0;
	background-color:rgba(19,2,56,.75);
}

footer .lower .row > div:last-of-type {
	text-align:right;
}

footer span {
	font-size:.75rem;
	letter-spacing:.05em;
	color:var(--lilac);
	text-transform:uppercase;
	display:block;
}
footer span a {
	color:white;
}
footer span a:hover, footer span a:focus {
	color:white;
	opacity:.5;
}


@media(max-width:767px) {
	footer {
		background-position:65%;
	}
		
	footer span {
		display:inline-block;
	}
	footer .row > div:last-child span:last-of-type {
		float:right;
		margin-top:5px;
	}
	
	footer .lower {
		padding:25px 0;
		padding-bottom:64px;
	}
	
	footer .lower .row > div:last-of-type {
		text-align:left;
	}
}