.btn, .btn:link, .btn:visited, .btn:hover {
  display: inline-block;
  padding: 0.75rem 2rem;
  border-radius: .5rem;
  color: inherit;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer; }

.btn--green {
  background-color: #9cd046; }

.btn--blue {
  background-color: #1a3d61; }

.search-box {
  height: 5rem;
  border-radius: 5px;
  border: 1px solid #8096B1; }
  .search-box__input {
    width: 94%;
    height: 100%;
    padding-left: 1rem;
    background-color: inherit;
    border: none;
    outline: none;
    font-size: 1.6rem;
    color: #fff; }
    .search-box__input::placeholder {
      color: #8096B1; }
  .search-box__button {
    display: inline-block;
    height: 100%;
    width: 6%;
    float: right;
    background-color: inherit;
    text-align: right;
    cursor: pointer;
    position: relative; }
    .search-box__button button {
      height: 100%;
      background-color: inherit;
      border: none; }
      .search-box__button button .fal.fa-search {
        color: #8096B1;
        font-size: 3rem;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        left: 0; }

.accordion__name {
  display: block;
  position: relative;
  background-color: #334458;
  color: #B6C2D0;
  font-size: 1.8rem;
  cursor: pointer;
  padding: 1.55rem 5.3rem 1.55rem 4rem;
  z-index: 20; }
  .accordion__name .fas {
    position: absolute;
    right: 5.2rem;
    top: 2.5rem; }
  .accordion__name:hover {
    background: #223548; }

.accordion > input {
  display: none; }

.accordion__content, .accordion__contact {
  display: none; }

.accordion .section__display {
  margin-left: 1rem; }

.accordion input:checked + label {
  background-color: #223548;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  color: white;
  margin: 0; }

.accordion input:checked ~ form {
  border-bottom-left-radius: .25em;
  border-bottom-right-radius: .25em;
  height: auto;
  margin-bottom: .125em; }

.accordion__input {
  background-color: #223548;
  display: none;
  overflow: hidden;
  z-index: 10; }
  .accordion__input input[type=text],
  .accordion__input input[type=number] {
    width: 100%;
    padding: 1.4rem 0 1.4rem 1rem;
    border: 1px solid #8096B1;
    border-radius: 0.5rem; }
    .accordion__input input[type=text]::placeholder,
    .accordion__input input[type=number]::placeholder {
      font-size: 16px;
      color: #8096B1; }
  .accordion__input input[type=checkbox] {
    /* Double-sized Checkboxes */
    -ms-transform: scale(1.65);
    /* IE */
    -moz-transform: scale(1.65);
    /* FF */
    -webkit-transform: scale(1.65);
    /* Safari and Chrome */
    -o-transform: scale(1.65);
    /* Opera */
    transform: scale(1.65);
    margin-right: 0.5rem; }
  .accordion__input-checkbox {
    padding-top: 2rem;
    padding-bottom: 0.5rem; }
  .accordion__input-checkbox label:not(:last-child) {
    margin-right: 1.8rem; }
  .accordion__input-checkbox label:first-child,
  .accordion__input-checkbox label:last-child {
    margin-left: 0.5rem; }
  .accordion__input-checkbox.col-1-of-3 {
    padding: 0.5rem 0 0 0; }
  .accordion__input-radio label {
    color: #8096B1; }
  .accordion__input-radio input {
    margin-right: .5rem; }
  .accordion__input-radio label:not(:last-child) {
    margin-right: 1rem; }

.accordion__container {
  padding: 2rem 4.5rem 5rem 4rem; }
  .accordion__container .col-1-of-4 {
    color: #8096B1; }

.tox-tinymce {
  border-radius: 0.5rem 0.5rem 0 0 !important;
  height: 27.5rem;
  margin-top: 4rem;
  margin-bottom: -1rem; }

.tox-statusbar {
  display: none !important; }

.tox-toolbar {
  background: #EDF0F2 0% 0% no-repeat padding-box !important; }

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

/* 62,5 % von der Browsereinstellung des Users */
html {
  font-size: 62.5%; }

body {
  box-sizing: border-box; }

iframe {
  border-width: 0; }

.u-center-text {
  text-align: center !important; }

.u-margin-bottom-big {
  margin-bottom: 8rem !important; }

.u-margin-bottom-medium {
  margin-bottom: 4.5rem !important; }

.u-margin-bottom-small {
  margin-bottom: 1.5rem !important; }

.u-margin-top-small {
  margin-top: 1rem !important; }

.u-margin-top-medium {
  margin-top: 2.5rem !important; }

.u-margin-top-big {
  margin-top: 8rem !important; }

.u-margin-top-huge {
  margin-top: 10rem !important; }

.u-padding-bottom-medium {
  padding-bottom: 1.75rem !important; }

.u-padding-bottom-big {
  padding-bottom: 2.75rem !important; }

.u-float-right {
  float: right !important; }

body {
  font-family: "Open Sans", Regular;
  /* font-size: 16px; */
  font-size: 1.6rem;
  line-height: 2.2;
  color: #fff; }

.heading-tertiary {
  color: #8096B1;
  margin-bottom: 4rem; }

.heading-quaternary {
  color: #fff; }

.header {
  height: 10rem;
  background-image: linear-gradient(135deg, #3e82b9 0%, #356596 37%, #2c4975 100%);
  position: relative; }
  .header__logo-box {
    position: absolute;
    top: 1.5rem;
    left: 13.4rem; }
  .header__logo {
    max-height: 6.5rem;
    max-width: 100%; }
  .header__button-box {
    position: absolute;
    top: 2.5rem;
    right: 4.5rem; }
    .header__button-box a:not(:last-child) {
      margin-right: 2rem; }
    .header__button-box a .fal {
      font-size: 2.5rem;
      margin-right: 1rem; }
      .header__button-box a .fal:before {
        vertical-align: -.4rem; }

.navigation__item {
  height: 13.7rem;
  position: relative; }
  .navigation__item:hover {
    cursor: pointer;
    background-color: #223548; }

.navigation__link, .navigation__link:link, .navigation__link:visited {
  color: #4C6886;
  text-align: center;
  text-decoration: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.navigation__link .fab,
.navigation__link .fas {
  font-size: 4rem;
  display: block; }

.navigation__link span {
  display: block;
  font-size: 1.2rem;
  line-height: 1.7;
  margin-top: 1.3rem; }

.navigation input[type="radio"] {
  display: none; }

.active {
  background-color: #223548; }

.row {
  max-width: 100%;
  margin: 0 auto; }
  .row::after {
    content: "";
    display: table;
    clear: both; }
  .row [class^="col-"] {
    float: left; }
  .row .col-1-of-2 {
    width: calc((100% - 1.5rem) / 2); }
    .row .col-1-of-2:not(:last-child) {
      margin-right: 1.5rem; }
  .row .col-1-of-3 {
    width: calc((100% - 2 * 1.5rem) / 3); }
    .row .col-1-of-3:not(:last-child) {
      margin-right: 1.5rem; }
  .row .col-2-of-3 {
    width: calc(((100% - 2 * 1.5rem) / 3) * 2 + 1.5rem); }
  .row .col-1-of-4 {
    width: calc((100% - 3 * 1.5rem) / 4); }
  .row .col-2-of-4 {
    width: calc(((100% - 3 * 1.5rem) / 4) * 2 + 1.5rem); }
  .row .col-3-of-4 {
    width: calc(((100% - 3 * 1.5rem) / 4) * 3 + 2 * 1.5rem); }
  .row .col-special-1 {
    width: 5.208333333333333%; }
  .row .col-special-2 {
    width: 33.854166666666665%; }
  .row .col-special-3 {
    width: 60.9375%; }

.template__kind {
  height: 2.2rem;
  margin: 2rem 0;
  color: #B6C2D0; }
  .template__kind span:last-child {
    display: inline-block;
    float: right; }

.template__photo {
  width: 100%; }
  .template__photo:hover {
    cursor: pointer; }

.design__generally .row {
  border-bottom: 2px solid #142739;
  margin-top: 3.5rem; }
  .design__generally .row .col-1-of-3 {
    text-align: left;
    font-size: 1.6rem;
    color: #fff; }
    .design__generally .row .col-1-of-3:last-child {
      text-align: right; }

.design__headline {
  width: 100%;
  position: relative; }
  .design__headline:before {
    font-family: FontAwesome;
    content: '\f078';
    font-size: 1.5rem;
    font-weight: 900;
    position: absolute;
    right: 1.5rem;
    color: #fff;
    pointer-events: none; }
  .design__headline select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    height: 2rem;
    background-color: #223548;
    color: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 1.6rem;
    outline: none;
    cursor: pointer; }
  .design__headline select::-ms-expand {
    display: none; }

.design__font input {
  width: 3rem; }

.design__font-color {
  margin-right: 1.5rem; }

.design__logo {
  padding-bottom: 4.5rem;
  border-bottom: 2px solid #142739; }
  .design__logo-preview {
    width: 13rem;
    height: 13rem;
    border: 1px solid #5a6d84;
    border-radius: 5px;
    background-color: #334458;
    position: relative; }
    .design__logo-preview .fas.fa-camera {
      color: #5a6d84;
      font-size: 6.5rem;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .design__logo .col-2-of-3 {
    float: right; }
  .design__logo-standards {
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 1.5rem; }
  .design__logo-upload {
    padding: 0.75rem 2.5rem;
    background-color: #2f5a84; }
    .design__logo-upload input[type="file"] {
      display: none; }

.design__images-summary {
  height: 2.2rem;
  margin: 2rem 0;
  color: #B6C2D0; }
  .design__images-summary span:last-child {
    display: inline-block;
    float: right; }
  .design__images-summary--photos {
    width: 100%; }
  .design__images-summary .col-1-of-2:last-child {
    float: right; }

.design input[type="color"] {
  -webkit-appearance: none;
  border: none;
  border-radius: 2px;
  width: 3rem;
  height: 3rem; }

.design input[type="color"]::-webkit-color-swatch-wrapper {
  padding: 0; }

.design input[type="color"]::-webkit-color-swatch {
  border: none; }

.contact .accordion__container input:not(:last-child),
.contact .accordion__container .row {
  margin-bottom: 1.5rem !important; }

#main-content {
  height: 90vh;
  overflow: hidden; }

.section {
  background-color: #223548;
  height: 90vh;
  overflow: auto; }

.section-navigation {
  display: inline-block;
  height: 90vh;
  background-color: #142739;
  float: left; }

.section-template {
  position: relative;
  padding: 4rem; }

.section-design {
  display: none;
  padding: 4rem; }

.section-content {
  display: none; }

.section-contact {
  display: none; }

.section-fotos {
  display: none; }

.section-konfigurator-vorschau {
  margin: 6rem 0;
  padding-left: 4rem;
  padding-right: 4rem; }
