
/* 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-family: var(--font-inter); */
	font-size: 16px;
	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;
}

hr {
	display: block;
	opacity: .1;
	max-width: 100%;
	height: 1px;
	background-color: #333;
	border: none;
	margin-top: 20px;
	margin-bottom: 20px;
}

/* 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 */


/* GALLERY */

.gallery:after {content:"";display:table;clear:both;}

img.aligncenter, div.aligncenter, figure.aligncenter, img.wp-post-image {display:block; margin:1em auto;}
img.alignright, div.alignright, figure.alignright {float:right; margin:1em 0 1em 2em;}
img.alignleft, div.alignleft, figure.alignleft, img.wp-post-image.attachment-thumb {float:left; margin:1em 1em 2em 0;}
figure {max-width: 100%; height: auto; margin:1em 0;}
p img.alignright, p img.alignleft {margin-top:0;}


.gallery figure img {max-width:100%; height:auto; margin:0 auto; display:block;}


.gallery figure {float:left; margin:0 2% 1em 0;}


.gallery.gallery-columns-1 figure {width:100%; margin:0 0 1em 0; float:none;}


.gallery.gallery-columns-3 figure {width:32%;}
.gallery.gallery-columns-3 figure:nth-of-type(3n+3) {margin-right:0;}
.gallery.gallery-columns-3 figure:nth-of-type(3n+4) {clear:left;}


.gallery.gallery-columns-2 figure {width:49%;}
.gallery.gallery-columns-2 figure:nth-of-type(even) {margin-right:0;}
.gallery.gallery-columns-2 figure:nth-of-type(odd) {clear:left;}


.gallery.gallery-columns-4 figure {width:23.25%;}
.gallery.gallery-columns-4 figure:nth-of-type(4n+4) {margin-right:0;}
.gallery.gallery-columns-4 figure:nth-of-type(4n+5) {clear:left;}


.gallery.gallery-columns-5 figure {width:18%;}
.gallery.gallery-columns-5 figure:nth-of-type(5n+5) {margin-right:0;}
.gallery.gallery-columns-5 figure:nth-of-type(5n+6) {clear:left;}


.gallery.gallery-columns-6 figure {width:14.2%;}
.gallery.gallery-columns-6 figure:nth-of-type(6n+6) {margin-right:0;}
.gallery.gallery-columns-6 figure:nth-of-type(6n+7) {clear:left;}


.gallery.gallery-columns-7 figure {width:12%;}
.gallery.gallery-columns-7 figure:nth-of-type(7n+7) {margin-right:0;}
.gallery.gallery-columns-7 figure:nth-of-type(7n+8) {clear:left;}


.gallery.gallery-columns-8 figure {width:10.2%;}
.gallery.gallery-columns-8 figure:nth-of-type(8n+8) {margin-right:0;}
.gallery.gallery-columns-8 figure:nth-of-type(8n+9) {clear:left;}


.gallery.gallery-columns-9 figure {width:8.85%;}
.gallery.gallery-columns-9 figure:nth-of-type(9n+9) {margin-right:0;}
.gallery.gallery-columns-9 figure:nth-of-type(9n+10) {clear:left;}


@media (max-width:767px) {
	img.alignright, div.alignright, figure.alignright, img.alignleft, div.alignleft, figure.alignleft, img.wp-post-image.attachment-thumb {display:block; margin:1em auto; float:none;}
	.gallery.gallery-columns-4 figure, .gallery.gallery-columns-5 figure, .gallery.gallery-columns-6 figure, .gallery.gallery-columns-7 figure, .gallery.gallery-columns-8 figure, .gallery.gallery-columns-9 figure {width:100%; margin:0 0 1em 0; float:none;}
}


/* GALLERY */

.gallery-items {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 20px;
	margin-block: 70px;
}

.gallery-items a.gal-item {
	display: block;
	width: 100%;
}

.gallery-items a.gal-item img {
	aspect-ratio: 1.62 / 1;
	object-fit: cover;
}


