:root {
	--mk-font: "Femotype Sans NRW", "Arial Narrow", Arial, sans-serif;
	--mk-bg: #f6f6f6;
	--mk-ink: #666;
	--mk-text: #604e11;
	--mk-gold: #a89475;
	--mk-nav: #5b5944;
	--mk-width: 1245px;
}
body, body.elementor-default {
	background: var(--mk-bg);
	font: 400 20px/1.2 var(--mk-font);
	color: var(--mk-ink);
}
body .elementor {
	--e-global-typography-primary-font-family: var(--mk-font);
	--e-global-typography-secondary-font-family: var(--mk-font);
	--e-global-typography-text-font-family: var(--mk-font);
	--e-global-typography-accent-font-family: var(--mk-font);
}
a { color: #6c5b2f; }
a:hover { color: #54431f; }
:focus-visible { outline: 2px solid #6c5b2f; outline-offset: 4px; }
.mk-skip {
	position: fixed;
	z-index: 999;
	inset: 0 auto auto 1rem;
	transform: translateY(-120%);
	background: #fff;
	padding: .4rem .7rem;
}
.mk-skip:focus { transform: none; }
.mk-header {
	position: sticky;
	top: -35px;
	z-index: 40;
	background: #fff;
	border-top: 35px solid #f8f8f8;
	box-shadow: 0 1px 2px #0002;
}
.admin-bar .mk-header { top: -3px; }
.mk-header-inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	height: 116px;
	padding: 0 28px;
	border-top: 1px solid #dfdfdf;
}
.mk-header .custom-logo-link { display: flex; align-items: center; flex-shrink: 0; }
.mk-header .custom-logo { display: block; width: auto; height: 60px; max-width: min(45vw, 445px); object-fit: contain; object-position: left; }
.mk-brand { color: var(--mk-nav); text-decoration: none; }
.mk-navigation ul, .mk-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
}
.mk-navigation a {
	display: block;
	padding: 4px 10px;
	color: var(--mk-nav);
	font: 700 16px/26px var(--mk-font);
	text-decoration: none;
	text-transform: uppercase;
}
.mk-navigation .current-menu-item > a, .mk-navigation a:hover { color: #8c775b; }
.mk-menu-toggle { display: none; }
.mk-main { min-height: 42vh; }
.mk-shell { width: min(calc(100% - 12%), var(--mk-width)); margin-inline: auto; }
.mk-archive, .mk-regular-content { padding-block: 35px 65px; }
.mk-main h1 { font: 600 28px/1 var(--mk-font); color: #858585; }
.mk-main .elementor-heading-title { font-family: var(--mk-font); }
.elementor .mk-front-layout.e-con {
	--width: var(--mk-width);
	--padding-block-start: 30px;
	--padding-block-end: 20px;
	--padding-inline-start: 0px;
	--padding-inline-end: 0px;
	--gap: 0px;
	width: min(calc(100% - 12%), var(--mk-width));
	gap: 0;
	max-width: none;
	margin-inline: auto;
}
.mk-front-title { text-align: center; }
.mk-front-title h1 { margin: 0 0 18px; color: #919191; }
.mk-front-quote { color: var(--mk-text); text-align: center; }
.mk-front-quote p { margin: 0; padding-bottom: 0; }
.mk-project-filters {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 3px 24px;
	min-height: 112px;
	padding: 22px 0;
}
.mk-project-filters button {
	appearance: none;
	border: 0;
	padding: 0 0 5px;
	border-bottom: 1px solid transparent;
	background: none;
	color: #626262;
	font: 700 16px/24px var(--mk-font);
	text-transform: uppercase;
	border-radius: 0;
	cursor: pointer;
}
.mk-project-filters button[aria-pressed="true"], .mk-project-filters button:hover {
	background: none;
	color: #8c775b;
	border-color: currentColor;
}
.mk-project-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.mk-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mk-columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mk-project-card { min-width: 0; }
.mk-project-card[hidden] { display: none; }
.mk-project-art { position: relative; background: #eae8e3; }
.mk-project-image { display: block; width: 100%; height: auto; aspect-ratio: 600 / 403; object-fit: cover; }
.mk-project-actions {
	position: absolute;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	padding: 10px;
	background: #221e158a;
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease;
}
.mk-project-art:hover .mk-project-actions,
.mk-project-art:focus-within .mk-project-actions { opacity: 1; pointer-events: auto; }
.mk-project-actions a {
	border: 2px solid #fff;
	padding: 7px 11px;
	color: #fff;
	text-decoration: none;
	font-size: 14px;
}
.mk-project-actions a:focus-visible { outline-color: #fff; }
.mk-project-meta { position: relative; margin-top: 13px; padding-right: 38px; }
.mk-project-meta h2 { margin: 0; font: 600 18px/20px var(--mk-font); }
.mk-project-meta h2 a { color: inherit; text-decoration: none; }
.mk-project-meta h2 a:hover { text-decoration: underline; }
.mk-project-meta time, .mk-project-subtitle-text { color: var(--mk-text); font-size: 11px; line-height: 22px; }
.mk-project-meta .mk-project-likes { position: absolute; top: 0; right: 0; }
.mk-project-likes__button {
	border: 0;
	color: #695739;
	background: transparent;
	padding: 3px;
	font: 400 13px/1 var(--mk-font);
}
.mk-project-likes__button:hover, .mk-project-likes__button:focus-visible { color: #695739; background: transparent; }
@media (hover: hover) {
	.mk-project-meta .mk-project-likes { opacity: 0; }
	.mk-project-card:hover .mk-project-likes, .mk-project-card:focus-within .mk-project-likes { opacity: 1; }
}
.mk-project-neighbours {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-block: 40px;
	text-align: center;
}
.mk-lightbox {
	position: fixed;
	inset: 0;
	border: 0;
	background: transparent;
	color: #fff;
	max-width: 100vw;
	max-height: 100dvh;
	overflow: visible;
	padding: 35px 42px;
}
.mk-lightbox::backdrop { background: #161410e8; }
.mk-lightbox figure { margin: 0; text-align: center; }
.mk-lightbox img { display: block; max-width: 100%; max-height: calc(100dvh - 100px); object-fit: contain; }
.mk-lightbox figcaption { margin-top: .45rem; font-size: 16px; }
.mk-lightbox button {
	position: absolute;
	border: 0;
	padding: 0 7px;
	background: transparent;
	color: white;
	font: 400 32px/1 var(--mk-font);
}
.mk-lightbox button:focus-visible { outline-color: white; }
.mk-lightbox-close { top: 0; right: 12px; }
.mk-lightbox-prev { top: 50%; left: 6px; }
.mk-lightbox-next { top: 50%; right: 6px; }
.mk-footer {
	background: #b7aa96;
	color: #5e5646;
	text-align: center;
	font: 400 16px/1.4 var(--mk-font);
}
.mk-footer-links { display: grid; place-items: center; min-height: 182px; padding: 45px 20px; }
.mk-footer-links ul, .mk-social { align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; }
.mk-footer a { color: #4b4435; text-decoration: none; }
.mk-footer a:hover { text-decoration: underline; }
.mk-footer-bottom { padding: 55px 20px 48px; border-top: 1px solid #0001; min-height: 215px; }
.mk-footer-bottom .mk-social { margin-bottom: 20px; font-size: 15px; }
.mk-social-icon { font: 400 17px/1 "Kossak Social Icons"; }
.mk-social a { display: grid; place-items: center; min-width: 32px; min-height: 32px; }
.mk-social a:hover { text-decoration: none; }
.mk-footer-bottom p { margin: 0; font-size: 12px; line-height: 22px; text-transform: uppercase; }
.mk-footer-bottom button { color: #4b4435; }
@media (max-width: 999px) {
	.mk-header, .admin-bar .mk-header { top: 0; border-top: 0; }
	.admin-bar .mk-header { top: 32px; }
	.mk-header-inner { height: 48px; padding-inline: 18px; border-top: 0; }
	.mk-header .custom-logo { height: 24px; max-width: 75vw; }
	.mk-navigation {
		position: absolute;
		top: 100%;
		inset-inline: 0;
		background: #fff;
		box-shadow: 0 2px 4px #0002;
	}
	.mk-has-js .mk-navigation { display: none; }
	.mk-has-js .mk-navigation.is-open { display: block; }
	.mk-has-js .mk-menu-toggle {
		display: grid;
		gap: 4px;
		padding: 8px;
		border: 0;
		background: none;
	}
	.mk-menu-toggle span { width: 19px; height: 2px; background: var(--mk-nav); }
	.mk-navigation ul { display: grid; padding: 12px; }
	.mk-navigation a { padding: 6px 16px; }
	.mk-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 782px) {
	.admin-bar .mk-header { top: 46px; }
}
@media (max-width: 689px) {
	.mk-main h1 { font-size: 19px; }
	.mk-project-grid { grid-template-columns: minmax(0, 1fr); }
	.mk-project-filters { gap: 3px 18px; padding-block: 26px; }
	.mk-project-filters button { font-size: 15px; }
	
	.mk-project-actions { opacity: 1; inset: auto 0 0; padding: 8px; background: linear-gradient(transparent, #221e158f); pointer-events: auto; justify-content: flex-end; }
	.mk-project-actions a { background: #221e1560; border-width: 1px; padding: 3px 8px; }
}
@media (prefers-reduced-motion: reduce) {
	.mk-project-actions { transition: none; }
}

.mk-project-filters {
	display: block;
	text-align: center;
	padding: 33px 0;
	font-size: 0;
}
.mk-project-filters button {
	display: inline-block;
	vertical-align: middle;
	margin: 7px 11px;
	padding: 7px 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 17px;
}
@media (max-width: 999px) {
	.mk-project-filters { width: 88%; margin-inline: auto; }
}

.mk-portfolio-search[hidden], .mk-portfolio-empty[hidden] { display: none; }
.mk-portfolio-search {
	width: min(100%, 350px);
	margin: -14px auto 24px;
}
.mk-portfolio-search input[type="search"] {
	width: 100%;
	border: 1px solid #a79882;
	border-radius: 2px;
	padding: 9px 13px;
	background: #fff;
	color: var(--mk-text);
	font: 400 16px/1.25 var(--mk-font);
}
.mk-portfolio-search input::placeholder { color: #716856; opacity: 1; }
.mk-portfolio-empty { text-align: center; margin: 16px 0 50px; }
.mk-project-grid { position: relative; }
.mk-project-card.mk-project-exit {
	position: absolute;
	z-index: 1;
	pointer-events: none;
}
.mk-lightbox[open] {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	margin: 0;
	box-sizing: border-box;
}
.mk-lightbox::backdrop { background: transparent; }
.mk-lightbox { background: #161410e8; }
.mk-lightbox-close { top: 12px; right: 12px; }
.mk-lightbox img { margin-inline: auto; }
.mk-lightbox button[hidden] { display: none; }
@media (max-width: 689px) {
	.mk-portfolio-search { margin-block-start: -12px; margin-block-end: 20px; }
	.mk-portfolio-search input[type="search"] { min-height: 44px; }
}
