/*
 * KA-TEKS EMERGENCY RENDER RECOVERY
 * Load this file AFTER template_css.css.
 * Purpose: restore desktop menu, homepage component, footer modules,
 * and keep a conservative one-column mobile layout.
 */

/* ---------- Core visibility recovery ---------- */

.content-wrapper,
.content-wrapper-main,
.content-wrapper-main > .container,
.content-wrapper-main .isler,
.content-wrapper-main .blog-featured,
.content-wrapper-main .items-leading,
.content-wrapper-main .items-leading > div,
.content-wrapper-main .leading-0,
.content-wrapper-main .leading-1,
.content-wrapper-main .kateks-home-intro,
.content-wrapper-in,
.content-wrapper-in .mainbody,
.content-wrapper-in .blog,
.content-wrapper-in .item-page {
	visibility: visible !important;
	opacity: 1 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: visible !important;
	position: relative !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	transform: none !important;
	clip: auto !important;
	clip-path: none !important;
}

/* Joomla homepage component and article wrappers */
.content-wrapper-main {
	display: block !important;
	width: 100% !important;
}

.content-wrapper-main > .container,
.content-wrapper-main .isler,
.content-wrapper-main .blog-featured,
.content-wrapper-main .items-leading {
	display: block !important;
	width: 100% !important;
	max-width: 1280px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.content-wrapper-main .items-leading > div,
.content-wrapper-main .leading-0,
.content-wrapper-main .leading-1 {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 40px 0 !important;
	padding: 0 !important;
	float: none !important;
}

/* Restore the custom homepage intro, if that markup is present */
.kateks-home-intro {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 40px !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 30px 40px !important;
	background: #eeeeee !important;
	color: var(--MainTextColor, #555555) !important;
}

.kateks-home-intro-image {
	display: flex !important;
	flex: 0 0 38% !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 38% !important;
	padding: 0 !important;
}

.kateks-home-intro-image img {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: 430px !important;
	height: auto !important;
	margin: 0 auto !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.kateks-home-intro-content {
	display: block !important;
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	padding: 0 !important;
}

.kateks-home-intro-content h1,
.kateks-home-intro-content h2,
.kateks-home-intro-content h3,
.kateks-home-intro-content p {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: auto !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
	transform: none !important;
}

.kateks-home-intro-content h1 {
	margin: 0 0 20px 0 !important;
	font-family: var(--MainFont) !important;
	font-size: 30px !important;
	line-height: 1.3 !important;
	font-weight: normal !important;
	color: var(--MainThemeColor, #555555) !important;
}

.kateks-home-intro-content p {
	margin: 0 0 15px 0 !important;
	font-family: var(--MainFont) !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	font-weight: normal !important;
	color: var(--MainTextColor, #555555) !important;
}

/* Older inline-flex homepage/article markup */
.content-wrapper-main .items-leading > div > div[style*="display:flex"],
.content-wrapper-main .items-leading > div > div[style*="display: flex"] {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* ---------- Desktop navigation and footer recovery ---------- */

@media only screen and (min-width: 1024px) {
	.mainmenu {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: auto !important;
		height: auto !important;
		overflow: visible !important;
	}

	.mainmenu .nav,
	.mainmenu ul.menu {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.m-mainmenu {
		display: none !important;
	}

	.footer,
	.footer > div,
	.footer .nav,
	.footer-wrapper .contact,
	.footer-wrapper .newsletter,
	.footer-wrapper .qr {
		visibility: visible !important;
		opacity: 1 !important;
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	.footer .nav {
		display: flex !important;
	}
}

/* ---------- Conservative mobile recovery ---------- */

@media only screen and (max-width: 1023px) {
	.mainmenu {
		display: none !important;
	}

	.m-mainmenu {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}
}

@media only screen and (max-width: 767px) {
	html,
	body,
	.allbody,
	.content-wrapper,
	.content-wrapper-main,
	.content-wrapper-in {
		width: 100% !important;
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.container {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	.kateks-home-intro {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 18px !important;
		padding: 20px 10px !important;
	}

	.kateks-home-intro-image,
	.kateks-home-intro-content {
		display: block !important;
		flex: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		padding: 0 !important;
	}

	.kateks-home-intro-image img {
		width: 100% !important;
		max-width: 100% !important;
	}

	.kateks-home-intro-content h1 {
		font-size: 24px !important;
	}

	.kateks-home-intro-content p {
		font-size: 14px !important;
	}

	.content-wrapper-main .items-leading > div > div[style*="display:flex"],
	.content-wrapper-main .items-leading > div > div[style*="display: flex"],
	.content-wrapper-in .blog div[style*="display:flex"],
	.content-wrapper-in .blog div[style*="display: flex"],
	.content-wrapper-in .item-page div[style*="display:flex"],
	.content-wrapper-in .item-page div[style*="display: flex"] {
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		gap: 18px !important;
	}

	.content-wrapper-in div[style*="min-width"],
	.content-wrapper-main div[style*="min-width"] {
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.content-wrapper-in img,
	.content-wrapper-main img {
		max-width: 100% !important;
		height: auto !important;
	}

	.footer .col-lg-6,
	.footer .col-lg-4,
	.footer .col-lg-3,
	.footer .col-lg-2 {
		display: block !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 0 18px 0 !important;
	}

	.footer .nav {
		display: block !important;
	}

	.qr {
		text-align: center !important;
	}

	.qr img {
		width: 150px !important;
		max-width: 150px !important;
		height: auto !important;
	}
}
