
/* Basic Reset */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html {overflow-y: scroll;}
body { line-height: 1.5; -webkit-font-smoothing: antialiased; }
img, figure, picture, video, canvas, svg { display: block; max-width: 100%; }
img {height: auto;}
input, button, textarea, select { font: inherit; }
p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; }
#root, #__next { isolation: isolate; }

/* Variables */
:root {
	--max-width: 1200px;
	--max-width-small: 860px;
	--padding-inline: 20px;
	
	--background: #F9FAFB;
	--background-alt: #edf2fa;
	
	--color-link: #1967d2;
	--color-bold: #062e6f;
	
	--color-primary: #4F46E5;
	
	--font-titillium: "Titillium Web";
	--font-inter: "Inter";
	--font-signika: "Signika Negative";
}

body {
	font-family: var(--font-titillium);
	font-size: 17px;
	line-height: 1.6;
	color: #474747;
}

h1, h2, h3, h4, h5, h6 { color: var(--color-primary); }
h1, h2, h3, h4, h5, h6 { color: var(--color-bold); }

a:has(h3) {
	text-decoration: none;
}

p + p {
	margin-top: 17px;
}

figure {
	margin: 20px 0;
}

/* Default Wrap - Centered Content */

.wrap {
	width: 100%;
	max-width: var(--max-width);
	padding-inline: var(--padding-inline);
	margin: 0 auto;
}

.section {
	padding: 40px 0;
}

.site-content {
	max-width: var(--max-width-small);
	margin: 0 auto;
}


/* Top Bar */
.page-header {
	width: 100%;
	background: var(--background-alt);
	/* position: fixed; */
	/* height: 70px; */
}

.site-content {
	/* padding-top: 70px; */
}

.header-wrap {
	width: 100%;
	max-width: var(--max-width);
	padding-inline: var(--padding-inline);
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

/* Menu */

.top-nav-container {
	
}

.top-nav-container ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.logo a {
	text-decoration: none;
	font-size: 24px;
	line-height: 1;
	font-weight: 700;
	color: var(--color-bold);
}

.logo a:hover {
	color: var(--color-link);
}

.logo .site-description {
	display: block;
	line-height: 1;
	font-size: 14px;
	margin-top: 0;
}

.top-nav {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.top-nav > li {
	display: block;
	height: 100%;
}

.top-nav a {
	text-decoration: none;
	/* text-transform: uppercase; */
	font-size: 17px;
	font-weight: 600;
	line-height: 1;
	display: inline-block;
	height: 100%;
	padding: 24px 16px;
	color: #333;
}

.top-nav a:active,
.top-nav a:visited {
	color: #333;
}

.top-nav a:hover {
	background:rgba(0, 0, 100, .05);
	color: var(--color-link);
}

.top-nav .current-menu-item > a,
.top-nav .current-menu-ancestor > a {
	/* color: var(--color-bold); */
	color: var(--color-link);
	background:rgba(0, 0, 100, .02);
}

.top-nav .current-menu-item > a {
	background:rgba(0, 0, 100, .05);
}

/* Submenu */

.top-nav li {
	position: relative;
}

.top-nav .menu-item-has-children {
	position: relative;
}

.top-nav .menu-item-has-children > a::after {
	content: "+";
	display: inline-block;
	padding-left: 5px;
	transform: translateY(-2px);
}

.top-nav ul.sub-menu {
	display: block;
	position: absolute;
	left: 0;
	width: 200px;
	/* background: #eeeff1; */
	background: var(--background-alt);
	border-top: 4px solid var(--color-bold);
	border-bottom: 4px solid var(--color-bold);
	margin-top: -4px;
}

.top-nav ul.sub-menu a {
	display: block;
	width: 100%;
	padding: 14px;
	border-bottom: 1px solid rgba(0, 0, 0, .05);
	font-size: 16px;
}

.top-nav ul.sub-menu a:hover {
	/* background:rgba(0, 0, 100, .05); */
}

.top-nav ul.sub-menu {display: none;}

.top-nav .menu-item-has-children:hover ul.sub-menu {
	display: block;
}

/* Ham Icon */

.ham-icon {
	text-indent: -9999px;
	width: 32px;
	height: 32px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='40' width='40' fill='%23212183'%3E%3Cpath d='M4.792 30.292v-3.125h30.416v3.125Zm0-8.709v-3.166h30.416v3.166Zm0-8.75V9.667h30.416v3.166Z'/%3E%3C/svg%3E");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	cursor: pointer;
	transform: scale(1, 1);
	transition: all .3s;
}

.ham-icon:hover {
	transform: scale(1.1, 1.1);
}

.ham-icon.close {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='40' width='40' fill='%23212183'%3E%3Cpath d='M10.458 31.75 8.25 29.542 17.792 20 8.25 10.458l2.208-2.208L20 17.792l9.542-9.542 2.208 2.208L22.208 20l9.542 9.542-2.208 2.208L20 22.208Z'/%3E%3C/svg%3E");
}

.ham-icon {display: none;}

@media only screen and (max-width: 880px) {
	.ham-icon {
		display: block;
	}
	
	.header-wrap {
		padding: 20px 20px;
	}
	
	.top-nav-container {
		display: none;
	}
	
	.top-nav-container.menu-visible {
		display: block;
		width: 100%;
	}
	
	.top-nav {
		flex-direction: column;
		border-top: 20px solid transparent;
		background: var(--background-alt);
		margin-left: -20px;
	}
	
	.top-nav a {
		width: 100%;
		display: block;
		border-top: 1px solid rgba(0, 0, 0, .1);
		padding: 16px 10px;
	}
	
	/* Submenu */
	
	.top-nav ul.sub-menu {
		display: block;
		position: relative;
		width: 100%;
		background: transparent;
		border-top: 0;
		border-bottom: 0;
		margin-top: 0;
	}

	.top-nav ul.sub-menu a {
		display: block;
		width: 100%;
		padding: 16px 16px 16px 36px;
		/* border-top: 0px solid rgba(0, 0, 0, .05); */
		border-bottom: 1px solid rgba(0, 0, 0, .01);
		font-size: 16px;
		line-height: 1.5;
		background:rgba(0, 0, 100, .02);
	}

	.top-nav ul.sub-menu a:hover {
		background:rgba(0, 0, 100, .05);
	}

	.top-nav ul.sub-menu {display: block;}

	.top-nav .menu-item-has-children:hover ul.sub-menu {
		/* display: block; */
	}
	
	
	
}/* 880px */


/* Archive */

.columns-1,
.columns-2,
.columns-3,
.columns-4 {
	--col-space: 10px;
	display: flex;
	flex-wrap: wrap;
	margin-left: calc(var(--col-space) * -1);
	margin-right: calc(var(--col-space) * -1);
}

.col-item {
	padding: var(--col-space);
	margin-bottom: calc(var(--col-space) * 1.2);
}

.columns-1 .col-item {
	width: 100%;
	max-width: 100%;
}

.columns-2 .col-item {
	width: 50%;
	max-width: 50%;
}

.columns-3 .col-item {
	width: 33.333%;
	max-width: 33.333%;
}

.columns-4 .col-item {
	width: 25%;
	max-width: 25%;
}

@media only screen and (max-width: 880px) {
	
	.columns-3 .col-item,
	.columns-4 .col-item {
		width: 50%;
		max-width: 50%;
	}
	
}/* 880px */

@media only screen and (max-width: 600px) {
	
	.columns-2 .col-item,
	.columns-3 .col-item,
	.columns-4 .col-item {
		width: 100%;
		max-width: 100%;
	}
	
}/* 600px */

.item {
	padding: 0 0 20px;
	border-radius: 4px;
	box-shadow: 0px 0px 10px rgba(35, 35, 35, 0.07);
	height: 100%;
}

.item img {
	display: block;
	border-radius: 4px 4px 0 0;
}

.item .item-title {
	padding: 10px 20px;
}

.item .item-desc {
	padding: 0 20px;
}

/* Footer */

footer.site-footer {
	background: var(--background-alt);
	padding: 40px 0;
}

/* COOKIE START */

.cookie-wrap {
	/* font-family: "Roboto", Arial, sans-serif; */
}

.cookie-wrap {
	--cookie-color: #003feb;
	--cookie-linkcolor: #95c0ff;
	--cookie-bg: #00014b;
	display: flex;
	flex-direction: column;
	gap: 10px;
	color: #FFF;
	background: var(--cookie-bg);
	border-bottom: 10px solid var(--cookie-color);
	position: fixed;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	min-width: 0;
	width: 360px;
	max-width: calc(100% - 20px);
	padding: 20px;
	border-radius: 6px 6px 0 0;
	font-size: 15px;
	text-shadow: 1px 1px 2px rgba(0,0,0,.4);
	line-height: 1.5;
	overflow: hidden;
	z-index: 101;
}

.cookie-wrap {
	/* --cookie-color: #13b904; */
	/* --cookie-linkcolor: #97ff8e; */
	/* --cookie-bg: #003300; */
}

.cookie-button {
	display: block;
	max-width: 400px;
	margin-inline: auto;
	background: var(--cookie-color);
	border: 1px solid var(--cookie-color);
	color: #e8ebff;
	cursor: pointer;
	padding: 10px 30px;
	text-align: center;
	border-radius: 4px;
	transition: all .3s;
}

.cookie-button:hover {
	background: var(--cookie-bg);
}

.cookie-text p {
	margin: 0 0 10px;
	color: #FFF;
}

.cookie-text a {
	color: var(--cookie-linkcolor);
	text-decoration: none;
	transition: all .3s;
}

.cookie-text a:hover {
	text-decoration: underline;
	opacity: .9;
}

/* COOKIE END */