.rs-columns {
  clear: both;
  display: inline-block;
  width: 100%;
}

.rs-column {
  float: left;
  width: 100%;
  margin-top: 7.69231%;
  margin-right: 7.69231%;
}
.rs-column.-large-first {
  clear: left;
}
.rs-column.-large-last {
  margin-right: -5px;
}
.rs-column.-large-first-row {
  margin-top: 0;
}
.rs-column.-large-col-1-1 {
  width: 100%;
}
.rs-column.-large-col-2-1 {
  width: 46.15385%;
}
.rs-column.-large-col-2-2 {
  width: 100%;
}
.rs-column.-large-col-3-1 {
  width: 28.20513%;
}
.rs-column.-large-col-3-2 {
  width: 64.10256%;
}
.rs-column.-large-col-3-3 {
  width: 100%;
}
.rs-column.-large-col-4-1 {
  width: 19.23077%;
}
.rs-column.-large-col-4-2 {
  width: 46.15385%;
}
.rs-column.-large-col-4-3 {
  width: 73.07692%;
}
.rs-column.-large-col-4-4 {
  width: 100%;
}
.rs-column.-large-col-5-1 {
  width: 13.84615%;
}
.rs-column.-large-col-5-2 {
  width: 35.38462%;
}
.rs-column.-large-col-5-3 {
  width: 56.92308%;
}
.rs-column.-large-col-5-4 {
  width: 78.46154%;
}
.rs-column.-large-col-5-5 {
  width: 100%;
}
.rs-column.-large-col-6-1 {
  width: 10.25641%;
}
.rs-column.-large-col-6-2 {
  width: 28.20513%;
}
.rs-column.-large-col-6-3 {
  width: 46.15385%;
}
.rs-column.-large-col-6-4 {
  width: 64.10256%;
}
.rs-column.-large-col-6-5 {
  width: 82.05128%;
}
.rs-column.-large-col-6-6 {
  width: 100%;
}
@media screen and (max-width: 900px) {
  .rs-column {
    margin-top: 7.69231%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-first {
    clear: none;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-medium-first {
    clear: left;
  }
  .rs-column.-medium-last {
    margin-right: -5px;
  }
  .rs-column.-medium-first-row {
    margin-top: 0;
  }
  .rs-column.-medium-col-1-1 {
    width: 100%;
  }
  .rs-column.-medium-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-2-2 {
    width: 100%;
  }
  .rs-column.-medium-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-3-3 {
    width: 100%;
  }
  .rs-column.-medium-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-medium-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-medium-col-4-4 {
    width: 100%;
  }
  .rs-column.-medium-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-medium-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-medium-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-medium-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-medium-col-5-5 {
    width: 100%;
  }
  .rs-column.-medium-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-medium-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-medium-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-medium-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-medium-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-medium-col-6-6 {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .rs-column {
    margin-top: 7.69231%;
    margin-right: 7.69231%;
  }
  .rs-column.-large-last {
    margin-right: 7.69231%;
  }
  .rs-column.-large-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-medium-first {
    clear: none;
  }
  .rs-column.-medium-last {
    margin-right: 7.69231%;
  }
  .rs-column.-medium-first-row {
    margin-top: 7.69231%;
  }
  .rs-column.-small-first {
    clear: left;
  }
  .rs-column.-small-last {
    margin-right: -5px;
  }
  .rs-column.-small-first-row {
    margin-top: 0;
  }
  .rs-column.-small-col-1-1 {
    width: 100%;
  }
  .rs-column.-small-col-2-1 {
    width: 46.15385%;
  }
  .rs-column.-small-col-2-2 {
    width: 100%;
  }
  .rs-column.-small-col-3-1 {
    width: 28.20513%;
  }
  .rs-column.-small-col-3-2 {
    width: 64.10256%;
  }
  .rs-column.-small-col-3-3 {
    width: 100%;
  }
  .rs-column.-small-col-4-1 {
    width: 19.23077%;
  }
  .rs-column.-small-col-4-2 {
    width: 46.15385%;
  }
  .rs-column.-small-col-4-3 {
    width: 73.07692%;
  }
  .rs-column.-small-col-4-4 {
    width: 100%;
  }
  .rs-column.-small-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-small-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-small-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-small-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-small-col-5-5 {
    width: 100%;
  }
  .rs-column.-small-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-small-col-6-2 {
    width: 28.20513%;
  }
  .rs-column.-small-col-6-3 {
    width: 46.15385%;
  }
  .rs-column.-small-col-6-4 {
    width: 64.10256%;
  }
  .rs-column.-small-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-small-col-6-6 {
    width: 100%;
  }
}

/**
* html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
* Richard Clark (http://richclarkdesign.com)
* http://cssreset.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body {
line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
nav ul {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
/* change colours to suit your needs */
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
/* change colours to suit your needs */
mark {
background-color:#ff9;
color:#000;
font-style:italic;
font-weight:bold;
}
del {
text-decoration: line-through;
}
abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}
table {
border-collapse:collapse;
border-spacing:0;
}
/* change border colour to suit your needs */
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}
input, select {
vertical-align:middle;
}
:root {
	
	--wrapper-width: 144rem;
	
    --font-family-primary: 'Roboto';
    --font-family-secondary: 'Roboto Slab';
	
	--color-green: #76b82a;
	--color-green-dark: #4ca22f;
	--color-blue: #41c0f0;
	--color-blue-dark: #509ccd;
	--color-black: #191919;
	--color-brand: #f39200;
	--color-brand-dark: #ea5b0c;
	--color-brand-lighter: #faa628;
	--color-brand-darker: #f38600;
	--color-links: var(--color-brand);
	--color-links-lighter: var(--color-brand-lighter);
	--color-btn: var(--color-brand);
	
	--base-line-height: 1.4;
    --base-font-size: 1.6rem;
    --base-line-height: 1.625;
	
    --headings-line-height: 1.1;
	--headings-weight: 700;
    --headings-color: #1a1a1a;
	
	--font-size-s: 1.2rem;
	--font-size-m: 1.4rem;
	--font-size-l: 1.8rem;
	--font-size-xl: 2rem;
	--font-size-xxl: 2.2rem;
}
.rs-columns {
  clear: both;
  display: inline-block;
  width: 100%;
}

.rs-column {
  float: left;
  width: 100%;
  margin-top: 3%;
  margin-right: 3%;
}
.rs-column.-large-first {
  clear: left;
}
.rs-column.-large-last {
  margin-right: -5px;
}
.rs-column.-large-first-row {
  margin-top: 0;
}
.rs-column.-large-col-1-1 {
  width: 100%;
}
.rs-column.-large-col-2-1 {
  width: 48.5%;
}
.rs-column.-large-col-2-2 {
  width: 100%;
}
.rs-column.-large-col-3-1 {
  width: 31.3333%;
}
.rs-column.-large-col-3-2 {
  width: 64.6666%;
}
.rs-column.-large-col-3-3 {
  width: 100%;
}
.rs-column.-large-col-4-1 {
  width: 22.75%;
}
.rs-column.-large-col-4-2 {
  width: 48.5%;
}
.rs-column.-large-col-4-3 {
  width: 77.25%;
}
.rs-column.-large-col-4-4 {
  width: 100%;
}
.rs-column.-large-col-5-1 {
  width: 13.84615%;
}
.rs-column.-large-col-5-2 {
  width: 35.38462%;
}
.rs-column.-large-col-5-3 {
  width: 56.92308%;
}
.rs-column.-large-col-5-4 {
  width: 78.46154%;
}
.rs-column.-large-col-5-5 {
  width: 100%;
}
.rs-column.-large-col-6-1 {
  width: 10.25641%;
}
.rs-column.-large-col-6-2 {
  width: 31.3333%;
}
.rs-column.-large-col-6-3 {
  width: 48.5%;
}
.rs-column.-large-col-6-4 {
  width: 64.6666%;
}
.rs-column.-large-col-6-5 {
  width: 82.05128%;
}
.rs-column.-large-col-6-6 {
  width: 100%;
}
@media screen and (max-width: 900px) {
  .rs-column {
    margin-top: 3%;
    margin-right: 3%;
  }
  .rs-column.-large-first {
    clear: none;
  }
  .rs-column.-large-last {
    margin-right: 3%;
  }
  .rs-column.-large-first-row {
    margin-top: 3%;
  }
  .rs-column.-medium-first {
    clear: left;
  }
  .rs-column.-medium-last {
    margin-right: -5px;
  }
  .rs-column.-medium-first-row {
    margin-top: 0;
  }
  .rs-column.-medium-col-1-1 {
    width: 100%;
  }
  .rs-column.-medium-col-2-1 {
    width: 48.5%;
  }
  .rs-column.-medium-col-2-2 {
    width: 100%;
  }
  .rs-column.-medium-col-3-1 {
    width: 31.3333%;
  }
  .rs-column.-medium-col-3-2 {
    width: 64.6666%;
  }
  .rs-column.-medium-col-3-3 {
    width: 100%;
  }
  .rs-column.-medium-col-4-1 {
    width: 22.75%;
  }
  .rs-column.-medium-col-4-2 {
    width: 48.5%;
  }
  .rs-column.-medium-col-4-3 {
    width: 77.25%;
  }
  .rs-column.-medium-col-4-4 {
    width: 100%;
  }
  .rs-column.-medium-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-medium-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-medium-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-medium-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-medium-col-5-5 {
    width: 100%;
  }
  .rs-column.-medium-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-medium-col-6-2 {
    width: 31.3333%;
  }
  .rs-column.-medium-col-6-3 {
    width: 48.5%;
  }
  .rs-column.-medium-col-6-4 {
    width: 64.6666%;
  }
  .rs-column.-medium-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-medium-col-6-6 {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  .rs-column {
    margin-top: 3%;
    margin-right: 3%;
  }
  .rs-column.-large-last {
    margin-right: 3%;
  }
  .rs-column.-large-first-row {
    margin-top: 3%;
  }
  .rs-column.-medium-first {
    clear: none;
  }
  .rs-column.-medium-last {
    margin-right: 3%;
  }
  .rs-column.-medium-first-row {
    margin-top: 3%;
  }
  .rs-column.-small-first {
    clear: left;
  }
  .rs-column.-small-last {
    margin-right: -5px;
  }
  .rs-column.-small-first-row {
    margin-top: 0;
  }
  .rs-column.-small-col-1-1 {
    width: 100%;
  }
  .rs-column.-small-col-2-1 {
    width: 48.5%;
  }
  .rs-column.-small-col-2-2 {
    width: 100%;
  }
  .rs-column.-small-col-3-1 {
    width: 31.3333%;
  }
  .rs-column.-small-col-3-2 {
    width: 64.6666%;
  }
  .rs-column.-small-col-3-3 {
    width: 100%;
  }
  .rs-column.-small-col-4-1 {
    width: 22.75%;
  }
  .rs-column.-small-col-4-2 {
    width: 48.5%;
  }
  .rs-column.-small-col-4-3 {
    width: 77.25%;
  }
  .rs-column.-small-col-4-4 {
    width: 100%;
  }
  .rs-column.-small-col-5-1 {
    width: 13.84615%;
  }
  .rs-column.-small-col-5-2 {
    width: 35.38462%;
  }
  .rs-column.-small-col-5-3 {
    width: 56.92308%;
  }
  .rs-column.-small-col-5-4 {
    width: 78.46154%;
  }
  .rs-column.-small-col-5-5 {
    width: 100%;
  }
  .rs-column.-small-col-6-1 {
    width: 10.25641%;
  }
  .rs-column.-small-col-6-2 {
    width: 31.3333%;
  }
  .rs-column.-small-col-6-3 {
    width: 48.5%;
  }
  .rs-column.-small-col-6-4 {
    width: 64.6666%;
  }
  .rs-column.-small-col-6-5 {
    width: 82.05128%;
  }
  .rs-column.-small-col-6-6 {
    width: 100%;
  }
}

/*!
 * SlickNav Responsive Mobile Menu v1.0.10
 * (c) 2016 Josh Cope
 * licensed under MIT
 */
.slicknav_btn {
  position: relative;
  display: block;
  vertical-align: middle;
  float: right;
  padding: 0.438em 0.625em 0.438em 0.625em;
  line-height: 1.125em;
  cursor: pointer; }
  .slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
    margin-top: 0.188em; }

.slicknav_menu {
  *zoom: 1; }
  .slicknav_menu .slicknav_menutxt {
    display: block;
    line-height: 1.188em;
    float: left; }
  .slicknav_menu .slicknav_icon {
    float: left;
    width: 1.125em;
    height: 0.875em;
    margin: 0.188em 0 0 0.438em; }
    .slicknav_menu .slicknav_icon:before {
      background: transparent;
      width: 1.125em;
      height: 0.875em;
      display: block;
      content: "";
      position: absolute; }
  .slicknav_menu .slicknav_no-text {
    margin: 0; }
  .slicknav_menu .slicknav_icon-bar {
    display: block;
    width: 1.5em;
    height: 0.125em;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.5);
    box-shadow: 0 2px 0 rgba(0, 0, 0, 0.5); }
  .slicknav_menu:before {
    content: " ";
    display: table; }
  .slicknav_menu:after {
    content: " ";
    display: table;
    clear: both; }

.slicknav_nav {
  clear: both; }
  .slicknav_nav ul {
    display: block; }
  .slicknav_nav li {
    display: block; }
  .slicknav_nav .slicknav_arrow {
    font-size: 0.8em;
    margin: 0 0 0 0.4em; }
  .slicknav_nav .slicknav_item {
    cursor: pointer; }
    .slicknav_nav .slicknav_item a {
      display: inline; }
  .slicknav_nav .slicknav_row {
    display: block; }
  .slicknav_nav a {
    display: block; }
  .slicknav_nav .slicknav_parent-link a {
    display: inline; }

.slicknav_brand {
  float: left; }

.slicknav_menu {
  font-size: 16px;
  box-sizing: border-box;
  background: #4c4c4c;
  padding: 5px; }
  .slicknav_menu * {
    box-sizing: border-box; }
  .slicknav_menu .slicknav_menutxt {
    color: #fff;
    font-weight: bold;
    text-shadow: 0 1px 3px #000; }
  .slicknav_menu .slicknav_icon-bar {
    background-color: #fff; }

.slicknav_btn {
  margin: 5px 5px 6px;
  text-decoration: none;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.slicknav_nav {
  color: #fff;
  margin: 0;
  padding: 0;
  font-size: 0.875em;
  list-style: none;
  overflow: hidden; }
  .slicknav_nav ul {
    list-style: none;
    overflow: hidden;
    padding: 0;
    margin: 0 0 0 20px; }
  .slicknav_nav .slicknav_txtnode {
    margin-left: 15px; }
  .slicknav_nav .slicknav_item a {
    padding: 0;
    margin: 0; }
  .slicknav_nav .slicknav_parent-link a {
    padding: 0;
    margin: 0; }

.slicknav_brand {
  color: #fff;
  font-size: 18px;
  line-height: 30px;
  padding: 7px 12px;
  height: 44px; }

/* ==============================
   Button
   ============================== */

.btn {
	margin: 0 0 5rem;
}

.btn a {
	display: inline-block;
	padding: 1.6rem 3rem;
	font-size: 1.6rem;
	font-weight: 700;
	font-family: var(--font-family-secondary);
	line-height: normal;
	border-radius: 2rem;
	color: #fff !important;
}

.btn--orange a {
	background: var(--color-brand);
}

.btn--gradient a {background: linear-gradient(to right, var(--color-brand), var(--color-brand-dark)); }
body.werbetechnik .btn--gradient a {background: linear-gradient(to right, var(--color-green), var(--color-green-dark)); }
body.textildruck .btn--gradient a {background: linear-gradient(to right, var(--color-blue), var(--color-blue-dark)); }

.btn--orange a:hover,
.btn--gradient a:hover {
	filter: brightness(1.1); 
}



/* ==============================
   Hero Image
   ============================== */

#hero {
	position: relative;
}

#hero figure {
	height: calc(100vh - 9.5rem);
}

#hero .container {
	max-width: none;
	padding: 0;
	width: 100%;
}

#hero img,
#hero video {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#hero video {
	filter: brightness(0.6) contrast(1.1);
}

.hero__text-wrapper {
	position: absolute;
	top: 60%;
	left: 50%;
	transform: translate(-50%, -60%);
	max-width: var(--wrapper-width);
	padding: 0 3rem;
	width: 100%;
	color: #fff;
}

.hero__text-wrapper .headlinebox,
.hero__text-wrapper .hero__text {
	max-width: 65%;
}

.hero__text-wrapper .headlinebox__addon {
	color: #fff;
}

.hero__text-wrapper .headlinebox__headline {
	font-size: 1.5rem;
	color: #fff;
}

.hero__text {
	margin: 10rem 0 0;
	font-size: 1.6rem;
}

.hero__button {
	position: absolute;
	z-index: 100;
	bottom: 6rem;
	left: 50%;
	transform: translateX(-50%);
	padding: 0 3rem;
	max-width: var(--wrapper-width);
	width: 100%;
}

.hero__button a {
	position: relative;
	font-weight: 500;
	font-size: 1.6rem;
	font-family: var(--font-family-secondary);
}

.hero__button a:hover {
	filter: brightness(1.1); 
}

.hero__button__arrow {
	position: absolute;
	top: 3rem;
	left: 50%;
	transform: translateX(-50%);
}

.hero__button__arrow span {
	display: block;
	width: 1.1rem;
	height: 1.1rem;
	border-bottom: 3px solid var(--color-brand);
	border-right: 3px solid var(--color-brand);
	transform: rotate(45deg);
	margin: -3px;
	animation: arrows 1.5s infinite;
}

body.werbetechnik .hero__button__arrow span {
	border-bottom-color: var(--color-green);
	border-right-color: var(--color-green);
}

body.textildruck .hero__button__arrow span {
	border-bottom-color: var(--color-blue);
	border-right-color: var(--color-blue);
}

.hero__button__arrow span:nth-of-type(3),
.hero__button__arrow span:nth-of-type(4) {
	border-color: #fff !important;
}

@keyframes arrows {
	0% {
		opacity: 0;
		transform: rotate(45deg) translate(-5px, -5px);
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		transform: rotate(45deg) translate(5px, 5px);
	}
}



/* ==============================
   Icon-Teasers
   ============================== */

.iconteasers {
	display: flex;
	flex-wrap: wrap;
	margin: 8rem 0 5rem;
}

.iconteasers__entry {
	width: 25%;
	text-align: center;
}

.iconteasers strong {
	font-family: var(--font-family-secondary);
}

.iconteasers figcaption {
	padding: 0 10%;
}

.iconteasers img {
	margin: 0 auto 3rem;
}

.iconteasers figcaption a {
	color: var(--color-brand);
}





/* ==============================
   Icon-Karten
   ============================== */

.iconcards {
	display: flex;
	justify-content: space-between;
	margin: 0 0 8rem;
}

.iconcard {
	position: relative;
	padding: 2rem;
	border-radius: 2.5rem;
	width: 17.5%;
	height: 28rem;
	text-align: center;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	background: #fff;
}

.iconcard:hover {
	transition: 0.3s all;
	box-shadow: 0 0 20px rgba(0,0,0,0.4);
}

.iconcard--orange {
	background: linear-gradient(to bottom right, var(--color-brand), var(--color-brand-dark));
}

.iconcard__link {
	color: inherit;
}

.iconcard__content {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.iconcard__title {
	margin: 0 0 6rem;
	padding: 0 1rem;
	line-height: 1.5;
	font-family: var(--font-family-primary);
}

.iconcard--orange .iconcard__title {
	color: #fff;
}

.iconcard__text {
	display: none;
	margin: -4.5rem 0 0;
	width: 100% !important;
	padding: 0 2rem !important;
	font-size: 1.3rem;
	font-weight: 300;
	hyphens: auto;        /* automatische Silbentrennung */
	overflow-wrap: break-word; /* falls ein Wort gar nicht trennbar ist */
}

.iconcard--orange .iconcard__text {
	color: #fff;
}

.iconcard__image img {
	margin: 0 auto 5rem;
	height: 8rem;
	transition: 0.3s all;
}

.iconcard:hover .iconcard__image img {
	margin: 0 auto 3rem;
}



/* ==============================
   Grid gallery
   ============================== */

.grid-gallery--v1 .grid-gallery__list {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	grid-template-rows: repeat(16, 1fr);
	grid-column-gap: 30px;
	grid-row-gap: 30px; 
	margin: 0;
}

.grid-gallery--v1 .grid-gallery__item {
	list-style: none;
}

.grid-gallery--v1 .grid-gallery__item--large {
	grid-area: 1 / 1 / 9 / 6;
}

.grid-gallery--v1 .grid-gallery__item--medium {
	grid-area: 3 / 6 / 9 / 9;
}

.grid-gallery--v1 .grid-gallery__item--highlight {
	grid-area: 9 / 1 / 15 / 4;
}

.grid-gallery--v1 .grid-gallery__item--wide {
	grid-area: 9 / 4 / 17 / 9; 
}

.grid-gallery--v1 .grid-gallery__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.grid-gallery--v2 .grid-gallery__list {
	display: grid;
	grid-template-columns: repeat(16, 1fr);
	grid-template-rows: repeat(5, 1fr);
	grid-column-gap: 20px;
	grid-row-gap: 20px;
	margin: 0;
	width: 300%;
}

.grid-gallery--v2 .grid-gallery__item {
	list-style: none;
}

.grid-gallery--v2 .grid-gallery__item--1 {
	grid-area: 6 / 1 / 8 / 3;
}

.grid-gallery--v2 .grid-gallery__item--2 {
	grid-area: 1 / 3 / 7 / 6;
}

.grid-gallery--v2 .grid-gallery__item--3 {
	grid-area: 8 / 1 / 11 / 6;
	margin: 0 0 -44%;
}

.grid-gallery--v2 .grid-gallery__item--4 {
	grid-area: 10 / 4 / 12 / 6; /* 1 Row nach oben verschoben */
}

.grid-gallery--v2 .grid-gallery__item--5 {
	grid-area: 10 / 1 / 15 / 4; /* 1 Row nach oben verschoben */
}

.grid-gallery--v2 .grid-gallery__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.grid-gallery--v2 .grid-gallery__item--2 img {
	height: 127%;
}

.grid-gallery--v2 .grid-gallery__item--3 img {
	height: 40%;
}






/* ==============================
   Text-Bild Sektionen
   ============================== */

.media-text {
	display: flex;
	margin: 0 0 8rem;
}

.iconteasers + .media-text {
	margin-top: 12rem;
}

.media-text__content {
	padding: 0 7% 0 0;
}

.media-text--reverse {
	display: flex;
}

.media-text--reverse .media-text__content {
	order: 1;
	margin-right: 0;
	padding: 0 0 0 7%;
}

.media-text__content {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.media-text--teamwork .media-text__content {
	padding-top: 9rem;
}

.media-text__footer {
	margin: auto 0 0;
}

.media-text__links p {
	margin: 0;
	font-weight: 700;
	color: var(--color-brand);
}

.media-text__links ul {
	margin: 0;
}

.media-text__links ul li {
	display: inline;
}

.media-text__links ul li::after {
	content: " | ";
}

.media-text__links ul li:last-of-type::after {
	display: none;
}

.media-text__links ul li a {
	color: inherit;
}

.media-text__links ul li a:hover {
	color: var(--color-brand);
}




.mod_article.equipment {
	margin: 0 0 3rem
}

.mod_article.equipment .grid-gallery--v2 {
	margin: -14rem 0 -16rem;
}





.main .article--neuland {
	padding: 8rem 0 0;
}

.article--neuland .media-text__content {
	position: relative;
	justify-content: center; 
}

.article--neuland img {
	float: right;
	margin: 0 -10rem 0 0;
	width: 150%;
	max-width: none;
}

.article--neuland .cta-btn {
	position: absolute;
	z-index: 10;
	right: 8rem;
	bottom: -17rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0 2rem;
	width: 20rem;
	height: 20.1rem;
	text-align: center;
	text-shadow: 1px 1px 1px var(--color-brand-dark);
	color: #fff;
	background: url("../../files/theme/img/cta-btn-round.svg") no-repeat;
}

.article--neuland .cta-btn__title {
	margin: 0 0 1rem;
	line-height: 1.3;
	font-weight: 900;
	font-size: 2.3rem;
	font-family: var(--font-family-secondary);
}




.main .article--matrix {
	padding: 15rem 0 35rem;
	background: url("../../files/theme/img/bgs/matrix-bg-dummy.jpg") no-repeat center center;
	background-size: cover;
}




.main .quote {
	overflow-y: hidden;
	position: relative;
	padding: 13rem 0;
	border-bottom: 1rem solid var(--color-black);
	color: #fff;
	text-align: center;
	background: linear-gradient(to right, #f39100, #ea5c0a);
}

.main .quote::before {
	content: "";
	position: absolute;
	left: 10%;
	bottom: -30%;
	display: block;
	width: 35rem;
	height: 35rem;
	background: url("../../files/theme/img/bgs/logo-quote-bg.svg") no-repeat;
}

.quote p {
	position: relative;
	margin: 0 0 1rem;
	line-height: 1.3;
	font-size: 3.3rem;
	font-weight: 700;
	font-family: var(--font-family-secondary);
}

.quote footer {
	position: relative;
	margin: 1.5rem 0 0;
	font-size: 1.3rem;
}

.quote footer cite {
	font-style: normal;
}




.ce_accordion.first {
	margin-top: 1rem;
}

.ui-accordion-header {
	cursor: pointer;
	font-weight: 700;
	font-family: var(--font-family-secondary);
	color: var(--color-brand);
}

body.werbetechnik .ui-accordion-header {
	color: var(--color-green);
}

body.textildruck .ui-accordion-header {
	color: var(--color-blue);
}

.ui-accordion-header::before {
	content: "» ";
}

.ui-accordion-content {
	margin: 1rem 0 0;
}




.article--anlagen {
	
	background: url("../../files/theme/img/bgs/anlagen-bg.jpg") no-repeat center center;
	background-size: cover;
}

.article--anlagen .headlinebox {
	margin: 0 0 10rem;
}
.main .home-intro {
	padding: 7.5rem 0;
}



.cards {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 7rem auto;
	max-width: 116rem;
}

.card {
	position: relative;
	width: 31%;
	border-radius: 3rem;
}

.card::before {
	content: "";
	position: absolute;
	z-index: 10;
	top: 3px;
	left: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border-radius: 3rem;
	pointer-events: none;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100,000000+100&0+20,0.65+100 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 20%,rgba(0,0,0,0.65) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.card::after {
	content: "";
	position: absolute;
	z-index: 10;
	bottom: -0.2rem;
	left: 50%;
	transform: translateX(-50%);
	width: 15rem;
	height: 0.8rem;
	background: var(--color-brand);
}

.card:nth-of-type(2)::after { background: var(--color-green); }
.card:nth-of-type(3)::after { background: var(--color-blue); }

.card img {
	position: relative;
	z-index: 1;
	border-radius: 3rem;
	padding: 4px;
	width: 100%;
	transition: filter 0.3s ease;
}

.card:hover img {
	filter: brightness(0.8);
}

.card__content {
	position: absolute;
	width: 100%;
	z-index: 100;
	bottom: 0;
	padding: 0 7% 1rem;
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
}

.card__headline {
	margin: 0 0 3rem;
	font-size: 2.7rem;
	font-family: var(--font-family-primary);
	color: #fff;
}

.card__description {
	display: none;
	width: 100% !important;
}

.card__border {
	--c: var(--color-brand); /* the border color */
	--b: 0;      /* the border thickness*/
	--g: 0px;      /* the gap on hover */
	
	position: absolute;
	transform: rotate(180deg);
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 3rem;
	padding: calc(var(--g) + var(--b));
	--_g: var(--c) 25%,var(--c) 0;
	background: 
		conic-gradient(from 180deg at top    var(--b) right var(--b),var(--_g))
		 var(--_i,200%) 0  /200% var(--_i,var(--b))  no-repeat,
		conic-gradient(            at bottom var(--b) left  var(--b),var(--_g))
		 0   var(--_i,200%)/var(--_i,var(--b)) 200%  no-repeat;
	transition: .3s, background-position .3s .3s;
}

.card:nth-of-type(2) .card__border {
	--c: var(--color-green);
}

.card:nth-of-type(3) .card__border {
	--c: var(--color-blue);
}

.card:hover .card__border {
	--_i: 100%;
	transition: .3s, background-size .3s .1s;
	background-position: center top;
}




.home-big-logo img {
	float: right;
	margin: 5rem 0 0;
}






.why-us__content {
	padding: 0 5% 0 0;
}






.main .home-projects {
	padding: 12rem 0;
	color: #fff;
	background: url("../../files/theme/img/bgs/home-projects-bg.jpg") no-repeat;
	background-size: cover;
}

.home-projects .headlinebox__addon {
	color: #fff;
}

.home-projects .headlinebox__headline {
	color: #fff;
}

.home-projects .headlinebox + .content-text {
	max-width: 75rem;
}

.home-projects__slider {
	margin: 10rem -20vw 0 0;
}

.home-projects__slider img {
	width: 100%;
}

.home-projects__slider__text {
	position: relative;
	margin: -2rem 0 0 2rem;
	padding: 6rem 0 0 2rem;
	line-height: 1.2;
}

.home-projects__slider__text::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0.4rem;
	height: 100%;
	width: 3px;
	background: var(--color-brand);
}

.home-projects__slider__title {
	font-size: 1.6rem;
	color: #fff;
}

.home-projects__slider__service {
	font-size: 1.6rem;
	font-weight: 300;
	color: #fff;
}




.main .home-logos {
	padding: 7rem 0;
	background: #e6e6e6;
}

.home-logos__list ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0;
}

.home-logos__list ul li {
	width: 22.5%;
	list-style: none;
}

.home-logos__list ul li img {
	margin: 0 auto;
	max-width: 70%;
}






.clear::after {
	content: "";
	display: table;
	clear: both;
}

.invisible {
	position:absolute;
	left:-10000px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
}

.full-width {
	position: relative;
	left: 50%;
	right: 50%;
	margin: 0 -50vw;
	width: 100vw;
}
html {
	font-size: 62.5%;
}

body {
	padding: 9.5rem 0 0;
	height: 2000px;
	line-height: var(--base-line-height);
	font-size: var(--base-font-size);
    font-family: var(--font-family-primary);
    color: var(--color-text);
	overflow-x: hidden;
}

body::before {
	content: "";
	display: block;
	height: 1rem;
	background: #fff;
}

::selection { color: #fff; background: var(--color-links); }
::-moz-selection { color: #fff; background: var(--color-links); }
::-webkit-selection { color: #fff; background: var(--color-links); }

*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box
}

p, ul, ol {
	margin: 0 0 3rem;
}

.content-text.m-b-0 > .rte > p:last-of-type {
	margin: 0 !important;
}

a {
	color: var(--color-brand);
	text-decoration: none;
	transition: 0.3s all;
}

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

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 0.5em;
	line-height: var(--headings-line-height);
    font-family: var(--font-family-secondary);
	font-weight: var(--headings-weight);
    color: var(--headings-color);
}




::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
	color: #b3b3b3;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #b3b3b3;
}

::-ms-input-placeholder { /* Microsoft Edge */
	color: #b3b3b3;
}


