/*
Theme Name: BeuthHS Child (Mobile Fixes)
Theme URI:
Description: Child theme of beuthhs adding mobile responsiveness (viewport, breakpoints, mobile menu) without modifying the parent theme.
Author:
Template: beuthhs
Version: 1.0.0
Text Domain: beuthhs-child
*/

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.mobile-nav-toggle {
	display: none;
	position: relative;
	width: 44px;
	height: 40px;
	margin-left: auto;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.mobile-nav-toggle-bar {
	display: block;
	width: 26px;
	height: 3px;
	margin: 5px auto;
	background-color: #4e4b4b;
	transition: transform .2s ease, opacity .2s ease;
}

.mobile-nav-toggle.open .mobile-nav-toggle-bar:nth-child(1) {
	transform: translateY(8px) rotate(45deg);
}

.mobile-nav-toggle.open .mobile-nav-toggle-bar:nth-child(2) {
	opacity: 0;
}

.mobile-nav-toggle.open .mobile-nav-toggle-bar:nth-child(3) {
	transform: translateY(-8px) rotate(-45deg);
}

@media (max-width: 1209px) {

	.pagewidth,
	.pagemenu {
		width: 100%;
		min-width: 0;
	}

	.head {
		height: auto;
		padding-bottom: 10px;
	}

	.head > .pagewidth {
		padding-top: 15px;
		text-align: center;
	}

	.head .logo-vt,
	.head .logo-beuth {
		display: inline-block;
		max-width: 100%;
		height: auto;
		margin: 0 0 10px;
		padding-right: 0;
		border-right: 0;
	}

	.head .logo-vt img,
	.head .logo-beuth img {
		max-width: 100%;
		height: auto;
	}

	.head .user {
		position: static;
		text-align: right;
		padding-right: 15px;
		margin-bottom: 10px;
	}

	.head .jobhint {
		position: static;
		display: table;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 15px 10px auto;
		text-align: center;
	}

	.head .jobhint-inner {
		background-image: none;
		height: auto;
		padding: 10px 20px;
		margin: 0;
		text-align: center;
	}

	.wp-video,
	video,
	iframe,
	object,
	embed {
		max-width: 100%;
		height: auto;
	}

	.category-pagination {
		width: 100%;
	}

	.foot {
		position: static;
	}

	.foot-inner {
		height: auto;
		line-height: 1.6;
		overflow: visible;
		text-align: center;
		padding: 10px;
	}

	.foot a {
		display: inline-block;
		margin: 0 8px;
	}

	.content-main,
	.content-sidebar,
	.col2left .content-main,
	.col2right .content-main,
	.col2left .content-sidebar,
	.col2right .content-sidebar {
		float: none;
		width: 100%;
		margin: 0;
	}

	.content-main-inner,
	.content-sidebar-inner,
	.col2left .content-main-inner,
	.col2right .content-main-inner,
	body[class*="category-16"] .col2left .content-main-inner {
		margin: 0;
	}

	.content-main .modules,
	.home .content-main .modules,
	.content-main .modules.twoCols .module {
		width: 100%;
		float: none;
	}

	.module.detail,
	.page .module.detail {
		width: 100%;
	}

	img {
		max-width: 100%;
		height: auto;
	}

	.teaser {
		display: none;
	}

	.mobile-nav-toggle {
		display: block;
	}

	#site-navigation {
		display: none;
		width: 100%;
	}

	#site-navigation.open {
		display: block;
	}

	#site-navigation .menu {
		width: 100%;
	}

	#site-navigation .menu > li {
		display: block;
		width: 100%;
		margin-left: 0;
	}

	#site-navigation .menu > li > a {
		width: 100%;
		box-sizing: border-box;
	}

	#site-navigation .menu .sub-menu {
		display: block;
		position: static;
		box-shadow: none;
		min-width: 0;
	}

}
