@charset "UTF-8";
/* moved by compressor */
/*
Each variable should have the !default attribute if we are able to set them in
the TYPO3 Backend
 */
/*
Colors

The following combination of Communication Group and Communication Lines are
defined.

<section>
<table>
	<thead>
		<tr>
			<th>Theme Key</th><th>Center</th><th>Local Center</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td>[0][0] Name it</td>
			<td><a target="_blank" href="https://www.alstertal-einkaufszentrum.de/">Alstertal Einkaufzentrum</a></td>
			<td><a target="_blank"  href="http://local.aez:8106/">Alstertal Einkaufzentrum</a></td>
		</tr>
		<tr>
			<td>[0][1] Lifestyle & Trend</td>
			<td><a target="_blank"  href="https://www.olympia-einkaufszentrum.de/">Olympia-Einkaufszentrum</a></td>
			<td><a target="_blank"  href="http://local.oez:8106/">Olympia-Einkaufszentrum</a></td>
		</tr>
		<tr>
			<td>[1][0] My place</td>
			<td><a target="_blank"  href="https://www.linden-center-berlin.de/">Linden-Center</a></td>
			<td><a  target="_blank" href="http://local.lcb:8106/">Linden-Center</a></td>
		</tr>
		<tr>
			<td>[1][1] Where else</td>
			<td><a target="_blank"  href="https://www.europa-passage.de/">Europa Passage</a></td>
			<td><a target="_blank"  href="http://local.eph:8106/">Europa Passage</a></td>
		</tr>
		<tr>
			<td>[2][0] Colorful life</td>
			<td><a target="_blank"  href="https://www.tempelhofer-hafen.com/">Tempelhofer Hafen</a></td>
			<td><a target="_blank"  href="http://local.thb:8106">Tempelhofer Hafen</a></td>
		</tr>
		<tr>
			<td>[2][1] Variety</td>
			<td><a target="_blank"  href="https://www.billstedt-center.de/">Billstedt-Center</a></td>
			<td><a target="_blank"  href="http://local.bch:8106/">Billstedt-Center</a></td>
		</tr>
		<tr>
			<td>[2][2] Enjoy Life / Talk about</td>
			<td><a target="_blank"  href="https://www.city-center-chorweiler.de/">City-Center Chorweiler</a></td>
			<td><a target="_blank"  href="http://local.ccc:8106">City-Center Chorweiler</a></td>
		</tr>
	</tbody>
</table>
</section>

Styleguide 8.0
*/
/*
Lines

markup:
<div class="line-placeholder" style="background-color"></div>

Styleguide 8.1
*/
/* breakpoints */
body {
  overflow-x: hidden;
}

/* typo3 overridable fonts */
/* typo3 overridable colors */
/* typo3 module colors */
/*
$primary-color: rgb(51,49,78) !default;
$secondary-color: rgb(255,212,0) !default;
*/
/* neutral colors */
/* transparent colors */
/* lines */
/* placeholder */
/* background image */
/* spacings for text areas */
/* Generic */
/* z-index ranges */
/* VARIABLES */
/* ATOMS */
/* MOLECULES */
/* ORGANISMS */
/* TEMPLATES */
/*
@if $communication-group == 2 {
	$highlight-color: $primary-color;
} @else {
	$highlight-color: $secondary-color;
};
*/
/* Given a key, return its value corresponding to the current communication
* group and variation. If the key has no map entry for:
* - the current communication group: default to communication-group 0, variation 0
* - the current variation: if exists (communication-group, 0) -> (cg, 0) else (0,0)
*/
/* font-entry
 * Utility function that given a list of fonts parameters returns the values as
 * a map.
 * @param family: font-family
 * @param weight: font-weight
 * @param size: font-size
 * @param line-height: line-height
 * @return a sass map with the format (font-family: $family, font-weight: $weight ...)
 */
/* font-entry-mulish
 * Specialized utility function for Mulish fonts without Helvetica fallback chain.
 * Creates font entry with only sans-serif as fallback.
 * @param family: font-family (typically Mulish)
 * @param weight: font-weight
 * @param size: font-size
 * @param line-height: line-height
 * @return a sass map with the format (font-family: $family, font-weight: $weight ...)
 */
/* font-rules
 * Utility function
 * @param $rules:  a rule map with format (font-family: XX, font-size: 16px...)
 * @return: the rules as CSS block
 */
/* font
 * Creates the font-* and line-height rules for a certain element.  Data is
 * taken from a map named font. If the map contains entries for different media
 * queries, those are created as well. 'xs' is the default (i.e. no media query)
 *
 * @param $class: name of a font
 * @return font rules
 */
/*
Spacings and Separators

Mixins and classes to add spaces and separate content.

Default (responsive) spacings. The padding is shown in green, the margin
in yellow.

Styleguide 6.1
*/
/*
Section vertical padding

Responsive top and bottom spacing.
Mixin (`@mixin section-padding`) and class (`section-padding`)

markup:
<div class="padding-placeholder section-padding"></div>

Styleguide 6.1.1
*/
/*
Section vertical padding asymmetric

Responsive top and bottom spacing.
Mixin (`@mixin section-padding-asymmetric`) and class (`section-padding-asymmetric`)

markup:
<div class="padding-placeholder section-padding-asymmetric"></div>

Styleguide 6.1.2
*/
/*
Section bottom padding

Responsive bottom padding.
Mixin (`@mixin spacing-responsive-base`) and class(`spacing-responsive-base`)

markup:
<div class="spacing-responsive-base"></div>

sg-wrapper:
<div class="margin-placeholder">
	<sg-wrapper-content/>
</div>

Styleguide 6.1.3
*/
/*
Section bottom padding increased

Responsive bottom padding.
Mixin (`@mixin spacing-responsive-inc`) and class(`spacing-responsive-inc`)

markup:
<div class="padding-placeholder spacing-responsive-inc"></div>

sg-wrapper:
<div class="margin-placeholder">
	<sg-wrapper-content/>
</div>

Styleguide 6.1.4
*/
.section-padding {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.section-margin {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.button-margin {
  margin-bottom: 1rem;
  margin-top: 1rem;
}

.button-margin-large {
  margin-bottom: 2rem;
  margin-top: 2rem;
}

.button-padding {
  padding-bottom: 1rem;
  padding-top: 1rem;
}

.section-padding {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.section-padding-asymmetric {
  padding-top: 1.5rem;
  padding-bottom: 2.25rem;
}

.spacing-base {
  margin-bottom: 1.5rem;
}

.spacing-responsive-inc {
  margin-bottom: 2.25rem;
}

.spacing-responsive-base {
  margin-bottom: 1.5rem;
}

/*
Button margin

markup:
<div class="padding-placeholder button-margin"></div>

sg-wrapper:
<div class="margin-placeholder">
	<sg-wrapper-content/>
</div>

Styleguide 6.1.5
*/
/*
No margin

Set the `.no-margin` class to disable the margin for a specific element

Styleguide 6.1.6
*/
/*
Horizontal Ruler

Styleguide 6.1.7
*/
.ruler-top::before {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  margin-top: 2rem;
  padding-bottom: 2rem;
  width: 100%;
  content: "";
}

.ruler-bottom::after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  margin-bottom: 2rem;
  padding-top: 2rem;
  width: 100%;
  content: "";
}

.no-margin {
  margin: 0;
}

.no-padding {
  padding: 0;
}

.pla-content {
  padding: 1rem;
}

.section-separator-bottom:after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-bottom: 2.4rem;
  padding: 0 15px 2rem 15px;
}
.section-separator-bottom--nm:after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-bottom: 0;
  padding: 0 15px 2rem 15px;
}
.section-separator-top:before {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-top: 2.4rem;
  padding: 2rem 15px 0 15px;
}
.section-separator-top--nm:before {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-top: 0;
  padding: 2rem 15px 0 15px;
}

/*
Contrast function

*color-contrast(background, color1, color2)*: return the color between _color1_
	and _color2_ whith a higher contrast with _background_

*getThemeContrast

*/
@keyframes icn-heartbeat {
  0% {
    transform: scale(1);
  }
  49% {
    transform: scale(1.3);
  }
  53% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
/*
Browser/Apps Visibility

`data-attributes` to hide elements on different platforms.
A class is applied to the root `html` element, that uniquely identifies the
client platform (see `page.typoscript`).

The data attribute `data-web-view` determines an element visibility if the client
is a web browser. Possible values include:
- `hide`: always hide
- `hide-desktop`: hide on viewports larger as `sm`
- `hide-mobile`: hide on `sm` viewport

The data attribute `data-app-view` determines the visibility if the client is an
app. Possible values:
- `hide`: always hide
- `hide-v1`: hide on app version 1
- `hide-v2`: hide on app version 2

//DEV: the login is also hidden on some platforms, with a different logic

markup:
<section class="btc-bar section-margin">
	<div class="btc-bar__width-adjust">
		<a href="javascript:(function(){document.cookie='Cookie=;path=/';var i = document.querySelector('#sc5-iframe'); i.src = i.src;})()" class="btn btn--solid">Browser</a>
		<a href="javascript:(function(){document.cookie='Cookie=1;path=/';var i = document.querySelector('#sc5-iframe'); i.src = i.src;})()" class="btn btn--solid">App Version 1</a>
		<a href="javascript:(function(){document.cookie='Cookie=2;path=/';var i = document.querySelector('#sc5-iframe'); i.src = i.src;})()" class="btn btn--solid">App Version 2</a>
	</div>
</section>
<iframe id="sc5-iframe" src="/" style="display: block; height: 736px; width: 414px; margin: auto;">

Styleguide plugin.visibility
*/
.web-view [data-web-view=hide] {
  display: none !important;
}
.web-view [data-web-view=hide-desktop] {
  display: block !important;
}
.web-view [data-web-view=hide-mobile] {
  display: none !important;
}

.app-view [data-app-view=hide] {
  display: none !important;
}
.app-view--v1 [data-app-view=hide-v1] {
  display: none !important;
}
.app-view--v2 [data-app-view=hide-v2] {
  display: none !important;
}
.app-view .center-plan-page-wrapper {
  margin-top: 0;
}

.hidden {
  display: none;
}

.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.js .no-script {
  display: none;
}

/* Font import
 *
 * $font-family-copy $font-family-headline default to `Open Sans` and `Montserrat`.
 * They are overwritten in color scss
 */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/open-sans/open-sans-300.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/open-sans/open-sans-300.woff2') format("woff2");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/open-sans/open-sans-600.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/open-sans/open-sans-600.woff2') format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/montserrat/montserrat-300.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/montserrat/montserrat-300.woff2') format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/montserrat/montserrat-500.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/montserrat/montserrat-500.woff2') format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 500;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/lato/lato-700.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/lato/lato-700.woff2') format("woff2");
}
@font-face {
  font-family: "Mulish";
  font-style: normal;
  font-weight: 300;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-300.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-300.woff2') format("woff2");
}
@font-face {
  font-family: "Mulish";
  font-style: normal;
  font-weight: 400;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-400.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-400.woff2') format("woff2");
}
@font-face {
  font-family: "Mulish";
  font-style: normal;
  font-weight: 600;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-600.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-600.woff2') format("woff2");
}
@font-face {
  font-family: "Mulish";
  font-style: normal;
  font-weight: 700;
  src: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-700.woff') format("woff"), url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/src/assets/fonts/mulish/mulish-700.woff2') format("woff2");
}
/* Font table
 * A sass map that associates a typographic class (e.g. h1, lead, ...) to font
 * parameters (e.g. font-family, line-height, ...).
 * Different maps can be associated to different viewports (xs, sm, md, lg).
 * Empty string means a property remains as in the previous viewport.
 */
meta[id^=css-] {
  font-family: " ";
}

#css-viewport-width {
  font-family: "min-width:0";
}
#css-viewport-width-code {
  font-family: "xs";
}

#css-orientation {
  font-family: "unknown";
}

#css-resolution {
  font-family: "min-resolution:unknown";
}
#css-resolution-code {
  font-family: "unknown";
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  box-sizing: border-box;
  height: 100%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  transition-property: none;
  scroll-behavior: smooth;
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  margin: 0;
}

div, section {
  scroll-margin-top: 100px;
}

body * {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

*:focus {
  -moz-outline-style: none;
  outline: 0;
}

button::-moz-focus-inner {
  border: 0;
}

input[type=text],
input[type=password],
input[type=email] {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  border: 0;
  border-radius: 0;
}

select::-ms-expand {
  display: none;
}

form {
  margin: 0;
}

figure {
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

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

i {
  font-style: italic;
}

button {
  background-color: transparent;
  border: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  padding: 0;
}

strong {
  font-weight: 300;
  line-height: normal;
}

/*
	Part of
	http://meyerweb.com/eric/tools/css/reset/
   	v2.0 | 20110126
   	License: none (public domain)
*/
address {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

[role=button],
[type=button],
label {
  cursor: pointer;
}

hr {
  background-color: rgba(0, 0, 0, 0.2);
  border: none;
  color: rgba(0, 0, 0, 0.2);
  height: 1px;
}

/*
Helpers

Helper mixins and classes

### Hidden and visuallyhidden
The class `hidden` sets display none, the class `visuallyhidden` hides the
element.

### Hidden from, hidden until
Classes of the type `hidden-sm-up`, `hidden-md-down` are declared, to hide
(display: none) an element from/until a certain viewport size.

Styleguide 6.2
*/
.hidden {
  display: none !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
}

.faded-out {
  opacity: 0 !important;
  pointer-events: none;
}

html.mobile .visuallyhidden-mobile {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
}

html.mobile .hidden-mobile {
  display: none !important;
}

html:not(.mobile) .visuallyhidden-desktop {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
}

html:not(.mobile) .hidden-desktop {
  display: none !important;
}
.hlp-padding-top-1rem {
  padding-top: 1rem;
}

.hlp-margin-top-1rem {
  margin-top: 1rem;
}

.hlp-padding-right-1rem {
  padding-right: 1rem;
}

.hlp-margin-right-1rem {
  margin-right: 1rem;
}

.hlp-padding-bottom-1rem {
  padding-bottom: 1rem;
}

.hlp-margin-bottom-1rem {
  margin-bottom: 1rem;
}

.hlp-padding-left-1rem {
  padding-left: 1rem;
}

.hlp-margin-left-1rem {
  margin-left: 1rem;
}

.col {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
}

.line-clamp-1 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-clamp: 1;
}

.line-clamp-2 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-clamp: 2;
}

.line-clamp-3 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3;
}

.line-clamp-4 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  line-clamp: 4;
}

.line-clamp-5 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  line-clamp: 5;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes spinner-rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spinner-stroke {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 142, 200;
    stroke-dashoffset: -45;
  }
  100% {
    stroke-dasharray: 142, 200;
    stroke-dashoffset: -184;
  }
}
.fade-in {
  animation: fade-in 0.75s both;
}

.text-fade-in {
  animation: linear text-fade-in 0.75s both;
}

@keyframes text-fade-in {
  0% {
    color: transparent;
    text-shadow: 0 0 15px black;
  }
  100% {
    color: transparent;
    text-shadow: 0 0 0 black;
  }
}
/* Spinner for MarketingAutomation forms */
.marketing-automation__form .spinner-loading {
  position: relative;
  top: 3px;
  right: 10px;
  display: none;
  width: 20px;
  height: 20px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: marketing-auto_spin 1s ease-in-out infinite;
  -webkit-animation: marketing-auto_spin 1s ease-in-out infinite;
}
@keyframes marketing-auto_spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}

/* Snackbar for LocationFinder */
#location-finder #snackbar {
  visibility: hidden;
  min-width: 250px;
  margin-left: -125px;
  background-color: #323232;
  color: #fff;
  text-align: center;
  border-radius: 2px;
  padding: 16px;
  position: fixed;
  z-index: 100;
  left: 50%;
  bottom: 30px;
  font-size: 17px;
}
#location-finder #snackbar.show {
  visibility: visible;
  animation: fadein 0.5s, fadeout 0.5s 2.5s;
}
@keyframes fadein {
  from {
    bottom: 0;
    opacity: 0;
  }
  to {
    bottom: 30px;
    opacity: 1;
  }
}
@keyframes fadeout {
  from {
    bottom: 30px;
    opacity: 1;
  }
  to {
    bottom: 0;
    opacity: 0;
  }
}
li.inp-list__item.icn--larger .inp-list__text {
  padding: 0 1rem 0.5rem 0.6rem;
}

li.inp-list__item.icn--larger .inp-list__text .icn-icon {
  font-size: 1.7rem;
  position: relative;
  top: 4px;
}

.cmpbox [tabindex="0"]:focus-visible {
  outline: 2px solid #CD1316;
}
.b-radius {
  border-radius: 16px;
}

.hover-shadow:hover {
  box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.15);
  transition: all 0.3s ease-in-out;
}

.btn-default, .btn-link {
  border: 1px solid;
  height: 48px;
  background-color: #ffffff;
  color: #000000;
  border-color: #999999;
  width: 100%;
}
.btn-default a, .btn-link a {
  padding: 0 24px;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
}

.btn--solid {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
  padding: 14px 24px;
  display: flex;
  height: 48px;
  align-items: center;
  justify-content: center;
  text-transform: none;
  background-color: #323232;
  color: #ffffff;
}
.btn--solid:hover {
  background-color: #323232;
  color: #ffffff;
}
.btn--solid.btn--secondary {
  background-color: #CD1316;
  color: #ffffff;
}

.headline-2 {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.2;
  text-transform: none;
}

.headline-5 {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.2;
  text-transform: none;
}

.text, .text-default {
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
}

/*
Atoms

sg-wrapper:
<div class="atom-wrapper"><sg-wrapper-content/></div>

Styleguide atom
*/
/*
Burger

Deprecated:

markup:
<div class="burger hdr-header__burger" data-module="menu">
	<div class="burger__container">
		<div class="burger__inner"></div>
	</div>
</div>

Styleguide atom.burger
*/
.burger {
  cursor: pointer;
  padding: 0.5rem;
}
.burger__container {
  height: 1.5rem;
  position: relative;
  width: 2rem;
}
.burger__inner {
  top: 0px;
}
.burger__inner::before, .burger__inner::after {
  content: "";
  display: block;
  position: absolute;
}
.burger__inner, .burger__inner::before, .burger__inner::after {
  background-color: #ffffff;
  height: 4px;
  transition: opacity, transform 0.3s ease;
  width: 100%;
}
.burger__inner::before {
  top: 10px;
}
.burger__inner::after {
  top: 20px;
}
body.menu-active .burger__inner {
  transform: translateY(10px) rotate(45deg);
}
body.menu-active .burger__inner::before {
  opacity: 0;
  transform: translate(-6px, -6px) rotate(-45deg);
}
body.menu-active .burger__inner::after {
  transform: translateY(-20px) rotate(-90deg);
}

.mt-0 {
  margin-top: 0;
}

.mt-1 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 5rem;
}

.mb-3 {
  margin-bottom: 3rem;
}

.pt-0 {
  padding-top: 0;
}

/*
Icons

All icons are SVG.<br>
For compatibility reasons, there are several classes and containers.

The `icn-icon` class
```
<svg class="icn-icon">
	....
</svg>
```
- fill is set to `currentColor`
- width and height by default set to font size (1em)
- with the `icn-icon--fit` modifier the image scales to fit the container (width: 100%, height: 100%)

The `icn-container` (legacy `icn--svg`) can be set on the container
```
<div class="icn-container">
	<svg>
		....
	</svg>
</div>
```
- the image scales to fit the container (width: 100%, height: 100%)
- fill is set to `currentColor`

***For new code, the first version `icn-icon` should be preferred.***

sg-wrapper:
<div style="max-width: 5rem">
	<sg-wrapper-content/>
</div>

Styleguide atom.icon
*/
.icn-icon {
  color: currentColor;
  fill: currentColor;
  height: 1em;
  overflow: hidden;
  vertical-align: -0.15em;
  width: 1em;
}
.icn-icon--fit {
  height: 100%;
  vertical-align: baseline;
  width: 100%;
}

.icn-icon--hover2 {
  transition: 0.25s ease;
}
html:not(.can-touch) .icn-icon--hover2:hover, html:not(.can-touch) .icn-icon--hover2:focus-visible {
  color: #CD1316;
}

.icn--svg svg, .icn-container svg {
  height: 100%;
  width: 100%;
}
.icn--svg svg, .icn--svg path, .icn--svg polygon, .icn--svg rect, .icn--svg circle, .icn-container svg, .icn-container path, .icn-container polygon, .icn-container rect, .icn-container circle {
  fill: currentColor !important;
}

/*
Icon Like

The class `icn-like--active` trigger an animation and display the heart filled

markup:
sg-insert.icn-like.icn-icon atom.icon.heart

sg-pug-options:
{}

sg-wrapper:
<span style="font-size: 3rem; color: hsl(0, 0%, 70%)" >
	<sg-wrapper-content/>
</span>

Styleguide atom.icon.like
*/
.icn-like {
  cursor: pointer;
}
.icn-like__container {
  transition: opacity 0.25s 0.25s;
}
.icn-like__container[data-uid=""], .icn-like__container[data-uid="-"], .icn-like__container:not([data-uid]) {
  display: none;
}
.icn-like .border {
  fill: currentColor;
}
.icn-like .solid-fill {
  fill: transparent;
}
.icn-like:not(.icn-like--active):hover .solid-fill {
  fill: currentColor;
  opacity: 0.15;
}
.icn-like--active {
  animation: icn-heartbeat ease-in-out 0.25s;
}
.icn-like--active .solid-fill {
  fill: currentColor;
}

.icn-spinner {
  animation: 2s infinite linear spinner-rotate;
  display: none;
  fill: transparent;
  stroke: currentColor;
  stroke-dasharray: 140 189;
  stroke-linecap: round;
  stroke-width: 8;
}
.icn-spinner circle {
  animation: 1.5s infinite ease-in-out spinner-stroke;
}

/**
Payment icon

markup:
<div class="icn-label">
	<sg-insert class="icn-label__image">1.2.3-7</sg-insert>
	<span class="icn-label__text">Visa</span>
</div>

sg-wrapper:
<div style="background-color: hsl(0, 50%, 75%); padding: 1rem;">
	<sg-wrapper-content/>
</div>

Styleguide 1.2.6
 */
.icn-label {
  align-items: center;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 4px;
  display: inline-flex;
  height: 2rem;
  padding: 0 0.25rem;
}
.icn-label__padding, .icn-label__text, .icn-label__image {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.icn-label__image {
  height: 1.5rem;
}
.icn-label__image svg,
.icn-label__image img {
  height: 100%;
  width: auto;
}
.icn-label__text {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #333333;
}

/*
Buttons

Styleguide atom.button
*/
/*
Rectangular Buttons

markup:
a(class="btn " + modifier)
	span.btn__label label

sg-pug-options:
{"label": "Button"}

btn--solid - Solid button, default variant
btn--light - Light button
btn--light.btn--inverse - Light button, inverse variant
btn--solid.btn--small - Solid button, small variant
btn--solid.btn--big - Solid button, big variant
btn--solid.btn--full-width - Solid button, big variant

Styleguide atom.button.rectangular
*/
/*
Social Buttons

Variation of round button with fixed color for each provider and dim on hover

markup: {}

.btn--dark-hover.btn--facebook - facebook
.btn--dark-hover.btn--foursquare - foursquare
.btn--dark-hover.btn--instagram - instagram
.btn--dark-hover.btn--pinterest - pinterest
.btn--dark-hover.btn--twitter - twitter
.btn--dark-hover.btn--yelp - yelp
.btn--dark-hover.btn--youtube - youtube

Styleguide atom.button.social
*/
/*
Spinner Button

To every button can be added a spinner by toggling the `btn--spinner` class.
Click on the buttons to show/hide the spinner.

markup:
a(onclick="this.classList.toggle('btn--spinner')" class="btn " + modifier)
	span.btn__inner
		if modifier != "btn--solid"
			span.btn__icon
				sg-insert atom.icon.icon
		span.btn__icon.btn__icon--spinner
			sg-insert atom.icon.spinner
		span.btn__label label

sg-pug-options:
{"icon": "info", "label": "Show more"}

btn--solid - Solid button, default variant
btn--solid.btn--icon - Solid button with icon
btn--light.btn--icon - Light button with icon

Styleguide atom.button.spinner
*/
/*
Like button

_Example:_ a round button with the like icon

markup:
a.btn-round.btn-round--small
	sg-insert.icn-icon--fit atom.icon.like

sg-pug-options:
{}

sg-wrapper:
<div class='sc5-grey-container'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.like
*/
.btn {
  background-image: none;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  touch-action: manipulation;
  transition: 0.25s ease;
  vertical-align: middle;
}
.btn--facebook {
  background-color: #3b5998;
}
.btn--foursquare {
  background-color: #fc4575;
}
.btn--yelp {
  background-color: #d32323;
}
.btn--instagram {
  background-color: #c32aa3;
}
.btn--pinterest {
  background-color: #cb2027;
}
.btn--youtube {
  background-color: #b31217;
}
.btn--email {
  background-color: hsl(0, 0%, 35%);
}
.btn--whatsapp {
  background-color: #25D366;
}
.btn--tiktok {
  background-color: hsl(0, 0%, 25%);
}
.btn--dark-hover {
  overflow: hidden;
}
.btn--dark-hover:before {
  background-color: hsla(0, 0%, 0%, 0);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transition: 0.25s ease;
  width: 100%;
}
.btn--dark-hover:hover::before {
  background-color: hsla(0, 0%, 0%, 0.3);
}
.btn--dark-hover:focus-visible {
  outline: 2px solid #CD1316;
}
.btn[disabled], .btn.disabled {
  opacity: 0.5;
  pointer-events: none;
}

/*
Buttons with icon

markup:
a(class=`btn btn--icon ${modifier}`)
	span.btn__inner
		span.btn__icon
			sg-insert= `atom.icon.${icon}`
		span.btn__label= label

sg-pug-options:
{
	"label": "Button",
	"icon": "external-link"
}

btn--light - Light version
btn--light.btn--inverse - Inverse
btn--solid - Solid
btn--light.btn--icon-follows - Follows

sg-wrapper:
<div class="shop-logo-wrapper" style="background-color: hsl(0, 70%, 85%)">
	<sg-wrapper-content/>
</div>


Styleguide atom.button.withIcon
*/
/*
Text with two icons

A text with two icons, that is used among others in dropdowns.
*TODO II* place this near the text with a single icon

markup:
div.btn.btn--icon.btn--icon-follows
	span.btn__inner
		span.btn__icon
			sg-insert atom.icon.iconBefore
		span.btn__label label
		span.btn__icon.btn__icon--follows
			sg-insert atom.icon.iconAfter

sg-pug-options:
{"iconBefore": "globe", "label": "Language", "iconAfter": "caret"}

Styleguide atom.button.2icons
*/
.btn .btn__inner {
  display: inline-block;
  text-align: left;
}
.btn .btn__icon,
.btn .btn__icon::before,
.btn .btn__label {
  display: inline-block;
}
.btn .btn__icon {
  position: relative;
  vertical-align: top;
}
.btn .btn__icon::before {
  content: " ";
  width: 0;
}
.btn .btn__icon svg {
  color: currentColor;
  fill: currentColor;
  font-size: inherit;
  height: 1.5em;
  margin-top: -0.75em;
  overflow: hidden;
  position: absolute;
  right: 4px;
  top: 50%;
  width: 1.5em;
}
.btn .btn__icon--spinner {
  display: none;
}
.btn .btn__icon--follows svg {
  left: 4px;
}
.btn--copy, .tme-styles a:not(.btn) {
  color: rgba(50, 50, 50, 0.65);
  font-weight: bold;
  text-decoration: underline;
}
.btn--copy:focus-visible, .tme-styles a:focus-visible:not(.btn) {
  outline: 2px solid #CD1316;
}
.btn--icon:focus-visible {
  outline: 2px solid #CD1316;
}
.btn--icon .btn__inner {
  padding-left: calc(1.5em + 4px);
}
.btn--icon-follows .btn__inner {
  padding-right: calc(1.5em + 4px);
}

/*
Transparent Buttons

Buttons that looks like text (i.e. with transparent background).
Custom elements can be added, like an icon or a floating badge (e.g. to
notify new messages)

markup:
a(class="btn " + modifier data-badge='12')
	span.btn__inner
	if modifier == 'btn--icon'
		span.btn__icon
			sg-insert atom.icon.icon
	span.btn__label label

sg-pug-options:
{"label": "Cart", "icon": "cart"}

.btn--icon - icon
.btn--badge - Show a small indicator on the top right corner

sg-wrapper:
<div class='sc5-grey-container'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.transparent
*/
.btn--badge {
  overflow: visible;
  position: relative;
}
.btn--badge[data-badge]::before {
  background-color: #ffffff;
  border-radius: 1em;
  color: rgba(50, 50, 50, 0.9);
  content: attr(data-badge);
  font-size: 12px;
  line-height: 1.4;
  margin-left: 10px;
  min-width: 1em;
  padding: 1px 4px 0px 4px;
  text-align: center;
  transition: 0.4s ease;
}
.btn--badge[data-badge="0"]::before {
  display: none;
}
.btn--light, .btn--dark, .btn--solid {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.5rem 3rem;
  text-align: center;
  text-transform: uppercase;
}
.btn--light {
  background-color: transparent;
  border: 1px solid #323232;
  color: #323232;
}
html:not(.can-touch) .btn--light:hover, html:not(.can-touch) .btn--light:focus-visible {
  background-color: #323232;
  color: #ffffff;
}
.btn--dark {
  background-color: #000000;
  color: #ffffff;
  border: 1px solid #000000;
  color: #ffffff !important;
}
html:not(.can-touch) .btn--dark:hover, html:not(.can-touch) .btn--dark:focus-visible {
  background-color: #ffffff;
  border: 1px solid #000000;
  color: #000000 !important;
}
.btn--solid {
  background-color: #323232;
  border: 1px solid;
  border-color: transparent;
  color: #ffffff;
}
html:not(.can-touch) .btn--solid:hover {
  background-color: #CD1316;
  color: #323232;
}
html:not(.can-touch) .btn--solid:focus-visible {
  outline: 2px solid #CD1316;
}
.btn--solid.btn--important {
  background-color: #323232 !important;
  border: 1px solid !important;
  border-color: transparent !important;
  color: #ffffff !important;
}
html:not(.can-touch) .btn--solid.btn--important:hover, html:not(.can-touch) .btn--solid.btn--important:focus-visible {
  background-color: #CD1316 !important;
  color: #323232 !important;
}
.btn--inverse {
  background-color: transparent;
  border-color: #ffffff;
  color: #ffffff;
}
html:not(.can-touch) .btn--inverse:hover {
  background-color: #ffffff;
  color: #323232;
}
.btn--small {
  font-size: 0.875rem;
  padding: 0.25rem 1.5rem;
}
.btn--big {
  padding: 0.5625rem 2rem;
}
.btn--full-width {
  text-align: center;
  width: 100%;
}
.btn--spinner .icn-spinner {
  display: block;
}
.btn--spinner .btn__icon {
  display: none;
}
.btn--spinner .btn__icon--spinner {
  display: inline-block;
}
.btn--spinner .btn__icon--spinner svg {
  animation: spinner-rotate 1s infinite linear, spinner-stroke 1.5s alternate infinite linear;
  fill: transparent;
  stroke: currentColor;
  stroke-dasharray: 140 189;
  stroke-width: 8;
}

/*
Round Buttons

- May be used just as icon or as actual button
- Root dom element may be div, span, button, a or other element that make semantic sense in the context
- May be used with a modifier class to add the standard hover

*By default, they have transparent background color*

markup:
div(class="btn-round icn--svg " + modifier)
	sg-insert atom.icon.icon

sg-pug-options:
{"icon": "location"}

  - default
btn-round--hoverable - standard hover
btn-round--small - small version

sg-wrapper:
<div class='round-buttons-wrapper'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.round
*/
/*
Back To Top button

Appears when scrolling down more than 500px near the bottom right corner of the page

markup:
<div type='button' class='btn-to-top btn-round btn-round--hoverable icn--svg' data-module='to-top'>
	<sg-insert>atom.icon.arrow-up</sg-insert
</div>

sg-wrapper:
<div style='transform: translate(0); min-height: 128px; border: 1px solid grey'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.toTop
*/
/*
Play Button

markup:
<button type='button' class='btn-play'></button>

sg-wrapper:
<div style=' height: 4rem; position: relative;'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.play
*/
.btn-round {
  border-radius: 50%;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  height: 3rem;
  width: 3rem;
}
.btn-round svg {
  padding: 15%;
}
.btn-round--small {
  height: 2.5rem;
  width: 2.5rem;
}
.btn-round--hoverable {
  transition: 0.25s ease;
}
html:not(.can-touch) .btn-round--hoverable:hover, html:not(.can-touch) .btn-round--hoverable:focus-visible {
  background-color: #CD1316;
  color: #323232;
}
.btn-round--social {
  height: 3.75rem;
  position: relative;
  width: 3.75rem;
}
.btn-to-top {
  background-color: #323232;
  bottom: 1.5rem;
  box-shadow: 0px 0px 3px 0px rgba(255, 255, 255, 0.5);
  cursor: pointer;
  padding: 0.75rem;
  position: fixed;
  right: 1.5rem;
  z-index: 501;
}
.btn-play {
  align-items: center;
  background-color: #323232;
  border: 2px solid #ffffff;
  border-radius: 100%;
  display: flex;
  height: 3rem;
  justify-content: center;
  left: 50%;
  margin: -1.5rem 0 0 -1.5rem;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 3rem;
}
.btn-play::before {
  border-color: transparent;
  border-left-color: #ffffff;
  border-style: solid;
  border-width: 10px 0 10px 18px;
  content: "";
  display: block;
  height: 0;
  margin-left: 4px;
  width: 0;
}

/*
Tooltip

A class that can be added to any element. Adds an ::after pseudo element,
shown on :hover on that element.
The content of the tooltip is read from the `data-tooltip-content` attribute.

_//TODO:_ The tooltip always appears above the object. A more general approach
would be to let the tooltip appear on the most convenient side, either by
explicitly adding a modifier or by inferring it with javascript

_//NOTE:_ In the example is shown on a round button, but could be used on icons,
buttons or any other element

markup:
<div class='btn-round btn--facebook btn-tooltip' data-tooltip-content='Share on Facebook'>
	<sg-insert class="icn-icon icn-icon--fit">atom.icon.facebook</sg-insert>
</div>

sg-wrapper:
<div style='padding-top: 5rem; margin-left: 3rem'>
	<sg-wrapper-content/>
</div>

Styleguide atom.button.tooltip
*/
.btn-tooltip {
  overflow: visible;
  position: relative;
}
html:not(.can-touch) .btn-tooltip:hover::after, html:not(.can-touch) .btn-tooltip:focus-visible::after {
  opacity: 1;
  visibility: visible;
}
html:not(.can-touch) .btn-tooltip--no-margin:hover::after, html:not(.can-touch) .btn-tooltip--no-margin:focus-visible::after {
  transform: translate(-50%, -100%);
}
@keyframes rotating {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
button.form-submit * {
  transition: opacity 0.3s ease-in;
}

button.form-submit .loader {
  position: absolute;
  fill: transparent;
  top: calc(50% - 0.75rem);
  left: calc(50% - 0.75rem);
  width: 1.5rem;
  height: 1.5rem;
  animation: rotating 1.5s linear infinite;
  display: none;
  opacity: 0;
}

button.form-submit.loading span {
  color: transparent;
  opacity: 0;
}

button.form-submit.loading .loader {
  fill: transparent;
  display: block;
  opacity: 1;
}

/*
Opening Time

markup:

//Styleguide 1.4
*/
/*
Opening Countdown

markup: {}


sg-wrapper:
<div style="height: 80px; background-color: royalblue; padding-top: 1px;">
	<sg-wrapper-content/>
</div>

Styleguide atom.opening
*/
/*
Weekly Opening Table

markup:
<dl class="opn-list">
	<dt class="opn-list__day"> Mo.  - Mi.  </dt>
	<dd class="opn-list__hours"> 10:00 - 20:00 Uhr </dd>
	<dt class="opn-list__day"> Do.  - Sa. </dt>
	<dd class="opn-list__hours"> 10:00 - 21:00 Uhr </dd>
	<dt class="opn-list__day"> So. </dt>
	<dd class="opn-list__hours"> geschlossen </dd>
</dl>

//Styleguide 1.4.2
*/
.opn-opening {
  line-height: 1;
  text-align: center;
}
.opn-opening__icon {
  display: inline-block;
  margin-right: 0.75rem;
}
.opn-opening__label {
  display: none;
}
.opn-opening__time {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 0.75rem;
}
.opn-opening.state-opening .opn-opening__label--opening {
  display: inline;
}
.opn-opening.state-closing .opn-opening__label--closing {
  display: inline;
}
.opn-icon {
  height: 1.75rem;
  vertical-align: text-bottom;
  width: 1.75rem;
}
.opn-svg {
  height: 100%;
  width: 100%;
}
.opn-svg__outer-circle {
  fill: #323232;
  stroke: #ffffff;
  stroke-width: 5;
}
.opn-svg__arc {
  fill: #ffffff;
}
.opn-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.opn-list__day, .opn-list__hours {
  flex: 1 1 50%;
  margin: 0;
}

/*
Form Inputs

Styleguide atom.input
*/
/*
Select

markup:
div(class="inp-select inp-select--dropdown " + modifier)
	label.visuallyhidden(for="pageMenuDropdown") Menü Dropdown
	select.inp-select__select#pageMenuDropdown(data-module="menu-select")
		each option in options
			option(value="" href="#") option
	sg-insert.icn-icon.inp-select__icon.inp-select__icon--right atom.icon.arrow-down

sg-pug-options:
{"options": ["Bitte wählen", "Dachgarten / Skyline Garden", "Dachgarten-Restaurant", "Fitness und Wellness", "Umgebung"]}

inp-select--dropdown - default version
inp-select--dropdown.inp-select--disabled - disabled version

sg-wrapper:
<form>
  <sg-wrapper-content/>
</form>

Styleguide atom.input.select
*/
/*
Language Select

markup:
div.inp-select.inp-select--language
	sg-insert.icn-icon.inp-select__icon.inp-select__icon--left atom.icon.globe
	select.inp-select__select
		each option in options
			option option
	sg-insert.icn-icon.inp-select__icon.inp-select__icon--right atom.icon.arrow-down

sg-pug-options:
{"options": ["EN", "DE", "IT"]}

Styleguide atom.input.languageSelect
*/
.inp-select {
  display: inline-block;
  position: relative;
}
.inp-select__icon {
  color: currentColor;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-45%);
  z-index: 2;
}
.inp-select__icon--right {
  right: 0.5em;
}
.inp-select__icon--left {
  left: 0.5em;
}
.inp-select__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: inherit;
  border: 0;
  color: currentColor;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  outline: none;
  position: relative;
  width: 100%;
  z-index: 1;
}
.inp-select__select::-ms-expand {
  display: none;
}
.inp-select--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.inp-select--disabled select {
  pointer-events: none;
}
.inp-select--language {
  border: 1px solid #727272;
  line-height: 2rem;
}
.inp-select--language .inp-select__select {
  height: 2rem;
  padding-left: 2.5rem;
  padding-right: 1.5rem;
}
.inp-select--language .inp-select__icon {
  font-size: 1.25em;
}
.inp-select--language .inp-select__icon--left {
  left: 0.75rem;
}
.inp-select--language .inp-select__icon--right {
  right: 0.25rem;
}
.inp-select--dropdown {
  background-color: #ffffff;
  border: 1px #bdbdbd solid;
}
.inp-select--dropdown select:focus-visible {
  outline: 2px solid #CD1316;
}
.inp-select--dropdown select:focus-visible.no-focus-visible {
  outline: none;
}
.inp-select--dropdown::after {
  background-color: #bdbdbd;
  content: "";
  height: calc(100% - 2 * 0.25rem);
  pointer-events: none;
  position: absolute;
  right: 2rem;
  top: 0.25rem;
  width: 1px;
  z-index: 2;
}
.inp-select--dropdown .inp-select__select {
  padding: 0.25rem 2.5rem 0.25rem 0.5rem;
}

/*
Dropdown

A dropdown menu. The always visible trigger can be any element. When the list is
open, it additionally gets the `dropdown-active` class. The list is absolutely
positioned at the bottom of the container.

markup:
div.inp-dropdown
	span.inp-dropdown__trigger(data-module="dropdown")
		sg-insert atom.button.2icons
	ul.inp-list.inp-dropdown__list
		if separator
			span.inp-list__separator
				separator
		each item in items
			li.inp-list__item: span.inp-list__text item

sg-pug-options:
{"separator": "Separator(Optional)", "items": ["it", "en", "de"]}

sg-wrapper:
<div style="min-height: 200px">
	<sg-wrapper-content/>
</div>

Styleguide atom.input.dropdown
*/
::-ms-reveal {
  display: none;
}

.inp-list {
  list-style: none;
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  box-shadow: 4px 4px 8px rgba(51, 51, 51, 0.4);
  padding-bottom: 0.25rem;
  width: 9rem;
}
.inp-list__item {
  color: #333333;
  transition: background-color 0.3s ease;
}
.inp-list__item:hover, .inp-list__item:focus {
  background-color: #efefef;
}
.inp-list__item[data-status=ACT] {
  color: rgba(0, 0, 0, 0.5);
}
html:not(.can-touch) .inp-list__item[data-status=ACT]:hover, html:not(.can-touch) .inp-list__item[data-status=ACT]:focus-visible {
  background-color: transparent;
}
.inp-list__text {
  cursor: pointer;
  display: block;
  padding: 0.5rem 1rem;
}
.inp-list__separator {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  border-top: 1px solid #bdbdbd;
  color: rgb(158.1, 158.1, 158.1);
  padding: 0.5rem;
}
.inp-dropdown__trigger {
  cursor: pointer;
}
.inp-dropdown__list {
  margin-top: 0.75rem;
  opacity: 0;
  position: absolute;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  visibility: hidden;
  z-index: 11;
}
.dropdown-active ~ .inp-dropdown__list {
  opacity: 1;
  visibility: visible;
}

/*
Search Input

markup:
div(class="inp-search " + modifier data-module="input-search")
	input.inp-search__input.js-search-input(type="text" placeholder="Placeholder" value="")
	i.inp-search__icon(aria-hidden="true")
		sg-insert.icn-icon.js-icon-search atom.icon.search
		sg-insert.icn-icon.js-icon-close atom.icon.close
		sg-insert.icn-icon.js-icon-spinner atom.icon.spinner

inp-search--default - default version
inp-search--light - light version

sg-pug-options:
{}

sg-wrapper:
<div class="shop-logo-wrapper">
	<sg-wrapper-content/>
</div>

Styleguide atom.input.search
*/
.inp-search {
  display: flex;
  position: relative;
}
.inp-search__input {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  background-color: transparent;
  border: none;
  border-radius: 0;
  flex: 1 1 0px;
  height: calc(2rem - 1px);
  min-width: 0;
}
.inp-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.inp-search__input::placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.inp-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  opacity: 1;
}
.inp-search__input:-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.inp-search__input:placeholder-shown {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.inp-search__input:-ms-input-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.inp-search__input::-ms-clear {
  height: 0;
  width: 0;
}
.inp-search__icon {
  color: #808080;
  font-size: 1.5em;
  height: calc(2rem - 1px);
  max-width: 2rem;
  transition: opacity 0.25s ease;
}
.inp-search__dropdown {
  bottom: 0;
  left: 0;
  position: absolute;
  transform: translateY(100%);
  width: 100%;
  z-index: 50;
}
.inp-search .js-icon-close {
  cursor: pointer;
  display: none;
}
.inp-search .js-icon-spinner {
  display: none;
}
.inp-search__input:not([value=""]) ~ .inp-search__icon .js-icon-close {
  display: inline;
}
.inp-search__input:not([value=""]) ~ .inp-search__icon .js-icon-search {
  display: none;
}
.inp-search--active .js-icon-close {
  display: none !important;
}
.inp-search--active .js-icon-search {
  display: none !important;
}
.inp-search--active .js-icon-spinner {
  display: inline;
}
.inp-search--default {
  background-color: #ffffff;
}
.inp-search--default .inp-search__input {
  padding-left: 0.5rem;
}
.inp-search--light {
  border-bottom: 2px #bdbdbd solid;
}

/*
Styles for classes applied by filter.js
*/
.inp-filter-active .inp-filter-highlight {
  background: yellow;
}
.inp-filter-active .inp-filter-element:not(.inp-filter-match) {
  display: none;
}

/*
Media Frame

Display a logo or a small image centered inside a larger (white) frame.

* By default, the element has `10rem` fixed height and width dependent on the
container
* Variations with a `16:9`, `4:3`, `1:1`, `5:6` radio
* The picture always fit (`object-fit: contain`). The media container is set to
  60% height and 60% width of the whole element
* Used in various context (e.g. shop banderole, shop teasers, job detail page,
  list view for search result, bookmarkliste and downloadpage)

In the "Location" communication group, it is round (border-radius: 100%, radius 10rem).

sg-wrapper:
<div class="shop-logo-wrapper" style="display: flex; justify-content: space-around">
	<style>
		.mda-frame {
			flex-grow: 1;
			max-width: 10rem;
		}
	</style>
	<sg-wrapper-content/>
</div>

markup:
div(class="mda-frame " + modifier)
	div.mda-frame__container
		img.mda-frame__media(src=img)

sg-pug-options:
{"img": "../dev/images/logos/Elbenwald.jpg"}

  - Fixed height (10 rem)
.mda-frame--16-9 - fixed aspect ratio (16:9) - used e.g. in Job Teasers
.mda-frame--4-3 - fixed aspect ratio
.mda-frame--1-1 - fixed aspect ratio
.mda-frame--5-6 - fixed aspect ratio
.mda-frame--grey - grey background (used with svg icons)
.mda-frame--no-border - without borders, used e.g. in Product Teasers and Job Teasers

Styleguide atom.mediaFrame
*/
/*
Media Frame - SVG Icon

An example with svg icon. Used in
- Product teaser
- B2B Download list

markup:
div(class="mda-frame " + modifier)
	div.mda-frame__container
		sg-insert.mda-frame__media.icn-icon.icn-icon--fit atom.icon.icon

sg-pug-options:
{"icon": "package"}

  - White background
.mda-frame--grey - grey background (e.g. <a target="_blank" href="https://projects.invisionapp.com/d/main#/console/14220226/301503126/preview">B2B download list</a>)

Styleguide atom.mediaFrame.exampleSvg
*/
/*
Media Frame Overview

Logos with different shapes

markup:
<div class="mda-frame {$modifiers}">
	<div class="mda-frame__container">
		<img src="../dev/images/logos/Elbenwald.jpg">
	</div>
</div>
<div class="mda-frame {$modifiers}">
	<div class="mda-frame__container">
		<img src="../dev/images/logos/JackWolfskin.jpg">
	</div>
</div>
<div class="mda-frame {$modifiers}">
	<div class="mda-frame__container">
		<img src="../dev/images/logos/CalvinKlein.jpg">
	</div>
</div>
<div class="mda-frame {$modifiers}">
	<div class="mda-frame__container">
		<img src="../dev/images/logos/portrait.jpg">
	</div>
</div>

  - Fixed height (10 rem)
.mda-frame--4-3 - A variant with fixed aspect ratio (4:3) - used e.g. in the B2B Download List
.mda-frame--16-9 - A variant with fixed aspect ratio (16:9) - used e.g. in Job Teasers

Styleguide atom.mediaFrame.overview
*/
/*
Media Frame - Object Contain

Display the picture without additional frame, or with a small white border. The
ratio of the container and the picture are independent: if they differ, the
picture is scaled (`object-fit`) and not cropped.

The same modifiers (setting aspect radio and border) as for other media frames
apply.

markup:
<div class="mda-frame {$modifiers}">
	<img class="mda-frame__media" src="https://www.placehold.it/500x600">
</div>

  - default
.mda-frame--16-9 - fixed aspect ratio (16:9) - used e.g. in Job Teasers
.mda-frame--small-padding - add a small padding

Styleguide atom.mediaFrame.exampleContain
*/
.mda-frame {
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  height: 100%;
  min-height: 10rem;
  position: relative;
}
.mda-frame.brands-slide {
  border: none;
}
.mda-frame__container {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  height: 60%;
  left: 20%;
  position: absolute;
  top: 20%;
  transform: translate3d(0, 0, 0);
  width: 60%;
}
.mda-frame img, .mda-frame__media {
  font-family: "object-fit: contain;";
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  top: 0;
  width: 100%;
}
.mda-frame--16-9 {
  height: auto;
}
.mda-frame--16-9::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.mda-frame--4-3 {
  height: auto;
}
.mda-frame--4-3::before {
  content: "";
  display: block;
  padding-top: 75%;
}
.mda-frame--1-1 {
  height: auto;
}
.mda-frame--1-1::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.mda-frame--5-6 {
  height: auto;
}
.mda-frame--5-6::before {
  content: "";
  display: block;
  padding-top: 120%;
}
.mda-frame--no-border {
  border-width: 0;
}
.mda-frame--grey {
  background-color: #d4d4d4;
  border-color: #d4d4d4;
}
.mda-frame--grey .mda-frame__media {
  color: #efefef;
}
.mda-frame--small-padding .mda-frame__media {
  padding: 6px;
}

/*
Titles and Headings

Classes `heading-1` to `heading-6` are defined for headings from H1 to H6.
Titles are headings in combination with some element (mostly horizontal lines).

markup:
<h1 class="heading-1">h1. Heading</h1>
<h2 class="heading-2">h2. Heading</h2>
<h3 class="heading-3">h3. Heading</h3>
<h4 class="heading-4">h4. Heading</h4>
<h5 class="heading-5">h5. Heading</h5>
<h6 class="heading-6">h6. Heading</h6>

sg-wrapper:
<div>
	<sg-wrapper-content/>
</div>

Styleguide atom.heading
*/
.display-1 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.2;
  margin: 0 0 1rem 0;
  text-transform: uppercase;
}

h1, .heading-1 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.2;
  margin: 0 0 1rem 0;
  text-transform: uppercase;
}

h2, .heading-2 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.2;
  margin: 0 0 1rem 0;
  text-transform: uppercase;
}

h3, .heading-3 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin: 0 0 1rem 0;
  text-transform: uppercase;
}

h4, .heading-4 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin: 0 0 1rem 0;
  text-transform: uppercase;
}

h5, .heading-5 {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  margin: 0 0 0.5rem 0;
  text-transform: none;
}

h6, .heading-6 {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.4;
  margin: 0 0 0.5rem 0;
  text-transform: none;
}

/*
Page Title

markup:
<header class="ttl ttl--page">
	<div class="ttl__headline">Page Title H1-style</div>
</header>

Styleguide atom.heading.page
*/
/*
Section Title

markup:
<header class="ttl ttl--section">
	<h2 class="ttl__headline">Section Title H2</h2>
</header>

Styleguide atom.heading.section
*/
/*
Subsection Title

Used in content pages and among others login and registration forms.

markup:
<h3 class="ttl--subsection">Content Section Title H2</h3>

Styleguide atom.heading.subsection
*/
/*
Icon Headline

A container for an heading and optionally an icon.
The heading can be of any size (`h2`, `h3`, etc), the icon scales proportionally

markup:
h3.ttl-icon.heading-3
	sg-insert.ttl-icon__icon.icn-icon atom.icon.cal
	span.ttl-icon__title Facilisi cras fermentum odio

sg-pug-options:
{}

Styleguide atom.heading.icon
*/
.ttl {
  color: #000000;
}
.ttl__headline {
  display: block;
  margin: 0;
  padding: 0 1.5rem;
  text-align: center;
  text-transform: uppercase;
}
.ttl--page .ttl__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.2;
  border-top: 3px solid rgba(0, 0, 0, 0.15);
  padding-top: 15px;
  width: 100%;
}
.ttl--section {
  margin-bottom: 1.5rem;
}
.ttl--section .ttl__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.2;
}
.ttl-icon {
  margin-left: -0.25rem;
  margin-right: -0.25rem;
  display: flex;
  width: 100%;
}
.ttl-icon > * {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.ttl-icon__icon {
  color: #CD1316;
  flex: 0 0 auto;
  font-size: 2em;
  vertical-align: top;
}
.ttl-icon__title {
  flex-grow: 1;
  padding-top: 0.25rem;
}

.dtl__page-title {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-bottom: 2.25rem;
}
.dtl__page-title.flex {
  display: flex;
}
.dtl__page-title.flex.justify-content-end {
  justify-content: end;
}
.dtl__page-title.flex.justify-content-start {
  justify-content: start;
}
.dtl__page-title.flex.justify-content-center {
  justify-content: center;
}

/*
Text Media Element(TME)

The Container and style classes for articles, blog entries, etc
- `.tme` class defines a basic vertical spacing
- `.tme-style` set a style for headlines, media elements (pictures and videos),
	links and semantic tags like sub, sup, strong, etc. The contnent in these
	sections is normally generated by `CK Editor`
- Other `.tme-...` classes are defined (center, strong, list), that can be used
 anywhere

Styleguide atom.tme
*/
/*
Tme container

markup:
<section class="tme">
	<div class="tme-styles content-container">
	<p>
	Als europäische Shopping-Center-Marktführerin sieht sich
	die ECE besonders in der <a href="#">Verantwortung</a> für eine nachhaltige
	Unternehmensführung. Sie vereint nach unserer Auffassung die Aspekte der
	ökologischen<sup>[a]</sup>, sozialen und ökonomischen Nachhaltigkeit gleichermaßen.<br><br>
	Bereits 2007 wurde ein fachübergreifendes <strong>ECE-Nachhaltigkeitsteam
	</strong>gegründet.
	</p>
</section>

Styleguide atom.tme.container
*/
/*
Tme text

markup:
<section class="tme-styles">
	<p>
	Als europäische Shopping-Center-Marktführerin sieht sich
	die ECE besonders in der <a href="#">Verantwortung</a> für eine nachhaltige
	Unternehmensführung. Sie vereint nach unserer Auffassung die Aspekte der
	ökologischen<sup>[a]</sup>, sozialen und ökonomischen Nachhaltigkeit gleichermaßen.<br><br>
	Bereits 2007 wurde ein fachübergreifendes <strong>ECE-Nachhaltigkeitsteam
	</strong>gegründet.
	</p>
</section>

Styleguide atom.tme.text
*/
.tme {
  margin-bottom: 1.5rem;
}
.tme-media {
  width: 100%;
}
.tme-media__container {
  position: relative;
}
.tme-media img, .tme-media video, .tme-media iframe {
  width: 100%;
}
.tme-media iframe {
  height: 100%;
}
.tme-styles {
  word-wrap: break-word;
  word-break: break-word;
  overflow-wrap: break-word;
}
.tme-styles h3 {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin: 2rem 0;
  padding-bottom: 0.75rem;
  text-transform: uppercase;
}
.tme-styles h3::after {
  background: rgba(0, 0, 0, 0.2);
  bottom: -0.75rem;
  content: "";
  display: block;
  height: 1px;
  position: relative;
  width: 100%;
}
.tme-styles h3:first-child {
  margin-top: 0;
}
.tme-styles abstract {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  display: block;
  margin-bottom: 2rem;
}
.tme-styles--inner {
  margin-right: -25px;
  margin-left: -25px;
}
.tme-styles a.line-through {
  text-decoration: line-through;
}
.tme-styles a.ga-disabled {
  text-decoration: none;
  text-indent: 1rem;
}
.tme-styles a.ga-disabled:before {
  content: "✔ ";
}
.tme-styles p {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
}
.tme-styles p:first-child {
  margin-top: 0;
}
.tme-styles p:last-child {
  margin-bottom: 0;
}
.tme-styles del {
  text-decoration: line-through;
}
.tme-styles small {
  font-size: 14px;
}
.tme-styles strong {
  font-weight: 600;
}
.tme-styles sub {
  font-size: 0.6em;
  vertical-align: bottom;
}
.tme-styles sup {
  font-size: 0.6em;
  vertical-align: top;
}
.tme-styles .text-center {
  text-align: center;
}
.tme-styles .text-justify {
  text-align: justify;
}
.tme-styles .text-right {
  text-align: right;
}
.tme-styles blockquote {
  border-left: 4px solid #efefef;
  color: #727272;
  margin: 0;
  padding-left: 1rem;
}
.tme-styles .ce-gallery .ce-column {
  display: flex;
  justify-content: center;
}
.tme-styles .ce-gallery .ce-column img {
  height: auto;
}
.tme-styles .ce-gallery .video, .tme-styles .ce-gallery .image {
  justify-content: center;
  padding-top: 0 !important;
}
.tme-styles .ce-gallery .video {
  display: flex;
}
.tme-styles .ce-gallery .image {
  display: block;
}
.tme-styles .ce-gallery .image-embed-item,
.tme-styles .ce-gallery .video-embed-item {
  width: 100vw;
  height: 100%;
}
.tme-styles .ce-gallery .video-embed-item {
  max-width: 100%;
}
.tme-styles .ce-gallery figcaption {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.5;
  margin-top: 0.25rem;
}

.tme {
  margin-bottom: 0;
  padding-block: 20px;
}
.tme__header--heading-2 {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.tme__header--heading-2.flex {
  display: flex;
}
.tme__header--heading-2.flex.justify-content-end {
  justify-content: end;
}
.tme__header--heading-2.flex.justify-content-start {
  justify-content: start;
}
.tme__header--heading-2.flex.justify-content-center {
  justify-content: center;
}
.tme__header--heading-3 {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.tme__header--heading-3.flex {
  display: flex;
}
.tme__header--heading-3.flex.justify-content-end {
  justify-content: end;
}
.tme__header--heading-3.flex.justify-content-start {
  justify-content: start;
}
.tme__header--heading-3.flex.justify-content-center {
  justify-content: center;
}
.tme__header--heading-3 .heading-3 {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 2rem;
  padding-bottom: 0.75rem;
}
.tme-versioned {
  border-bottom: thin solid rgba(0, 0, 0, 0.2);
}
.tme-versioned ul {
  list-style: none;
  padding-left: 0;
}
.tme .video-wrapper {
  position: relative;
}
.tme .play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}
.tme .play::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 0 12px 20px;
  border-color: transparent transparent transparent white;
  left: 50%;
  transform: translate(-50%, 0);
}
.tme .play:hover {
  background-color: rgba(0, 0, 0, 0.7);
}

/*
Strong

The `.tme-strong` class defines visually highlighted text.

markup:
A <strong class="tme-strong">strong </strong> text.

Styleguide atom.tme.strong
*/
.tme-strong {
  font-weight: 600;
}

/*
Center

The `.tme-center` class defines a section with centered content.

markup:
<section class="tme-center">
	<strong class="tme-strong">Center the text</strong>
	<p>Contrary to popular belief, Lorem Ipsum is not simply random text. It has
	roots in a piece of classical Latin literature from 45 BC, making it over 2000
	years old. Richard McClintock, a Latin professor at Hampden-Sydney College in
	Virginia, looked up one of</p>
</section>

Styleguide atom.tme.center
*/
.tme-center {
  text-align: center;
}

/*
List

The `.tme-list` class defines a bullet-point list with points aligned to the paragraph preceeding the list.

markup:
ul(class=`tme-list ${modifier}`)
	li Lorem ipsum Eleifend mi in nulla posuere. Adipiscing Lorem ipsum Eleifend mi in nulla posuere. Adipiscing Lorem ipsum Eleifend mi in nulla posuere. Adipiscing
	li elit pellentesque habitant morbi tristique senectus et.
	li Nec ullamcorper sit amet risus nullam

sg-pug-options:
{}

  - Default
tme-list--check - Check with caret
tme-list--box.tme-list--check - Box

Styleguide atom.tme.list
*/
.tme-list {
  padding-left: 1rem;
}
.tme-list li {
  margin-bottom: 1rem;
  margin-top: 1rem;
}
.tme-list li:first-child {
  margin-top: 0;
}
.tme-list li:last-child {
  margin-bottom: 0;
}
.tme-list__paragraph {
  display: block;
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
}
.tme-list--check {
  list-style: none;
  padding: 0;
}
.tme-list--check li {
  display: flex;
  position: relative;
}
.tme-list--check li::before {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/css/providerece/Resources/Public/src/assets/svg-icons/check.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 80%;
  border-radius: 100%;
  content: "";
  display: block;
  flex: 0 0 1.75rem;
  font-size: 1.75rem;
  height: 1em;
  left: 0;
  margin-right: 0.25rem;
  width: 1em;
}
.tme-list--box {
  max-width: 768px;
}
.tme-list--box li {
  align-items: center;
  background-color: #efefef;
  border-radius: 3px;
  padding: 1rem;
}
.tme-list--box li::before {
  background-color: #CD1316;
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/check-white.svg');
  background-size: 45%;
  flex: 0 0 3.5rem;
  font-size: 3.5rem;
  margin-right: 0.75rem;
}
.container-section--alternate .tme-list--box li {
  background-color: white;
}

/*
Definition List

Responsive list of definition (key-value pairs). On Mobile they are vertically
stacked, on desktop the have a table display.

They should be used inside a container (e.g. `tme-container` or `container-section`).

markup:
article
	if title
		h3.headline-3= title
	dl.tme-deflist
		each item in items
			.tme-deflist__item
				dt.tme-deflist__dt= item.dt
				dd.tme-deflist__dd= item.dd

sg-pug-options:
{
	"items": [
		{"dt": "Posuere urna", "dd": "nec tincidunt praesent semper. Porttitor leo a diam"},
		{"dt": "Tincidunt praesent semper", "dd": "leo a diam sollicitudin. Nullam vehicula"},
		{"dt": "In dictum", "dd": "20987"}
	],
	"title": "Porta non pulvinar neque laoreet suspendisse"
}


Styleguide atom.tme.definitionList
 */
.tme-deflist__dt {
  font-weight: bold;
}
.tme-deflist__dd {
  margin-left: 2rem;
}

.tme-placeholder-block {
  box-shadow: inset 0 0.75em rgba(0, 0, 0, 0.2);
  color: transparent;
}

/*
  Styles for CKEditor Email obfuscation sets @ and dots
*/
.email__at::after {
  content: "@";
  /* Unicode character for @ symbol */
}

.email__dot::after {
  content: ".";
  /* Unicode character for . symbol */
}

.tme-styles h3.centered-h3 {
  font-weight: 300;
  text-align: center;
}
.tme-styles h3.centered-h3:after {
  display: none;
}
.tme-styles .left-aligned-text {
  font-weight: 300;
  text-align: left;
}
.tme-styles h3.left-aligned-text:after {
  display: none;
}
.tme-styles .btn--icon.btn--center {
  left: 50%;
  transform: translate(-50%);
}
.tme-styles .btn:focus-visible {
  outline: 2px solid #CD1316;
}

.owl-stage-outer {
  margin-top: -3rem;
  padding-top: 3rem;
}
.owl-item {
  /*
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1, 1);
  backface-visibility: hidden;
  transform: translateZ(0) scale(1, 1);
  */
  transform: none !important;
}
.owl-dots {
  display: flex;
  justify-content: center;
}
.owl-dot {
  background-color: transparent;
  border: 1px solid #323232;
  border-radius: 50%;
  height: 0.75rem;
  margin: 0 0.1875rem;
  transition: 0.25s ease;
  width: 0.75rem;
}
html:not(.can-touch) .owl-dot:hover, html:not(.can-touch) .owl-dot:focus-visible {
  background-color: #323232;
}
.owl-dot.active {
  background: #323232;
}
.owl-dot.active:hover {
  cursor: default;
}
.owl-next, .owl-prev {
  background-color: rgba(50, 50, 50, 0.9);
  border: 1px solid transparent;
  color: #CD1316;
  height: 3rem;
  text-align: center;
  transition: 0.25s ease;
  width: 3rem;
}
html:not(.can-touch) .owl-next:hover, html:not(.can-touch) .owl-next:focus-visible, html:not(.can-touch) .owl-prev:hover, html:not(.can-touch) .owl-prev:focus-visible {
  background-color: #CD1316;
  border-color: transparent;
  color: #323232;
}
.owl-nav__arrow {
  height: 100%;
  padding: 15% 0;
  width: 100%;
}

/*
Owl Theme: Banderole

Arrows are displayed from md viewport, vertically centered, inset.
Dots are hidden

*/
.owl-theme--banderole .owl-dots {
  display: none;
}
.owl-theme--banderole .owl-next, .owl-theme--banderole .owl-prev {
  display: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.owl-theme--banderole .owl-next:focus-visible, .owl-theme--banderole .owl-prev:focus-visible {
  outline: 2px solid #CD1316;
}
.owl-theme--banderole .owl-prev {
  left: 1rem;
}
.owl-theme--banderole .owl-next {
  right: 1rem;
}

.center-plan-iframe {
  margin: 0;
  padding: 0;
  border: 0 none;
  width: 100%;
  height: 680px;
  overflow: hidden;
}

.center-plan {
  background-color: #f4f4f4;
  opacity: 1;
  transition: opacity 0.4s ease;
}
.center-plan.mapplic-loading {
  opacity: 0;
}
.center-plan.mapplic-element.mapplic-loading {
  background-color: #f4f4f4;
}
.center-plan .mapplic-layer:nth-of-type(1) #shops * {
  fill: rgb(180.8173913043, 182.4, 174.6) !important;
}
.center-plan .mapplic-layer:nth-of-type(1) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #c7d590 !important;
}
.center-plan .mapplic-layer:nth-of-type(1) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(161.6666666667, 185, 70) !important;
}
.center-plan .mapplic-layer:nth-of-type(1) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(161.6666666667, 185, 70) !important;
}
.center-plan .mapplic-layer:nth-of-type(2) #shops * {
  fill: #b8b8b8 !important;
}
.center-plan .mapplic-layer:nth-of-type(2) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #bda5cb !important;
}
.center-plan .mapplic-layer:nth-of-type(2) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(141.5915492958, 100.3521126761, 165.6478873239) !important;
}
.center-plan .mapplic-layer:nth-of-type(2) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(141.5915492958, 100.3521126761, 165.6478873239) !important;
}
.center-plan .mapplic-layer:nth-of-type(3) #shops * {
  fill: #a3a3a3 !important;
}
.center-plan .mapplic-layer:nth-of-type(3) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #7fbac7 !important;
}
.center-plan .mapplic-layer:nth-of-type(3) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(68.1739130435, 140, 155.8260869565) !important;
}
.center-plan .mapplic-layer:nth-of-type(3) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(68.1739130435, 140, 155.8260869565) !important;
}
.center-plan .mapplic-layer:nth-of-type(4) #shops * {
  fill: rgb(171.6, 169.3513513514, 166.4) !important;
}
.center-plan .mapplic-layer:nth-of-type(4) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #ceae84 !important;
}
.center-plan .mapplic-layer:nth-of-type(4) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(168.7674418605, 124.8604651163, 67.2325581395) !important;
}
.center-plan .mapplic-layer:nth-of-type(4) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(168.7674418605, 124.8604651163, 67.2325581395) !important;
}
.center-plan .mapplic-layer:nth-of-type(5) #shops * {
  fill: rgb(229.8, 184.2, 190.7142857143) !important;
}
.center-plan .mapplic-layer:nth-of-type(5) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #f9a5b1 !important;
}
.center-plan .mapplic-layer:nth-of-type(5) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(242.625, 69.375, 94.125) !important;
}
.center-plan .mapplic-layer:nth-of-type(5) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(242.625, 69.375, 94.125) !important;
}
.center-plan .mapplic-layer:nth-of-type(6) #shops * {
  fill: rgb(185.4, 199.4666666667, 227.6) !important;
}
.center-plan .mapplic-layer:nth-of-type(6) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #a6c1f7 !important;
}
.center-plan .mapplic-layer:nth-of-type(6) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(72.412371134, 127.8041237113, 238.587628866) !important;
}
.center-plan .mapplic-layer:nth-of-type(6) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(72.412371134, 127.8041237113, 238.587628866) !important;
}
.center-plan .mapplic-layer:nth-of-type(7) #shops * {
  fill: rgb(247, 240.4, 223) !important;
}
.center-plan .mapplic-layer:nth-of-type(7) #shops .mapplic-clickable.mapplic-location-type--shop {
  fill: #fff4d7 !important;
}
.center-plan .mapplic-layer:nth-of-type(7) #shops .mapplic-clickable.mapplic-location-type--shop:hover {
  fill: rgb(255, 215.95, 113) !important;
}
.center-plan .mapplic-layer:nth-of-type(7) #shops .mapplic-clickable.mapplic-location-type--shop.mapplic-active {
  fill: rgb(255, 215.95, 113) !important;
}
.center-plan .mapplic-list-count {
  transition: all 0.4s ease;
}
.center-plan .mapplic-searching .mapplic-list-count {
  background: hsl(0, 80%, 55%);
}
.center-plan .mapplic-tooltip {
  min-width: 220px;
}
.center-plan .mapplic-tooltip .mapplic-tooltip-thumbnail {
  align-items: center;
  border: 1px solid #bdbdbd;
  border-radius: 0 !important;
  display: flex;
  justify-content: center;
  padding: 2px;
}
.center-plan .mapplic-tooltip .mapplic-tooltip-thumbnail-img {
  flex: 0 0 auto;
  max-height: 100%;
  max-width: 100%;
}
.center-plan .mapplic-tooltip[data-location-type=service] .mapplic-tooltip-thumbnail {
  background-color: #323232;
  border: none;
  border-radius: 50% !important;
  padding: 8px;
}
.center-plan .mapplic-tooltip[data-location-type=elevator] .mapplic-tooltip-thumbnail {
  background-color: #323232;
  border: none;
  border-radius: 50% !important;
  padding: 8px;
}
.center-plan .mapplic-tooltip .mapplic-tooltip-title {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
}
.center-plan .mapplic-tooltip .mapplic-popup-link {
  background-color: #323232;
  color: #ffffff;
  line-height: 32px;
}
.center-plan .mapplic-search-form {
  background-color: #bdbdbd;
  border-color: #bdbdbd;
  z-index: 1;
}
.center-plan .mapplic-list-container {
  overflow-y: auto;
}
.center-plan .mapplic-list-category > a {
  background-color: #323232 !important;
  white-space: normal;
}
.center-plan .mapplic-list-category > a:before {
  background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 1000 1000' style='enable-background:new 0 0 1000 1000;' xml:space='preserve'%3E%3Cg fill='%23FFFFFF'%3E%3Cpolygon points='915.167,475.578 524.422,475.578 524.422,84.833 475.578,84.833 475.578,475.578 84.833,475.578 84.833,524.422 475.578,524.422 475.578,915.167 524.422,915.167 524.422,524.422 915.167,524.422'/%3E%3C/g%3E%3C/svg%3E");
  content: "";
  display: inline-block;
  height: 20px;
  margin-right: 10px;
  vertical-align: middle;
  width: 20px;
}
.center-plan .mapplic-list-category.mapplic-opened > a:before {
  background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 1000 1000' style='enable-background:new 0 0 1000 1000;' xml:space='preserve'%3E%3Cg fill='%23FFFFFF'%3E%3Cpolygon points='915.17 475.58 84.83 475.58 84.83 524.42 915.17 524.42 915.17 475.58'/%3E%3C/g%3E%3C/svg%3E");
}
.center-plan .mapplic-list-location h4 {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
}
html:not(.can-touch) .center-plan .mapplic-list-location > a:hover {
  border-left: 1px solid #323232;
}
.center-plan .mapplic-list-location .mapplic-list-thumbnail {
  align-items: center;
  border: 1px solid #bdbdbd;
  border-radius: 0 !important;
  display: flex;
  height: 48px;
  justify-content: center;
  padding: 2px;
  width: 48px;
}
.center-plan .mapplic-list-location .mapplic-list-thumbnail-img {
  flex: 0 0 auto;
  max-height: 100%;
  max-width: 100%;
}
.center-plan .mapplic-list-location[data-location-type=service] .mapplic-list-thumbnail {
  background-color: #323232;
  border: none;
  border-radius: 50% !important;
  padding: 8px;
}
.center-plan .mapplic-list-location[data-location-type=elevator] .mapplic-list-thumbnail {
  background-color: #323232;
  border: none;
  border-radius: 50% !important;
  padding: 8px;
}
.center-plan .mapplic-fullscreen-button,
.center-plan .mapplic-zoom-buttons a,
.center-plan .mapplic-clear-button {
  height: 32px;
  width: 32px;
}
.center-plan .mapplic-levels {
  transform: scale(0.825);
}
.center-plan .mapplic-levels-select {
  font-size: 16px;
}
.center-plan .mapplic-search-input {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
}
.center-plan:not(.center-plan--more-links) .mapplic-popup-link {
  display: none !important;
}
.center-plan .mapplic-sidebar {
  background-color: #ffffff;
  float: left;
}
.center-plan.mapplic-fullscreen .mapplic-sidebar {
  width: 30%;
}
.center-plan.mapplic-fullscreen .mapplic-container {
  width: 70%;
}
.center-plan--hidden-search .mapplic-list-container {
  padding-top: 0;
}
.center-plan--hidden-search .mapplic-search-form {
  display: none;
}

.center-plan-page-wrapper {
  margin-top: 70px;
}

#service-icons, #ervice-icons {
  pointer-events: none;
}
#service-icons *:not([fill]), #ervice-icons *:not([fill]) {
  fill: #32304e !important;
}

#service-targets rect, #service-targets polygon {
  fill: white !important;
}

/*
External Content

markup:
16:9
<section class="ext-content {$modifiers} ext-content--ratio-16-9">
    <div class="ext-content__iframe-wrapper">
        <iframe class="ext-content__iframe" src="http://www.ece.de/" allowfullscreen ></iframe>
    </div>
</section>
4:3
<section class="ext-content {$modifiers} ext-content--ratio-4-3">
    <div class="ext-content__iframe-wrapper">
        <iframe class="ext-content__iframe" src="http://www.ece.de/" allowfullscreen ></iframe>
    </div>
</section>

ext-content--width-full - full width
ext-content--width-wide - homepage section width
ext-content--width-narrow - content width

//Styleguide 1.10
*/
.ext-content {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.ext-content .cmplazypreviewiframe {
  position: absolute;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner {
  text-align: center;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner h3 {
  font-size: 18px;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt {
  margin-block: 20px;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt a {
  text-decoration: underline;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt .small-txt {
  font-size: 12px;
}
.ext-content .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt .small-txt a {
  text-decoration: underline;
  font-size: 12px;
}
.ext-content .cmplazypreviewiframe .cmplazybtnlink {
  font-weight: 500;
  font-size: 1rem;
  background-color: transparent;
  border: 1px solid #484848;
  color: #484848;
  line-height: 1.5;
  padding: 0.5rem 3rem;
  text-align: center;
  text-transform: uppercase;
  margin-top: 34px;
}
.ext-content__iframe-wrapper {
  height: 0;
  position: relative;
  width: 100%;
}
.ext-content__iframe-wrapper .cmplazycb {
  display: none;
}
.ext-content__iframe-wrapper .cmplazypreviewmsg {
  height: 100%;
}
.ext-content__iframe-wrapper .cmplazypreviewmsg .cmplazypreviewmsginner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.ext-content__iframe-wrapper .cmplazypreviewmsg .cmplazypreviewmsginner cmplazytxt a {
  text-decoration: underline;
}
.ext-content__iframe-wrapper .cmplazypreviewmsg .cmplazypreviewmsginner cmplazytxt .small-txt {
  font-size: 12px;
}
.ext-content__iframe-wrapper .cmplazypreviewmsg .cmplazypreviewmsginner cmplazytxt .small-txt a {
  text-decoration: underline;
  font-size: 12px;
}
.ext-content__iframe {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.ext-content--width-full {
  width: 100%;
}
.ext-content--width-wide {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.ext-content--width-wide.flex {
  display: flex;
}
.ext-content--width-wide.flex.justify-content-end {
  justify-content: end;
}
.ext-content--width-wide.flex.justify-content-start {
  justify-content: start;
}
.ext-content--width-wide.flex.justify-content-center {
  justify-content: center;
}
.ext-content--width-narrow {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.ext-content--width-narrow.flex {
  display: flex;
}
.ext-content--width-narrow.flex.justify-content-end {
  justify-content: end;
}
.ext-content--width-narrow.flex.justify-content-start {
  justify-content: start;
}
.ext-content--width-narrow.flex.justify-content-center {
  justify-content: center;
}
.ext-content--ratio-16-9 .ext-content__iframe-wrapper {
  padding-bottom: 56.25%;
}
.ext-content--ratio-4-3 .ext-content__iframe-wrapper {
  padding-bottom: 75%;
}

.ext-content__infobox-wrapper {
  display: none;
}

.external-content-cookie-revoked {
  background-color: #efefef;
}
.external-content-cookie-revoked .ext-content__iframe {
  display: none;
}
.external-content-cookie-revoked .ext-content__infobox-wrapper {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 80%;
}
.external-content-cookie-revoked .ext-content__infobox-wrapper a {
  text-decoration: underline;
}
.external-content-cookie-revoked .ext-content__infobox-wrapper .btc-bar {
  margin-top: 35px;
}

/*
Ribbon

markup:
<a href="" class="rbb-ribbon {$modifiers}">
	<span class="rbb-ribbon__content">
		<strong>NEUE SHOPS</strong> IM SEHRLANGESWORT<br>
		&rarr; zeigen
	</span>
	<span class="rbb-ribbon__end"></span>
</a>

rbb-ribbon--primary - Primary Color
rbb-ribbon--secondary - Secondary Color

sg-wrapper:
<div style="padding: 1rem 0">
	<div style="background: grey; min-height: 5rem; display: flex;">
		<sg-wrapper-content/>
	</div>
</div>

*/
.rbb-ribbon {
  display: block;
  height: 4rem;
  margin: 1rem 0.5rem;
  overflow: visible;
  position: relative;
  width: calc(100% - 2rem);
}
.rbb-ribbon__content {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.625rem;
  line-height: normal;
  /* Non standard for webkit */
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -ms-word-break: break-all;
  -webkit-hyphens: auto;
  hyphens: auto;
  word-break: break-all;
  word-break: break-word;
  background-color: #808080;
  display: block;
  height: 100%;
  padding: 1rem 0.5rem;
  text-align: left;
}
.rbb-ribbon__end {
  display: block;
  height: 100%;
  left: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 1rem;
}
.rbb-ribbon__end::before, .rbb-ribbon__end::after {
  border-style: solid;
  content: "";
  display: block;
  height: 0;
  left: -1rem;
  position: absolute;
  width: 0;
}
.rbb-ribbon__end::before {
  border-color: transparent;
  border-top-color: #808080;
  border-width: 32px 16px 0 16px;
  top: 0;
}
.rbb-ribbon__end::after {
  border-color: transparent;
  border-bottom-color: #808080;
  border-width: 0 16px 32px 16px;
  bottom: 0;
}
.rbb-ribbon.rbb-ribbon--primary .rbb-ribbon__content {
  background-color: #323232;
  color: #ffffff;
}
.rbb-ribbon.rbb-ribbon--primary .rbb-ribbon__end::before {
  border-color: transparent;
  border-top-color: #323232;
}
.rbb-ribbon.rbb-ribbon--primary .rbb-ribbon__end::after {
  border-color: transparent;
  border-bottom-color: #323232;
}
.rbb-ribbon.rbb-ribbon--secondary .rbb-ribbon__content {
  background-color: #CD1316;
}
.rbb-ribbon.rbb-ribbon--secondary .rbb-ribbon__end::before {
  border-color: transparent;
  border-top-color: #CD1316;
}
.rbb-ribbon.rbb-ribbon--secondary .rbb-ribbon__end::after {
  border-color: transparent;
  border-bottom-color: #CD1316;
}

/*
Banderole

markup:
<div class="bdr-banderole {$modifiers}">
  <span class="bdr-banderole__container">
		<span class="bdr-banderole__text bdr-banderole__text--default">Nur noch 20 Stk.</span>
		<span class="bdr-banderole__text bdr-banderole__text--disabled">Runned out</span>
	</span>
</div>

sg-wrapper:
<div style="height: 150px; position: relative; padding: 2rem">
	<sg-wrapper-content/>
</div>

bdr-banderole--top-left - Top left side
bdr-banderole--top-left.bdr-banderole--disabled - For disabled elements. Has gray color and *displays an alternative text*


Styleguide atom.banderole
*/
.bdr-banderole {
  height: 150px;
  overflow: hidden;
  position: absolute;
  width: 150px;
  z-index: 300;
  /* top left*/
}
.bdr-banderole::before, .bdr-banderole::after {
  border: 3px solid rgb(134.9888392857, 12.5111607143, 14.4866071429);
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
}
.bdr-banderole__container {
  background-color: #CD1316;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  color: #ffffff;
  display: block;
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 0.8rem;
  font-weight: 600;
  height: 48px;
  line-height: 0.9rem;
  padding: 15px 0;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  width: 225px;
}
.bdr-banderole__text--disabled {
  display: none;
}
.bdr-banderole--disabled::before, .bdr-banderole--disabled::after {
  border-color: hsl(0, 0%, 15%);
}
.bdr-banderole--disabled .bdr-banderole__container {
  background-color: hsl(0, 0%, 20%);
}
.bdr-banderole--disabled .bdr-banderole__text--default {
  display: none;
}
.bdr-banderole--disabled .bdr-banderole__text--disabled {
  display: block;
}
.bdr-banderole--top-left {
  left: -6px;
  top: -6px;
}
.bdr-banderole--top-left::before, .bdr-banderole--top-left::after {
  border-left-color: transparent;
  border-top-color: transparent;
}
.bdr-banderole--top-left::before {
  right: 0;
  top: 0;
}
.bdr-banderole--top-left::after {
  bottom: 0;
  left: 0;
}
.bdr-banderole--top-left .bdr-banderole__container {
  display: flex;
  align-items: center;
  justify-content: center;
  right: -25px;
  top: 30px;
  transform: rotate(-45deg);
}
.bdr-banderole--top-left .bdr-banderole__text {
  max-width: 70px;
}

a, select, input {
  cursor: pointer;
}

/*
Table

Responsive tables. Up to the large viewports, has always 100% width. On small viewport each row is displayed vertically.
An header (thead element) should be always present.
Includes vertical section spacing.

Striped table is modified by class `tbl-table--striped` in the table wrapper div.

*In the examples, the width is limited by the `content-container` class.*

markup: {}

Styleguide atom.tme.table
*/
.tbl-table {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  overflow-x: auto;
}
.tbl-table table {
  border-collapse: collapse;
  width: 100%;
}
.tbl-table thead {
  background-color: #d4d4d4;
  color: #000000;
}
.tbl-table thead th {
  border-right: 1px solid #ffffff;
}
.tbl-table thead th:last-child {
  border-right: 0;
}
.tbl-table tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.tbl-table--striped tr {
  border: 0;
}
.tbl-table--striped tr:nth-child(2n) {
  background-color: #efefef;
}

/*
Navigation third level

Modules for third-level navigation, in-page navigation and filtering

Styleguide molecule.navigation3rd
*/
/*
Filter List

Filter bar, used e.g. in "offering" page.
- on small viewports, it's renderend as a select element
- on large viewports, if the elements don't fit the screen, the bar is scrollbar
- has a no-javascript fallback

markup:
.fltr-menu
	.fltr-container
		.fltr-container-list(data-module="filter-tabs")
			nav.fltr-list
				each item in items
					a.fltr-list__item.fltr-list__item--inactive(title=item href="#") item
			i.fltr-nav.fltr-nav__prev: sg-insert.icn-icon atom.icon.arrow-left
			i.fltr-nav.fltr-nav__next: sg-insert.icn-icon atom.icon.arrow-right
		.fltr-container-dropdown
			sg-insert.fltr-dropdown(parameters='{"options": ' + JSON.stringify(items) + '}') atom.input.select

sg-pug-options:
{"items": ["ÖFFNUNGSZEITEN", "ANFAHRT/PARKEN", "CENTERPLAN", "JOBS", "NACHHALTIGKEIT", "KONTAKT", "FAQ", "B2B"]}

Styleguide molecule.navigation3rd.filter
*/
.fltr-menu {
  margin-bottom: 1.5rem;
  background-color: #efefef;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.fltr-menu.has-submenu {
  margin-bottom: 0;
}
.fltr-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.fltr-container.flex {
  display: flex;
}
.fltr-container.flex.justify-content-end {
  justify-content: end;
}
.fltr-container.flex.justify-content-start {
  justify-content: start;
}
.fltr-container.flex.justify-content-center {
  justify-content: center;
}
.fltr-container-list {
  display: none;
  position: relative;
}
html.js .fltr-container-list {
  overflow: hidden;
}
html.js .fltr-container-list .fltr-list {
  overflow: -moz-scrollbars-none;
}
html.js .fltr-container-list .fltr-list::-webkit-scrollbar {
  display: none;
}
html.js .fltr-container-list .fltr-nav {
  visibility: visible;
}
html.js .fltr-container-list:not(.fltr-container-list--has-overflow) .fltr-nav {
  visibility: hidden;
}
html.js .fltr-container-list:not(.fltr-container-list--overflow-prev) .fltr-nav__prev {
  visibility: hidden;
}
html.js .fltr-container-list:not(.fltr-container-list--overflow-next) .fltr-nav__next {
  visibility: hidden;
}
.fltr-list {
  -webkit-overflow-scrolling: touch;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0px;
  position: relative;
}
.fltr-list.center-align {
  justify-content: center;
}
.fltr-list.right-align {
  justify-content: end;
}
.fltr-list__item {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  border-bottom: 0.25rem solid transparent;
  color: #333333;
  cursor: pointer;
  display: block;
  padding: 1.5rem;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}
.fltr-list__item::after {
  color: transparent;
  content: attr(title);
  display: block;
  font-weight: bold;
  height: 1px;
  overflow: hidden;
  visibility: hidden;
}
.fltr-list__item:hover, .fltr-list__item--active {
  color: #323232;
  font-weight: bold;
}
.fltr-list__item--active {
  border-bottom-color: #323232;
}
.fltr-container-dropdown {
  background-color: #efefef;
  text-align: center;
}
.fltr-dropdown {
  background-color: #ffffff;
  margin: 1rem auto;
  max-width: 250px;
  width: 90%;
}
.fltr-nav {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-style: normal;
  height: 100%;
  position: absolute;
  top: 0px;
  visibility: hidden;
}
.fltr-nav::before, .fltr-nav::after {
  display: block;
}
.fltr-nav__prev {
  left: 0px;
}
.fltr-nav__next {
  right: 0px;
}
.fltr-nav .icn-icon {
  font-size: 1.5em;
}

.fltr-list.fltr-login-link_wrapper {
  display: block;
}

.fltr-menu a.fltr-list__item:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}

/*
Menu Third Level

markup:
.fltr-submenu
	ul.fltr-submenu__list
		each item in items
			li: a.fltr-submenu__item(href="#" title=item) item
	sg-insert.fltr-dropdown.fltr-submenu__dropdown(parameters='{"options": ' + JSON.stringify(items) + '}') atom.input.select

sg-pug-options:
{"items": ["ÖFFNUNGSZEITEN", "ANFAHRT/PARKEN", "CENTERPLAN", "JOBS", "NACHHALTIGKEIT", "KONTAKT", "FAQ", "B2B"]}

Styleguide molecule.navigation3rd.menu
*/
.fltr-submenu {
  margin-bottom: 1.5rem;
  background-color: #ffffff;
  text-align: center;
}
.fltr-submenu__list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  display: none;
  flex-flow: row wrap;
}
.fltr-submenu__list.flex {
  display: flex;
}
.fltr-submenu__list.flex.justify-content-end {
  justify-content: end;
}
.fltr-submenu__list.flex.justify-content-start {
  justify-content: start;
}
.fltr-submenu__list.flex.justify-content-center {
  justify-content: center;
}
.fltr-submenu__item {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  color: #333333;
  margin: 1rem 1rem 0.25rem 0;
  padding-right: 1rem;
  text-transform: uppercase;
}
.fltr-submenu__item:not(:last-child) {
  border-right: 1px solid #808080;
}
.fltr-submenu__item a {
  border-bottom: 2px solid transparent;
}
.fltr-submenu__item a::after {
  color: transparent;
  content: attr(title);
  display: block;
  font-weight: bold;
  height: 1px;
  overflow: hidden;
  visibility: hidden;
}
.fltr-submenu__item a:focus-visible {
  outline: 2px solid #CD1316;
}
html:not(.can-touch) .fltr-submenu__item a:hover {
  border-bottom: 2px solid #323232;
  color: #323232;
  font-weight: 600;
}
.fltr-submenu__item--active a {
  border-bottom: 2px solid #323232;
  color: #323232;
  font-weight: 600;
}
.fltr-submenu__dropdown {
  display: inline-block;
  justify-content: center;
}

/*
TODO: this should be part of filter-selection.scss
 */
/*
Filter Search

Filter, used for shops and gastronomie.
- version with 1 or 2 select
- up to two ribbons can be added for special events/offerings

markup:
.ftsh-area
	form.js-search-form
		.ftsh-container
			.ftsh-controls
				.ftsh-control.ftsh-control__search
					sg-insert(modifier="2") atom.input.search
				sg-insert.ftsh-control.ftsh-control__dropdown(parameters='{"options": ["Kategorie wählen","Alle","Taschen & Gepäck","Bücher"," Karten & Geschenke","Entertainment","Fashion","Vielfältige Shops"]}') atom.input.select

sg-pug-options:
{}

Styleguide molecule.navigation3rd.textFilter
*/
/*
In-page navigation

A Navigation element used for in-page links. E.g. on the mall marketing page
(reference overview). Each select option represents a navigation link, with the
destination set as `value` attribute.

Each element on the page with the `js-anchor-link` class and an `id` is
considered as a destination and automatically added to the select options. The
`data-label` attribute, if present, is used as label.


markup:
.ftsh-area(data-module="inpage")
	.ftsh-container.ftsh-container--inpage
		label.ftsh-label.heading-4 Vitae tortor condimentum:
		sg-insert.ftsh-control.ftsh-control__dropdown(parameters=`${JSON.stringify(select)}`) atom.input.select

sg-pug-options:
{
	"select": {
		"options":	[
			"Aliquam ultrices sagittis"
		]
	}
}

Styleguide molecule.navigation3rd.inPage
*/
/*
Shop Filter with 2 predefined Filters

markup:
<div class="ftsh-area">
    <div class="ftsh-container">
        <div class="ftsh-controls">
            <div class="ftsh-control ftsh-control__search">
                <sg-insert>1.6.2-2</sg-insert> <!-- search input light -->
            </div>
            <div class="ftsh-control ftsh-control__dropdown">
                <sg-insert>1.6.1-1</sg-insert> <!-- dropdown -->
            </div>
            <div class="ftsh-control ftsh-control__dropdown">
                <sg-insert>1.6.1-2</sg-insert> <!-- dropdown disabled -->
            </div>
        </div>
        <div class="ftsh-ribbons">
            <sg-insert>1.1.4-1</sg-insert> <!-- ribbon with primary color -->
            <sg-insert>1.1.4-2</sg-insert> <!-- ribbon with secondary color -->
        </div>
    </div>
</div>

Styleguide 2.5.2
*/
.ftsh-area {
  background-color: #efefef;
  position: relative;
  z-index: 301;
}
.ftsh-area--nobg {
  background-color: transparent;
}
.ftsh-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  display: flex;
  flex-direction: column;
}
.ftsh-container.flex {
  display: flex;
}
.ftsh-container.flex.justify-content-end {
  justify-content: end;
}
.ftsh-container.flex.justify-content-start {
  justify-content: start;
}
.ftsh-container.flex.justify-content-center {
  justify-content: center;
}
.ftsh-container--inpage {
  justify-content: flex-end;
}
.ftsh-container--inpage .ftsh-control__dropdown {
  flex: 0 0 auto;
}
.ftsh-control {
  display: block;
  line-height: 2rem;
  margin: 1rem 0;
}
.ftsh-control .inp-search__input:focus-visible {
  outline: 2px solid #CD1316;
}
.ftsh-control .inp-search__input:focus-visible.no-focus-visible {
  outline: none;
}
.ftsh-control .inp-select__select:focus-visible:not([data-mouse-focus]) {
  outline: 2px solid #CD1316;
  outline-offset: 2px;
}
.ftsh-control__search {
  margin-bottom: 2rem;
}
.ftsh-control__dropdown {
  color: #666666;
}
.ftsh-label {
  color: #666666;
  margin-bottom: 0;
  margin-top: 1rem;
}
.ftsh-result__title {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  color: #bdbdbd;
  margin-bottom: 2rem;
  text-transform: uppercase;
}
.ftsh-result__title.flex {
  display: flex;
}
.ftsh-result__title.flex.justify-content-end {
  justify-content: end;
}
.ftsh-result__title.flex.justify-content-start {
  justify-content: start;
}
.ftsh-result__title.flex.justify-content-center {
  justify-content: center;
}
.ftsh-result__loading-indicator {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  text-align: center;
}
.ftsh-result__loading-indicator.flex {
  display: flex;
}
.ftsh-result__loading-indicator.flex.justify-content-end {
  justify-content: end;
}
.ftsh-result__loading-indicator.flex.justify-content-start {
  justify-content: start;
}
.ftsh-result__loading-indicator.flex.justify-content-center {
  justify-content: center;
}
.ftsh-result__loading-indicator .icn-spinner {
  display: inline-block;
  height: 50px;
  stroke: #323232;
  width: 50px;
}

.container-section.centervoucher-intro {
  padding-bottom: 0;
}

/*
Teasers

Teasers are used on the home page, in various carousels and on the overview
pages. There are several types of teasers:

- `solid` teasers: the image (fixed __`16:0` ratio__) is positioned on the teaser
  top and scales. The teaser body is placed after the picture and has a solid
  (white) background.
- `transparent` teasers: the image is set as background and is cropped to always
  cover the teaser (`object-fit: cover`). The body appears on top of the
  picture, with a light transparent background.
- `horizontal`: used in list views, e.g. search results, B2B download list and
	Bookmark list flyout
- `service`: used for services

They have many elements in common (e.g. media, title, containers).

A `--disabled` class is defined, that places a gray overlay over the teasers
(for disabled/expired)

On the top-right edge can optionally appear one or more `teaser
action` (e.g. _bookmark_ or _save in calendar_).

Styleguide molecule.teaser
*/
.tsr__actions {
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
}
.tsr__action {
  background-color: #ffffff;
  color: #333333;
  margin-left: 0.5rem;
}
.tsr__placeholder {
  overflow: hidden;
  /* Old shadow dom for play button */
  /* New shadow dom for play button */
}
.tsr-solid .tsr__placeholder::before {
  content: "";
  display: block;
  padding-top: 56.25%;
  width: 100%;
}
.tsr__placeholder img, .tsr__placeholder video {
  position: absolute;
  top: 0;
  width: 100%;
}
.tsr__placeholder video::-webkit-media-controls-play-button {
  -webkit-appearance: none;
  display: none !important;
}
.tsr__placeholder video::-webkit-media-controls-start-playback-button {
  -webkit-appearance: none;
  display: none !important;
}
.tsr__author, .tsr__time {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  opacity: 0.75;
  text-transform: uppercase;
}
.tsr__category {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.3;
  background-color: #CD1316;
  color: #ffffff;
  flex-grow: 0;
  padding: 3px 0.5rem;
  text-transform: uppercase;
}
.tsr__container {
  display: block;
  flex-grow: 1;
}
.tsr__content {
  padding: 1.25rem;
}
.tsr__date {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.75rem;
}
.tsr__date--medium {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-bottom: 0.1rem;
}
.tsr__date--big {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.2;
  margin-bottom: 0.25rem;
}
.tsr__header__group {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  margin-bottom: 6px;
}
.tsr__media {
  background-size: cover;
  position: relative;
}
.tsr__media picture {
  animation: fade-in 250ms ease-in;
}
.tsr__text p {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  margin: 0;
}
.tsr__text .tsr__paragraph--margin-small {
  margin: 0.5rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.tsr__title {
  background-color: transparent;
  color: inherit;
  margin-bottom: 0;
  text-transform: uppercase;
}
.tsr--disabled {
  pointer-events: none;
}
.tsr--disabled .tsr__container {
  position: relative;
}
.tsr--disabled .tsr__container::before {
  background-color: rgba(239, 239, 239, 0.7);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  z-index: 100;
}
.tsr--disabled .tsr__media {
  filter: grayscale(1);
}
.tsr-solid .tsr__container:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Teaser Home Stage

markup: {"url": "https://www.skylineplaza.de", "selector": ".tsr-stage", "update": "false"}

sg-wrapper:
<div class="teaser-container {$modifiers}" style="max-width: 800px; width: auto">
  <sg-wrapper-content/>
</div>

Styleguide molecule.teaser.homeStage
*/
.tsr-stage {
  background-color: #ffffff;
  display: flex;
  max-height: 5rem;
  text-align: left;
  width: 100%;
}
.tsr-stage__content {
  flex-grow: 1;
  padding: 1.25rem 1.25rem 3.5rem 1.25rem;
}
.tsr-stage__media {
  flex: 0 0 5rem;
}
.tsr-stage__text {
  margin-bottom: 1em;
}
.tsr-stage a.btn:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Placeholder

On inline elment, can be used to fake content. E.g. Product teaser.
*/
.tsr-placeholder {
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
  box-shadow: inset 0 0 0 2em rgba(0, 0, 0, 0.2);
  color: transparent;
}

html.js .lazy-load img, html.js .lazy-load video {
  filter: blur(3px);
  opacity: 0;
  transition: filter 500ms, opacity 500ms ease-in-out;
}
html.js .lazy-load img.lazy-load-complete, html.js .lazy-load video.lazy-load-complete {
  background-color: white;
  filter: blur(0);
  opacity: 1;
}

/*
Teaser Horizontal

<h3 class="headline-3"> Description </h3>

Slim teaser that can be used in a vertical listing.

Used in:
* search result
* download list
* bookmark flyout

<h3 class="headline-3"> Invision </h3>
* <a target="_blank" href="https://projects.invisionapp.com/d/main#/console/10214712/232342093/preview">Search results</a>
* <a target="_blank" href="https://projects.invisionapp.com/d/main#/console/14220226/301503126/preview">B2B download list</a>
* <a target="_blank" href="https://invis.io/48MZXR2XP72#/283716694_ECE_Center_MOD_Header_Lg--wishlist-Full-02">Bookmark list </a>

Styleguide molecule.teaser.horizontal
*/
/*
Teaser Horizontal - Event

markup:
<article class="tsr-horizontal">
	<a class="tsr__container" href="http://local.aez:8106/news-und-events/sketchnotes-workshop-fuer-kinder-im-alstertal-einkaufszentrum-e7517/">
		<sg-insert class="tsr__media mda-frame--4-3">atom.mediaFrame</sg-insert>
		<div class="tsr__content">
			<header class="tsr__header">
				<div class="tsr__header__group">
					<div class="tsr__category">Event</div>
				</div>
				<h3 class="tsr__title">
					Event Title
				</h3>
				<span class="tsr__date">
					16.03.2018
				</span>
			</header>
			<div class="tsr__author">
				Sender Name
			</div>
			<div class="tsr__text">
				<p>
					Lorem ipsum dolor sic non enim sciunt quid faciunt.
				</p>
			</div>
		</div>
	</a>
</article>

sg-wrapper:
<div class="shop-logo-wrapper">
	<div style="max-width: 768px; margin: auto">
		<sg-wrapper-content/>
	</div>
</div>

Styleguide molecule.teaser.horizontal.event
*/
/*
Teaser Horizontal - Bookmark

markup:
<article class="tsr-horizontal tsr-horizontal--small">
	<a class="tsr__container" href="http://local.aez:8106/news-und-events/sketchnotes-workshop-fuer-kinder-im-alstertal-einkaufszentrum-e7517/">
		<sg-insert class="tsr__media mda-frame--1-1">atom.mediaFrame</sg-insert>
		<div class="tsr__content">
			<header>
				<div class="tsr__header__group">
					<div class="tsr__category">Event</div>
				</div>
				<h4 class="tsr__title">
					04.05.2018
				</h4>
			</header>
			<div class="tsr__text">
				<p>
					Sketchnotes Workshop für Kinder im Alstertal-Einkaufszentrum
				</p>
			</div>
		</div>
	</a>
	<footer class="bkm-footer">
		<button class="bkm-button js-bookmark-unbookmark" data-unbookmark-url="/404/?type=19800923&amp;tx_centermanagement_bookmarks[action]=uncheck&amp;tx_centermanagement_bookmarks[controller]=Bookmarks&amp;tx_centermanagement_bookmarks[item]=e-7517&amp;tx_centermanagement_bookmarks[fh]=1">
			Artikel entfernen
		</button>
	</footer>
</article>

sg-wrapper:
<div class="shop-logo-wrapper">
	<div style="max-width: 22rem; margin: auto">
		<sg-wrapper-content/>
	</div>
</div>

Styleguide molecule.teaser.horizontal.bookmark
*/
/*
Teaser Horizontal - Bookmark

markup:
article.tsr-horizontal.tsr-horizontal--small.tsr-horizontal--product
	.tsr__container
		.tsr__media
			img(src="https://via.placeholder.com/120x80" sizes="120px" srcset="https://via.placeholder.com/120x80 120w, https://via.placeholder.com/240x160 240w")
		.tsr__content
			header.tsr-header
				h4.tsr__title Mi ipsum faucibus
				.tsr__subtitle Tincidunt arcu non sodales neque sodales ut
				.tsr-price
					span.tsr-price__value.tsr-price__value--offer 29,95 €
					span.tsr-price__value.tsr-price__value--old 39,95 €
			.tsr-cta
				sg-insert.tsr-cta__button(parameters=`{"icon": "check"}`) atom.button.transparent
				sg-insert(modifier="4") atom.button.rectangular
	footer.bkm-footer

sg-pug-options:
{}

sg-wrapper:
<div class="shop-logo-wrapper">
	<sg-wrapper-content/>
</div>

Styleguide molecule.teaser.horizontal.product
*/
.tsr-horizontal .tsr__container {
  align-items: flex-start;
  background: none;
  display: flex;
}
.tsr-horizontal .tsr__content {
  border: none;
  flex-grow: 1;
  padding-top: 0;
}
.tsr-horizontal .tsr-cta {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  align-items: center;
  display: flex;
  justify-content: flex-end;
  margin-top: 0.75rem;
}
.tsr-horizontal .tsr-cta > * {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.tsr-horizontal .tsr-cta__button {
  color: #808080;
  cursor: auto;
  font-size: 12px;
}
.tsr-horizontal .tsr-cta__button .btn__icon {
  color: green;
}
.tsr-horizontal .tsr-price {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  margin-top: 0.5rem;
}
.tsr-horizontal .tsr-price > * {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.tsr-horizontal .tsr-price__value {
  font-weight: 600;
}
.tsr-horizontal .tsr-price__value--offer {
  color: #CF1A1A;
}
.tsr-horizontal .tsr-price__value--old {
  color: #808080;
  text-decoration: line-through;
}
.tsr-horizontal .tsr__category {
  position: static !important;
  transform: none !important;
}
.tsr-horizontal .tsr__media {
  background-size: initial;
  flex: 30% 0 0;
  position: relative;
}
.tsr-horizontal .tsr__text p {
  margin: 0.25rem 0;
}
.tsr-horizontal--small .tsr__category {
  font-size: 10px;
}
.tsr-horizontal--small .tsr__content {
  padding: 0 0.75rem 0.75rem 0.75rem;
}
.tsr-horizontal--small .tsr__title {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.4;
  margin-bottom: 0.25rem;
}
.tsr-horizontal--small .tsr__text p {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0;
}
.tsr-horizontal--product .tsr__title {
  font-weight: normal;
  margin-bottom: 0;
  text-transform: none;
}
.tsr-horizontal--product .tsr__subtitle {
  color: #808080;
  font-size: 12px;
  line-height: 1.75;
}
.tsr-horizontal--product .tsr__media {
  max-width: 7.5rem;
}

/*
Teaser Solid

Teaser with a constant ratio media. It can be used in grids (`teaser wall`).

It is used for:
- Press
- News
- Content
- Offering
- Job
- Product
- Coupon

markup:
extends /styleguideData/markup/tsr-solid.pug
block header
	div.tsr__header__group
		div.tsr__category category
		time.tsr__date(datetime="2017-04-04T00:00+0100") date
	h3.tsr__title title
	div.tsr__author author
block text
	p Die erste Stunde Parken ist im Skyline Plaza generell KOSTENFREI.

sg-pug-options:
{
"class": "tsr-solid--press",
"img": "https://placehold.it/160x90",
"sources": [{"srcset": "https://placehold.it/160x90", "media": "(max-width: 992px)"}],
"defaultPicture": "https://placehold.it/350x100",
"category": "Presse",
"date": "04.04.2017",
"title": "1. Stunde kostenfrei Parken",
"author": "Skyline Plaza, Frankfurt"
}

tsr-solid--press - Single column (media `16:9`)
tsr-solid--press.tsr-solid--columns-2 - Two columns version (media `3.5:1`)

sg-wrapper:
<div class="teaser-container">
  <sg-wrapper-content/>
</div>

Styleguide molecule.teaser.solid
*/
/*
Teaser Press

Used for press

Styleguide molecule.teaser.solid.press
 */
/*
Teaser News

markup:
extends /styleguideData/markup/tsr-solid.pug
block header
	.tsr__header__group
		.tsr__category Nachricht
	.tsr__date.tsr__date--big 31.01.2017
	.tsr__author Loom, Bielefeld
block text
	h3.tsr__title Rohbau für neue Shopping-Galerie pünktlich fertiggestellt

sg-pug-options:
{}

tsr-solid--news - Single column
tsr-solid--news.tsr-solid--columns-2 - Two columns version

Styleguide molecule.teaser.solid.news
*/
/*
Teaser Content

markup:
extends /styleguideData/markup/tsr-solid.pug
block header
	.tsr__header__group
	h3.tsr__title Nachhaltigkeit
block text
	p Als europäische Shopping-Center-Marktführerin sieht sich die ECE besonders in der Verantwortung für eine nachhaltige Unternehmensführung."

sg-pug-options:
{}

tsr-solid--content - Single column (default)
tsr-solid--content.tsr-solid--columns-2 - Two columns version

Styleguide molecule.teaser.solid.content
*/
/*
Teaser Offer

markup:
extends /styleguideData/markup/tsr-solid.pug
block header
	.tsr__header__group
		.tsr__category Angebot
	h3.tsr__title Sommerspecials
	.tsr__author être belle cosmetics
block text
	.tsr__date 15.08.17 - 30.09.17
	p Sommer Wohlfühl Treatments

sg-pug-options:
{}

tsr-solid--offer - Single column (default)
tsr-solid--offer.tsr-solid--columns-2 - Two columns version

Styleguide molecule.teaser.solid.offer
*/
/*
Teaser Job

markup:
extends /styleguideData/markup/tsr-solid.pug
block media
	sg-insert.tsr__media.mda-frame--no-border.mda-frame--16-9 atom.mediaFrame
block header
	.tsr__header__group
		.tsr__category Teilzeit
	h3.tsr__title  Kundenberater (m/w) Teilzeit gesucht!
block text
	p 22.08.2018

tsr-solid--job - Single column

sg-pug-options:
{}

Styleguide molecule.teaser.solid.job
*/
/*
Teaser solid (Press) with Video

A video can be used as media in all solid teasers. In the mobile (`xs`)
viewports a picture is displayed instead of the video is shown.

// DEV: see lazy-load.js

markup: {}

tsr-solid--press - Single column

Styleguide molecule.teaser.solid.video
*/
/*
Product Teaser

markup:
-
	if (modifier == '')
		var placeholderCls = ''
	else
	 	var placeholderCls = 'tme-placeholder-block'
article(class="tsr-solid tsr-solid--product" + modifier)
	a.tsr__container(href="#")
		sg-insert.tsr__media.mda-frame.mda-frame--16-9.mda-frame--no-border.mda-frame--small-padding atom.mediaFrame.exampleSvg
	.tsr__content
		h3.heading-5: span(class=placeholderCls) Lorem Ipsum
		.tsr__text
		p.tsr__paragraph--margin-small
			span(class=placeholderCls) At vero eos et accusamus et iusto odio dignissimos ducimus
		div(class="placeholderCls")
			.tsr__price 9.99 &euro;
			.tsr__price.tsr__price--highlight 4.55 &euro;
			.tsr__price.tsr__price--old 10 &euro;

sg-pug-options:
{}

  - Default
tsr-solid--placeholder - A placeholder teaser, with grey paragraphs instead of actual content.
tsr-solid--blurred - A placeholder teaser, with blurred content

Styleguide molecule.teaser.solid.product
*/
/*
Teaser Coupon

The teaser has a `disabled` version, for expired coupons.
The banderole can also be set to `expired` (gray), by explicitly adding the class
`bdr-banderole--disabled`. See Styleguide `atom.banderole`

markup: {}

tsr-solid--coupon - Single column
tsr--disabled - disabled version

Styleguide molecule.teaser.solid.coupon
*/
.tsr-solid {
  border: 1px solid rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  margin-bottom: 1px;
  position: relative;
  width: 100%;
}
.tsr-solid .tsr__container {
  background: linear-gradient(to top, #ffffff 0.5rem, #d4d4d4 0.5rem);
  display: flex;
  flex-direction: column;
  transition: 0.25s ease;
}
.tsr-solid .tsr__content {
  background-color: #ffffff;
  border: 0 solid rgba(0, 0, 0, 0.2);
  border-top-width: 1px;
  color: #333333;
  flex-grow: 1;
}
.tsr-solid .tsr__media {
  filter: brightness(100%);
  transition: 0.25s ease;
}
html:not(.can-touch) .tsr-solid:hover .tsr__media {
  filter: brightness(85%);
}
.tsr-solid--news .tsr__content {
  background-color: #323232;
  border-color: #323232;
  color: #ffffff;
}
.tsr-solid--news .tsr__container {
  background: linear-gradient(to top, #ffffff 0.5rem, #d4d4d4 0.5rem);
}
.tsr-solid--news .tsr__category {
  background-color: #ffffff;
  color: #323232;
}
.tsr-solid--offer .tsr__date {
  font-size: 14px;
  text-transform: uppercase;
}
.tsr-solid--job .shl-logo {
  background-color: #ffffff;
  border-width: 0;
}
.tsr-solid--ad {
  border: 0;
}
.tsr-solid--ad .tsr__container {
  background: transparent;
}
.tsr-solid--ad .tsr__placeholder::before {
  padding-top: 120%;
}
.tsr-solid--product {
  border: 0;
}
html:not(.can-touch) .tsr-solid--product:hover .tsr__media {
  filter: none;
}
.tsr-solid--product .tsr__content {
  border-top-width: 0;
}
.tsr-solid--product .tsr__price {
  font-weight: 600;
}
.tsr-solid--product .tsr__price--highlight {
  color: red;
}
.tsr-solid--product .tsr__price--old {
  color: grey;
  padding: 0 0.5rem;
  text-decoration: line-through;
}
.tsr-solid--placeholder {
  pointer-events: none;
}
.tsr-solid--placeholder .shl-container {
  color: rgba(0, 0, 0, 0.2);
}
.tsr-solid--blurred {
  pointer-events: none;
}
.tsr-solid--blurred .tsr__media {
  color: rgba(0, 0, 0, 0.2);
  filter: blur(5px);
  overflow: hidden;
}
.tsr-solid--blurred .tme-placeholder-block {
  box-shadow: none;
  color: transparent;
  text-shadow: 0 0 15px black;
}

/*
Transparent teaser

Teaser with media as background (`object-fit: contain`).

_NOTE_: the media is dynamically cropped: it must always have the same dimension
of the teaser, that depends on the text length and on the responsive viewport.

Used as:
- Event teaser
- Blog teaser

Available as one, two or three columns grid element.

sg-pug-options:
{
"img": "https://placehold.it/480x400",
"sources2Cols": [{"srcset": "https://placehold.it/620x400", "media": "(min-width: 992px)"}],
"sources3Cols": [{"srcset": "https://placehold.it/950x400", "media": "(min-width: 992px)"}]
}

sg-wrapper:
<div class="teaser-container">
  <sg-wrapper-content/>
</div>

Styleguide molecule.teaser.transparent
*/
/*
Teaser Event

markup:
extends /styleguideData/markup/tsr-transparent
block header
	.tsr__header__group
		.tsr__category.tsr-transparent__category category
	.tsr__date.tsr__date--big 17.09.2017
	.tsr__author Skyline Plaza, Frankfurt
block text
	h3 Gastro Sonntag

sg-pug-options:
{ "category": "Event" }

tsr-transparent--event - Single column (default)
tsr-transparent--event.tsr-transparent--columns-2 - Two column version
tsr-transparent--event.tsr-transparent--columns-3 - Three column version

Styleguide molecule.teaser.transparent.event
*/
/*
Teaser Blog

markup:
extends /styleguideData/markup/tsr-transparent
block header
	.tsr__header__group
		time.tsr__date(datetime="2018-05-20T22:00+0000") 20.05.2018
	h3.tsr__title Blumenprints
block text
	p Wer sagt, dass wir einen Kerl brauchen, um Blumen geschenkt zu bekommen?

sg-pug-options:
{}

tsr-transparent--blog - Single column (default)
tsr-transparent--blog.tsr-transparent--columns-2 - Two column version
tsr-transparent--blog.tsr-transparent--columns-3 - Three column version

Styleguide molecule.teaser.transparent.blog
*/
/*
Teaser transparent (Event) with Video

markup: {}

  - Single column (default)

Styleguide molecule.teaser.transparent.video
*/
.tsr-transparent {
  display: flex;
  margin-bottom: 1px;
  min-height: 350px;
  position: relative;
  width: 100%;
}
.tsr-transparent__category-floating {
  display: none;
}
.tsr-transparent__container {
  display: flex;
  height: auto;
  position: relative;
  transition: 0.25s ease;
}
.tsr-transparent__content {
  bottom: 0;
  left: 0;
  position: absolute;
  transition: 0.25s ease;
  width: 100%;
}
.tsr-transparent__media {
  display: flex;
  filter: brightness(100%);
  height: auto;
  overflow: hidden;
  transition: 0.25s ease;
  width: 100%;
}
.tsr-transparent__media img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.tsr-transparent__media picture {
  display: flex;
  width: 100%;
}
.tsr-transparent__media video {
  height: 100%;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: auto;
}
html:not(.can-touch) .tsr-transparent:hover .tsr-transparent__media {
  filter: brightness(85%);
}
.tsr-transparent--event .tsr__category {
  background-color: #ffffff;
  color: #323232;
}
.tsr-transparent--event .tsr__container {
  background-color: #323232;
}
.tsr-transparent--event .tsr__content {
  background-color: rgba(50, 50, 50, 0.9);
  color: #ffffff;
}
.tsr-transparent--event:has(a:focus-visible) {
  outline: 2px solid #CD1316;
}
.tsr-transparent--blog .tsr__container {
  background-color: #ffffff;
}
.tsr-transparent--blog .tsr__content {
  background-color: rgba(255, 255, 255, 0.9);
}

/*
Teaser Service

<ul>
	<li>Used in teaser walls and teaser groups where the surrounding is dictating width and spacings</li>
	<li>Makes use of the round button atom defined in section 1.1.2</li>
	<li>Image is optional</li>
</ul>

markup:
<div class="tss" title="Aufzug" href="#">
	<img class="tss__image" src="http://placehold.it/160x90">
	<div class="tss__container">
		<div class="btn-round  icn--svg">
			<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 37.17 57.83"><defs><style>.cls-1{fill:#fff;}</style></defs><title>Zeichenfläche 1</title><path class="cls-1" d="M4,9.8,6.91,6.92V20.09a2,2,0,1,0,4,0V6.75L14,9.84A2,2,0,1,0,16.83,7L10.4.59a2,2,0,0,0-2.83,0h0L1.24,7A2,2,0,0,0,4.07,9.8ZM25.24,21.5a2,2,0,0,0,2.83,0h0l6.38-6.37a2,2,0,0,0-2.79-2.79l-2.88,2.88V2a2,2,0,1,0-4,0V15.34l-3.09-3.09a2,2,0,1,0-2.83,2.83Zm8.93,2.84H3a3,3,0,0,0-3,3V54.83a3,3,0,0,0,3,3H34.17a3,3,0,0,0,3-3V27.34A3,3,0,0,0,34.17,24.34Zm1,30.47a1,1,0,0,1-1,1H3a1,1,0,0,1-1-1V27.34a1,1,0,0,1,1-1H34.17a1,1,0,0,1,1,1ZM11,28.21a2.71,2.71,0,1,1-2.71,2.71A2.71,2.71,0,0,1,11,28.21Zm14.83,0a2.71,2.71,0,1,1-2.71,2.71A2.71,2.71,0,0,1,25.82,28.21Zm4.51,12.95h0a1.3,1.3,0,0,0,2.18-1.43L29,34.39H22.13l-3.5,5.34a1.3,1.3,0,0,0,2.18,1.43l.25-.38-1.74,6a.36.36,0,0,0,.22.46l.14,0h4v7.13H27.5v-7.1h4.34a.34.34,0,0,0,.34-.48ZM14.82,34.42H7.66a2,2,0,0,0-2,2v8.67h0v0a1,1,0,0,0,2,0v0H8V53a1.36,1.36,0,0,0,2.71,0v-7.9h.92V53a1.36,1.36,0,0,0,2.71,0v-7.9h.36a1,1,0,0,0,2,0h0V36.42A2,2,0,0,0,14.82,34.42Z"></path></svg>
		</div>
		<h3 class="tss__name">
			Aufzug
		</h3>
		<p> Lorem Ipsum Dolor Sit Amet Lorem Ipsum Dolor Sit Amet </p>
	</div>
</div>

sg-wrapper:
<div class="teaser-container">
  <sg-wrapper-content/>
</div>

Styleguide 2.1.9
*/
.tss {
  background-color: #323232;
  display: block;
  height: 10rem;
  overflow: hidden;
  position: relative;
}
.tss::before {
  background-color: hsla(0, 100%, 0%, 0.2);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
}
.tss:hover::before {
  background-color: hsla(0, 100%, 0%, 0.4);
}
.tss__image {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.tss__container {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1rem;
  color: #ffffff;
  left: 0%;
  padding: 2rem;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 8px hsla(0, 0%, 0%, 0.4);
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
.tss__container .btn-round {
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 0 4px hsla(0, 0%, 0%, 0.8);
  color: #323232;
  display: block;
  margin: auto;
  margin-bottom: 0.5rem;
}
.tss__name {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  text-transform: uppercase;
}

.srv-wall__item .tss {
  background-color: #323232 !important;
}
.srv-wall__item .tss:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Teaser Shop

Used on the homepage (in grid and banderole) and in the shop overview page.
On _:hover_, an overlay with the shop name and two buttons (location and info)
is displayed.

In the "Location" communication group, it is round. The radius scales with the
width, up to a maximum of 12rem.

markup: {"url": "https://www.skylineplaza.de", "selector": ".tsr-shop", "update": "false"}

  - Default version
tsr-shop--banderole - Used in banderole. Link buttons (in overlay) without text.

sg-wrapper:
<div class="teaser-container">
  <sg-wrapper-content/>
</div>

Styleguide 2.1.12
*/
@keyframes teaser-hover {
  from {
    opacity: 0.001;
    visibility: hidden;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}
.tsr-shop {
  overflow: hidden;
  position: relative;
  display: flex;
}
.tsr-shop__overlay {
  background-color: rgba(50, 50, 50, 0.9);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0;
  opacity: 0.001;
  overflow: hidden;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
}
.tsr-shop__name {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  align-items: center;
  color: #ffffff;
  display: flex;
  flex: 1 1 0px;
  justify-content: center;
  margin: auto;
  text-align: center;
}
.tsr-shop__name a {
  display: inline-block;
  padding: 5px;
  white-space: normal;
}
.tsr-shop__name a:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-shop__links {
  border-top: 1px solid #ffffff;
  display: flex;
  margin-top: auto;
  padding: 5px 0;
  position: relative;
  transform: translateY(100%);
  transition: transform 0.4s ease;
  width: 100%;
}
.tsr-shop__link {
  flex: 1 1 0px;
  margin: 0 5px;
  text-align: center;
}
.tsr-shop__link:not(:last-child)::before {
  color: #ffffff;
  content: "|";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.tsr-shop__link:focus-visible {
  outline: 2px solid #CD1316;
}
html:not(.can-touch) .tsr-shop__link:hover .btn__label, html:not(.can-touch) .tsr-shop__link:focus-visible .btn__label {
  color: #ffffff;
}
.tsr-shop__link .btn {
  color: rgba(255, 255, 255, 0.8);
  font-size: 12px;
}
.tsr-shop__link .btn__icon {
  color: #CD1316;
}
.tsr-shop__link .btn__label {
  display: none;
}
.tsr-shop:hover .tsr-shop__overlay, .tsr-shop.hover .tsr-shop__overlay {
  animation: teaser-hover 0.1s 1;
  animation-fill-mode: forwards;
}
.tsr-shop:hover .tsr-shop__links, .tsr-shop.hover .tsr-shop__links {
  transform: translateY(0);
}

article.tsr-shop a:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Teaser Category

markup:
a.tsr-category
	img.tsr-category__background(src="https://via.placeholder.com/800x450?text=Background" alt="" title="")
	.tsr-category__body
		h2.tsr-category__headline Lorem ipsum
		.tsr-category__subtitle Ut enim ad minim veniam

sg-pug-options:
{}


Styleguide molecule.teaser.category
*/
.tsr-category {
  align-items: flex-end;
  display: flex;
  height: 100%;
  min-height: 12rem;
  overflow: hidden;
  padding: 1rem;
  position: relative;
}
.tsr-category__background {
  font-family: "object-fit: cover;";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  transition: transform 250ms, opacity 250ms;
  width: 100%;
}
.tsr-category__body {
  position: relative;
  width: 100%;
  z-index: 1;
}
.tsr-category__subtitle {
  font-size: 14px;
  font-weight: bold;
}
.tsr-category--boxes .tsr-category__body {
  color: #333333;
  margin-bottom: -3px;
}
.tsr-category--boxes .tsr-category__headline {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5;
  background-color: rgba(255, 255, 255, 0.9);
  display: inline-block;
  margin-bottom: 3px;
  padding: 0.75rem 1rem;
}
.tsr-category--boxes .tsr-category__subtitle {
  background-color: rgba(255, 255, 255, 0.9);
  margin-bottom: 3px;
  padding: 0.75rem 1rem;
}
.tsr-category--gradient .tsr-category__body {
  color: white;
  padding: 0.5rem 0;
}
.tsr-category--gradient .tsr-category__body::before {
  background-image: linear-gradient(to top, hsla(0, 0%, 0%, 0.65) 50%, transparent);
  bottom: -1rem;
  content: "";
  display: block;
  height: calc(100% + 2rem);
  left: -1.5rem;
  position: absolute;
  width: calc(100% + 3rem);
  z-index: -1;
}
.tsr-category--gradient .tsr-category__headline {
  border-top: 2px solid white;
  margin: 0;
  padding-top: 0.5rem;
}
.tsr-category--gradient .tsr-category__subtitle {
  margin-top: 0.5rem;
}
.tsr-category:hover .tsr-category__background, .tsr-category:focus-visible .tsr-category__background {
  transform: scale(1.05);
}
.tsr-category:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Button Composite

Combinations of buttons and other atoms as well as button groups

Styleguide molecule.buttonComp
*/
/*
Button Bar

A responsive element, can contain one or more buttons (or other elements).
In small viewports, the elements are aligned vertically (i.e. flex column). In
larger viewports they are centrally aligned (unless a modifier is applied).

markup:
div(class="btc-bar " + modifier)
	.btc-bar__width-adjust
		each item in items
			sg-insert(parameters=JSON.stringify(item.parameters) class=item.class modifier=item.modifier) item [section]

sg-pug-options:
{"items": [
	{"section": "atom.button.rectangular", "parameters": {"label": "cancel"}, "modifier": "2"},
	{"section": "atom.button.rectangular", "parameters": {"label": "submit"}, "modifier": "1"}
]}

  - buttons centered (default)
btc-bar--left - buttons left aligned
btc-bar--right - buttons right aligned
btc-bar--space-between - space between

Styleguide molecule.buttonComp.bar
*/
.btc-bar {
  align-items: center;
  display: flex;
  justify-content: center;
}
.btc-bar__width-adjust {
  align-items: stretch;
  display: inline-flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: center;
}
.btc-bar .btn {
  margin-top: 1rem;
}
.btc-bar .btn:first-of-type {
  margin-top: 0;
}
.btc-bar__hidden {
  display: none;
}
.btc-bar__text {
  margin: 0;
}
.btc-bar__text:first-child {
  margin-bottom: 2rem;
}
.btc-bar__text:last-child {
  margin-top: 2rem;
}
.btc-bar--left .btc-bar__width-adjust {
  justify-content: flex-start;
  width: 100%;
}
.btc-bar--right .btc-bar__width-adjust {
  justify-content: flex-end;
  width: 100%;
}
.btc-bar--vertical-center .btc-bar__width-adjust {
  align-items: center;
}

/*
Round button with label

A round button with a label.
The container can have a fixed width. The label overflow is cut (with ellipsis)
in mobile view and spans over new line in desktop view.

markup:
a(class="btc-round-label " + modifier href="#")
	sg-insert.btc-round-label__button(parameters='{"icon": "' + icon + '"}') atom.button.round
	span.btc-round-label__label label

sg-pug-options:
{"label": "A very long label", "icon": "location"}

  - dark(default)
btc-round-label--secondary - secondary
btc-round-label--active - active
btc-round-label--header - can be used in the header
btc-round-label--small - Small

Styleguide molecule.buttonComp.roundLabel
*/
.btc-round-label {
  display: block;
  max-width: 110px;
  text-align: center;
  width: calc(65px + 5%);
}
.btc-round-label__button {
  background-color: #323232;
  color: #ffffff;
  display: inline-block;
  height: 65px;
  margin-bottom: 0.5rem;
  overflow: hidden;
  transition: 0.25s ease;
  width: 65px;
}
.btc-round-label__label {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  color: #727272;
  display: block;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
  width: 100%;
}
.btc-round-label--small {
  max-width: 80px;
  width: calc(45px + 5%);
}
.btc-round-label--small .btc-round-label__button {
  height: 45px;
  width: 45px;
}
.btc-round-label--small .btc-round-label__label {
  font-size: 9px;
}
.btc-round-label:hover .btc-round-label__button, .btc-round-label--active .btc-round-label__button {
  background-color: #CD1316;
  color: #ffffff;
}
.btc-round-label:hover .btc-round-label__label, .btc-round-label--active .btc-round-label__label {
  color: #323232;
}
.btc-round-label--secondary .btc-round-label__button {
  background-color: #d4d4d4;
  color: #ffffff;
}
.btc-round-label--secondary:hover .btc-round-label__button, .srv-button--active.srv-button--secondary .btc-round-label__icon {
  background-color: #CD1316;
  color: #ffffff;
}
.btc-round-label--header .btc-round-label__button {
  background-color: #CD1316;
  color: #ffffff;
}
.btc-round-label--header .btc-round-label__label {
  color: #ffffff;
}
html:not(.can-touch) .btc-round-label--header:hover .btc-round-label__button, html:not(.can-touch) .btc-round-label--header:focus-visible .btc-round-label__button {
  background-color: #CD1316;
  color: #ffffff;
}
html:not(.can-touch) .btc-round-label--header:hover .btc-round-label__label, html:not(.can-touch) .btc-round-label--header:focus-visible .btc-round-label__label {
  color: #ffffff;
}

/*
Round button with text label

<ul>
    <li>The button tag should not be used as root element for .btncmp-round-label
    because safari doesn't allow for flexbox in button:
    https://stackoverflow.com/questions/35464067/flexbox-not-working-on-button-element-in-safari</li>
</ul>

Deprecated:

markup:
<a href="" class="btncmp-round-label" title="Large Button Label">
    <sg-insert>1.1.2-1</sg-insert> <!-- round button without own hover -->
    <span class="btncmp-round-label__label">Large Button Label</span>
</a>

Styleguide 2.6.3
*/
.btncmp-round-label {
  align-items: center;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  margin: 0 0.75rem;
  width: 3rem;
}
.btncmp-round-label .btn-round {
  background-color: #323232;
  color: #ffffff;
  transition: 0.25s ease;
}
.btncmp-round-label__label {
  display: none;
}
html:not(.can-touch) .btncmp-round-label:hover .btn-round {
  background-color: #CD1316;
  color: #ffffff;
}
html:not(.can-touch) .btncmp-round-label:focus-visible {
  outline: 2px solid #CD1316;
}

.mdl-modal .btc-bar__hidden {
  display: flex;
}
.mdl-modal .btc-bar__hidden .mdl-modal__btn--close {
  border-radius: 0;
  position: relative;
  top: 0;
}
.mdl-modal .btc-bar__hidden .mdl-modal__btn--close:focus-visible {
  outline: 2px solid #CD1316;
}

.mdl-modal .mdl-modal__btn--close:focus-visible, .mdl-modal a:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Info Box

Deprecated:

markup: {"url": "https://skylineplaza.de", "selector": ".info-box", "update": "false"}

sg-wrapper:
<div style="width: 250px">
	<sg-wrapper-content/>
</div>

Styleguide 2.7
*/
.info-box {
  background-color: rgba(255, 255, 255, 0.35);
  color: currentColor;
  opacity: 0.9;
  padding: 1rem 1rem 1rem 3.5rem;
  position: relative;
}
.info-box .icn--svg {
  height: 1.5rem;
  left: 1rem;
  position: absolute;
  top: 1rem;
  width: 1.5rem;
}
.info-box__text {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.5;
  text-transform: uppercase;
}
.info-box__text--light {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.5;
}

/*
Cookie disclaimer

A cookie disclaimer that appears at the bottom of the page

markup:
<section class="cookie-disclaimer is-displayed" data-module="cookie-disclaimer">
    <div class="cookie-disclaimer__container">
        <div class="cookie-disclaimer__hint">
			<h4 class="heading-3"> Neque ornare aenean euismod elementum nisi quis </h4>
			<p>
			Odio eu feugiat pretium nibh. Et netus et malesuada fames ac turpis
			egestas sed tempus
			</p>
			<p>
			Ultrices mi tempus imperdiet nulla malesuada pellentesque elit. Tempor nec feugiat nisl pretium
			fusce. Eu consequat ac felis donec.
			<a class="text-link cookie-disclaimer__link" href="#">Facilisi cras fermentum odio eu</a>.
			</p>
        </div>
        <button class="btn btn--light btn--inverse js-accept">
            <span class="btn__label">Eu feugiat pretium</span>
        </button>
    </div>
</section>

sg-wrapper:
<div style="height: 400px; transform: translate(0)">
	<sg-wrapper-content/>
</div>


Styleguide molecule.cookieDisclaimer
*/
.cookie-disclaimer {
  background-color: rgba(50, 50, 50, 0.9);
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  bottom: 0;
  left: 0;
  position: fixed;
  transform: translate3d(0, 100%, 0);
  transition: transform 0.666s ease-out;
  width: 100%;
  z-index: 602;
}
.cookie-disclaimer.is-displayed {
  transform: translate3d(0, 0, 0);
}
.cookie-disclaimer__container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  align-items: center;
  display: flex;
  flex-direction: column;
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
}
.cookie-disclaimer__container.flex {
  display: flex;
}
.cookie-disclaimer__container.flex.justify-content-end {
  justify-content: end;
}
.cookie-disclaimer__container.flex.justify-content-start {
  justify-content: start;
}
.cookie-disclaimer__container.flex.justify-content-center {
  justify-content: center;
}
.cookie-disclaimer__hint {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.375rem;
  color: rgba(255, 255, 255, 0.8);
  max-width: 100%;
}
.cookie-disclaimer__hint *:last-child {
  margin-bottom: 0;
}
.cookie-disclaimer .btn {
  flex: none;
  margin-top: 1.5rem;
}
.cookie-disclaimer__link {
  color: #ffffff;
  text-decoration: underline;
  transition: 125ms color, 125ms opacity;
}
.cookie-disclaimer__link:hover {
  color: #CD1316;
  opacity: 0.8;
}

/*
Message box

A message box.

markup:
div(class="msg-message " + modifier)
	.msg-message__row
		.msg-message__icon
			.icn--svg
				sg-insert atom.icon.icon
		.msg-message__text
			p message

sg-pug-options:
{"icon": "info", "message": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat"}

msg-message--default - message
msg-message--error - error message
msg-message--info - info message
msg-message--success - success message

Styleguide molecule.messageBox
*/
.msg-message {
  display: flex;
  margin-bottom: 1.5rem;
  padding: 1.5rem 1rem 1.25rem;
  flex-direction: row;
  position: relative;
  width: 100%;
}
.msg-message__icon {
  margin-right: 1.25rem;
  max-height: 30px;
  max-width: 30px;
  min-height: 30px;
  min-width: 30px;
  position: relative;
  top: -3px;
}
.msg-message__row {
  display: flex;
  flex-direction: row;
}
.msg-message [class$=__text] p {
  margin-bottom: 0;
  margin-top: 0;
}
.msg-message--info {
  background-color: rgba(250, 222, 46, 0.1);
  border: 1px solid #fade2e;
}
.msg-message--info [class$=__icon] {
  color: #7e673e;
}
.msg-message--info [class$=__text] {
  color: #7e673e;
}
.msg-message--info [class$=__text] h4, .msg-message--info [class$=__text] p {
  color: #7e673e;
}
.msg-message--info [class$=__action] .btn {
  border-color: #7e673e;
  color: #7e673e;
}
.msg-message--error {
  background-color: rgba(251, 30, 69, 0.1);
  border: 1px solid #FB1E45;
}
.msg-message--error [class$=__icon] {
  color: #FB1E45;
}
.msg-message--error [class$=__text] {
  color: #FB1E45;
}
.msg-message--error [class$=__text] h4, .msg-message--error [class$=__text] p {
  color: #FB1E45;
}
.msg-message--error [class$=__action] .btn {
  border-color: #FB1E45;
  color: #FB1E45;
}
.msg-message--success {
  background-color: rgba(38, 154, 64, 0.1);
  border: 1px solid #269A40;
}
.msg-message--success [class$=__icon] {
  color: #269A40;
}
.msg-message--success [class$=__text] {
  color: #269A40;
}
.msg-message--success [class$=__text] h4, .msg-message--success [class$=__text] p {
  color: #269A40;
}
.msg-message--success [class$=__action] .btn {
  border-color: #269A40;
  color: #269A40;
}
.msg-message--default {
  background-color: rgba(102, 102, 102, 0.1);
  border: 1px solid #666666;
}
.msg-message--default [class$=__icon] {
  color: #666666;
}
.msg-message--default [class$=__text] {
  color: #666666;
}
.msg-message--default [class$=__text] h4, .msg-message--default [class$=__text] p {
  color: #666666;
}
.msg-message--default [class$=__action] .btn {
  border-color: #666666;
  color: #666666;
}
.msg-message--no-borders {
  border-color: transparent;
}
.msg-message__btn--close {
  cursor: pointer;
  position: absolute;
  right: 1rem;
  top: 1rem;
}

/*
Menu Sublist

markup:
ul(class="mnu-sublist mnu-list__sublist mnu-menu__sublist " + modifier)
	each item in items
		li.mnu-sublist__item
			a(title=item href="#") item

sg-pug-options:
{
"items": ["Dachgarten / Skyline Garden","Dachgarten-Restaurant","Fitness und Wellness","Umgebung"]
}

Styleguide molecule.menu.sublist
*/
.mnu-sublist {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: none;
  margin: 0;
  padding: 0;
  background-color: #efefef;
  color: #333333;
}
.mnu-sublist__item > a {
  color: inherit;
  display: block;
  padding: 0.5rem 1rem 0.5rem 2rem;
  transition: color 0.25s ease, border-color 0.25s ease;
}
.mnu-sublist__item--active {
  background-color: rgba(0, 0, 0, 0.2);
}
.mnu-sublist__item--accent {
  text-transform: uppercase;
}

/**
List

Main menu. It is visualized as an orizontal list with flyout for sublists from
md, as a vertical list in mobile.

markup:
ul(class="mnu-list mnu-menu__list " + modifier)
	each item in items
		li.mnu-list__item.mnu-menu__item(data-module="mnu-item")
			.mnu-list__label.mnu-menu__label
				a(title=item.main) item [main]
				if item.sub
					button.mnu-list__btn-sublist(aria-label="label" type="button")
						sg-insert.icn-icon atom.icon.arrow-down
			if item.sub
				sg-insert(parameters='{"items": ' + JSON.stringify(item.sub) + '}') molecule.menu.sublist

sg-pug-options:
{
"items": [
{"main": "Lifestyle", "sub": ["Test / Skyline Garden","Dachgarten-Restaurant","Fitness und Wellness","Umgebung"]},
{"main": "Shops"},
{"main": "Gastronomie"},
{"main": "Services", "sub": [ "Alle", "Arrival", "Information", "Relax", "Shopping", "Familie", "Barrierefrei"]},
{"main": "News und Events"},
{"main": "Angebote"},
{"main": "Das Center", "sub": [ "Öffnungszeiten", "Anfahrt/Parken", "Centerplan", "Jobs", "Nachhaltigkeit", "Kontakt", "B2B"]}
]}

Styleguide molecule.menu.list
*/
.mnu-list {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: normal;
  list-style: none;
  margin: 0;
  padding: 0;
}
.mnu-list__btn-sublist {
  background-color: hsla(0, 100%, 100%, 0.2);
  color: #CD1316;
  font-size: 1.25rem;
  margin: 0.5rem 0;
  min-width: 40px;
}
.mnu-list__btn-sublist svg {
  transition: transform ease 0.4s;
}
.mnu-sublist-active .mnu-list__btn-sublist svg {
  transform: perspective(500px) rotateZ(-180deg);
}
.mnu-list__item:not(:last-child) {
  border-bottom: 1px solid;
  border-color: rgba(0, 0, 0, 0.2);
}
.mnu-list__item:not(:last-child).mnu-sublist-active {
  border-bottom: 0;
}
.mnu-list__label {
  display: flex;
  position: relative;
}
.mnu-list__label > a {
  color: #ffffff;
  flex: 1 0 auto;
  padding: 0.75rem 0;
  transition: color 0.25s ease, border-color 0.25s ease;
  white-space: nowrap;
}
.mnu-list__label--active > a {
  color: #CD1316;
}
.mnu-list__label:only-child .mnu-list__btn-sublist {
  display: none;
}
.mnu-list__sublist {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.25s;
}
.mnu-sublist-active .mnu-list__sublist {
  max-height: 400px;
  opacity: 1;
  overflow: initial;
}

/*
Info List

The list with the infolinks (opening hours, directions, etc...)

markup:
ul.mnu-infolist.hidden-md-down
	each item in items
		li.mnu-infolist__item
			sg-insert(parameters=JSON.stringify(item)) atom.button.transparent
	if lang
		sg-insert molecule.menu.languageSelector

sg-pug-options:
{
"lang": 1,
"items": [
	{"label": "Öffnungszeiten", "icon": "time"},
	{"label": "Anfahrt/Parken", "icon": "location"},
	{"label": "Lageplan", "icon": "time"},
	{"label": "Kontakt", "icon": "call"}
]
}

Styleguide molecule.menu.infolist
*/
/*
Info List with login

Deprecated:
Infolist changed for logged-in user. Differences only in markup.

markup: {}

Styleguide 2.2.3.2
*/
.mnu-infolist {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: none;
  margin: 0;
  padding: 0;
  color: #ffffff;
}
.mnu-infolist__item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding: 0.625rem 0;
}
.mnu-infolist__item:last-of-type {
  border-bottom: 0;
}
html:not(.can-touch) .mnu-infolist__item .btn:hover {
  color: #CD1316;
}
.mnu-infolist__item .btn__icon {
  color: #CD1316;
}
.mnu-infolist__item a:focus-visible {
  outline: 2px solid #CD1316;
}
.mnu-infolist__icon-search {
  display: none;
  font-size: 2rem;
}
.mnu-infolist__search {
  display: none;
  position: relative;
}
.mnu-infolist__search .inp-dropdown {
  bottom: 0;
  position: absolute;
  right: 0;
  transform: translateY(100%) translateY(0.25rem);
  width: 320px;
}

/*
Top list

List at the top of the header (desktop viewport). It wraps together infolist
and the search input field.

//TODO Change in live

//TODO Move mnu-infolist__search to mnu-top__search and mnu-infolist__icon-search

markup:
.mnu-top
	sg-insert molecule.menu.infolist
	button.mnu-infolist__icon-search(data-module="search")
		sg-insert.icn-icon.icn-icon--hover2 atom.icon.search
	sg-insert molecule.menu.search

sg-pug-options:
{}

Styleguide molecule.menu.topList
*/
.mnu-top .mnu-infolist__icon-search:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Menu Language Selector

Language Selector for 2 languages on desktop view. If there are more than two
languages, a dropdown selector is used instead (see `atom.input.dropdown`).

markup:
ul.mnu-lang.mnu-menu__lang.hdr-header__lang
	li.mnu-lang__item.mnu-lang__item--active DE
	li.mnu-lang__item: a(href="#") EN

sg-pug-options:
{}

Styleguide molecule.menu.languageSelector
*/
.mnu-lang {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: none;
  margin: 0;
  padding: 0;
  color: #ffffff;
}
.mnu-lang__item {
  display: table-cell;
  padding: 0 1rem;
}
.mnu-lang__item > a {
  color: inherit;
  transition: color 0.25s ease;
}
html:not(.can-touch) .mnu-lang__item > a:hover, html:not(.can-touch) .mnu-lang__item > a:focus-visible {
  color: #CD1316;
}
.mnu-lang__item > a:focus-visible {
  outline: 2px solid #CD1316;
}
.mnu-lang__item--active {
  color: rgba(255, 255, 255, 0.6);
}
.mnu-lang__item:not(:last-child) {
  border-right: 2px solid #ffffff;
}
.mnu-lang .inp-dropdown__trigger:focus-visible {
  outline: 2px solid #CD1316;
}
.mnu-lang .inp-dropdown__list {
  padding-bottom: 0;
}

/*
Search Input Field

markup:
form.mnu-search.mnu-infolist__search
	input.mnu-search__input.js-search-input(placeholder="Shops, Services, News, Events ..." type="text")
	sg-insert.icn-icon.mnu-search__button atom.icon.search

sg-pug-options:
{}

Styleguide molecule.menu.search
*/
.mnu-search {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  background-color: #ffffff;
  border-radius: 3px;
  color: #666666;
  height: 2rem;
  padding: 0 0.5rem;
}
.mnu-search__input {
  font-family: inherit;
  font-size: inherit;
  height: 100%;
  width: 220px;
}
.mnu-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.mnu-search__input::placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.mnu-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  opacity: 1;
}
.mnu-search__input:-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.mnu-search__input:placeholder-shown {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.mnu-search__input:-ms-input-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.mnu-search__input:focus {
  outline: none;
}
.mnu-search__dropdown {
  z-index: 50;
}
.mnu-search__button {
  font-size: 1.5em;
  vertical-align: middle;
}

/*
Infolist mobile

markup:
.mnu-infolist-xs.hidden-md-up
	each item in items
		sg-insert.btc-round-label--small.mnu-infolist-xs__item(modifier="4") 2.6.4

sg-pug-options:
{
"items": [1,1,1,1]
}

Styleguide molecule.menu.infolistMobile
*/
.mnu-infolist-xs {
  border-color: rgba(0, 0, 0, 0.2);
  border-style: solid;
  border-width: 1px 0;
  display: flex;
  margin: auto;
  padding: 1rem 0;
}
.mnu-infolist-xs__item {
  flex-grow: 1;
  max-width: 90px;
  padding: 2px;
}

/*
Menu

The main navigation included in the header. On small viewports (`sm`) it is
displayed vertically with sublist points hidden in accordion. On larger
viewports it is displayed horizontally and the sublist points are displayed on
`hover` on the corresponding menu points.

It is composed of:
- **Infolist: ** Links to important information
- **Language menu: ** Horizontal list for two languages, dropdown if more
- **Search input **
- **Main Menu** Two level site navigation

markup:
nav.mnu-menu
	h2.mnu-menu__title Alstertal Einkaufszentrum Hamburg
	sg-insert molecule.menu.infolistMobile
	sg-insert molecule.menu.list
	sg-insert molecule.menu.topList

sg-pug-options:
{}

sg-wrapper:
<div class="menu-wrapper">
	<sg-wrapper-content/>
</div>

Styleguide molecule.menu
*/
.mnu-menu {
  background-color: #323232;
  color: #ffffff;
  height: 100%;
  padding: 1rem 1rem 3rem;
  transition: transform ease 0.4s;
  width: 320px;
}
.mnu-menu__lang {
  margin-left: -1rem;
}
.mnu-menu__list {
  flex: 1 1 100%;
  margin-bottom: 40px;
}
.mnu-menu__sublist {
  box-sizing: content-box;
  margin-left: -1rem;
  margin-right: -1rem;
}
.mnu-menu__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.2;
  margin-top: 0;
  max-width: 60%;
}
.mnu-menu__top {
  justify-content: center;
}

.mnu-top.mnu-top--llandscape .mnu-infolist__item {
  margin: 0 0.45rem;
}

/*
Bookmark List

A list of bookmarked items, used as `flyout` preview for the corresponding page.
Uses the `horizontal` teaser small (see 2.1.32).

<h3 class="headline-3">Invision</h3>
* Bookmark list (<a target="_blank" href="https://confluence.aquarius.digital/display/ECENXT/Merken#Merken-3.2MerklisteimHeader">confluence</a>, <a href="https://projects.invisionapp.com/d/main#/console/12930604/283716694/preview"> Invision</a>)

markup: {}

sg-wrapper:
<div class="shop-logo-wrapper">
	<style>
		.bkm-dropdown__list {
			margin: auto;
			opacity: 1;
			position: static;
			visibility: visible;
		}
	</style>
	<sg-wrapper-content/>
</div>

Styleguide 3.72
*/
.bkm-button {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #727272;
  cursor: pointer;
}
.bkm-button:hover {
  opacity: 0.6;
}
.bkm-footer {
  display: flex;
  justify-content: flex-end;
}
.bkm-dropdown__trigger {
  cursor: pointer;
}
.bkm-dropdown__trigger:hover .bkm-dropdown__list {
  opacity: 1;
  transition-delay: 0s;
  visibility: visible;
}
.bkm-dropdown__list {
  list-style: none;
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  box-shadow: 4px 4px 8px rgba(51, 51, 51, 0.4);
  margin-top: 0.75rem;
  opacity: 0;
  padding-bottom: 0.25rem;
  position: absolute;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  transition-delay: 0.5s;
  visibility: hidden;
  width: 22rem;
  z-index: 11;
}
.bkm-dropdown__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-bottom: 0;
  text-transform: uppercase;
}
.bkm-dropdown h4 {
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 0;
  text-transform: none;
}
.bkm-dropdown__item {
  color: #333333;
  padding: 0.5rem 1rem;
}
.bkm-dropdown__item .btn {
  width: 100%;
}
html:not(.can-touch) .mnu-infolist__item .bkm-dropdown__item .btn:hover {
  color: #ffffff;
}
.bkm-dropdown__item--scrollable {
  padding-right: 0;
}
.bkm-dropdown__item--scrollable ul {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 25rem;
  overflow-y: auto;
}
.bkm-dropdown__item .icn-spinner {
  color: #323232;
  display: block;
  font-size: 1.5rem;
  margin: 1rem auto;
}
.bkm-list__item {
  background-color: white;
  padding: 0.5rem 1rem 0.5rem 0;
  position: relative;
  z-index: 100;
}
.bkm-list article {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  padding-bottom: 1.25rem;
}
.bkm-list article > a {
  display: inherit;
}

.js-bookmark-removing {
  filter: grayscale(1) opacity(0.5);
  pointer-events: none;
  transition: filter 0.4s ease, margin 0.4s ease, opacity 1s;
}

.js-bookmark-removed {
  opacity: 0;
  z-index: calc(100 - 1);
}

body.search-active aside {
  z-index: 310;
}
body.search-active aside .hdr-dimmer--search {
  opacity: 1;
  visibility: visible;
}

aside.search {
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
aside.search .hdr-search {
  align-items: center;
  background-color: #efefef;
  color: #666666;
  display: flex;
  padding: 1rem;
  opacity: 0;
  position: fixed;
  right: 0;
  z-index: 301;
  transform: translateY(0%);
  transition: all 0.4s ease;
  visibility: hidden;
  width: 100%;
}
aside.search .hdr-search__input {
  flex-grow: 1;
  font-family: inherit;
  font-size: inherit;
  height: 100%;
  margin-left: 0.5rem;
  padding: 0.5rem 0.5rem;
}
aside.search .hdr-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
aside.search .hdr-search__input::placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
aside.search .hdr-search__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  opacity: 1;
}
aside.search .hdr-search__input:-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
aside.search .hdr-search__input:placeholder-shown {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
aside.search .hdr-search__input:-ms-input-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
aside.search .hdr-search__input:focus {
  outline: none;
}
aside.search .hdr-search__input:focus-visible {
  outline: 2px solid #CD1316;
}
aside.search .hdr-search__input:focus-visible[data-mouse-focus] {
  outline: none;
}
aside.search .hdr-search__close {
  color: #333333;
}
aside.search .hdr-search__close:focus-visible {
  outline: 2px solid #CD1316;
}
aside.search .hdr-search__input-container {
  align-items: center;
  background-color: #ffffff;
  border-radius: 2px;
  display: flex;
  flex-grow: 1;
  margin-right: 0.5rem;
  padding-left: 0.5rem;
}

/*
Accordion

Deprecated:

markup:
<article class="acc-accordion js-acc-accordion">
	<h3 class="acc-accordion__title heading-5 ttl-subsection js-acc-title" tabindex="1">
		Lorem ipsum
		<sg-insert class="acc-accordion__icon">1.2.3-2</sg-insert>
		<sg-insert class="acc-accordion__icon acc-accordion__icon--open">1.2.3-3</sg-insert>
	</h3>
	<div class="acc-accordion__body" tabindex="1">
		<p>
		Placeat non voluptatem dolor quasi amet ut eveniet. Provident est ut consequatur est reiciendis fuga eius quis. Asperiores nam et voluptatum unde. Nihil tempore illum quia quae nihil nobis optio. Excepturi reiciendis eos ex. Quia enim quam aspernatur. Explicabo tempora voluptas minima ut ex. Impedit eos laboriosam consectetur omnis quaerat voluptates eos. Dolorum consequuntur ut voluptate omnis atque aut. Qui accusamus quisquam nobis animi quos inventore fuga. Commodi molestiae minus facilis. Aut autem est assumenda blanditiis totam totam vero. Reiciendis libero ex illum sed nulla. At et veniam dolor et qui consequatur et ipsam. Dolorem exercitationem consequatur in rem ex. Qui velit eligendi expedita rerum praesentium amet et sint
		</p>
		<p>
		Placeat non voluptatem dolor quasi amet ut eveniet. Provident est ut consequatur est reiciendis fuga eius quis. Asperiores nam et voluptatum unde. Nihil tempore illum quia quae nihil nobis optio. Excepturi reiciendis eos ex. Quia enim quam aspernatur. Explicabo tempora voluptas minima ut ex. Impedit eos laboriosam consectetur omnis quaerat voluptates eos. Dolorum consequuntur ut voluptate omnis atque aut. Qui accusamus quisquam nobis animi quos inventore fuga. Commodi molestiae minus facilis. Aut autem est assumenda blanditiis totam totam vero. Reiciendis libero ex illum sed nulla. At et veniam dolor et qui consequatur et ipsam. Dolorem exercitationem consequatur in rem ex. Qui velit eligendi expedita rerum praesentium amet et sint
		</p>
	</div>
</article>

Styleguide 3.21.2
*/
.acc-accordion__title {
  border: 0 none;
  border-bottom: thin solid rgba(0, 0, 0, 0.2);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  background: transparent;
  font-family: inherit;
}
.acc-accordion__title:hover {
  border-color: #323232;
  color: #323232;
}
.acc-accordion__title:hover .acc-accordion__title {
  border-color: #323232;
  color: #323232;
}
.acc-accordion__title:hover .acc-accordion__title::after {
  color: #323232;
}
.acc-accordion__title:hover .acc-accordion__icon {
  color: #323232;
}
.acc-accordion__title:focus-visible {
  outline: 2px solid #CD1316;
}
.acc-accordion__icon {
  color: rgba(0, 0, 0, 0.2);
  display: inline-block;
  height: 1.75rem;
  margin: 0 0.25rem;
  vertical-align: middle;
  width: 1.75rem;
}
.acc-accordion__icon--open {
  display: none;
}
.acc-accordion__body {
  height: 0;
  overflow: hidden;
}
.acc-accordion__body p:last-of-type {
  margin-bottom: 0;
}
.acc-accordion__body .tme__content {
  padding: 0;
}
.acc-accordion--active .acc-accordion__title {
  border-color: #323232;
  color: #323232;
}
.acc-accordion--active .acc-accordion__title::after {
  color: #323232;
}
.acc-accordion--active .acc-accordion__icon {
  color: #323232;
}
.acc-accordion--active .acc-accordion__body {
  margin-bottom: 1.5rem;
  height: auto;
}
.acc-accordion--active .acc-accordion__icon {
  display: none;
}
.acc-accordion--active .acc-accordion__icon--open {
  display: block;
}
.acc-section--no-js .acc-accordion__title:focus,
.acc-section--no-js .acc-accordion:focus-within .acc-accordion__title {
  pointer-events: none;
}
.acc-section--no-js .acc-accordion__title:focus .acc-accordion__title,
.acc-section--no-js .acc-accordion:focus-within .acc-accordion__title .acc-accordion__title {
  border-color: #323232;
  color: #323232;
}
.acc-section--no-js .acc-accordion__title:focus .acc-accordion__title::after,
.acc-section--no-js .acc-accordion:focus-within .acc-accordion__title .acc-accordion__title::after {
  color: #323232;
}
.acc-section--no-js .acc-accordion__title:focus .acc-accordion__icon,
.acc-section--no-js .acc-accordion:focus-within .acc-accordion__title .acc-accordion__icon {
  color: #323232;
}
.acc-section--no-js .acc-accordion__title:focus .acc-accordion__icon {
  display: none;
}
.acc-section--no-js .acc-accordion__title:focus .acc-accordion__icon--open {
  display: block;
}
.acc-section--no-js .acc-accordion__title:focus ~ .acc-accordion__body,
.acc-section--no-js .acc-accordion__body:focus,
.acc-section--no-js .acc-accordion__body:focus-within {
  margin-bottom: 1.5rem;
  height: auto;
}

/*
Accordion Section

Group toghether several accordion element. Optionally add an headline.

markup:
<section class="acc-section acc-section--no-js" data-module="accordion">
	<h2 class="acc-section__title headline-3 ttl--subsection"> Lorem ipsum </h2>
	<sg-insert class="inp-filter-element">3.21.2</sg-insert>
	<sg-insert class="inp-filter-element">3.21.2</sg-insert>
	<sg-insert class="inp-filter-element">3.21.2</sg-insert>
	<sg-insert class="inp-filter-element">3.21.2</sg-insert>
</section>

Styleguide 3.21
*/
.acc-section__title {
  margin-bottom: 0.75rem;
}

.additional-faq--wrapper {
  padding-top: 40px;
}

.additional-lightbox {
  display: none;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1em;
  background: rgba(0, 0, 0, 0.8);
}

.additional-lightbox span {
  display: block;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

/*
Faq Accordion
*/
.faq-acc-section__title {
  margin-bottom: 0.75rem;
  padding-block-end: 0.75rem;
  border-bottom: thin solid #323232;
  font-weight: 600;
}
.faq-acc-intro {
  margin-bottom: 6rem !important;
}
.faq-acc-nav__filter {
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 60px;
}
.faq-acc-nav__filter.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #ffffff;
  padding: 1rem 0 0 0 !important;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);
}
.faq-acc-nav__filter::-webkit-scrollbar {
  display: none;
}
.faq-acc-nav__filter__sentinel {
  height: 0;
}
.faq-acc-nav__filter__container {
  margin: 0 auto;
  position: relative;
}
.faq-acc-nav__filter__container:before {
  content: "";
  display: block;
  width: 50px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(to right, white 0%, transparent 100%);
  z-index: 1;
  pointer-events: none;
}
.faq-acc-nav__filter__container:after {
  content: "";
  display: block;
  width: 50px;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  background: linear-gradient(to left, white 0%, transparent 100%);
  pointer-events: none;
}
.is-fixed .faq-acc-nav__filter__container {
  max-width: 1150px;
}
.faq-acc-nav__filter__nav {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-x;
  margin: 0 auto;
  position: relative;
}
.faq-acc-nav__filter__nav:hover {
  cursor: grabbing;
}
.is-fixed .faq-acc-nav__filter__nav {
  max-width: 1150px;
}
.faq-acc-nav__filter__nav__button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 48px;
  width: 48px;
  text-align: center;
  transition-duration: 0.2s;
  margin: 0 3px;
  filter: drop-shadow(0 0.2rem 0.25rem rgba(0, 0, 0, 0.2));
  z-index: 1;
}
.faq-acc-nav__filter__nav__button[disabled] {
  opacity: 0.3;
  pointer-events: none;
}
.faq-acc-nav__filter__nav__button:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.faq-acc-nav__filter__nav__button__inner {
  background-color: #ffffff;
  border: 1px solid #323232;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
  margin: 0;
  width: 100%;
  height: 100%;
}
.faq-acc-nav__filter__nav__button__inner:hover {
  border-color: #CD1316;
  background-color: #FFF;
}
.faq-acc-nav__filter__nav__button .arrow-symbol {
  width: 0;
  height: 0;
  border-top: 0.7rem solid transparent;
  border-bottom: 0.7rem solid transparent;
  transition-property: border-color;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
.faq-acc-nav__filter__nav__button[data-direction=left] {
  left: 0;
}
.faq-acc-nav__filter__nav__button[data-direction=left] .arrow-symbol {
  border-right: 1.2rem solid #323232;
  transform: translateX(-2px);
}
.faq-acc-nav__filter__nav__button[data-direction=left]:hover .arrow-symbol {
  border-right-color: #CD1316;
}
.faq-acc-nav__filter__nav__button[data-direction=right] {
  right: 0;
}
.faq-acc-nav__filter__nav__button[data-direction=right] .arrow-symbol {
  border-left: 1.2rem solid #323232;
  transform: translateX(2px);
}
.faq-acc-nav__filter__nav__button[data-direction=right]:hover .arrow-symbol {
  border-left-color: #CD1316;
}
.faq-acc-nav__filter__list {
  display: flex;
  align-items: center;
  padding: 0 50px;
  list-style: none;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.faq-acc-nav__filter__list__item {
  white-space: nowrap;
  margin: 0 1.5rem;
  padding: 0;
  text-align: left;
}
.faq-acc-nav__filter__list__item__button {
  font-weight: 300 !important;
  height: 100%;
  cursor: pointer;
  margin: 0;
}
.faq-acc-nav__filter__list__item__button:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.faq-acc-nav__filter__list__item__button__current, .faq-acc-nav__filter__list__item__button__active {
  text-decoration: underline;
  font-weight: 500 !important;
}
.faq-acc-item {
  border-bottom: thin solid rgba(0, 0, 0, 0.2);
  margin-block-end: 1rem;
}
.faq-acc-item:hover {
  border-color: #323232;
}
.faq-acc__title {
  margin: 0;
  padding: 0;
}
.faq-acc__title button {
  border: 0 none;
  margin: 0;
  padding: 0 0 0.5rem 0;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background: transparent;
  font-family: inherit;
  font-weight: 300;
  text-transform: none;
  width: 100%;
  text-align: left;
}
.faq-acc__title button:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.faq-acc__icon {
  color: rgba(0, 0, 0, 0.2);
  display: inline-block;
  height: 1.75rem;
  margin: 0 0.25rem;
  vertical-align: middle;
  width: 1.75rem;
  flex-shrink: 0;
  transform: rotate(-45deg);
  transition: transform 0.2s;
}
.faq-acc__body p:last-of-type {
  margin-bottom: 0;
}
.faq-acc__body .tme__content {
  padding: 0;
}
.faq-acc__body a:not(.btn) {
  color: inherit;
}
.faq-acc__body a:not(.btn):focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.faq-acc__cta {
  margin-block-start: 40px;
}
.faq-acc--active .faq-acc__body {
  padding-block-start: 1rem;
  margin-bottom: 1.5rem;
}
.faq-acc--active .faq-acc__title button {
  font-weight: 500;
}
.faq-acc--active .faq-acc-item {
  border-color: #323232;
}
.faq-acc--active .faq-acc__icon {
  transform: rotate(0deg);
}

.additional-faq-acc--wrapper {
  padding-block-start: 40px;
}
.additional-faq-acc--wrapper .container {
  padding: 0;
}

.additional-faq-acc-lightbox-content-close,
.additional-faq-acc-lightbox-content,
.additional-faq-acc-lightbox {
  display: none;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1em;
  background: rgba(0, 0, 0, 0.8);
}

.additional-faq-acc-lightbox-content-close {
  display: block;
  background: transparent;
}

.additional-faq-acc-lightbox-content {
  display: block;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.additional-faq-acc-thumbnail {
  display: block;
}
.additional-faq-acc-thumbnail:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}

.localAccount input[type=text], .localAccount input[type=password], .localAccount input[type=email], #attributeVerification input[type=text], #attributeVerification input[type=password], #attributeVerification input[type=email] {
  background-color: #efefef;
  font: inherit;
  height: 3rem;
  padding-left: 0.5rem;
  width: 100%;
}
.localAccount button[type=submit], .localAccount button[type=button], #attributeVerification button[type=submit], #attributeVerification button[type=button] {
  margin: 1em 0 0.5em 0;
  background-image: none;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  touch-action: manipulation;
  transition: 0.25s ease;
  vertical-align: middle;
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.5rem 3rem;
  text-align: center;
  text-transform: uppercase;
  background-color: #323232;
  border: 1px solid;
  border-color: transparent;
  color: #ffffff;
}
html:not(.can-touch) .localAccount button[type=submit]:hover, html:not(.can-touch) .localAccount button[type=button]:hover, html:not(.can-touch) #attributeVerification button[type=submit]:hover, html:not(.can-touch) #attributeVerification button[type=button]:hover {
  background-color: #CD1316;
  color: #323232;
}
.localAccount #createAccount, .localAccount #cancel, #attributeVerification #createAccount, #attributeVerification #cancel {
  color: rgba(50, 50, 50, 0.65);
  margin-left: 1em;
  background-image: none;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  touch-action: manipulation;
  transition: 0.25s ease;
  vertical-align: middle;
  font-weight: bold;
  text-decoration: underline;
  margin-top: -6px;
}
.localAccount #cancel, #attributeVerification #cancel {
  margin-top: 0;
}
.localAccount #forgotPassword, #attributeVerification #forgotPassword {
  float: right;
}

.localAccount .entry-item label {
  display: none;
}

#api .intro {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
}

#attributeVerification .attr ul {
  list-style: none;
  padding-left: 0;
}
#attributeVerification .attr .helpLink {
  float: right;
}
#attributeVerification .attr label {
  display: none;
}
#attributeVerification .attr li.CheckboxMultiSelect {
  margin-top: 1em;
}
#attributeVerification .attr li.CheckboxMultiSelect label {
  display: inline;
}

.azad_show-address .address_section {
  border: 0.7px solid grey;
  padding: 30px;
  margin-bottom: 50px;
}
.azad_show-address .address_section li {
  list-style: none;
}
.azad_show-address .address_section ul {
  padding-left: 0;
}
.azad_show-address .azad_file-download {
  color: rgba(50, 50, 50, 0.65);
  font-weight: bold;
  text-decoration: underline;
}

/*
Container Section

An horizontally centered container. Has section vertical spacing and adds a vertical
spacing between each of its child elements.

markup:
section(class=`container-section ${modifier} `)
	if header
		header.container-section__header.ttl.ttl--section
			h2.ttl__headline header
		if subtitle
			.container-section__subtitle subtitle
	.container-section__content
		each module in modules
			if module == "dummy"
				div(style="min-height: 100px; background-color: hsl(0, 60%, 90%)")
			else
				sg-insert module

sg-pug-options:
{
	"modules": ["dummy", "dummy"],
	"header": "Sed libero enim sed faucibus turpis in",
	"subtitle": "Vitae semper quis lectus nulla at volutpat diam ut. Massa id neque aliquam vestibulum morbi blandit cursus risus at. Est ante in nibh mauris cursus mattis molestie. Placerat duis ultricies lacus sed turpis tincidunt. Eu facilisis sed odio morbi quis commodo odio"
}

  - Default width
container-section--narrow - Content width
container-section--alternate - Grey background
container-section--separator-bottom - Add a line separator after the last module


Styleguide organism.containerSection
 */
.container-section {
  padding-top: 1.5rem;
  padding-bottom: 2.25rem;
}
.container-section__header {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-bottom: 1.5rem;
}
.container-section__header.flex {
  display: flex;
}
.container-section__header.flex.justify-content-end {
  justify-content: end;
}
.container-section__header.flex.justify-content-start {
  justify-content: start;
}
.container-section__header.flex.justify-content-center {
  justify-content: center;
}
.container-section__subtitle {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-bottom: 1.5rem;
  margin-top: 1.5rem;
  text-align: center;
}
.container-section__subtitle.flex {
  display: flex;
}
.container-section__subtitle.flex.justify-content-end {
  justify-content: end;
}
.container-section__subtitle.flex.justify-content-start {
  justify-content: start;
}
.container-section__subtitle.flex.justify-content-center {
  justify-content: center;
}
.container-section .container-section__content {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-bottom: -1.5rem;
  margin-top: -1.5rem;
  overflow: auto;
}
.container-section .container-section__content.flex {
  display: flex;
}
.container-section .container-section__content.flex.justify-content-end {
  justify-content: end;
}
.container-section .container-section__content.flex.justify-content-start {
  justify-content: start;
}
.container-section .container-section__content.flex.justify-content-center {
  justify-content: center;
}
.container-section .container-section__content > * {
  padding: 0;
  margin-bottom: 1.5rem;
  margin-top: 1.5rem;
}
.container-section--narrow .container-section__content {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.container-section--narrow .container-section__content.flex {
  display: flex;
}
.container-section--narrow .container-section__content.flex.justify-content-end {
  justify-content: end;
}
.container-section--narrow .container-section__content.flex.justify-content-start {
  justify-content: start;
}
.container-section--narrow .container-section__content.flex.justify-content-center {
  justify-content: center;
}
.container-section--separator-bottom .container-section__content::after {
  border-top: thin solid rgba(0, 0, 0, 0.2);
  content: "";
  display: block;
  transform: translateY(-1.5rem);
}
.container-section--alternate {
  background-color: #efefef;
}

div.container-section--alternate, section.container-section--alternate {
  background-color: #efefef;
}
div.container-section--alternate .t3-form .form-group textarea, div.container-section--alternate .t3-form .form-group input, section.container-section--alternate .t3-form .form-group textarea, section.container-section--alternate .t3-form .form-group input {
  background-color: #ffffff;
}

/*
Footer Article

Deprecated:

markup:
<article class="ftr-article ftr-contacts__article">
	<h2 class="ftr-article__title">Öffnungszeiten</h2>
	Some text<br>
	For instance the adresse<br>
</article>

Styleguide 3.3.1
*/
/*
Footer Article - Opening

Deprecated:

markup:
<article class="ftr-article ftr-article--opening ftr-contacts__article">
	<h2 class="ftr-article__title">Öffnungszeiten</h2>
	<p>
			<span class="ftr-article__days">Mo.-Do.</span>
			<span class="ftr-article__hours">10:00 - 20:00 Uhr</span><br>
			<span class="ftr-article__days">Mo.-Do.</span>
			<span class="ftr-article__hours">10:00 - 20:00 Uhr</span><br>
			<span class="ftr-article__days">Mo.-Do.</span>
			<span class="ftr-article__hours">10:00 - 20:00 Uhr</span><br>
	</p>
	<sg-insert>2.7</sg-insert> <!-- info box -->
	<p>
		<span class="ftr-article__opening">
			Heute noch 3 Stunden, 24 Minuten geöffnet
		</span>
	</p>
</article>

Styleguide 3.3.1.1
*/
/*
Footer Article - Adresse

Deprecated:

markup:
<article class="ftr-article ftr-article--opening ftr-contacts__article">
	<h2 class="ftr-article__title">adresse</h2>
	<adresse class="ftr-article__adresse">
		Billstedt Center Hamburg <br>
		Möllner Landstraße 3 <br>
		22111 Hamburg
	</adresse>
	<div class="ftr-article__link">
		<a href="tel:+49123456789" class="btn btn--icon">
			<span class="btn__inner">
				<span class="btn__icon">
					<svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
						<g>
							<path d="M587.459,668.134c-81.109,37.749-246.193-271.822-166.908-312.63l75.414-35.629L369.518,82.883
								c-0.112,0.035-75.042,35.524-76.307,36.115c-260.785,130.523,153.284,903.13,420.062,786.093
								c4.392-1.912,76.121-35.768,76.419-35.907L662.203,632.992C661.943,633.131,590.735,666.709,587.459,668.134z"></path>
						</g>
					</svg></span><span class="btn__label">+49123456789</span>
			</span>
		</a>
	</div>
	<div class="ftr-article__link">
		<a class="btn btn--icon" rel="noopener" target="_blank" href="">
			<span class="btn__inner">
				<span class="btn__icon">
					<svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
						<g>
							<path d="M500,84.855c-161.656,0-292.402,130.745-292.402,292.402C207.598,596.558,500,920.289,500,920.289
								s292.402-323.731,292.402-543.032C792.402,215.6,661.657,84.855,500,84.855z M500,481.686
								c-57.645,0-104.429-46.784-104.429-104.429c0-57.645,46.784-104.429,104.429-104.429s104.429,46.784,104.429,104.429
								C604.429,434.902,557.645,481.686,500,481.686z"></path>
						</g>
					</svg>
				</span><span class="btn__label">Google Maps</span>
			</span>
		</a>
	</div>
</article>

Styleguide 3.3.1.2
*/
/*
Footer Article - App

Deprecated:

markup:
<article class="ftr-article ftr-article--opening ftr-contacts__article">
	<h2 class="ftr-article__title">Download Center App</h2>
	<a href=''>
		<img class="ftr-article__store-icon" alt='Get it on Google Play' src='../dev/images/google-play.png'/>
	</a>
	<a href=''>
		<img class="ftr-article__store-icon" alt='Get it on the App Store' src='../dev/images/app-store.svg'/>
	</a>
</article>

Styleguide 3.3.1.3
*/
/*
Footer Article - Newsletter

Deprecated:

markup: {"url": "http://local.aez:8106", "selector": ".ftr-article--newsletter ", "update": "true"}

Styleguide 3.3.1.4
*/
/*
Newsletter Email

Deprecated:

markup:
<form class="ftr-email">
	<input class="ftr-email__input" type="email" placeholder="Ihre E-Mail">
	<button class="ftr-email__button" type="submit" value="">
</form>

Styleguide 3.3.1.4.1
*/
/*
Footer Navigation

Deprecated:

markup:
<ul class="ftr-nav ftr-aside__nav {$modifiers}">
	<li> Jobs </li>
	<li> Datenschutz </li>
	<li> Datenschutz </li>
	<li> Datenschutz </li>
</ul>

ftr-nav--list ftr-aside__highlight - xs: list view; xs < inline view
ftr-nav--inline ftr-aside__legal - Inline view always

Styleguide 3.3.2.1
*/
/*
Footer Language Menu

Deprecated:

markup:
<div class="ftr-lang ftr-aside__lang">
	<select class="ftr-lang__select">
		<option value="1">EN</option>
		<option value="2">FR</option>
		<option value="3">FR</option>
		<option value="4">FR</option>
	</select>
</div>

Styleguide 3.3.2.2
*/
/*
Footer Aside

Deprecated:

markup:
<aside class="ftr-aside">
	<div class="ftr-aside__container">
		<h2 class="ftr-aside__title" hidden>Footer Menu</h2>
		<sg-insert>3.3.2.1-1</sg-insert> <!-- ftr-nav--list -->
		<sg-insert>3.3.2.1-2</sg-insert> <!-- ftr-nav--inline -->
		<div class="ftr-aside__footer">
			© 2016 ECE Projektmanagement GmbH & Co. KG
			<sg-insert>3.3.2.2</sg-insert>
		</div>
	</div>
</aside>

Styleguide 3.3.2
*/
/*
Footer Contacts

Deprecated:

markup:
<section class="ftr-contacts ftr-contacts--four ftr-footer__contacts">
	<div class="ftr-contacts__container">
		<h2 class="ftr-contacts__title" hidden>Contacts</h2>
		<sg-insert>3.3.1.1</sg-insert> <!-- ftr-article--opening -->
		<sg-insert>3.3.1.2</sg-insert> <!-- ftr-article -->
		<sg-insert>3.3.1.3</sg-insert> <!-- ftr-article -->
		<sg-insert>3.3.1.4</sg-insert> <!-- ftr-article -->
	</div>
</section>

Styleguide 3.3.3
*/
/*
Footer Social

Deprecated:

markup: {"url": "http://local.spf:8106/404", "selector": ".ftr-social", "update": "false"}

sg-wrapper:
<div style="background-color: royalblue; padding: 2rem 0; ">
	<sg-wrapper-content/>
</div>

Styleguide 3.3.4.2
*/
/*
Footer

The footer, composed of three sections:
- **Social media bar**: links to social media
- **Contact area**, with up to four subsections: opening hours, address, links to
  app store/google play _(optional)_, newsletter registration _(optional)_
- **Menu Navigation**: some of the menu links repeated here

markup:
<div class="ftr-footer">
	<sg-insert>3.3.4.2</sg-insert> <!-- ftr-social -->
	<sg-insert>3.3.3</sg-insert> <!-- ftr-contacts -->
	<sg-insert>3.3.2</sg-insert> <!--ftr-nav -->
</div>

Styleguide 3.3.0
*/
/* Atoms */
.ftr {
  /* Molecules */
}
.ftr-article {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ffffff;
}
.ftr-article__adresse {
  display: block;
  margin-bottom: 1.5rem;
}
.ftr-article__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  text-transform: uppercase;
}
.ftr-article .opn-list {
  margin-bottom: 1rem;
}
.ftr-article__opening {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.5;
}
.ftr-article__label {
  margin-bottom: 0.75rem;
  margin-right: 0.75rem;
  vertical-align: middle;
}
.ftr-article__link {
  margin-bottom: 1rem;
}
.ftr-article__store-icon {
  background-color: transparent !important;
  display: inline-block;
  margin-bottom: 0.3125rem;
  margin-right: 1.5rem;
  max-height: 40px;
}
.ftr-article__description {
  color: rgba(255, 255, 255, 0.8);
}
.ftr-email__input {
  display: inline-block;
  font-size: 1rem;
  height: 2.5rem;
  margin-right: 0.25rem;
  max-width: 300px;
  opacity: 0.7;
  padding-left: 1rem;
  transition: 0.25s ease;
  vertical-align: middle;
  width: calc(100% - 1rem - 2.5rem - 0.25rem);
}
.ftr-email__input:hover, .ftr-email__input:focus {
  opacity: 1;
  outline: none;
}
.ftr-email__button {
  background-color: transparent;
  border: 1px solid #ffffff;
  cursor: pointer;
  display: inline-block;
  font-size: 1.5rem;
  height: 2.5rem;
  min-width: 2.5rem;
  padding: 0;
  text-align: center;
  transition: 0.25s ease;
  vertical-align: middle;
}
html:not(.can-touch) .ftr-email__button:hover {
  background-color: #323232;
  color: #ffffff;
}
.ftr-nav {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ftr-nav > li {
  padding: 1rem 15px 1rem 15px;
  transition: color 0.4s ease;
}
.ftr-nav--list > li {
  border-bottom: 1px solid #727272;
}
.ftr-nav--inline {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.ftr-nav--inline > li {
  flex: 0 1 auto;
}
.ftr-aside {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  background-color: #323232;
  color: #ffffff;
}
.ftr-aside__footer {
  align-items: center;
  border-top: 1px solid #727272;
  flex-direction: column;
  margin: 0 1rem;
  padding: 1rem 0;
  text-align: center;
  display: flex;
  order: 3;
}
.ftr-aside__lang {
  background-color: #323232;
  color: #ffffff;
  font-size: 1rem;
  margin-bottom: 1rem;
  margin-top: 2rem;
}
.ftr-aside__highlight {
  color: #ffffff;
}
html:not(.can-touch) .ftr-aside__highlight > li:hover {
  color: #ffffff;
}
html:not(.can-touch) .ftr-aside__legal > li:hover {
  color: #ffffff;
}
.ftr-aside__container {
  display: flex;
  flex-direction: column-reverse;
}
.ftr-contacts {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  background-color: rgba(50, 50, 50, 0.85);
  color: #333333;
}
.ftr-contacts__container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
}
.ftr-contacts__container.flex {
  display: flex;
}
.ftr-contacts__container.flex.justify-content-end {
  justify-content: end;
}
.ftr-contacts__container.flex.justify-content-start {
  justify-content: start;
}
.ftr-contacts__container.flex.justify-content-center {
  justify-content: center;
}
.ftr-contacts__article {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 2rem;
}
.ftr-contacts__payment {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 25% 1 0;
  margin-bottom: 2rem;
  min-width: 300px;
}
.ftr-social {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  background-color: #ffffff;
}
.ftr-social.d-none {
  display: none;
}
.ftr-social .btn-round {
  margin: 0 0.5rem;
}
.ftr-social__container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}
.ftr-social__container.flex {
  display: flex;
}
.ftr-social__container.flex.justify-content-end {
  justify-content: end;
}
.ftr-social__container.flex.justify-content-start {
  justify-content: start;
}
.ftr-social__container.flex.justify-content-center {
  justify-content: center;
}
.ftr-social__title {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-bottom: 1.5rem;
  text-align: center;
}
.ftr-social__btn-container {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.ftr-footer {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 200;
}
.ftr-footer .ftr-aside__container,
.ftr-footer .ftr-contacts__container {
  margin: auto;
  max-width: 1200px;
}
.ftr-footer .ftr-aside__container a:focus-visible img,
.ftr-footer .ftr-contacts__container a:focus-visible img {
  outline: 2px solid #CD1316;
}
.ftr-footer .ftr-aside__container a:focus-visible {
  outline: 2px solid #CD1316;
}

span.e3a1ma2il__at:before {
  content: "@";
}

span.e5ma4i9l__dot:before {
  content: ".";
}

p.ftr-article__title, p.ftr-contacts__title, p.ftr-aside__title {
  margin-top: 0;
}

p.ftr-social__title {
  text-transform: uppercase;
  margin-top: 0;
}

/*
Search

Deprecated:

markup:
<div class="hdr-search {$modifiers}">
	<div class="hdr-search__input-container">
		<svg class="icn-icon">
			<use xlink:href="providerece/Resources/Public/dev/assets/svg/symbols.svg#search"></use>
		</svg>
		<input class="hdr-search__input" placeholder="Shops, Services, News & Events..." type="text"></input>
	</div>
	<a href="">
		<svg class="icn-icon">
			<use xlink:href="providerece/Resources/Public/dev/assets/svg/symbols.svg#close"></use>
		</svg>
	</a>
</div>

  - default
hdr-header__search - included in header

sg-wrapper:
<div style="background-color: hsla(210,100%,50%,.8); display: block; width: 100%; position: relative; height: 140px;">
	<sg-wrapper-content/>
</div>

Styleguide 3.2.4
*/
/*
Header(s)

Styleguide 3.2
*/
/*
Headers

*TODO* Add an header without login, with login, after login :D

markup:
<header class="hdr-header">
	<div class="hdr-header__logo {$modifiers}">
		<a href="#">
			<img src="http://placehold.it/150x70"
				ng-if="'{$modifiers}'.indexOf('--landscape') != -1">
			<img src="../dev/images/SPF-green.jpg"
				ng-if="'{$modifiers}'.indexOf('--portrait') != -1">
			<img src="../dev/images/RMB.jpg"
				ng-if="'{$modifiers}'.indexOf('--llandscape') != -1">
		</a>
	</div>
	<button class="hdr-header__icon-search icn-icon icn-icon--search" type="button" data-module="search">
		<sg-insert>1.2.3-6</sg-insert>
	</button>
    <sg-insert>1.3</sg-insert> <!-- burger -->
	sg-insert molecule.menu
	<sg-insert>3.2.4-2</sg-insert> <!-- search bar -->
	<div class="hdr-dimmer hdr-dimmer--menu" data-module="dimmer"></div>
	<div class="hdr-dimmer hdr-dimmer--search" data-module="dimmer"></div>
</header>

sg-wrapper:
<div class="header-wrapper">
	<sg-wrapper-content/>
</div>

hdr-header__logo--portrait - Portrait logo:  w/h < 1.2
hdr-header__logo--landscape - Landscape logo: 1.2 <= width/height < 3
hdr-header__logo--llandscape - Long landscape logo: width/height > 3

Styleguide 3.2.1
*/
/*
Header Mall Marketing

markup:
header.hdr-header.hdr-header--mall
	.hdr-header__logo.hdr-header__logo--landscape
		a(href="#")
			img(src="https://via.placeholder.com/150x70")
	sg-insert atom.burger
	nav.mnu-menu.hdr-header__menu
		h2.mnu-menu__title Tortor aliquam nulla
		ul(class="mnu-list mnu-menu__list " + modifier)
			each item in items
				li.mnu-list__item.mnu-menu__item(data-module="mnu-item")
					.mnu-list__label.mnu-menu__label
						a(title=item.main) item [main]
			li.mnu-list__item.mnu-menu__item.mnu-menu__item--cta
				sg-insert(class="btn--small" parameters=`{"label": "Lorem ipsum"}` modifier="3") atom.button.rectangular

sg-pug-options:
{
	"items": [
		{"main": "Shopping"},
		{"main": "Zielgruppe"},
		{"main": "Standorte"},
		{"main": "Aktionsflächen"},
		{"main": "Media"},
		{"main": "Mall Retail-Flächen"},
		{"main": "Referenzen"}
	]
}

sg-wrapper:
<div class="header-wrapper">
	<sg-wrapper-content/>
</div>

Styleguide organism.mallHeader
 */
.hdr-dimmer {
  background-color: rgba(0, 0, 0, 0.4);
  height: 100vh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  visibility: hidden;
  width: 100vw;
  z-index: 3;
}
.hdr-dimmer--menu {
  z-index: 10;
}
body.menu-active .hdr-dimmer--menu {
  opacity: 1;
  visibility: visible;
}
.hdr-header {
  align-items: center;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  background-color: rgba(50, 50, 50, 0.9);
  border-bottom: 1px solid transparent;
  display: flex;
  height: 70px;
  justify-content: space-between;
  padding: 0 1rem;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 400;
}
.hdr-header__logo {
  flex: 1 0 auto;
}
.hdr-header__logo a {
  display: inline-block;
}
.hdr-header__logo a:focus-visible {
  outline: 2px solid #CD1316;
}
.hdr-header__logo--landscape {
  padding: 0.5rem 0;
}
.hdr-header__logo--landscape img {
  height: 54px;
  width: auto;
}
.hdr-header__logo--portrait {
  align-self: flex-start;
  z-index: 6;
}
.hdr-header__logo--portrait img {
  height: 78px;
  max-width: 65px;
  width: auto;
}
.hdr-header__logo--llandscape {
  align-items: center;
  display: flex;
}
.hdr-header__logo--llandscape img {
  height: auto;
  width: 150px;
}
.hdr-header__burger, .hdr-header__icon-search {
  flex: 0 0 auto;
}
.hdr-header__burger {
  margin-left: 0.25rem;
  z-index: 51;
}
.hdr-header__icon-search {
  color: #ffffff;
  font-size: 1.85rem;
  z-index: 4;
}
.hdr-header__menu {
  height: 100vh;
  overflow: scroll;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(100%);
  z-index: 50;
}
.hdr-header .mnu-menu__item--cta {
  align-self: center;
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
}
body.menu-active .hdr-header__menu {
  /* has to be scroll for "-webkit-overflow-scrolling: touch", not auto */
  overflow: scroll;
  transform: translateX(0);
}
body.menu-active .hdr-header__burger {
  background-color: rgba(50, 50, 50, 0.9);
  box-shadow: 0px 0px 4px #323232;
}
body.search-active .hdr-header__search {
  opacity: 1;
  visibility: visible;
}
body.search-active .hdr-header__icon-search {
  color: #CD1316;
}
.hdr-header--mall .hdr-header__menu {
  justify-content: flex-end;
}
.hdr-header--mall .mnu-menu__list {
  align-items: flex-start;
  font-size: 12px;
}
.hdr-header--mall .mnu-menu__list a {
  flex-shrink: 1;
  white-space: normal;
}

/*
Gallery image

markup:
.glr-image.js-gallery-expand(data-sources=sources || false )
	noscript(data-module="lazy-load")
		img.glr-image__img(
			src=src
			srcset=srcset
			sizes=sizes
			alt="")
	sg-insert.icn-icon.glr-image__expand atom.icon.zoom

sg-pug-options:
{
	"src": "/fileadmin/_processed_/7/9/csm_RAM_4997_a443ddc149.jpg",
	"srcset": "",
	"sizes": ""
}


Styleguide organism.gallery-image
*/
/*
Gallery

markup:
div(class="glr {$modifiers}"
	data-module="gallery"
	data-src="/ajaxGalleryDataTypeNum/gallery/300/"
	data-html-src="/ajaxPhotoswipeTemplate/")
	header.ttl.ttl--section
		h2.ttl__headline Tempus urna et pharetra pharetra massa
	.glr-images.glr-images--center
		.glr-images__image
			sg-insert organism.gallery-image
		.glr-images__image
			sg-insert organism.gallery-image
		.glr-images__image
			sg-insert organism.gallery-image
		.glr-images__image
			sg-insert organism.gallery-image
	.glr-loadmore
		sg-insert(modifier="2" parameters=`{"icon": "plus", "label": "Facilisi cras"}`).glr-loadmore__button atom.button.spinner

sg-pug-options:
{}


Styleguide organism.gallery
*/
/*
Gallery Mall

markup:
- var sources = [{"src": "https://via.placeholder.com/1920", "w": "1920", "h": "900"}, {"src": "https://via.placeholder.com/800x450", "w": "800", "h": "450"}]
div(class="glr glr--mall {$modifiers}"
	data-module="galleryMall"
	data-html-src="/ajaxPhotoswipeTemplate/")
	sg-insert.glr-image--2-1.glr-images__image--hero(
		parameters=`{
			"src": "https://via.placeholder.com/1366x683",
			"srcset": "https://via.placeholder.com/640x320 640w, https://via.placeholder.com/768x384 768w, https://via.placeholder.com/1024x512 1024w, https://via.placeholder.com/1366x683 1366w, https://via.placeholder.com/1600x800 1600w, https://via.placeholder.com/1920x960 1920w",
			"sizes": "(min-width: 1140px) 1140px, 100vw",
			"sources": ${JSON.stringify(sources)}
		}`) organism.gallery-image
	ul.glr-images.glr-images--center
		li(data-sources=sources).glr-images__image
			sg-insert(parameters=`{
				"src": "https://via.placeholder.com/300x300",
				"srcset": "https://via.placeholder.com/280x280 280w, https://via.placeholder.com/350x350 350w, https://via.placeholder.com/450x450 450w, https://via.placeholder.com/560x560 560w, https://via.placeholder.com/650x650 650w",
				"sizes": "(min-width: 1200px) 280px, (min-width: 768px) 25vw, 50vw",
				"sources": false
			}`) organism.gallery-image
		li(data-sources=sources).glr-images__image
			sg-insert  organism.gallery-image
		li(data-sources=sources).glr-images__image
			sg-insert organism.gallery-image
		li(data-sources=sources).glr-images__image
			sg-insert organism.gallery-image
		li(data-sources=sources).glr-images__image
			sg-insert organism.gallery-image

sg-pug-options:
{}


Styleguide organism.galleryMall
*/
.glr {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
  max-width: 1200px;
  padding-block-start: 3rem;
  padding-block-end: 3rem;
}
.glr.flex {
  display: flex;
}
.glr.flex.justify-content-end {
  justify-content: end;
}
.glr.flex.justify-content-start {
  justify-content: start;
}
.glr.flex.justify-content-center {
  justify-content: center;
}
.glr-image {
  height: auto;
  background: hsla(0, 0%, 0%, 0.08);
  cursor: pointer;
  position: relative;
}
.glr-image::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.glr-image:focus-visible {
  outline: 2px solid #CD1316;
}
.glr-image__expand {
  background-color: rgba(0, 0, 0, 0.5);
  bottom: 0px;
  color: #ffffff;
  display: block;
  font-size: 2em;
  padding: 0 5px;
  position: absolute;
  right: 0;
}
.glr-image__img {
  position: absolute;
  top: 0;
  width: 100%;
}
.glr-image--16-9 {
  height: auto;
}
.glr-image--16-9::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.glr-image--2-1 {
  height: auto;
}
.glr-image--2-1::before {
  content: "";
  display: block;
  padding-top: 50%;
}
.glr-loadmore {
  display: flex;
  justify-content: center;
}
.glr-images {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  list-style: none;
  margin-bottom: -0.5rem;
  padding: 0;
}
.glr-images__image {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 50%;
  margin-bottom: 2rem;
  max-width: 50%;
}
.glr-images--center {
  justify-content: center;
}
.glr--mall {
  overflow: hidden;
}
.glr--mall .glr-images {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.25rem;
  margin-right: -0.25rem;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.glr--mall .glr-images__image {
  min-height: 1px;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  position: relative;
  margin-bottom: 1rem;
}

.pswp button:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Form Input Element

Deprecated:

markup:
<label class="dir-element dir-form__element"> Startort
	<span class="dir-element__icon dir-element__icon--start js-dir-icon-start">
		<svg xmlns='http://www.w3.org/2000/svg' width='34.36' height='45' viewBox='-5 -5 41 53'>
			<path class='outer' d='M17.18 0A17 17 0 0 0 0 16.88 16.6 16.6 0 0 0 3.43 27l13.75 18 13.75-18a16.61 16.61 0 0 0 3.43-10.12A17 17 0 0 0 17.18 0' fill='white' stroke='rgb(51,49,78)' stroke-width='2px' />
			<path class='inner' d='M17.18 28.12A11.35 11.35 0 0 1 5.73 16.87 11.35 11.35 0 0 1 17.18 5.62a11.35 11.35 0 0 1 11.45 11.25 11.35 11.35 0 0 1-11.45 11.25' fill='rgb(51,49,78)'/>
		</svg>
	</span>
	<input type="text" class="dir-element__input" id="js-map__start"></input>
</label>

Styleguide 3.5.2
*/
.dir-element {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  color: #808080;
  display: block;
  text-transform: uppercase;
}
.dir-element__icon {
  display: block;
  height: 25px;
  padding: 0.25rem;
  position: absolute;
  width: 25px;
}
.dir-element__icon svg {
  height: 100%;
  width: 100%;
}
.dir-element__input {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  background-color: #efefef;
  color: #000000;
  display: block;
  padding: 0.25rem 0.5rem 0.25rem 25px;
  width: 100%;
}
.dir-element__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.dir-element__input::placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.dir-element__input::-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  opacity: 1;
}
.dir-element__input:-moz-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.dir-element__input:placeholder-shown {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.dir-element__input:-ms-input-placeholder {
  color: hsl(0, 0%, 25%);
  font-style: italic;
}
.dir-element__input:disabled {
  color: #000000;
  cursor: not-allowed;
  opacity: 0.65;
}

/*
Form

Deprecated:

markup:
<form class="dir-form dir-directions__form" id="js-map__form">
	<h4 class="dir-form__title">route</h4>
	<sg-insert>3.5.2</sg-insert> <!-- dir-element -->
	<label class="dir-element dir-form__element"> Zielort
		<div class="dir-element__icon dir-element__icon--dest js-dir-icon-dest">
		<svg xmlns='http://www.w3.org/2000/svg' width='34.36' height='45' viewBox='-5 -5 41 53'>
					<path class='outer' d='M17.18 0A17 17 0 0 0 0 16.88 16.6 16.6 0 0 0 3.43 27l13.75 18 13.75-18a16.61 16.61 0 0 0 3.43-10.12A17 17 0 0 0 17.18 0' fill='rgb(51,49,78)' />
					<path class='inner' d='M17.18 28.12A11.35 11.35 0 0 1 5.73 16.87 11.35 11.35 0 0 1 17.18 5.62a11.35 11.35 0 0 1 11.45 11.25 11.35 11.35 0 0 1-11.45 11.25' fill='white'/>
				</svg>
		</div>
		<input type="text" disabled class="dir-element__input" id="js-map__dest"></input>
	</label>
	<button type="submit" class="btn btn--solid btn--full-width">
		<span class="btn__label">route berechnen</span>
	</button>
</form>

Styleguide 3.5.3
*/
.dir-form__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin: 0.5rem 0;
  text-transform: uppercase;
}
.dir-form__element {
  margin-bottom: 0.5rem;
  width: 100%;
}
.dir-form .btn {
  margin-top: 1rem;
}

/*
Map Controls

Deprecated:

markup:
<div class="dir-controls dir-map__controls dir-directions__controls">
	<sg-insert>3.5.3</sg-insert> <!-- dir-form -->
	<div class="dir-controls__panel dir-map__panel" id="js-map__panel"></div>
</div>

Styleguide 3.5.1.1
*/
.dir-controls {
  background-color: #ffffff;
  padding: 0.75rem;
}
.dir-controls__panel {
  width: 100%;
}
.dir-controls__panel .adp-directions {
  width: 100%;
}
.dir-controls__panel .adp-placemark {
  background-color: transparent;
  border-left: 0;
  border-right: 0;
}

/*
Map

Deprecated:

markup:
<div class="dir-map">
	<svg class="icn-icon icn-spinner dir-map__spinner js-map-spinner" viewbox="0 0 70 70">
		<circle r="30" cx="35" cy="35" />
	</svg>
	<sg-insert>3.5.1.1</sg-insert> <!-- map controls -->
	<noscript data-module="lazy-load">
		<div class="dir-map__chart" data-module="directions-fade-in|directions" id="js-map__chart" data-coordinates='{"lat": 55.70, "lng": 12.58}'></div>
	</noscript>
</div>

Styleguide 3.5.1
*/
.dir-map {
  background-color: rgb(249, 249, 249);
  padding-bottom: 270px;
  position: relative;
}
.dir-map__controls {
  margin-bottom: 1rem;
}
.dir-map__chart-wrapper {
  bottom: 0;
  height: 270px;
  position: absolute;
  width: 100%;
}
.dir-map__spinner {
  display: block;
  font-size: 1.5rem;
  left: calc(50% - 0.75rem);
  position: absolute;
  top: calc(50% - 0.75rem);
  color: #808080;
}
.dir-map__chart {
  height: 100%;
  visibility: hidden;
}
.dir-map__chart.dir-visible {
  animation: fade-in 250ms forwards;
  visibility: visible;
}

/*
Buttons

Deprecated:

The data-travelmode attribute governs the javascript action on the button. There are following possibilities for data-travelmode:
<ul>
	<li>dirAccordionDriving</li>
	<li>dirAccordionTransit</li>
	<li>dirAccordionTaxi</li>
	<li>dirAccordionWalking</li>
</ul>

markup:
<button type="button" class="dir-button" data-travelmode="_TRAVELMODE_">
	<sg-insert>1.1.2-1</sg-insert> <!-- button round -->
	<span class="dir-button__label">Label</span>
</button>

Styleguide 3.5.4
*/
.dir-button__icon {
  background-color: rgba(50, 50, 50, 0.65);
  color: #ffffff;
  margin: auto;
  margin-bottom: 1rem;
  transition: 0.25s ease;
}
.dir-button__label {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  color: #727272;
  display: none;
  margin-bottom: 1rem;
  text-transform: uppercase;
}
.dir-bar__item:hover .dir-button__label, .dir-bar__item--active .dir-button__label {
  color: #323232;
}

/*
Button Bar

Deprecated:

markup:
<ul class="dir-bar">
	<li class="dir-bar__item"><sg-insert>3.5.4</sg-insert></li>
	<li class="dir-bar__item"><sg-insert>3.5.4</sg-insert></li>
	<li class="dir-bar__item dir-button-active"><sg-insert>3.5.4</sg-insert> </li>
	<li class="dir-bar__item"><sg-insert>3.5.4</sg-insert></li>
</ul>

Styleguide 3.5.5
*/
.dir-bar {
  list-style: none;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  text-align: center;
}
.dir-bar__item {
  border-bottom: 4px solid transparent;
  display: inline-block;
  max-width: 22%;
  padding: 0 12.5px;
}
.dir-bar__item--active {
  cursor: default;
}
.dir-bar__item--active .dir-button__icon, .dir-bar__item:hover .dir-button__icon {
  background-color: #323232;
  color: #ffffff;
}

/*
Description

Deprecated:

markup:
<div class="dir-description">
<sg-insert>3.5.5</sg-insert> <!-- button bar -->
</div>

Styleguide 3.5.8
*/
.dir-description .btc-bar {
  margin-bottom: 1.5rem;
}

/*
Directions

markup: {"url": "https://www.skylineplaza.de", "selector": ".dir-directions"}

Styleguide 3.5
*/
/*
<div class="dir-directions" data-module="dir-description">
		<div class="dir-directions__container">
			<sg-insert>1.7.2</sg-insert> <!-- section title -->
			<sg-insert>3.5.8</sg-insert> <!-- dir description -->
			<sg-insert>3.5.1</sg-insert> <!-- map -->
		</div>
</div>
*/
.dir-directions {
  padding-top: 1.5rem;
}
.dir-directions .ttl {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.dir-directions .ttl.flex {
  display: flex;
}
.dir-directions .ttl.flex.justify-content-end {
  justify-content: end;
}
.dir-directions .ttl.flex.justify-content-start {
  justify-content: start;
}
.dir-directions .ttl.flex.justify-content-center {
  justify-content: center;
}
.dir-directions .ttl {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.dir-directions .ttl.flex {
  display: flex;
}
.dir-directions .ttl.flex.justify-content-end {
  justify-content: end;
}
.dir-directions .ttl.flex.justify-content-start {
  justify-content: start;
}
.dir-directions .ttl.flex.justify-content-center {
  justify-content: center;
}
.dir-directions__form {
  transition: max-height 0.4s ease, opacity 0.4s ease;
}
.dir-directions:not([travelMode]) .dir-directions__form {
  max-height: 0;
  opacity: 0;
  overflow-y: hidden;
}
.dir-directions:not([travelMode]) .dir-directions__controls {
  margin: 0;
  opacity: 0;
}

.adp-marker {
  visibility: hidden;
}

.dir-map__infobox-wrapper {
  display: none;
}

.dir-map__wrapper.dir-map-cookie-revoked .dir-controls, .dir-map__wrapper.dir-map-cookie-revoked .dir-map__chart, .dir-map__wrapper.dir-map-cookie-revoked .icn-spinner {
  display: none;
}
.dir-map__wrapper.dir-map-cookie-revoked .dir-map {
  padding-bottom: 670px;
}
.dir-map__wrapper.dir-map-cookie-revoked .dir-map__chart-wrapper {
  height: 670px;
  background: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/css/providerece/Resources/Public/src/images/ece_google_map.jpg') no-repeat center center;
  background-size: cover;
}
.dir-map__wrapper.dir-map-cookie-revoked .dir-map__infobox-wrapper {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.dir-map__wrapper.dir-map-cookie-revoked .dir-map__infobox-wrapper a {
  text-decoration: underline;
}
.dir-map__wrapper.dir-map-cookie-revoked .btc-bar {
  padding-top: 30px;
}

/*
Button Bar

markup:
<div class="srv-bar">
	<sg-insert>2.6.4-1</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-1</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-1</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-1</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-1</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-2</sg-insert> <!-- btc-round-label -->
	<sg-insert>2.6.4-2</sg-insert> <!-- btc-round-label -->
</div>

Styleguide 3.6.3
*/
.srv-bar {
  display: flex;
  flex-wrap: wrap;
}
.srv-bar .btc-round-label {
  margin: 0.5rem 0.125rem;
}
.srv-bar .btc-round-label svg {
  transform: scale(0.9);
}

/*
Header

Deprecated:

markup:
<div class="srv-header">
	<h2 class="srv-header__title">Wählen Sie eine Service Kategorie</h2>
	<sg-insert>3.6.3</sg-insert>
</div>

Styleguide 3.6.4
*/
.srv-header {
  padding: 2rem 0 1rem;
  position: relative;
}
.srv-header__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
}
.srv-header::after {
  transform: translateX(-25px);
  width: 100vw;
  background-color: #bdbdbd;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
}
.search-active .srv-header {
  display: none;
}

/*
Wall

Deprecated:

markup:
<section class="srv-wall">
<h2 class="srv-wall__title js-wall-title">Alle</h2>
<div class="srv-wall__row js-srv-wall-row">
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
	<div class="srv-wall__item">
		<sg-insert>2.1.8</sg-insert> <!-- service teaser -->
	</div>
</div>
</section>

Styleguide 3.6.5
*/
.srv-wall__item {
  min-height: 1px;
  padding-left: 8px;
  padding-right: 8px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 1.5rem;
}
.srv-wall__title {
  margin-top: 1.5rem;
}
.srv-wall__title::after {
  content: attr(data-number);
}
.srv-wall__row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}

/*
Search
*/
.srv-search input:not([data-mouse-focus]):focus-visible {
  outline: 2px solid #CD1316;
}

/*
Search bar

Deprecated:

markup:
<div class="srv-search-bar">
	<div class="srv-search-bar__container">
		<sg-insert>3.6.6</sg-insert>
	</div>
</div>

Styleguide 3.6.7
*/
.srv-search-bar {
  transform: translateX(-25px);
  width: 100vw;
  background-color: #efefef;
  padding: 0.75rem 0;
}
.srv-search-bar__container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.srv-search-bar__container.flex {
  display: flex;
}
.srv-search-bar__container.flex.justify-content-end {
  justify-content: end;
}
.srv-search-bar__container.flex.justify-content-start {
  justify-content: start;
}
.srv-search-bar__container.flex.justify-content-center {
  justify-content: center;
}

/*
Services Overview

markup: {"url": "http://local.spf:8106/services/alle/", "selector": ".srv-services", "update": "false"}

Styleguide 3.6
*/
/*
<div class="srv-services" data-server-url="providerece/Resources/Public/edo.json" data-module="services"	>
	<sg-insert>3.6.7</sg-insert>  <!--search-bar -->
	<sg-insert>3.6.4</sg-insert>  <!--header -->
	<sg-insert>3.6.5</sg-insert>  <!--wall -->
</div>
*/
.srv-services {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.srv-services.flex {
  display: flex;
}
.srv-services.flex.justify-content-end {
  justify-content: end;
}
.srv-services.flex.justify-content-start {
  justify-content: start;
}
.srv-services.flex.justify-content-center {
  justify-content: center;
}

/*
Detail Description

markup: {"url": "https://www.skylineplaza.de/news-und-events/news/news/neue-kollektion-winter-2017", "selector": ".dtl-description"}

Styleguide 3.17
*/
/*
Detail Description with Ical Icon

markup: {}

Styleguide 3.17.1
 */
.dtl-description {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
  margin-bottom: 2.25rem;
}
.dtl-description.flex {
  display: flex;
}
.dtl-description.flex.justify-content-end {
  justify-content: end;
}
.dtl-description.flex.justify-content-start {
  justify-content: start;
}
.dtl-description.flex.justify-content-center {
  justify-content: center;
}
.dtl-description__header {
  margin-bottom: 2rem;
}
.dtl-description__content {
  margin-bottom: 2rem;
}
.dtl-description__lead {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}

.dtl-header.dtl-contact {
  margin-bottom: 2rem;
}

.dtl-title {
  margin-bottom: 2rem;
}
.dtl-title__upper {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 0.75rem;
}
.dtl-title__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}
.dtl-title__author {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.75rem;
  align-items: center;
  color: hsl(0, 0%, 25%);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 0.25rem;
  text-transform: uppercase;
}
.dtl-title__shopinfo {
  font-weight: bold;
  margin: 0.5rem 0;
}
.dtl-title__subtitle {
  padding-right: 1rem;
  text-transform: uppercase;
}
.dtl-title__subtitle:nth-child(3) {
  color: #727272;
  display: block;
}

/*
Stage Image
*/
.dtl-stage-image {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-bottom: 1.5rem;
  width: 100%;
}
.dtl-stage-image.flex {
  display: flex;
}
.dtl-stage-image.flex.justify-content-end {
  justify-content: end;
}
.dtl-stage-image.flex.justify-content-start {
  justify-content: start;
}
.dtl-stage-image.flex.justify-content-center {
  justify-content: center;
}
.dtl-stage-video {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  max-width: 1200px;
  margin-bottom: 1.5rem;
  position: relative;
}
.dtl-stage-video.flex {
  display: flex;
}
.dtl-stage-video.flex.justify-content-end {
  justify-content: end;
}
.dtl-stage-video.flex.justify-content-start {
  justify-content: start;
}
.dtl-stage-video.flex.justify-content-center {
  justify-content: center;
}
.dtl-stage-video::after {
  content: "";
  display: block;
  padding-bottom: 55%;
}
.dtl-stage-video iframe,
.dtl-stage-video video {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  border: 0;
  height: 100%;
  position: absolute;
  width: 100%;
}
.dtl-stage-video iframe.flex,
.dtl-stage-video video.flex {
  display: flex;
}
.dtl-stage-video iframe.flex.justify-content-end,
.dtl-stage-video video.flex.justify-content-end {
  justify-content: end;
}
.dtl-stage-video iframe.flex.justify-content-start,
.dtl-stage-video video.flex.justify-content-start {
  justify-content: start;
}
.dtl-stage-video iframe.flex.justify-content-center,
.dtl-stage-video video.flex.justify-content-center {
  justify-content: center;
}

.dtl-video {
  padding-bottom: 55%;
  position: relative;
}
.dtl-video iframe,
.dtl-video video {
  height: 100%;
  position: absolute;
  width: 100%;
}

/*
Info Block

An information block used to display information on the detail pages (e.g.
job contact information or shop opening hours + location at the page
bottom)

It can have two or three columns. The first column is always a logo. The height
of the columns depends on the content.

It should be used inside a container (e.g. `container-section`)

markup:
article(class=`dtl-info ${modifier}`)
	.dtl-info__col-1
		sg-insert.dtl-info__logo(modifier="1") atom.mediaFrame
	.dtl-info__col-2
	if modifier && (modifier.indexOf('--3-cols') != -1)
		.dtl-info-placeholder-2.dtl-info__col-3

sg-pug-options:
{}


  - 2 cols version (default)
dtl-info--3-cols - 3 cols version

Styleguide molecule.infoBlock
*/
.dtl-info {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: -1rem;
  margin-top: -1rem;
}
.dtl-info > * {
  padding-bottom: 1rem;
  padding-top: 1rem;
}
.dtl-info__col-1 {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  width: 100%;
}
.dtl-info__col-2 {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  width: 100%;
}
.dtl-info--3-cols .dtl-info__col-3 {
  min-height: 1px;
  padding-left: 0;
  padding-right: 0;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
}

.dtl-opening-hours {
  align-content: flex-start;
}

.dtl-opening-hours .dtl-opening-hours__info-box {
  background: #d4d4d4;
  margin-left: 15px;
  margin-top: 0.75rem;
  width: 100%;
}

.dtl__service-icon {
  margin-bottom: 1.5rem;
  background-color: #323232;
  display: block;
  height: 90px;
  margin: 0 auto;
  width: 90px;
}

.dtl-map {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  position: relative;
}
.dtl-map__spinner {
  display: block;
  font-size: 1.5rem;
  left: calc(50% - 0.75rem);
  position: absolute;
  top: calc(50% - 0.75rem);
  color: #808080;
  display: none;
}
.mapplic-loading ~ .dtl-map__spinner {
  display: block;
}

.dtl__section {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
  margin-bottom: 2.25rem;
}
.dtl__section.flex {
  display: flex;
}
.dtl__section.flex.justify-content-end {
  justify-content: end;
}
.dtl__section.flex.justify-content-start {
  justify-content: start;
}
.dtl__section.flex.justify-content-center {
  justify-content: center;
}

.wayfinder-iframe {
  border: 0 none;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 420px;
}

/**
 * Opening Hours table
 *
 * markup: {}
 *
 * Styleguide 2.147
 */
.dtl-table {
  border-collapse: collapse;
  table-layout: fixed;
  margin-bottom: 1rem;
}
.dtl-table__container {
  overflow: scroll;
}
.dtl-table__first-row:not(:first-child) {
  border-top: thin solid rgba(0, 0, 0, 0.2);
}
.dtl-table__first-row:not(:first-child) td {
  padding-top: 0.5rem;
}
.dtl-table__last-row:not(:last-child) td {
  padding-bottom: 0.5rem;
}
.dtl-table__table-first-row {
  border-top: 0 !important;
}
.dtl-table__shop-name {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  max-width: 15rem;
  text-align: left;
  vertical-align: top;
  width: 50%;
}
.dtl-table__shop-name--special {
  min-width: 7rem;
  width: auto;
}
.dtl-table__first-col {
  vertical-align: top;
  width: 10rem;
}
.dtl-table__weekday, .dtl-table__hours, .dtl-table__label, .dtl-table__column {
  padding-left: 1rem;
  vertical-align: top;
  white-space: nowrap;
  width: 25%;
}

.dtl-opening-page {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.dtl-opening-page.flex {
  display: flex;
}
.dtl-opening-page.flex.justify-content-end {
  justify-content: end;
}
.dtl-opening-page.flex.justify-content-start {
  justify-content: start;
}
.dtl-opening-page.flex.justify-content-center {
  justify-content: center;
}

.dtl-ical {
  position: relative;
  top: -7px;
}
.dtl-ical--sm-up {
  display: none;
}
.dtl-ical__icon {
  position: relative;
  top: 9px;
}
.dtl-ical__icon .icn--svg {
  display: inline-block;
}
.dtl-ical__icon .icn--svg svg {
  width: 1.75rem;
}
.dtl-ical a {
  color: #bdbdbd;
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.7rem;
}
html:not(.can-touch) .dtl-ical a {
  transition: 0.25s ease;
}
.dtl-ical a svg {
  color: #bdbdbd;
}
html:not(.can-touch) .dtl-ical a svg {
  transition: 0.25s ease;
}
html:not(.can-touch) .dtl-ical a:hover, html:not(.can-touch) .dtl-ical a:focus-visible {
  color: #323232;
}
html:not(.can-touch) .dtl-ical a:hover svg, html:not(.can-touch) .dtl-ical a:focus-visible svg {
  color: #323232;
}

/*
Quicklinks

markup: {"url": "https://www.skylineplaza.de", "selector": ".qln", "update": "false"}

Styleguide 3.11
*/
.qln__buttons {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: center;
  padding-bottom: 15px;
  padding-top: 15px;
}
.qln__buttons .btn-round {
  background-color: #323232;
  color: #ffffff;
}
.qln__buttons .btncmp-round-label__label {
  color: #727272;
}
.qln .btncmp-round-label:focus-visible {
  outline: 0 !important;
}
.qln .btncmp-round-label:focus-visible .btn-round {
  outline: 2px solid #CD1316;
  outline-offset: 2px;
}
.qln__flyout {
  background-color: hsl(0, 0%, 25%);
  color: #ffffff;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.5s, opacity 0.5s;
}
.qln__flyout.open {
  max-height: 700px;
  opacity: 1;
}
.qln__flyout.open a:focus-visible {
  outline: 2px solid #CD1316;
}
.qln__flyout__container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  padding-bottom: 30px;
  padding-right: 75px;
  padding-top: 30px;
  position: relative;
}
.qln__flyout__container.flex {
  display: flex;
}
.qln__flyout__container.flex.justify-content-end {
  justify-content: end;
}
.qln__flyout__container.flex.justify-content-start {
  justify-content: start;
}
.qln__flyout__container.flex.justify-content-center {
  justify-content: center;
}
.qln__flyout__infobox {
  margin-top: 1.5rem;
}
.qln__flyout__section {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
}
.qln__flyout__section p {
  margin: 0;
}
.qln__flyout__section--headline {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.qln__flyout__section--countdown {
  font-weight: bold;
  text-align: left;
}
.qln__flyout__section--additional-information {
  list-style: none;
  margin: 0;
  padding: 0;
}
.qln__flyout__section--additional-information li {
  margin-top: 7px;
}
.qln__flyout__section--additional-information li a:hover,
.qln__flyout__section--additional-information li a:hover .icn-detail:before {
  color: #CD1316;
}
.qln__flyout__section--additional-information li:first-child {
  margin-top: 0;
}
.qln__flyout__section:last-child {
  margin-top: 30px;
}
.qln__flyout__close {
  position: absolute;
  right: 25px;
  top: 15px;
}
.qln .foodcourt dl {
  padding-left: 0;
  padding-right: 0;
}
.qln .foodcourt, .qln .opening {
  display: flex;
  flex-direction: column;
}
.qln .opening {
  margin-bottom: 20px;
}

/*
Content Switch Module

Pure CSS tabs with transform to accordeon style on tiny devices

markup:
<section class="content-switch">
	<input type="radio" class="content-switch__radio" name="content-switch-COMPONENTID" id="content-switch-COMPONENTID-0" checked="checked" />
    <label class="content-switch__label" for="content-switch-COMPONENTID-0">One Option</label>
    <input type="radio" class="content-switch__radio" name="content-switch-COMPONENTID" id="content-switch-COMPONENTID-1" />
    <label class="content-switch__label" for="content-switch-COMPONENTID-1">Another Option</label>
    <input type="radio" class="content-switch__radio" name="content-switch-COMPONENTID" id="content-switch-COMPONENTID-2" />
    <label class="content-switch__label" for="content-switch-COMPONENTID-2">Und no oane</label>
    <div style="clear: both;"></div><!-- needed so that margins to the buttons really apply (clearing on the content wrapper is not sufficient) -->
    <section class="content-switch__content-wrapper">
        <label class="content-switch__label--inner" for="content-switch-COMPONENTID-0">One Option</label>
        <div class="content-switch__content">
            Content for first option
        </div>
    </section>
    <section class="content-switch__content-wrapper">
        <label class="content-switch__label--inner" for="content-switch-COMPONENTID-1">Another Option</label>
        <div class="content-switch__content">
            Content for second option
        </div>
    </section>
    <section class="content-switch__content-wrapper">
        <label class="content-switch__label--inner" for="content-switch-COMPONENTID-2">Und no oane</label>
        <div class="content-switch__content">
            Content for third option
        </div>
    </section>
</section>

sg-wrapper:
<div style="padding: 1rem">
  <sg-wrapper-content/>
</div>

Styleguide 3.13
*/
.content-switch {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.content-switch.flex {
  display: flex;
}
.content-switch.flex.justify-content-end {
  justify-content: end;
}
.content-switch.flex.justify-content-start {
  justify-content: start;
}
.content-switch.flex.justify-content-center {
  justify-content: center;
}
.content-switch__label {
  display: none;
}
.content-switch__label--inner {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1rem;
  border: 1px solid #bdbdbd;
  color: #bdbdbd;
  display: block;
  padding: 0.25em 1em;
  text-transform: uppercase;
}
.content-switch__radio {
  left: -9999px;
  position: absolute;
}
.content-switch__radio:checked + .content-switch__label {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(1) ~ .content-switch__content-wrapper:nth-of-type(1) {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(1) ~ .content-switch__content-wrapper:nth-of-type(1) .content-switch__label--inner {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(1) ~ .content-switch__content-wrapper:nth-of-type(1) .content-switch__content {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(2) ~ .content-switch__content-wrapper:nth-of-type(2) {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(2) ~ .content-switch__content-wrapper:nth-of-type(2) .content-switch__label--inner {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(2) ~ .content-switch__content-wrapper:nth-of-type(2) .content-switch__content {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(3) ~ .content-switch__content-wrapper:nth-of-type(3) {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(3) ~ .content-switch__content-wrapper:nth-of-type(3) .content-switch__label--inner {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(3) ~ .content-switch__content-wrapper:nth-of-type(3) .content-switch__content {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(4) ~ .content-switch__content-wrapper:nth-of-type(4) {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(4) ~ .content-switch__content-wrapper:nth-of-type(4) .content-switch__label--inner {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(4) ~ .content-switch__content-wrapper:nth-of-type(4) .content-switch__content {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(5) ~ .content-switch__content-wrapper:nth-of-type(5) {
  height: auto;
}
.content-switch__radio:checked:nth-of-type(5) ~ .content-switch__content-wrapper:nth-of-type(5) .content-switch__label--inner {
  background-color: #323232;
  border: 1px solid #323232;
  color: #ffffff;
}
.content-switch__radio:checked:nth-of-type(5) ~ .content-switch__content-wrapper:nth-of-type(5) .content-switch__content {
  height: auto;
}
.content-switch__content {
  height: 0;
  margin: 0 -25px;
  overflow: hidden;
}

/*
Content Tabs

markup: {"url": "http://local.spf:8106/das-center/nachhaltigkeit/", "selector": ".content-tabs", "update": "false"}

sg-wrapper:
<div style="padding: 1rem">
  <sg-wrapper-content/>
</div>

Styleguide 3.14
*/
.content-tabs .fltr-container-list {
  display: block;
  z-index: 2;
}
.content-tabs .fltr-container-list:before {
  background-color: #bdbdbd;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 100%;
}
.content-tabs__content {
  padding-top: 1.5rem;
  display: none;
  z-index: 1;
}
.content-tabs__content--active {
  display: block;
}

/*
Teaser Group

A section with multiple teasers grouped together. There are several variants:

- Teaser Group Combi: displays three teasers (or a mix of 2-cols/1-cols teaser)
- Teaser Group Category: displays teasers with an owl carousel
- Teaser Group Shops: display a grid of (shop) teasers
- Teaser Group: (shops) banderole
- Teaser Group Services

Each variant is composed of an Headline, a lead, a main area (where teasers are
displayed) and a button bar (CTA).

There are different theme modifiers:
- white background (default)
- `tsr-grp-theme--dark`: dark (primary color) background.
- `tsr-grp-theme--gray`: gray background.
- *background image*: add an `<img>` or `<picture>` element with class `tsr-grp__bg-image`.

Styleguide organism.teaserGroup
*/
/*
Teaser Group Combi

Combine :
- 3 single column teasers
- 1 two column teaser and 1 single column teaser
- 1 three colum teaser.

Possible modifiers:
- white background color (default)
- `tsr-grp-theme--dark` primary background color
- `tsr-grp-theme--gray` light gray background color

markup:
<section class="tsr-grp tsr-grp--combi tsr-grp-theme--gray">
  <header>
    <h2 class="visuallyhidden">Werbeteasermodul
    </h2>
  </header>
  <div class="tsr-grp__teasers" data-module="lazy-load" data-lazy-load-aggregate="true" data-module-options="{&quot;margin&quot;: 0, &quot;autoplay&quot;: true, &quot;autoplayHoverPause&quot;: true}">
    <div class="tsr-grp__teaser tsr-grp__teaser--columns-2">
      <article class="tsr-solid tsr-solid--content tsr-solid--columns-2">
        <a href="/das-center/" class="tsr__container" rel="noopener noreferrer">
          <div class="tsr__media tsr__placeholder lazy-load" style="background-image: url(data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAQECAQEBAgICAgICAgICAQICAgICAgICAgL/2wBDAQEBAQEBAQEBAQECAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL/wAARCAAIABADAREAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAACQr/xAAiEAABAwMDBQAAAAAAAAAAAAADAQIFAAQHBhEhCRQiMUH/xAAVAQEBAAAAAAAAAAAAAAAAAAAFBv/EACURAAECBQMEAwAAAAAAAAAAAAECBAADBQYREiEiBxMVMTJCYf/aAAwDAQACEQMRAD8AnDwPlqXudbgk1IR1337Lsphtc1WnCqK17fqLwm1F3HW3E92KprPeTyyPzcQnbdIYNWUqnpVqbqGNGPjkbw4uK+oweOnIKL1oKSv4JipYSrTBRygEPxQ7ON/VVVA6g1BUpJeTQtJGw+0SFyWm2luE+PlEgq5EesE+4//Z)">
            <picture>
              <source srcset="/fileadmin/_processed_/3/0/csm_ECE_Website_NAMEIT_Teaser_IMPRESSIONEN-CENTER_456x257_GRUEN_SPF_a_d519707238.jpg" media="(max-width: 992px)">
              <img src="/fileadmin/_processed_/3/0/csm_ECE_Website_NAMEIT_Teaser_IMPRESSIONEN-CENTER_456x257_GRUEN_SPF_a_13e044a52a.jpg" alt="" class="lazy-load-complete" width="757" height="216">
            </picture>
          </div>
          <div class="tsr__content">
            <header class="tsr__header">
              <div class="tsr__header__group">
              </div>
              <h3 class="tsr__title">
                Willkommen im Skyline Plaza
              </h3>
            </header>
            <div class="tsr__text">
              <p>
                Das Skyline Plaza ist das Zentrum des Europaviertels und gleichzeitig ein zentraler Treffpunkt in Frankfurt. Unsere Kunden finden auf einer Verkaufsfläche von 38.000 qm rund 170 Fachgeschäfte für alle Dinge, die das Herz begehrt.
              </p>
            </div>
          </div>
        </a>
      </article>
    </div>
    <div class="tsr-grp__teaser">
      <article class="tsr-solid tsr-solid--content tsr-solid">
        <a href="/angebote/exklusive-coupons/" class="tsr__container">
          <div class="tsr__media tsr__placeholder lazy-load" style="background-image: url(data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAZABkAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAQECAQEBAgICAgICAgICAQICAgICAgICAgL/2wBDAQEBAQEBAQEBAQECAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL/wAARCAAIABADAREAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAABAn/xAAhEAABBAICAgMAAAAAAAAAAAACAQMEBQYHABEIEiExNP/EABcBAAMBAAAAAAAAAAAAAAAAAAADBQb/xAAlEQACAQMDAgcAAAAAAAAAAAABAwIABAUGBzERExIyQWFx0fD/2gAMAwEAAhEDEQA/AJMeKFRoCdjeRSNk2EONk0ZwXa5uy/MbQJ2oAnfySlyLvRe7l2+VxatKWrHYhw8LSrzCR9T8VlclK9iyAQCVnnpRvLDJNC3FFjkbW1ZBi5FDI2bJ+tH0juNAnQkSInSkv3xuy+K3IsMjlW6su2OxbwJJi09ZAnkD2FGNXewmzvyPbPAPP76r/9k=)">
            <picture>
              <source srcset="/fileadmin/_processed_/4/d/csm_SPF_0009-17_BDW_Couponheft_Icon_HP_Teaser_1920x1080_V01-3_90437c5b77.jpg" media="(max-width: 992px)">
              <img src="/fileadmin/_processed_/4/d/csm_SPF_0009-17_BDW_Couponheft_Icon_HP_Teaser_1920x1080_V01-3_90437c5b77.jpg" alt="" class="lazy-load-complete" width="456" height="257">
            </picture>
          </div>
          <div class="tsr__content">
            <header class="tsr__header">
              <div class="tsr__header__group">
              </div>
              <h3 class="tsr__title">
                Exklusive Coupons
              </h3>
            </header>
            <div class="tsr__text">
              <p>
                Erhalte exklusive Coupons deiner Lieblingsläden über die Love 2 Shop App.
              </p>
            </div>
          </div>
        </a>
      </article>
    </div>
  </div>
</section>

Styleguide 3.15.1.1
*/
/*
Teaser Group Shops

markup:
<section class="tsr-grp tsr-grp--shops">
	<sg-insert>1.7.2</sg-insert> <!-- section title -->
	<div class="tsr-grp__lead">
	 In publishing and graphic design, lorem ipsum is a filler text or greeking
	 commonly used to demonstrate the textual elements of a graphic document or
	 visual presentation. Replacing meaningful content with placeholder text
	 allows designers to design the form of the content before the content itself
	 has been produced.
	</div>
	<div class="tsr-grp__teasers">
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
		<div class="tsr-grp__teaser">
			<sg-insert>2.1.12-2</sg-insert> <!-- shop teaser -->
		</div>
	</div>
	<sg-insert>2.6.1-1</sg-insert> <!-- button-bar -->
</section>

sg-wrapper:
<div style="background-color: #f8f8f8; padding: 1rem">
  <sg-wrapper-content/>
</div>

Styleguide 3.15.2
*/
/*
Teaser Group Category

Groups teasers from a single category.
If the teasers don't fit in viewport, a slider is displayed.
An Advertisement Teaser can be displayed among the others.
Optionally with a background image.

markup: {}

  - white background
tsr-grp-theme--gray - grey background
tsr-grp-theme--dark - dark background
tsr-grp--content-width - carousel max width 768px

Styleguide 3.15.3
*/
/*
Teaser Group Services

markup:
<section class="tsr-grp tsr-grp--services">
	<sg-insert>1.7.2</sg-insert> <!-- section title -->
    <div class="tsr-grp__lead">
			Est veritatis fuga et corrupti tempore porro. Odit earum eum quidem. Nulla
			et placeat corrupti saepe eos cumque dolores commodi. Qui occaecati rerum
			qui qui ea.
		</div>
	<div class="tsr-grp__teasers">
		<sg-insert>2.6.4</sg-insert> <!-- round button with label -->
		<sg-insert>2.6.4</sg-insert> <!-- round button with label -->
		<sg-insert>2.6.4</sg-insert> <!-- round button with label -->
		<sg-insert>2.6.4</sg-insert> <!-- round button with label -->
		<sg-insert>2.6.4</sg-insert> <!-- round button with label -->
	</div>
	<sg-insert>2.6.1-1</sg-insert> <!-- button-bar -->
</section>

sg-wrapper:
<div style="background-color: #f8f8f8; padding: 1rem">
  <sg-wrapper-content/>
</div>

Styleguide 3.15.4
*/
/*
Shop Banderole

Teaser Group with a Shop banderole

markup:
<section class="tsr-grp">
  <header class="ttl ttl--section">
    <h2 class="ttl__headline"> Aktuelle News und Events </h2>
  </header>
  <div class="tsr-grp__lead">
	"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
	tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
	quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo"
	</div>
  <div class="tsr-grp-banderole owl-theme--banderole" data-module="carousel|lazy-load" data-lazy-load-aggregate="true" data-module-options='{"loop": "true", "margin": 0, "autoplay": "true", "autoplayHoverPause": "true", "slideBy": "page"}'>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
		<sg-insert class="tsr-grp-banderole__item">2.1.12-2</sg-insert>
	</div>
  <div class="btc-bar">
    <div class="btc-bar__width-adjust">
      <a href="#" class="btn btn--light">
        <span class="btn__label">
				Alle Shops ansehen
        </span>
      </a>
    </div>
  </div>
</section>

Styleguide 3.15.5
*/
/*
Product Teaser Group

markup:
section.tsr-grp.tsr-grp--wide(data-content-replace-url="providerece/Resources/Public/styleguideData/misc/prod-teaser.json")
	sg-insert atom.heading.section
	.tsr-grp__lead
		| "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
		| tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
		| quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo"
	.tsr-grp__teasers(data-module="productCarousel" data-module-options='{"loop": false, "dots": false}')
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
		.tsr-grp__teaser
			sg-insert molecule.teaser.solid.product
	sg-insert molecule.buttonComp.bar

sg-pug-options:
{}

Styleguide organism.teaserGroup.product
*/
.tsr-grp {
  padding-top: 1.5rem;
  padding-bottom: 2.25rem;
  background-color: #ffffff;
  position: relative;
  /*
  Shop Banderole

  At the moment is only included in the Teaser Group `Shop banderole`
  It can be used as a carousel, see also the owl-theme--banderole class.

  markup:
  <div class="tsr-grp-banderole owl-theme--banderole" data-module="carousel" data-module-options='{"loop": "true", "margin": 0, "autoplay": "true", "autoplayHoverPause": "true"}'>
  	<sg-insert>2.1.12</sg-insert>
  	...
  </div>
  */
}
.tsr-grp .ttl, .tsr-grp__lead, .tsr-grp__no-results,
.tsr-grp .btc-bar {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  position: relative;
}
.tsr-grp .ttl.flex, .tsr-grp__lead.flex, .tsr-grp__no-results.flex,
.tsr-grp .btc-bar.flex {
  display: flex;
}
.tsr-grp .ttl.flex.justify-content-end, .tsr-grp__lead.flex.justify-content-end, .tsr-grp__no-results.flex.justify-content-end,
.tsr-grp .btc-bar.flex.justify-content-end {
  justify-content: end;
}
.tsr-grp .ttl.flex.justify-content-start, .tsr-grp__lead.flex.justify-content-start, .tsr-grp__no-results.flex.justify-content-start,
.tsr-grp .btc-bar.flex.justify-content-start {
  justify-content: start;
}
.tsr-grp .ttl.flex.justify-content-center, .tsr-grp__lead.flex.justify-content-center, .tsr-grp__no-results.flex.justify-content-center,
.tsr-grp .btc-bar.flex.justify-content-center {
  justify-content: center;
}
.tsr-grp--brands-slider .btn-controls-wrapper {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  margin-top: 3rem;
}
.tsr-grp--brands-slider .btn-controls-wrapper .btn-link {
  order: 1;
}
.tsr-grp--brands-slider .btn-controls-wrapper .carousel-controls {
  order: 2;
  height: 40px;
  width: 40px;
  display: block;
  position: relative;
  left: 6%;
}
.tsr-grp--brands-slider .btn-controls-wrapper .carousel-controls.hidden {
  display: none;
}
.tsr-grp--products {
  max-width: 1200px;
}
.tsr-grp__lead {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
  text-align: center;
}
.tsr-grp__lead p {
  margin: 0;
}
.tsr-grp__teasers {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
}
.tsr-grp__teasers.flex {
  display: flex;
}
.tsr-grp__teasers.flex.justify-content-end {
  justify-content: end;
}
.tsr-grp__teasers.flex.justify-content-start {
  justify-content: start;
}
.tsr-grp__teasers.flex.justify-content-center {
  justify-content: center;
}
.tsr-grp__teaser {
  min-height: 1px;
  padding-left: 8px;
  padding-right: 8px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  display: flex;
}
.tsr-grp__teaser > * {
  width: 100%;
}
.tsr-grp .btc-bar {
  margin-top: 2.25rem;
}
.tsr-grp__bg-image {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.tsr-grp__no-results {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
}
.tsr-grp .owl-item {
  display: flex;
}
.tsr-grp .owl-item > * {
  flex-grow: 1;
}
.tsr-grp-banderole {
  overflow-x: hidden;
  padding: 0;
  white-space: nowrap;
}
.tsr-grp-banderole__item {
  display: inline-block;
  padding: 1px 5px;
  width: 175px;
}
.tsr-grp-brands-slider .owl-nav {
  display: none;
}
.tsr-grp--combi .tsr-grp__teaser {
  margin-bottom: 1.5rem;
}
.tsr-grp--combi .tsr-grp__teaser:last-of-type {
  margin-bottom: 0;
}
.tsr-grp--combi .btc-bar .btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp.tsr-grp--shops {
  padding-bottom: 1.5rem;
}
.tsr-grp.tsr-grp--shops .btc-bar {
  margin-top: 0.5rem;
}
.tsr-grp.tsr-grp--shops .btc-bar .btn.js-wall-button {
  margin-top: 4.5rem;
}
.tsr-grp--shops .tsr-grp__teasers {
  margin-bottom: -16px;
}
.tsr-grp--shops .btc-bar .btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--shops .tsr-grp__teaser,
.tsr-grp--shops .pge-wall__item {
  flex: 0 0 50%;
  max-width: 50%;
  margin-bottom: 16px;
}
.tsr-grp--shops .tsr-grp__teaser a.tsr__container:focus-visible,
.tsr-grp--shops .pge-wall__item a.tsr__container:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--category .tsr-grp__teasers {
  flex-wrap: nowrap;
  overflow-x: hidden;
}
.tsr-grp--category .tsr-grp__teasers.owl-loaded, .tsr-grp--category .tsr-grp__teasers.owl-init {
  overflow-x: visible;
}
.tsr-grp--category .owl-item .tsr-grp__teaser {
  max-width: none !important;
}
.tsr-grp--category .tsr__media picture {
  animation: fade-in 0s ease-in;
  transition: transform 0s;
}
.tsr-grp--category .owl-stage {
  display: flex;
}
.tsr-grp--category .owl-dots {
  margin-bottom: -1.5rem;
  margin-top: 0.75rem;
}
.tsr-grp--category .owl-nav {
  height: 0;
  overflow-y: hidden;
}
.tsr-grp--category .owl-nav button:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--category .btc-bar {
  margin-top: 2.25rem;
}
.tsr-grp--category .btc-bar .btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--services .tsr-grp__teasers {
  justify-content: center;
  margin-bottom: -1rem;
}
.tsr-grp--services .btncmp-round-label {
  margin-bottom: 1rem;
}
.tsr-grp--services .btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp .product-cinema {
  height: 300px;
}
.tsr-grp .product-cinema .tsr__price {
  bottom: 0;
  position: absolute;
}
.tsr-grp .product-cinema .mda-frame img, .tsr-grp .product-cinema .mda-frame__media {
  width: 100%;
}
.tsr-grp .product-cinema .mda-frame--16-9 {
  height: 10rem;
}
.tsr-grp .product-cinema .owl-item {
  display: initial;
}
.tsr-grp .product-cinema .tsr-solid--product, .tsr-grp .product-cinema .mda-frame {
  border: 0;
}
.tsr-grp .product-cinema .tsr-solid--product .heading-5, .tsr-grp .product-cinema .mda-frame .heading-5 {
  text-align: center;
}
.tsr-grp .product-cinema.tsr-grp__teasers {
  max-width: 1200px;
  justify-content: center;
}

.tsr-grp--content-width .tsr-grp__teasers {
  max-width: 768px;
  padding-left: 17px;
  padding-right: 17px;
}
.tsr-grp--content-width .tsr-grp__teaser {
  padding-left: 8px;
  padding-right: 8px;
}
.tsr-grp--content-width .owl-prev {
  transform: translateX(-50vw) translateX(384px) translateX(1.5rem);
}
.tsr-grp--content-width .owl-next {
  transform: translateX(50vw) translateX(-384px) translateX(-1.5rem);
}
.tsr-grp--wide .owl-item .tsr-grp__teaser {
  flex: 0 0 100%;
  max-width: none !important;
}
.tsr-grp--wide .tsr-grp__teasers {
  flex-wrap: nowrap;
  max-width: none;
  overflow-x: scroll;
  padding: 0;
}
.tsr-grp--wide .tsr-grp__teasers.owl-loaded, .tsr-grp--wide .tsr-grp__teasers.owl-init {
  overflow-x: visible;
}
.tsr-grp--wide .tsr-grp__teaser {
  min-height: 1px;
  padding-left: 8px;
  padding-right: 8px;
  position: relative;
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
  display: flex;
}
.tsr-grp--wide .tsr-grp__teaser > * {
  width: 100%;
}

.tsr-grp-theme--dark {
  background-color: #323232;
}
.tsr-grp-theme--dark .ttl::before, .tsr-grp-theme--dark .ttl::after {
  background-color: rgba(255, 255, 255, 0.8);
}
.tsr-grp-theme--dark .ttl__headline {
  color: #ffffff;
}
.tsr-grp-theme--dark .tsr-grp__no-results {
  color: #ffffff;
}
.tsr-grp-theme--dark .btc-bar .btn--light {
  border-color: #ffffff;
  color: #ffffff;
}
html:not(.can-touch) .tsr-grp-theme--dark .btc-bar .btn--light:hover {
  background-color: #ffffff;
  color: #323232;
}
.tsr-grp-theme--dark .owl-dot {
  border: 1px solid #ffffff;
}
html:not(.can-touch) .tsr-grp-theme--dark .owl-dot:hover {
  background-color: #ffffff;
}
.tsr-grp-theme--dark .owl-dot.active {
  background: #ffffff;
}
.tsr-grp-theme--gray {
  background-color: #efefef;
}

.tsr-grp__teasers[data-lazy-load-aggregate=true] .lazy-load-complete {
  opacity: 0 !important;
}

.tsr-grp__teasers.lazy-load-complete[data-lazy-load-aggregate=true] .lazy-load-complete {
  opacity: 1 !important;
}

.tsr-grp-theme--light.js-anchor-link {
  background-clip: content-box;
  margin-top: calc(-1 * 70px);
  padding-top: calc(3rem + 70px);
}
.tsr-grp-theme--light.js-anchor-link .btc-bar {
  position: relative;
  z-index: 1;
}

.shop-teaser_slider-wrapper .owl-carousel .owl-stage {
  display: flex;
  align-items: center;
}

.tsr-grp--brands-slider.teaser-brands {
  margin-top: 50px;
  margin-bottom: 50px;
  padding-top: 0;
  padding-bottom: 0;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp-brands-slider {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp-brands-slider.owl-init {
  opacity: 1;
  visibility: visible;
}
.tsr-grp--brands-slider.teaser-brands .ttl::before, .tsr-grp--brands-slider.teaser-brands .ttl::after {
  display: none;
}
.tsr-grp--brands-slider.teaser-brands .owl-stage {
  display: flex;
  align-items: flex-start;
  gap: 60px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item {
  pointer-events: none;
}
.tsr-grp--brands-slider.teaser-brands .owl-item:has(a) {
  pointer-events: initial;
}
.tsr-grp--brands-slider.teaser-brands .owl-item:has(a:focus-visible) {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item .fake-col-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item .fake-col-wrapper article:last-child:not(:first-child) {
  position: relative;
  left: 50%;
}
.tsr-grp--brands-slider.teaser-brands .tsr-shop {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 8px;
}
.tsr-grp--brands-slider.teaser-brands .tsr__container {
  width: 130px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame__container {
  position: relative;
  height: 100%;
  width: 100%;
  display: flex;
  left: auto;
  top: auto;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame img, .tsr-grp--brands-slider.teaser-brands .mda-frame__media, .tsr-grp--brands-slider.teaser-brands .tsr__placeholder img {
  position: relative;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame {
  height: auto;
  min-height: auto;
}
.tsr-grp--brands-slider.teaser-brands .tsr__placeholder img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: auto;
}
.tsr-grp--brands-slider.teaser-brands .ttl--section {
  margin-bottom: 24px;
}
.tsr-grp--brands-slider.teaser-brands .ttl__headline {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.2;
  text-transform: none;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp__lead {
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn {
  position: relative;
  border: 1px solid #8D8DA3;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: #ffffff;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover {
  background-color: #323232;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover .btn {
  filter: invert(1);
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn {
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.visible {
  opacity: 1;
  pointer-events: auto;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.play {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-play.svg');
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.stop {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-pause.svg');
}
.tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper {
  justify-content: flex-start;
  margin-left: 20px;
}
.tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
  right: 24px;
  left: auto;
  position: absolute;
  z-index: 3;
}
.tsr-grp--brands-slider.teaser-brands .btn-link {
  max-width: 75%;
}
.tsr-grp--brands-slider.teaser-brands .btn-link a:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Teaser list view

Display teasers in vertical listing. Used in:
- B2B file download list
- Search results

List items normally are `horizontal teasers` (see 2.1.31, 2.1.32). They might
differ in the MediaFrame used (e.g. with grey background for svg - see 1.5.2)

markup:
<div class="src-list">
	<div class="src-title">
		<h3 class="heading-2 src-title__title">Treffer für Herrenhemd</h3>
		<h4 class="heading-4 src-title__subtitle">12 Ereignisse</h3>
	</div>
	<sg-insert class="src-list__item">2.1.31</sg-insert><!-- horizontal teaser -->
	<sg-insert class="src-list__item">2.1.31</sg-insert><!-- horizontal teaser -->
	<sg-insert class="src-list__item">2.1.31</sg-insert><!-- horizontal teaser -->
	<sg-insert class="src-list__item">2.1.31</sg-insert><!-- horizontal teaser -->
</div>

Styleguide 3.16
*/
.src-title {
  margin-bottom: 2rem;
}
.src-title__title {
  margin-bottom: 0.5rem;
}
.src-title__title--grey {
  color: #bdbdbd;
}
.src-title__subtitle {
  color: #bdbdbd;
  margin-bottom: 0;
}
.src-list {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.src-list.flex {
  display: flex;
}
.src-list.flex.justify-content-end {
  justify-content: end;
}
.src-list.flex.justify-content-start {
  justify-content: start;
}
.src-list.flex.justify-content-center {
  justify-content: center;
}
.src-list__item {
  padding: 1rem 0;
  position: relative;
}
.src-list__item:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.src-result-page .btc-bar {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.src-teaser__highlight {
  font-weight: bold;
}

/*
Form Elements

Styleguide atom.form
*/
/*
Radio Buttons

markup:
div(class="form-group " + modifier)
	label.control-label label
	div.frm-radio
		each option in options
			label.frm-radio__label
				input(name="option" type="radio" value="1" required)
				span.frm-radio__span option
	if modifier == "has-error"
		span.frm-error.js-error(role="alert") error

sg-pug-options:
{"label": "Anrede", "options": ["Herr", "Frau"], "error": "Das ist ein Pflichtfeld"}

  - default
has-error - in case of error

Styleguide atom.form.radio
*/
.frm-radio .focus-visible .frm-radio__span::before {
  outline: 2px solid #CD1316;
}
.frm-radio input[type=radio] {
  opacity: 0;
  position: absolute;
}
.frm-radio__label {
  margin-right: 0.5rem;
  position: relative;
}
.frm-radio__span::before {
  background-color: #efefef;
  border-radius: 100%;
  content: "";
  display: inline-block;
  height: 1rem;
  margin-right: 0.25rem;
  vertical-align: -2px;
  width: 1rem;
}
.frm-radio__span:active::before {
  box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
}
input:checked ~ .frm-radio__span::before {
  background-color: #CD1316;
  border: 0.25rem solid #efefef;
}

/*
Checkbox

markup:
div(class="form-group " + modifier)
	label.frm-checkbox
		input(type="checkbox" required="required" value="1")
		span.frm-checkbox__label label
	if modifier == "has-error"
		span.frm-error.js-error(role="alert") error

sg-wrapper:
<form class="t3-form" style="margin: 0; padding: 0">
	<sg-wrapper-content/>
</form>

sg-pug-options:
{"label": "Nach #13 Abs. 2 TMG ist es notwendig, dass der Nutzer die Datennutzung durch eine aktive Handlung, wie das Anhaken eines Kontrollkästchens bestätigt.",
"error": "Das ist ein Pflichtfeld"}

  - default
has-error - Error in the input field

Styleguide atom.form.checkbox
*/
.frm-checkbox {
  position: relative;
}
.frm-checkbox.focus-visible .frm-checkbox__label::before {
  outline: 2px solid #CD1316;
}
.frm-checkbox.label-hover-disabled {
  pointer-events: none;
}
.frm-checkbox a {
  pointer-events: auto;
  text-decoration: underline;
}
.frm-checkbox a:hover {
  text-decoration: none;
}
.frm-checkbox input[type=checkbox] {
  cursor: pointer;
  opacity: 0;
  position: absolute;
}
input:focus ~ .frm-checkbox__label:before {
  outline: 2px solid #CD1316;
}
.frm-checkbox__label::before {
  border: 1px solid black;
  content: "";
  display: inline-block;
  height: 1rem;
  margin-right: 0.35rem;
  vertical-align: -2px;
  width: 1rem;
}
.frm-checkbox__label:active::before {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.2);
}
input.fixed ~ .frm-checkbox__label::after, input:checked ~ .frm-checkbox__label::after {
  border-color: #CD1316;
  border-style: solid;
  border-width: 0 2px 2px 0;
  content: "";
  height: 1rem;
  left: 0.5rem;
  position: absolute;
  top: 2px;
  transform: rotate(50deg);
  transform-origin: center;
  width: 0.5rem;
}
input:checked:disabled ~ .frm-checkbox__label::after {
  border-color: grey;
}
input.fixed ~ .frm-checkbox__label::before {
  background-color: #efefef;
}
.has-error .frm-checkbox__label::before {
  background-color: rgba(251, 30, 69, 0.1);
  border-color: #FB1E45;
}

.frm-recaptcha {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  filter: grayscale(100%);
  min-height: 60px;
  overflow: hidden;
  transform: scale(0.8);
  transform-origin: bottom left;
}

.frm-error {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  color: #FB1E45;
  display: block;
  margin-top: 0.5rem;
}

.control-label {
  display: block;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.has-error .control-label {
  color: #FB1E45;
}

.error {
  color: #FB1E45;
  display: block;
  font-weight: bold;
  font-size: 12px;
  transform-origin: left top;
}

/*
Input Field

markup:
<div class="form-group floating-label {$modifiers}" data-module="t3-floating-label">
	<label class="control-label" for="login-user">
		Nachname
		<span class="required">*</span>
	</label>
	<div class="input">
	<input placeholder="Nachname" required="required" class="form-control" value="" type="email">
	 <span class="error help-block" role="alert" ng-if="'{$modifiers}'.indexOf('has-error') != -1">
	 		Das ist ein Pflichtfeld <br>
	 </span>
	</div>
</div>

sg-wrapper:
<form class="t3-form" style="margin: 0; padding: 0">
	<sg-wrapper-content/>
</form>

  - default
has-error - Error in the input field

Styleguide atom.form.input
*/
/*
Password input field

The password input field, optionally with the possibility to show the typed password

markup: {}

form-group--hint - verstion that displays an hint when the user start typing
has-error - Error in the input field

sg-wrapper:
<form class="t3-form" style="margin: 0; padding: 0">
	<sg-wrapper-content/>
</form>

Styleguide atom.form.password
*/
.t3-form {
  position: relative;
  padding-block: 20px;
}
.t3-form fieldset {
  border: 0;
  padding: 0;
}
.t3-form input:invalid {
  box-shadow: none;
  outline: none;
}
.t3-form .general-response {
  margin-bottom: 1.5rem;
  align-items: center;
  display: flex;
  padding: 1rem 2rem;
}
.t3-form .general-response__icon {
  height: 2rem;
  margin-right: 1rem;
  width: 2rem;
}
.t3-form .general-response.error {
  background-color: rgba(251, 30, 69, 0.1);
  border: 1px solid #FB1E45;
  color: #FB1E45;
  font-size: 12px;
  padding: 0.6rem 1rem;
}
.t3-form .general-response.error .general-response__icon {
  color: #FB1E45;
  height: 1.2rem;
}
.t3-form .general-response.success {
  background-color: rgba(38, 154, 64, 0.1);
  border: 1px solid #269A40;
  color: #269A40;
}
.t3-form .general-response.success .general-response__icon {
  color: #269A40;
}
.t3-form .general-response.info {
  background-color: rgba(158.1, 158.1, 158.1, 0.1);
  border: 1px solid rgb(158.1, 158.1, 158.1);
  color: #666666;
}
.t3-form .general-response.info .general-response__icon {
  color: #666666;
}
.t3-form .clearfix.static-text a {
  text-decoration: underline;
}
.t3-form .clearfix.static-text a:hover, .t3-form .clearfix.static-text a:active {
  color: #323232;
}
.t3-form .clearfix .dtl-title {
  margin-top: 3rem;
}
.t3-form .countryselect select:focus-visible {
  outline: 2px solid #CD1316;
}
.t3-form .countryselect select.no-focus-visible {
  outline: none;
}
.t3-form .form-group {
  margin: 1rem 0 1rem;
  position: relative;
}
.t3-form .form-group.fileupload {
  display: flex;
}
.t3-form .form-group.fileupload .field-wrapper {
  width: 100%;
  order: 2;
}
.t3-form .form-group.fileupload .field-wrapper .help-block.error {
  margin-top: 10px;
}
.t3-form .form-group.fileupload .help-block {
  width: 100%;
  margin-right: 5%;
  order: 1;
}
.t3-form .form-group.fileupload .multiupload-files {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
}
.t3-form .form-group.fileupload .multiupload-file-block {
  border-radius: 10px;
  background-color: #efefef;
  margin: 10px 10px 5px 0;
  color: initial;
  display: flex;
  align-items: flex-start;
  padding: 7px;
  font-size: 0.9rem;
}
.t3-form .form-group.fileupload .multiupload-file-block > span.name {
  padding-right: 10px;
  width: -moz-max-content;
  width: max-content;
  display: inline-flex;
}
.t3-form .form-group input[type=text], .t3-form .form-group input[type=password], .t3-form .form-group input[type=email] {
  background-color: #efefef;
  font: inherit;
  height: 3rem;
  padding-left: 0.5rem;
  width: 100%;
}
.t3-form .form-group .captcha + .form-group {
  margin-bottom: 0;
}
.t3-form .form-group .captcha + .form-group label {
  position: relative;
  z-index: 1;
}
.t3-form .form-group--hint input {
  position: relative;
  z-index: 1;
}
.t3-form .form-group--hint label {
  position: relative;
  z-index: 2;
}
.t3-form .form-group--hint .input {
  overflow: hidden;
}
.t3-form .form-group .pwd-hint {
  border-color: rgba(0, 0, 0, 0.2);
  border-style: solid;
  border-width: 0px;
  display: block;
  max-height: 0;
  overflow: hidden;
  padding: 0 0.5rem;
  transform: translateY(-100%);
  transition: transform 0.6s, max-height 0.6s, border-width 0s 0.6s;
}
.t3-form .form-group .pwd-hint--match {
  color: green;
}
.t3-form .form-group .pwd-hint__body {
  margin: 0.5rem 0;
}
.t3-form .form-group.is-writing .pwd-hint {
  border-width: 1px;
  max-height: 500px;
  transform: translateY(0);
  transition: transform 0.6s, max-height 0.6s;
}
.t3-form .form-group .show-password {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.5;
  color: hsl(0, 0%, 25%);
  cursor: pointer;
  position: absolute;
  right: 0;
  top: 0;
}
.t3-form .form-group .show-password:hover {
  color: rgb(158.1, 158.1, 158.1);
}
.t3-form .form-group textarea {
  -webkit-appearance: none;
  background-color: #efefef;
  border: none;
  border-radius: 0;
  font: inherit;
  height: 10rem;
  padding-left: 0.5rem;
  padding-top: 0.5rem;
  resize: none;
  width: 100%;
}
.t3-form .form-group .inp-select {
  width: 100%;
}
.t3-form .form-group input:focus, .t3-form .form-group textarea:focus {
  background-color: #efefef;
}
.t3-form .form-group input:focus-visible, .t3-form .form-group textarea:focus-visible {
  outline: 2px solid #CD1316;
}
.t3-form .form-group input:focus-visible.no-focus-visible, .t3-form .form-group textarea:focus-visible.no-focus-visible {
  outline: none !important;
}
.t3-form .form-group .inputs-list .form-group {
  display: flex;
  margin: 0;
}
.t3-form .form-group .inputs-list .form-group .form-check {
  margin-right: 1rem;
}
.t3-form .form-group .form-check-label input {
  margin-right: 0.5rem;
}
.t3-form .form-group.floating-label {
  margin-top: 0;
}
.t3-form .form-group.floating-label .control-label {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  font-weight: normal;
  margin-bottom: 0;
  pointer-events: none;
  width: calc(100% - 1rem);
  transform: translate3d(0.5rem, calc(100% + 5px), 0) scale(1);
  transform-origin: left top;
  transition: 240ms;
  display: block;
}
.t3-form .form-group.floating-label .control-label.text-area__label {
  transform: translate3d(0.5%, 112%, 3.25rem) scale(0.988);
}
.t3-form .form-group.floating-label .control-label.captcha--label {
  transform: translate3d(0.5%, 100%, 3.25rem) scale(0.88);
}
.t3-form .form-group.floating-label.focused-or-filled .control-label {
  font-style: normal;
  opacity: 1;
  text-transform: uppercase;
  transform: scale(0.75);
  width: auto;
}
.t3-form .form-group.floating-label ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: transparent;
}
.t3-form .form-group.floating-label ::-moz-placeholder {
  /* Firefox 19+ */
  color: transparent;
}
.t3-form .form-group.floating-label :-ms-input-placeholder {
  /* IE 10+ */
  color: transparent;
}
.t3-form .form-group.has-error .pwd-hint {
  border-top-width: 0;
}
.t3-form .form-group.has-error input[type=text], .t3-form .form-group.has-error input[type=password], .t3-form .form-group.has-error input[type=email], .t3-form .form-group.has-error textarea {
  border-bottom: 2px solid #FB1E45;
}
.t3-form .actions {
  margin-bottom: 1rem;
}
.t3-form .actions.hidden {
  display: none;
}
.t3-form .btc-bar__width-adjust div:first-of-type {
  position: absolute;
}
.t3-form .btn--solid.btn--recaptcha {
  margin-left: 0;
}
.t3-form .hint {
  margin-top: 1.5rem;
}
.t3-form .hint.hidden {
  display: none;
}
.t3-form .hidden-input__wrapper {
  position: absolute;
  margin: 0 0 0 -999em;
}

.marketing-automation__form .clearfix .tme {
  padding-top: 0;
}
.marketing-automation__form .clearfix .tme .tme-styles p {
  font-size: 12px;
}
.marketing-automation__form .clearfix .tme .tme-styles p:first-child {
  font-size: 14px;
}
.marketing-automation__form .clearfix .content-container {
  text-align: justify;
  padding-right: 0;
  padding-left: 0;
  margin-top: -25px;
}
.marketing-automation__form span.error.help-block, .marketing-automation__form span.marketing-auto__error {
  margin-top: 0;
}
.marketing-automation__form .form-group.floating-label {
  margin-bottom: 0;
}
.marketing-automation__form .row, .marketing-automation__form .input.checkbox .form-group {
  margin-bottom: 15px;
}
.marketing-automation__form .datepicker-copy-hidden {
  display: none;
}
.marketing-automation__form .form-group input[type=text].datepicker, .marketing-automation__form .form-group input[type=text].datepicker-copy {
  background-color: #efefef;
  padding: 10px;
  border: none;
  width: 50%;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
}
.marketing-automation__form .btn__label {
  text-transform: none;
}
.marketing-automation__form .form-control:-moz-read-only {
  background: #ccc;
  cursor: not-allowed;
  border-width: 1px;
}
.marketing-automation__form .form-control:read-only {
  background: #ccc;
  cursor: not-allowed;
  border-width: 1px;
}
.marketing-automation__form .marketing-automation__form-delete {
  padding-top: 50px;
}
.marketing-automation__form .captcha__reload svg {
  margin-bottom: 5px;
}

.marketing-automation__form.t3-form .btc-bar__width-adjust {
  padding-top: 0;
}
.marketing-automation__form.t3-form .btc-bar__width-adjust.pt-0 {
  padding-top: 0;
}
.marketing-automation__form.t3-form .btn__label {
  text-transform: none;
}
#ui-datepicker-div {
  z-index: 200 !important;
}

.captcha img {
  display: inline-block;
}
.captcha .captcha-tooltip {
  position: relative;
  display: inline-block;
}
.captcha .captcha-tooltip .captcha-tooltip--text {
  visibility: hidden;
  width: 120px;
  background-color: #323232;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
  /* Position the tooltip text - see examples below! */
  position: absolute;
  z-index: 1;
  margin-left: 40px;
}
.captcha .captcha-tooltip:hover .captcha-tooltip--text {
  visibility: visible;
}

/*
Teaser Full Width (no slider)

markup:
ul(class=`tsr-full-width ${modifier}`)
	li
		article.tsr-full-width__slide
			img.tsr-full-width__bg-image(src="http://placehold.it/1920x460")
			.tsr-full-width__overlay
				.tsr-full-width__content
					h3.tsr-full-width__headline Neque vitae tempus
					p.tsr-full-width__abstract Im Abstract ist für jeden Geschmack etwas dabei. Für Groß und Klein, für Jung und Alt: Alle finden hier ihr Glück. Zum Beispiel mit einem schönen redaktionell gepflegten Bild
					.tsr-full-width__buttons
						sg-insert.btn--light.btn--inverse.tsr-full-width__cta atom.button.rectangular

sg-pug-options:
{}

.. - Default height 28rem
tsr-full-width--small - Reduced height - 23rem


Styleguide organism.teaserFullWidth
*/
/*
Teaser Full Width (two or more teasers => slider)

markup:
<ul class="tsr-full-width" data-module="lazy-load|carousel" data-lazy-load-aggregate="true" data-module-options='{"margin": 0, "autoplay": true, "autoplayHoverPause": true}'>
	<li>
		<article class="tsr-full-width__slide">
			<img class="tsr-full-width__bg-image" src="http://placehold.it/1921x460">
			<div class="tsr-full-width__overlay">
				<div class="tsr-full-width__content">
					<h3 class="tsr-full-width__headline">GASTRONOMIE</h3>
					<p class="tsr-full-width__abstract">Im Abstract ist für jeden Geschmack etwas dabei. Für Groß und Klein, für Jung und Alt: Alle finden hier ihr Glück. Zum Beispiel mit einem schönen redaktionell gepflegten Bild</p>
					<img class="tsr-full-width__svg-image" src="http://placehold.it/100x100">
					<sg-insert>2.6.1-1</sg-insert> <!-- button bar with one button -->
				</div>
			</div>
		</article>
	</li>
	<li>
		<article class="tsr-full-width__slide">
			<img class="tsr-full-width__bg-image" src="http://placehold.it/1922x460">
			<div class="tsr-full-width__overlay">
				<div class="tsr-full-width__content">
					<h3 class="tsr-full-width__headline">GASTRONOMIE 2</h3>
					<p class="tsr-full-width__abstract">Im Abstract ist für jeden Geschmack etwas dabei. Lorem ipsum dolor sit amet.</p>
					<p class="tsr-full-width__copy">Manchmal gibt es sogar noch einen Copytext mit geringerer Schriftgröße, der zusätzliche Informationen enthält. Da passen auch einige Zeichen hin, aber mal sehn wie das auf small devices so aussieht.</p>
					<sg-insert>2.6.2-1</sg-insert> <!-- button bar with two buttons -->
				</div>
			</div>
		</article>
	</li>
</ul>

sg-wrapper:
<div style="">
  <sg-wrapper-content/>
</div>

//Styleguide 2.1.11
*/
.tsr-full-width {
  height: 28.75rem;
  list-style: none;
  margin: 0;
  overflow-y: hidden;
  padding: 0;
  position: relative;
}
.tsr-full-width__image {
  margin-bottom: 1.5rem;
}
.tsr-full-width__cta {
  margin: 1.5rem 0;
}
.tsr-full-width li, .tsr-full-width__slide {
  height: 100%;
}
.tsr-full-width .owl-dots {
  margin-top: -28px;
  padding-bottom: 28px;
  position: relative;
  z-index: 1;
}
.tsr-full-width .owl-dot {
  border: 1px solid #ffffff;
}
.tsr-full-width .owl-dot.active {
  background: #ffffff;
}
.tsr-full-width .owl-nav {
  height: 0;
  overflow-y: hidden;
}
.tsr-full-width__slide {
  position: relative;
}
.tsr-full-width__bg-image {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.tsr-full-width__overlay {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}
.tsr-full-width__content {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
  align-items: center;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-height: 28.75rem;
  overflow: hidden;
  text-align: center;
}
.tsr-full-width__content.flex {
  display: flex;
}
.tsr-full-width__content.flex.justify-content-end {
  justify-content: end;
}
.tsr-full-width__content.flex.justify-content-start {
  justify-content: start;
}
.tsr-full-width__content.flex.justify-content-center {
  justify-content: center;
}
.tsr-full-width__content > img {
  width: auto !important;
}
.tsr-full-width__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.4;
  width: 100%;
}
.tsr-full-width__abstract {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.375rem;
  width: 100%;
}
.tsr-full-width__copy {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.5;
  width: 100%;
}
.tsr-full-width__svg-image svg {
  display: block;
  height: 104px;
  width: 104px;
}
.tsr-full-width .btc-bar {
  margin-top: 1rem;
}
.tsr-full-width--small {
  height: 23rem;
}

.teaser--3-images {
  padding-top: 3rem;
}
.teaser--3-images article {
  padding-block: 3rem;
}
.teaser--3-images .owl-stage-outer {
  padding-top: 0;
}
.teaser--3-images .owl-carousel .owl-item .sts-item {
  list-style: none;
}
.teaser--3-images .owl-carousel .owl-item .sts-item .item--wrapper {
  display: flex;
  gap: 24px;
}
.teaser--3-images .owl-carousel .owl-item .sts-item .item--wrapper img {
  width: calc(33.3% - 16px);
  aspect-ratio: 16/12;
  -o-object-fit: cover;
     object-fit: cover;
}
.teaser--3-images .owl-nav {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
.teaser--3-images .owl-dots {
  display: none;
}
.teaser--3-images .sts-item {
  list-style: none;
}
.teaser--3-images .sts-item .item--wrapper {
  display: flex;
  gap: 24px;
}
.teaser--3-images .sts-item .item--wrapper img {
  width: calc(33.3% - 16px);
  aspect-ratio: 16/12;
  -o-object-fit: cover;
     object-fit: cover;
}

.leasing-rte--wrapper + section.teaser--3-images {
  padding-top: 3rem;
  margin-block: 3rem;
}
@keyframes fadeIn {
  0% {
    display: none !important;
    opacity: 0;
  }
  1% {
    display: block !important;
    opacity: 0;
  }
  100% {
    display: block !important;
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    display: block !important;
    opacity: 1;
  }
  99% {
    display: block !important;
    opacity: 0;
  }
  100% {
    display: none !important;
    opacity: 0;
  }
}
.mdl-modal {
  display: none;
  opacity: 0;
}
.mdl-modal.in {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.4s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeIn;
  animation-timing-function: linear;
}
.mdl-modal.out {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.4s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeOut;
  animation-timing-function: linear;
}
.mdl-modal__vertical {
  display: table-cell;
  padding: 80px 0;
}
.mdl-modal__horizontal {
  display: table;
  margin: 0 auto;
}
.mdl-modal__btn--close {
  background-color: hsla(0, 100%, 100%, 0.7);
  border: 0;
  border-radius: 100px;
  color: #000;
  cursor: pointer;
  display: block;
  font-size: 1.5rem;
  outline: 0;
  position: absolute;
  right: 0.25rem;
  top: 0.5rem;
  z-index: 100;
}
.mdl-modal__btn--close svg {
  display: block;
  font-size: 18px;
  margin: 2px;
}
.mdl-modal__btn--close:hover {
  background-color: hsla(0, 100%, 100%, 0.85);
}
.mdl-modal__container {
  transition: opacity 0.5s ease-in;
}
.mdl-modal__container--opaque {
  transition: opacity 0.5s ease-out;
  opacity: 0;
}
.mdl-modal__inner {
  padding: 40px 40px;
  position: relative;
}
.mdl-modal__outer {
  display: table;
  height: 100%;
  width: 100%;
}
.mdl-modal__pane {
  background: #ffffff;
}
.mdl-modal.in {
  -webkit-overflow-scrolling: touch;
  background: none;
  display: block;
  height: 100%;
  left: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 600;
}

.mdl-overlay {
  overflow: hidden;
}
.mdl-overlay.in {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.15s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeIn;
  animation-timing-function: linear;
}
.mdl-overlay.out {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.15s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeOut;
  animation-timing-function: linear;
}
.mdl-overlay__inner {
  height: inherit;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mdl-overlay__inner .icn-spinner {
  color: #ffffff;
  display: block;
  font-size: 3rem;
}
.mdl-overlay.in {
  background: rgba(0, 0, 0, 0.6);
  content: "";
  height: 100%;
  left: 0;
  overflow-y: hidden;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 500;
}

.mdl-modal--above .mdl-modal__vertical {
  vertical-align: top;
}
.mdl-modal--central .mdl-modal__vertical {
  vertical-align: middle;
}
.mdl-modal--no-padding .mdl-modal__inner {
  padding: 0;
}
.mdl-modal--no-padding .mdl-modal__container {
  padding: 0;
}
.mdl-modal--no-padding .mdl-modal__btn--close {
  margin-right: 10px;
  margin-top: 0px;
}
.mdl-modal--scroll-offset {
  margin-right: 17px;
}
.mdl-modal--prevent-document-scroll {
  left: 0;
  overflow: hidden;
  position: fixed;
  right: 0;
}
.mdl-modal__spinner {
  left: 50%;
  margin-left: -15px;
  margin-top: -15px;
  position: absolute;
  top: 50%;
}
.mdl-modal__spinner .icn-spinner {
  color: #323232;
  display: block;
  font-size: 3rem;
}

#sendForgotPasswordLink .btn {
  display: none;
}

.mdl-modal #sendForgotPasswordLink .btn {
  display: block;
}

#btn--hide-modal-registration-done,
#btn--hide-modal-change-email {
  display: none;
}

.mdl-modal #btn--hide-modal-registration-done,
.mdl-modal #btn--hide-modal-change-email {
  display: block;
}

.lgn-container .lgn-container#showConfirmSocialLogin {
  margin: 0;
  padding-left: 0;
  padding-right: 0;
  width: auto;
}

.pnt-bottom-bar {
  display: none;
  opacity: 0;
  position: fixed;
  width: 100%;
  bottom: 0px;
  background: #ffffff;
  box-shadow: 0 -1px 16px rgba(0, 0, 0, 0.45);
  font-size: 14px;
  line-height: 18px;
  color: #949494;
  font-family: "Helvetica Neue", Helvetica, Montserrat, Arial, sans-serif;
  text-transform: none;
}
.pnt-bottom-bar.in {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.4s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeIn;
  animation-timing-function: linear;
}
.pnt-bottom-bar.out {
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 0.4s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-name: fadeOut;
  animation-timing-function: linear;
}
.pnt-bottom-bar--scroll-offset-bottom {
  padding-bottom: 240px;
}
.pnt-bottom-bar__vertical {
  display: block;
  padding: 30px 10px;
}
.pnt-bottom-bar__horizontal {
  display: block;
  margin: 0 auto;
}
.pnt-bottom-bar__btn--close {
  background-color: hsla(0, 100%, 100%, 0.7);
  border: 0;
  border-radius: 100px;
  color: #000;
  cursor: pointer;
  display: block;
  font-size: 1.5rem;
  outline: 0;
  position: absolute;
  right: 0.25rem;
  top: 0.5rem;
  z-index: 100;
}
.pnt-bottom-bar__btn--close svg {
  display: block;
  font-size: 18px;
  margin: 2px;
}
.pnt-bottom-bar__btn--close:hover {
  background-color: hsla(0, 100%, 100%, 0.85);
}
.pnt-bottom-bar__container {
  transition: opacity 0.5s ease-in;
  /*.btn.btn-primary:hover {
  	background: $primary-darken-10-color !important;
  }
  .btn.btn-secondary:hover {
  	background: $secondary-darken-10-color !important;
  }
  .btn.btn--link.btn-primary:hover {
  	color: $primary-darken-10-color;
  }
  .btn.btn--link.btn-secondary:hover {
  	color: $secondary-darken-10-color;
  }*/
}
.pnt-bottom-bar__container--opaque {
  transition: opacity 0.5s ease-out;
  opacity: 0;
}
.pnt-bottom-bar__container p {
  color: #949494;
}
.pnt-bottom-bar__container .lgn-container.cookie-banner {
  padding: 0;
  margin-top: 0;
  max-width: 100%;
}
.pnt-bottom-bar__container .lgn-container.cookie-banner .btc-cookie-banner-bar {
  margin-top: 0;
}
.pnt-bottom-bar__container .ttl--section {
  padding: 0 0 15px;
  margin: 0;
  display: block;
  text-align: center;
}
.pnt-bottom-bar__container .ttl--section .ttl__headline {
  color: #000000;
  font-size: 12px;
  line-height: 15px;
}
.pnt-bottom-bar__container .cookie-banner--settings .ttl--section {
  padding: 0;
  margin: 0 0 15px;
  display: block;
  text-align: center;
}
.pnt-bottom-bar__container .cookie-banner--settings .ttl--section .std-controls {
  color: #323232;
  height: 22px;
  font-size: 12px;
  font-weight: bold;
  text-decoration: underline;
  text-transform: none;
}
.pnt-bottom-bar__container .cookie-banner--settings .ttl--section .std-controls button.btn.std-button {
  color: #323232;
  height: 22px;
  padding: 0 10px;
  font-size: 14px;
  font-weight: bold;
  text-decoration: underline;
  text-transform: none;
}
.pnt-bottom-bar__container .cookie-banner--settings .ttl--section .std-controls button.btn.std-button span {
  display: inline-flex;
  text-decoration: underline;
}
.pnt-bottom-bar__container .cookie-banner--settings .ttl--section .ttl__headline {
  color: #323232;
  font-size: 20px;
  line-height: 25px;
  text-align: left !important;
  text-transform: none !important;
  margin: 0;
  padding: 20px 0 0;
  max-width: 100% !important;
}
.pnt-bottom-bar__container .cookie-banner--settings .inputs {
  padding-left: 14px;
  max-height: 20vh;
  overflow: auto;
}
.pnt-bottom-bar__container .cookie-banner--settings .inputs .dtl-table__shop-name {
  color: #525050;
}
.pnt-bottom-bar__container .cookie-banner--settings .inputs .frm-radio__span::before {
  width: 12px;
  height: 12px;
}
.pnt-bottom-bar__container .cookie-banner--settings .inputs input:checked ~ .frm-radio__span::before {
  border-width: 0;
  background-color: #323232;
}
.pnt-bottom-bar__container .cookie-banner--settings .inputs p {
  color: #525050;
}
.pnt-bottom-bar__container .cookie-banner--history .std-controls {
  color: #323232;
  height: 22px;
  line-height: 22px;
  font-size: 14px;
  font-weight: bold;
}
.pnt-bottom-bar__container .cookie-banner--history .std-controls button.btn.std-button {
  text-decoration: underline;
  text-transform: none;
}
.pnt-bottom-bar__container .cookie-banner--history .std-controls button.btn.std-button span {
  display: inline-flex;
  text-decoration: underline;
}
.pnt-bottom-bar__container .cookie-banner--history h2 {
  color: #323232;
  height: 24px;
  line-height: 24px;
  font-size: 20px;
  font-weight: bold;
  text-transform: none !important;
}
.pnt-bottom-bar__container .cookie-banner--history .cookie-banner--table {
  color: #525050;
}
.pnt-bottom-bar__container .cookie-banner--history .cookie-banner--table th {
  color: #525050;
  text-align: center;
}
.pnt-bottom-bar__container .cookie-banner--history .cookie-banner--table .cookie-banner--history-elements {
  max-height: 20vh;
  overflow: auto;
}
.pnt-bottom-bar__container .cookie-banner--history .cookie-banner--table td {
  color: #525050;
}
.pnt-bottom-bar__container .cookie-banner--history .frm-radio__span::before {
  width: 14px;
  height: 14px;
}
.pnt-bottom-bar__container .cookie-banner--description {
  color: #949494;
  font-size: 12px;
  line-height: 14px;
  text-align: center;
}
.pnt-bottom-bar__container .btc-bar.btc-cookie-banner-bar {
  display: block;
  width: 100%;
}
.pnt-bottom-bar__container .width-100 {
  width: 100%;
  text-align: center;
}
.pnt-bottom-bar__container .btn.btn--round {
  height: 28px;
  border-radius: 20px;
  border: 1px solid transparent;
  min-width: 144px;
  padding: 0 10px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
}
.pnt-bottom-bar__container .btn.btn--link {
  color: #323232;
  height: 22px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: bold;
  text-decoration: underline;
  margin-top: 1rem !important;
}
.pnt-bottom-bar__container .btn.btn-primary {
  background: #000000 !important;
  color: #fff;
  border-color: #000000;
}
.pnt-bottom-bar__container .btn.btn-secondary {
  background: #CD1316 !important;
  color: #fff;
  border-color: #CD1316;
}
.pnt-bottom-bar__container .btn.btn--link.btn-primary {
  background: transparent !important;
  border-color: transparent !important;
  color: #000000;
}
.pnt-bottom-bar__container .btn.btn--link.btn-secondary {
  background: transparent !important;
  border-color: transparent !important;
  color: #CD1316;
}
.pnt-bottom-bar__container .dtl-table__shop-name {
  font-size: 14px;
  line-height: 18px;
}
.pnt-bottom-bar__inner {
  padding: 0;
  position: relative;
}
.pnt-bottom-bar__outer {
  display: block;
  height: 100%;
  width: 100%;
}
.pnt-bottom-bar__pane {
  background: #ffffff;
}
.pnt-bottom-bar.in {
  -webkit-overflow-scrolling: touch;
  opacity: 1;
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 600;
}

/*
Newsletter Registration

markup:
<section class="nws-registration section-padding">
	<div class="nws-registration__content container">
		<div class="nws-registration__text col-xs-12 col-sm-10 col-md-8 col-lg-6">
			<h3 class="heading-3">Immer auf dem Laufenden bleiben</h3>
			<p>
				Excepturi occaecati illum non. Sit delectus earum enim ut fugiat omnis
				architecto ex. Ea dolor qui debitis sint sed. Beatae doloremque sit
				harum rerum aut harum molestiae earum. Facere libero perferendis quod
				quidem perferendis. Fuga cumque aspernatur rerum in voluptates excepturi
			</p>
			<sg-insert class="button-margin">1.1.2-3</sg-insert>
		</div>
		<sg-insert class="nws-registration__bg">1.2.3-7</sg-insert>
	</div>
</section>

Styleguide 3.22
*/
.nws-registration {
  background-color: #808080;
  color: #ffffff;
  overflow: hidden;
}
.nws-registration__bg {
  bottom: -10rem;
  color: hsla(0, 0%, 100%, 0.4);
  height: 25rem;
  position: absolute;
  right: calc(50% - 12.5rem);
  transform: rotate(10deg);
  width: 25rem;
}
.nws-registration__content {
  position: relative;
}
.nws-registration__text {
  position: relative;
  z-index: 1;
}

.newsletter-teaser-container.newsletter-content--wrapper .newsletter-btn, .newsletter-teaser-container.newsletter-content--wrapper .newsletter-email {
  float: left;
  display: inline;
}
.newsletter-teaser-container.newsletter-content--wrapper .t3-form .form-group {
  margin: 0;
}
.newsletter-teaser-container.newsletter-content--wrapper .t3-form .form-group .captcha-input--wrapper input {
  width: 150px;
}
.newsletter-teaser-container.newsletter-content--wrapper .captcha__reload svg {
  margin-bottom: 5px;
}

.newsletter-teaser-container.newsletter-footer--wrapper .lgn-register {
  margin-left: 15px;
  margin-bottom: 15px;
}
.newsletter-teaser-container.newsletter-footer--wrapper .newsletter-btn, .newsletter-teaser-container.newsletter-footer--wrapper .newsletter-email {
  float: none;
  display: inline;
}
.newsletter-teaser-container.newsletter-footer--wrapper .newsletter-btn {
  margin-bottom: 10px;
}
.newsletter-teaser-container.newsletter-footer--wrapper .newsletter-btn button {
  height: 48px;
}
.newsletter-teaser-container.newsletter-footer--wrapper .t3-form .form-group {
  margin: 0;
}
.newsletter-teaser-container.newsletter-footer--wrapper .t3-form .form-group .captcha-input--wrapper input {
  width: 150px;
}
.newsletter-teaser-container.newsletter-footer--wrapper .container {
  max-width: 1000px;
}
.newsletter-teaser-container.newsletter-footer--wrapper .privacy-text {
  color: rgba(255, 255, 255, 0.8);
}

.newsletter-teaser-container.pge-form-container {
  margin-top: 100px;
  margin-bottom: 100px;
}

.newsletter-footer--wrapper .privacy-text, .newsletter-teaser-container .privacy-text {
  display: none;
}
.newsletter-footer--wrapper .privacy-text p, .newsletter-teaser-container .privacy-text p {
  font-size: 12px;
}
.newsletter-footer--wrapper .privacy-text a, .newsletter-teaser-container .privacy-text a {
  text-decoration: underline;
}
.newsletter-footer--wrapper .privacy-text a:focus-visible, .newsletter-teaser-container .privacy-text a:focus-visible {
  outline: 2px solid #CD1316;
}

.newsletter-footer {
  font-size: 12px;
}
.newsletter-footer.hidden {
  display: none;
}

/*
Coupon Detail

markup: {}

Styleguide 3.70
*/
.cpn-detail .col-xs-12:nth-child(2) {
  margin-top: 1.5rem;
}
.cpn-detail__discountpane {
  position: relative;
}
.cpn-detail__discountpane img {
  height: auto;
  width: 100%;
}
.cpn-detail__app {
  margin-top: 3rem;
}
.cpn-detail__app h3 {
  color: #000000;
}
.cpn-detail__app a {
  display: inline-block;
}
.cpn-detail .btc-bar {
  align-items: normal;
}
.cpn-detail__message {
  display: flex;
  margin-bottom: 1.5rem;
  padding: 1.5rem 1rem 1.25rem;
  flex-direction: row;
  margin-bottom: 2rem;
}
.cpn-detail__message__icon {
  margin-right: 1.25rem;
  max-height: 30px;
  max-width: 30px;
  min-height: 30px;
  min-width: 30px;
  position: relative;
  top: -3px;
}
.cpn-detail__message__row {
  display: flex;
  flex-direction: row;
}
.cpn-detail__message [class$=__text] p {
  margin-bottom: 0;
  margin-top: 0;
}
.cpn-detail__message--default {
  background-color: rgba(102, 102, 102, 0.1);
  border: 1px solid #666666;
}
.cpn-detail__message--default [class$=__icon] {
  color: #666666;
}
.cpn-detail__message--default [class$=__text] {
  color: #666666;
}
.cpn-detail__message--default [class$=__text] h4, .cpn-detail__message--default [class$=__text] p {
  color: #666666;
}
.cpn-detail__message--default [class$=__action] .btn {
  border-color: #666666;
  color: #666666;
}

/*
Coupon Redeem

markup: {}

Styleguide 3.71
*/
/*
Coupon Redeem Success

markup: {}

Styleguide 3.71.1
*/
/*
Coupon Redeem Error

markup: {}

Styleguide 3.71.2
*/
.cpn-redeem__discountpane {
  margin-bottom: 2rem;
}
.cpn-redeem__discountpane img {
  height: auto;
  width: 100%;
}
.cpn-redeem h3.heading-3 {
  margin: 0 0 2rem 0;
}
.cpn-redeem .btc-bar {
  align-items: normal;
}
.cpn-redeem__message {
  display: flex;
  margin-bottom: 1.5rem;
  padding: 1.5rem 1rem 1.25rem;
  flex-direction: column;
  margin-bottom: 2rem;
}
.cpn-redeem__message__icon {
  margin-right: 1.25rem;
  max-height: 30px;
  max-width: 30px;
  min-height: 30px;
  min-width: 30px;
  position: relative;
  top: -3px;
}
.cpn-redeem__message__row {
  display: flex;
  flex-direction: row;
}
.cpn-redeem__message__action {
  align-self: flex-end;
  margin-top: 1.25rem;
}
.cpn-redeem__message__row:last-child {
  display: flex;
  flex-direction: column;
}
.cpn-redeem__message--info {
  background-color: rgba(250, 222, 46, 0.1);
  border: 1px solid #fade2e;
}
.cpn-redeem__message--info [class$=__icon] {
  color: #7e673e;
}
.cpn-redeem__message--info [class$=__text] {
  color: #7e673e;
}
.cpn-redeem__message--info [class$=__text] h4, .cpn-redeem__message--info [class$=__text] p {
  color: #7e673e;
}
.cpn-redeem__message--info [class$=__action] .btn {
  border-color: #7e673e;
  color: #7e673e;
}
.cpn-redeem__message--info .cpn-detail__message__icon {
  font-size: 2em;
  margin-top: -10px;
}
.cpn-redeem__message--error {
  background-color: rgba(251, 30, 69, 0.1);
  border: 1px solid #FB1E45;
}
.cpn-redeem__message--error [class$=__icon] {
  color: #FB1E45;
}
.cpn-redeem__message--error [class$=__text] {
  color: #FB1E45;
}
.cpn-redeem__message--error [class$=__text] h4, .cpn-redeem__message--error [class$=__text] p {
  color: #FB1E45;
}
.cpn-redeem__message--error [class$=__action] .btn {
  border-color: #FB1E45;
  color: #FB1E45;
}
.cpn-redeem__message--success {
  background-color: rgba(38, 154, 64, 0.1);
  border: 1px solid #269A40;
}
.cpn-redeem__message--success [class$=__icon] {
  color: #269A40;
}
.cpn-redeem__message--success [class$=__text] {
  color: #269A40;
}
.cpn-redeem__message--success [class$=__text] h4, .cpn-redeem__message--success [class$=__text] p {
  color: #269A40;
}
.cpn-redeem__message--success [class$=__action] .btn {
  border-color: #269A40;
  color: #269A40;
}

/*
Dialogues

A box for informations, notifications and user input requests. Shown in a modal
window.

Styleguide 3.20
*/
/*
Shop information

markup:
<div class="lgn-container lgn-container--small">
	<div class="row">
		<div class="col-xs-12 section-padding-asymmetric">
			<h3 class="ttl--subsection"> Anbieterinformation </h3>
			<table class="dia-table">
				<tbody>
					<tr>
						<th class="dia-table__name">Name des Unternehmens:</th>
						<td class="dia-table__column"> Saturn Online Gmbh </td>
					</tr>
					<tr>
						<th rowspan="2" class="dia-table__name">Address:</th>
						<td class="dia-table__column"> Prinzenstrasse 14 </td>
					</tr>
					<tr>
						<td class="dia-table__column"> 80804 Göttingen </td>
					</tr>
				</tbody>
			</table>
			<div class="btc-bar btc-bar--right section-margin">
				<div class="btc-bar__width-adjust">
					<button type="submit" class="btn btn--solid">
						<span class="btn__label">Schliessen</span>
					</button>
				</div>
			</div>
		</div>
	</div>
</div>

Styleguide 3.20.1
*/
/*
Shop info

markup:
<div style="min-width: 500px">

<a class="btn btn--icon">
	<span class="btn__inner">
		<span class="btn__label">Info</span>
	</span>
</a>

<div class="visuallyhidden">
	<sg-insert class="shopinfo">3.20.1</sg-insert>
</div>

</div>

Styleguide 3.20.2
 */
/*
Social Button

Deprecated:

markup:
<a class="btn btn--facebook btn--dark-hover btn--icon lgn-social__button">
	<span class="btn__inner">
		<span class="btn__icon">
			<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
			 viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
			 	<g id="facebook">
					<path id="facebook_1_" d="M678.667,252.33h-80.689c-28.461,0-34.395,11.662-34.395,41.127v71.211h115.084l-11.071,124.974H563.583
						V863H414.488V491.207h-77.529V364.668h77.529v-99.672c0-93.561,50.013-142.393,160.964-142.393h103.215V252.33z"/>
				</g>
			</svg>
		</span>
	</span>
</a>

Styleguide 3.19.3
*/
/*
Social

Deprecated:

markup:
<div class="lgn-social">
<h3 class="lgn-social__title heading-4">oder</h3>
<p>Mit Ihrem soziale Netzwerken einloggen</p>
<!--social button --> <sg-insert>3.19.3</sg-insert>
<!--social button --> <sg-insert>3.19.3</sg-insert>
</div>

Styleguide 3.19.5
*/
/*
Password Vergessen I

markup:
<div class="lgn-container lgn-container--small">
	<div class="row">
		<div class="col-xs-12 section-padding-asymmetric">
			<h3 class="ttl--subsection"> Password Vergessen </h3>
			<p> Bitte geben Sie Ihre Email ein </p>
			<form class="t3-form">
				<!-- form input -->					<sg-insert>1.9.2</sg-insert>
				<!-- button solid with spinner --> <sg-insert class="btn--full-width form-group">1.1.6-1</sg-insert>
			</form>
		</div>
	</div>
</div>

Styleguide 3.19.6
*/
/*
Password Vergessen II

Deprecated:

markup:
<div class="lgn-container lgn-container--small">
	<div class="row">
		<div class="col-xs-12 section-padding-asymmetric">
			<h3 class="ttl--subsection"> Neues Password</h3>
			<p> Bitte geben Sie Ihr neues Password ein </p>
			<form class="t3-form">
				<!-- form password with hint -->					<sg-insert>1.9.3-3</sg-insert>
				<!-- button solid with spinner --> <sg-insert class="btn--full-width form-group">1.1.6-1</sg-insert>
			</form>
		</div>
	</div>
</div>

Styleguide 3.19.7
*/
/*
Small message - confirmation

markup:
<div class="lgn-container lgn-container--small">
	<div class="row">
		<div class="col-xs-12 section-padding-asymmetric">
			<h3 class="ttl--subsection"> Password Geändert </h3>
			<p class="spacing-responsive-base"> Ihr Password wurde erfolgreich geändert </p>
				<!-- button solid with spinner --> <sg-insert class="btn--full-width form-group">1.1.6-1</sg-insert>
		</div>
	</div>
</div>

Styleguide 3.19.8
*/
.dia-table {
  max-width: 100%;
  width: 100%;
}
.dia-table__name {
  text-align: left;
  vertical-align: top;
}
.dia-table__column {
  padding-left: 1rem;
  vertical-align: top;
}
.dia-table__column p {
  margin: 0;
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
.sts-item {
  flex: 0 0 100%;
  position: relative;
}
.sts-item__media {
  height: auto;
  background-color: hsla(0, 0%, 0%, 0.7);
  overflow: hidden;
  position: relative;
  width: 100%;
}
.sts-item__media::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.sts-item__media img {
  font-family: "object-fit: cover;";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.sts-item__media video {
  left: 0;
  min-height: 100%;
  opacity: 0.8;
  position: absolute;
  top: 0;
  transition: opacity 100ms;
  width: 100%;
}
.sts-item__media.playing > video {
  opacity: 1;
}
.sts-item__image {
  width: 100%;
}
.sts-item__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}
.sts-item__text {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.375rem;
  margin-bottom: 3rem;
}
.sts-item__body {
  padding: 0.25rem 18px 0.5rem;
}
.sts-item__body > * {
  margin: 0.5rem 0;
}
.sts-item__play {
  border: 0.5rem solid white;
  border-radius: 10rem;
  box-shadow: 0 0 3px hsla(0, 0%, 0%, 0.2), inset 0 0 3px hsla(0, 0%, 0%, 0.2);
  cursor: pointer;
  display: block;
  font-size: 3rem;
  left: 50%;
  padding: 0.75rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sts-item__play svg {
  display: block;
  fill: white;
  filter: drop-shadow(0 0 3px hsla(0, 0%, 0%, 0.2));
  transform: translateX(0.125rem);
}
.playing > .sts-item__play {
  opacity: 0;
  transform: translate(-50%, -50%) scale(3);
  transition: transform 300ms 50ms cubic-bezier(0.74, 0.18, 1, 1), opacity 300ms 50ms cubic-bezier(0.74, 0.18, 1, 1);
}

/*
Stage Mall Slider

markup:
- var carouselOptions = `{"animateIn": "fadeIn", "animateOut": "fadeOut", "loop":"true","margin":0,"autoplayHoverPause":"true","autoplayTimeout":7000,"autoplaySpeed":500,"navSpeed":800,"dotsSpeed":800}`
div(class=`sts-stage__container ${modifier} `)
	article.sts-stage(data-module="video-carousel|carousel" data-module-options=carouselOptions)
		sg-insert(parameters=`{"video": "true"}`) organism.stage.item
		sg-insert.sts-item--inverted(parameters=`{"video": ""}`) organism.stage.item
		sg-insert(parameters=`{"video": ""}`) organism.stage.item
	sg-insert atom.opening

sg-pug-options:
{}


  - Black text
sts-stage--inverted - White text, dimmer

Styleguide organism.stage.slider
*/
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev {
  background-color: unset;
  height: 48px;
  width: 48px;
  text-align: center;
  transition-duration: 0.2s;
  margin: 0 3px;
  filter: drop-shadow(0 0.2rem 0.25rem rgba(0, 0, 0, 0.2));
}
.owl-carousel .owl-nav button.owl-next .arrow-symbol, .owl-carousel .owl-nav button.owl-prev .arrow-symbol {
  width: 0;
  height: 0;
  border-top: 0.7rem solid transparent;
  border-bottom: 0.7rem solid transparent;
  transition-property: border-color;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
.owl-carousel .owl-slider-btn {
  background-color: #FFF;
  border: 1px solid #323232;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
  margin: 0;
  width: 100%;
  height: 100%;
}
.owl-carousel .owl-slider-btn:hover {
  border-color: #CD1316;
  background-color: #FFF;
}
.owl-carousel .owl-slider-btn.next-btn .arrow-symbol {
  border-left: 1.2rem solid #323232;
  transform: translateX(2px);
}
.owl-carousel .owl-slider-btn.next-btn:hover .arrow-symbol {
  border-left-color: #CD1316;
}
.owl-carousel .owl-slider-btn.prev-btn .arrow-symbol {
  border-right: 1.2rem solid #323232;
  transform: translateX(-2px);
}
.owl-carousel .owl-slider-btn.prev-btn:hover .arrow-symbol {
  border-right-color: #CD1316;
}
.owl-carousel .owl-slider-btn.prev-btn:focus-visible, .owl-carousel .owl-slider-btn.next-btn:focus-visible {
  outline: 2px solid #CD1316;
}

.sts-stage__container {
  scroll-margin-top: 100px;
}
.sts-stage__container .carousel-controls {
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid;
  border-bottom-color: #949494;
}
.sts-stage__container .carousel-controls.hidden {
  display: none;
}
.sts-stage__container .carousel-controls .arrow-symbol {
  width: 0;
  height: 0;
  border-top: 2rem solid transparent;
  border-bottom: 2rem solid transparent;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap {
  display: flex;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-btn,
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control {
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
  margin: 0 4px;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-btn {
  width: 48px;
  height: 48px;
  border: 2px solid #ccc;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-btn .arrow-symbol {
  border-width: 1rem;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control {
  width: 32px;
  height: 32px;
  border: 2px solid #323232;
  border-radius: 50%;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control .arrow-symbol {
  border-width: 10px;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control:hover, .sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control.active {
  background-color: #FFF;
  border-color: #CD1316;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control:hover .stop-symbol, .sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control.active .stop-symbol {
  background-color: #CD1316;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control:hover .arrow-symbol, .sts-stage__container .carousel-controls .carousel-controls-wrap .owl-slider-control.active .arrow-symbol {
  border-left-color: #CD1316;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .play-btn .arrow-symbol {
  border-left: 12px solid #323232;
  transform: translateX(2px);
  transition-property: border-left, border-top, border-bottom, background-color;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .play-btn:focus-visible {
  outline: 2px solid #323232;
  outline-offset: 2px;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .stop-btn .stop-symbol {
  width: 14px;
  height: 14px;
  background-color: #323232;
  transition: background-color 0.2s ease;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .stop-btn:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: 2px;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .pause-btn .pause-symbol {
  display: flex;
  gap: 4px;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .pause-btn .pause-symbol .bar {
  width: 4px;
  height: 14px;
  background-color: #888;
  transition: background-color 0.2s ease;
}
.sts-stage__container .carousel-controls .carousel-controls-wrap .pause-btn:hover .bar {
  background-color: #000;
}

.sts-stage {
  border-bottom: thin solid rgba(0, 0, 0, 0.2);
  display: flex;
  margin-top: 70px;
  overflow: hidden;
}
.sts-stage__container {
  position: relative;
}
.sts-stage__container .stf-opening {
  bottom: 0;
  position: static;
  width: 100%;
  z-index: 1;
}
.sts-stage__item {
  flex: 0 0 100%;
}
.sts-stage .owl-nav {
  display: none;
}
.sts-stage .owl-dots {
  margin-bottom: 1rem;
  margin-top: 0.5rem;
}
.sts-stage .owl-nav {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: calc(25vw - 24px);
  width: 100%;
}

.sts-stage-teaser {
  scroll-margin-top: 100px;
  position: relative;
  margin-top: 70px;
  left: auto;
  border-bottom: none;
}
.sts-stage-teaser .sts-stage {
  overflow: hidden;
  position: relative;
  display: flex;
  border-bottom: none;
}
.sts-stage-teaser .sts-stage__item {
  flex: 0 0 100%;
}
.sts-stage-teaser .sts-item {
  position: relative;
  width: 100%;
  flex: none;
  display: block;
}
.sts-stage-teaser .sts-item__media {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 52vh;
  z-index: 3;
}
.sts-stage-teaser .sts-item__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sts-stage-teaser .sts-item__body {
  background-color: #F7F7FB;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 0;
  padding: 20px 20px 40px;
  height: 36vh;
  min-height: 200px;
  position: relative;
}
.sts-stage-teaser .sts-item__body--inner {
  align-items: flex-start;
  max-height: 38vh;
  overflow-x: hidden;
  overflow-y: hidden;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: anywhere;
  margin-top: 0;
  margin-bottom: 20px;
}
.sts-stage-teaser .sts-item__body--inner:hover {
  overflow-y: auto;
}
.sts-stage-teaser .sts-item__body .btn--solid {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
  padding: 14px 24px;
  display: flex;
  width: calc(100% - 40px);
  height: 48px;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  margin-bottom: auto;
  text-transform: none;
  background-color: #323232;
  color: #ffffff;
  position: absolute;
  bottom: 40px;
}
.sts-stage-teaser .sts-item__body .btn--solid:hover {
  background-color: #323232;
  color: #ffffff;
}
.sts-stage-teaser .sts-item__body .btn--solid.btn--secondary {
  background-color: #CD1316;
  color: #ffffff;
}
.sts-stage-teaser .sts-item__image {
  width: 100%;
}
.sts-stage-teaser .sts-item__headline {
  margin-bottom: 16px;
  font-family: Mulish, sans-serif;
  font-weight: 700;
  font-size: 1.75rem;
  line-height: 1.2;
  color: #2C2D33;
  text-transform: none;
}
.sts-stage-teaser .sts-item__text {
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 40px;
}
.sts-stage-teaser .sts-item__link {
  display: block;
  width: 100%;
  flex: none;
  position: relative;
  text-decoration: none;
  color: inherit;
}
.sts-stage-teaser .sts-item__link:hover {
  text-decoration: none;
}
.sts-stage-teaser .sts-item__link:focus-visible {
  outline: 2px solid #CD1316;
}
.sts-stage-teaser .sts-item__link[href] {
  cursor: pointer;
}
.sts-stage-teaser .sts-item__play {
  border: 0.5rem solid white;
  border-radius: 10rem;
  cursor: pointer;
  display: block;
  font-size: 3rem;
  left: 50%;
  padding: 0.75rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sts-stage-teaser .sts-item__play svg {
  display: block;
  fill: white;
  transform: translateX(0.125rem);
}
.playing > .sts-stage-teaser .sts-item__play {
  opacity: 0;
  transform: translate(-50%, -50%) scale(3);
  transition: transform 300ms 50ms cubic-bezier(0.74, 0.18, 1, 1), opacity 300ms 50ms cubic-bezier(0.74, 0.18, 1, 1);
}
.sts-stage-teaser .owl-carousel .owl-item.active:has(a:focus-visible) .btn {
  outline: 2px solid #CD1316;
}
.sts-stage-teaser .owl-carousel .owl-nav {
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: auto;
  bottom: auto;
  top: 48%;
  left: 25px;
  z-index: 10;
}
.sts-stage-teaser .owl-carousel .owl-nav .owl-next, .sts-stage-teaser .owl-carousel .owl-nav .owl-prev {
  background-color: unset;
  height: 48px;
  width: 48px;
  text-align: center;
  transition-duration: 0.2s;
  margin-left: 24px;
  margin-right: 0;
  filter: none;
}
.sts-stage-teaser .owl-carousel .owl-nav .owl-next .arrow-symbol, .sts-stage-teaser .owl-carousel .owl-nav .owl-prev .arrow-symbol {
  width: 24px;
  height: 24px;
  border: none;
}
.sts-stage-teaser .owl-carousel .owl-nav .owl-next:focus-visible, .sts-stage-teaser .owl-carousel .owl-nav .owl-prev:focus-visible {
  outline: 2px solid #CD1316;
}
.sts-stage-teaser .owl-carousel .owl-slider-btn {
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(141, 141, 163, 0.4);
  pointer-events: auto;
}
.sts-stage-teaser .owl-carousel .owl-slider-btn.next-btn .arrow-symbol {
  transform: rotateY(0deg) translateX(2px);
  margin-right: 3px;
}
.sts-stage-teaser .owl-carousel .owl-slider-btn.prev-btn .arrow-symbol {
  transform: rotateY(180deg) translateX(-2px);
  margin-left: -4px;
}
.sts-stage-teaser .owl-carousel .owl-slider-btn .arrow-symbol {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-bs-angle-right.svg');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  border: none;
  width: 24px;
  height: 24px;
}
.sts-stage-teaser .owl-carousel .owl-slider-btn:hover {
  background-color: #323232;
  border-color: rgba(141, 141, 163, 0.4);
}
.sts-stage-teaser .owl-carousel .owl-slider-btn:hover .arrow-symbol {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-bs-angle-right-white.svg');
}
.sts-stage-teaser .owl-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  width: auto;
  bottom: auto;
  top: 48%;
  left: 70px;
  z-index: 10;
}
.sts-stage-teaser .owl-nav .owl-next, .sts-stage-teaser .owl-nav .owl-prev {
  background-color: unset;
  height: 48px;
  width: 48px;
  text-align: center;
  transition-duration: 0.2s;
  margin-left: 24px;
  margin-right: 0;
  filter: none;
}
.sts-stage-teaser .owl-nav .owl-next .arrow-symbol, .sts-stage-teaser .owl-nav .owl-prev .arrow-symbol {
  width: 24px;
  height: 24px;
  border: none;
}
.sts-stage-teaser .owl-nav .owl-next:focus-visible, .sts-stage-teaser .owl-nav .owl-prev:focus-visible {
  outline: 2px solid #CD1316;
}
.sts-stage-teaser .owl-nav .toggle-btn {
  position: relative;
  border: 1px solid rgba(141, 141, 163, 0.4);
  border-radius: 50%;
  width: 48px;
  height: 48px;
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.sts-stage-teaser .owl-nav .toggle-btn .arrow-symbol, .sts-stage-teaser .owl-nav .toggle-btn .stop-symbol {
  position: absolute;
  opacity: 1;
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-pause.svg');
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  border: none;
}
.sts-stage-teaser .owl-nav .toggle-btn .arrow-symbol {
  opacity: 0;
  pointer-events: none;
}
.sts-stage-teaser .owl-nav .toggle-btn .stop-symbol {
  opacity: 1;
}
.sts-stage-teaser .owl-nav .toggle-btn.is-paused .arrow-symbol {
  opacity: 1;
  pointer-events: auto;
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-play.svg');
  margin-left: 2px;
}
.sts-stage-teaser .owl-nav .toggle-btn.is-paused .stop-symbol {
  opacity: 0;
  pointer-events: none;
}
.sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover {
  border-color: rgba(141, 141, 163, 0.4);
  background-color: #323232;
}
.sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover .arrow-symbol, .sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover .stop-symbol {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-play-white.svg');
  background-color: transparent;
}
.sts-stage-teaser .owl-nav .toggle-btn:hover {
  border-color: rgba(141, 141, 163, 0.4);
  background-color: #323232;
}
.sts-stage-teaser .owl-nav .toggle-btn:hover .arrow-symbol, .sts-stage-teaser .owl-nav .toggle-btn:hover .stop-symbol {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-pause-white.svg');
  background-color: transparent;
}
.sts-stage-teaser .owl-nav .play-btn,
.sts-stage-teaser .owl-nav .stop-btn {
  display: none !important;
}
.sts-stage-teaser .owl-prev:focus-visible,
.sts-stage-teaser .owl-next:focus-visible,
.sts-stage-teaser .toggle-btn:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: 0;
  border-radius: 50%;
}
.sts-stage-teaser .btn--solid:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: 0;
}
.sts-stage-teaser .sts-item__link:focus-visible {
  outline: none;
}
.sts-stage-teaser .sts-item__link:focus-visible .btn--solid {
  outline: 2px solid #CD1316;
  outline: 2px solid #CD1316;
}

/* Floating Opening Countdown */
.stf-opening.js-floating-opening {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1200;
  width: auto;
  background: white;
  color: black;
  border-radius: 40px;
  border-color: #EAEAEA;
  border: 1.5px solid #EAEAEA;
  box-shadow: 0px 14px 24px 0px rgba(0, 0, 0, 0.08);
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  height: 3rem;
  flex-wrap: nowrap;
}
.stf-opening.js-floating-opening.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.stf-opening.js-floating-opening .opn-bar {
  display: none;
}
.stf-opening.js-floating-opening .opn-icon {
  height: 20px;
  vertical-align: middle;
  width: 20px;
  display: flex;
  margin: inherit;
  margin-right: 8px;
  margin-bottom: 0;
}
.stf-opening.js-floating-opening .opn-opening__time {
  margin-left: 0;
}

/*
USP Column

markup:
section.usp-box__col
	sg-insert atom.heading.icon
	div Pulvinar mattis nunc sed blandit libero. Quis risus sed vulputate odio ut enim. Suscipit adipiscing bibendum est ultricies integer
	sg-insert(modifier="2") atom.tme.list
	sg-insert.usp-box__button atom.button.rectangular

sg-pug-options:
{}


Styleguide organism.usp-col
 */
/*
USP Box

markup:
.usb-container
	article.usp-box
		sg-insert organism.usp-col
		sg-insert organism.usp-col

sg-pug-options:
{}

sg-wrapper:
<div class="l-container">
	<sg-wrapper-content/>
</div>


Styleguide organism.usp
 */
.usp-container {
  overflow: hidden;
}
.usp-box {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: -2rem;
  margin-top: -2rem;
}
.usp-box > * {
  padding-bottom: 2rem;
  padding-top: 2rem;
}
.usp-box__col {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
}
.usp-box__button {
  margin-top: 2rem;
}

/*
Locations Plan

markup:
.lct-container(data-module="locations-plan")
	sg-insert.lct-container__text atom.tme.text
	sg-insert.lct-container__map organism.locationsPlan.map

sg-pug-options:
{}

sg-wrapper:
<section class="container-section">
	<header class="container-section__header ttl ttl--section">
		<h2 class="ttl__headline">Elit ut aliquam purus sit amet</h2>
	</header>
	<div class="container-section__content">
		<sg-wrapper-content/>
	</div>
</section>


Styleguide organism.locationsPlan
*/
.location-plan--wrapper {
  overflow: visible;
  /*
  Locations Map

  markup:
  .lct-map
  	.lct-map__figure.js-lct-figure
  		include /src/images/locationsPlan.svg
  	.lct-map__list.js-lct-list
  		sg-insert organism.locationsPlan.list

  sg-pug-options:
  {}


  Styleguide organism.locationsPlan.map
  */
  /*
  List

  markup:
  include /styleguideData/misc/organism.locationsPlan.list.pug
  ul.lct-list
  	each item in (items || liveItems)
  		li: sg-insert(parameters=`${JSON.stringify(item)}`) organism.locationsPlan.listItem

  sg-pug-options:
  {}


  Styleguide organism.locationsPlan.list
  */
  /*
  List item

  markup:
  .lct-item(data-hotspot=`hotspot-${hotspot}`)
  	.heading-5= headline
  	ul.lct-item__list
  		each item in centers
  			li: sg-insert(parameters=`${JSON.stringify(item)}`) organism.locationsPlan.link

  sg-pug-options:
  {
  	"headline": "Dimitte illis",
  	"hotspot": "10",
  	"centers": [
  		{
  			"src": "#",
  			"title": "Feugiat scelerisque"
  		},
  		{
  			"src": "#",
  			"title": "Dictum non consectetur"
  		}
  	]
  }


  Styleguide organism.locationsPlan.listItem
  */
  /*
  List link

  markup:
  a.lct-link(href=src target="_blank")
  	span.lct-link__label= title
  	span.lct-link__icon
  		sg-insert.icn-icon atom.icon.external-link

  sg-pug-options:
  {
  	"src": "#",
  	"title": "Feugiat scelerisque"
  }


  Styleguide organism.locationsPlan.link
  */
}
.location-plan--wrapper .lct-container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  overflow: visible;
}
.location-plan--wrapper .lct-container h3:after {
  background: none;
}
.location-plan--wrapper .lct-container .tme-styles.t-one h3 {
  font-size: 24px;
}
.location-plan--wrapper .lct-container .tme-styles.t-one h3:before,
.location-plan--wrapper .lct-container .tme-styles.t-one h3:after {
  content: "";
  position: absolute;
  height: 25px;
  border-bottom: 1px solid #1E2367;
  border-top: 1px solid white;
  top: 0;
  width: 125px;
}
.location-plan--wrapper .lct-container .tme-styles.t-one h3:before {
  right: 100%;
  margin-right: 30px;
}
.location-plan--wrapper .lct-container .tme-styles.t-one h3:after {
  left: 100%;
  margin-left: 15px;
  background: none;
}
.location-plan--wrapper .lct-container .tme-styles h1, .location-plan--wrapper .lct-container .tme-styles h2, .location-plan--wrapper .lct-container .tme-styles h3, .location-plan--wrapper .lct-container .tme-styles h4 {
  color: #1E2367;
  font-family: "Open Sans";
  font-size: 50px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 48px;
}
.location-plan--wrapper .lct-container .tme-styles h3 {
  display: inline-block;
  position: relative;
  padding-right: 20px;
}
.location-plan--wrapper .lct-container .tme-styles p {
  color: #686868;
  font-family: "Open Sans";
  font-size: 16px;
  letter-spacing: 0;
  line-height: 20px;
}
.location-plan--wrapper .lct-container .tme-styles a {
  height: 17px;
  color: #00CECD;
  font-family: "Open Sans";
  font-size: 12px;
  letter-spacing: 0;
  line-height: 17px;
}
.location-plan--wrapper .lct-container__map {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}
.location-plan--wrapper .lct-container__text {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}
.location-plan--wrapper .lct-svg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.location-plan--wrapper .lct-svg circle {
  pointer-events: none;
}
.location-plan--wrapper .lct-svg circle[id^=hotspot] {
  cursor: pointer;
  pointer-events: all;
  transition: transform 200ms;
  /* fill: getThemeColorValue("highlight-color"); */
}
.location-plan--wrapper .lct-svg circle[id^=hotspot]:hover, .location-plan--wrapper .lct-svg circle[id^=hotspot].active {
  /* fill: lighten(getThemeColorValue("highlight-color"), 20%); */
}
.location-plan--wrapper .lct-svg circle[id^=hotspot]:hover[cx="36"], .location-plan--wrapper .lct-svg circle[id^=hotspot].active[cx="36"] {
  transform: matrix(1.5, 0, 0, 1.5, -18, -18);
}
.location-plan--wrapper .lct-svg circle[id^=hotspot]:hover[cx="79"]:hover, .location-plan--wrapper .lct-svg circle[id^=hotspot].active[cx="79"]:hover {
  transform: matrix(1.5, 0, 0, 1.5, -39.5, -39.5);
}
.location-plan--wrapper .lct-svg tspan, .location-plan--wrapper .lct-svg text {
  pointer-events: none;
}
.location-plan--wrapper .lct-map {
  width: 100%;
  position: relative;
}
.location-plan--wrapper .lct-map__figure {
  padding-top: 107%;
  position: relative;
  width: 100%;
  z-index: 100;
}
.location-plan--wrapper .lct-map .lct-item {
  border-radius: 4px;
  min-width: 19rem;
  width: 19rem;
  opacity: 0;
  padding: 1rem;
  position: absolute;
  transition: opacity 100ms;
  z-index: 0;
}
.location-plan--wrapper .lct-map .lct-item__list {
  padding-left: 0;
}
.location-plan--wrapper .lct-map .lct-item--active {
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
  background-color: hsla(0, 0%, 100%, 0.95);
  box-shadow: 0 0 8px hsla(0, 0%, 0%, 0.15);
  opacity: 1;
  z-index: 201;
}
@supports not ((-webkit-backdrop-filter: blur(18px)) or (backdrop-filter: blur(18px))) {
  .location-plan--wrapper .lct-map .lct-item--active {
    background-color: white;
  }
}
.location-plan--wrapper .lct-map .lct-item--active.bottom-position span.triangle {
  display: block;
  height: 0;
  width: 0;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: hsla(0, 0%, 100%, 0.95);
  border-left-color: transparent;
  border-top-width: 0px;
  border-right-width: 19px;
  border-bottom-width: 30px;
  border-left-width: 19px;
  border-style: solid;
  position: absolute;
  z-index: 120;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
}
.location-plan--wrapper .lct-map .lct-item--active.top-position span.triangle {
  display: block;
  height: 0;
  width: 0;
  border-top-color: hsla(0, 0%, 100%, 0.95);
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-top-width: 30px;
  border-right-width: 19px;
  border-bottom-width: 0px;
  border-left-width: 19px;
  border-style: solid;
  position: absolute;
  z-index: 120;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header {
  display: flow-root;
  color: #8186ab;
  font-size: 20px;
  text-transform: lowercase;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .lct-back {
  width: 70%;
  float: left;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .lct-back span {
  font-size: 10px;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .lct-back:hover {
  cursor: pointer;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .lct-close {
  float: right;
  cursor: pointer;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .lct-close:hover {
  cursor: pointer;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header .icn-icon {
  width: 22px;
  height: 14px;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header-title {
  text-transform: uppercase;
  font-size: 14px;
  line-height: 28px;
  font-weight: bold;
  color: #1e2467;
  transition: all 0.1s ease-in;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header-detail-title {
  text-transform: uppercase;
  font-size: 14px;
  line-height: 38px;
  margin: 10px 0;
  font-weight: bold;
  color: #1e2467;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-more-data .description {
  font-size: 12px;
  line-height: 20px;
  overflow: hidden;
  max-height: 224px;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-more-data .links {
  font-size: 12px;
  line-height: 28px;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-more-data .links a {
  display: list-item;
  color: #41cecc;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li .lct-open-more {
  padding: 20px 0;
  transition: all 0.1s ease-in;
  position: relative;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li .lct-open-more:hover {
  cursor: pointer;
  transition: 2s all;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li .lct-open-more .lct-link__label {
  font-size: 12px;
  line-height: 30px;
  padding-right: 15px;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li .lct-open-more .lct-link__icon {
  font-size: 1rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li:nth-child(1n+2) .lct-open-more {
  border-top: 1px solid #eaeaea;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-header-title.display-hidden,
.location-plan--wrapper .lct-map .lct-item.multi-level-list .lct-item__list li .lct-open-more.display-hidden,
.location-plan--wrapper .lct-map .lct-item.multi-level-list .display-hidden {
  max-height: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  transition: all 0.1s ease-out;
}
.location-plan--wrapper .lct-map .lct-item.multi-level-list .display-hidden.open {
  max-height: 1000px;
  transition: max-height 0.5s ease-in;
}
.location-plan--wrapper .lct-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.location-plan--wrapper .lct-item__list {
  list-style: none;
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
  padding-left: 2rem;
}
.location-plan--wrapper .lct-link {
  align-items: center;
  color: #323232;
  display: flex;
  justify-content: space-between;
  transition: color 125ms ease-in-out;
}
.location-plan--wrapper .lct-link:hover {
  color: #CD1316;
}
.location-plan--wrapper .lct-link__icon {
  font-size: 1.5rem;
}

.lgn-container.cookie-banner {
  padding: 1.5rem;
  margin-top: 30%;
}
.lgn-container.cookie-banner .point-text {
  display: none;
}
.lgn-container.cookie-banner .std-button {
  margin-left: -5px;
}
.lgn-container.cookie-banner .frm-radio__label {
  padding-left: 0.125rem;
}
.lgn-container.cookie-banner .cookie-banner--settings .row.ttl--section {
  flex-wrap: nowrap;
}
.lgn-container.cookie-banner .cookie-banner--settings .row.ttl--section .ttl__headline {
  max-width: 30%;
  text-align: left;
}
.lgn-container.cookie-banner .btc-bar__width-adjust {
  flex-direction: column-reverse;
}
.lgn-container.cookie-banner .btc-bar__width-adjust .btn:first-of-type {
  margin-top: 1rem;
}
.lgn-container.cookie-banner .btc-bar__width-adjust .btn {
  margin-top: 0;
}
.lgn-container.cookie-banner .cookie-banner--main {
  position: relative;
  /*	&::after {
  		position: absolute;
  		z-index: 0;
  		bottom: 0;
  		left: 0;
  		right: 0;
  		content: "";
  		display: block;
  		height: 1.625rem;
  		background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .2) 25%, hsla(0, 0%, 100%, .8) 60%, #fff 90%);
  		opacity: 1;
  		pointer-events: none;
  	} */
}
.lgn-container.cookie-banner .cookie-banner--main .row.ttl--section h2.ttl__headline {
  text-transform: none;
}
.lgn-container.cookie-banner .cookie-banner--main .cookie-banner--description {
  max-height: 25vh;
  overflow: auto;
}
.lgn-container.cookie-banner .cookie-banner--description a {
  color: #525050;
  text-decoration: underline;
}
.lgn-container.cookie-banner .cookie-banner--description a:hover, .lgn-container.cookie-banner .cookie-banner--description a:active {
  color: #323232;
}
.lgn-container.cookie-banner .cookie-banner--description__settings {
  margin-left: 1.875rem;
}
.lgn-container.cookie-banner .cookie-banner--info .cookie-item--info p:first-of-type {
  margin-top: 0px;
}
.lgn-container.cookie-banner .std-controls {
  margin-bottom: 1.5rem;
}
.lgn-container.cookie-banner .btn__small--left {
  margin-left: auto;
  margin-right: 15px;
}
.lgn-container.cookie-banner .btn__small--right {
  padding-left: 15px;
  padding-right: 15px;
  display: block;
  text-align: right;
  width: 100%;
}
.lgn-container.cookie-banner .btc-cookie-banner-bar {
  margin-top: 3rem;
}
.lgn-container.cookie-banner .cookie-item--input {
  margin-left: 0.5rem;
  margin-bottom: 0.5rem;
}
.lgn-container.cookie-banner .cookie-item--input input[type=checkbox],
.lgn-container.cookie-banner .cookie-item--input input[type=radio] {
  margin-left: -2rem;
  width: 35rem;
  height: 2.5rem;
  margin-top: -0.5rem;
  max-width: 100%;
}
.lgn-container.cookie-banner .cookie-item--input .frm-checkbox__span::before,
.lgn-container.cookie-banner .cookie-item--input .frm-radio__span::before {
  margin-left: -1.5rem;
}
.lgn-container.cookie-banner .cookie-item--input .frm-radio__span::before {
  margin-right: 10px;
}
.lgn-container.cookie-banner table {
  margin-top: 2rem;
  width: 100%;
  text-align: left;
}
.lgn-container.cookie-banner table tr {
  height: 2rem;
}
.lgn-container.cookie-banner table thead {
  color: #9e9e9e;
  text-transform: uppercase;
  font-weight: 600;
}
.lgn-container.cookie-banner table td:nth-child(1) {
  width: 20%;
}
.lgn-container.cookie-banner table td:nth-child(2) {
  width: 50%;
}
.lgn-container.cookie-banner table .point {
  display: inline-block;
  margin-bottom: 0.125rem;
  margin-right: 0.625rem;
  vertical-align: middle;
  width: 1rem;
  height: 1rem;
  border-radius: 0.5rem;
}
.lgn-container.cookie-banner table .point-green {
  background: #8CF220;
}
.lgn-container.cookie-banner table .point-red {
  background: #F74747;
}
.lgn-container.cookie-banner table .point-category {
  font-size: 14px;
  color: #666;
}

.lgn-container.cookie-banner.version-checkbox .cookie-banner--main .row.ttl--section {
  margin-bottom: 1rem;
}
.lgn-container.cookie-banner.version-checkbox .cookie-banner--main .row.ttl--section .std-controls {
  margin-bottom: 0;
}
.lgn-container.cookie-banner.version-checkbox .cookie-banner--main input.checkbox-cookieSelect:checked ~ .frm-checkbox__label::after {
  top: 0;
  left: 0.4rem;
}
.lgn-container.cookie-banner.version-checkbox .btc-bar__width-adjust {
  flex-direction: column;
}
.lgn-container.cookie-banner.version-checkbox .btc-bar__width-adjust .btn {
  margin-top: 1rem;
}
.lgn-container.cookie-banner.version-checkbox .btc-bar__width-adjust .btn:first-of-type {
  margin-top: 0;
}

.content-container.cookie-overview h2,
.content-container.cookie-overview h3,
.content-container.cookie-overview h4 {
  margin: 1rem 0;
}
.content-container.cookie-overview h5,
.content-container.cookie-overview h6 {
  margin: 0.5rem 0;
}
.content-container.cookie-overview table {
  margin: 2rem 0;
  width: 100%;
  text-align: left;
  border: 1px solid black;
  border-spacing: 0;
}
.content-container.cookie-overview table tr {
  height: 2rem;
}
.content-container.cookie-overview table thead {
  color: #9e9e9e;
  text-transform: uppercase;
  font-weight: 600;
}
.content-container.cookie-overview table th {
  border: 1px solid black;
  background-color: grey;
  color: white;
  padding-left: 5px;
  padding-right: 5px;
  text-align: center;
}
.content-container.cookie-overview table td {
  border: 1px solid black;
  padding-left: 5px;
  padding-right: 5px;
  text-align: center;
}
.content-container.cookie-overview table td:nth-child(1) {
  width: 20%;
}
.content-container.cookie-overview table td:nth-child(2) {
  width: 50%;
  text-align: left;
}
.content-container.cookie-overview table .point {
  display: inline-block;
  margin-bottom: 0.125rem;
  margin-right: 0.625rem;
  vertical-align: middle;
  width: 1rem;
  height: 1rem;
  border-radius: 0.5rem;
}
.content-container.cookie-overview table .point-green {
  background: #8CF220;
}
.content-container.cookie-overview table .point-red {
  background: #F74747;
}
.content-container.cookie-overview table .point-category {
  font-size: 14px;
  color: #666;
}
/*
Product Search

markup:
ul(class=`tsr-full-width product-search tsr-full-width--small`)
  li
    article.tsr-full-width__slide
      img.tsr-full-width__bg-image(src="http://placehold.it/1920x460")
      .tsr-full-width__overlay
        .tsr-full-width__content
          h2.heading-1 Produktsuche
          p.tsr-full-width__abstract Produkte online finden - offline kaufen.<br/> Finden sie ab sofort zahlrieche verfügbare Produkte unsere Shops.
          form(class="mnu-search")
            i.inp-search__icon(aria-hidden="true")
              sg-insert.icn-icon.js-icon-search atom.icon.search
            input.inp-search__input.js-search-input(type="text" placeholder="Nach Produkten suchen …" value="")

sg-pug-options:
{}

Styleguide organism.productSearch
*/
.tsr-full-width .product-search .mnu-search {
  margin-top: 1.125rem;
  padding-left: 0.5rem;
  width: 100%;
  max-width: 601px;
  height: 2.81rem;
}
.tsr-full-width .product-search .icn-icon {
  color: #000;
  fill: #000;
  height: 1.5rem;
  overflow: hidden;
  vertical-align: middle;
  width: 1.5rem;
  margin-bottom: 0.2rem;
}
.tsr-full-width .product-search .heading-1 {
  margin-bottom: 5px;
}
.tsr-full-width .product-search .inp-search__input {
  font-size: 1.25rem;
  line-height: 1.75rem;
  width: calc(100% - 28px);
  padding-left: 13px;
  padding-top: 8px;
  padding-bottom: 10px;
  height: 100%;
}
.tsr-full-width .product-search ::-moz-placeholder {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.tsr-full-width .product-search ::placeholder {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

/*
Teaser Full Width With Buttons

markup:
<section class="tsr-with-buttons">
  <img class="tsr-with-bottons__bg-image" src="http://placehold.it/1920x460">
  <div class="tsr-with-bottons__overlay">
    <div class="tsr-with-bottons__content">
      <h3 class="tsr-with-bottons__headline">Europas größte Auswahl an Fashion & Trends</h3>
      <p class="tsr-with-bottons__abstract">Entdecke über 1900 Marken und lass dich modisch inspirieren. Bestelle einfach und bequem nach Hause - mit unserem kostenlosen Versand & Rückversand.</p>
      </div>
      <div class="tsr-with-bottons__buttons">
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Damen</span>
        </a>
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Damen</span>
        </a>
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Kinder</span>
        </a>
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Home and living</span>
        </a>
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Beauty</span>
        </a>
        <a class="btn btn--solid btn--light btn--inverse tsr-with-bottons__cta">
          <span class="btn__label">Unterhaltung & Technik   </span>
        </a>
      </div>
  </div>
</section>

sg-pug-options:
{}

Styleguide organism.teaserWithButtons
*/
.tsr-with-buttons {
  position: relative;
}
.tsr-with-buttons img.tsr-with-bottons__bg-image {
  position: absolute;
  min-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  min-height: 100%;
}
.tsr-with-buttons .tsr-with-bottons__overlay {
  background: rgba(0, 0, 0, 0.4);
  color: #fff;
  text-align: center;
  padding: 2rem 1rem;
  font-weight: 600;
  min-height: 28.75rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.tsr-with-buttons .tsr-with-bottons__overlay h3 {
  margin-bottom: 1.75rem;
}
.tsr-with-buttons .tsr-with-bottons__overlay p {
  margin-bottom: 2.5rem;
}
.tsr-with-buttons .tsr-with-bottons__content {
  position: relative;
}
.tsr-with-buttons .tsr-with-bottons__buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.tsr-with-buttons .tsr-with-bottons__buttons .btn {
  margin: 0 0.5rem 1rem 0.5rem;
  padding: 0.25rem 1.75rem;
}

/*
Participating businesses

Styleguide organism.shops
*/
/*
Participating businesses (slider)

markup:
<section class="shop-teaser shop-teaser__divider-before tsr-full-width_divider-after" data-content-replace-url="providerece/Resources/Public/styleguideData/misc/prod-teaser.json">
  <header class="ttl ttl--section">
	  <h2 class="ttl__headline">Shops Section Title H2</h2>
  </header>
  <div class="shop-teaser_slider-wrapper">
    <div class="container">
      <div class="shop-teaser_teasers"
          data-module="shopCarousel"
          data-module-options="{&quot;loop&quot;: false, &quot;dots&quot;: false, &quot;autoWidth&quot;: true, &quot;autoWidth&quot;: true }">
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
        <div class="shop-teaser_teaser">
          <img class="shops__img" src="https://www.altmarkt-galerie-dresden.de/fileadmin/_processed_/6/d/csm_amor-and-friends_Shop-Logo_1500PX_d0b2eed167.jpg" width="250" height="140" alt="">
        </div>
      </div>
    </div>
  </div>
</section>

.shop-teaser
.tsr-full-width_divider-after
.shop-teaser__divider-before

Styleguide organism.shops.slider
*/
.shop-teaser {
  padding-top: 3rem;
  padding-bottom: 2.25rem;
}
.shop-teaser_slider-wrapper {
  position: relative;
}
.shop-teaser_slider-wrapper .container {
  padding-left: 15px;
  padding-right: 15px;
}
.shop-teaser_teaser {
  width: 95px !important;
  max-width: 95px !important;
  float: left;
  margin-right: 0.75rem;
}
.shop-teaser .owl-nav {
  display: none;
}
.shop-teaser .owl-prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 0 100px 100px 0;
  z-index: 2;
}
.shop-teaser .owl-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  border-radius: 100px 0 0 100px;
  z-index: 2;
}
.shop-teaser .owl-stage-outer {
  margin-top: 0;
  padding-top: 0;
}
.shop-teaser .tsr-full-width_divider-before {
  border-top: 1ps solid rgba(0, 0, 0, 0.15);
}
.shop-teaser .tsr-full-width_divider-after {
  border-bottom: 1ps solid rgba(0, 0, 0, 0.15);
}

/*
Participating businesses (buttons)

.shop-teaser.shop-teaser--buttons

<section class="shop-teaser shop-teaser--buttons">
  <header class="ttl ttl--section">
	  <h2 class="ttl__headline">UNSERE SHOPS IN DER DIGITAL MALL H2</h2>
  </header>
  <div class="shop-teaser_slider-wrapper" data-module="show-all">
    <div class="container">
      <div class="shop-teaser_buttons">
        <a class="btn btn--badge btn--light" data-badge="new"><span class="btn__inner"></span><span class="btn__label">liberty</span></a>
        <a class="btn btn--badge btn--light" data-badge="new"><span class="btn__inner"></span><span class="btn__label">AppelrathCüpper</span></a>
        <a class="btn btn--badge btn--light" data-badge="new"><span class="btn__inner"></span><span class="btn__label">Lascana</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Bijou Brigitte</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Gant</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Olymp</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">hunkenmöller</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Liebeskind</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Lascana</span></a>
        <a class="btn btn--light"><span class="btn__inner"></span><span class="btn__label">Liebeskind</span></a>
        <div class="shop-teaser_show-more">
          <a class="btn btn--icon btn--icon-follows">
            <span class="btn__inner">
              <span class="btn__label">Mehr anzeigen</span>
              <span class="btn__icon">
                <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
                  <g id="arrow-down">
                    <path d="M501.75,705.327c-7.757,0-15.514-2.77-21.677-8.311L95.397,351.198c-13.313-11.968-14.406-32.468-2.433-45.787
                      c11.968-13.308,32.468-14.395,45.787-2.433l363,326.331l363.005-326.331c13.319-11.962,33.819-10.875,45.786,2.433
                      c11.973,13.319,10.881,33.819-2.433,45.787L523.427,697.016C517.264,702.557,509.507,705.327,501.75,705.327z"></path>
                  </g>
                  <g id="Ebene_1">
                  </g>
                </svg>
              </span>
            </span>
          </a>
        </div>
      </div>
    </div>
  </div>
</section>

Styleguide organism.shops.buttons
*/
.shop-teaser.shop-teaser--buttons {
  position: relative;
}
.shop-teaser.shop-teaser--buttons .container {
  max-width: 1030px;
}
.shop-teaser.shop-teaser--buttons .btn {
  margin-right: 1rem;
  margin-bottom: 0.75rem;
  padding: 0.5rem 1rem 0.75rem 1rem;
  text-transform: none;
}
.shop-teaser.shop-teaser--buttons .btn.btn--icon-follows svg {
  right: unset;
}
.shop-teaser.shop-teaser--buttons .btn--badge[data-badge]::before {
  background-color: #323232;
  color: #ffffff;
  position: absolute;
  right: 0.5rem;
  margin-left: 0;
  padding: 2px 0.5rem 2px 0.5rem;
  top: -0.5rem;
  transform: none;
  font-size: 9px;
  line-height: 13px;
  text-transform: uppercase;
}
.shop-teaser.shop-teaser--buttons .shop-teaser_buttons {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-height: 12rem;
  padding-top: 0.5rem;
  overflow: hidden;
  transition: all 0.4s;
}
.shop-teaser.shop-teaser--buttons .shop-teaser_buttons.open {
  max-height: 5000px;
}
.shop-teaser.shop-teaser--buttons .shop-teaser_show-more {
  position: absolute;
  padding-top: 4rem;
  left: 0;
  bottom: 0;
  width: 100%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%);
  text-align: center;
}

.shw-showcase {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  align-items: flex-start;
}
.shw-showcase__placeholder {
  position: relative;
}
.shw-showcase__placeholder img {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.shw-showcase__cta {
  margin-top: 4.5rem;
  order: 3;
  width: 100%;
}
.shw-showcase__media {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  margin: 0 auto;
  margin-bottom: 2rem;
  max-width: 500px;
}
.shw-showcase__media video {
  width: 100%;
}
.shw-showcase__products {
  min-height: 450px;
}

/*
Product Showcase List

markup:
ul.shw-list.js-list
	//- li: sg-insert.shw-list__item molecule.teaser.horizontal.product
.shw-list__show-more.hidden.js-show-more
	sg-insert atom.button.transparent

sg-pug-options:
{}

Styleguide organism.productShowcase.list
*/
.shw-list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.shw-list__item {
  border-top: thin solid rgba(0, 0, 0, 0.2);
  padding: 1rem;
}
.shw-list > .item-hidden {
  height: 0;
  overflow: hidden;
}
.shw-list__show-more {
  background: linear-gradient(to top, white 70%, rgba(255, 255, 255, 0));
  bottom: 0;
  color: #CD1316;
  font-weight: 600;
  left: 0;
  padding: 4.5rem 0 2.5rem;
  position: absolute;
  text-align: center;
  width: 100%;
}
.container-section--alternate .shw-list__show-more {
  background: linear-gradient(to top, #efefef 70%, rgba(255, 255, 255, 0));
}

#location-finder {
  max-width: 75%;
}
#location-finder .cmplazypreviewiframe {
  position: absolute;
  width: 100% !important;
  background: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/images/ece_google_map.jpg') no-repeat 50%;
  background-size: cover;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner {
  text-align: center;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner h3 {
  font-size: 18px;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt {
  margin-block: 20px;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt a {
  text-decoration: underline;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt .small-txt {
  font-size: 12px;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsginner .cmplazytxt .small-txt a {
  text-decoration: underline;
  font-size: 12px;
}
#location-finder .cmplazypreviewiframe .cmplazypreviewmsg {
  background-color: unset;
}
#location-finder .cmplazypreviewiframe .cmplazybtnlink {
  font-weight: 500;
  font-size: 1rem;
  background-color: transparent;
  border: 1px solid #484848;
  color: #484848;
  line-height: 1.5;
  padding: 0.5rem 3rem;
  text-align: center;
  text-transform: uppercase;
  margin-top: 34px;
}
#location-finder #map {
  height: 700px;
  position: relative;
  overflow: hidden;
}
#location-finder #location-finder__form {
  display: flex;
}
#location-finder .form-wrapper {
  flex: 1;
  margin-right: 10px;
}
#location-finder .map-wrapper {
  position: relative;
  overflow: hidden;
}
#location-finder .searchbar-wrapper {
  width: 100%;
  height: 60px;
  overflow: auto;
  padding-top: 7px;
  padding-left: 7px;
}
#location-finder .searchbar-form {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 60px;
  z-index: 1;
}
#location-finder .ttl__headline {
  color: #323232;
}
#location-finder .ttl::before, #location-finder .ttl::after {
  background-color: #323232;
}
#location-finder .ttl--section {
  width: 65%;
}
#location-finder .tme-styles {
  text-align: center;
  padding-bottom: 40px;
}
#location-finder #map_location {
  width: 95%;
  height: 45px;
  border: 1px solid #CCCCCC;
  border-right: none;
  padding-left: 10px;
  color: #323232;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 19px;
  border-bottom: none;
  float: left;
}
#location-finder #map_location:disabled {
  cursor: wait;
  pointer-events: auto;
  background-color: rgba(207, 207, 207, 0.8117647059);
}
#location-finder .map_get-position {
  width: 40px;
  height: 45px;
  display: block;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
  position: relative;
  top: 0;
  left: 0;
}
#location-finder .map_get-position:before {
  content: "";
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/images/locate_icon.png');
  background-position: center center;
  border-bottom: none;
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: 45px;
  background-repeat: no-repeat;
  border-top: 1px solid #CCCCCC;
}
#location-finder .map_clear {
  margin-right: -5px;
  width: 50px;
  height: 45px;
  display: none;
  line-height: 45px;
  cursor: pointer;
  position: relative;
  top: 0;
  right: 30px;
  float: right;
  border-bottom: 3px solid;
  border-top: 1px solid #CCCCCC;
  background-color: white;
}
#location-finder .map_clear:before {
  content: "X";
  width: 100%;
  height: 100%;
  border: 1px solid #323232;
  border-radius: 20px;
  padding-right: 16px;
  padding-left: 16px;
}
#location-finder .map_results {
  padding: 80px 30px 0 50px;
  width: 100%;
}
#location-finder .map_results-wrapper {
  position: absolute;
  padding-top: 10px;
  right: 0;
  top: 50px;
  width: 420px;
  height: 650px;
}
#location-finder .map_results-inner {
  width: 100%;
  height: 100%;
  overflow: auto;
  max-width: 100%;
  overflow-x: hidden;
}
#location-finder .map_result {
  background: #fff;
  padding: 1rem 1rem 2.5rem 1rem;
  cursor: pointer;
  width: 410px;
  border-bottom: 3px solid #323232;
}
#location-finder .map_result:hover {
  transition: 0.25s ease;
  background-color: #f6f6f6;
}
#location-finder .map_shop-name {
  color: #323232;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 24px;
  text-transform: uppercase;
}
#location-finder .map_shop-details {
  padding-bottom: 20px;
}
#location-finder .map_shop-details p {
  font-size: 16px;
  margin-bottom: 0;
  margin-top: 0;
}
#location-finder .btn--light.btn-location_finder {
  border-radius: 100px;
  text-transform: initial;
  font-size: 14px;
  margin-right: 15px;
  padding: 5px 0;
  width: 170px;
  margin-bottom: 15px;
}
#location-finder .btn--dark.btn-location_finder {
  border-radius: 100px;
  text-transform: initial;
  font-size: 14px;
  margin-right: 15px;
  padding: 5px 0;
  width: 170px;
  margin-bottom: 15px;
}
#location-finder .map-location_distance p {
  width: 140px;
  margin-bottom: 0;
  margin-top: 5px;
}
#location-finder .map-location_opening-hours {
  color: #00D30E;
}
#location-finder .map-location_distance-label {
  font-weight: bold;
}
#location-finder .map-location_opening-hours-breaker {
  width: 103px;
}
#location-finder .map-location_opening-hours-list {
  margin-top: 0;
  list-style: none;
  display: none;
}
#location-finder .map-location_opening-hours-list li b {
  margin-right: 10px;
  width: 40px;
  float: left;
}
#location-finder .map-location_opening-hours-list li p {
  margin-bottom: 0;
  margin-top: 5px;
  overflow: hidden;
}
#location-finder .opening_rectangle {
  width: 100%;
  height: 10px;
  position: relative;
  top: -18px;
  left: 100px;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 15px 15px;
}
#location-finder .opening_rectangle_up {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/images/rectangle_up.png');
}
#location-finder .opening_rectangle_down {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/images/rectangle_down.png');
}
#location-finder .marker-wrapper img {
  width: 14px;
  height: 23px;
  position: absolute;
  top: 10px;
  left: 25px;
}
#location-finder .map_shop-name img {
  width: 10px;
  height: 16px;
  display: inline-block;
}
#location-finder .map_shop-details_wrapper {
  padding-left: 15px;
}
#location-finder .location-finder__infobox-wrapper {
  display: none;
}
#location-finder .map-wrapper.location-finder__cookie-revoked {
  height: 700px;
  background: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/images/ece_google_map.jpg') no-repeat center center;
  background-size: cover;
}
#location-finder .map-wrapper.location-finder__cookie-revoked #map, #location-finder .map-wrapper.location-finder__cookie-revoked .searchbar-form {
  display: none;
}
#location-finder .map-wrapper.location-finder__cookie-revoked .location-finder__infobox-wrapper {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
#location-finder .map-wrapper.location-finder__cookie-revoked .location-finder__infobox-wrapper a {
  text-decoration: underline;
  display: block !important;
}
#location-finder .map-wrapper.location-finder__cookie-revoked .btc-bar {
  padding-top: 30px;
}
/* Google autocomplete dropdown override */
.pac-container {
  border-bottom: 3px solid #323232;
  box-sizing: content-box;
  padding-right: 40px;
}
.pac-container .pac-item {
  padding: 10px 8px;
  font-size: 14px;
  color: #A6A6A6;
  cursor: pointer;
}
.pac-container .pac-item .pac-icon {
  width: 18px;
  height: 22px;
  background-image: url("/fileadmin/user_upload/center_marker/marker.svg");
}
.pac-container .pac-item:hover {
  background-color: rgba(167, 193, 234, 0.09);
}
.pac-container .pac-icon-marker {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 25px 20px;
}
.pac-container .pac-item-query {
  font-size: 14px;
  padding-right: 3px;
  color: #000;
}
.pac-container .marker-wrapper img {
  width: 14px;
  height: 23px;
  position: absolute;
  top: 10px;
  left: 25px;
}

.hdpi.pac-logo:after, .pac-logo:after {
  display: none;
}

.gmnoprint.gm-bundled-control.gm-bundled-control-on-bottom {
  left: 5px;
}

#leasing-sidebar {
  position: fixed;
  top: 230px;
  right: 0;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 14px;
}
#leasing-sidebar.form--active {
  height: 250px;
}
#leasing-sidebar .share-button {
  position: absolute;
  height: 46px;
  box-sizing: border-box;
  top: -55px;
}
#leasing-sidebar .share-button:has(button:focus-visible) {
  outline: 2px solid #CD1316;
  outline-color: white;
}
#leasing-sidebar .form-button {
  transform: rotate(-90deg);
  white-space: nowrap;
  padding: 5px;
  box-sizing: border-box;
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
}
#leasing-sidebar .icn-icon.mail-icon {
  height: 20px;
  width: 20px;
}
#leasing-sidebar .icn-icon.share-icon {
  height: 25px;
  width: 25px;
  margin-left: 2px;
  margin-bottom: 3px;
}
#leasing-sidebar .leasing-form__wrapper {
  width: 100%;
  position: absolute;
  right: 500px;
  display: none;
  top: 0;
}
#leasing-sidebar .leasing-form__wrapper .mdl-modal__btn--close:focus-visible {
  outline: 2px solid #CD1316;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage {
  color: #000;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .content-container {
  margin: 0;
  padding: 0;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form {
  color: #FFF;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group.floating-label .control-label {
  color: hsl(0, 0%, 25%);
  font-style: italic;
  font-weight: normal;
  font-size: 14px;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group.floating-label.focused-or-filled .control-label {
  font-style: normal;
  text-transform: uppercase;
  color: #fff;
  font-size: 14px;
  transform: scale(0.9);
  width: 110%;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group.floating-label ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: transparent;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group.floating-label ::-moz-placeholder {
  /* Firefox 19+ */
  color: transparent;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group .frm-checkbox {
  display: block;
  margin-top: 20px;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .form-group .frm-checkbox a {
  color: #fff;
  font-weight: normal;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .btn.btn--solid {
  margin-top: 20px;
  margin-left: 0;
  background-color: white;
  color: black;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .sidebar-form .btn.btn--solid:hover {
  background-color: #CD1316;
  color: white;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .tme {
  padding: 15px 0 0 0;
  margin: 0;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .tme .tme-styles {
  font-size: 12px;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .tme .tme-styles p {
  font-size: 12px;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .tme .tme-styles h3 {
  margin: 0;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .tme .tme-styles h3::after {
  content: none;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .post-sidebar-form {
  padding-top: 15px;
}
#leasing-sidebar .leasing-form__wrapper.sidebarPage .post-sidebar-form .container {
  width: auto;
  border: 0;
  display: contents;
}
#leasing-sidebar .leasing-form__wrapper .success {
  color: green;
  margin-left: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-block: 20px;
}
#leasing-sidebar .leasing-form__wrapper .success p {
  margin: 0;
  text-transform: uppercase;
}
#leasing-sidebar .leasing-form__wrapper .subscription {
  margin-bottom: 10px;
}
#leasing-sidebar .leasing-form__wrapper .container {
  width: 500px;
  margin: 0 auto;
  padding: 20px;
  background-color: white;
  overflow: auto;
  height: 700px;
  overflow-y: auto;
  border: 1px solid #323232;
}
#leasing-sidebar .leasing-form__wrapper .bullet-points {
  list-style-type: none;
  padding: 1px 10px 10px;
  color: black;
  background-color: white;
}
#leasing-sidebar .leasing-form__wrapper strong {
  font-weight: bold;
}
#leasing-sidebar .leasing-form__wrapper .bullet-points li {
  margin-bottom: 5px;
}
#leasing-sidebar .leasing-form__wrapper .form-field {
  width: 100%;
  margin-bottom: 10px;
}
#leasing-sidebar .leasing-form__wrapper .form-field .form-group {
  padding-right: 15px;
}
#leasing-sidebar .leasing-form__wrapper .inp-select {
  margin-bottom: 10px;
}
#leasing-sidebar .leasing-form__wrapper .inp-select select {
  background-color: #ffffff;
  color: #000000;
  font-weight: 400;
  font: inherit;
}
#leasing-sidebar .leasing-form__wrapper .inp-select select option:first-of-type {
  color: hsl(0, 0%, 25%);
}
#leasing-sidebar .leasing-form__wrapper .inp-select svg {
  color: hsl(0, 0%, 25%);
}
#leasing-sidebar .leasing-form__wrapper .form-field.half-width {
  width: 50%;
  display: inline-block;
}
#leasing-sidebar .leasing-form__wrapper .form-section {
  background-color: #323232;
  padding: 20px;
}
#leasing-sidebar .leasing-form__wrapper .checkboxes {
  margin-top: 20px;
}
#leasing-sidebar .leasing-form__wrapper .submit-button.btn--light {
  margin-top: 20px;
  background-color: white;
  color: black;
}
#leasing-sidebar .leasing-form__wrapper .submit-button.btn--light:hover {
  background-color: #CD1316;
  color: white;
}
#leasing-sidebar .leasing-form__wrapper .t3-form .form-group {
  position: relative;
  padding-right: 0;
  margin: 0.25rem 0 0.05rem;
}
#leasing-sidebar .leasing-form__wrapper .t3-form .form-group textarea {
  height: 5rem;
}
#leasing-sidebar .leasing-form__wrapper .js-error.frm-error {
  margin-top: 0;
}
#leasing-sidebar .leasing-form__wrapper .has-error .company-field {
  margin-bottom: 0;
}
#leasing-sidebar .leasing-form__wrapper .has-error .frm-checkbox__label::before {
  border-color: #fb1e45;
}
#leasing-sidebar .leasing-form__wrapper .t3-form .form-group.name-field {
  padding-right: 15px;
}
#leasing-sidebar .leasing-form__wrapper .frm-checkbox__label a {
  text-decoration: underline;
}
#leasing-sidebar .leasing-form__wrapper .frm-checkbox__label::before {
  border: 1px solid white;
}
#leasing-sidebar .leasing-form__wrapper .frm-checkbox__label {
  font-size: 12.5px;
}
#leasing-sidebar .leasing-form__wrapper input:checked ~ .frm-checkbox__label::after {
  top: -2px;
  left: 8px;
  border-color: #e93035;
}
#leasing-sidebar .leasing-form__wrapper .captcha-input--wrapper input {
  width: 150px;
}
#leasing-sidebar .leasing-form__wrapper.open {
  display: block;
}

.leasing--modal .mdl-modal__vertical.mdl-modal__backdrop {
  padding: 235px 0;
  vertical-align: unset;
}

#leasing-sidebar,
.share-button {
  z-index: 251;
  background-color: #e93035;
  width: 50px;
  box-shadow: 1px 1px 8px black;
}

.form-button.openForm:focus-visible {
  outline: 2px solid #CD1316;
  outline-color: white;
}
.std-social__item .social-image {
  padding: 10px;
}

.leasing-grid__wrapper {
  margin-bottom: 20px;
}
.leasing-grid__wrapper .teaser-subline {
  color: #f3c506;
}
.leasing-grid__wrapper .leasing-button__wrapper {
  display: flex;
}
.leasing-grid__wrapper .leasing-button__wrapper.left {
  justify-content: flex-start;
}
.leasing-grid__wrapper .leasing-button__wrapper.center {
  justify-content: center;
}
.leasing-grid__wrapper .leasing-button__wrapper.right {
  justify-content: flex-end;
}
.leasing-grid__wrapper .teaser-content {
  padding: 20px;
  color: white;
}
.leasing-grid__wrapper .teaser-content .font-color {
  color: #CD1316;
}
.leasing-grid__wrapper .teaser-content .read-more--link {
  text-decoration: underline;
  margin-left: 6px;
  font-style: italic;
}
.leasing-grid__wrapper .teaser-item {
  box-sizing: border-box;
  background-color: #323232;
  margin-bottom: 20px;
  margin-right: 20px;
  width: 380px;
  flex: 0 0 calc(33.33333% - 20px);
  max-width: calc(33.33333% - 20px);
  min-height: 1px;
}
.leasing-grid__wrapper .teaser-title {
  margin-top: 10px;
  font-weight: bold;
  color: white;
}
.leasing-grid__wrapper .owl-dots {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.leasing-grid__wrapper .owl-dot {
  border: 1px solid white !important;
}
.leasing-grid__wrapper .owl-dot.active, .leasing-grid__wrapper .owl-dot:hover {
  background: #CD1316 !important;
}
.leasing-grid__wrapper .btn--solid {
  background-color: #CD1316;
  color: #323232;
  margin: 10px;
}
.leasing-grid__wrapper .btn--solid:hover {
  color: #CD1316 !important;
  background-color: white !important;
}
.leasing-grid__wrapper .row [class*=col-] {
  padding-left: 0;
  padding-right: 0;
}
.leasing-grid__wrapper .teaser-content {
  height: 340px;
}
.leasing-grid__wrapper .teaser-text {
  font-size: 15px;
  height: 300px;
}

.leasing-teaser__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
  margin-inline: 10px;
}
.leasing-teaser__wrapper .teaser-content {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.leasing-teaser__wrapper .teaser-item {
  flex: 0 0 370px;
  box-sizing: border-box;
  background-color: #323232;
  margin-bottom: 20px;
  margin-right: 20px;
  width: 300px;
  display: flex;
  flex-direction: column;
}
.leasing-teaser__wrapper .teaser-item:last-child {
  margin-right: 0;
}
.leasing-teaser__wrapper .teaser-header {
  margin-bottom: 25px;
}
.leasing-teaser__wrapper .teaser-header .teaser-title {
  margin: 0;
  font-weight: bold;
  color: white;
  margin-top: 10px;
}
.leasing-teaser__wrapper .teaser-header .teaser-subtitle {
  margin: 0;
  font-weight: bold;
  color: white;
}
.leasing-teaser__wrapper .teaser-bullets {
  list-style-type: square;
  margin: 0;
  color: #FFFFFF;
  padding-left: 20px;
}
.leasing-teaser__wrapper .teaser-bullets li {
  padding-left: 10px;
  font-weight: bold;
  margin-bottom: 3px;
}
.leasing-teaser__wrapper .teaser-link {
  color: white;
  text-align: right;
  margin-top: auto;
  float: right;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 15px;
  padding-top: 25px;
}
.leasing-teaser__wrapper a.teaser-link {
  text-decoration: underline;
}
.leasing-teaser__wrapper a.teaser-link:hover {
  text-decoration: none;
}
.leasing-teaser__wrapper .owl-item [tabindex]:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.leasing-teaser__wrapper .owl-dots {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.leasing-teaser__wrapper .owl-dot {
  border: 1px solid white !important;
}
.leasing-teaser__wrapper .owl-dot.active, .leasing-teaser__wrapper .owl-dot:hover {
  background: #CD1316 !important;
}
.leasing-teaser__wrapper .teaser-link {
  display: flex;
}
.leasing-teaser__wrapper .teaser-link.left {
  justify-content: flex-start;
}
.leasing-teaser__wrapper .teaser-link.right {
  justify-content: flex-end;
}

.leasing-text--wrapper h3 {
  font-weight: lighter;
  margin-bottom: 30px;
}
.leasing-text--wrapper .read-more {
  font-style: italic;
  text-transform: uppercase;
}
.leasing-text--wrapper .tsr-grp__teasers {
  display: block;
  padding: 0;
}

.shw-showcase {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  align-items: flex-start;
}
.shw-showcase__placeholder {
  position: relative;
}
.shw-showcase__placeholder img {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.shw-showcase__cta {
  margin-top: 4.5rem;
  order: 3;
  width: 100%;
}
.shw-showcase__media {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  margin: 0 auto;
  margin-bottom: 2rem;
  max-width: 500px;
}
.shw-showcase__media video {
  width: 100%;
}
.shw-showcase__products {
  min-height: 450px;
}

/*
Product Showcase List

markup:
ul.shw-list.js-list
	//- li: sg-insert.shw-list__item molecule.teaser.horizontal.product
.shw-list__show-more.hidden.js-show-more
	sg-insert atom.button.transparent

sg-pug-options:
{}

Styleguide organism.productShowcase.list
*/
.shw-list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.shw-list__item {
  border-top: thin solid rgba(0, 0, 0, 0.2);
  padding: 1rem;
}
.shw-list > .item-hidden {
  height: 0;
  overflow: hidden;
}
.shw-list__show-more {
  background: linear-gradient(to top, white 70%, rgba(255, 255, 255, 0));
  bottom: 0;
  color: #CD1316;
  font-weight: 600;
  left: 0;
  padding: 4.5rem 0 2.5rem;
  position: absolute;
  text-align: center;
  width: 100%;
}
.container-section--alternate .shw-list__show-more {
  background: linear-gradient(to top, #efefef 70%, rgba(255, 255, 255, 0));
}

.leasing-rte--wrapper {
  scroll-margin-top: 100px;
  margin-bottom: 20px;
}
.leasing-rte--wrapper.success--message-wrapper {
  margin-bottom: 10px;
}
.leasing-rte--wrapper.success--message-wrapper .success--message {
  color: green;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  text-transform: uppercase;
}
.leasing-rte--wrapper + section, .leasing-rte--wrapper + div {
  margin-top: 40px;
  padding-top: 0px;
}
.leasing-rte--wrapper + section.container-section--alternate, .leasing-rte--wrapper + div.container-section--alternate {
  margin-top: 0px;
  padding-top: 40px;
}
.leasing-rte--wrapper + section .l-container, .leasing-rte--wrapper + div .l-container {
  margin-top: 0;
  padding-top: 0;
}
.leasing-rte--wrapper.tsr-grp {
  padding-top: 10px;
  padding-bottom: 0;
}
.leasing-rte--wrapper.tsr-grp.container-section--alternate {
  margin-bottom: 0;
  padding-top: 20px;
  padding-bottom: 10px;
}
.leasing-rte--wrapper a {
  text-decoration: underline;
}
.leasing-rte--wrapper a:hover {
  text-decoration: none;
}
.leasing-rte--wrapper strong {
  font-weight: bold;
  /* Non standard for webkit */
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -ms-word-break: break-all;
  -webkit-hyphens: auto;
  hyphens: auto;
  word-break: break-all;
  word-break: break-word;
}
.leasing-rte--wrapper .background-color {
  background-color: #323232;
  padding: 30px 20px;
  color: white;
}
.leasing-rte--wrapper .font-color {
  color: #CD1316;
}
.leasing-rte--wrapper .text-center {
  text-align: center;
}
.leasing-rte--wrapper .text-right {
  text-align: right;
}
.leasing-rte--wrapper .text-left {
  text-align: left;
}

.blog--teaser__wall.tsr-grp {
  padding-bottom: 0;
}
.blog--teaser__wall .category-box__wrapper {
  margin-right: 39.3px;
  margin-bottom: 8px;
}
.blog--teaser__wall .category-box__wrapper .blog-category__box {
  width: 200px;
  height: 100px;
  background: #D0D0D0 0% 0% no-repeat padding-box;
  border: 1px solid #707070;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.blog--teaser__wall .category-box__wrapper .blog-category__box p {
  font: normal normal 600 16px Noto Sans Myanmar;
  letter-spacing: 0px;
  color: #FFFFFF;
  text-transform: uppercase;
  text-align: center;
}
.blog--teaser__wall .category-box__wrapper .blog-category__box.active {
  background: #b3b0b0;
}
.blog--teaser__wall .category-box__wrapper .blog-category__box:hover {
  background: #323232;
}
.blog--teaser__wall .blog--teaser {
  color: #707070;
  font: normal normal normal 22px/26px Sinhala MN;
}
.blog--teaser__wall .blog--teaser .teaser-category {
  text-transform: uppercase;
  margin-right: 10px;
  font: small-caption;
}
.blog--teaser__wall .blog--teaser .tsr__text {
  font: normal normal normal 17px/18px Sinhala MN;
  letter-spacing: 0px;
}
.blog--teaser__wall .blog--teaser .tsr__date {
  font: normal normal normal 12px/26px Noto Sans Myanmar;
}
.blog--teaser__wall .tsr__container img {
  aspect-ratio: 16/9;
  margin-bottom: 15px;
}
.blog--teaser__wall .tsr-solid {
  border: none;
}
.blog--teaser__wall .tsr-solid:hover .tsr__header::after, .blog--teaser__wall .tsr-solid .tsr__header::after, .blog--teaser__wall .tsr-solid:hover .tsr__header::before {
  display: none;
}
.blog--teaser__wall .tsr-solid:hover .blog--teaser, .blog--teaser__wall .tsr-solid .tsr__container {
  background: none;
  background-color: unset;
}

.blog-detail__wrapper {
  color: #707070;
  padding-top: 20px;
}
.blog-detail__wrapper .teaser-category {
  font: normal normal 100 20px/0px Noto Sans Myanmar;
  text-transform: uppercase;
}
.blog-detail__wrapper .blog-title {
  font: normal normal normal 35px/35px Sinhala MN;
}
.blog-detail__wrapper .tsr__date {
  font: normal normal normal 15px/40px Noto Sans Myanmar;
}
.blog-detail__wrapper .pda-form__separator {
  width: 300px;
}
.blog-detail__wrapper .blog-header__wrapper {
  text-align: center;
}

.blog-text__section {
  text-align: center;
}
.blog-text__section .align-right {
  text-align: right;
}
.blog-text__section .align-left {
  text-align: left;
}

.blog--content__wrapper .content-container {
  max-width: 1200px;
}

.tsr-grp--blog-products .tsr__content, .product-cinema--local .tsr__content {
  text-align: center;
}

.stf-main.blog--stf__main {
  min-height: 400px;
}

.blog--stf__external-video {
  display: flex;
  justify-content: center;
  height: 35rem;
  padding-top: 100px;
}
.blog--stf__external-video iframe {
  aspect-ratio: 16/9;
  width: 100% !important;
}
.blog--stf__external-video iframe.ext-content__iframe {
  all: unset;
}

.v3-stage__wrapper {
  padding-bottom: 0;
}
.v3-stage__wrapper .sts-stage .owl-dots {
  display: block;
  position: relative;
  margin-top: -35px;
  margin-right: 20px;
  text-align: center;
}
.v3-stage__wrapper .sts-stage .owl-dots button.owl-dot {
  border: white 1px solid;
}
.v3-stage__wrapper .sts-stage .owl-dots button.owl-dot.active {
  background: white;
}
.v3-stage__wrapper .blog-stage__wrapper .sts-item__body.blog-detail__wrapper {
  width: 100%;
  color: white;
  padding-bottom: 10px;
  padding-left: 0;
  height: auto;
  max-width: unset;
  align-items: center;
  justify-content: center;
}
.v3-stage__wrapper .blog-stage__wrapper .sts-item__body.blog-detail__wrapper .blog-header__wrapper {
  margin-top: auto;
}
.v3-stage__wrapper .blog-stage__wrapper .sts-item__body.blog-detail__wrapper .blog-title {
  font: normal normal normal 34px/0px Sinhala MN;
}
.v3-stage__wrapper .blog-stage__wrapper .sts-item {
  background: linear-gradient(0deg, rgb(2, 0, 36) 0%, rgba(0, 0, 0, 0) 50%);
}

.image-element__wrapper .pge-wall-narrow {
  justify-content: center;
}

.blog--subline__wrapper p {
  padding-bottom: 3rem;
}
section.anchor--menu.container-section--alternate {
  background-color: #ffffff;
}

[tabindex="-1"]:focus-visible {
  outline: 2px solid #CD1316;
}

.tsr-grp--brands-slider.teaser-brands {
  margin-top: 50px;
  margin-bottom: 50px;
  padding-top: 0;
  padding-bottom: 0;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp-brands-slider {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp-brands-slider.owl-init {
  opacity: 1;
  visibility: visible;
}
.tsr-grp--brands-slider.teaser-brands .ttl::before, .tsr-grp--brands-slider.teaser-brands .ttl::after {
  display: none;
}
.tsr-grp--brands-slider.teaser-brands .owl-stage {
  display: flex;
  align-items: flex-start;
  gap: 60px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item {
  pointer-events: none;
}
.tsr-grp--brands-slider.teaser-brands .owl-item:has(a) {
  pointer-events: initial;
}
.tsr-grp--brands-slider.teaser-brands .owl-item:has(a:focus-visible) {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item .fake-col-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
}
.tsr-grp--brands-slider.teaser-brands .owl-item .fake-col-wrapper article:last-child:not(:first-child) {
  position: relative;
  left: 50%;
}
.tsr-grp--brands-slider.teaser-brands .tsr-shop {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 8px;
}
.tsr-grp--brands-slider.teaser-brands .tsr__container {
  width: 130px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame__container {
  position: relative;
  height: 100%;
  width: 100%;
  display: flex;
  left: auto;
  top: auto;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame img, .tsr-grp--brands-slider.teaser-brands .mda-frame__media, .tsr-grp--brands-slider.teaser-brands .tsr__placeholder img {
  position: relative;
}
.tsr-grp--brands-slider.teaser-brands .mda-frame {
  height: auto;
  min-height: auto;
}
.tsr-grp--brands-slider.teaser-brands .tsr__placeholder img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: auto;
}
.tsr-grp--brands-slider.teaser-brands .ttl--section {
  margin-bottom: 24px;
}
.tsr-grp--brands-slider.teaser-brands .ttl__headline {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.2;
  text-transform: none;
}
.tsr-grp--brands-slider.teaser-brands .tsr-grp__lead {
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn {
  position: relative;
  border: 1px solid #8D8DA3;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  background-color: #ffffff;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:focus-visible {
  outline: 2px solid #CD1316;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover {
  background-color: #323232;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover .btn {
  filter: invert(1);
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn {
  width: 24px;
  height: 24px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.visible {
  opacity: 1;
  pointer-events: auto;
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.play {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-play.svg');
}
.tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn .btn.stop {
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-pause.svg');
}
.tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper {
  justify-content: flex-start;
  margin-left: 20px;
}
.tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
  right: 24px;
  left: auto;
  position: absolute;
  z-index: 3;
}
.tsr-grp--brands-slider.teaser-brands .btn-link {
  max-width: 75%;
}
.tsr-grp--brands-slider.teaser-brands .btn-link a:focus-visible {
  outline: 2px solid #CD1316;
}

.shop-detail {
  margin-top: 0;
}
.shop-detail__header {
  background-color: #F7F7FB;
}
.shop-detail__header-inner {
  max-width: 902px;
  margin: 0 auto;
  padding: 64px 20px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
.shop-detail__logo {
  width: 124px;
  height: 124px;
  margin-bottom: 32px;
}
.shop-detail__logo .mda-frame {
  border: none;
  height: 100%;
  min-height: auto;
  position: unset;
}
.shop-detail__logo .mda-frame__container {
  position: unset;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.shop-detail__logo .mda-frame__container img {
  position: unset;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.shop-detail .headline-4 {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.2;
  margin-bottom: 0;
  text-transform: none;
  text-align: left;
  color: #323232;
}
.shop-detail__info {
  flex: 1;
}
.shop-detail__info .headline-4 {
  text-align: center;
  color: #323232;
}
.shop-detail__info-opening-hours {
  display: flex;
  flex-direction: column;
  padding-top: 40px;
}
.shop-detail__info-opening-hours .dtl-opening-hours__title {
  display: none;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column {
  position: unset;
  flex: auto;
  border: none;
  color: #323232;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .opn-list__day {
  font-family: Mulish, sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.5;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .opn-list__hours {
  font-family: Mulish, sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: right;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column p {
  margin: 0;
  padding-bottom: 12px;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .btn--icon {
  font-family: Mulish, sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.5;
  color: #56539F;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .btn--icon .btn__inner {
  display: flex;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .btn--icon .btn__icon {
  display: inline;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .btn--icon .btn__icon svg {
  fill: #999999;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column .btn--icon .btn__label {
  text-decoration: underline;
  display: inline;
  padding-left: 7px;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column--1 {
  order: 2;
  padding-top: 40px;
}
.shop-detail__info-opening-hours .dtl-opening-hours__column--1:not(:last-child) {
  border-top: 1.4px solid rgba(49, 47, 77, 0.2);
}
.shop-detail__info-opening-hours .dtl-opening-hours__column--2 {
  order: 1;
  text-align: center;
  padding-bottom: 28px;
}
.shop-detail__content {
  max-width: 944px;
  margin: 0 auto;
  padding: 64px 20px 32px;
}
.shop-detail__title {
  padding-bottom: 24px;
}
.shop-detail__accordion {
  display: flex;
  flex-direction: column;
}
.shop-detail .accordion-item {
  border-bottom: 1px solid #BFBFBF;
}
.shop-detail .accordion-item__header {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  cursor: pointer;
  margin: 20px 0;
  background: none;
  border: none;
  outline: none;
}
.shop-detail .accordion-item__header:focus-visible {
  outline: 2px solid #CD1316;
  outline-offset: -2px;
}
.shop-detail .accordion-item__header-icon {
  display: none;
}
.shop-detail .accordion-item__title {
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.2;
  text-align: left;
  flex: 1;
  color: #323232;
}
.shop-detail .accordion-item__icon {
  display: flex;
  position: relative;
}
.shop-detail .accordion-item__icon svg.icon-minus {
  display: none;
}
.shop-detail .accordion-item__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  padding: 0 16px 16px;
}
.shop-detail .accordion-item__content p {
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
  margin: 0;
  transition: opacity 0.3s ease 0.1s;
  color: #323232;
}
.shop-detail .accordion-item__content .btn--solid {
  margin-top: 40px;
  text-transform: none;
  padding: 14px 24px;
  display: flex;
  align-items: center;
}
.shop-detail .accordion-item__content .btn--solid:hover {
  background-color: #323232;
  color: #ffffff;
}
.shop-detail .accordion-item.is-open .accordion-item__icon .icon-plus {
  display: none;
}
.shop-detail .accordion-item.is-open .accordion-item__icon .icon-minus {
  display: block;
}
.shop-detail .accordion-item.is-open .accordion-item__content {
  max-height: 1000px;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), padding 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  margin-top: 20px;
}
.shop-detail .accordion-item.is-open .accordion-item__content p {
  opacity: 1;
}
.shop-detail .accordion-item:last-child {
  border-bottom: none;
}
.shop-detail .accordion-item:last-child .accordion-item__header {
  margin-bottom: 0;
}
.shop-detail .accordion-item:first-child .accordion-item__header {
  margin-top: 0;
}

.dtl-description {
  max-width: 944px;
  padding: 64px 20px;
}

.teaser-promotions {
  margin: 100px auto 60px;
  width: 100%;
  position: relative;
}
.teaser-promotions .owl-loaded, .teaser-promotions .owl-init {
  overflow-x: visible;
}
.teaser-promotions .teasers {
  display: flex;
  gap: 2rem;
  justify-content: center;
  max-width: 1200px;
  margin: 0 auto;
  overflow-x: visible;
}
.teaser-promotions .teaser {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #efefef;
  height: 100%;
  margin: 0 8px;
}
.teaser-promotions .teaser .badge {
  position: absolute;
  left: 1.5rem;
  top: 1.5rem;
  background-color: #f8c8bb;
  border-radius: 50px;
  padding: 8px 16px;
  color: #000000;
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.42;
}
.teaser-promotions .teaser .image {
  height: 280px;
  overflow: hidden;
  flex-shrink: 0;
}
.teaser-promotions .teaser .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.teaser-promotions .teaser .content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
}
.teaser-promotions .teaser .content .headline {
  padding-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.2;
}
.teaser-promotions .teaser .content .headline + .cta {
  padding-top: 40px;
}
.teaser-promotions .teaser .content .text {
  padding-bottom: 40px;
  font-family: Mulish, sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.6;
}
.teaser-promotions .teaser .content .cta {
  margin-top: auto;
}
.teaser-promotions .teaser .content .cta .btn--solid {
  width: 100%;
  text-transform: none;
  border-radius: 0;
  background-color: #323232;
  display: inline-block;
  color: #ffffff;
  padding: 11px 20px;
}
.teaser-promotions .teaser .sts-item__link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.teaser-promotions .teaser .sts-item__link:focus-visible .btn {
  outline: 2px solid #CD1316;
}
.teaser-promotions .owl-carousel .owl-stage {
  display: flex;
  align-items: stretch;
}
.teaser-promotions .owl-carousel .owl-stage .owl-item {
  display: flex;
  flex-direction: column;
  margin-bottom: 24px;
}
.teaser-promotions .owl-carousel .owl-nav {
  height: auto;
  overflow: visible;
}
.teaser-promotions .owl-carousel .owl-nav button.owl-next, .teaser-promotions .owl-carousel .owl-nav button.owl-prev {
  filter: none;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 44%;
  z-index: 10;
}
.teaser-promotions .owl-carousel .owl-nav button.owl-next:focus-visible, .teaser-promotions .owl-carousel .owl-nav button.owl-prev:focus-visible {
  outline: 2px solid #CD1316;
}
.teaser-promotions .owl-carousel .owl-nav button.owl-next .arrow-symbol, .teaser-promotions .owl-carousel .owl-nav button.owl-prev .arrow-symbol {
  border: none;
  width: 24px;
  height: 24px;
}
.teaser-promotions .owl-carousel .owl-nav .owl-next {
  right: 0;
}
.teaser-promotions .owl-carousel .owl-nav .owl-prev {
  left: 0;
}
.teaser-promotions .owl-carousel .owl-nav .owl-slider-btn {
  cursor: pointer;
  background: white;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
  border: none;
}
.teaser-promotions .owl-carousel .owl-nav .owl-slider-btn:hover {
  box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.15);
}
.teaser-promotions .owl-carousel .owl-nav .prev-btn .arrow-symbol {
  transform: rotateY(0deg) translateX(2px);
  margin-left: -4px;
}
.teaser-promotions .owl-carousel .owl-nav .next-btn .arrow-symbol {
  transform: rotateY(180deg) translateX(-2px);
  margin-right: 2px;
}
.teaser-promotions .owl-carousel .owl-nav .arrow-symbol {
  display: inline-block;
  background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-rr-angle-small-left.svg');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  border: none;
  width: 24px;
  height: 24px;
}
.teaser-promotions .owl-carousel .owl-dots {
  align-items: center;
}
.teaser-promotions .owl-carousel .owl-dots .owl-dot {
  width: 6px;
  height: 6px;
  background-color: #BCBAC4;
}
.teaser-promotions .owl-carousel .owl-dots .owl-dot.active {
  background-color: #323232;
  width: 10px;
  height: 10px;
}

.teaser-richtext {
  display: flex;
  justify-content: center;
}
.teaser-richtext .wrapper {
  width: 375px;
  padding: 56px 20px;
  display: flex;
  flex-direction: column;
  justify-self: center;
  justify-content: space-between;
  gap: 40px;
}
.teaser-richtext .wrapper.bottom {
  flex-direction: column-reverse;
  gap: 20px;
}
.teaser-richtext .wrapper.top {
  gap: 20px;
}
.teaser-richtext .content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 48px;
}
.teaser-richtext .content .top {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.teaser-richtext .image {
  width: 335px;
  height: 100%;
  overflow: hidden;
}
.teaser-richtext .image img {
  width: 100%;
  height: 366px;
  -o-object-fit: cover;
     object-fit: cover;
}
.teaser-richtext .headline-2 {
  margin: 0;
}
.teaser-richtext .btn-default a:focus-visible {
  outline: 2px solid #CD1316;
}
.teaser-richtext .btn-default .btn__label {
  color: #000000;
  padding: 10px 25px;
}

.teaser-icons {
  padding: 40px 20px;
  max-width: 1216px;
  margin: 0 auto;
  width: 100%;
}
.teaser-icons .teasers {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.teaser-icons .teaser {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}
.teaser-icons .content, .teaser-icons .image {
  padding: 24px;
}
.teaser-icons .image {
  display: flex;
  justify-content: center;
  width: 100%;
  position: relative;
}
.teaser-icons .image:before {
  content: "";
  position: absolute;
  display: block;
  width: 100px;
  height: 100px;
  background: #f7f7fb;
  border-radius: 50%;
}
.teaser-icons .image img {
  width: 90px;
  height: 90px;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  left: 20px;
}
.teaser-icons .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  width: 100%;
  flex: 1;
}
.teaser-icons .content .wrapper {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
.teaser-icons .headline-5 {
  text-align: center;
}
.teaser-icons .text-default {
  text-align: center;
}
.teaser-icons .btn-default {
  width: 100%;
  margin: 0 24px;
}
.teaser-icons .btn-default a:focus-visible {
  outline: 2px solid #CD1316;
}

/*
Stage(s)

sg-wrapper:
<div style="transform: translateX(0);">
	<div class="menu-placeholder" >
		MENU PLACEHOLDER
	</div>
  <sg-wrapper-content/>
</div>

Styleguide 3.1
*/
/*
Dark Site

A message to be displayed in case of emergency, if the center has to be
unexpectedly closed, etc.

It consist of an overlay entirely covering the viewport and a message displayed
in the middle.

markup:
<div class="drk-message"
		data-module="cookie-disclaimer"
		data-cookie-name="dark-site-cookie"
		data-display-delay="0">
	<article class="drk-message__article">
		<h2 class="drk-message__title heading-2">Title</h2>
		<p>
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
		</p>
		<p>
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
			Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
		</p>
		<div class="drk-message__footer">
			<a class="btn btn--light drk-message__button js-accept">
				<span class="btn__label">Button</span>
			</a>
		</div>
	</article>
</div>

sg-wrapper:
<div style="height: 100%; min-height: 800px; transform: translate(0); overflow: hidden;">
	<style>
		.drk-message {
			opacity: 1!important;
			visibility: visible!important;
		}
	</style>
  <sg-wrapper-content/>
</div>

Styleguide 3.18
*/
.drk-message {
  background-color: rgba(0, 0, 0, 0.4);
  display: block;
  height: 100vh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  visibility: hidden;
  width: 100vw;
  z-index: 2147483640;
}
.drk-message.is-displayed {
  opacity: 1;
  visibility: visible;
}
.drk-message__article {
  background-color: hsla(0, 0%, 0%, 0.85);
  box-shadow: 15px 15px 25px hsla(0, 0%, 0%, 0.2);
  color: #ffffff;
  max-height: 100vh;
  overflow: auto;
  padding: 30px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2147483641;
}
.drk-message__article a {
  text-decoration: underline;
}
.drk-message__button {
  background-color: transparent !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
  margin-top: 1rem;
}
.drk-message__button:hover {
  color: hsla(0, 0%, 100%, 0.6) !important;
}
.drk-message__footer {
  text-align: center;
}
.drk-message__title::after {
  background-color: rgba(255, 255, 255, 0.7);
  content: "";
  display: block;
  height: 1px;
  margin-top: 0.5rem;
  width: 100%;
}

/*
Stage Detail

markup: {"url": "https://www.skylineplaza.de/shops/baeren-company", "selector": ".std-stage"}

Styleguide 3.1.3
*/
/*
Breadcrumb

markup:
<ol class="std-breadcrumbs std-head__breadcrumbs">
	<li class="std-breadcrumbs__item">
		<a href=""> Lorem </a>
	</li>
	<li class="std-breadcrumbs__item">
		<a href=""> Lorem </a>
	</li>
	<li class="std-breadcrumbs__item">
		Lorem
	</li>
</ol>

Styleguide 3.1.3.1
*/
/*
Button

markup:
<button type="button" class="icn-detail icn-detail--back std-button">BACK</button>

Styleguide 3.1.3.2
*/
/*
Controls

markup:
<div class="std-controls">
	<sg-insert>3.1.3.2</sg-insert> <!--button-->
	<div class="std-controls__icons">
		<button type="button" class="icn-icon icn-icon--heart">
		<button type="button" class="icn-icon icn-icon--share">
	</div>
</div>

Styleguide 3.1.3.3
*/
/*
Head

markup:
<div class="std-head std-stage__head">
	<sg-insert>3.1.3.1</sg-insert>
	<sg-insert>3.1.3.3</sg-insert>
</div>

Styleguide 3.1.3.4
*/
.std-breadcrumbs {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
  color: rgb(158.1, 158.1, 158.1);
}
.std-breadcrumbs__item {
  display: inline-block;
}
.std-breadcrumbs__item:not(:last-child)::after {
  content: "›";
  display: inline-block;
  padding: 0 0.25rem;
}
html:not(.can-touch) .std-breadcrumbs__item > a:hover {
  color: #CD1316;
  transition: color 0.4s ease;
}
.std-button {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  text-transform: uppercase;
}
.std-button:hover {
  opacity: 0.7;
}
.std-controls {
  color: rgb(178.5, 178.5, 178.5);
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.std-controls__icons {
  display: flex;
  font-size: 2rem;
}
.std-controls__icon {
  cursor: pointer;
  margin-left: 0.5rem;
}
.std-controls__icon:hover {
  opacity: 0.7;
}
.std-controls__icon:focus-visible {
  outline: 2px solid #CD1316;
}
.std-head__breadcrumbs {
  margin-bottom: 1.5rem;
}
.std-head__breadcrumbs li a:focus-visible {
  outline: 2px solid #CD1316;
}
.std-stage {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  min-height: 190px;
  padding-top: 86px;
}
.std-stage.flex {
  display: flex;
}
.std-stage.flex.justify-content-end {
  justify-content: end;
}
.std-stage.flex.justify-content-start {
  justify-content: start;
}
.std-stage.flex.justify-content-center {
  justify-content: center;
}
.std-stage__head {
  margin-bottom: 0.5rem;
}

/*
Social Sharing

Container with a title and icons to share on social media. Here an example with Facebook button (1.1.4-1).
For a more realistic example, see

markup:
<div class="lgn-container lgn-container--small">
	<h3 class="ttl--subsection">Content Section Title H2</h3>
	<div class="std-social__container">
		<ul class="std-social__list">
			<sg-insert class="std-social__item">2.1.46</sg-insert>
			<sg-insert class="std-social__item">2.1.46</sg-insert>
			<sg-insert class="std-social__item">2.1.46</sg-insert>
			<sg-insert class="std-social__item">2.1.46</sg-insert>
			<sg-insert class="std-social__item">2.1.46</sg-insert>
			<sg-insert class="std-social__item">2.1.46</sg-insert>
		</ul>
	</div>
</div>

sg-wrapper:
<style>.lgn-container {background: white} </style>
<div style="background: hsla(0, 0%, 0%, .1); padding: 2rem">
	<sg-wrapper-content/>
</div>

Styleguide 2.1.45
*/
.std-social__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  justify-content: space-evenly;
  list-style: none;
  margin: 0;
  padding: 0;
}
.std-social__item {
  flex-basis: 33%;
  margin-bottom: 2rem;
  padding: 0 0.5rem;
  text-align: center;
}

/*
Social Sharing Icon

deprecated:

markup:
<li class="std-social-icon">
	<sg-insert>1.1.4-1</sg-insert> <!-- btn--facebook -->
	<div class="std-social-icon__title">facebook</div>
</li>

Styleguide 2.1.46
*/
.std-social-icon__title {
  color: #666666;
  margin-top: 0.5rem;
  text-transform: uppercase;
}

/* Atoms */
/*
Stage Carousel

markup: {"url": "https://www.skylineplaza.de", "selector": ".stf-carousel", "update": "false"}

Styleguide 3.1.100
*/
/*
Stage Main

markup:
	<div class="stf-main">
		<sg-insert>3.1.1.1</sg-insert> <!-- stf-carousel -->
	</div>

Styleguide 3.1.1.2
*/
/* ORGANISM */
/*
Stage Fallback

markup: {"url": "https://www.skylineplaza.de", "selector": ".stf-fallback"}

Styleguide 3.1.1
*/
.stf-carousel {
  bottom: 0.5rem;
  left: 50%;
  list-style: none;
  margin: 0;
  max-width: 30rem;
  padding: 0 15px;
  position: absolute !important;
  transform: translateX(-50%);
}
.stf-carousel .owl-nav {
  visibility: hidden;
}
.stf-opening {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 0.75rem;
  background-color: rgba(0, 0, 0, 0.4);
  bottom: 0;
  color: #ffffff;
  display: none;
  padding: 1rem;
  position: absolute;
  width: 100%;
}
.stf-opening.state-opening, .stf-opening.state-closing {
  align-items: center;
  display: flex;
  justify-content: center;
}
.stf-main {
  align-items: flex-end;
  min-height: 320px;
  position: relative;
}
.stf-main__carousel {
  height: 124px;
  opacity: 0;
  transition: opacity 1.5s;
  transition-delay: 0.25s;
  visibility: hidden;
}
.stf-main__carousel--single {
  animation: fade-in 0.75s 0.75s both;
  height: auto;
  visibility: visible;
  width: 100%;
  z-index: 1;
}
.stf-main .owl-dots {
  margin-top: 0.5rem;
  transform: scale(0.75);
}
.stf-main .owl-loaded {
  height: auto;
  opacity: 1;
  visibility: visible;
}
.stf-fallback {
  background-color: #efefef;
  overflow: hidden;
  position: relative;
}
.stf-fallback__background {
  background: linear-gradient(hsla(0, 0, 0, 0.5), hsla(0, 0, 0, 0.5)) no-repeat;
  background-position: center;
  background-size: cover;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.stf-fallback__background img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.stf-fallback--no-slider .stf-fallback__background {
  height: 100%;
}

/*
Stage Teaser

markup:
<article class="sto-teaser sto-container__teaser">
	<h1 class="sto-teaser__title">
		Dolor Sit Amet proin gravida
	</h1>
	<div class="sto-teaser__text">
	Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod
	bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra
	justo commodo. Proin sodales pulvinar tempor.
	</div>
<article>

sg-wrapper:
<div style="background-color: dodgerblue">
	<sg-wrapper-content/>
</div>

Styleguide 3.1.2.1
*/
/*
Stage Overview

markup: {"url": "https://www.skylineplaza.de/gastronomie/alle", "selector": ".sto-stage"}

Styleguide 3.1.2
*/
.sto-background {
  display: block;
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -2;
}
.sto-teaser {
  color: #ffffff;
  text-align: center;
}
.sto-teaser__title {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.2;
  margin: 1.5rem 0;
  text-transform: uppercase;
}
.sto-teaser__title::after {
  background-color: #CD1316;
  content: "";
  display: block;
  height: 0.25rem;
  margin: auto;
  margin-top: 1.5rem;
  width: 7rem;
}
.sto-teaser__text {
  font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.375rem;
}
.sto-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  min-height: 320px;
  padding-bottom: 2.5rem;
  padding-top: 70px;
}
.sto-container.flex {
  display: flex;
}
.sto-container.flex.justify-content-end {
  justify-content: end;
}
.sto-container.flex.justify-content-start {
  justify-content: start;
}
.sto-container.flex.justify-content-center {
  justify-content: center;
}
.sto-stage {
  overflow-x: hidden;
  position: relative;
}
.sto-stage::after {
  background-color: #000000;
  content: "";
  display: block;
  height: 100%;
  opacity: 0.35;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

/*
Stage 404

markup: {"url": "https://www.skylineplaza.de/404", "selector": ".st404"}

Styleguide 3.1.4
*/
.st404 {
  margin-bottom: 1.5rem;
  display: flex;
  min-height: 320px;
  position: relative;
}
.st404__bg-image {
  font-family: "object-fit: cover; object-position: 50% 50%;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  position: absolute;
  width: 100%;
}
.st404__overlay {
  background-color: rgba(0, 0, 0, 0.4);
  min-height: 320px;
  position: relative;
  width: 100%;
  z-index: 1;
}
.st404__content-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  padding-top: 70px;
}
.st404__content-container.flex {
  display: flex;
}
.st404__content-container.flex.justify-content-end {
  justify-content: end;
}
.st404__content-container.flex.justify-content-start {
  justify-content: start;
}
.st404__content-container.flex.justify-content-center {
  justify-content: center;
}
.st404__content {
  /* Non standard for webkit */
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -ms-word-break: break-all;
  -webkit-hyphens: auto;
  hyphens: auto;
  word-break: break-all;
  word-break: break-word;
  color: #ffffff;
  max-width: 602px;
  padding: 3rem 0;
}
.st404__headline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.2;
  margin-bottom: 2rem;
  text-transform: uppercase;
}
.st404__form {
  position: relative;
}
.st404__subheadline {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.2;
  margin-bottom: 3rem;
  text-transform: uppercase;
}

/*
Login screen

markup: {"url": "http://local.aez:8106/login", "selector": ".lgn-container", "update": "true"}

Styleguide 3.19
*/
/*
Login

Deprecated:

markup:
<div class="lgn-login row">
	<div class="lgn-hero col-md-6">
		<div class="lgn-hero__body">
				<h4>Ihre Vorteile</h4>
				<ul class="lgn-list">
				<li class="lgn-list__item">
				<div class="icn--svg lgn-list__icon">
					<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
	 viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
					<g id="filter">
						<path d="M845.333,196.333L595.333,443v420L428.667,696.333v-253.75l-246.25-246.25h-3.75V113h666.667V196.333z"/>
					</g>
					</svg>
				</div>
				Lorem ipsum dolor amet, ubi maior minor cessat, nunc ille sciunt quid faciunt
			</li>
			</ul>
		<section class="btc-bar">
		    <div class="btc-bar__width-adjust">
					<a class="btn btn--light btn--inverse" data-module="login-button" data-for="lgn-register-link">
						<span class="btn__label">Register</span>
					</a>
		    </div>
		</section>
		</div>
		<img class="lgn-hero__background" src="providerece/Resources/Public/src/images/login-bg.jpg">
	</div>
	<div class="lgn-form col-xs-12 col-md-6">
		<h2 class="ttl--subsection lgn-login__title">Login</h2>
		<form class="t3-form spacing-base">
			<p>Loggen Sie sich mit Ihrer E-mail addresse ein</p>
			<!-- input name --> <sg-insert>1.9.2</sg-insert>
			<!-- input password --> <sg-insert>1.9.3</sg-insert>
			<div class="btc-bar btc-bar--space-between">
		    <div class="btc-bar__width-adjust">
					<a class="lgn-link">Password Vergessen?</a>
					<button type="submit" class="btn btn--solid">
						<span class="btn__label">Submit</span>
					</button>
				</div>
			</div>
		</form>
		<sg-insert>3.19.5</sg-insert>
	</div>
</div>

sg-wrapper:
<div class="lgn-container">
	<sg-wrapper-content/>
</div>

Styleguide 3.19.1
*/
/*
Registration

markup: {"url": "http://local.aez:8106/registrierung", "selector": ".lgn-register", "update": "false"}

sg-wrapper:
<div class="lgn-container">
	<sg-wrapper-content/>
</div>

Styleguide 3.19.2
*/
.lgn-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  background: white;
  max-width: 100vw;
  padding: 1.5rem 2.5rem 2.5rem;
  position: relative;
  width: calc(992px - 2 * 25px);
}
.lgn-container.flex {
  display: flex;
}
.lgn-container.flex.justify-content-end {
  justify-content: end;
}
.lgn-container.flex.justify-content-start {
  justify-content: start;
}
.lgn-container.flex.justify-content-center {
  justify-content: center;
}
.lgn-container--small {
  max-width: 100%;
  width: calc(35rem - 2 * 25px);
}
.lgn-hero {
  color: #ffffff;
  display: none;
  position: static;
}
.lgn-hero__background {
  font-family: "object-fit: cover;";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 50%;
}
.lgn-hero__body {
  position: relative;
  z-index: 1;
}
.lgn-link {
  color: #323232;
  cursor: pointer;
  font-weight: bold;
}
.lgn-link:hover {
  color: #CD1316;
}
.lgn-list {
  padding: 0;
}
.lgn-list__item {
  display: flex;
  list-style: none;
  margin-bottom: 1rem;
}
.lgn-list__icon {
  color: hsl(50, 100%, 60%);
  display: inline-block;
  flex: 0 0 2rem;
  height: 1.5rem;
  margin-right: 0.5rem;
}
.lgn-login__title {
  display: none;
  margin-top: 0;
}
.lgn-form .btc-bar {
  flex-direction: row;
}
.lgn-or-separator {
  align-items: center;
  display: flex;
  justify-content: center;
  color: rgba(0, 0, 0, 0.2);
  margin-bottom: 2.5rem;
  margin-top: 3rem;
}
.lgn-or-separator::before, .lgn-or-separator::after {
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
  display: block;
  flex: 1 1 0;
  height: 0;
}
.lgn-or-separator::after {
  height: 1px;
  margin-left: 1rem;
}
.lgn-or-separator::before {
  height: 1px;
  margin-right: 1rem;
}
.lgn-register__form {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.lgn-register .btc-bar {
  margin-top: 2rem;
}
.lgn-register .row {
  width: calc(100% + 30px);
}
.lgn-social {
  text-align: center;
}
.lgn-social__button {
  color: #ffffff;
  display: inline-block;
  margin-right: 0.5rem;
  margin-top: 0.5rem;
  padding: 0.5rem 3rem;
}
.lgn-center {
  top: 50%;
  transform: translateY(-50%) scale(1.1);
}

/*
Templates

sg-wrapper:
<div class="template-wrapper"><sg-wrapper-content/></div>

 Styleguide 4.0
 */
/*
Homepage

markup:
<sg-insert>3.2.1-1</sg-insert> <!-- header portrait -->
<sg-insert>3.1.1</sg-insert> <!-- stage -->
<sg-insert>3.3</sg-insert> <!-- footer -->

Styleguide 4.1
*/
.l-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.l-container.flex {
  display: flex;
}
.l-container.flex.justify-content-end {
  justify-content: end;
}
.l-container.flex.justify-content-start {
  justify-content: start;
}
.l-container.flex.justify-content-center {
  justify-content: center;
}

body > .frame {
  position: relative;
  z-index: 300;
}

.pge-wall-narrow {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  margin-bottom: 1rem;
}
.pge-wall-narrow .pge-wall-narrow__item {
  min-height: 1px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}

.pge-wall {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: -2rem;
}
.pge-wall__headline {
  margin-bottom: 3rem;
}
.pge-wall__item {
  min-height: 1px;
  padding-left: 8px;
  padding-right: 8px;
  position: relative;
  flex: 0 0 100%;
  max-width: 100%;
  display: flex;
  margin-bottom: 2rem;
}
.pge-wall__item .tsr-solid,
.pge-wall__item > * {
  width: 100%;
}
.pge-wall__no-results {
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 2.25rem;
  color: #bdbdbd;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
.pge-wall + .btc-bar {
  margin-top: 1.5rem;
}
.pge-form-container {
  margin-bottom: 5rem;
  margin-top: calc(70px + 3rem);
}

/*
Profil Data

markup: {}

Styleguide 4.13
*/
.pda-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  height: 70px;
  margin-bottom: 2.5rem;
}
.pda-section__heading {
  margin: 0.1rem 0 1.5rem 0;
}
.pda-section--separator-bottom:after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-bottom: 2.4rem;
  padding: 0 15px 2rem 15px;
}
.pda-section--separator-bottom--nm:after {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-bottom: 0;
  padding: 0 15px 2rem 15px;
}
.pda-section--separator-top:before {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-top: 2.4rem;
  padding: 2rem 15px 0 15px;
}
.pda-section--separator-top--nm:before {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  content: " ";
  display: block;
  margin-top: 0;
  padding: 2rem 15px 0 15px;
}
.pda-form__separator {
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  height: 0;
  margin-bottom: 2rem;
  margin-top: 1rem;
}
.pda-form__label--bold {
  font-weight: 600;
}
.pda-form__checkbox-group {
  margin-top: 1rem;
  padding-left: 1.5rem;
}
.pda-form__hint {
  color: rgba(50, 50, 50, 0.65);
  margin-top: 2rem;
  padding-left: 0;
}

.no-pointer {
  cursor: default;
}

.btc-bar--mt-larger {
  margin-top: 1.2rem;
}

.mdl-modal--change-password {
  width: 600px;
}
.mdl-modal--delete-account {
  width: 480px;
}

/*
Newsletter Login with modal

markup:
<section class="nws-registration section-padding">
	<div class="nws-registration__content container">
		<div class="nws-registration__text col-xs-12 col-sm-10 col-md-8 col-lg-6">
			<h3 class="heading-3">Immer auf dem Laufenden bleiben</h3>
			<p>
				Excepturi occaecati illum non. Sit delectus earum enim ut fugiat omnis
				architecto ex. Ea dolor qui debitis sint sed. Beatae doloremque sit
				harum rerum aut harum molestiae earum. Facere libero perferendis quod
				quidem perferendis. Fuga cumque aspernatur rerum in voluptates excepturi
			</p>
			<a class="btn btn--light btn--inverse" href="#"
			data-modal-click="launch"
			data-modal-url="/das-center/login-und-registrierung/"
			data-modal-select-node=".lgn-container"
			data-module="modal">show modal
			</a>
	</div>
	<sg-insert class="nws-registration__bg">1.2.3-7</sg-insert>
</section>
<!-- modal -->
<div class="mdl-modal mdl-modal--central" id="mdl-modal-central">
    <div class="mdl-modal__outer">
        <div class="mdl-modal__vertical mdl-modal__backdrop">
            <div class="mdl-modal__horizontal">
                <div class="mdl-modal__pane">
                    <div class="mdl-modal__inner">
                        <a class="mdl-modal__btn--close" href="">
                            <span data-modal-click="hide">&#10005;</span>
                        </a>
                        <!-- spinner -->
                        <div class="mdl-modal__spinner hidden">
                            <svg class="icn-icon icn-spinner" viewbox="0 0 70 70">
                                <circle r="30" cx="35" cy="35"/>
                            </svg>
                        </div>
                        <!-- // spinner -->
                        <div class="mdl-modal__container"></div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- // -->
<div class="mdl-overlay" id="mdl-overlay">
    <div class="mdl-overlay__inner">
        <div class="spinner hidden">
            <svg class="icn-icon icn-spinner" viewbox="0 0 70 70">
                <circle r="30" cx="35" cy="35"/>
            </svg>
        </div>
    </div>
</div>

Styleguide 4.11
*/
/*
Newsletter Login with modal

markup:
<section class="nws-registration section-padding">
	<div class="nws-registration__content container">
		<div class="nws-registration__text col-xs-12 col-sm-10 col-md-8 col-lg-6">
			<h3 class="heading-3">Immer auf dem Laufenden bleiben</h3>
			<p>
				Excepturi occaecati illum non. Sit delectus earum enim ut fugiat omnis
				architecto ex. Ea dolor qui debitis sint sed. Beatae doloremque sit
				harum rerum aut harum molestiae earum. Facere libero perferendis quod
				quidem perferendis. Fuga cumque aspernatur rerum in voluptates excepturi
			</p>
			<a class="btn btn--light btn--inverse" href="#"
			data-modal-click="launch"
			data-modal-url="/das-center/login-und-registrierung/"
			data-modal-select-node=".lgn-container"
			data-module="modal">show modal
			</a>
	</div>
	<sg-insert class="nws-registration__bg">1.2.3-7</sg-insert>
</section>
<!-- modal -->
<div class="mdl-modal mdl-modal--central" id="mdl-modal-central">
    <div class="mdl-modal__outer">
        <div class="mdl-modal__vertical mdl-modal__backdrop">
            <div class="mdl-modal__horizontal">
                <div class="mdl-modal__pane">
                    <div class="mdl-modal__inner">
                        <a class="mdl-modal__btn--close" href="">
                            <span data-modal-click="hide">&#10005;</span>
                        </a>
                        <!-- spinner -->
                        <div class="mdl-modal__spinner hidden">
                            <svg class="icn-icon icn-spinner" viewbox="0 0 70 70">
                                <circle r="30" cx="35" cy="35"/>
                            </svg>
                        </div>
                        <!-- // spinner -->
                        <div class="mdl-modal__container"></div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- // -->
<div class="mdl-overlay" id="mdl-overlay">
    <div class="mdl-overlay__inner">
        <div class="spinner hidden">
            <svg class="icn-icon icn-spinner" viewbox="0 0 70 70">
                <circle r="30" cx="35" cy="35"/>
            </svg>
        </div>
    </div>
</div>

Styleguide 4.11

*/
.container {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-fluid {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-lg {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-md {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-sm {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-xl {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.container-xxl {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-top: 0;
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}
/*
Plugins

Styleguide plugin
*/
/*
Grid

TODO
// Mimics bootstrap grid

Styleguide plugin.grid
*/
.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}
.row [class*=col-] {
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}

.col-xs-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-xs-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-xs-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-xs-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-xs-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-xs-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-xs-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-xs-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-xs-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-xs-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-xs-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-xs-12 {
  flex: 0 0 100%;
  max-width: 100%;
}
.content-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.content-container.flex {
  display: flex;
}
.content-container.flex.justify-content-end {
  justify-content: end;
}
.content-container.flex.justify-content-start {
  justify-content: start;
}
.content-container.flex.justify-content-center {
  justify-content: center;
}

.container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 1200px;
}
.container.flex {
  display: flex;
}
.container.flex.justify-content-end {
  justify-content: end;
}
.container.flex.justify-content-start {
  justify-content: start;
}
.container.flex.justify-content-center {
  justify-content: center;
}

/*
Two Column Grid Component

Deprecated:

Used on content pages

markup:
<div class="two-col-grid">
    <div class="row">
        <div class="col-xs-12 col-sm-6">
            <sg-insert>3.7.7</sg-insert> <!-- stuff with content container styling -->
        </div>
        <div class="col-xs-12 col-sm-6">
            <sg-insert>3.7.7</sg-insert> <!-- stuff with content container styling -->
        </div>
    </div>
</div>

Styleguide 1.8.1
*/
.two-col-grid {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  max-width: 768px;
}
.two-col-grid.flex {
  display: flex;
}
.two-col-grid.flex.justify-content-end {
  justify-content: end;
}
.two-col-grid.flex.justify-content-start {
  justify-content: start;
}
.two-col-grid.flex.justify-content-center {
  justify-content: center;
}
.two-col-grid .tme-content {
  padding: 0;
}

/* Communication groups */
.ttl {
  align-items: center;
  display: flex;
  justify-content: center;
}
.ttl::before, .ttl::after {
  background-color: rgba(0, 0, 0, 0.15);
  content: "";
  display: block;
  flex: 1 1 0;
  height: 0;
}

.stf-fallback {
  padding-bottom: 3.75rem;
}
.stf-opening {
  height: 3.75rem;
}
.stf-carousel .owl-nav {
  height: 0;
}

.opn-opening {
  text-transform: uppercase;
}
.opn-opening__time {
  font-size: 2em;
  margin-left: 0.25rem;
  margin-right: 0.125rem;
}
.opn-text {
  display: inline;
}

.tsr-full-width .owl-prev {
  left: 1rem;
}
.tsr-full-width .owl-next {
  right: 1rem;
}

.tsr__header {
  position: relative;
}
.tsr__header::before {
  background-color: #323232;
  bottom: -2px;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  right: calc(100% - 5rem);
  visibility: hidden;
  width: 0%;
}
.tsr__header::after {
  background-color: #CD1316;
  content: "";
  display: block;
  height: 2px;
  margin-bottom: 0.75rem;
  margin-top: 0.75rem;
  width: 5rem;
}

html:not(.can-touch) .tsr-solid:hover .tsr__header {
  border-right-color: #323232;
}
html:not(.can-touch) .tsr-solid:hover .tsr__header::after {
  background-color: #323232;
  transition: 0.25s ease;
  width: 0%;
}
html:not(.can-touch) .tsr-solid:hover .tsr__header::before {
  transition: 0.25s ease;
  transition-delay: 0.23s;
  visibility: visible;
  width: 5rem;
}
html:not(.can-touch) .tsr-solid:hover .tsr__content {
  background-color: #CD1316;
  border-color: #CD1316;
  color: #323232;
}
html:not(.can-touch) .tsr-solid:hover .tsr__category {
  background-color: #ffffff;
  color: #000000;
}
html:not(.can-touch) .tsr-solid:has(a:focus-visible) {
  outline: 2px solid #CD1316;
}
html:not(.can-touch) .tsr-solid--product:hover .tsr__content, html:not(.can-touch) .tsr-solid--product:focus-visible .tsr__content {
  background-color: white;
}
.tsr-solid--news .tsr__header::after {
  background-color: #CD1316;
}
.tsr-solid--news .tsr__header::before {
  background-color: #323232;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__author {
  color: #333333;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__category {
  color: #323232;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__content {
  background-color: #CD1316;
  color: #333333;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__date {
  color: #333333;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__header {
  border-right-color: #333333;
}
html:not(.can-touch) .tsr-solid--news:hover .tsr__header::after {
  background-color: #323232;
}

.tsr-transparent--event .tsr__header {
  position: relative;
}
.tsr-transparent--event .tsr__header::after {
  background-color: #CD1316;
}
.tsr-transparent--event .tsr__header::before {
  background-color: #323232;
}
html:not(.can-touch) .tsr-transparent--event:hover .tsr__container {
  background-color: #CD1316;
}
html:not(.can-touch) .tsr-transparent--event:hover .tsr__content {
  background-color: rgba(205, 19, 22, 0.9);
  color: #323232;
}
html:not(.can-touch) .tsr-transparent--event:hover .tsr__media {
  filter: brightness(85%);
}
html:not(.can-touch) .tsr-transparent--event:hover .tsr__header::after {
  background-color: #323232;
  transition: 0.25s ease;
  width: 0%;
}
html:not(.can-touch) .tsr-transparent--event:hover .tsr__header::before {
  transition: 0.25s ease;
  transition-delay: 0.23s;
  visibility: visible;
  width: 5rem;
}

/* End Communication Group 1 */

@media (min-width: 300px) and (max-width: 700px) {
  .leasing-grid__wrapper .teaser-content {
    height: 275px;
  }
}

@media (min-width: 360px) and (max-width: 380px) {
  .sts-stage-teaser .owl-carousel .owl-nav {
    top: 45%;
  }
  .sts-stage-teaser {
    top: 45%;
  }
}

@media (min-width: 380px) and (max-width: 390px) {
  .sts-stage-teaser .owl-carousel .owl-nav {
    top: 47%;
  }
  .sts-stage-teaser {
    top: 47%;
  }
}

@media (min-width: 480px) {
  .btn-default, .btn-link {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
    right: 40px;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
    right: 40px;
  }
  .teaser-icons .btn-default {
    width: auto;
  }
}

@media screen and (min-width: 575px) {
  #leasing-sidebar .leasing-form__wrapper .mdl-modal__btn--close {
    right: -26.5rem;
    top: 1.5rem;
  }
}

@media (min-width: 576px) {
  .container {
    max-width: 760px;
  }
  .container-sm {
    max-width: 760px;
  }
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}

@media screen and (min-width: 700px) {
  .leasing-grid__wrapper .row {
    margin-left: 5px;
  }
  .leasing-grid__wrapper .btn--solid {
    position: absolute;
    bottom: 10px;
  }
}

@media (min-width: 701px) and (max-width: 860px) {
  .leasing-grid__wrapper .teaser-content {
    height: 430px;
  }
}

@media (min-width: 701px) and (max-width: 800px) {
  .leasing-grid__wrapper .teaser-content {
    height: 370px;
  }
}

@media (min-width: 767px) {
  body {
    overflow-x: unset;
  }
}

@media (min-width: 768px) {
  .section-padding {
    padding-top: 3rem;
  }
  .section-padding {
    padding-bottom: 3rem;
  }
  .section-margin {
    margin-top: 3rem;
  }
  .section-margin {
    margin-bottom: 3rem;
  }
  .section-padding {
    padding-top: 3rem;
  }
  .section-padding {
    padding-bottom: 3rem;
  }
  .section-padding-asymmetric {
    padding-top: 3rem;
  }
  .section-padding-asymmetric {
    padding-bottom: 4.5rem;
  }
  .spacing-responsive-inc {
    margin-bottom: 4.5rem;
  }
  .spacing-responsive-base {
    margin-bottom: 3rem;
  }
  .section-separator-bottom:after {
    padding: 0 15px 2rem 15px;
  }
  .section-separator-bottom--nm:after {
    padding: 0 15px 2rem 15px;
  }
  .section-separator-top:before {
    padding: 2rem 15px 0 15px;
  }
  .section-separator-top--nm:before {
    padding: 2rem 15px 0 15px;
  }
  .web-view [data-web-view=hide-desktop] {
    display: none !important;
  }
  .web-view [data-web-view=hide-mobile] {
    display: block !important;
  }
  #css-viewport-width {
    font-family: "min-width:768px";
  }
  #css-viewport-width-code {
    font-family: "sm";
  }
  .hidden-sm-up {
    display: none !important;
  }
  .col-sm-1 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-sm-2 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-3 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-sm-5 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-sm-6 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-sm-8 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-sm-9 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-sm-11 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .btn-default.hover-color:hover, .btn-link.hover-color:hover {
    border-color: unset;
    background-color: #323232;
    color: #ffffff;
    text-decoration: none;
  }
  .btn--solid.btn--secondary:hover {
    background-color: #ffffff;
    color: #CD1316;
    border-color: #CD1316;
  }
  .btn--solid {
    width: -moz-fit-content;
    width: fit-content;
  }
  .btn--solid:hover {
    background-color: #ffffff;
    color: #323232;
    border-color: #323232;
  }
  .headline-2 {
    font-family: Mulish, sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.2;
  }
  .opn-opening__time {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
  }
  .inp-search--default .inp-search__input {
    padding-left: 1rem;
  }
  .ttl--page .ttl__headline {
    border-top: none;
    padding-top: 0;
    width: auto;
  }
  .ttl--section {
    margin-bottom: 3rem;
  }
  .ttl--section::before, .ttl--section::after {
    height: 3px;
  }
  .dtl__page-title {
    margin-bottom: 4.5rem;
  }
  .tme {
    margin-bottom: 3rem;
  }
  .tme-deflist {
    display: table;
    width: 100%;
  }
  .tme-deflist__item {
    display: table-row;
  }
  .tme-deflist__dt {
    display: table-cell;
  }
  .tme-deflist_dd {
    display: table-cell;
  }
  .center-plan .mapplic-search-input {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
  }
  .center-plan .mapplic-levels {
    transform: scale(1);
  }
  .center-plan .mapplic-levels-select {
    font-size: 13px;
  }
  .ext-content {
    margin-top: 3rem;
  }
  .ext-content {
    margin-bottom: 3rem;
  }
  .ext-content .cmplazypreviewiframe .cmplazybtnlink {
    margin-top: 102px;
  }
  .rbb-ribbon {
    height: auto;
    margin-bottom: 0.5rem;
    margin-left: 0.5rem;
    margin-top: -1rem;
    width: 5rem;
  }
  .rbb-ribbon::before {
    border-color: transparent;
    border-bottom-color: rgb(102.5, 102.5, 102.5);
    border-style: solid;
    border-width: 0 0.5rem 1rem 0.5rem;
    content: "";
    display: block;
    height: 0;
    left: -0.5rem;
    position: absolute;
    top: 0;
    width: 0;
  }
  .rbb-ribbon__content {
    height: 100%;
    padding-bottom: 0.5rem;
    position: relative;
    text-align: center;
    z-index: 1;
  }
  .rbb-ribbon__end {
    height: 1rem;
    left: 0;
    top: 100%;
    width: 100%;
  }
  .rbb-ribbon__end::before, .rbb-ribbon__end::after {
    border-style: solid;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: -1rem;
    width: 0;
  }
  .rbb-ribbon__end::before {
    border-color: transparent;
    border-left-color: #808080;
    border-width: 16px 0 16px 40px;
    left: 0;
  }
  .rbb-ribbon__end::after {
    border-color: transparent;
    border-right-color: #808080;
    border-width: 16px 40px 16px 0;
    left: auto;
    right: 0;
  }
  .rbb-ribbon.rbb-ribbon--primary::before {
    border-bottom-color: rgb(24.5, 24.5, 24.5);
  }
  .rbb-ribbon.rbb-ribbon--primary .rbb-ribbon__end::before {
    border-color: transparent;
    border-left-color: #323232;
  }
  .rbb-ribbon.rbb-ribbon--primary .rbb-ribbon__end::after {
    border-color: transparent;
    border-right-color: #323232;
  }
  .rbb-ribbon.rbb-ribbon--secondary::before {
    border-bottom-color: rgb(158.3258928571, 14.6741071429, 16.9910714286);
  }
  .rbb-ribbon.rbb-ribbon--secondary .rbb-ribbon__end::before {
    border-color: transparent;
    border-left-color: #CD1316;
  }
  .rbb-ribbon.rbb-ribbon--secondary .rbb-ribbon__end::after {
    border-color: transparent;
    border-right-color: #CD1316;
  }
  .tbl-table {
    margin-top: 3rem;
  }
  .tbl-table {
    margin-bottom: 3rem;
  }
  .tbl-table td, .tbl-table th {
    padding: 0.5rem 0.75rem;
    text-align: left;
  }
  .fltr-menu {
    margin-bottom: 3rem;
  }
  .fltr-container-list {
    display: block;
  }
  .fltr-dropdown {
    display: none;
  }
  .fltr-submenu {
    margin-bottom: 3rem;
  }
  .fltr-submenu__list {
    display: flex;
    padding-top: 1.25rem;
  }
  .fltr-submenu__dropdown {
    display: none;
  }
  .ftsh-container {
    align-items: flex-start;
    flex-direction: row;
  }
  .ftsh-container--inpage {
    align-items: center;
  }
  .ftsh-control {
    margin-left: 1rem;
    max-width: 20rem;
  }
  .ftsh-controls {
    display: flex;
    flex: 1 1 0px;
    flex-wrap: wrap;
  }
  .ftsh-control__search {
    margin-bottom: 1rem;
    width: 100%;
  }
  .ftsh-control__dropdown {
    flex: 1 1 0px;
  }
  .ftsh-label {
    margin: 0;
  }
  .ftsh-ribbons {
    display: flex;
    margin-left: 1rem;
  }
  .ftsh-ribbon {
    margin: -1rem 0.5rem 0;
    min-height: 4.25rem;
  }
  .tsr-stage {
    max-height: 255px;
  }
  .tsr-stage__content {
    padding: 1.25rem 1.25rem 3.5rem 1.25rem;
  }
  .tsr-stage__header {
    margin-bottom: 0;
  }
  .tsr-stage__media {
    flex-basis: 255px;
  }
  .tsr-transparent {
    height: auto;
    min-height: 400px;
  }
  .tss {
    height: 200px;
  }
  .btc-bar__width-adjust {
    flex-direction: row;
  }
  .btc-bar .btn {
    margin: 0 1rem;
  }
  .btc-bar .btn:first-child {
    margin-left: 0;
  }
  .btc-bar .btn:last-child {
    margin-right: 0;
  }
  .btc-bar__text {
    max-width: 50%;
  }
  .btc-bar__text:first-child {
    margin: 0;
    margin-right: 2rem;
  }
  .btc-bar__text:last-child {
    margin: 0;
    margin-left: 2rem;
  }
  .btc-bar--space-between .btc-bar__width-adjust {
    justify-content: space-between;
    width: 100%;
  }
  .btncmp-round-label {
    margin: 0 1.5rem;
    overflow: visible;
  }
  .btncmp-round-label__label {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 0.75rem;
    color: #727272;
    display: block;
    margin-top: 0.25rem;
    max-width: 6rem;
    overflow: hidden;
    padding: 0 0.25rem;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }
  html:not(.can-touch) .btncmp-round-label:hover .btncmp-round-label__label {
    color: #323232;
  }
  .cookie-disclaimer__container {
    flex-direction: row;
  }
  .cookie-disclaimer .btn {
    margin-left: auto;
    margin-top: 0;
  }
  .cookie-disclaimer .btn {
    align-self: flex-end;
  }
  .cookie-disclaimer__hint {
    margin-right: 1.5rem;
  }
  .msg-message {
    margin-bottom: 3rem;
  }
  .acc-accordion--active .acc-accordion__body {
    margin-bottom: 3rem;
  }
  .acc-section--no-js .acc-accordion__title:focus ~ .acc-accordion__body,
  .acc-section--no-js .acc-accordion__body:focus,
  .acc-section--no-js .acc-accordion__body:focus-within {
    margin-bottom: 3rem;
  }
  .faq-acc--active .faq-acc__body {
    margin-bottom: 3rem;
  }
  .container-section {
    padding-top: 3rem;
  }
  .container-section {
    padding-bottom: 4.5rem;
  }
  .container-section__header {
    margin-bottom: 3rem;
  }
  .container-section__subtitle {
    margin-bottom: 3rem;
  }
  .container-section__subtitle {
    margin-top: 3rem;
  }
  .container-section .container-section__content {
    margin-bottom: -3rem;
  }
  .container-section .container-section__content {
    margin-top: -3rem;
  }
  .container-section .container-section__content > * {
    margin-bottom: 3rem;
  }
  .container-section .container-section__content > * {
    margin-top: 3rem;
  }
  .ftr-nav--list {
    display: flex;
  }
  .ftr-nav--list > li {
    border-bottom: 0;
  }
  .ftr-aside__container {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  .ftr-aside__footer {
    flex: 1 0 90%;
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
  .ftr-aside__lang {
    margin: 0 12rem 0 0;
  }
  .ftr-aside__highlight {
    justify-content: flex-end;
    order: 1;
    width: 100%;
  }
  .ftr-aside__legal {
    justify-content: flex-start;
    order: 2;
  }
  .ftr-contacts {
    padding-top: 3rem;
  }
  .ftr-contacts {
    padding-bottom: 3rem;
  }
  .ftr-contacts__article {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .ftr-contacts--three .ftr-contacts__article:last-child {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .ftr-social {
    padding-top: 3rem;
  }
  .ftr-social {
    padding-bottom: 3rem;
  }
  .ftr-social__title {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.5rem;
  }
  .ftr-social__title {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
    margin-bottom: 0;
  }
  .ftr-social__btn-container {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
    justify-content: flex-end;
  }
  .glr-images {
    margin-bottom: 1rem;
  }
  .glr-images__image {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .glr--mall .glr-images__image {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .dir-controls {
    border: 1px solid rgba(0, 0, 0, 0.2);
  }
  .dir-map__spinner {
    font-size: 2.5rem;
    left: calc(50% - 1.25rem);
    top: calc(50% - 1.25rem);
  }
  .dir-map {
    padding-bottom: 670px;
  }
  .dir-map__controls {
    left: 2.5rem;
    max-height: calc(100% - 2 * 2.5rem);
    max-width: 45%;
    position: absolute;
    top: 2.5rem;
    width: 320px;
    z-index: 1;
  }
  .dir-map__chart-wrapper {
    height: 670px;
  }
  .dir-map__panel {
    max-height: 350px;
    overflow-y: scroll;
  }
  .dir-button__icon {
    height: 100px;
    margin-bottom: 0.5rem;
    padding: 5%;
    width: 100px;
  }
  .dir-button__icon::before {
    font-size: 4rem;
    line-height: 100px;
  }
  .dir-button__label {
    display: block;
  }
  .dir-bar__item {
    padding: 0 25px;
  }
  .dir-bar__item--active {
    border-bottom: 4px solid #323232;
  }
  .dir-description .btc-bar {
    margin-bottom: 3rem;
  }
  .dir-directions {
    padding-top: 3rem;
  }
  .search-active .srv-header {
    display: block;
  }
  .srv-wall__item {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .srv-search {
    max-width: 300px;
  }
  .dtl-description {
    margin-bottom: 4.5rem;
  }
  .dtl-description__lead {
    margin-bottom: 3rem;
  }
  .dtl-title__subtitle:nth-child(3) {
    border-left: 1px solid rgba(0, 0, 0, 0.2);
    display: inline;
    padding-left: 1rem;
  }
  .dtl-stage-image {
    margin-bottom: 2.5rem;
  }
  .dtl-stage-video {
    margin-bottom: 2.5rem;
  }
  .dtl-info__col-1 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .dtl-info__col-2 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .dtl-info__col-2:first-child {
    flex-grow: 1;
    max-width: none;
  }
  .dtl-info--3-cols .dtl-info__col-1, .dtl-info--3-cols .dtl-info__col-2 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .dtl-info--3-cols .dtl-info__col-3 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
  }
  .dtl-opening-hours {
    display: flex;
    flex-wrap: wrap;
  }
  .dtl-opening-hours__title {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .dtl-opening-hours__column {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .dtl-opening-hours--2-cols .dtl-opening-hours__column--1 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .dtl-opening-hours--2-cols .dtl-opening-hours__column--2 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .dtl-opening-hours--2-cols .dtl-opening-hours__column > *:first-child {
    margin-top: 0;
  }
  .dtl__service-icon {
    margin-bottom: 3rem;
  }
  .dtl__service-icon {
    height: 120px;
    width: 120px;
  }
  .dtl-map {
    margin-top: 3rem;
  }
  .dtl-map {
    margin-bottom: 3rem;
  }
  .dtl-map__spinner {
    font-size: 2.5rem;
    left: calc(50% - 1.25rem);
    top: calc(50% - 1.25rem);
  }
  .dtl__section {
    margin-bottom: 4.5rem;
  }
  .dtl-ical {
    display: none;
  }
  .dtl-ical--sm-up {
    display: block;
    float: right;
    top: -6px;
  }
  .dtl-ical a {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
    font-size: 0.8rem;
  }
  .qln__buttons {
    padding-bottom: 30px;
    padding-top: 30px;
  }
  .qln .btncmp-round-label {
    margin: 0 3rem;
  }
  .qln .btncmp-round-label__label {
    max-width: 9rem;
  }
  .qln__flyout__container {
    display: flex;
  }
  .qln__flyout__section {
    border-right: 1px solid #ffffff;
    padding: 0 30px;
    width: 33.333%;
  }
  .qln__flyout__section:last-child {
    border-right: none;
    margin-top: 0;
  }
  .qln .opening-wrapper {
    display: flex;
    flex-direction: column;
    width: 33%;
    border-right: 1px solid;
  }
  .qln .opening-wrapper .qln__flyout__section.opn-list {
    width: 100%;
  }
  .qln .opening-wrapper h3 {
    margin-left: 15px;
  }
  .qln .opening-wrapper .qln__flyout__section:last-child {
    margin-top: 0;
  }
  .qln .opening-wrapper .opening h3 {
    padding-top: 20px;
  }
  .qln .opening-wrapper .opening h3.padding-top-0 {
    padding-top: 0;
  }
  .qln .opening-wrapper .opn-opening.qln__flyout__section.qln__flyout__section--countdown.state-closing {
    padding-top: 20px;
  }
  .qln .opening-wrapper .foodcourt dl {
    padding-left: 30px;
    padding-right: 30px;
  }
  .content-switch {
    padding-top: 3rem;
  }
  .content-switch {
    padding-bottom: 3rem;
  }
  .content-switch__label {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1rem;
    border: 1px solid #bdbdbd;
    color: #bdbdbd;
    display: block;
    float: left;
    padding: 0.25em 1em;
    text-transform: uppercase;
  }
  .content-switch__label--inner {
    display: none;
  }
  .content-switch__content-wrapper {
    height: 0;
    overflow: hidden;
  }
  .content-switch__content {
    height: auto;
  }
  .content-tabs__content {
    padding-top: 3rem;
  }
  .tsr-grp {
    padding-top: 3rem;
  }
  .tsr-grp {
    padding-bottom: 4.5rem;
  }
  .tsr-grp--brands-slider .btn-controls-wrapper .carousel-controls {
    left: 12%;
  }
  .tsr-grp__lead {
    margin-bottom: 3rem;
  }
  .tsr-grp__teaser {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .tsr-grp .btc-bar {
    margin-top: 4.5rem;
  }
  .tsr-grp--combi .tsr-grp__teaser {
    margin-bottom: 0;
  }
  .tsr-grp--combi .tsr-grp__teaser--columns-3 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .tsr-grp--combi .tsr-grp__teaser:nth-of-type(3) {
    display: none;
  }
  .tsr-grp--shops .tsr-grp__teaser,
  .tsr-grp--shops .pge-wall__item {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .tsr-grp--category .owl-dots {
    margin-bottom: -2.625rem;
    margin-top: 1.875rem;
  }
  .tsr-grp--category .btc-bar {
    margin-top: 4.5rem;
  }
  .tsr-grp--wide .tsr-grp__teaser {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .tsr-grp--brands-slider.teaser-brands .ttl--section {
    margin-bottom: 32px;
  }
  .tsr-grp--brands-slider.teaser-brands .ttl__headline {
    font-family: Mulish, sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.2;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
    right: 112px;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper {
    justify-content: center;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-link {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .tsr-grp--brands-slider.teaser-brands {
    margin-top: 112px;
    margin-bottom: 112px;
  }
  .src-result-page .btc-bar {
    padding-top: 3rem;
  }
  .src-result-page .btc-bar {
    padding-bottom: 3rem;
  }
  .t3-form .general-response {
    margin-bottom: 3rem;
  }
  .t3-form .hint {
    margin-top: 3rem;
  }
  .marketing-automation__form.t3-form .btc-bar__width-adjust {
    justify-content: end;
  }
  .marketing-automation__form.t3-form .btn--solid {
    padding: 0.5rem 1.25rem;
  }
  .marketing-automation__form.t3-form input[type=email].form-control {
    width: 50%;
  }
  .cpn-detail .col-xs-12:nth-child(2) {
    margin-top: 0;
  }
  .cpn-detail .btc-bar {
    align-items: center;
  }
  .cpn-detail__message {
    margin-bottom: 3rem;
  }
  .cpn-redeem .btc-bar {
    align-items: center;
  }
  .cpn-redeem__message {
    margin-bottom: 3rem;
  }
  .sts-item__body {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    height: auto;
    justify-content: center;
    max-width: 768px;
    min-height: 25rem;
    padding: 100px 2rem;
  }
  .sts-item__headline, .sts-item__text {
    max-width: 768px;
  }
  .sts-item__media {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: -1;
  }
  .sts-item__play {
    display: none;
  }
  .sts-item--inverted {
    color: white;
    position: relative;
  }
  .sts-item--inverted .sts-item__media::after {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.45) 20%, rgba(0, 0, 0, 0) 100%);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
  .sts-item--inverted .sts-item__headline {
    text-shadow: 0 0 20px hsla(0, 0%, 0%, 0.5);
  }
  .sts-item--inverted .sts-item__text {
    text-shadow: 0 0 20px hsla(0, 0%, 0%, 0.5);
  }
  .sts-stage__container.align-left .sts-item {
    display: flex;
    justify-content: left;
  }
  .sts-stage__container.align-center .sts-item {
    display: flex;
    justify-content: center;
  }
  .sts-stage__container.align-center .sts-item .sts-item__body {
    align-items: center;
    padding-inline: 2rem;
  }
  .sts-stage__container.align-right .sts-item {
    display: flex;
    justify-content: right;
  }
  .sts-stage__container.align-right .sts-item .sts-item__body {
    align-items: flex-end;
    padding-right: 4rem;
  }
  .sts-stage {
    border-bottom: 0;
    margin-top: 0;
  }
  .sts-stage .owl-dots {
    display: none;
  }
  .sts-stage__container .stf-opening {
    position: static;
  }
  .sts-stage .owl-nav {
    top: calc(50% - 24px);
  }
  .sts-stage .sts-item__body {
    padding: 100px 5rem;
    margin-left: 20px;
  }
  .sts-stage-teaser .sts-item__media {
    flex: 0 0 60%;
    max-width: 60%;
    height: 565px;
    max-height: 100%;
    aspect-ratio: auto;
  }
  .sts-stage-teaser .sts-item__body .btn--solid.btn--secondary:hover {
    background-color: #ffffff;
    color: #CD1316;
    border-color: #CD1316;
  }
  .sts-stage-teaser .sts-item__body .btn--solid {
    bottom: 128px;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left;
  }
  .sts-stage-teaser .sts-item__body .btn--solid:hover {
    background-color: #ffffff;
    color: #323232;
    border-color: #323232;
  }
  .sts-stage-teaser .sts-item__body {
    flex: 0 0 40%;
    max-width: 40%;
    margin-top: 56px;
    margin-right: -60px;
    max-height: 100%;
    height: 565px;
    padding: 60px 80px 110px 30px;
  }
  .sts-stage-teaser .sts-item__body--inner {
    max-height: 290px;
  }
  .sts-stage-teaser .sts-item__text {
    margin-bottom: 3rem;
  }
  .sts-stage-teaser .sts-item {
    display: flex;
    flex-direction: row-reverse;
    align-items: stretch;
    position: relative;
  }
  .sts-stage-teaser .owl-carousel .owl-nav {
    bottom: 40px;
    top: auto;
    left: 87px;
  }
  .sts-stage-teaser {
    border-bottom: 0;
    margin-top: 136px;
  }
  .usp-box__col {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .location-plan--wrapper .lct-container__map {
    flex: 0 0 50%;
    max-width: 50%;
    order: 1;
  }
  .location-plan--wrapper .lct-container__text {
    flex: 0 0 50%;
    max-width: 50%;
    order: 2;
  }
  .location-plan--wrapper .lct-container__map.t-left {
    flex: 0 0 50%;
    max-width: 50%;
    order: 2;
  }
  .location-plan--wrapper .lct-container__map.t-right {
    flex: 0 0 50%;
    max-width: 50%;
    order: 1;
  }
  .location-plan--wrapper .lct-container__map.t-one {
    flex: 0 0 100%;
    max-width: 100%;
    max-width: 65%;
    flex: 0 0 80%;
    margin: 0 auto;
    order: 1;
    margin-bottom: 30px;
  }
  .location-plan--wrapper .lct-container__text.t-left {
    flex: 0 0 50%;
    max-width: 50%;
    order: 1;
  }
  .location-plan--wrapper .lct-container__text.t-right {
    flex: 0 0 50%;
    max-width: 50%;
    order: 2;
  }
  .location-plan--wrapper .lct-container__text.t-one {
    flex: 0 0 100%;
    max-width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    order: 2;
    text-align: center;
  }
  .lgn-container.cookie-banner.version-checkbox .btc-bar__width-adjust {
    flex-direction: row;
  }
  .lgn-container.cookie-banner.version-checkbox .btc-bar__width-adjust .btn {
    margin-top: 0;
  }
  .tsr-full-width .product-search .mnu-search {
    margin-top: 1.56rem;
  }
  .shw-showcase__products {
    min-height: unset;
  }
  #location-finder .cmplazypreviewiframe .cmplazybtnlink {
    margin-top: 102px;
  }
  .shw-showcase__products {
    min-height: unset;
  }
  .image-element__wrapper .pge-wall-narrow img {
    height: 100%;
  }
  .image-element__wrapper .pge-wall-narrow .pge-wall-narrow__item--33 {
    flex: 0 0 33%;
    max-width: 33%;
  }
  .image-element__wrapper .pge-wall-narrow .pge-wall-narrow__item--66 {
    flex: 0 0 55%;
    max-width: 66%;
  }
  .tsr-grp--brands-slider.teaser-brands .ttl--section {
    margin-bottom: 32px;
  }
  .tsr-grp--brands-slider.teaser-brands .ttl__headline {
    font-family: Mulish, sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1.2;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper .carousel-controls {
    right: 112px;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-controls-wrapper {
    justify-content: center;
  }
  .tsr-grp--brands-slider.teaser-brands .btn-link {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .tsr-grp--brands-slider.teaser-brands {
    margin-top: 112px;
    margin-bottom: 112px;
  }
  .shop-detail__header-inner {
    padding-top: 112px;
  }
  .shop-detail__logo {
    margin-bottom: 40px;
  }
  .shop-detail__info-opening-hours .dtl-opening-hours__column--1 {
    padding-left: 32px;
    padding-top: 0;
  }
  .shop-detail__info-opening-hours .dtl-opening-hours__column--1:not(:last-child) {
    border-top: none;
    border-left: 1.4px solid rgba(49, 47, 77, 0.2);
  }
  .shop-detail__info-opening-hours .dtl-opening-hours__column--2 {
    padding-right: 32px;
    text-align: left;
    padding-bottom: 0;
  }
  .shop-detail__info-opening-hours {
    flex-direction: row;
    padding-top: 64px;
  }
  .shop-detail__content {
    padding-top: 112px;
    padding-bottom: 64px;
  }
  .shop-detail__title {
    padding-bottom: 40px;
  }
  .shop-detail .accordion-item__header {
    padding: 24px 16px;
  }
  .shop-detail .accordion-item__header-icon {
    display: flex;
    padding-right: 32px;
    padding-left: 8px;
  }
  .shop-detail .accordion-item__header-icon svg {
    border-radius: 6px;
  }
  .shop-detail .accordion-item__header:hover .accordion-item__icon svg {
    fill: #000000;
  }
  .shop-detail .accordion-item__content .btn--solid:hover {
    background-color: #ffffff;
    color: #323232;
    border-color: #323232;
  }
  .dtl-description {
    padding: 32px 20px;
  }
  .teaser-promotions .teaser .content .cta .btn--solid:hover {
    background-color: #ffffff;
    text-decoration: none;
    color: #323232;
    border-color: #323232;
  }
  .teaser-promotions .teaser {
    margin-left: 12px;
    margin-right: 12px;
  }
  .teaser-promotions .owl-carousel .owl-stage-outer {
    overflow: hidden;
  }
  .teaser-richtext .wrapper.bottom {
    gap: 40px;
  }
  .teaser-richtext .wrapper.top {
    gap: 40px;
  }
  .drk-message__article {
    left: 50%;
    margin: auto;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 768px;
  }
  .drk-message-footer {
    text-align: right;
  }
  .std-button {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1rem;
  }
  .std-controls {
    margin-bottom: 0;
  }
  .std-head__breadcrumbs {
    margin-bottom: 2rem;
  }
  .stf-carousel {
    max-width: 45rem;
  }
  .stf-opening {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
  }
  .stf-main {
    height: 100px;
    min-height: 600px;
  }
  .stf-main .owl-dots {
    margin-top: 1rem;
    padding-bottom: 1rem;
    transform: scale(1);
  }
  .sto-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 350px;
  }
  .st404 {
    margin-bottom: 3rem;
  }
  .st404 {
    min-height: 600px;
  }
  .st404__overlay {
    min-height: 600px;
  }
  .st404__content {
    padding-top: 10rem;
  }
  .st404__headline {
    margin-bottom: 4rem;
  }
  .st404__subheadline {
    margin-bottom: 4rem;
  }
  .st404 .inp-search__input {
    height: 45px;
  }
  .st404 .inp-search__icon {
    height: 45px;
    width: 45px;
  }
  .lgn-form .lgn-link {
    margin-bottom: 0rem;
  }
  .lgn-or-separator::before, .lgn-or-separator::after {
    height: 1px;
  }
  .l-container {
    margin-top: 3rem;
  }
  .l-container {
    margin-bottom: 3rem;
  }
  .pge-wall-narrow .pge-wall-narrow__item {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .pge-wall__item {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .pge-wall__no-results {
    margin-bottom: 4.5rem;
  }
  .pge-wall + .btc-bar {
    margin-top: 3rem;
  }
  .pge-form-container {
    margin-bottom: 10rem;
  }
  .pge-form-container > [class$="--small"] {
    border: 1px solid rgba(0, 0, 0, 0.2);
  }
  .pda-section--separator-bottom:after {
    padding: 0 15px 2rem 15px;
  }
  .pda-section--separator-bottom--nm:after {
    padding: 0 15px 2rem 15px;
  }
  .pda-section--separator-top:before {
    padding: 2rem 15px 0 15px;
  }
  .pda-section--separator-top--nm:before {
    padding: 2rem 15px 0 15px;
  }
  .container {
    max-width: 940px;
  }
  .container-md {
    max-width: 940px;
  }
  .container-sm {
    max-width: 720px;
  }
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .ttl::before, .ttl::after {
    height: 3px;
  }
}

@media screen and (min-width: 768px) {
  .digitalmall-subnavi__wrapper .fltr-submenu {
    display: none;
  }
}

@media screen and (min-width: 799px) {
  .tsr-grp .product-cinema-btn.btc-bar {
    margin-top: 30px;
  }
}

@media screen and (min-width: 991px) {
  .blog--teaser__wall .blog--tsr__overview .pge-wall__item.half--width__item {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (min-width: 992px) {
  #css-viewport-width {
    font-family: "min-width:992px";
  }
  #css-viewport-width-code {
    font-family: "md";
  }
  .hidden-md-up {
    display: none !important;
  }
  .col-md-1 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-md-2 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-3 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-md-5 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-md-6 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-md-8 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-md-9 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-md-11 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .btn--badge[data-badge]::before {
    font-size: 8px;
    position: absolute;
    right: 0;
    top: 0;
    transform: translate(80%, -85%);
  }
  .inp-select__select {
    font-size: 0.875rem;
  }
  .inp-search__input {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .tme-styles abstract {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .tme {
    margin-bottom: 0;
    padding-block: 30px;
  }
  .owl-theme--banderole .owl-next, .owl-theme--banderole .owl-prev {
    display: block;
    z-index: 2;
  }
  .owl-theme--banderole::after, .owl-theme--banderole::before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    width: 5%;
    z-index: 1;
  }
  .owl-theme--banderole::after {
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), white);
    right: 0;
  }
  .owl-theme--banderole::before {
    background: linear-gradient(90deg, white, hsla(0, 0%, 100%, 0));
    left: 0;
  }
  .center-plan-page-wrapper {
    margin-top: 100px;
  }
  .ftsh-controls {
    flex-wrap: nowrap;
  }
  .ftsh-controls--space {
    justify-content: space-between;
  }
  .ftsh-control__search {
    flex: 1.5 1 0px;
    width: auto;
  }
  .tsr-solid--columns-2 .tsr__placeholder::before {
    padding-top: 28.5714285714%;
  }
  .tsr-solid--columns-2 .tsr__content {
    display: flex;
  }
  .tsr-solid--columns-2 .tsr__header {
    padding-right: 1.25rem;
    width: 36%;
    flex-shrink: 0;
  }
  .tsr-solid--columns-2 .tsr__text {
    max-width: 100%;
    padding-left: 1.25rem;
  }
  .tsr-transparent--columns-2 .tsr__content {
    transform: translate(25px, -25px);
    width: 50%;
  }
  .tsr-transparent--columns-3 .tsr__content {
    transform: translate(25px, -25px);
    width: 35%;
  }
  .tsr-shop__link .btn__label {
    display: inline-block;
  }
  .tsr-shop--banderole .btn__label {
    display: none;
  }
  .tsr-category--boxes {
    padding: 1.5rem;
  }
  .tsr-category--gradient {
    padding: 1rem 2.5rem;
  }
  .tsr-category--gradient .tsr-category__body::before {
    left: -2.5rem;
    width: calc(100% + 5rem);
  }
  .cookie-disclaimer__hint {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.375rem;
  }
  .mnu-sublist {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 0.75rem;
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-transform: uppercase;
  }
  .mnu-sublist__item {
    flex: 0 1 auto;
    margin: 0.75rem 0;
    max-width: 19em;
    text-align: center;
  }
  .mnu-sublist__item > a {
    padding: 0.5rem 2rem;
  }
  .mnu-sublist__item:not(:first-child) {
    border-left: 1px solid #bdbdbd;
  }
  .mnu-sublist__item--active {
    background-color: transparent;
  }
  .mnu-sublist__item--active > a {
    text-decoration: underline;
  }
  html:not(.can-touch) .mnu-sublist__item:has(a:focus-visible) > a {
    outline: 2px solid #CD1316;
  }
  html:not(.can-touch) .mnu-sublist__item:hover {
    color: #808080;
  }
  html:not(.can-touch) .mnu-sublist__item:hover > a {
    border-bottom-color: #808080;
  }
  .mnu-list {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 0.75rem;
    line-height: normal;
  }
  .mnu-list {
    display: flex;
    justify-content: flex-end;
    text-transform: uppercase;
  }
  .mnu-list__btn-sublist {
    display: none;
  }
  .mnu-list__item {
    transition: color 0.4s ease;
  }
  .mnu-list__item:not(:last-child) {
    border-bottom: 0;
  }
  .mnu-list__label {
    overflow-y: hidden;
    padding: 0.25em 1em 0.9em;
  }
  .mnu-list__label > a {
    border-bottom: 2px solid transparent;
    color: #ffffff;
    padding-bottom: 0.0625rem;
  }
  .mnu-list__label--active > a {
    border-bottom: 2px solid #ffffff;
  }
  .mnu-list__label::after {
    border: 8px solid transparent;
    border-bottom: 8px solid #efefef;
    bottom: -8px;
    content: "";
    height: 1px;
    left: calc(50% - 8px);
    position: absolute;
    transition: all 0.25s;
    width: 1px;
  }
  .mnu-list__sublist {
    max-height: none;
    opacity: 0;
    position: absolute;
    right: 0;
    transition: opacity 0.25s 0.85s, visibility 0.25s 0.85s;
    visibility: hidden;
    width: 100vw;
    z-index: 0;
    pointer-events: none;
  }
  .mnu-list:hover .mnu-list__item:not(:hover) .mnu-list__sublist, .mnu-list:focus .mnu-list__item:not(:focus) .mnu-list__sublist {
    transition: opacity 0.25s 0.05s, visibility 0.25s 0.5s;
  }
  .mnu-list__item:hover .mnu-list__sublist, .mnu-list__item:has(a:focus-visible) .mnu-list__sublist {
    opacity: 1;
    transition: opacity 0.25s 0.05s, visibility 0.25s 0.05s;
    visibility: visible;
    z-index: 1;
    pointer-events: all;
  }
  .mnu-list__item:hover .mnu-list__label > a {
    color: #CD1316;
  }
  .mnu-list__item:hover .mnu-list__label--active > a {
    border-bottom-color: #CD1316;
  }
  .mnu-list__item:hover .mnu-list__label:not(:only-child)::after {
    transform: translateY(-8px);
  }
  .mnu-list__item:has(a:focus-visible) > .mnu-menu__label::after {
    border: 8px solid transparent;
    border-bottom: 8px solid #efefef;
    bottom: -8px;
    content: "";
    height: 1px;
    left: calc(50% - 8px);
    position: absolute;
    transition: all 0.25s;
    width: 1px;
  }
  .mnu-list__item:has(a:focus-visible) > .mnu-menu__label:not(:only-child)::after {
    transform: translateY(-8px);
  }
  .mnu-list__item:has(a:focus-visible) > .mnu-menu__label > a {
    outline: 2px solid #CD1316;
  }
  .mnu-infolist {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 0.75rem;
  }
  .mnu-infolist {
    align-items: center;
    display: flex;
    justify-content: flex-end;
  }
  .mnu-infolist__item {
    margin: 0 0.75rem;
    padding: 0;
  }
  .mnu-infolist__item:not(:last-child) {
    border-bottom: 0;
  }
  .mnu-infolist__item .btn__icon {
    color: inherit;
  }
  .mnu-infolist__icon-search {
    cursor: pointer;
    display: block;
  }
  .mnu-top {
    align-items: center;
    display: flex;
    justify-content: flex-end;
  }
  .mnu-lang {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 0.75rem;
  }
  .mnu-lang__item {
    padding: 0 0.5rem;
  }
  .mnu-menu {
    align-items: flex-end;
    background-color: transparent;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    padding: 0;
    position: static;
    transition: none;
    width: auto;
  }
  .mnu-menu__lang {
    margin-left: 0;
  }
  .mnu-menu__list {
    align-self: flex-end;
    flex: 0 0 auto;
    margin-bottom: 0;
    margin-right: -1em;
    order: 1;
  }
  .mnu-menu__sublist {
    margin: 0;
  }
  .mnu-menu__title {
    display: none;
  }
  .mnu-menu__top {
    justify-content: flex-end;
  }
  aside.search {
    top: 100px;
  }
  aside.search .hdr-search {
    width: 20rem;
  }
  .ftr-aside__lang {
    display: none;
  }
  .ftr-contacts--two .ftr-contacts__article .opn-list {
    width: 50%;
  }
  .ftr-contacts--three .ftr-contacts__article {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .ftr-contacts--three .ftr-contacts__article:last-child {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .ftr-social__title {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .ftr-social__btn-container {
    flex: 0 0 50%;
    max-width: 50%;
    justify-content: center;
  }
  .hdr-header__logo--landscape {
    padding: 1rem 0;
  }
  .hdr-header__logo--landscape img {
    height: 68px;
  }
  .hdr-header__logo--portrait img {
    height: 108px;
    max-width: 90px;
  }
  .hdr-header__logo--llandscape img {
    width: 210px;
  }
  .hdr-header {
    height: 100px;
    padding: 0 3rem;
  }
  .hdr-header__burger {
    display: none;
  }
  .hdr-header__lang {
    margin-left: 0.75rem;
    margin-right: 1rem;
  }
  .hdr-header__icon-search {
    display: none;
  }
  .hdr-header__menu {
    background-color: transparent;
    height: 100%;
    overflow: visible;
    padding-top: 0.5rem;
    position: static;
    transform: none;
    z-index: auto;
  }
  body.menu-active .hdr-header__menu {
    overflow-y: visible;
  }
  .hdr-header--mall .mnu-menu__list a {
    text-align: center;
  }
  header .reduce-menu__sizes img {
    height: 45px;
  }
  nav .reduce-menu__sizes .mnu-list__label {
    padding-left: 6px;
    padding-right: 6px;
  }
  .glr-images__image {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .dir-button__label {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
  }
  .srv-wall__item {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
  }
  .srv-wall__item {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .dtl-description__lead {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .dtl-info--3-cols .dtl-info__col-1, .dtl-info--3-cols .dtl-info__col-2 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .dtl-info--3-cols .dtl-info__col-3 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .dtl-table {
    max-width: 100%;
  }
  .dtl-table__shop-name, .dtl-table__first-col {
    max-width: 10rem;
    width: auto;
  }
  .dtl-table__weekday, .dtl-table__hours, .dtl-table__label {
    padding-left: 2rem;
    width: auto;
  }
  .dtl-table__label {
    white-space: normal;
  }
  .dtl-table__container {
    overflow: auto;
  }
  .tsr-grp--brands-slider .btn-controls-wrapper .carousel-controls {
    left: 20%;
  }
  .tsr-grp__lead {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .tsr-grp__lead p {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 8.3333333333%;
  }
  .tsr-grp__teaser {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
  }
  .tsr-grp__teaser {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .tsr-grp__teaser--columns-2 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .tsr-grp__teaser--columns-3 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .tsr-grp__no-results {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .tsr-grp-banderole__item {
    width: 250px;
  }
  .tsr-grp--combi .tsr-grp__teaser:nth-of-type(3) {
    display: flex;
  }
  .tsr-grp--shops .tsr-grp__teasers {
    margin-bottom: -30px;
  }
  .tsr-grp--shops .tsr-grp__teaser,
  .tsr-grp--shops .pge-wall__item {
    flex: 0 0 20%;
    margin-bottom: 30px;
    max-width: 20%;
  }
  .tsr-grp--wide .tsr-grp__teaser {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
  }
  .tsr-grp--wide .tsr-grp__teaser {
    flex: 0 0 29.1666666667%;
    max-width: 29.1666666667%;
  }
  .tsr-grp-theme--light.js-anchor-link {
    margin-top: calc(-1 * 100px);
    padding-top: calc(3rem + 100px);
  }
  .tsr-grp--brands-slider.teaser-brands .owl-stage {
    gap: 20px;
    align-items: center;
  }
  .tsr-grp--brands-slider.teaser-brands .tsr__container {
    width: 200px;
    height: 110px;
  }
  .tsr-full-width .owl-nav {
    height: auto;
    overflow: visible;
  }
  .tsr-full-width .owl-next,
  .tsr-full-width .owl-prev {
    position: absolute;
    top: calc(50% - 20px);
  }
  .tsr-full-width__abstract {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.375rem;
  }
  .mdl-modal--scroll-offset-header {
    padding: 0 calc(3rem + 17px);
  }
  .mdl-modal--scroll-offset-logo {
    position: relative;
    right: 17px;
  }
  .pnt-bottom-bar__container .cookie-banner--main.hidden + .cookie-banner--settings + .cookie-banner--history.hidden + .btc-bar.btc-cookie-banner-bar {
    display: inline-grid;
    width: auto;
    margin-left: 15px;
  }
  .nws-registration__bg {
    right: 5%;
  }
  .newsletter-teaser-container.newsletter-content--wrapper .newsletter-btn {
    width: 29%;
    margin-left: 15px;
  }
  .newsletter-teaser-container.newsletter-content--wrapper .newsletter-email {
    width: 69%;
  }
  .newsletter-teaser-container.newsletter-footer--wrapper .lgn-register {
    margin-bottom: 0;
  }
  .newsletter-teaser-container.newsletter-footer--wrapper .newsletter-btn, .newsletter-teaser-container.newsletter-footer--wrapper .newsletter-email {
    float: left;
  }
  .newsletter-teaser-container.newsletter-footer--wrapper .newsletter-btn {
    width: 29%;
  }
  .newsletter-teaser-container.newsletter-footer--wrapper .newsletter-email {
    width: 50%;
    margin-right: 20px;
  }
  .sts-item__text {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.375rem;
  }
  .sts-stage-teaser .sts-item__body {
    padding: 64px 90px 120px 53px;
  }
  .sts-stage-teaser .sts-item__headline {
    margin-bottom: 24px;
    color: #000000;
  }
  .sts-stage-teaser .owl-carousel .owl-nav {
    left: 112px;
  }
  .sts-stage-teaser {
    margin-top: 150px;
  }
  .lgn-container.cookie-banner {
    margin-top: auto;
    padding: 3.5rem;
  }
  .lgn-container.cookie-banner .cookie-banner--settings .row.ttl--section .ttl__headline {
    max-width: 100%;
    text-align: center;
  }
  .lgn-container.cookie-banner .point-text {
    display: inline-block;
  }
  .lgn-container.cookie-banner table {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .lgn-container.cookie-banner .btc-bar__width-adjust {
    flex-direction: row;
  }
  .lgn-container.cookie-banner .btc-bar__width-adjust .btn {
    margin-top: 1rem;
  }
  .lgn-container.cookie-banner .cookie-banner--main .cookie-banner--description {
    max-height: 40vh;
    border: 1px solid #fff;
  }
  .shop-teaser .owl-nav {
    display: block;
  }
  .shop-teaser_teaser {
    margin-right: 1rem;
    width: 132px !important;
    max-width: 132px !important;
  }
  .shop-teaser.shop-teaser--buttons .shop-teaser_buttons {
    max-height: 5000px;
  }
  .shop-teaser.shop-teaser--buttons .shop-teaser_show-more {
    display: none;
  }
  .shw-showcase__media {
    margin-bottom: 0;
  }
  .shw-showcase--mirror .shw-showcase__media {
    order: 2;
  }
  .shw-showcase__media {
    margin-bottom: 0;
  }
  .shw-showcase--mirror .shw-showcase__media {
    order: 2;
  }
  .tsr-grp--brands-slider.teaser-brands .owl-stage {
    gap: 20px;
    align-items: center;
  }
  .tsr-grp--brands-slider.teaser-brands .tsr__container {
    width: 200px;
    height: 110px;
  }
  .shop-detail {
    margin-top: 20px;
  }
  .teaser-richtext .wrapper.left {
    flex-direction: row;
  }
  .teaser-richtext .wrapper.right {
    flex-direction: row-reverse;
  }
  .teaser-richtext .wrapper {
    gap: 96px;
    width: 992px;
    flex-direction: row;
  }
  .teaser-richtext .image {
    min-width: 360px;
    height: 380px;
  }
  .teaser-richtext .image img {
    width: 360px;
    height: 380px;
  }
  .teaser-richtext .btn-default {
    width: -moz-fit-content;
    width: fit-content;
  }
  .teaser-icons {
    padding: 112px 0;
  }
  .teaser-icons .teasers {
    flex-direction: row;
    gap: 32px;
    align-items: stretch;
  }
  .std-stage {
    padding-top: 116px;
  }
  .stf-carousel {
    padding: 0;
  }
  .stf-main {
    align-items: center;
    min-height: 640px;
  }
  .stf-carousel {
    bottom: 5%;
    left: auto;
    right: 5%;
    transform: translate(0);
  }
  .stf-carousel .owl-nav {
    visibility: visible;
  }
  .sto-teaser__text {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.375rem;
  }
  .sto-teaser__text {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 8.3333333333%;
  }
  .sto-container {
    padding-top: 100px;
  }
  .st404 {
    min-height: 640px;
  }
  .st404__overlay {
    min-height: 640px;
  }
  .st404__content-container {
    padding-top: 100px;
  }
  .lgn-container .fltr-container-list {
    opacity: 0;
    position: absolute;
    top: 0;
    transform: translateY(-100%);
  }
  .lgn-container .content-tabs__content {
    padding-top: 0;
  }
  .lgn-hero {
    display: block;
  }
  .lgn-hero__body {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .lgn-login__title {
    display: block;
  }
  .lgn-login [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
    position: static !important;
  }
  .lgn-login.row {
    margin-left: -25px;
    margin-right: -25px;
  }
  .lgn-form {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .lgn-register {
    padding-top: 1.5rem;
    padding-bottom: 2.25rem;
  }
  .pge-wall-narrow .pge-wall-narrow__item {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .pge-wall-narrow .pge-wall-narrow__item--50 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .pge-wall__item {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
  }
  .pge-wall__item {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .pge-wall__item--columns-2 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .pge-wall__item--columns-3 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .pge-form-container {
    margin-top: calc(100px + 5rem);
  }
  .pge-form-container > * {
    border: 1px solid rgba(0, 0, 0, 0.2);
  }
  .container {
    max-width: 960px;
  }
  .container-lg {
    max-width: 960px;
  }
  .container-md {
    max-width: 960px;
  }
  .container-sm {
    max-width: 960px;
  }
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .stf-carousel .tsr {
    background-color: hsla(0, 100%, 100%, 0.9);
  }
  .stf-carousel .owl-dots {
    height: 2.25rem;
  }
  .stf-carousel .owl-dot {
    border-color: #ffffff;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.55), inset 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  }
  html:not(.can-touch) .stf-carousel .owl-dot:hover, html:not(.can-touch) .stf-carousel .owl-dot:focus-visible {
    background-color: white;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.55);
  }
  .stf-carousel .owl-dot.active {
    background: white;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.55);
  }
  .stf-carousel .owl-nav {
    display: flex;
    height: auto;
    justify-content: flex-end;
    position: absolute;
    right: 0;
    width: auto;
    z-index: 2;
  }
  .stf-carousel .owl-prev {
    margin-right: 0.125rem;
  }
  .tsr-solid--columns-2 .tsr__header::after {
    bottom: auto;
    display: block;
    height: 100%;
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 2px;
  }
  .tsr-solid--columns-2 .tsr__header::before {
    bottom: 0;
    display: block;
    height: 0%;
    margin: 0;
    position: absolute;
    right: 0;
    top: auto;
    width: 2px;
  }
  html:not(.can-touch) .tsr-solid--columns-2:hover .tsr__header::after {
    height: 0%;
    transition: 0.25s ease;
    width: 2px;
  }
  html:not(.can-touch) .tsr-solid--columns-2:hover .tsr__header::before {
    height: 100%;
    transition: 0.25s ease;
    transition-delay: 0.23s;
    visibility: visible;
    width: 2px;
  }
}

@media (min-width: 992px) and (min-width: 768px) {
  .newsletter-teaser-container.newsletter-footer--wrapper .lgn-register.newsletter-content {
    padding-top: 1rem;
    padding-bottom: 0.5rem;
  }
  .lgn-hero__body {
    margin-top: 3rem;
  }
  .lgn-hero__body {
    margin-bottom: 3rem;
  }
  .lgn-form {
    margin-top: 3rem;
  }
  .lgn-form {
    margin-bottom: 3rem;
  }
  .lgn-register {
    padding-top: 3rem;
  }
  .lgn-register {
    padding-bottom: 4.5rem;
  }
}

@media screen and (min-width: 992px) {
  .blog--subline__wrapper {
    text-align: center;
  }
}

@media (min-width: 1100px) {
  .pnt-bottom-bar__container .lgn-container.cookie-banner {
    width: 1130px;
  }
}

@media (min-width: 1200px) {
  #css-viewport-width {
    font-family: "min-width:1200px";
  }
  #css-viewport-width-code {
    font-family: "lg";
  }
  .hidden-lg-up {
    display: none !important;
  }
  .col-lg-1 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-lg-2 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-3 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-lg-5 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-lg-6 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-lg-8 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-lg-9 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-lg-11 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .display-1 {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 2.25rem;
  }
  h1, .heading-1 {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.2;
  }
  h2, .heading-2 {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  h3, .heading-3 {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .ttl--page .ttl__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.2;
  }
  .ttl--section .ttl__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .tme-styles h3 {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .ext-content .cmplazypreviewiframe .cmplazypreviewmsginner h3 {
    font-weight: 500;
    font-size: 21px;
    line-height: 1.4;
  }
  .tsr__date--medium {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .tsr__date--big {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.2;
  }
  .tsr-horizontal--product .tsr__media {
    flex-basis: 28.5714285714%;
    max-width: none;
  }
  .tsr-horizontal--product .tsr__media img {
    max-width: 7.5rem;
  }
  .tsr-horizontal--product .tsr__content {
    display: flex;
    justify-content: space-between;
  }
  .tsr-horizontal--product .tsr-cta {
    margin-bottom: -0.5rem;
    margin-top: -0.5rem;
    align-items: flex-end;
    flex-direction: column;
    height: 100%;
    justify-content: space-around;
  }
  .tsr-horizontal--product .tsr-cta > * {
    padding-bottom: 0.5rem;
    padding-top: 0.5rem;
  }
  .tsr-category {
    min-height: 21rem;
  }
  .btc-round-label__label {
    -webkit-hyphens: auto;
            hyphens: auto;
    white-space: normal;
  }
  .cookie-disclaimer__container {
    padding-bottom: 7.5rem;
  }
  .cookie-disclaimer__hint {
    margin-right: 2.5rem;
  }
  .mnu-list {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.875rem;
  }
  .mnu-infolist__search {
    border: 1px solid transparent;
    position: relative;
    top: -1px;
  }
  .mnu-menu__title {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .bkm-dropdown__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  #api .intro {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .ftr-aside__footer {
    border-top: 0;
    flex: 1 0 auto;
    margin: 0;
    display: none;
  }
  .ftr-aside__highlight {
    order: 2;
    width: auto;
  }
  .ftr-aside__legal {
    order: 1;
  }
  .ftr-contacts--four .ftr-contacts__article {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .hdr-header {
    padding: 0 calc(50% - 1200px / 2 + 25px);
  }
  .hdr-header__icon-search {
    display: none;
  }
  .hdr-header__menu {
    padding-top: 0.75rem;
  }
  .hdr-header .btn.btn--light {
    margin-left: 0;
  }
  .hdr-header .mnu-top a {
    margin-left: 2rem;
  }
  .hdr-header--mall .mnu-menu__list {
    font-size: 13px;
  }
  .srv-header::after {
    transform: translateX(-50vw) translateX(575px);
  }
  .srv-wall__item {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .srv-search-bar {
    transform: translateX(-50vw) translateX(575px);
  }
  .dtl-title__title {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .tsr-grp--brands-slider .btn-controls-wrapper .carousel-controls {
    left: 28%;
  }
  .tsr-grp--wide .tsr-grp__teaser {
    flex: 0 0 262.5px;
    max-width: 262.5px;
  }
  .tsr-grp--wide .tsr-grp__teaser:first-child, .tsr-grp--wide .tsr-grp__teaser:last-child {
    padding: 0 15px;
  }
  .tsr-grp--wide .owl-dots {
    display: none;
  }
  .tsr-grp--wide .owl-next, .tsr-grp--wide .owl-prev {
    position: absolute;
    top: calc(50% - 3rem / 2);
  }
  .tsr-grp--wide .owl-next {
    right: 50%;
    transform: translateX(50vw);
  }
  .tsr-grp--wide .owl-prev {
    left: 50%;
    transform: translateX(-50vw);
  }
  .tsr-full-width__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.3125rem;
    line-height: 1.4;
  }
  .mdl-modal--scroll-offset-header {
    padding: 0 calc(50% - 600px + 25px + 8.5px) 0 calc(50% - 600px + 25px + 8.5px) !important;
  }
  .sts-item__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 2.25rem;
  }
  .sts-item__body {
    height: 580px;
    padding-left: 8%;
  }
  .sts-stage .owl-nav {
    top: 50%;
    transform: translateY(-50%);
  }
  .sts-stage-teaser .sts-item__headline {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    font-size: 2.25rem;
    line-height: 1.2;
  }
  .sts-stage-teaser .owl-carousel .owl-nav {
    bottom: 15px;
  }
  .shw-list__show-more {
    padding: 2.5rem 0 1.5rem;
  }
  #location-finder .cmplazypreviewiframe .cmplazypreviewmsginner h3 {
    font-weight: 500;
    font-size: 21px;
    line-height: 1.4;
  }
  .shw-list__show-more {
    padding: 2.5rem 0 1.5rem;
  }
  .stf-main {
    min-height: 685px;
  }
  .sto-teaser__title {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 2.25rem;
  }
  .st404 {
    min-height: 685px;
  }
  .st404__overlay {
    min-height: 685px;
  }
  .st404__content {
    padding-top: 11rem;
  }
  .st404__headline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 2.25rem;
  }
  .st404__subheadline {
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
  .container {
    max-width: 1140px;
  }
  .container-lg {
    max-width: 1140px;
  }
  .container-md {
    max-width: 1140px;
  }
  .container-sm {
    max-width: 1140px;
  }
  .container-xl {
    max-width: 1140px;
  }
  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media screen and (min-width: 1200px) {
  .tsr-grp .product-cinema.tsr-grp__teasers {
    overflow-x: unset;
  }
  .tsr-grp .product-cinema .tsr-grp__teaser {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
}

@media (min-width: 1260px) {
  .tsr-grp--category .owl-nav {
    height: auto;
    overflow: visible;
  }
  .tsr-grp--category .owl-next, .tsr-grp--category .owl-prev {
    position: absolute;
    top: calc(50% - 3rem / 2);
  }
  .tsr-grp--category .owl-prev {
    left: 0;
    transform: translateX(-50vw) translateX(600px) translateX(1.5rem);
  }
  .tsr-grp--category .owl-next {
    right: 0;
    transform: translateX(50vw) translateX(-600px) translateX(-1.5rem);
  }
}

@media (min-width: 1300px) {
  .teaser-promotions .owl-carousel .owl-nav .owl-prev {
    left: -5%;
  }
  .teaser-promotions .owl-carousel .owl-nav .owl-next {
    right: -5%;
  }
}

@media (min-width: 1320px) {
  header .reduce-menu__sizes img {
    height: 68px;
  }
  nav .reduce-menu__sizes .mnu-list__label {
    padding: 0.25em 1em 0.9em;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
  .container-lg {
    max-width: 1320px;
  }
  .container-md {
    max-width: 1320px;
  }
  .container-sm {
    max-width: 1320px;
  }
  .container-xl {
    max-width: 1320px;
  }
  .container-xxl {
    max-width: 1320px;
  }
  .col-xxl {
    flex: 1 0 0%;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 1600px) {
  .tsr-grp--category.tsr-grp--blog-products .owl-prev {
    transform: translateX(-3rem);
  }
  .tsr-grp--category.tsr-grp--blog-products .owl-next {
    transform: translateX(3rem);
  }
}

@media (min-width: 3000px) {
  .mnu-infolist__search {
    display: none;
  }
  .mnu-infolist__icon-search {
    display: none;
  }
  .hdr-header__search {
    display: none;
  }
  .sts-item__body {
    height: auto;
    padding-left: 8%;
  }
}

@media screen and (orientation: portrait) {
  #css-orientation {
    font-family: "portrait";
  }
}

@media screen and (orientation: landscape) {
  #css-orientation {
    font-family: "landscape";
  }
}

@media screen and (min-resolution: 1dppx) {
  #css-resolution {
    font-family: "min-resolution:1ppx";
  }
  #css-resolution-code {
    font-family: "sd";
  }
}

@media screen and (min-resolution: 2dppx) {
  #css-resolution {
    font-family: "min-resolution:2ppx";
  }
  #css-resolution-code {
    font-family: "hd";
  }
}

@media (max-width: 992px) {
  div, section {
    scroll-margin-top: 70px;
  }
  .teaser--3-images .owl-carousel .owl-item .sts-item .item--wrapper {
    flex-direction: column;
    align-items: center;
  }
  .teaser--3-images .owl-carousel .owl-item .sts-item .item--wrapper img {
    aspect-ratio: 16/9;
    width: 100%;
    max-height: 250px;
  }
  .teaser--3-images .sts-item .item--wrapper {
    flex-direction: column;
    align-items: center;
  }
  .teaser--3-images .sts-item .item--wrapper img {
    aspect-ratio: 16/9;
    width: 100%;
    max-height: 250px;
  }
  .mdl-modal__vertical {
    padding: 0;
  }
  .mdl-modal__horizontal {
    display: block;
  }
  .mdl-modal__pane {
    height: 100%;
    width: 100%;
  }
  .mdl-modal--central .mdl-modal__vertical {
    vertical-align: top;
  }
  .pnt-bottom-bar__horizontal {
    display: block;
  }
  .pnt-bottom-bar__pane {
    height: 100%;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .hidden-sm-down {
    display: none !important;
  }
  .btn--full-width-xs {
    width: 100%;
  }
  .tbl-table thead {
    display: none;
  }
  .tbl-table td {
    display: block;
  }
  .tbl-table td::before {
    font-family: , "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    content: attr(data-header) ":";
    display: inline-block;
    min-width: 30%;
  }
  .tbl-table tr {
    border-color: rgba(0, 0, 0, 0.15);
    display: block;
    padding: 1rem;
  }
  .tbl-table tr:last-child {
    border-bottom: 0;
  }
  .tsr-stage .btn {
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
  }
  .tsr-stage .tsr__title {
    font-size: 15px;
    line-height: 1.3;
  }
  .tsr-stage__media img {
    max-height: 80px;
  }
  .tsr-stage__header::after {
    content: unset !important;
  }
  .tsr-stage__content {
    padding: 0.5rem;
  }
  .mdl-modal .cpn-redeem.lgn-container.lgn-container--small {
    width: 100% !important;
  }
  .mdl-modal .lgn-container.lgn-container--small {
    width: 100% !important;
  }
  .location-plan--wrapper .lct-container__text {
    margin-bottom: 3rem;
  }
  .location-plan--wrapper .lct-container .lct-map__figure {
    margin-bottom: 3rem;
  }
  .location-plan--wrapper .lct-container circle {
    pointer-events: none;
  }
  section.anchor--menu.fltr-menu {
    padding-block: 1rem;
  }
  section.anchor--menu.fltr-menu .fltr-dropdown {
    margin: 0 auto;
  }
  section.anchor--menu.fltr-menu .inp-select {
    display: flex;
  }
}

@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
  .hdr-header .mnu-menu__item--cta {
    margin-top: 3rem;
  }
  .hdr-header .btn {
    width: 100%;
  }
  .hdr-header--mall .mnu-menu__item--cta {
    margin-top: 3rem;
  }
  .hdr-header--mall .btn {
    width: 100%;
  }
  .pnt-bottom-bar__container .width-100 {
    display: block;
  }
  .sts-stage__container {
    scroll-margin-top: 70px;
  }
  #leasing-sidebar .leasing-form__wrapper .form-field.half-width {
    width: 100%;
  }
  #leasing-sidebar .leasing-form__wrapper .t3-form .form-group {
    padding-right: 15px;
  }
  #leasing-sidebar .leasing-form__wrapper .t3-form form > .form-group {
    padding-right: 0;
  }
  .leasing-rte--wrapper {
    scroll-margin-top: 70px;
  }
  .mdl-modal--change-password {
    width: 100%;
  }
  .mdl-modal--delete-account {
    width: 100%;
  }
}

@media (max-width: 1199px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .content-container .msg-message .msg-message__icon {
    top: -62px;
  }
  .btn--fix-ie11 {
    width: 270px;
  }
  .cpn-detail__message__icon--fixie-11 {
    top: -62px;
  }
  .hdr-header__logo a {
    display: inline;
  }
}

@media print {
  div {
    display: none !important;
  }
  header,
  footer {
    display: none !important;
  }
  article * {
    display: block !important;
  }
  @page {
    size: auto;
  }
  html {
    background-color: #FFFFFF;
    margin: 0;
  }
  .acc-accordion__body {
    height: auto;
  }
  .acc-accordion__icon {
    display: none !important;
  }
  .acc-accordion .content-container {
    padding-left: 0;
    padding-right: 0;
  }
  .acc-accordion__title {
    border: 0;
    margin: 0;
    padding: 0;
  }
  .ttl--page .ttl__headline {
    border: 0;
  }
}

@media (hover: hover) {
  .btn-tooltip::after {
    font-family: Open Sans, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 0.875rem;
    line-height: 1.5;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 50' width='100' height='50'><path fill='rgb(64, 64, 64)' d='M25 25L0 0L50 0L100 0L75 25L50 50L25 25Z'/></svg>"), linear-gradient(to top, transparent, transparent 0.55rem, hsl(0, 0%, 25%) 0.55rem, hsl(0, 0%, 25%));
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: 1.5rem 0.75rem, 100%;
    color: white;
    content: attr(data-tooltip-content);
    left: 50%;
    opacity: 0;
    padding: 0.5rem 1rem 1.25rem 1rem;
    position: absolute;
    top: 0;
    transform: translate(-50%, -100%) translateY(-0.5rem);
    transition: opacity 0.4s ease;
    visibility: hidden;
    white-space: nowrap;
  }
  .teaser-promotions .teaser:hover {
    box-shadow: 0 14px 17px 0 rgba(0, 0, 0, 0.15);
    transition: box-shadow 0.2s ease-in-out;
  }
}

@media (max-width: 1200px) {
  .center-plan #shops > * {
    stroke: #676767;
    stroke-width: 0.5px;
  }
}

@media (max-width: 667px) {
  .center-plan .mapplic-sidebar {
    float: none;
  }
  .center-plan.mapplic-fullscreen .mapplic-sidebar {
    display: none;
  }
  .center-plan.mapplic-fullscreen .mapplic-container {
    width: 100%;
  }
}

@media (max-width: 400px) {
  .mapplic-container {
    max-height: 300px;
  }
}

@media screen and (max-width: 600px) {
  .external-content-cookie-revoked .ext-content__iframe-wrapper {
    padding-bottom: 500px;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .tsr-solid--columns-2 .tsr__header {
    width: auto;
  }
}

@media only screen and (max-width: 767px) {
  .faq-acc-intro {
    margin-bottom: 4rem !important;
  }
  .blog--teaser__wall .category-box__wrapper {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .tsr-grp .product-cinema .tsr-grp__teaser {
    flex: 0 0 100%;
    max-width: 100%;
  }
  #location-finder #map {
    height: 800px;
  }
  #location-finder .map-wrapper.searched {
    height: 1431px;
  }
  #location-finder .map_results-wrapper {
    top: 800px;
    left: 50%;
    transform: translateX(-50%);
  }
  .v3-stage__wrapper .sts-stage .owl-dots {
    display: none;
  }
  .v3-stage__wrapper .stf-main.blog--stf__main {
    min-height: 300px;
  }
  .v3-stage__wrapper .stf-main.blog--stf__main .sts-media {
    border-bottom: 0;
    margin-top: 0;
  }
  .v3-stage__wrapper .sts-item {
    height: 230px;
  }
  .v3-stage__wrapper .sts-item__media {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: -1;
  }
  .v3-stage__wrapper .sts-item__body {
    position: absolute;
    bottom: 0;
    padding-left: 18px;
  }
  .v3-stage__wrapper .blog-stage__wrapper .sts-item__body.blog-detail__wrapper .blog-title {
    font-size: 16px;
  }
}

@media screen and (max-width: 991px) {
  .tsr-grp .product-cinema .tsr__content {
    text-align: center;
  }
  .tsr-grp .product-cinema .tsr__price {
    width: 100%;
    right: 0;
  }
  .tsr-grp .product-cinema .owl-dots {
    display: none;
  }
  .tsr-grp .product-cinema .owl-next, .tsr-grp .product-cinema .owl-prev {
    position: absolute;
    top: calc(50% - 3rem / 2);
  }
  .tsr-grp .product-cinema .owl-next {
    right: 50%;
    transform: translateX(50vw);
  }
  .tsr-grp .product-cinema .owl-prev {
    left: 50%;
    transform: translateX(-50vw);
  }
  #location-finder .button-wrapper {
    display: none;
  }
  #location-finder .btc-bar__width-adjust {
    flex-direction: row;
  }
  #location-finder .ttl--section {
    width: 100%;
  }
  #location-finder {
    max-width: 100%;
  }
  .pac-container {
    border-bottom: none;
    text-align: center;
  }
  .pac-container .pac-item {
    border-top: none;
  }
}

@media (hover: none) {
  .tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover {
    background-color: #ffffff;
  }
  .tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover .btn {
    filter: none;
  }
  .sts-stage-teaser .owl-carousel .owl-slider-btn:hover {
    background-color: #ffffff;
    border-color: rgba(141, 141, 163, 0.4);
  }
  .sts-stage-teaser .owl-carousel .owl-slider-btn:hover .arrow-symbol {
    background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-bs-angle-right.svg');
  }
  .sts-stage-teaser .owl-nav .toggle-btn:hover {
    background-color: white;
    border-color: rgba(141, 141, 163, 0.4);
  }
  .sts-stage-teaser .owl-nav .toggle-btn:hover .arrow-symbol, .sts-stage-teaser .owl-nav .toggle-btn:hover .stop-symbol {
    background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-pause.svg');
    background-color: #ffffff;
  }
  .sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover {
    background-color: white;
    border-color: rgba(141, 141, 163, 0.4);
  }
  .sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover .arrow-symbol, .sts-stage-teaser .owl-nav .toggle-btn.is-paused:hover .stop-symbol {
    background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-sr-play.svg');
  }
  .tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover {
    background-color: #ffffff;
  }
  .tsr-grp--brands-slider.teaser-brands .carousel-controls-wrap .toggle-btn:hover .btn {
    filter: none;
  }
}

@media (max-width: 768px) {
  .t3-form .form-group.fileupload {
    display: block;
    margin-bottom: 35px;
  }
  .t3-form .form-group.fileupload .field-wrapper {
    order: unset;
  }
  .t3-form .form-group.fileupload .help-block {
    order: unset;
  }
  .marketing-automation__form .frm-radio {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .marketing-automation__form .form-group input[type=text].datepicker, .marketing-automation__form .form-group input[type=text].datepicker-copy {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .sts-item__media video.video-crop {
    -o-object-fit: cover;
       object-fit: cover;
  }
  .leasing-teaser__wrapper .teaser-item {
    flex-basis: 100%;
    margin-right: 0;
    width: 300px;
  }
}

@media (max-width: 360px) {
  .sts-stage-teaser .owl-carousel .owl-nav {
    top: 45%;
  }
  .sts-stage-teaser {
    top: 45%;
  }
}

@media (width: 411px) and (height: 731px) {
  .sts-stage-teaser .owl-carousel .owl-nav {
    top: 45%;
  }
  .sts-stage-teaser {
    top: 45%;
  }
}

@media screen and (orientation: landscape) and (max-height: 411px) and (max-width: 768px) {
  .sts-stage-teaser .owl-carousel .owl-nav {
    top: 30%;
  }
  .sts-stage-teaser {
    top: 30%;
  }
}

@media (hover: hover) and (pointer: fine) {
  .sts-stage-teaser .owl-carousel .owl-slider-btn:hover:not(:active) {
    background-color: #323232;
    border-color: rgba(141, 141, 163, 0.4);
  }
  .sts-stage-teaser .owl-carousel .owl-slider-btn:hover:not(:active) .arrow-symbol {
    background-image: url('../../../_assets/40dc3619f630dcb605c4bc36aaa03f0e/dist/assets/svg-icons/fi-bs-angle-right-white.svg');
  }
}

@media (max-width: 480px) {
  .stf-opening.js-floating-opening {
    right: 24px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 769px) {
  .location-plan--wrapper .lct-container .tme-styles.t-one h3:before {
    display: none;
  }
  .location-plan--wrapper .lct-container .tme-styles.t-one h3:after {
    display: none;
  }
  .blog--teaser__wall .blog--teaser .tsr__text {
    display: none;
  }
}

@media screen and (max-width: 1756px) {
  #location-finder .map_clear {
    top: 0;
    right: 12px;
  }
}

@media screen and (max-width: 1600px) {
  #location-finder .map_clear {
    top: 0;
    right: 15px;
  }
}

@media screen and (max-width: 1342px) {
  #location-finder .form-wrapper {
    margin-right: 15px;
  }
  #location-finder .map_clear {
    right: 5px;
    top: -45px;
  }
}

@media screen and (max-width: 1230px) {
  #location-finder .map_clear {
    top: -45px;
  }
}

@media screen and (max-width: 1100px) {
  #location-finder .form-wrapper {
    margin-right: 20px;
  }
  #location-finder .map_clear {
    top: -45px;
    left: 0;
  }
}

@media screen and (max-width: 700px) {
  #location-finder .map_clear {
    top: -45px;
    left: 10px;
  }
  .leasing-grid__wrapper .teaser-item {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 496px) {
  #location-finder .map_results-wrapper {
    position: relative;
    top: 700px;
  }
  #location-finder .btn--light.btn-location_finder, #location-finder .btn--dark.btn-location_finder {
    font-size: 12px;
    margin-right: 5px;
    padding: 2px 0;
    width: 140px;
    margin-bottom: 15px;
  }
  #location-finder .map_shop-details p {
    font-size: 14px;
  }
  #location-finder .map_result {
    width: 100%;
    padding-left: 50px;
  }
  #location-finder .searchbar-wrapper {
    padding-left: 0;
    overflow: visible;
  }
  #location-finder .opening_rectangle {
    left: 90px;
  }
  #location-finder .map_shop-name {
    color: #32304e;
    padding-left: 12px;
  }
}

@media screen and (max-width: 368px) {
  #location-finder .map_result {
    padding-left: 60px;
    font-size: 12px;
  }
  #location-finder .btn--light.btn-location_finder, #location-finder .btn--dark.btn-location_finder {
    font-size: 10px;
    width: 130px;
  }
  #location-finder .map_shop-details_wrapper {
    padding-left: 0;
  }
  #location-finder .opening_rectangle {
    left: 60px;
  }
}

@media screen and (orientation: landscape) and (min-device-width: 319px) and (max-device-width: 480px) {
  #leasing-sidebar {
    top: 0;
  }
}

@media screen and (orientation: landscape) and (min-device-width: 400px) and (max-device-width: 900px) {
  #leasing-sidebar .leasing-form__wrapper {
    top: -200px;
  }
  #leasing-sidebar .leasing-form__wrapper .container {
    height: 100vh;
  }
}

@media (max-width: 575px) {
  #leasing-sidebar .leasing-form__wrapper {
    position: static;
  }
  #leasing-sidebar .leasing-form__wrapper .container {
    margin-left: calc((100vw - 45px) * -1);
    width: -moz-fit-content;
    width: fit-content;
    height: 400px;
  }
  #leasing-sidebar .leasing-form__wrapper .t3-form .form-group.col-xs-12 {
    padding-right: 15px;
  }
  .open .form-button.openForm {
    display: none;
  }
  #leasing-sidebar.open .share-button {
    display: none;
  }
  #leasing-sidebar.open .leasing-form__wrapper .mdl-modal__btn--close {
    right: 24px;
    top: -50px;
  }
}

@media screen and (max-width: 1040px) {
  .leasing-grid__wrapper .btn--solid {
    font-size: 14px;
    position: relative;
  }
}