 body {
    background-color: #eeeeee;
	 font-family: "Inter", sans-serif;
 }

 h1, h2, h3, h4, h5, h6 {
	font-family: "Sora", sans-serif;
	font-weight: 600;
	line-height: 1.2;
	margin: 0 0 0.6em;
 }

 h1 {
	font-size: 40px;
 }

 h2 {
	font-size: 32px;
 }

 h3 {
	font-size: 28px;
 }

 h4 {
	font-size: 24px;
 }

 h5 {
	font-size: 20px;
 }

 h6 {
	font-size: 16px;
 }

 a {
	color: #111111;
	text-decoration: none;
 }

 a:hover,
 a:focus {
	color: #008C44;
 }
 
 header {
    background-color: #fff;
    border-radius: 16px;
    margin-bottom: 24px;
    
 }

 .wrapper {
	max-width: 1600px;
	margin: 0 auto;
	padding: 0 24px;
 }

header.col_12 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 16px 24px;
	position: relative;
}

.header-left {
	flex: 0 0 auto;
}

.header-center {
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.header-right {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 20px;
}

.logo a {
	display: inline-block;
}

.logo img {
	display: block;
	height: 56px;
	width: auto;
}

.currentPage {
	display: none;
}

.topmenuToggle {
	display: none;
	width: 40px;
	height: 40px;
	border-radius: 6px;
	background:
		linear-gradient(#111111, #111111) 50% 12px / 22px 2px,
		linear-gradient(#111111, #111111) 50% 20px / 22px 2px,
		linear-gradient(#111111, #111111) 50% 28px / 22px 2px;
	background-repeat: no-repeat;
}

.topmenu {
	display: flex;
	align-items: center;
	gap: 20px;
	font-size: 14px;
}

.topmenu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.topmenu .level1 {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
	justify-content: space-evenly;
}

.topmenu li {
	position: relative;
}

.topmenu a {
	color: #111111;
	display: block;
	padding: 8px 10px;
	text-decoration: none;
	white-space: nowrap;
}

.topmenu a:hover,
.topmenu a:focus {
	text-decoration: underline;
	text-underline-offset: 10px;
	color: #008C44;
}

.topmenu .active > a,
.topmenu .crumb > a {
	font-weight: 700;
	color: #008C44;
	text-decoration: underline;
	text-underline-offset: 10px;
}

.topmenu .level1 ul {
	background: #ffffff;
	border: 1px solid #d7d7d7;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
	display: none;
	left: 0;
	min-width: 200px;
	position: absolute;
	top: 100%;
	padding-top: 6px;
	margin-top: 0;
	z-index: 20;
}

.topmenu li:hover > ul,
.topmenu li:focus-within > ul {
	display: block;
}

.topmenu .level2 ul {
	left: 100%;
	top: 0;
}

.languages {
	margin-left: 6px;
}

.languages-mobile {
	display: none;
}

.languages > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 6px;
}

.languages a {
	color: #8b0000;
	display: block;
	padding: 6px 8px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.languages .active a {
	font-weight: 700;
}

.lang-dropdown {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.lang-toggle {
	background: #ffffff;
	border: 1px solid #d7d7d7;
	border-radius: 999px;
	width: 36px;
	height: 36px;
	padding: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.lang-toggle img,
.lang-list img {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.lang-code {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #f2f2f2;
	color: #111111;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.lang-list {
	position: absolute;
	right: 0;
	top: calc(100% + 6px);
	background: #ffffff;
	border: 1px solid #d7d7d7;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
	list-style: none;
	margin: 0;
	padding: 6px;
	display: none;
	min-width: 52px;
	z-index: 30;
}

.lang-list li {
	margin: 0;
}

.lang-list a {
	padding: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lang-dropdown.is-open .lang-list {
	display: block;
}

.ipWidget-Columns .ipsColsContainer {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
}

.ipWidget-Columns .ipsColsContainer .ipsCol {
	flex: 1 1 0;
	min-width: 0;
}

.ipWidget-Columns .ipsColsContainer .ipsCol .ipWidget-Image img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 16px;
}

@media screen and (max-width: 860px) {
	.ipWidget-Columns .ipsColsContainer {
		gap: 16px;
	}

	.ipWidget-Columns .ipsColsContainer .ipsCol {
		flex: 1 1 100%;
	}
}

.button a {
	display: inline-block;
	background: #111111;
	color: #ffffff !important;
	padding: 10px;
	border-radius: 10px;
	text-decoration: none;
	font-weight: normal;
    text-transform: uppercase;
}

.button a::after {
	content: " →";
	color: #008C44;
	margin-left: 8px;
}

.button a strong {
	color: #ffffff;
	font-weight: normal;
}

.button a:hover {
	background: #333333;
}

	.text-box {
		background: #f8f9fa;
		border-radius: 16px;
		padding: 20px;
		height: 100%;
	}

	.fotoFrame {
		margin-bottom: 32px;
	}

	.fotoFrame .image-box {
		position: relative;
		border-radius: 16px;
		overflow: hidden;
		background: #111111;
	}

	.fotoFrame .image-box::after {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.15) 45%, rgba(0, 0, 0, 0.6) 100%);
		z-index: 1;
		pointer-events: none;
	}

	.fotoFrame .image-bg {
		display: block;
	}

	.fotoFrame .image-bg img {
		display: block;
		width: 100%;
		height: auto;
	}

	.fotoFrame .image-title {
		position: absolute;
		bottom: 40px;
		left: 44px;
		right: 24px;
		margin: 0;
		color: #ffffff;
		z-index: 2;
		text-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
	}

	.team-row {
		background-color: #FFF;
		border-radius: 16px;
		margin-bottom: 50px;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}

	.team-box {
		background: #fff;
		border-radius: 16px;
		padding: 20px;
		overflow: hidden;
		display: flex;
		flex-direction: column;
	}

	.team-photo {
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
		border-radius: 16px;
	}

	.team_name {
		font-size: 1.4rem;
		margin: 10px 0 5px;
	}

	.team_role {
		color: green;
		margin: 0;
	}

	/* Gallery defaults (theme.css is not loaded in this theme) */
	.ipWidget-Gallery {
		margin-bottom: 0;
	}

	.ipWidget-Gallery ._container {
		list-style: none;
		margin: 0 -10px;
	}

	.ipWidget-Gallery ._container::after {
		content: "";
		display: block;
		clear: both;
	}

	.ipWidget-Gallery ._item {
		box-sizing: border-box;
		float: left;
		margin-bottom: 20px;
		padding: 0 10px;
		width: 24.99%;
	}

	.ipWidget-Gallery ._image {
		box-sizing: border-box;
		display: block;
		width: 100%;
	}

	.partners-donors-row {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
		align-items: stretch;
		background-color: #FFF;
		padding: 20px;
		border-radius: 16px;
	}

	.partners-donors-row > .partners-donors-col {
		width: auto;
		padding: 0;
	}

	#ipBlock-mainpartners .ipWidget-Gallery ._item,
	#ipBlock-maindonor .ipWidget-Gallery ._item {
		width: 24.99%;
	}

@media screen and (max-width: 860px) {
	.team-row {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.partners-donors-row {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	#ipBlock-mainpartners .ipWidget-Gallery ._item,
	#ipBlock-maindonor .ipWidget-Gallery ._item {
		width: 50%;
	}

	.fotoFrame .image-title {
		bottom: 16px;
		left: 16px;
		right: 16px;
	}
}

@media screen and (max-width: 480px) {
	.ipWidget-Gallery ._item {
		width: 50%;
	}
}
.ipNewsList {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 25px;
	}

	.ipNewsList ._newsItem {
		background: #fff;
		border-radius: 16px;
		overflow: hidden;
		box-shadow: 0 4px 15px rgba(0,0,0,0.1);
		display: flex;
		flex-direction: column;
	}

	.ipNewsList ._newsItem img {
		width: 100%;
		height: auto;
		display: block;
	}

	.ipNewsList ._newsText {
		padding: 20px;
		flex-grow: 1;
		text-align: left;
		display: flex;
		flex-direction: column;
	}

	.ipNewsList h2 {
		font-size: 20px !important;
		margin: 0 0 10px 0;
		line-height: 1.3;
	}

	.ipNewsList ._date {
		/* display: none; */
		margin-bottom: 12px;
		color: #777;
		font-size: 14px;
	}

	.ipNewsList a.download-btn,
	.ipNewsList ._newsShowMoreBtn,
	.newslist-filter-years a.btn {
		display: inline-block;
		margin-top: auto;
		padding: 5px 10px;
		background: #14a62f;
		color: #fff !important;
		border-radius: 8px;
		text-decoration: none;
		font-weight: 100;
		align-self: flex-start;
		border: 0;
		cursor: pointer;
		font-family: inherit;
		
	}

	.newslist-filter-years {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin-bottom: 20px;
	}
	
	


	.ipNewsList a._more {
		display: none;
	}

    .bg-footer { margin-top: 40px;}    

	footer {
		display: flex;
		width: 100%;
		min-height: 380px;
		background: #fff;
		border-radius: 16px;
		font-size: 10px;
		line-height: 1.1;
	}

	.footer-left {
		position: relative;
		width: 50%;
		overflow: hidden;
		border-radius: 16px;
		border-bottom-left-radius: 16px;
		border-bottom-right-radius: 16px;
	}

	.footer-overlay {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.4);
	}

	.newsletter-box {
		position: absolute;
		bottom: 30px;
		left: 40px;
		color: #fff;
		max-width: 500px;
	}

	.newsletter-box h3 {
		margin-bottom: 15px;
		font-size: 1.3rem;
		color: #fff;
	}

	.newsletter-form {
		display: flex;
		width: 100%;
		margin-bottom: 20px;
	}

	.newsletter-form input {
		flex: 1;
		padding: 14px;
		border-radius: 10px 0 0 10px;
		border: none;
		font-size: 1rem;
	}

	.newsletter-form button {
		padding: 14px 25px;
		font-size: 1.2rem;
		background: #fff;
		border: none;
		border-radius: 0 10px 10px 0;
		cursor: pointer;
	}

	.newsletter-box .copyright {
		font-size: 0.8rem;
		opacity: 0.8;
	}

	.footer-right {
		width: 50%;
		display: flex;
		align-items: center;
		padding: 60px;
	}

	.footer-grid {
		display: flex;
		width: 100%;
		justify-content: space-between;
	}

	.footer-col h4 {
		margin-bottom: 12px;
		font-size: 1.2rem;
	}

	.footer-col ul {
		list-style: none;
		padding: 0;
	}

	.footer-col ul li {
		margin-bottom: 8px;
	}

	.footer-col ul li a {
		text-decoration: none;
		color: #000;
	}

	.footer-col p,
	.footer-col a {
		font-size: 1rem;
		color: #000;
	}

	.social {
		margin-top: 20px;
	}

	.social a img {
		width: 38px;
		height: 38px;
		margin-right: 12px;
		opacity: 0.9;
	}



	.aboutus-row {
		display: flex;
		width: 100%;
		gap: 20px;
		border-radius: 16px;
		
	}

	.aboutus-row .image-box {
		border-radius: 16px;
		overflow: hidden;
	}

	.aboutus-left {
		width: 30%;
	}

	.aboutus-right {
		width: 70%;
		padding-left: 0;
	}

@media screen and (max-width: 860px) {
	header.col_12 {
		padding: 12px 16px;
	}

	footer.bg-footer {
		display: flex;
		flex-direction: column;
		min-height: 0;
	}

	.footer-left,
	.footer-right {
		width: 100%;
	}

	.footer-left {
		min-height: 280px;
	}

	.footer-right {
		padding: 24px 16px;
	}

	.footer-grid {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.footer-col {
		width: 100%;
	}

	.newsletter-box {
		left: 16px;
		right: 16px;
		bottom: 16px;
		max-width: none;
	}

	.header-center {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		pointer-events: none;
	}

	.header-center .topmenu {
		pointer-events: auto;
	}

	.header-right .languages {
		display: none;
	}

	.logo img {
		height: 44px;
	}

	.topmenuToggle {
		display: inline-block;
	}

	.topmenu {
		background: #ffffff;
		border: 1px solid #e0e0e0;
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
		display: none;
		margin: 10px 0 0 0;
		position: static;
		z-index: 30;
		padding: 16px 20px;
		max-width: 100%;
	}

	body.menu-open .topmenu {
		display: block;
	}

	.topmenu .level1 {
		display: block;
	}

	.topmenu .level1 > li {
		display: block;
	}

	.topmenu .level1 ul {
		border: none;
		box-shadow: none;
		display: block;
		margin-left: 16px;
		margin-top: 6px;
		position: static;
	}

	.topmenu li:hover > ul,
	.topmenu li:focus-within > ul {
		display: block;
	}

	.topmenu .languages-mobile {
		display: block;
	}

	.languages {
		border-top: 1px solid #e0e0e0;
		margin-left: 0;
		margin-top: 8px;
		padding-top: 8px;
	}

	.lang-toggle {
		display: none;
	}

	.lang-dropdown {
		display: block;
	}

	.lang-list {
		position: static;
		display: flex;
		gap: 8px;
		padding: 0;
		border: none;
		box-shadow: none;
		background: transparent;
		min-width: 0;
	}

	.lang-list a {
		padding: 0;
	}

	.aboutus-row {
		flex-direction: column;
		gap: 16px;
		padding: 16px;
	}

	.aboutus-left,
	.aboutus-right {
		width: 100%;
	}
}

@media screen and (max-width: 520px) {
	.topmenu {
		margin: 10px 0 0 0;
		padding: 14px 16px;
	}
}




