@media screen and (max-width: 1140px) {
	nav ul li a {
		font-size: 0.9rem;
	}
	
	.navicons {
		padding: 10px;
	}
	.navicons i {
		margin: 20px 5px;
	}
}

@media screen and (max-width: 990px) {
	nav ul li {
		margin: 20px 5px;
		margin-top: 0px;
		position: relative;
	}
	.footerlogo img {
		width: 180px;
		max-width: 100%;
	}
	.footeritem {
		min-height: 200px;
	}
}

@media screen and (max-width: 886px) {
	.time {
		margin-top: -30px;
		margin-bottom: 15px;
	}
	
	.stamps {
		display: none;
	}
	nav {
		display: none;
	}
	.navicons {
		display: none;
	}
	
	.subnavarrow {
		display: block;
		position: absolute;
		right: 10px;
		top: 1px;
		padding-left: 100%;
	}
	
	#nav-button {
		display: block;
	}
	
	#header.showing nav {
		display: block;
	}
	#header.showing .navcol {
		width: 100%;
	}
	#header.showing nav ul {
		display: block;
		float: none;
		width: calc(100% - 40px);
		margin: 0 20px;
	}
	#header.showing nav ul li {
		display: block;	
		text-align: left;
		width: 100%;
	}
	#header.showing nav ul li a {
		font-size: 1.1rem;
	}
	.subnav {
		display: none;
		width: 100%;
		position: relative;
		top: unset;
		right: unset;
		background-color: rgba(238, 238, 238, 1);
		z-index: unset;
		padding-bottom: 20px;
	}
	
	.subnavitem {
		padding: 0px 40px;
	}
	
	nav ul li:hover .subnav, nav ul li .subnav:hover  {
		display: none;
	}
	
	.swiper-slide {
		height: 380px;
	}
	
	.slidecontent {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
	}
	
	.slidecontent.upper-right {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
	}
	
	.slidecontent.upper-left {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
		left: unset;
	}
	
	.slidecontent.center {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
	}
	
	.slidecontent.bottom-right {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
	}
	
	.slidecontent.bottom-left {
		position: absolute;
		top: unset;
		bottom: -172px;
		right: unset;
		text-align: center;
		width: 100%;
		left: unset;
	}
	
	.invertColors .slideheading {
		color: rgb(198, 198, 198);
	}
	
	.invertColors p {
		color: rgb(198, 198, 198);
	}
	
	.invertColors button.primary {
		background-color: rgb(198, 198, 198);
		color: white;
		border: 1px solid rgb(198, 198, 198);
	}
	
	.breadcrumbs ul {
		padding-left: 0px;
	}
	
	.brandimage:first-child {
		padding-left: 25px;
	}
	
	.brandimage:last-child {
		padding-right: 25px;
	}
	
	.brandimage img {
		width: 100% !important;
	}
}

@media (max-width: 798px) {
	.filterheading {
		display: none;
	}

	.filterContainer {
		display: none;
	}

	#filtericon {
		display: block;
		cursor: pointer;
		z-index: 9999999999;
		position: absolute;
		left: 0px;
		color: gray;
	}

	/* Search bar full-width on mobile (was 50%) */
	.product-search-bar {
		width: 100%;
	}

	/* Sort select: drop absolute positioning so it doesn't overlap the
	   search bar above; render in normal flow, full width with margin-top */
	.filtersortcontainer select,
	.filtersortcontainer .nice-select {
		position: static !important;
		width: 100% !important;
		right: auto !important;
		top: auto !important;
		margin-top: 12px !important;
	}

	/* .prheading has a fixed height: 50px which makes the select overflow
	   below the parent's border-bottom. Let the container grow on mobile. */
	.filtersortcontainer.prheading {
		height: auto !important;
		padding-bottom: 16px;
	}

	/* Pagination: tighter padding so all items fit in one row on small viewports */
	.pagination {
		gap: 2px;
	}
	.pagination a,
	.pagination span.pag-nav,
	.pagination span.pag-dots {
		padding: 6px 10px;
		font-size: 0.9rem;
	}

	/* Filter icon: vertically center next to the sort select on mobile */
	#filtericon {
		top: 50%;
		transform: translateY(-50%);
	}
}

@media (max-width: 768px) {
	.footeritem {
		min-height: unset;
		padding: 0px 10px !important;
		border: none;
		margin: 30px 0px;
	}
	.footericon {
		padding: 0px;
	}
	.footericon img {
		margin: unset;
		margin: 10px 0px;
	}
	
	.fullpageteaser {
		width: 100%;
		min-height: unset;
		background-size: cover;
		background-position: center center;
		position: relative;
		padding-bottom: 40px;
	}
	
	.fullpageteaser .slidecontent {
		top: unset;
		position: relative;
		bottom: unset;
		left: unset;
		text-align: left;
		max-width: unset;
		margin-top: -19px;
		display: block;
		padding: 20px;
		padding-top: 50px;
	}
	
	.zeitframe {
		height: calc(100vh - 100px);
	}
	
	
	
	.zeitback {

	}

	/* Product grid mobile */
	.productElement {
		margin-bottom: 20px;
	}

	.filter-section {
		border-right: none;
	}

	/* Footer columns already stack via Bootstrap col-sm, just ensure spacing */
	.footer-branches {
		padding: 0 15px;
	}
	.footer-links-col {
		padding: 0 15px;
	}
}