/* ************************************************************
***************************************************************
***************************************************************
 MAIN PAGE ELEMENTS
***************************************************************
***************************************************************
************************************************************* */
.viewBox {
  min-height: var(--windowHeight);
  max-width: var(--windowWidth);
  overflow-x: visible;
  position: relative;
  padding-bottom: 0px !important;
}
.viewBox section {
  min-width: 100%;
  max-width: 100%;
  min-height: 100%;
  padding: 0rem;
  position: absolute;
  top: 0px;
  left: 0px;
  background-color: var(--col_pd90);
  z-index: 1;
  display: none;
}
.viewBox section.active {
  display: block;
}
.viewBox section.posAbs {
  position: absolute;
}
.viewBox section.posRla {
  position: relative;
}
.viewBox section .header {
  position: sticky;
  top: 0rem;
  left: 0rem;
  width: 100%;
  padding: 0.65rem 0rem;
  z-index: 999;
  background-color: rgba(32,37,53,1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  display: none;
}
.viewBox section .header .inner {
  width: 100%;
  max-width: 768px;
  margin: 0px auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}
.viewBox section .header.visible {
  display: flex;
}
.viewBox section .header .inner > div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  width: 60%;
  text-align: center;
}
.viewBox section .header .inner > .center {
  font-weight: bold;
}
.viewBox section .header .inner > div:first-child {
  width: 20%;
  align-items: flex-start
}
.viewBox section .header .inner > div:last-child {
  width: 20%;
  align-items: flex-end
}
.viewBox section .header .inner .backBtn {
  cursor: pointer;
  display: flex;
  align-items: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
}
.viewBox section .header .inner .backBtn svg {
  fill: red;
  color: red;
  margin-right: 0rem;
}
.viewBox section .container {
  padding: 2rem;
  max-width: 600px;
  margin: 0px auto;
}
.rightsLine {
  background-color: rgba(32,37,53,1);
  font-size: 0.75rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: column;
  padding: 0.5rem 2rem 0rem 2rem;

  text-align: justify;
}
.rightsLine .lastLine {
  width: 100%;
  font-size: 0.875rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  padding: 1rem 0rem;
  font-size: 0.75rem;
  border-top: 1px rgba(255,255,255,0.25) solid;
}
.rightsLine .lastLine > div:not(:last-child) {
  margin-right: 1rem;
}

.ds1 {
  filter: drop-shadow(0px 0px 5px rgb(0 0 0 / 0.4));
}

/* ************************************************************
***************************************************************
***************************************************************
 HOME VIEW
***************************************************************
***************************************************************
************************************************************* */
section[data-sectionname="home"] {
}
section[data-sectionname="home"] .header svg {
  height: 18px;
}
section[data-sectionname="home"] .elm {
  width: 100%;
  margin: 0px auto;
}
section[data-sectionname="home"] .elm:not(:last-child) {
  margin-bottom: 2.25rem;
}
section[data-sectionname="home"] .elm .img {
  background-size: auto 130%;
  background-position: center;
  position: relative;
  padding: 1rem 0.5rem 2rem 0.5rem;
  text-align: center;
  border-radius: 1rem;

  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}
section[data-sectionname="home"] .elm .img .svgOuter {
  margin: 0px auto;
}
section[data-sectionname="home"] .elm .img svg {
  width: 100%;
  margin-bottom: 0.75rem;
  filter: drop-shadow(0px 0px 5px rgb(0 0 0 / 0.4));
}
section[data-sectionname="home"] .elm .img .gradient {
  position: absolute;
  height: 50%;
  width: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
  background: linear-gradient(180deg, rgba(18,23,33,0.75) 0%, rgba(18,23,33,0) 100%);
}
section[data-sectionname="home"] .elm .img div:not(.gradient) {
  position: relative;
  z-index: 2;
}
section[data-sectionname="home"] .elm .img .gradient2 {
  background: linear-gradient(0deg, rgba(18,23,33,0.75) 0%, rgba(18,23,33,0) 100%);
  top: auto;
  bottom: 0px;
}
section[data-sectionname="home"] .elm .img sup {
  font-size: 0.5em;
}

/* ************************************************************
***************************************************************
***************************************************************
 OFFER VIEW
***************************************************************
***************************************************************
************************************************************* */
section[data-sectionname="offer"] .header svg {
  height: 18px;
}
section[data-sectionname="offer"] .container .card {
  background-size: 180% auto;
  background-position: center;
  text-align: left;
  padding: 0.75rem 1rem;
  position: relative;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
section[data-sectionname="offer"] .container .card .selectionChipSm {
  margin-bottom: 0;
}

section[data-sectionname="offer"] .container .card .gradient {
  position: absolute;
  height: 50%;
  width: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
  background: linear-gradient(180deg, rgba(18,23,33,0.75) 0%, rgba(18,23,33,0) 100%);
}
section[data-sectionname="offer"] .container .card div:not(.gradient) {
  position: relative;
  z-index: 2;
}

section[data-sectionname="offer"] .container .pricesLine {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap;
}
section[data-sectionname="offer"] .container .pricesLine > div:nth-child(1) {
  text-align: left;
}
section[data-sectionname="offer"] .container .pricesLine > div:nth-child(2) {
  text-align: right;
}
section[data-sectionname="offer"] .container .pricesLine .bigPrice {
  color: var(--col_pr60);;
}
section[data-sectionname="offer"] .container sup {
  font-size: 0.5em;
}
section[data-sectionname="offer"] .container .divider {
  background-color: #272D3B;
  height: 1px;
}
section[data-sectionname="offer"] .container .austattungPart2Opener {
  color: var(--col_pr60);
}
section[data-sectionname="offer"] .container .austattungPart2 {
  display: none;
}
.rightsLine .offerRights {
  padding-bottom: 0.75rem;
}

/* ************************************************************
***************************************************************
***************************************************************
 PAYTYPE VIEW
***************************************************************
***************************************************************
************************************************************* */
section[data-sectionname="paytype"] .selectionElms .elm {
  height: var(--unit_x44);
  background-color: rgba(32,37,53,1);
  border-radius: 16px;
  padding-left: 20px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
section[data-sectionname="paytype"] .selectionElms .elm:not(:last-child) {
  margin-bottom: 1rem;
}
section[data-sectionname="paytype"] .selectionElms .elm.selected {
  border: 1px var(--col_pr60) solid;
}
section[data-sectionname="paytype"] .selectionElms .elm:hover {
  -webkit-animation: pulseBorder_red 2s infinite;
  -moz-animation: pulseBorder_red 2s infinite;
  -ms-animation: pulseBorder_red 2s infinite;
  -o-animation: pulseBorder_red 2s infinite;
  animation: pulseBorder_red 2s infinite;
}

/* ************************************************************
***************************************************************
***************************************************************
 CONTACTDATA VIEW
***************************************************************
***************************************************************
************************************************************* */
section[data-sectionname="contactData"] .selectionElms .elm {

}
section[data-sectionname="contactData"] .selectionElms .elm:not(:last-child) {
  margin-bottom: 1rem;
}
section[data-sectionname="contactData"] .newsletterCheckboxArea {
  display: none;
}

/* ************************************************************
***************************************************************
***************************************************************
 THX VIEW
***************************************************************
***************************************************************
************************************************************* */
section[data-sectionname="thx"] .container .card {
  background-size: 200% auto;
  background-position: center;
  text-align: left;
  padding: 0.75rem 1rem;
  position: relative;
}
