@import "/application/themes/eurotec/css/vendor/bootstrap-5.3.7/css/bootstrap.min.css";
@charset "UTF-8";
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.ccm-page a:hover,
.ccm-page a:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn.focus:active,
.btn:active:focus,
.btn:focus {
  outline: none !important;
}
.ccm-page {
  max-width: 2400px;
  margin: 0 auto;
}
.main-container {
  margin-top: -1px;
}
html {
  font-size: 16px;
}
@media (min-width: 992px) {
  html {
    font-size: 18px;
  }
}
body,
html,
.ccm-page {
  font-family: 'Open Sans', sans-serif;
  color: #323e48;
}
.ccm-page h1,
.ccm-page h2,
.ccm-page h3,
.ccm-page h4,
.ccm-page h5,
.ccm-page h6,
.ccm-page .h1,
.ccm-page .h2,
.ccm-page .h3,
.ccm-page .h4,
.ccm-page .h5,
.ccm-page .h6 {
  font-family: 'Open Sans', sans-serif;
  color: #323e48;
  line-height: 1.2;
}
.ccm-page h1,
.ccm-page .h1 {
  font-size: 2rem;
  font-weight: 900;
  margin: 0 0 1rem;
}
.ccm-page h2,
.ccm-page .h2 {
  font-size: 1.75rem;
  font-weight: 900;
  margin: 0 0 1rem;
}
.ccm-page h3,
.ccm-page .h3 {
  font-size: 1.5rem;
  font-weight: 900;
  margin: 0 0 1rem;
}
.ccm-page h4,
.ccm-page .h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin: 0 0 0.75rem;
}
.ccm-page h5,
.ccm-page .h5 {
  font-size: 1rem;
  font-weight: 600;
  margin: 0 0 0.75rem;
}
.ccm-page h6,
.ccm-page .h6 {
  font-size: 0.85rem;
  font-weight: 600;
  margin: 0 0 0.5rem;
}
.ccm-page p,
.ccm-page li,
.ccm-page ol,
.ccm-page a {
  font-size: 1rem;
  line-height: 1.6;
}
.ccm-page a {
  color: inherit;
}
.ccm-page p a {
  color: #ff8000;
}
.ccm-page .contentbox h2 {
  font-size: 1.75rem;
  font-weight: 900;
}
.ccm-page .contentbox h3 {
  font-size: 1.5rem;
  font-weight: 900;
  margin-bottom: 0.5rem;
}
.ccm-page .contentbox h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin: 0.5rem 0;
}
.ccm-page .contentbox a {
  text-decoration: none;
}
.ccm-page .h1 {
  margin: 0;
}
.ccm-page .h1--white {
  color: #ffffff;
}
.ccm-page .h1--main {
  color: #323e48;
}
.ccm-page .h1--small {
  font-size: 1.75rem;
}
.ccm-page .h1--margin-bottom-15 {
  margin-bottom: 1rem;
}
.ccm-page .h1--margin-bottom-30 {
  margin-bottom: 2rem;
}
.ccm-page .h1--margin-bottom-45 {
  margin-bottom: 3rem;
}
.ccm-page .h2 {
  margin: 0;
}
.ccm-page .h2--white {
  color: #ffffff;
}
.ccm-page .h2--main {
  color: #323e48;
}
.ccm-page .h2--center {
  text-align: center;
}
.ccm-page .h2--small {
  font-size: 1.5rem;
}
.ccm-page .h2--margin-bottom-15 {
  margin-bottom: 1rem;
}
.ccm-page .h2--margin-bottom-30 {
  margin-bottom: 2rem;
}
.ccm-page .h2--margin-top-30 {
  margin-top: 2rem;
}
.ccm-page .h2--margin-bottom-45 {
  margin-bottom: 3rem;
}
.ccm-page .h2--margin-15 {
  margin: 1rem 0;
}
.ccm-page .h2--link a {
  text-decoration: none;
}
.ccm-page .h2--link a:hover,
.ccm-page .h2--link a:focus {
  color: #ff8000;
}
.ccm-page .h3 {
  margin: 0;
  font-weight: 600;
}
.ccm-page .h3--white {
  color: #ffffff;
}
.ccm-page .h3--main {
  color: #323e48;
}
.ccm-page .h3--center {
  text-align: center;
}
.ccm-page .h3--left {
  text-align: left;
}
.ccm-page .h3--small {
  font-size: 1.2rem;
  line-height: 1.6;
}
.ccm-page .h3--big {
  font-size: 1.75rem;
  line-height: 1.2;
}
.ccm-page .h3--margin-15 {
  margin: 1rem 0;
}
.ccm-page .h3--margin-bottom-15 {
  margin-bottom: 1rem;
}
.ccm-page .h3--margin-bottom-30 {
  margin-bottom: 2rem;
}
.ccm-page .h3--margin-top-30 {
  margin-top: 2rem;
}
.ccm-page .h3--margin-bottom-45 {
  margin-bottom: 3rem;
}
.ccm-page .h4 {
  margin: 0;
}
.ccm-page .h4--margin-bottom-15 {
  margin-bottom: 1rem;
}
.ccm-page .h4--margin-bottom-30 {
  margin-bottom: 2rem;
}
.ccm-page .h4--big {
  font-size: 1.5rem;
}
.ccm-page .h4--bold {
  font-weight: 600;
}
.ccm-page p.btn-main {
  margin: 0;
}
.ccm-page p.btn-main a {
  background: #ff8000;
  color: #ffffff;
  border: 1px solid #ff8000;
  display: inline-block;
  font-weight: 400;
  text-align: center;
  cursor: pointer;
  padding: 6px 12px;
  font-size: 0.85rem;
  line-height: 1.6;
  text-decoration: none;
  padding-left: 2rem;
  padding-right: 2rem;
}
.ccm-page p.btn-main a:hover {
  color: #ff8000;
  background: #ffffff;
  border-radius: 0;
  transition: all .5s ease .05s !important;
}
.ccm-page .link {
  color: #ff8000;
  text-decoration: none;
}
.ccm-page .center h1,
.ccm-page .center h2,
.ccm-page .center h3,
.ccm-page .center h4,
.ccm-page .center h5 {
  text-align: center;
}
.ccm-page .center-standard {
  text-align: center;
}
.ccm-page .center-standard .btn {
  color: #ff8000;
  text-decoration: underline;
}
.ccm-page .main h1,
.ccm-page .main h2,
.ccm-page .main h3,
.ccm-page .main h4,
.ccm-page .main h5 {
  color: #ff8000;
}
.ccm-page .white h1,
.ccm-page .white h2,
.ccm-page .white h3,
.ccm-page .white h4 {
  color: #ffffff;
}
.ccm-page .white p {
  color: #ffffff;
}
.ccm-page.landingpage h1,
.ccm-page.landingpage .h1 {
  font-size: 2.5rem;
}
.ccm-page.landingpage h2,
.ccm-page.landingpage .h2 {
  font-size: 2rem;
}
.ccm-page .text-content p:last-child {
  margin: 0;
}
.ccm-page ol {
  margin: 0;
  padding-left: 1rem;
}
.ccm-page .text ul {
  list-style: none;
}
.ccm-page .text ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.5rem;
}
.ccm-page .text ul li:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f111";
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 10px;
  color: #ff8000;
}
.ccm-page .border-bottom h1,
.ccm-page .border-bottom-terrasse h1,
.ccm-page .border-bottom h2,
.ccm-page .border-bottom-terrasse h2,
.ccm-page .border-bottom h3,
.ccm-page .border-bottom-terrasse h3,
.ccm-page .border-bottom h4,
.ccm-page .border-bottom-terrasse h4 {
  position: relative;
  padding-bottom: 20px;
}
.ccm-page .border-bottom h1:after,
.ccm-page .border-bottom-terrasse h1:after,
.ccm-page .border-bottom h2:after,
.ccm-page .border-bottom-terrasse h2:after,
.ccm-page .border-bottom h3:after,
.ccm-page .border-bottom-terrasse h3:after,
.ccm-page .border-bottom h4:after,
.ccm-page .border-bottom-terrasse h4:after {
  content: '';
  display: block;
  width: 70px;
  height: 3px;
  border-radius: 3px;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -35px;
}
.ccm-page .border-bottom h1:after,
.ccm-page .border-bottom h2:after,
.ccm-page .border-bottom h3:after,
.ccm-page .border-bottom h4:after {
  background: #ff8000;
}
.ccm-page .border-bottom-terrasse h1:after,
.ccm-page .border-bottom-terrasse h2:after,
.ccm-page .border-bottom-terrasse h3:after,
.ccm-page .border-bottom-terrasse h4:after {
  background: #cfe171;
}
.ccm-page .form-select {
  color: #323e48;
}
.ccm-page input,
.ccm-page select,
.ccm-page textarea,
.ccm-page .form-control,
.ccm-page .form-select {
  font-size: 1rem;
}
.ccm-page .kontakt-form .alert.alert-danger ul {
  padding-left: 20px;
  margin: 0;
}
.ccm-page .kontakt-form p a {
  text-decoration: underline;
  color: #ff8000;
}
.ccm-page .kontakt-form select {
  cursor: pointer;
}
.ccm-page .kontakt-form .form-group {
  position: relative;
}
.ccm-page .kontakt-form .form-group.is-focused label {
  top: 6px;
  font-size: 0.7rem;
  color: #ff8000;
}
.ccm-page .kontakt-form .form-group.is-filled label {
  top: 6px;
  font-size: 0.7rem;
  color: rgba(0, 0, 0, 0.45);
}
.ccm-page .kontakt-form .form-group label {
  position: absolute;
  pointer-events: none;
  transition: all .25s ease;
  top: 18px;
  left: 0;
  margin: 0;
}
.ccm-page .kontakt-form .text-muted {
  display: none;
}
.ccm-page .kontakt-form .form-control {
  background: none;
  border: 0;
  border-bottom: 1px solid #dcdcdc;
  border-radius: 0;
  box-shadow: none;
  color: #000000;
  padding: 20px 0 12px;
  height: auto;
}
.ccm-page .kontakt-form .form-control:focus {
  outline: none;
  box-shadow: none;
  border-bottom-color: #ff8000;
}
.ccm-page .kontakt-form select.form-control,
.ccm-page .kontakt-form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url(/application/themes/eurotec/images/br_down_padd.webp);
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 18px 18px;
  padding-right: 44px;
}
.ccm-page .job-filter-form .btn-container {
  position: relative;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ffffff;
  border-radius: 0.25rem;
  font-weight: 600;
  padding: 0 1rem;
}
.ccm-page .job-filter-form .btn-container i {
  margin-left: 0.75rem;
}
.ccm-page .job-filter-form .btn-container input[type="submit"] {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: none;
  border: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.ccm-page .job-filter-form .form-control {
  color: #323e48;
  padding: 10px 1rem;
  height: auto;
  border-radius: 0;
}
.ccm-page #login_form .error-message label {
  color: #990000;
}
.ccm-page #login_form .error-message .form-control {
  border-color: #990000;
}
.ccm-page #login_form .form-control {
  border-radius: 0;
}
.ccm-page #login_form .message {
  display: none;
  padding: 8px 12px;
  text-align: center;
  background: #990000;
  color: #ffffff;
  border: 1px solid #eeeeee;
}
.ccm-page #login_form .message.display {
  display: block;
}
.ccm-page .ccm-required-attribute-form .ccm-required {
  display: none;
}
.ccm-page .ccm-required-attribute-form .checkbox {
  display: block;
}
.ccm-page .formidable .form-group {
  margin-bottom: 1rem;
}
.ccm-page .formidable label {
  position: relative;
  top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: #323e48;
}
.ccm-page .formidable label p {
  margin-top: 0;
}
.ccm-page .formidable .form-control,
.ccm-page .formidable .form-select {
  border-radius: 0.25rem;
  border: 1px solid #d9d9d9;
  padding: 0.75rem 1rem;
  color: #323e48;
  background-color: #ffffff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ccm-page .formidable .form-control::placeholder,
.ccm-page .formidable .form-select::placeholder {
  color: #748b9f;
}
.ccm-page .formidable .form-control:focus,
.ccm-page .formidable .form-select:focus {
  border-color: #ff8000;
  box-shadow: 0 0 0 3px rgba(255, 128, 0, 0.15);
  outline: none;
}
.ccm-page .formidable .form-control:hover:not(:focus),
.ccm-page .formidable .form-select:hover:not(:focus) {
  border-color: #c0c0c0;
}
.ccm-page .formidable textarea.form-control {
  min-height: 150px;
  resize: vertical;
}
.ccm-page .formidable .form-select {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23323e48' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  padding-right: 3rem;
}
.ccm-page .formidable .btn-primary {
  background-color: #ff8000;
  border: none;
  border-radius: 0.25rem;
  padding: 0.75rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  color: #ffffff;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.1s ease;
}
.ccm-page .formidable .btn-primary:hover {
  background-color: #d66c00;
}
.ccm-page .formidable .btn-primary:active {
  transform: translateY(1px);
}
.ccm-page .formidable .btn-primary .fa-spinner {
  display: none;
  margin-left: 0.5rem;
}
.ccm-page .formidable .btn-primary.loading {
  pointer-events: none;
  opacity: 0.8;
}
.ccm-page .formidable .btn-primary.loading .fa-spinner {
  display: inline-block;
}
.ccm-page .formidable .captcha-display img {
  border-radius: 0.25rem;
  cursor: pointer;
}
.ccm-page .formidable .datenschutz {
  font-size: 0.85rem;
  color: #5c7284;
  line-height: 1.8;
}
.ccm-page .formidable .datenschutz p {
  margin-bottom: 0.5rem;
}
.ccm-page .formidable .datenschutz a {
  color: #ff8000;
  text-decoration: underline;
}
.ccm-page .formidable .datenschutz a:hover {
  color: #cc6600;
}
.ccm-page .formidable .alert {
  border-radius: 0.25rem;
  padding: 1rem;
  margin-bottom: 2rem;
}
.ccm-page .formidable .alert.alert-danger {
  background-color: rgba(241, 96, 73, 0.15);
  border: 1px solid #f16049;
  color: #dd2d11;
}
.ccm-page .formidable .alert.alert-success {
  background-color: rgba(14, 163, 143, 0.15);
  border: 1px solid #0ea38f;
  color: #085d51;
}
.ccm-page .formidable .alert.hide {
  display: none;
}
.ccm-page .formidable .form-control.is-invalid,
.ccm-page .formidable .form-select.is-invalid {
  border-color: #f16049;
}
.ccm-page .formidable .form-control.is-invalid:focus,
.ccm-page .formidable .form-select.is-invalid:focus {
  box-shadow: 0 0 0 3px rgba(241, 96, 73, 0.15);
}
.ccm-page .formidable .form-control.is-valid,
.ccm-page .formidable .form-select.is-valid {
  border-color: #0ea38f;
}
.ccm-page .formidable .form-control.is-valid:focus,
.ccm-page .formidable .form-select.is-valid:focus {
  box-shadow: 0 0 0 3px rgba(14, 163, 143, 0.15);
}
.ccm-page .formidable .invalid-feedback {
  color: #f16049;
  font-size: 0.85rem;
  margin-top: 0.5rem;
}
.ccm-page .formidable .row {
  margin-bottom: 0.5rem;
}
.ccm-page .formidable .row:last-child {
  margin-bottom: 0;
}
.ccm-page .formidable .row.mt-2 {
  margin-top: 2rem;
}
.ccm-page .landingpage-form .formidable {
  margin: 0;
  padding: 0;
}
.ccm-page .landingpage-form .formidable .form-control,
.ccm-page .landingpage-form .formidable .form-select {
  background-color: #ffffff;
  border: 1px solid #d9d9d9;
  padding: 1rem;
}
.ccm-page .form_content {
  padding: 2rem 1rem;
  border: 3px solid #ff8000;
}
@media (min-width: 768px) {
  .ccm-page .form_content {
    padding: 2rem 3rem;
  }
}
@media (min-width: 992px) {
  .ccm-page .form_content {
    padding: 2rem 120px;
  }
}
.ccm-page picture img {
  border-radius: 0.375rem;
}
.ccm-page .relative {
  position: relative;
}
@media (max-width: 991px) {
  .ccm-page .tablet-hidden {
    display: none;
  }
}
.ccm-page .tablet-visible {
  display: none;
}
@media (max-width: 991px) {
  .ccm-page .tablet-visible {
    display: block;
  }
}
@media (max-width: 767px) {
  .ccm-page .mobile-disable {
    display: none;
  }
}
.ccm-page .mobile-button {
  text-decoration: none;
  display: flex;
}
@media (max-width: 767px) {
  .ccm-page .mobile-button {
    margin-left: 1rem;
    margin-top: 0px;
  }
  .ccm-page .mobile-button i {
    font-size: 23px !important;
  }
}
@media (max-width: 991px) {
  .ccm-page .resp-bottom-15 {
    margin-bottom: 1rem;
  }
}
.ccm-page .margin-top-60 {
  margin-top: 4rem;
}
.ccm-page .white_content {
  padding: 4rem 0;
  background: #ffffff;
}
.ccm-page .black_content {
  padding: 4rem 0;
  background: #272525;
}
.ccm-page .gray_content {
  padding: 4rem 0;
  background: #f5f5f5;
}
.ccm-page .gray_content__small {
  padding: 1rem 0;
}
.ccm-page .orange_content {
  padding: 4rem 0;
  background: #ff8000;
}
.ccm-page .holzbau_trans {
  padding: 4rem 0;
  background: rgba(252, 192, 67, 0.8);
}
.ccm-page .holzbauschrauben_trans {
  padding: 4rem 0;
  background: #f16049;
}
.ccm-page .terrasse_trans {
  padding: 4rem 0;
  background: rgba(207, 225, 113, 0.8);
}
.ccm-page .solar_trans {
  padding: 4rem 0;
  background: rgba(163, 216, 230, 0.5);
}
.ccm-page .green_gradient_border {
  padding: 5rem 0;
  background-image: linear-gradient(-70deg, #c9d749 0%, #5b7027 80%);
  background-color: #c9d749;
  border-bottom-right-radius: 360px;
}
.ccm-page .green_border {
  padding: 5rem 0;
  background: rgba(207, 225, 113, 0.7);
  border-bottom-right-radius: 360px;
}
.ccm-page .trans_border {
  padding: 5rem 0;
  border-bottom-right-radius: 360px;
}
.ccm-page .green_bg {
  background: #ecefbd;
  padding: 2rem 0;
  position: relative;
}
.ccm-page .green_bg:before {
  content: "";
  position: absolute;
  background: inherit;
  top: 0px;
  bottom: 0px;
  left: -5000px;
  right: 100%;
}
@media only screen and (min-width: 992px) {
  .ccm-page .flex-row.row {
    display: flex;
    flex-wrap: wrap;
  }
  .ccm-page .flex-row.row > [class*='col-'] {
    display: flex;
    flex-direction: column;
  }
  .ccm-page .flex-row.row:after,
  .ccm-page .flex-row.row:before {
    display: flex;
  }
  .ccm-page .flex-center {
    display: flex !important;
    align-items: center;
  }
}
@media only screen and (min-width: 768px) {
  .ccm-page .flex-row-product.row {
    display: flex;
    flex-wrap: wrap;
  }
  .ccm-page .flex-row-product.row > [class*='col-'] {
    display: flex;
    flex-direction: column;
  }
  .ccm-page .flex-row-product.row:after,
  .ccm-page .flex-row-product.row:before {
    display: flex;
  }
}
.ccm-page .flex-row-product-half.row {
  display: flex;
  flex-wrap: wrap;
}
.ccm-page .flex-row-product-half.row > [class*='col-'] {
  display: flex;
  flex-direction: column;
}
.ccm-page .flex-row-product-half.row:after,
.ccm-page .flex-row-product-half.row:before {
  display: flex;
}
.ccm-page .color-main .btn--white {
  border: 1px solid #ff8000;
  background: #ff8000;
}
.ccm-page .color-main .btn--white:hover {
  color: #ff8000;
  background: #ffffff;
}
@media (max-width: 576px) {
  .ccm-page .color-main .btn--white {
    margin: 1rem 0;
  }
}
.ccm-page .sidebar {
  background: #f5f5f5;
  padding-bottom: 2rem;
  margin-top: 2rem;
}
@media (min-width: 992px) {
  .ccm-page .sidebar {
    height: 100%;
    padding-top: 2rem;
    margin-top: 0px;
  }
}
.ccm-page .full {
  overflow: hidden;
}
.ccm-page .full .container {
  width: 100%;
  padding-left: 0px;
  padding-right: 0px;
}
.ccm-page .full .container .container {
  padding-left: 1rem;
  padding-right: 1rem;
  width: 1170px;
}
@media (max-width: 1199px) {
  .ccm-page .full .container .container {
    width: 970px;
  }
}
@media (max-width: 991px) {
  .ccm-page .full .container .container {
    width: 750px;
  }
}
@media (max-width: 767px) {
  .ccm-page .full .container .container {
    width: 100%;
  }
}
.ccm-page .check-list ul {
  list-style: none;
}
.ccm-page .check-list ul li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 0.5rem;
}
.ccm-page .check-list ul li:before {
  content: "\f00c";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  left: 0px;
}
.ccm-page .download {
  background: #f5f5f5;
  padding: 2rem;
}
.ccm-page .icon--main {
  color: #cfe171;
}
.ccm-page .icon--big {
  font-size: 45px;
}
.ccm-page .icon--white {
  color: #ffffff;
}
.ccm-page .icon--right-30 {
  margin-right: 2rem;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .ccm-page .icon--right-30 {
    margin-right: 2rem;
    margin-bottom: 0px;
  }
}
.ccm-page .test {
  display: flex;
  flex-flow: column-reverse;
  flex-direction: row;
  align-content: flex-start;
  align-items: flex-start;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 2rem;
  align-self: flex-start;
}
@media (min-width: 768px) {
  .ccm-page .test {
    margin-left: auto;
  }
}
@media (max-width: 767px) {
  .ccm-page .test {
    position: absolute;
    right: 110px;
    top: 54px;
  }
  .ccm-page .test i {
    color: #ff8000;
  }
}
/* ========================================================================== */
/* header.less                                                                */
/* Header Layout + Mobile Menu Container + Language Switcher                   */
/* ========================================================================== */
.ccm-page .header {
  position: relative;
  z-index: 200;
  background: #ffffff;
  /* ------------------------------------------------------------ */
  /* TOP + BOTTOM CONTAINERS                                       */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* LOGO                                                         */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* HAMBURGER                                                    */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* SUPPORT TICKET (Desktop)                                     */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* LANGUAGE SWITCHER (shared Desktop + Mobile)                   */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* MOBILE MENU CONTAINER (Panel / Scroll / UX)                   */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* SECONDARY NAV IN MOBILE (optional area inside mobile menu)    */
  /* ------------------------------------------------------------ */
}
@media (max-width: 576px) {
  .ccm-page .header {
    position: fixed;
    width: 100%;
  }
}
.ccm-page .header__top-container {
  border-bottom: 1px solid #d9d9d9;
  position: relative;
}
.ccm-page .header__top-container.claim div p {
  padding: 0;
  margin: 0;
  font-weight: 600;
}
.ccm-page .header__bottom-container {
  border-bottom: 1px solid #d9d9d9;
  display: block;
}
.ccm-page .header__bottom-container.is-fixed .fixed-logo {
  width: 180px;
}
.ccm-page .header__bottom-container .fixed-logo {
  width: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
.ccm-page .header__bottom-container .fixed-logo img {
  max-width: 100%;
  height: auto;
}
.ccm-page .header__logo {
  height: 5.5rem;
}
.ccm-page .header__logo img {
  height: 5.5rem;
}
@media (max-width: 767px) {
  .ccm-page .header__logo {
    height: 3.5rem;
  }
  .ccm-page .header__logo img {
    height: 3.5rem;
  }
}
.ccm-page .header__logo--mobile {
  display: none;
}
@media (max-width: 767px) {
  .ccm-page .header__logo--mobile {
    display: block;
    max-width: 50%;
  }
  .ccm-page .header__logo--mobile a {
    width: 100%;
  }
  .ccm-page .header__logo--mobile picture {
    width: 100%;
  }
  .ccm-page .header__logo--mobile picture img {
    width: 100%;
    height: auto;
  }
}
.ccm-page .header__logo--active {
  display: block !important;
}
.ccm-page .header .navbar-brand {
  width: 200px;
}
@media (max-width: 767px) {
  .ccm-page .header .navbar-brand {
    width: auto;
    max-width: 150px;
    padding: 0 0 0 1rem;
  }
}
.ccm-page .header .navbar-toggler:focus {
  outline: none;
  box-shadow: none;
}
.ccm-page .header .navbar-toggler i {
  font-size: 1.5rem;
}
.ccm-page .header .support-ticket {
  border: 1px solid #fff;
  padding: 3px 16px;
  border-radius: 50px;
  margin-right: 30px;
  color: #ffffff;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.ccm-page .header .support-ticket:hover {
  background-color: #ffffff;
  color: #FA8610;
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(255, 255, 255, 0.3);
}
.ccm-page .header .support-ticket:hover i {
  color: #FA8610;
  transform: scale(1.1);
}
.ccm-page .header .support-ticket:hover div {
  color: #FA8610;
}
.ccm-page .header .support-ticket:focus,
.ccm-page .header .support-ticket:active {
  outline: none;
  background-color: #ffffff;
  color: #FA8610;
  transform: translateY(0);
  box-shadow: 0 2px 10px rgba(255, 255, 255, 0.4);
}
.ccm-page .header .support-ticket i {
  color: #ffffff;
  font-size: 19px;
  margin-right: 10px;
  margin-top: 1px;
  transition: all 0.3s ease;
}
.ccm-page .header .support-ticket div {
  color: #ffffff;
  transition: all 0.3s ease;
  font-weight: 500;
}
.ccm-page .header .support-ticket::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}
.ccm-page .header .support-ticket:hover::before {
  width: 300px;
  height: 300px;
}
@media (max-width: 767px) {
  .ccm-page .header .support-ticket {
    display: none;
  }
}
.ccm-page .header .language-switcher {
  position: relative;
  display: inline-block;
  margin: 0px 0 -4px 0;
  font-family: 'Open Sans', sans-serif;
}
.ccm-page .header .language-switcher__toggle {
  font-weight: 600;
  font-size: 1rem;
  background: none;
  border: none;
  display: flex;
  align-items: center;
  gap: 6px;
  color: #ffffff;
  white-space: nowrap;
  cursor: pointer;
}
.ccm-page .header .language-switcher__toggle i {
  font-size: 0.75rem;
  vertical-align: middle;
  opacity: .9;
}
@media (max-width: 767px) {
  .ccm-page .header .language-switcher__toggle {
    color: #323e48;
    font-size: 0.95rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
  }
  .ccm-page .header .language-switcher__toggle:active {
    background: #f5f5f5;
    color: #ff8000;
  }
}
.ccm-page .header .language-switcher__list {
  display: none;
  position: absolute;
  right: 0;
  top: 100%;
  background: #ffffff;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.5rem;
  padding: 0.5rem 0;
  list-style: none;
  z-index: 1000;
  margin-top: 0.75rem;
}
.ccm-page .header .language-switcher__list.is-visible {
  display: block;
}
@media (max-width: 767px) {
  .ccm-page .header .language-switcher__list {
    min-width: 150px;
  }
}
.ccm-page .header .language-switcher__link {
  display: block;
  padding: 0.5rem 1rem;
  min-width: 120px;
  white-space: nowrap;
  text-decoration: none;
  color: #000000;
  font-size: 1rem;
}
.ccm-page .header .language-switcher__link:hover,
.ccm-page .header .language-switcher__link.is-active {
  background-color: #f0f0f0;
}
@media (max-width: 767px) {
  .ccm-page .header .language-switcher__link {
    padding: 0.5rem 0.75rem;
    min-width: 100px;
  }
}
@media (min-width: 768px) {
  .ccm-page .header__language-mobile {
    display: none;
  }
}
.ccm-page .header__language-mobile .language-switcher {
  margin: 0;
}
.ccm-page .header__language {
  margin-left: 2rem;
  align-self: flex-start;
}
@media (max-width: 767px) {
  .ccm-page .header__language {
    position: static;
    margin: 0;
  }
}
.ccm-page .header__language:hover {
  color: #ff8000;
}
.ccm-page .header__language i {
  font-size: 2rem;
}
@media (max-width: 767px) {
  .ccm-page .header__language i {
    font-size: 1rem;
  }
}
.ccm-page .header__mobile-menu {
  background: #ffffff;
  border-top: 1px solid #d9d9d9;
  position: relative;
  z-index: 1020;
  /* Default closed */
  display: none;
  /* Open on mobile only */
  /* Always visible in edit mode */
  /* Height rules: content height but never beyond screen */
  max-height: calc(100vh - 80px);
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  /* Reset lists inside */
}
@media (max-width: 767px) {
  .ccm-page .header__mobile-menu.is-open {
    display: block;
    animation: slideDown 180ms ease-out;
  }
}
.ccm-edit-mode .ccm-page .header__mobile-menu {
  display: block !important;
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.ccm-page .header__mobile-menu nav#menu,
.ccm-page .header__mobile-menu ul,
.ccm-page .header__mobile-menu ol {
  margin: 0;
  padding: 0;
}
.ccm-page .header__mobile-menu ul {
  list-style: none;
}
.ccm-page .header__mobile-secondary .secondavy_nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ccm-page .header__mobile-secondary .secondavy_nav a {
  display: block;
  padding: 0.75rem 1rem;
  color: #323e48;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid #d9d9d9;
  font-size: 1rem;
}
.ccm-page .header__mobile-secondary .secondavy_nav a:last-child {
  border-bottom: none;
}
.ccm-page .header__mobile-secondary .secondavy_nav a:active {
  background: #f5f5f5;
  color: #ff8000;
}
.ccm-page .header__mobile-secondary .dropdown {
  display: block;
}
.ccm-page .header__mobile-secondary .dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ccm-page .header__mobile-secondary .dropdown-toggle::after {
  display: none;
}
.ccm-page .header__mobile-secondary .dropdown-toggle i {
  font-size: 0.75rem;
  transition: transform 200ms ease;
}
.ccm-page .header__mobile-secondary .dropdown-menu {
  display: none;
  position: static;
  background: #fafafa;
  border: none;
  box-shadow: none;
  padding: 0;
  opacity: 1;
  pointer-events: auto;
  max-height: 0;
  overflow: hidden;
  transition: max-height 200ms ease;
}
.ccm-page .header__mobile-secondary .dropdown-menu.show {
  max-height: 500px;
  display: block;
}
.ccm-page .header__mobile-secondary .dropdown-item {
  padding: 0.75rem 1rem 0.75rem calc(19rem);
  font-size: 0.98rem;
  font-weight: 600;
  border-bottom: 1px solid #f0f0f0;
  position: relative;
}
.ccm-page .header__mobile-secondary .dropdown-item:last-child {
  border-bottom: none;
}
.ccm-page .header__mobile-secondary .dropdown-item:before {
  content: '';
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #ff8000;
  opacity: .9;
}
/* ========================================================================== */
/* navigation.less                                                            */
/* Desktop Megamenu + Mobile Nav UX (Accordion + Indentation)                 */
/* ========================================================================== */
.ccm-page .header {
  /* Hide Bootstrap caret */
  /* ------------------------------------------------------------ */
  /* DESKTOP MAIN NAV (your megamenu markup: .header__list etc.)    */
  /* ------------------------------------------------------------ */
  /* ------------------------------------------------------------ */
  /* MOBILE NAV (AutoNav "mobile_navigation" template + your JS)   */
  /* Target: #navbarContent .header__mobile-menu                    */
  /* ------------------------------------------------------------ */
}
.ccm-page .header .secondavy_nav .dropdown-toggle::after {
  display: none;
}
.ccm-page .header .secondavy_nav .dropdown-toggle .fa-chevron-down {
  font-size: 0.75rem;
  vertical-align: middle;
}
.ccm-page .header .secondavy_nav > a,
.ccm-page .header .secondavy_nav > .dropdown > a {
  font-weight: 600;
  text-decoration: none;
  color: #fff;
}
.ccm-page .header__list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 6rem;
}
@media (max-width: 1200px) {
  .ccm-page .header__list {
    /* on mobile it becomes vertical inside the panel */
    gap: 1rem;
  }
}
@media (max-width: 767px) {
  .ccm-page .header__list {
    /* on mobile it becomes vertical inside the panel */
    flex-direction: column;
    gap: 0;
    width: 100%;
  }
}
.ccm-page .header__list--sub {
  padding: 0.75rem 0 0.75rem;
  position: absolute;
  background: #ffffff;
  z-index: 20;
  border-bottom: 2px solid #ff8000;
  top: 75px;
  left: 0;
  width: 100%;
  list-style: none;
  /* Desktop animation base */
  display: block;
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity 220ms ease, transform 220ms ease;
  overflow: hidden;
}
@media (max-width: 767px) {
  .ccm-page .header__list--sub {
    position: static;
    background: #fafafa;
    border: none;
    padding: 8px 0 10px 0;
    opacity: 1;
    pointer-events: auto;
    transform: none;
    display: none;
  }
  .ccm-page .header__list--sub.is-open {
    display: block;
  }
}
.ccm-page .header__item {
  display: inline-block;
}
@media (max-width: 767px) {
  .ccm-page .header__item {
    display: block;
    width: 100%;
  }
}
.ccm-page .header__item--open .header__list--sub {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
@media (max-width: 767px) {
  .ccm-page .header__item--open .header__list--sub {
    display: block;
  }
}
.ccm-page .header__item--open > .header__link {
  color: #ff8000;
}
@media (max-width: 767px) {
  .ccm-page .header__item--open > .header__link {
    background: #f7f7f7;
  }
}
.ccm-page .header__link {
  color: inherit;
  padding: 1rem 0;
  display: block;
  font-weight: 700;
  text-decoration: none;
  font-size: 20px;
}
@media (max-width: 767px) {
  .ccm-page .header__link {
    padding: 14px 1rem;
    font-size: 1.05rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 48px;
  }
  .ccm-page .header__link i {
    font-size: .85rem;
    transition: transform 180ms ease;
    opacity: .7;
  }
  .ccm-page .header__link:active {
    background: #f5f5f5;
  }
}
@media (min-width: 768px) {
  .ccm-page .header__link:hover,
  .ccm-page .header__link:focus {
    color: #ff8000;
  }
}
.ccm-page .header__link--img,
.ccm-page .header__link--text {
  padding: 0;
  background: #f5f5f5;
  height: 100%;
  overflow: hidden;
  font-weight: 500;
}
@media (max-width: 767px) {
  .ccm-page .header__link--img,
  .ccm-page .header__link--text {
    padding: 10px 1rem;
    height: auto;
    background: transparent;
  }
}
.ccm-page .header__link--img span,
.ccm-page .header__link--text span {
  display: block;
  height: 100%;
}
@media (max-width: 767px) {
  .ccm-page .header__link--img span,
  .ccm-page .header__link--text span {
    height: auto;
  }
}
.ccm-page .header__link--img span .inner,
.ccm-page .header__link--text span .inner {
  padding: 5px 1rem;
  height: 100%;
  display: block;
}
@media (max-width: 767px) {
  .ccm-page .header__link--img span .inner,
  .ccm-page .header__link--text span .inner {
    padding: 0;
    height: auto;
    display: none;
    /* mobile: hide inner tile label if needed */
  }
}
.ccm-page .header__img {
  width: 100%;
}
@media (max-width: 767px) {
  .ccm-page .header__img {
    display: none;
  }
}
.ccm-page .header__mobile-menu {
  /* Top-level list items */
  /* Top-level anchors */
  /* Open state (your JS toggles li.is-open + sub ul.is-open) */
  /* Submenus (2nd level) */
  /* Submenu items */
  /* Submenu anchors */
  /* 3rd level (if exists) */
}
.ccm-page .header__mobile-menu nav#menu > ul > li,
.ccm-page .header__mobile-menu ul.nav_mobile > li,
.ccm-page .header__mobile-menu .header__list > li {
  border-bottom: 1px solid #d9d9d9;
}
.ccm-page .header__mobile-menu nav#menu > ul > li:last-child,
.ccm-page .header__mobile-menu ul.nav_mobile > li:last-child,
.ccm-page .header__mobile-menu .header__list > li:last-child {
  border-bottom: none;
}
.ccm-page .header__mobile-menu nav#menu > ul > li > a,
.ccm-page .header__mobile-menu ul.nav_mobile > li > a,
.ccm-page .header__mobile-menu .header__list > li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 1rem;
  font-size: 1.05rem;
  font-weight: 700;
  color: #323e48;
  text-decoration: none;
  min-height: 48px;
}
.ccm-page .header__mobile-menu nav#menu > ul > li > a i,
.ccm-page .header__mobile-menu ul.nav_mobile > li > a i,
.ccm-page .header__mobile-menu .header__list > li > a i {
  margin-left: 0.75rem;
  font-size: .85rem;
  transition: transform 180ms ease;
  opacity: .7;
}
.ccm-page .header__mobile-menu nav#menu > ul > li > a:active,
.ccm-page .header__mobile-menu ul.nav_mobile > li > a:active,
.ccm-page .header__mobile-menu .header__list > li > a:active {
  background: #f5f5f5;
}
.ccm-page .header__mobile-menu li.is-open > a {
  background: #f7f7f7;
  color: #ff8000;
}
.ccm-page .header__mobile-menu li.is-open > a i {
  transform: rotate(90deg);
  opacity: 1;
}
.ccm-page .header__mobile-menu nav#menu ul ul,
.ccm-page .header__mobile-menu ul.nav_mobile ul,
.ccm-page .header__mobile-menu .header__list--sub {
  display: none;
  margin: 0;
  padding: 8px 0 10px 0;
  background: #fafafa;
  border-top: 1px solid #efefef;
}
.ccm-page .header__mobile-menu nav#menu ul ul.is-open,
.ccm-page .header__mobile-menu ul.nav_mobile ul.is-open,
.ccm-page .header__mobile-menu .header__list--sub.is-open {
  display: block;
}
.ccm-page .header__mobile-menu nav#menu ul ul > li,
.ccm-page .header__mobile-menu ul.nav_mobile ul > li,
.ccm-page .header__mobile-menu .header__list--sub > li {
  border-bottom: 1px solid #f0f0f0;
}
.ccm-page .header__mobile-menu nav#menu ul ul > li:last-child,
.ccm-page .header__mobile-menu ul.nav_mobile ul > li:last-child,
.ccm-page .header__mobile-menu .header__list--sub > li:last-child {
  border-bottom: none;
}
.ccm-page .header__mobile-menu nav#menu ul ul > li > a,
.ccm-page .header__mobile-menu ul.nav_mobile ul > li > a,
.ccm-page .header__mobile-menu .header__list--sub > li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 1rem 10px 1rem;
  font-size: .98rem;
  font-weight: 600;
  color: #283139;
  text-decoration: none;
}
.ccm-page .header__mobile-menu nav#menu ul ul > li > a:before,
.ccm-page .header__mobile-menu ul.nav_mobile ul > li > a:before,
.ccm-page .header__mobile-menu .header__list--sub > li > a:before {
  content: '';
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #ff8000;
  opacity: .9;
}
.ccm-page .header__mobile-menu nav#menu ul ul > li > a:active,
.ccm-page .header__mobile-menu ul.nav_mobile ul > li > a:active,
.ccm-page .header__mobile-menu .header__list--sub > li > a:active {
  background: #f3f3f3;
}
.ccm-page .header__mobile-menu nav#menu ul ul ul > li > a,
.ccm-page .header__mobile-menu ul.nav_mobile ul ul > li > a,
.ccm-page .header__mobile-menu .header__list--sub ul li a {
  padding-left: 1rem;
  font-size: .95rem;
  font-weight: 500;
}
.ccm-page .header__mobile-menu nav#menu ul ul ul > li > a:before,
.ccm-page .header__mobile-menu ul.nav_mobile ul ul > li > a:before,
.ccm-page .header__mobile-menu .header__list--sub ul li a:before {
  left: 1rem;
  width: 5px;
  height: 5px;
  opacity: .6;
}
/* -------------------------------------------------------------------------- */
/* DESKTOP MEGAMENU GRID (keeps your tile grid)                                */
/* -------------------------------------------------------------------------- */
#navigation .header__list--sub {
  /* Mobile: keep simple */
}
@media (min-width: 768px) {
  #navigation .header__list--sub .flex-row {
    display: flex;
    flex-wrap: wrap;
    margin-left: 0;
    margin-right: 0;
    gap: 0.5%;
  }
  #navigation .header__list--sub .flex-row::before {
    display: none;
  }
  #navigation .header__list--sub .megamenu-col-5 {
    flex: 0 0 19.5%;
    max-width: 19.5%;
    box-sizing: border-box;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0.5%;
  }
  #navigation .header__list--sub .header__item {
    display: flex;
    flex-direction: column;
    align-items: left;
  }
  #navigation .header__list--sub .header__link {
    display: flex;
    flex-direction: column;
  }
  #navigation .header__list--sub .header__img {
    width: 100%;
    max-height: 120px;
    object-fit: cover;
    object-position: center center;
    background: #f7f7f7;
    display: block;
  }
  #navigation .header__list--sub .inner {
    font-weight: 600;
    font-size: 1.06rem;
    padding: 0.75rem 8px;
    background: #fafbfc;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
}
@media (max-width: 767px) {
  #navigation .header__list--sub .flex-row {
    display: block;
  }
  #navigation .header__list--sub .megamenu-col-5 {
    width: 100%;
    max-width: none;
  }
  #navigation .header__list--sub .header__img {
    display: none;
  }
  #navigation .header__list--sub .inner {
    display: none;
  }
}
/* ========================================================================== */
/* PATCH: Mobile Menu – Submenu Einrückung fix + Höhe/Scrolling richtig        */
/* Pack das 1:1 ans ENDE deiner navigation.less (oder header.less)             */
/* ========================================================================== */
@media (max-width: 767px) {
  .ccm-page .header {
    /* 1) Mobile-Panel: nicht “abgeschnitten”, sauber scrollen */
    /* 2) Submenu UL: kein extra Padding links/rechts */
    /* 3) Submenu LI/A: “Best practice” Einzug, aber moderat + Bullet korrekt */
    /* Bullet links INSIDE der Zeile, ohne absolute “wegschießen” */
    /* 4) Falls irgendwo noch “justify-content: space-between” greift: kill it */
    /* 5) 3rd level (falls vorhanden) – leicht stärker eingerückt */
    /* 6) Optional: Submenu Links nicht “spaltenartig” umbrechen */
  }
  .ccm-page .header__mobile-menu {
    /* wenn dein Header oben ~64px hoch ist, passt das gut */
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    padding: 0;
    /* wichtig: kein “innen” padding, sonst wirkt es wie abgeschnitten */
    border-top: 1px solid #d9d9d9;
  }
  .ccm-page .header__mobile-menu nav#menu ul ul,
  .ccm-page .header__mobile-menu ul.nav_mobile ul,
  .ccm-page .header__mobile-menu .header__list--sub {
    padding: 0;
    /* <-- das hat bei dir den “Mega-Einzug” verursacht */
    margin: 0;
    background: #fafafa;
    border-top: 1px solid #efefef;
  }
  .ccm-page .header__mobile-menu nav#menu ul ul > li > a,
  .ccm-page .header__mobile-menu ul.nav_mobile ul > li > a,
  .ccm-page .header__mobile-menu .header__list--sub > li > a {
    position: relative;
    padding: 12px 1rem 12px 1rem;
    /* moderater Einzug */
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.2;
    color: #283139;
    justify-content: flex-start;
    /* verhindert “rechts kleben” */
    gap: 10px;
    /* Abstand Bullet/Text */
  }
  .ccm-page .header__mobile-menu nav#menu ul ul > li > a::before,
  .ccm-page .header__mobile-menu ul.nav_mobile ul > li > a::before,
  .ccm-page .header__mobile-menu .header__list--sub > li > a::before {
    content: '';
    flex: 0 0 6px;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #ff8000;
    opacity: .9;
    position: static;
    /* <-- ganz wichtig: NICHT absolute */
    transform: none;
  }
  .ccm-page .header__mobile-menu nav#menu ul ul > li > a,
  .ccm-page .header__mobile-menu ul.nav_mobile ul > li > a,
  .ccm-page .header__mobile-menu .header__list--sub > li > a {
    justify-content: flex-start !important;
  }
  .ccm-page .header__mobile-menu nav#menu ul ul ul > li > a,
  .ccm-page .header__mobile-menu ul.nav_mobile ul ul > li > a,
  .ccm-page .header__mobile-menu .header__list--sub ul li a {
    padding-left: 1rem;
    font-size: 0.95rem;
    font-weight: 500;
  }
  .ccm-page .header__mobile-menu nav#menu ul ul > li > a,
  .ccm-page .header__mobile-menu ul.nav_mobile ul > li > a {
    word-break: normal;
    overflow-wrap: anywhere;
  }
}
/* ========================================================================== */
/* FIX: Desktop Megamenu full-bleed (100vw statt Containerbreite)              */
/* ========================================================================== */
@media (min-width: 768px) {
  .ccm-page .header__list--sub {
    position: fixed;
    left: 0;
    right: 0;
    width: 100vw;
    top: var(--et-nav-bottom, 120px);
    z-index: 2000;
  }
  /* optional: Inhalt wieder zentriert wie Container */
  .ccm-page .header__list--sub .flex-row {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 12px;
  }
}
.ccm-page .footer {
  border-top: 3px solid #ff8000;
  position: relative;
  z-index: 100;
}
.ccm-page .footer__item {
  border-top: 1px solid #d9d9d9;
  margin-top: 1rem;
  padding-top: 1rem;
}
.ccm-page .footer__item--first {
  border-top: none;
  margin-top: 0px;
  padding-top: 0px;
}
.ccm-page .footer__top-container {
  background: #f5f5f5;
  padding: 40px 0;
}
.ccm-page .footer__top-container--white {
  background: #ffffff;
}
.ccm-page .footer__top-container h5 {
  font-size: 1.75rem;
  margin: 0 0 1rem;
}
.ccm-page .footer__top-container p {
  margin: 0 0 0.5rem;
  font-size: 0.85rem;
  line-height: 21px;
}
.ccm-page .footer__bottom-container {
  background: #dcdcdc;
  padding: 40px 0;
}
.ccm-page .footer__seitenliste {
  margin: 2rem 0 0;
  list-style: none;
}
@media (min-width: 992px) {
  .ccm-page .footer__seitenliste {
    border-left: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9;
    padding: 0 2rem;
    margin: 0;
  }
}
.ccm-page .footer__seitenliste-login {
  margin: 0;
  text-align: center;
}
.ccm-page .footer__seitenliste-login-item {
  display: inline-block;
}
.ccm-page .footer__seitenliste-login-link {
  display: block;
  margin: 0 0.75rem;
}
.ccm-page .footer .ccm-block-social-links {
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
  padding: 1rem 0;
  margin: 1rem 0;
}
.ccm-page .footer .ccm-block-social-links a {
  text-decoration: none;
}
.ccm-page .footer .ccm-block-social-links .fa {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ff8000;
  font-family: 'Font Awesome 5 Brands';
}
.ccm-page .footer .ccm-block-social-links .fa-facebook:before {
  content: "\f09a";
}
.ccm-page .footer .ccm-block-social-links .fa-instagram:before {
  content: "\f16d";
}
.ccm-page .footer .ccm-block-social-links .fa-youtube:before {
  content: "\f167";
}
.ccm-page .footer .ccm-block-social-links .fa-linkedin-square:before {
  content: "\f0e1";
}
.ccm-page .footer .ccm-block-social-links .fa-external-link:before {
  content: "\f168";
}
.ccm-page .footer .login .ccm-block-social-links {
  text-align: center;
  border-top: 0px solid #d9d9d9;
  border-bottom: 0px solid #d9d9d9;
}
.ccm-page .footer .login .ccm-block-social-links i {
  background: none !important;
  color: #323e48 !important;
}
.ccm-page .footer_address {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
}
.ccm-page .footer_address p {
  margin: 0;
  flex: 1;
}
.ccm-page .footer_address h5 {
  width: 100%;
}
.ccm-page .footer_address #footer-dekra-logo {
  width: auto;
  height: auto;
}
@media (min-width: 768px) {
  .ccm-page .footer_address {
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
  }
  .ccm-page .footer_address p {
    flex: 1;
  }
  .ccm-page .footer_address #footer-dekra-logo {
    margin-left: 1rem;
  }
}
.ccm-page .nav-footer {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ccm-page .nav-footer li {
  display: block;
}
.ccm-page .nav-footer li.li-header {
  margin-bottom: 1rem;
}
.ccm-page .nav-footer li.li-header a {
  font-size: 1.2rem;
}
.ccm-page .nav-footer li a {
  display: block;
  text-align: left;
  font-size: 13px;
  transition: all .5s ease .05s !important;
  text-decoration: none;
}
.ccm-page .nav-footer li a:hover,
.ccm-page .nav-footer li a:focus {
  color: #ff8000;
}
.ccm-page .footer__bottom--copyright ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: 3rem;
}
@media (max-width: 768px) {
  .ccm-page .footer__bottom--copyright ul {
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (max-width: 768px) {
  .ccm-page .footer__bottom--copyright {
    padding-bottom: 1rem;
  }
}
.ccm-page .footer-social-media {
  margin: 2rem 0 2rem;
}
.ccm-page .footer-social-media--main {
  margin: 0;
}
.ccm-page .footer-social-media__img {
  width: 100%;
}
.ccm-page .footer-social-media__header {
  text-align: center;
}
.ccm-page .footer-social-media__header--main {
  text-align: left;
}
.ccm-page .footer-social-media__icon {
  margin-right: 0.75rem;
  font-size: 26px;
}
.ccm-page .footer-social-media__link {
  text-decoration: none;
  display: flex;
  align-items: center;
  font-size: 1.75rem;
}
.ccm-page .footer-social-media h3 {
  display: inline-block;
}
.ccm-page .footer-social-media__item--main {
  margin-bottom: 2rem;
}
.ccm-page .kundenservice {
  margin-top: 3rem;
  text-align: center;
}
.ccm-page .kundenservice .far,
.ccm-page .kundenservice .fas {
  font-size: 58px;
}
.ccm-page .kundenservice h3 {
  margin: 1rem 0;
}
.ccm-page .kundenservice p {
  text-decoration: underline;
  margin: 0;
}
@media (max-width: 576px) {
  nav[aria-label="breadcrumb"] {
    padding: 3.5rem 1rem 0rem 1rem;
  }
}
nav[aria-label="breadcrumb"] .breadcrumb {
  background: none;
  margin: 0;
  padding: 1rem 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
@media (max-width: 767px) {
  nav[aria-label="breadcrumb"] .breadcrumb {
    padding: 0.75rem 0;
  }
}
nav[aria-label="breadcrumb"] .breadcrumb-item {
  font-size: 0.85rem;
  color: #323e48;
}
nav[aria-label="breadcrumb"] .breadcrumb-item a {
  color: #323e48;
  text-decoration: none;
  font-size: 0.85rem;
}
nav[aria-label="breadcrumb"] .breadcrumb-item a:hover {
  color: #ff8000;
}
nav[aria-label="breadcrumb"] .breadcrumb-item + .breadcrumb-item::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f054";
  font-size: 10px;
  margin-top: 2px;
  color: #d3d3d3;
  padding-right: 0.5rem;
}
nav[aria-label="breadcrumb"] .breadcrumb-item.active {
  color: #ff8000;
}
.ccm-page .kategorien h1,
.ccm-page .kategorien h2 {
  font-weight: 900;
  font-size: 1.5rem;
  margin-top: 6rem;
}
.ccm-page .kategorien__img {
  max-width: 100%;
}
.ccm-page .et_offset_content_gray > div {
  background: #f4f4f4;
  padding: 3rem 3rem 3rem 3rem;
  margin-top: 3rem;
}
@media (min-width: 992px) {
  .ccm-page .col-md-4:nth-child(1) .kategorien__card,
  .ccm-page .col-md-4:nth-child(2) .kategorien__card,
  .ccm-page .col-md-4:nth-child(3) .kategorien__card {
    margin-top: 0px;
  }
}
@media (min-width: 768px) {
  .ccm-page .col-md-4:nth-child(1) .kategorien__card,
  .ccm-page .col-md-4:nth-child(2) .kategorien__card {
    margin-top: 0px;
  }
}
.ccm-page .iframe-map {
  width: 100%;
  height: 100%;
}
@media (max-width: 991px) {
  .ccm-page .iframe-map {
    height: 250px;
  }
}
.ccm-page .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.ccm-page .embed-container iframe,
.ccm-page .embed-container object,
.ccm-page .embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ccm-page .btn {
  transition: all .5s ease .05s!important;
  white-space: normal;
  padding-left: 2rem;
  padding-right: 2rem;
}
.ccm-page .btn i {
  margin-right: 0.5rem;
}
.ccm-page .btn--main {
  background: #ff8000;
  color: #ffffff;
  border: 1px solid #ff8000;
}
.ccm-page .btn--main:hover,
.ccm-page .btn--main:focus {
  color: #ff8000;
  background: #ffffff;
  border: 1px solid #ff8000;
}
.ccm-page .btn--inverted {
  color: #323e48;
  border: 1px solid #ff8000;
}
.ccm-page .btn--inverted:hover,
.ccm-page .btn--inverted:focus {
  color: #ffffff;
  background: #ff8000;
}
.ccm-page .btn--white {
  color: #ffffff;
  border: 1px solid #ffffff;
}
.ccm-page .btn--white:hover {
  color: #ff8000;
  background: #ffffff;
}
.ccm-page .btn--text {
  color: #ff8000;
  font-size: 1rem;
}
.ccm-page .btn--left {
  text-align: left;
  padding: 0px !important;
  color: #ff8000;
}
.ccm-page .btn--no-padding {
  padding: 0px;
}
.ccm-page .btn--padding {
  padding: 0px 12px;
}
.ccm-page .btn--block {
  display: block;
}
.ccm-page .btn--full {
  width: 100%;
}
.ccm-page .btn--center {
  margin: 0 auto;
}
.ccm-page .btn--left-auto {
  margin-left: auto;
}
.ccm-page .btn--align-left {
  text-align: left;
}
.ccm-page .btn--color-main {
  color: #ff8000;
}
.ccm-page .btn--hover-main:hover {
  color: #ff8000;
}
.ccm-page .btn--btn--hover-main {
  color: #ff8000;
}
.ccm-page .btn--margin-top-10 {
  margin-top: 0.75rem;
}
.ccm-page .btn--margin-top-15 {
  margin-top: 1rem;
}
.ccm-page .btn--margin-top-25 {
  margin-top: 25px;
}
.ccm-page .btn-center {
  text-align: center;
}
.ccm-page .btn-icon {
  display: flex;
  align-items: center;
}
.ccm-page .btn-icon i {
  color: #ff8000;
  margin-right: 1rem;
}
.ccm-page .landingpage-btn {
  display: flex;
  align-items: center;
  justify-content: center;
}
.ccm-page .landingpage-btn i {
  color: #ff8000;
  font-size: 50px;
  margin-right: 0.75rem;
}
.ccm-page .landingpage .btn {
  background: #ffffff;
  color: #323e48;
  display: block;
  position: relative;
  padding: 12px 12px;
  font-size: 24px;
  font-weight: 600;
}
.ccm-page .landingpage .btn:after {
  content: "";
  position: absolute;
  top: 0px;
  left: 5px;
  border: 2px solid #ff8000;
  width: calc(100% - 10px);
  transform: rotate(0.5deg);
  height: 100%;
  z-index: 1;
}
.ccm-page .landingpage-terrasse .btn {
  background: #ffffff;
  color: #323e48;
  display: block;
  position: relative;
  padding: 12px 12px;
  font-size: 24px;
  font-weight: 600;
}
.ccm-page .landingpage-terrasse .btn:after {
  content: "";
  position: absolute;
  top: 0px;
  left: 5px;
  border: 2px solid #cfe171;
  width: calc(100% - 10px);
  transform: rotate(0.5deg);
  height: 100%;
  z-index: 1;
}
.ccm-page .button-link-green a {
  position: relative;
  color: #333333;
  text-decoration: none;
  padding-left: 2rem;
  font-weight: 600;
}
.ccm-page .button-link-green a:before {
  content: "\f061";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  left: 0;
  margin-right: 0.75rem;
  color: #5b7027;
}
.ccm-page .button-link-green a:hover,
.ccm-page .button-link-green a:focus {
  color: #ff8000;
}
.ccm-page .small .text_bild_header .inner {
  height: auto;
  padding: 4rem 0;
}
.ccm-page .small .text_bild_header .inner .btn {
  color: #323e48;
  background: none;
  border: 0px;
  position: relative;
  padding-left: 25px;
}
.ccm-page .small .text_bild_header .inner .btn:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f061";
  position: absolute;
  left: 0;
}
.ccm-page .btn-toggle--desktop {
  display: none;
}
@media (min-width: 768px) {
  .ccm-page .btn-toggle--desktop {
    display: block;
  }
}
.ccm-page .btn-toggle--mobile {
  display: block;
  overflow: hidden;
  margin: 1rem 0;
}
@media (min-width: 768px) {
  .ccm-page .btn-toggle--mobile {
    display: none;
  }
}
.ccm-page .btn-toggle > div {
  display: flex;
  overflow: hidden;
}
.ccm-page .btn-toggle .btn {
  border: 3px solid #ff8000;
  display: inline-block;
  padding: 0.75rem;
  position: relative;
  text-align: center;
  transition: background 600ms ease, color 600ms ease;
  white-space: nowrap;
}
.ccm-page .btn-toggle input[type="radio"].toggle {
  display: none;
}
.ccm-page .btn-toggle input[type="radio"].toggle + label {
  cursor: pointer;
  min-width: 60px;
}
.ccm-page .btn-toggle input[type="radio"].toggle + label:hover {
  background: none;
  color: #ff8000;
}
.ccm-page .btn-toggle input[type="radio"].toggle + label:after {
  background: #ff8000;
  content: "";
  position: absolute;
  top: -10px;
  bottom: -10px;
  transition: left 200ms cubic-bezier(0.77, 0, 0.175, 1);
  width: 100%;
  z-index: -1;
}
.ccm-page .btn-toggle input[type="radio"].toggle.toggle-left + label {
  border-right: 0;
}
.ccm-page .btn-toggle input[type="radio"].toggle.toggle-left + label:after {
  left: 100%;
}
.ccm-page .btn-toggle input[type="radio"].toggle.toggle-right + label {
  margin-left: -5px;
}
.ccm-page .btn-toggle input[type="radio"].toggle.toggle-right + label:after {
  left: -100%;
}
.ccm-page .btn-toggle input[type="radio"].toggle:checked + label {
  cursor: default;
  color: #ffffff;
  transition: color 200ms;
}
.ccm-page .btn-toggle input[type="radio"].toggle:checked + label:after {
  left: 0;
}
.ccm-page .suggesstion-box__list {
  margin: 0 0 2rem;
  list-style: none;
  background: #ffffff;
  padding: 0.75rem;
}
.ccm-page .suggesstion-box__img {
  width: 100%;
}
.ccm-page .suggesstion-box__item {
  margin-bottom: 0.5rem;
}
.ccm-page .suggesstion-box__item:last-child {
  margin-bottom: 0px;
}
.ccm-page .suggesstion-box__img-box {
  width: 50px;
  display: inline-block;
  margin-right: 0.75rem;
}
.ccm-page .suggesstion-box__text-box {
  display: inline-block;
}
.ccm-page .suggesstion-box__link {
  text-decoration: none;
  display: block;
}
.ccm-page .suggesstion-box__link:hover,
.ccm-page .suggesstion-box__link:focus {
  background: #f5f5f5;
}
.ccm-page .suggesstion-box__link p {
  margin: 0;
}
.ccm-page .suggesstion-box__link p .bold {
  color: #ff8000;
}
.ccm-page .kategorien-fachbeitraege .filters * {
  display: inline-block;
}
.ccm-page .kategorien .filters * {
  display: inline-block;
}
.ccm-page .katalog-download .filters {
  background: #f5f5f5;
  margin: 0 0 2rem;
  text-align: center;
}
.ccm-page .katalog-download .filters li {
  padding: 0.5rem;
  position: relative;
}
.ccm-page .katalog-download .filters li label {
  font-weight: 700;
  margin-bottom: 0px;
  line-height: normal;
  cursor: pointer;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}
.ccm-page .katalog-download .filters li label:after {
  right: -3px;
  position: absolute;
  content: "";
  background: #323e48;
  width: 1px;
  top: 0.75rem;
  bottom: 0.75rem;
}
.ccm-page .katalog-download .filters li label:hover,
.ccm-page .katalog-download .filters li label:focus {
  color: #ff8000;
}
.ccm-page .katalog-download .filters li:last-child label:after {
  display: none;
}
.ccm-page .katalog-download .filters * {
  display: inline-block;
}
.ccm-page .accordion .accordion-item {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
}
.ccm-page .accordion .accordion-item .accordion-header .accordion-button {
  padding: 25px 25px 25px 0;
  background: #ffffff;
  border: 0;
  border-radius: 0;
}
.ccm-page .accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  background: #ffffff;
  color: #323e48;
  box-shadow: none;
}
.ccm-page .accordion .accordion-item .accordion-header .accordion-button:focus {
  box-shadow: none;
  border: 0;
}
.ccm-page .accordion .accordion-item .accordion-header .accordion-button::after {
  background-image: none;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f078";
  color: #ff8000;
  transform: none;
  transition: transform 0.2s ease-in-out;
}
.ccm-page .accordion .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
  content: "\f077";
}
.ccm-page .accordion .accordion-item .accordion-body {
  padding: 0px 2rem 1rem 0px;
}
.ccm-page .accordion .accordion-item .accordion-body a {
  display: block;
  transition: all .5s ease .05s;
}
.ccm-page .accordion .accordion-item .accordion-body a:hover,
.ccm-page .accordion .accordion-item .accordion-body a:focus {
  text-decoration: none;
  color: #ff8000;
}
.ccm-page .accordion .accordion-item .accordion-body ul {
  list-style: none;
}
.ccm-page .accordion .accordion-item .accordion-body ul li {
  position: relative;
  padding-left: 25px;
}
.ccm-page .accordion .accordion-item .accordion-body ul li:before {
  content: "\f0c8";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #ff8000;
  position: absolute;
  left: 0px;
  top: 0px;
  font-size: 0.75rem;
}
.ccm-page #accordion .panel {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
  box-shadow: none;
  background: #ffffff;
}
.ccm-page #accordion .panel-default {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
  overflow: hidden;
  border-left: 0px;
  border-right: 0px;
  border-top: 0px;
  background: #ffffff;
}
.ccm-page #accordion .panel-default .panel-heading {
  padding: 0;
  background: #ffffff;
  border-top: none;
  border-radius: 0;
  border-bottom: 0px;
}
.ccm-page #accordion .panel-default .panel-heading h4 a {
  position: relative;
  display: block;
  padding: 25px 25px 25px 0;
  background: #ffffff;
  border: 0;
  border-radius: 0;
  text-decoration: none;
  color: #323e48;
  box-shadow: none;
}
.ccm-page #accordion .panel-default .panel-heading h4 a:not(.collapsed) {
  background: #ffffff;
  color: #323e48;
  box-shadow: none;
}
.ccm-page #accordion .panel-default .panel-heading h4 a:hover,
.ccm-page #accordion .panel-default .panel-heading h4 a:focus {
  text-decoration: none;
  box-shadow: none;
}
.ccm-page #accordion .panel-default .panel-heading h4 a:before {
  color: #ff8000;
  position: absolute;
  right: 1rem;
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f078";
}
.ccm-page #accordion .panel-default .panel-heading h4 a[aria-expanded=true]:before {
  content: "\f077";
}
.ccm-page #accordion .panel-default .panel-body {
  padding: 0px 2rem 1rem 0px;
  background: #ffffff;
}
.ccm-page #accordion .panel-default .panel-body a {
  display: block;
  transition: all .5s ease .05s;
}
.ccm-page #accordion .panel-default .panel-body a:hover,
.ccm-page #accordion .panel-default .panel-body a:focus {
  text-decoration: none;
  color: #ff8000;
}
.ccm-page #accordion .panel-default .panel-body ul {
  list-style: none;
}
.ccm-page #accordion .panel-default .panel-body ul li {
  position: relative;
  padding-left: 25px;
}
.ccm-page #accordion .panel-default .panel-body ul li:before {
  content: "\f0c8";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #ff8000;
  position: absolute;
  left: 0px;
  top: 0px;
  font-size: 0.75rem;
}
.ccm-page .panel-group.small {
  margin: 2rem 0 2rem !important;
}
.ccm-page .jl_magic_tabs_overall_wrapper {
  padding: 0px;
}
.ccm-page .software-tabs .nav-tabs {
  border-bottom: 0px;
  margin: 0;
  padding: 0;
}
.ccm-page .software-tabs .nav-tabs > li {
  background: #ff8000;
}
.ccm-page .software-tabs .nav-tabs > li a {
  color: #ffffff;
}
.ccm-page .software-tabs .nav-tabs > li a:hover,
.ccm-page .software-tabs .nav-tabs > li a:focus {
  color: #ffffff;
  text-decoration: underline;
}
.ccm-page .software-tabs .nav-tabs > li.active:after {
  display: none;
}
.ccm-page .software-tabs .nav-tabs > li.active a {
  text-decoration: underline;
  color: #ffffff;
  font-weight: 400;
}
.ccm-page .software-tabs .nav-tabs > li.active a:hover,
.ccm-page .software-tabs .nav-tabs > li.active a:focus {
  color: #ffffff;
  font-weight: 400;
  text-decoration: underline;
  cursor: pointer;
}
.ccm-page .software-tabs .nav-tabs > li:first-child {
  margin-right: 2rem;
}
.ccm-page .pagination {
  justify-content: center;
  flex-wrap: wrap;
  gap: 2px;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  .ccm-page .pagination {
    font-size: 0.85rem;
    gap: 0;
  }
}
@media (max-width: 575px) {
  .ccm-page .pagination .page-item:not(:first-child):not(:last-child):not(.active):not(.disabled):not(:nth-last-child(2)) {
    display: none;
  }
}
.ccm-page .pagination .page-link {
  color: #323e48;
  background-color: transparent;
  border-color: #d9d9d9;
  transition: color 0.2s ease;
  padding: 0.4rem 0.65rem;
  min-width: 40px;
  text-align: center;
}
@media (min-width: 768px) {
  .ccm-page .pagination .page-link {
    padding: 0.75rem 1rem;
    min-width: auto;
  }
}
.ccm-page .pagination .page-link:hover,
.ccm-page .pagination .page-link:focus {
  color: #ff8000;
  background-color: transparent;
  border-color: #d9d9d9;
}
@media (max-width: 575px) {
  .ccm-page .pagination .page-item:first-child .page-link,
  .ccm-page .pagination .page-item:last-child .page-link {
    font-size: 0;
  }
  .ccm-page .pagination .page-item:first-child .page-link::before,
  .ccm-page .pagination .page-item:last-child .page-link::before {
    font-size: 0.85rem;
  }
}
@media (max-width: 575px) {
  .ccm-page .pagination .page-item:first-child .page-link::before {
    content: "←";
  }
}
@media (max-width: 575px) {
  .ccm-page .pagination .page-item:last-child .page-link::before {
    content: "→";
  }
}
.ccm-page .ccm-pagination-wrapper,
.ccm-page .ccm-block-page-list-pagination {
  display: flex;
  justify-content: center;
  margin-top: 1rem;
  padding: 0 0.75rem;
  overflow-x: hidden;
}
@media (min-width: 768px) {
  .ccm-page .ccm-pagination-wrapper,
  .ccm-page .ccm-block-page-list-pagination {
    margin-top: 2rem;
    padding: 0;
  }
}
.ccm-page .ccm-block-next-previous-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.ccm-page .ccm-block-next-previous-wrapper h3,
.ccm-page .ccm-block-next-previous-wrapper p {
  margin: 0;
}
.ccm-page .ccm-block-next-previous-wrapper h3 {
  font-size: 1rem;
}
@media (min-width: 768px) {
  .ccm-page .ccm-block-next-previous-wrapper h3 {
    font-size: 1.75rem;
  }
}
.ccm-page .ccm-block-next-previous-wrapper i {
  font-size: 30px;
}
@media (min-width: 768px) {
  .ccm-page .ccm-block-next-previous-wrapper i {
    font-size: 50px;
  }
}
.ccm-page .register-success__container {
  border: 1px solid #ff8000;
  padding: 2rem;
  text-align: center;
  margin: 0 0 1rem;
}
.ccm-page .login-page .error_form .ccm-system-errors {
  display: block;
  background-color: #f2dede;
  border-color: #ebccd1;
  list-style: none;
  padding: 1rem;
  margin: 0 0 2rem;
}
.ccm-page .login-page .error_form .ccm-system-errors ul {
  list-style: inside;
  margin: 0;
}
.ccm-page .login-page .error_form .ccm-system-errors ul li {
  color: #a94442;
}
.ccm-page #login_form .message {
  display: none;
  padding: 0.5rem 0.75rem;
  text-align: center;
  background: #990000;
  color: #ffffff;
  border: 1px solid #eeeeee;
}
.ccm-page #login_form .message.display {
  display: block;
}
.ccm-page #product-slider {
  margin: 0 0 2rem;
}
.ccm-page #product-slider .swiper-pagination-bullet-active {
  background: #ff8000 !important;
}
.ccm-page #product-slider .swiper-pagination-bullet {
  width: 2rem;
  height: 0.75rem;
  border-radius: 0;
  background: #ffffff;
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
}
.ccm-page .slider-carousel {
  display: flex;
  align-items: center;
  justify-content: center;
}
.ccm-page .slider-carousel .youtube {
  margin-left: 1px;
  margin-right: 1px;
}
.ccm-page .slider-carousel .overlay {
  position: absolute;
  z-index: 100;
  background: rgba(0, 0, 0, 0.6);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.ccm-page .slider-carousel .gradient-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(to bottom, rgba(5, 5, 5, 0), #000000);
}
.ccm-page .slider-carousel .gradient-overlay-product {
  position: absolute;
  top: 0;
  right: 1px;
  bottom: 0;
  left: 1px;
  background: rgba(0, 0, 0, 0.1);
}
.ccm-page .slider-carousel .title {
  font-size: 1.2rem;
  width: 100%;
  color: #ffffff;
  margin: 0;
  position: absolute;
  z-index: 101;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.ccm-page .slider-carousel .text-middle {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 2rem 2rem;
}
.ccm-page .slider-carousel .text-middle h4,
.ccm-page .slider-carousel .text-middle p {
  color: #ffffff;
}
.ccm-page .slider-carousel .text-middle p {
  font-size: 0.85rem;
}
.ccm-page .slider-carousel .slick-dots {
  position: absolute;
  bottom: -19px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  z-index: 900;
}
.ccm-page .slider-carousel .slick-dots li {
  position: relative;
  display: inline-block;
  width: 2rem;
  height: 7px;
  margin: 0 0.5rem;
  padding: 0;
  cursor: pointer;
  background: #d9d9d9;
}
.ccm-page .slider-carousel .slick-dots li.slick-active {
  background: #ff8000;
}
.ccm-page .slider-carousel .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: inherit;
}
.ccm-page .slider-carousel .slider-left-slide,
.ccm-page .slider-carousel .slider-right-slide,
.ccm-page .slider-carousel .slider-middle-slide {
  position: relative;
}
.ccm-page .slider-carousel .scLeft,
.ccm-page .slider-carousel .scRight {
  width: 22%;
  position: relative;
}
.ccm-page .slider-carousel .scLeft .arrow,
.ccm-page .slider-carousel .scRight .arrow {
  position: absolute;
  width: 207.88px;
  height: 100%;
  z-index: 104;
  cursor: pointer;
}
@media (max-width: 1199px) {
  .ccm-page .slider-carousel .scLeft .arrow,
  .ccm-page .slider-carousel .scRight .arrow {
    width: 171.22px;
  }
}
@media (max-width: 991px) {
  .ccm-page .slider-carousel .scLeft .arrow,
  .ccm-page .slider-carousel .scRight .arrow {
    width: 158.39px;
  }
}
@media (max-width: 767px) {
  .ccm-page .slider-carousel .scLeft .left-arrow,
  .ccm-page .slider-carousel .scRight .left-arrow {
    left: 1rem;
  }
}
.ccm-page .slider-carousel .scLeft .left-arrow:hover .icon-back-1,
.ccm-page .slider-carousel .scRight .left-arrow:hover .icon-back-1 {
  color: #ff8000;
}
.ccm-page .slider-carousel .scLeft .left-arrow .icon-back-1,
.ccm-page .slider-carousel .scRight .left-arrow .icon-back-1 {
  text-decoration: none;
  position: absolute;
  font-size: 22px;
  color: #ffffff;
  top: 50%;
  left: 0.75rem;
  margin-top: -16px;
  transition: all 0.3s ease;
}
.ccm-page .slider-carousel .scLeft .left-arrow .icon-back-1:before,
.ccm-page .slider-carousel .scRight .left-arrow .icon-back-1:before {
  content: "\f053";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
}
@media (max-width: 767px) {
  .ccm-page .slider-carousel .scLeft .right-arrow,
  .ccm-page .slider-carousel .scRight .right-arrow {
    right: 1rem;
  }
}
.ccm-page .slider-carousel .scLeft .right-arrow:hover .icon-back-1,
.ccm-page .slider-carousel .scRight .right-arrow:hover .icon-back-1 {
  color: #ff8000;
}
.ccm-page .slider-carousel .scLeft .right-arrow .icon-back-1,
.ccm-page .slider-carousel .scRight .right-arrow .icon-back-1 {
  text-decoration: none;
  position: absolute;
  font-size: 22px;
  color: #ffffff;
  top: 50%;
  right: 0.75rem;
  margin-top: -16px;
  transition: all 0.3s ease;
}
.ccm-page .slider-carousel .scLeft .right-arrow .icon-back-1:before,
.ccm-page .slider-carousel .scRight .right-arrow .icon-back-1:before {
  content: "\f054";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
}
.ccm-page .slider-carousel .slider-left,
.ccm-page .slider-carousel .slider-right {
  width: 99%;
}
@media (max-width: 767px) {
  .ccm-page .slider-carousel .slider-left,
  .ccm-page .slider-carousel .slider-right {
    display: none;
  }
}
.ccm-page .slider-carousel .slider-left .title {
  padding: 0.75rem 0.75rem 0.75rem 2rem;
}
.ccm-page .slider-carousel .slider-right {
  margin-left: auto;
}
.ccm-page .slider-carousel .slider-right .title {
  padding: 0.75rem 2rem 0.75rem 0.75rem;
}
.ccm-page .slider-carousel .scMiddle {
  width: 56%;
}
@media (max-width: 767px) {
  .ccm-page .slider-carousel .scMiddle {
    width: 100%;
  }
}
.ccm-page .youtube {
  background-color: #000000;
  position: relative;
  padding-top: 57.25%;
  overflow: hidden;
  cursor: pointer;
}
.ccm-page .youtube:hover .play-button {
  border: 5px solid #ff8000;
}
.ccm-page .youtube:hover .play-button:before {
  color: #ff8000;
}
.ccm-page .youtube img {
  width: 103%;
  top: -17%;
  left: -1px;
  opacity: 1;
}
.ccm-page .youtube .play-button {
  width: 140px;
  height: 140px;
  z-index: 1;
  opacity: 0.8;
  border-radius: 50%;
  font-size: 4rem;
  border: 5px solid #ffffff;
  transition: all 0.3s ease;
}
.ccm-page .youtube .play-button:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f04b";
  color: #ffffff;
  transition: all 0.3s ease;
}
.ccm-page .youtube img,
.ccm-page .youtube .play-button {
  cursor: pointer;
}
.ccm-page .youtube img,
.ccm-page .youtube iframe,
.ccm-page .youtube .play-button,
.ccm-page .youtube .play-button:before {
  position: absolute;
}
.ccm-page .youtube .play-button,
.ccm-page .youtube .play-button:before {
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
}
.ccm-page .youtube iframe {
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.ccm-page .slider-for {
  width: 60%;
  margin: 0 auto;
}
.ccm-page #carousel-container ul li .overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: calc(48.5%);
  left: 0;
}
.ccm-page #carousel-container ul li h3 {
  display: none;
  text-align: center;
  color: #ffffff;
}
.ccm-page #carousel-container ul li.active-slide .overlay {
  background: linear-gradient(to bottom, rgba(5, 5, 5, 0), #000000);
}
.ccm-page #carousel-container ul li.active-slide h3 {
  display: block;
  top: calc(5%);
  position: absolute;
  left: 1rem;
  right: 1rem;
  animation: scale-up-center 0.6s cubic-bezier(0.39, 0.575, 0.5649999999999999, 1) both;
}
@media (max-width: 767px) {
  .ccm-page .slider-pro .sp-layer {
    width: 90% !important;
  }
}
.ccm-page .slider-pro a:hover,
.ccm-page .slider-pro a:focus {
  color: #ff8000;
}
.ccm-page .suchergebnisse .btn-toggle {
  position: relative;
  z-index: 5;
}
.ccm-page .suchergebnisse .btn-toggle > div {
  overflow: hidden;
}
.ccm-page .suchergebnisse__search-form {
  padding: 40px 0;
  transition: all 0.3s ease;
}
@media (min-width: 992px) {
  .ccm-page .suchergebnisse__search-form {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.ccm-page .suchergebnisse__search-icon {
  display: block;
  color: #ff8000;
  width: 24px;
  height: 24px;
  font-size: 24px;
  height: 44px;
  margin-right: 2rem;
}
.ccm-page .suchergebnisse__search-input .btn-toggle {
  margin: 1rem 0;
}
@media (min-width: 992px) {
  .ccm-page .suchergebnisse__search-input {
    flex: 1 1 100%;
    align-self: center;
    display: flex;
    margin-right: 2rem;
  }
  .ccm-page .suchergebnisse__search-input .btn-toggle {
    margin: 0;
  }
}
.ccm-page .suchergebnisse__search-input input {
  font-size: 1.75rem;
  line-height: 26px;
  letter-spacing: 0.3px;
  outline: 0;
  border: 0;
  color: #323e48;
  width: 100%;
  padding: 7px 32px 7px 1rem;
  background-color: #f5f5f5;
  border-bottom: 1px solid #ff8000;
  caret-color: #323e48;
  font-weight: 300;
  border-radius: 0;
}
.ccm-page .suchergebnisse__search-actions {
  flex: 0 0 auto;
}
.ccm-page .suchergebnisse__search-actions button {
  background-color: #ff8000;
  border: 1px solid #ff8000;
  border-radius: 4px;
  color: #ffffff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 24px;
  margin: 0;
  text-transform: uppercase;
  transition: all 0.3s ease;
  user-select: none;
  width: auto;
  padding: 0.75rem 2rem;
  word-break: break-word;
}
.ccm-page .suchergebnisse__search-actions button:hover,
.ccm-page .suchergebnisse__search-actions button:focus {
  background: #ffffff;
  color: #ff8000;
  border-color: #ff8000;
}
@keyframes scale-up-center {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
.ccm-page .timeline {
  margin-top: 50px;
  margin-bottom: 50px;
}
.ccm-page .timeline .flex-parent {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.ccm-page .timeline .flex-parent .input-flex-container {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 0;
  width: 80vw;
  height: 100px;
  max-width: 1000px;
  overflow: hidden;
}
.ccm-page .timeline .flex-parent .input-flex-container .input {
  width: 25px;
  height: 25px;
  background-color: #ff8000;
  position: relative;
  border-radius: 50%;
}
.ccm-page .timeline .flex-parent .input-flex-container .input span {
  width: 1px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  visibility: hidden;
}
.ccm-page .timeline .flex-parent .input-flex-container .input:hover {
  cursor: pointer;
}
.ccm-page .timeline .flex-parent .input-flex-container .input:before,
.ccm-page .timeline .flex-parent .input-flex-container .input:after {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  top: 50%;
  transform: translateY(-50%);
  background-color: #ff8000;
  width: 8vw;
  height: 4px;
  max-width: 100px;
}
@media (max-width: 767px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:before,
  .ccm-page .timeline .flex-parent .input-flex-container .input:after {
    width: 80px;
  }
}
.ccm-page .timeline .flex-parent .input-flex-container .input:before {
  left: -100px;
}
@media (max-width: 1199px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:before {
    left: -84px;
  }
}
@media (max-width: 1042px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:before {
    left: -73px;
  }
}
@media (max-width: 991px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:before {
    left: -63px;
  }
}
.ccm-page .timeline .flex-parent .input-flex-container .input:after {
  right: -100px;
}
@media (max-width: 1199px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:after {
    right: -84px;
  }
}
@media (max-width: 1042px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:after {
    right: -73px;
  }
}
@media (max-width: 991px) {
  .ccm-page .timeline .flex-parent .input-flex-container .input:after {
    right: -63px;
  }
}
.ccm-page .timeline .flex-parent .input-flex-container .input.active {
  background-color: #ff8000;
}
.ccm-page .timeline .flex-parent .input-flex-container .input.active:before {
  background-color: #ff8000;
}
.ccm-page .timeline .flex-parent .input-flex-container .input.active:after {
  background-color: #d9d9d9;
}
.ccm-page .timeline .flex-parent .input-flex-container .input.active ~ .input,
.ccm-page .timeline .flex-parent .input-flex-container .input.active ~ .input::before,
.ccm-page .timeline .flex-parent .input-flex-container .input.active ~ .input::after {
  background-color: #d9d9d9;
}
.ccm-page .timeline .flex-parent .input-flex-container .input span {
  width: 1px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  visibility: hidden;
}
.ccm-page .timeline .flex-parent .input-flex-container .input span:before,
.ccm-page .timeline .flex-parent .input-flex-container .input span:after {
  visibility: visible;
  position: absolute;
  left: 50%;
}
.ccm-page .timeline .flex-parent .input-flex-container .input span:after {
  content: attr(data-year);
  top: 25px;
  transform: translateX(-50%);
  font-size: 0.85rem;
}
.ccm-page .timeline .flex-parent .input-flex-container .input span:before {
  content: attr(data-info);
  top: -65px;
  width: 70px;
  transform: translateX(-5px) rotateZ(-45deg);
  font-size: 12px;
  text-indent: -10px;
}
.ccm-page .timeline .flex-parent .description-flex-container {
  width: 80vw;
  font-weight: 400;
  font-size: 22px;
  margin-top: 20px;
  max-width: 750px;
  background: #ffffff;
  padding: 1rem;
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
}
.ccm-page .timeline .flex-parent .description-flex-container .tab {
  display: none;
}
.ccm-page .timeline .flex-parent .description-flex-container .tab.active {
  display: block;
}
.counter {
  padding: 2rem 0;
  background-color: #ff8000;
}
.counter__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  padding: 0 0.75rem;
}
@media (min-width: 576px) {
  .counter__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    padding: 0 1rem;
  }
}
@media (min-width: 768px) {
  .counter__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 3rem;
    padding: 0;
  }
}
@media (min-width: 992px) {
  .counter__grid {
    gap: 5rem;
  }
}
.counter__column {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 1px;
}
.counter__item {
  text-align: center;
  padding: 1rem;
  background-color: #ff8000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 200px;
}
@media (min-width: 768px) {
  .counter__item {
    padding: 2rem;
    min-height: 240px;
  }
}
.counter__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  font-size: 40px;
  color: #ffffff;
  line-height: 1;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .counter__icon {
    width: 80px;
    height: 80px;
    font-size: 48px;
    margin-bottom: 2rem;
  }
}
.counter__number {
  display: block;
  font-size: 28px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.2;
  margin-bottom: 0.5rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .counter__number {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
  }
}
.counter__title {
  font-size: 0.85rem;
  font-weight: 600;
  color: #ffffff !important;
  margin: 0;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .counter__title {
    font-size: 1.5rem;
  }
}
.ccm-page .icon-box {
  padding: 1rem;
}
@media (min-width: 768px) {
  .ccm-page .icon-box {
    padding: 2rem;
  }
}
.ccm-page .icon-box--white {
  background: #ffffff;
}
.ccm-page .icon-box--gray {
  background: #f5f5f5;
}
.ccm-page .icon-box__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ccm-page .icon-box__text {
  font-weight: 600;
}
.ccm-page .icon-box__item {
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .ccm-page .icon-box__item {
    margin-top: 2rem;
  }
}
.ccm-page .icon-box__item--top {
  margin-top: 0;
}
.ccm-page .icon-box__item:first-child {
  margin-top: 0;
}
.ccm-page .icon-box__inner {
  display: flex;
  align-items: center;
  height: 100%;
  gap: 1rem;
}
@media (max-width: 575.98px) {
  .ccm-page .icon-box__inner {
    align-items: flex-start;
  }
}
.ccm-page .icon-box__icon {
  margin-right: 0;
  min-width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .ccm-page .icon-box__icon {
    min-width: 67.5px;
  }
}
.ccm-page .icon-box__icon i {
  color: #ff8000;
  font-size: 32px;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ccm-page .icon-box__icon i {
    font-size: 4rem;
  }
}
.ccm-page .icon-list__list {
  list-style: none;
  margin: 2rem 0;
  padding: 0;
}
@media (min-width: 768px) {
  .ccm-page .icon-list__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 50px -1rem;
  }
}
.ccm-page .icon-list__item {
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ccm-page .icon-list__item {
    margin-bottom: 2rem;
  }
}
@media (min-width: 992px) {
  .ccm-page .icon-list__item {
    margin-bottom: 0;
  }
}
.ccm-page .icon-list__header {
  margin-bottom: 0.75rem;
}
.ccm-page .icon-list__inner {
  background: #ff8000;
  border: 1px solid #ff8000;
  padding: 1rem;
  height: 100%;
  text-align: center;
  transition: all 0.3s ease;
}
.ccm-page .icon-list__inner h3,
.ccm-page .icon-list__inner i {
  transition: all 0.3s ease;
}
.ccm-page .icon-list__inner i {
  color: #ffffff;
  font-size: 30px;
}
@media (min-width: 768px) {
  .ccm-page .icon-list__inner i {
    font-size: 36px;
  }
}
.ccm-page .icon-list__btn {
  text-decoration: none;
}
.ccm-page .icon-list__btn:hover .icon-list__inner,
.ccm-page .icon-list__btn:focus .icon-list__inner {
  background: #ffffff;
  border-color: #ff8000;
}
.ccm-page .icon-list__btn:hover .icon-list__inner h3,
.ccm-page .icon-list__btn:focus .icon-list__inner h3,
.ccm-page .icon-list__btn:hover .icon-list__inner i,
.ccm-page .icon-list__btn:focus .icon-list__inner i {
  color: #ff8000;
}
.ccm-page .leistungen-icon__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1rem;
}
@media (min-width: 576px) {
  .ccm-page .leistungen-icon__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1rem;
  }
}
@media (min-width: 992px) {
  .ccm-page .leistungen-icon__list {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    column-gap: 2rem;
    row-gap: 2rem;
    align-items: center;
  }
}
.ccm-page .leistungen-icon__item {
  background: #ff8000;
  border: 1px solid #ff8000;
  height: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
.ccm-page .leistungen-icon__item:hover,
.ccm-page .leistungen-icon__item:focus {
  animation: pop 0.3s linear;
}
.ccm-page .leistungen-icon__item h3 {
  min-height: 0;
  margin: 0;
  transition: all 0.3s ease;
}
@media (min-width: 992px) {
  .ccm-page .leistungen-icon__item h3 {
    min-height: 50px;
  }
}
.ccm-page .leistungen-icon__link {
  display: block;
  padding: 1rem 1rem;
  text-decoration: none;
}
@media (min-width: 768px) {
  .ccm-page .leistungen-icon__link {
    padding: 1rem 2rem;
  }
}
.ccm-page .leistungen-icon__img {
  height: 32px;
  width: auto;
}
@media (min-width: 768px) {
  .ccm-page .leistungen-icon__img {
    height: 36px;
  }
}
.ccm-page .no-bg .leistungen-icon__list {
  display: block;
}
.ccm-page .no-bg .leistungen-icon__item {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin: 0 auto;
}
.ccm-page .no-bg .leistungen-icon__icon {
  color: #ffffff;
  font-size: 22px;
}
.ccm-page .trust-items {
  margin: 0 0 2rem;
}
.ccm-page .trust-items__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ccm-page .trust-items__inner {
  text-align: center;
}
.ccm-page .trust-items__icon {
  display: flex;
  justify-content: center;
  margin: 0 0 0.75rem;
}
.ccm-page .trust-items__icon i {
  width: 4rem;
  height: 4rem;
  color: #323e48;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 32px;
}
@media (min-width: 768px) {
  .ccm-page .trust-items__icon i {
    font-size: 40px;
  }
}
.ccm-page .dwg-list__img,
.ccm-page .eta-list .ccm-layout-column-inner img {
  width: 100%;
  height: auto;
}
.ccm-page .eta-list__item {
  margin-top: 1rem;
}
#startseite_iconboxen {
  margin: 0;
}
#startseite_iconboxen .ccm-custom-style-container {
  margin: 0;
}
.ccm-block-custom-template-startseite,
.linkbox-startseite {
  height: 100%;
}
.linkbox-startseite {
  background: #f5f5f5 !important;
  border-radius: 0 !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  padding: 2rem;
}
@media (min-width: 768px) {
  .linkbox-startseite {
    padding: 3rem;
  }
}
.linkbox-startseite:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
}
.linkbox-startseite .box__flex {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  text-align: left;
}
@media (min-width: 768px) {
  .linkbox-startseite .box__flex {
    gap: 2rem;
  }
}
.linkbox-startseite .box__flex--center {
  align-items: stretch;
  justify-content: flex-start;
}
.linkbox-startseite .box__icon-large {
  display: none;
}
.linkbox-startseite .content {
  flex: 1;
  margin-bottom: 1rem;
}
.linkbox-startseite .content .h2 {
  color: #323e48 !important;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0.75rem;
  font-size: 2rem !important;
}
@media (min-width: 768px) {
  .linkbox-startseite .content .h2 {
    font-size: 2.5rem !important;
  }
}
.linkbox-startseite .content .h2--white {
  color: #323e48 !important;
}
.linkbox-startseite .content .h2--margin-0 {
  margin-bottom: 0.75rem;
}
.linkbox-startseite .content .h4 {
  color: #666 !important;
  font-weight: 400;
  line-height: 1.6;
  margin-bottom: 0;
}
.linkbox-startseite .content .h4--margin-bottom-15 {
  margin-bottom: 0;
}
.linkbox-startseite .btn {
  width: 100%;
  justify-content: center;
  background: #ff8000 !important;
  border: none;
  color: #ffffff !important;
  padding: 1rem 2rem;
  border-radius: 0;
  font-size: 1rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  transition: all 0.3s ease;
  text-decoration: none;
  margin-top: auto;
}
@media (min-width: 576px) {
  .linkbox-startseite .btn {
    width: auto;
    align-self: flex-start;
    justify-content: flex-start;
  }
}
@media (max-width: 575.98px) {
  .linkbox-startseite .btn {
    font-size: 0.85rem;
  }
}
.linkbox-startseite .btn:hover,
.linkbox-startseite .btn:focus {
  background: #ffffff !important;
  color: #ff8000 !important;
  border: 1px solid #ff8000 !important;
  text-decoration: none;
  transform: translateY(-1px);
}
.linkbox-startseite .btn i:first-child {
  flex-shrink: 0;
  font-size: 1.2rem;
}
.linkbox-startseite .btn i:last-child {
  flex-shrink: 0;
  font-size: 1rem;
  transition: transform 0.3s ease;
}
.linkbox-startseite .btn:hover i:last-child {
  transform: translateX(3px);
}
.linkbox-startseite .btn--left-auto {
  margin-left: 0;
  align-self: flex-start;
}
.linkbox-startseite .container {
  padding: 0;
}
.searchbox-startseite {
  background: #ff8000 !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  padding: 2rem;
}
@media (min-width: 768px) {
  .searchbox-startseite {
    padding: 3rem;
  }
}
@media (max-width: 575.98px) {
  .searchbox-startseite {
    margin-bottom: 2rem;
  }
}
.searchbox-startseite:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
}
.searchbox-startseite .container {
  padding: 0;
}
.searchbox-startseite .searchbox__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (min-width: 768px) {
  .searchbox-startseite .searchbox__content {
    gap: 2rem;
  }
}
.searchbox-startseite .searchbox__header {
  text-align: left;
}
.searchbox-startseite .searchbox__title {
  color: #ffffff !important;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 0.75rem 0;
  font-size: 2rem !important;
}
@media (min-width: 768px) {
  .searchbox-startseite .searchbox__title {
    font-size: 2.5rem !important;
  }
}
.searchbox-startseite .searchbox__subtitle {
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 400;
  line-height: 1.6;
  margin: 0;
}
.searchbox-startseite .searchbox__form-container {
  margin-top: 1rem;
}
.searchbox-startseite .searchbox__form {
  width: 100%;
}
.searchbox-startseite .searchbox__input-group {
  display: flex;
  align-items: stretch;
  background: #ffffff;
  border-radius: 0;
  overflow: hidden;
  transition: border-color 0.3s ease;
}
.searchbox-startseite .searchbox__input-group:focus-within {
  border-color: #ffffff;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3);
}
@media (max-width: 767.98px) {
  .searchbox-startseite .searchbox__input-group {
    flex-direction: column;
  }
}
.searchbox-startseite .searchbox__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: #f8f8f8;
  border-right: 1px solid #d9d9d9;
  min-width: 52px;
}
.searchbox-startseite .searchbox__icon i {
  color: #ff8000;
  font-size: 1.2rem;
}
@media (max-width: 767.98px) {
  .searchbox-startseite .searchbox__icon {
    border-right: none;
    border-bottom: 1px solid #d9d9d9;
    min-width: auto;
  }
}
.searchbox-startseite .searchbox__input {
  flex: 1;
  min-width: 0;
}
.searchbox-startseite .searchbox__field {
  width: 100%;
  border: none;
  outline: none;
  padding: 1rem 2rem;
  font-size: 1rem;
  background: #ffffff;
  color: #323e48;
}
.searchbox-startseite .searchbox__field::placeholder {
  color: #999;
  font-size: 0.85rem;
}
.searchbox-startseite .searchbox__button {
  display: flex;
  align-items: stretch;
}
.searchbox-startseite .searchbox__submit {
  background: #ff8000 !important;
  border: 1px solid #ffffff;
  color: #ffffff !important;
  padding: 1rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  transition: all 0.3s ease;
  cursor: pointer;
  white-space: nowrap;
  min-width: 120px;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .searchbox-startseite .searchbox__submit {
    min-width: auto;
    width: 100%;
  }
}
@media (max-width: 575.98px) {
  .searchbox-startseite .searchbox__submit {
    border-radius: 0.375rem;
  }
}
.searchbox-startseite .searchbox__submit:hover,
.searchbox-startseite .searchbox__submit:focus {
  background-color: #ffffff !important;
  color: #ff8000 !important;
  border-color: #ff8000;
}
.searchbox-startseite .searchbox__submit i {
  transition: transform 0.3s ease;
}
.searchbox-startseite .searchbox__submit:hover i {
  transform: translateX(3px);
}
.searchbox-startseite .searchbox__suggestions {
  position: relative;
  width: 100%;
  margin-top: 0.5rem;
}
.searchbox-startseite .searchbox__suggestions #suggesstion-box {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #ffffff;
  border-radius: 0;
  box-shadow: rgba(65, 65, 65, 0.5) 0 0.1rem 0.3rem;
  z-index: 1000;
  max-height: 300px;
  overflow-y: auto;
}
.searchbox-startseite .searchbox__suggestions #suggesstion-box .suggestion-item {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #f0f0f0;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.searchbox-startseite .searchbox__suggestions #suggesstion-box .suggestion-item:hover {
  background: #f8f8f8;
}
.searchbox-startseite .searchbox__suggestions #suggesstion-box .suggestion-item:last-child {
  border-bottom: none;
}
.ccm-page .unsere_partner_list ul {
  list-style: none;
  margin-bottom: 0px;
}
.ccm-page .unsere_partner_list ul li {
  margin-top: 2rem;
}
.ccm-page .unsere_partner_list ul li .inner {
  background: #eeeeee;
  padding: 2rem;
}
.ccm-page .unsere_partner__list {
  list-style: none;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 2rem;
  align-items: center;
  justify-items: center;
  padding: 2rem 0;
}
@media (max-width: 576px) {
  .ccm-page .unsere_partner__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
    padding: 1rem 0;
  }
}
@media (min-width: 577px) and (max-width: 768px) {
  .ccm-page .unsere_partner__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 769px) and (max-width: 992px) {
  .ccm-page .unsere_partner__list {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 993px) and (max-width: 1200px) {
  .ccm-page .unsere_partner__list {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 1201px) {
  .ccm-page .unsere_partner__list {
    grid-template-columns: repeat(6, 1fr);
  }
}
.ccm-page .unsere_partner__item {
  width: 100%;
  max-width: 180px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border-radius: 0.25rem;
  transition: all 0.3s ease;
}
.ccm-page .unsere_partner__item img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(30%);
  transition: filter 0.3s ease;
}
.ccm-page .unsere_partner__section {
  padding: 4rem 0;
  background: #f5f5f5;
}
.ccm-page .unsere_partner__section .container {
  text-align: center;
}
.ccm-page .unsere_partner__section h2 {
  margin-bottom: 3rem;
  color: #323e48;
}
.stellen_header_beschreibung {
  background: #f5f5f5;
  padding: 30px 0;
}
.stellen_header_beschreibung__list {
  list-style: none;
  margin: 0;
}
@media (min-width: 768px) {
  .stellen_header_beschreibung__list {
    display: flex;
    justify-content: space-between;
  }
}
.stellen_header_beschreibung__item {
  position: relative;
  width: 100%;
  text-align: center;
}
@media (max-width: 767px) {
  .stellen_header_beschreibung__item {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .stellen_header_beschreibung__item:last-child {
    margin-bottom: 0px;
  }
}
.stellen_header_beschreibung__item:last-child:after {
  display: none;
}
.stellen_header_beschreibung__item span {
  display: block;
  font-weight: 600;
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .stellen_header_beschreibung__item:after {
    content: " ";
    width: 1px;
    background-color: #d9d9d9;
    position: absolute;
    margin-right: 0px;
    top: 0px;
    bottom: 0px;
    right: 0px;
  }
}
.lp-content-image-float-left {
  position: relative;
  margin-bottom: 4rem;
}
/* Bild leicht aus dem Grid verschieben */
.lp-content-image-float-left .lp-image {
  position: relative;
  margin-top: -2rem;
  /* leicht nach oben */
  margin-left: -2rem;
  /* aus der Spalte heraus nach links */
  z-index: 2;
}
.lp-content-image-float-left .lp-image img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}
/* Textbereich mit grauem Hintergrund leicht überlappend */
.lp-content-image-float-left .lp-text {
  background: #f6f6f6;
  padding: 2rem;
  position: relative;
  margin-top: 2rem;
  z-index: 1;
}
.offsetbox .container {
  background: #f5f5f5;
  padding: 2rem;
  margin: 4rem auto;
  border-radius: 0.5rem;
}
.image-with-offset {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1.77777778;
  overflow: visible;
  margin-bottom: 2rem;
}
.image-with-offset__img {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
@media (min-width: 768px) {
  .image-with-offset__img {
    width: 130%;
    height: 130%;
  }
}
.image-with-offset--1 .image-with-offset__img {
  inset: 0;
}
@media (min-width: 768px) {
  .image-with-offset--1 .image-with-offset__img {
    bottom: 0;
    right: 0;
    top: auto;
    left: auto;
  }
}
.image-with-offset--2 .image-with-offset__img {
  inset: 0;
}
@media (min-width: 768px) {
  .image-with-offset--2 .image-with-offset__img {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
}
.image-with-offset--3 .image-with-offset__img {
  inset: 0;
}
@media (min-width: 768px) {
  .image-with-offset--3 .image-with-offset__img {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
  }
}
.image-with-offset--4 .image-with-offset__img {
  inset: 0;
}
@media (min-width: 768px) {
  .image-with-offset--4 .image-with-offset__img {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
  }
}
.offset-top-left,
.offset-top-right,
.offset-bottom-left,
.offset-bottom-right {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1.77777778;
  overflow: visible;
  margin-bottom: 2rem;
}
.offset-top-left picture,
.offset-top-right picture,
.offset-bottom-left picture,
.offset-bottom-right picture {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .offset-top-left picture,
  .offset-top-right picture,
  .offset-bottom-left picture,
  .offset-bottom-right picture {
    width: 130%;
    height: 130%;
  }
}
.offset-top-left img,
.offset-top-right img,
.offset-bottom-left img,
.offset-bottom-right img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.offset-top-left picture {
  inset: 0;
}
@media (min-width: 768px) {
  .offset-top-left picture {
    bottom: 0;
    right: 0;
    top: auto;
    left: auto;
  }
}
.offset-top-right picture {
  inset: 0;
}
@media (min-width: 768px) {
  .offset-top-right picture {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
}
.offset-bottom-left picture {
  inset: 0;
}
@media (min-width: 768px) {
  .offset-bottom-left picture {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
  }
}
.offset-bottom-right picture {
  inset: 0;
}
@media (min-width: 768px) {
  .offset-bottom-right picture {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
  }
}
.offsetbox .container {
  padding: 1rem;
  margin: 2rem auto;
}
@media (min-width: 768px) {
  .offsetbox .container {
    padding: 2rem;
    margin: 4rem auto;
  }
}
.kategorien_auflistung_header {
  padding: 1rem 0 0;
  margin: 0 -4rem 10px -4rem;
  z-index: 10;
  box-shadow: 0px 0px 10px -4px #000000;
  border-radius: 4px;
}
@media (max-width: 767px) {
  .kategorien_auflistung_header {
    display: none;
  }
}
.kategorien_auflistung_header__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: wrap;
}
.kategorien_auflistung_header__item {
  display: inline-block;
  margin: 0 30px 15px 30px;
}
.kategorien_auflistung_header__item--last {
  padding-right: 0px;
  border-right: 0px;
  margin: 0 0 15px 0;
}
.kategorien_auflistung_header a,
.kategorien_auflistung_header__link {
  text-decoration: none;
  color: #ffffff;
}
.kategorien_auflistung_header a:hover,
.kategorien_auflistung_header__link:hover,
.kategorien_auflistung_header a:focus,
.kategorien_auflistung_header__link:focus {
  text-decoration: underline;
}
.solar {
  position: relative;
  z-index: 10;
}
.terrasse .kategorien_auflistung_header,
.solar .kategorien_auflistung_header {
  padding: 1rem 0 0.5rem 0;
}
.terrasse .kategorien_auflistung_header__link,
.solar .kategorien_auflistung_header__link {
  color: #323e48;
}
.terrasse .kategorien_auflistung_header__item,
.solar .kategorien_auflistung_header__item {
  display: inline-block;
  margin: 0 2rem 0.5rem 0;
}
.terrasse .kategorien_auflistung_header__list,
.solar .kategorien_auflistung_header__list {
  flex-direction: row;
  align-content: center;
  justify-content: flex-start;
}
.et_content_header > div {
  position: relative;
}
.text-bild-header,
.text-video-header {
  position: relative;
  width: 100vw;
  margin-left: calc(0vw);
  height: 300px;
  overflow: hidden;
  isolation: isolate;
  z-index: auto;
}
@media (min-width: 576px) {
  .text-bild-header,
  .text-video-header {
    height: 300px;
  }
}
@media (min-width: 768px) {
  .text-bild-header,
  .text-video-header {
    height: 300px;
  }
}
@media (min-width: 992px) {
  .text-bild-header,
  .text-video-header {
    height: 300px;
  }
}
@media (min-width: 1200px) {
  .text-bild-header,
  .text-video-header {
    height: 350px;
  }
}
.text-bild-header {
  background-size: cover;
  background-position: center;
}
.text-video-header video#bgvid {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.text-video-header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  z-index: 1;
  pointer-events: none;
}
.text-bild-header .lp-sliderlayer,
.text-video-header .lp-sliderlayer {
  position: absolute;
  top: 0;
  z-index: 2;
  width: calc(80vw);
  display: flex;
  height: 100%;
  align-items: center;
}
@media (min-width: 576px) {
  .text-bild-header .lp-sliderlayer,
  .text-video-header .lp-sliderlayer {
    width: calc(60vw);
  }
}
@media (min-width: 768px) {
  .text-bild-header .lp-sliderlayer,
  .text-video-header .lp-sliderlayer {
    width: calc(50vw);
  }
}
.text-bild-header .lp-sliderlayer-spacer,
.text-video-header .lp-sliderlayer-spacer {
  flex-shrink: 0;
  background-color: rgba(255, 255, 255, 0.95);
  border-left-style: solid;
  border-left-width: 8px;
  border-left-color: #ff8000;
}
.text-bild-header .lp-sliderlayer-content,
.text-video-header .lp-sliderlayer-content {
  flex: 1 1 auto;
  pointer-events: auto;
  color: #323e48;
  white-space: normal;
  word-wrap: break-word;
  background-color: rgba(255, 255, 255, 0.95);
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
}
@media (min-width: 576px) {
  .text-bild-header .lp-sliderlayer-content,
  .text-video-header .lp-sliderlayer-content {
    padding: 1rem 2rem;
  }
}
@media (min-width: 768px) {
  .text-bild-header .lp-sliderlayer-content,
  .text-video-header .lp-sliderlayer-content {
    padding: 2rem 0 2rem 1rem;
  }
}
.text-bild-header .lp-sliderlayer-content h1,
.text-video-header .lp-sliderlayer-content h1 {
  margin: 0;
  color: #323e48;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
}
@media (max-width: 576px) {
  .text-bild-header .lp-sliderlayer-content h1,
  .text-video-header .lp-sliderlayer-content h1 {
    font-weight: 900;
    hyphens: auto;
    font-size: 1.5rem;
  }
}
.text-bild-header .lp-sliderlayer-content h1.visible,
.text-video-header .lp-sliderlayer-content h1.visible {
  opacity: 1;
}
.ccm-page .terrasse .lp-sliderlayer-spacer {
  border-color: #cfe171;
}
.ccm-page .ingenieurholzbau .lp-sliderlayer-spacer {
  border-color: #fcc061;
}
.ccm-page .holzbauschrauben .lp-sliderlayer-spacer {
  border-color: #f16049;
}
.ccm-page .holzverbinder .lp-sliderlayer-spacer {
  border-color: #9cb2b5;
}
.ccm-page .werkzeuge .lp-sliderlayer-spacer {
  border-color: #0ea38f;
}
.ccm-page .beton .lp-sliderlayer-spacer {
  border-color: #b29e94;
}
.ccm-page .flachdach .lp-sliderlayer-spacer {
  border-color: #bf685b;
}
.ccm-page .industrie .lp-sliderlayer-spacer {
  border-color: #748c9b;
}
.ccm-page .innenausbau .lp-sliderlayer-spacer {
  border-color: #cccccc;
}
.ccm-page .matten .lp-sliderlayer-spacer {
  border-color: #849545;
}
.ccm-page .pfosten .lp-sliderlayer-spacer {
  border-color: #5b7027;
}
.ccm-page .gartentore .lp-sliderlayer-spacer {
  border-color: #3a521c;
}
.ccm-page .gabionen .lp-sliderlayer-spacer {
  border-color: #092d0f;
}
.ccm-page .zubehoer .lp-sliderlayer-spacer {
  border-color: #bdbcbc;
}
.ccm-page .solar .lp-sliderlayer-spacer {
  border-color: #a3d8e6;
}
.ccm-page .solarDark .lp-sliderlayer-spacer {
  border-color: #455f99;
}
.ccm-page .trockenbau .kategorien_auflistung_header {
  background: #9e8b98;
}
.ccm-page .trockenbau .lp-sliderlayer-spacer {
  border-color: #9e8b98;
}
.img-hotspots-block {
  margin-top: 6rem;
}
.img-hotspots-block h2 {
  font-weight: 900 !important;
}
.img-hotspots-block .hotspots-title {
  margin-bottom: 2rem;
  font-size: 1.75rem;
  font-weight: 600;
  color: var(--bs-body-color);
}
.img-hotspots-block .hotspots-container {
  position: relative;
  width: 100%;
  display: inline-block;
  margin-bottom: 2rem;
}
.img-hotspots-block .hotspots-container .hotspots-image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--bs-border-radius);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.img-hotspots-block .hotspot-point {
  position: absolute;
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  background: transparent;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.img-hotspots-block .hotspot-point:focus {
  outline: none;
}
.img-hotspots-block .hotspot-point .hotspot-pulse {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: rgba(255, 128, 0, 0.6);
  animation: hotspotPulse 2s infinite;
}
.img-hotspots-block .hotspot-point .hotspot-icon {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: linear-gradient(135deg, #ff8000, #cc6600);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  box-shadow: 0 2px 8px rgba(255, 128, 0, 0.6);
  transition: .2s;
}
.img-hotspots-block .hotspot-point:hover .hotspot-icon {
  transform: scale(1.15);
  box-shadow: 0 4px 12px rgba(255, 128, 0, 0.75);
}
.img-hotspots-block .hotspot-point:active .hotspot-icon {
  transform: scale(0.95);
}
@keyframes hotspotPulse {
  0% {
    transform: scale(1);
    opacity: .8;
  }
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}
.img-hotspots-block .hotspot-tooltip {
  position: absolute;
  display: none;
  z-index: 1000;
  max-width: 540px;
}
.img-hotspots-block .hotspot-tooltip.active {
  display: block;
  animation: fadeInScale 0.3s ease-out;
}
@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.img-hotspots-block .hotspot-tooltip-content {
  background: white;
  border-radius: var(--bs-border-radius-lg);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(0, 0, 0, 0.08);
  position: relative;
  overflow: hidden;
}
.img-hotspots-block .hotspot-tooltip-content.two-column {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 1.5rem;
  padding: 1.5rem;
  background: #ffffff;
  backdrop-filter: blur(6px);
  border-radius: 12px;
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-tooltip-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 36px;
  height: 36px;
  background: rgba(0, 0, 0, 0.05);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .2s;
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-tooltip-close:hover {
  background: rgba(0, 0, 0, 0.1);
  transform: scale(1.1);
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-col-image img {
  width: 100%;
  display: block;
  border-radius: 8px;
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-col-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-col-text .hotspot-tooltip-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 .5rem 0;
  color: var(--bs-body-color);
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-col-text .hotspot-tooltip-description {
  margin: .5rem 0;
  font-size: .9rem;
  line-height: 1.5;
  color: var(--bs-body-color-rgb);
}
.img-hotspots-block .hotspot-tooltip-content .hotspot-col-text .hotspot-tooltip-btn {
  margin-top: 1rem;
  font-weight: 600;
}
@media (max-width: 576px) {
  .img-hotspots-block .hotspot-point {
    width: 40px;
    height: 40px;
  }
  .img-hotspots-block .hotspot-point .hotspot-icon {
    font-size: 1rem;
  }
  .img-hotspots-block .hotspot-tooltip {
    max-width: calc(98vw);
  }
  .img-hotspots-block .hotspot-tooltip-content.two-column {
    grid-template-columns: 1fr;
  }
}
.back-to-top {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 1050;
  width: 52px;
  height: 52px;
  background-color: #323e48;
  color: #ffffff;
  border: none;
  border-radius: 50%;
  box-shadow: rgba(65, 65, 65, 0.5) 0 0.1rem 0.3rem;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color 0.2s ease;
}
.back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (hover: hover) {
  .back-to-top:hover {
    background-color: #475866;
  }
  .back-to-top:hover .back-to-top__icon {
    transform: translateY(-2px);
  }
}
.back-to-top:active {
  transform: scale(0.92);
  background-color: #3c4b57;
}
.back-to-top:focus {
  outline: 2px solid #ff8000;
  outline-offset: 3px;
}
@media (max-width: 768px) {
  .back-to-top {
    width: 48px;
    height: 48px;
    bottom: 1rem;
    right: 1rem;
    box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
  }
}
@media (max-width: 375px) {
  .back-to-top {
    width: 44px;
    height: 44px;
    bottom: 0.75rem;
    right: 0.75rem;
  }
}
.back-to-top__progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
  pointer-events: none;
}
.back-to-top__progress-bg {
  fill: none;
  stroke: rgba(255, 255, 255, 0.15);
  stroke-width: 4;
}
.back-to-top__progress-bar {
  fill: none;
  stroke: #ffffff;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-dasharray: 289;
  stroke-dashoffset: 289;
  transition: stroke-dashoffset 0.1s ease-out;
}
.back-to-top__icon {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  transition: transform 0.2s ease;
}
@media (max-width: 768px) {
  .back-to-top__icon {
    font-size: 0.85rem;
  }
}
.ccm-page .image-box {
  min-height: 5rem;
  background-size: cover;
  background-position: center;
  padding: 2rem;
}
.ccm-page .image-box__content {
  padding: 2rem;
  background-color: transparent;
}
@media (max-width: 767px) {
  .ccm-page .image-box__content {
    padding: 1rem;
  }
}
.fullwidth img {
  width: 100%;
}
.anfrage input[name="categories"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.anfrage .filters label {
  cursor: pointer;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #6c757d;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  display: inline-block;
  font-weight: 500;
  font-size: 0.875rem;
}
.anfrage .filters label:hover {
  color: #343a40;
  background-color: #f8f9fa;
}
.anfrage [value="All"]:checked ~ .filters [for="All"] {
  color: #fff;
  background-color: #ff8000;
  border-color: #ff8000;
}
.anfrage .flex-row-product .post .card h3 {
  margin-bottom: 1rem;
}
.anfrage .image-thumbnail-wrapper {
  position: relative;
  display: inline-flex;
  align-items: flex-end;
  gap: 8px;
  margin-bottom: 1rem;
}
.anfrage .image-thumbnail {
  width: 90px;
  height: auto;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  transition: all 0.2s;
  cursor: pointer;
}
.anfrage .image-preview-btn {
  color: #666;
  text-decoration: none;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
  cursor: pointer;
}
.anfrage .image-preview-btn i {
  font-size: 12px;
}
.anfrage .image-preview-btn:hover {
  color: #ff8000;
}
.anfrage .image-hover-overlay {
  position: absolute;
  bottom: auto;
  top: 100%;
  right: 0;
  transform: translateY(10px);
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  display: none;
  z-index: 9999;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  width: 500px;
  aspect-ratio: 0.70707071;
  overflow: hidden;
}
.anfrage .image-hover-overlay img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: #f8f9fa;
}
.anfrage .card-body p.text-muted {
  font-size: 0.875rem;
}
.news-item {
  border-radius: 0.5rem;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.news-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
.news-item__image {
  overflow: hidden;
}
.news-item__image img {
  transition: transform 0.4s ease;
}
.news-item:hover .news-item__image img {
  transform: scale(1.05);
}
.news-item__body {
  padding: 1rem;
}
.news-item__body h3,
.news-item__body h4 {
  font-size: 1.5rem;
  font-weight: 600;
  color: #323e48;
  margin-bottom: 0.5rem;
}
.news-item__body p {
  font-size: 1rem;
  color: rgba(50, 62, 72, 0.8);
  line-height: 1.8;
  margin-bottom: 0;
}
.news-item__body p:last-child {
  margin-bottom: 0;
}
.news-item__footer {
  padding: 0.75rem 1rem 1rem;
}
.news-item__footer .btn {
  font-size: 0.85rem;
  font-weight: 600;
}
.news-item .btn-outline-primary {
  color: #ff8000;
  border-color: #ff8000;
  border-radius: 0.25rem;
}
.news-item .btn-outline-primary:hover,
.news-item .btn-outline-primary:focus {
  background-color: #ff8000;
  border-color: #ff8000;
  color: #ffffff;
}
.lp-slider .lp-slides {
  position: relative;
  width: 100%;
  height: 75vh;
  overflow: hidden;
}
@media (min-width: 768px) {
  .lp-slider .lp-slides {
    height: 400px;
  }
}
@media (min-width: 1200px) {
  .lp-slider .lp-slides {
    height: 500px;
  }
}
.lp-slider .lp-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
}
.lp-slider .lp-slide.active {
  opacity: 1;
  z-index: 2;
}
.lp-slider .lp-slide:first-child {
  opacity: 1;
  z-index: 1;
}
.lp-slider .lp-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 1;
}
.lp-slider .lp-sliderlayer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 100;
  display: flex;
  align-items: flex-end;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(3px);
}
@media (min-width: 768px) {
  .lp-slider .lp-sliderlayer {
    bottom: 3.75rem;
    width: 50vw;
    left: 0;
  }
}
@media (max-width: 576px) {
  .lp-slider .lp-sliderlayer {
    background: rgba(255, 255, 255, 0.75);
  }
}
.lp-slider .lp-sliderlayer-spacer {
  flex: 0 0 auto;
  pointer-events: auto;
  border-left: 8px solid #ff8000;
  display: none;
}
@media (min-width: 768px) {
  .lp-slider .lp-sliderlayer-spacer {
    display: block;
    width: auto;
    min-width: 8px;
  }
}
.lp-slider .lp-sliderlayer-content {
  flex: 1 1 auto;
  pointer-events: auto;
  padding: 1rem;
  color: #323e48;
  white-space: normal;
  word-wrap: break-word;
  width: 100%;
}
@media (min-width: 576px) {
  .lp-slider .lp-sliderlayer-content {
    padding: 1.25rem 1.25rem 1.25rem 1rem;
  }
}
@media (min-width: 768px) {
  .lp-slider .lp-sliderlayer-content {
    padding: 2rem 2rem 2rem 1rem;
  }
}
.lp-slider .lp-sliderlayer-content h1 {
  margin: 0 0 0.75rem 0;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .lp-slider .lp-sliderlayer-content h1 {
    margin-bottom: 15px;
  }
}
.lp-slider .lp-sliderlayer-content p {
  margin: 0 0 1rem 0;
  white-space: normal;
  word-wrap: break-word;
  color: #323e48;
  font-size: 0.85rem;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .lp-slider .lp-sliderlayer-content p {
    font-size: 1rem;
    margin-bottom: 2rem;
  }
}
.lp-slider .lp-sliderlayer-content a {
  color: #ff8000;
  text-decoration: none;
  font-size: 0.85rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  transition: color 0.3s ease;
}
.lp-slider .lp-sliderlayer-content a:hover {
  color: #cc6600;
}
@media (max-width: 576px) {
  .lp-slider .lp-sliderlayer-content a {
    margin: 0 auto;
    display: block;
  }
}
.lp-slider .lp-nav {
  position: absolute;
  bottom: 0.75rem;
  z-index: 20;
  background: rgba(50, 62, 72, 0.7);
  color: #ffffff;
  border: none;
  width: 40px;
  height: 40px;
  padding: 0;
  cursor: pointer;
  font-size: 16px;
  transition: background 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
}
.lp-slider .lp-nav:hover {
  background: #323e48;
}
@media (min-width: 768px) {
  .lp-slider .lp-nav {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    font-size: 18px;
  }
}
.lp-slider .lp-prev {
  left: 0.75rem;
}
@media (min-width: 768px) {
  .lp-slider .lp-prev {
    left: 2rem;
  }
}
.lp-slider .lp-next {
  right: 0.75rem;
}
@media (min-width: 768px) {
  .lp-slider .lp-next {
    right: 2rem;
  }
}
.kategorien {
  --kategorien-card-padding-mobile: 0.5rem;
  --kategorien-card-padding-desktop: 0.75rem;
  --kategorien-badge-size: 50px;
  --kategorien-badge-offset: 0.75rem;
}
@media (min-width: 768px) {
  .kategorien {
    --kategorien-card-padding-mobile: 0.75rem;
  }
}
@media (max-width: 576px) {
  .kategorien .row > div {
    margin-bottom: 2rem;
  }
}
.kategorien__product-count {
  font-size: 0.85rem !important;
  color: #323e48;
  opacity: 0.7;
}
.ausbildung .kategorien__img-container {
  display: none;
}
input[name="categories"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.filter-label {
  cursor: pointer;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #6c757d;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  display: inline-block;
  font-weight: 500;
  font-size: 0.85rem;
}
.filter-label:hover {
  color: #323e48;
  background-color: #f8f9fa;
}
[value="All"]:checked ~ .filters [for="All"] {
  color: #ffffff;
  background-color: #ff8000;
  border-color: #ff8000;
}
[value="All"]:checked ~ .flex-row-product [data-category] {
  display: block;
}
.kategorien__card {
  background-color: #ffffff;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
  position: relative;
  height: 100%;
}
.kategorien__card:hover {
  box-shadow: rgba(65, 65, 65, 0.5) 0 0.1rem 0.3rem;
  transform: translateY(-2px);
  border: 1px solid #f5f5f5;
  border-radius: 0.375rem;
}
.kategorien__card .stretched-link {
  z-index: 2;
}
.kategorien__card .kategorien__content,
.kategorien__card .kategorien__img-container {
  position: relative;
  z-index: 1;
}
.kategorien__img-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.kategorien__img-container.ratio::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.kategorien__img-container > .kategorien__img-layer,
.kategorien__img-container > .kategorien__stoerer-wrap {
  position: absolute;
}
.kategorien__img-container .kategorien__stoerer-wrap {
  top: 1rem;
  left: 1rem;
  z-index: 3;
  width: 50px;
  height: auto;
}
.kategorien__img-container .kategorien__stoerer-wrap img,
.kategorien__img-container .kategorien__stoerer-wrap picture,
.kategorien__img-container .kategorien__stoerer-wrap picture img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}
.kategorien__img-layer {
  inset: 0;
}
.kategorien__img-layer img,
.kategorien__img-layer picture,
.kategorien__img-layer picture img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.kategorien__img {
  transition: none !important;
  transform: none !important;
}
.kategorien__card:hover .kategorien__img {
  transform: none !important;
}
.kategorien__content h3 {
  margin-bottom: 0;
}
.kategorien__content {
  padding: var(--kategorien-card-padding-mobile);
}
@media (min-width: 768px) {
  .kategorien__content {
    padding: var(--kategorien-card-padding-desktop);
  }
}
.kategorien__card:focus-within {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
@media (max-width: 576px) {
  .filter-label {
    padding: 0.75rem 2rem;
    font-size: 1rem;
  }
}
.lp-produktgrid {
  padding: 0;
}
.lp-produktgrid .row {
  margin-left: 0;
  margin-right: 0;
}
.lp-produktgrid__card-link {
  text-decoration: none;
  display: block;
  height: 100%;
  transition: none;
}
.lp-produktgrid__card-link:hover {
  text-decoration: none;
}
.lp-produktgrid__card-link:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.lp-produktgrid__card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  position: relative;
}
.lp-produktgrid__card picture {
  width: 100%;
}
.lp-produktgrid__card:hover .lp-produktgrid__content {
  border-left-width: 7px;
  padding-left: calc(18px);
  transition: border-left-width 0.3s ease, padding-left 0.3s ease;
}
.lp-produktgrid__card:hover .lp-produktgrid__content h3 {
  color: #ff8000;
  transition: color 0.3s ease;
}
.lp-produktgrid__card:hover .lp-produktgrid__img {
  transform: scale(1.12);
}
.lp-produktgrid__img-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  overflow: hidden;
  background: #f5f5f5;
  flex-shrink: 0;
  height: 180px;
}
@media (min-width: 576px) {
  .lp-produktgrid__img-container {
    height: 200px;
  }
}
@media (min-width: 768px) {
  .lp-produktgrid__img-container {
    height: 250px;
  }
}
.lp-produktgrid__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  position: relative;
  z-index: 0;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.lp-produktgrid__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  background: #f5f5f5;
  border-left: 5px solid #ff8000;
  transition: border-left-width 0.3s ease, padding-left 0.3s ease;
  padding: 1rem;
  margin-top: -30px;
  margin-left: 5%;
  width: 90%;
  position: relative;
  z-index: 2;
  min-height: 50px;
}
@media (min-width: 576px) {
  .lp-produktgrid__content {
    padding: 2rem;
  }
}
.lp-produktgrid__content h3 {
  margin: 0;
  transition: color 0.3s ease;
}
.lp-produktgrid__content p {
  margin: 0;
}
.kategorien__img-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.kategorien__img-container.ratio::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.kategorien__img-layer {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kategorien__img-layer img,
.kategorien__img-layer picture,
.kategorien__img-layer picture img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
}
.produkt-carousel {
  position: relative;
  width: 100%;
  padding: 1rem 0;
}
.produkt-carousel:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 4px;
}
.produkt-carousel__track {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding: 0 2rem;
  padding: 0.75rem 2rem 2rem;
  margin: 0 -2rem;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
}
.produkt-carousel__track::-webkit-scrollbar {
  display: none;
}
.produkt-carousel__slide {
  flex: 0 0 85%;
  scroll-snap-align: center;
  scroll-snap-stop: always;
}
@media (min-width: 768px) {
  .produkt-carousel__slide {
    flex: 0 0 45%;
  }
}
@media (min-width: 992px) {
  .produkt-carousel__slide {
    flex: 0 0 30%;
  }
}
@media (min-width: 1200px) {
  .produkt-carousel__slide {
    flex: 0 0 calc(24%);
  }
}
.produkt-carousel__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #ffffff;
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.produkt-carousel__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
.produkt-carousel__card:hover .produkt-carousel__image {
  transform: scale(1.05);
}
.produkt-carousel__image-wrapper {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1.33333333;
  background: #f5f5f5;
}
.produkt-carousel__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.produkt-carousel__content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 1rem;
}
.produkt-carousel__title {
  font-size: 1rem;
  font-weight: 600;
  color: #323e48;
  margin: 0 0 0.75rem;
  line-height: 1.2;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.produkt-carousel__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: auto;
  padding: 0.75rem 1rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: #ffffff !important;
  text-decoration: none;
  background: #ff8000;
  border-radius: 0.25rem;
  transition: all 0.2s ease;
}
.produkt-carousel__link i {
  transition: transform 0.2s ease;
}
.produkt-carousel__link:hover,
.produkt-carousel__link:focus-visible {
  color: #ff8000 !important;
  background: #ffffff;
  border: 1px solid #ff8000;
  text-decoration: none;
}
.produkt-carousel__link:hover i,
.produkt-carousel__link:focus-visible i {
  transform: translateX(4px);
}
.produkt-carousel__link:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.produkt-carousel__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: #ffffff;
  border: 2px solid #d9d9d9;
  border-radius: 50%;
  color: #323e48;
  cursor: pointer;
  box-shadow: rgba(65, 65, 65, 0.5) 0 0.1rem 0.3rem;
  transition: all 0.2s ease;
}
.produkt-carousel__nav:hover {
  background: #ff8000;
  border-color: #ff8000;
  color: #ffffff;
}
.produkt-carousel__nav:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.produkt-carousel--infinite .produkt-carousel__nav:disabled {
  opacity: 1;
  cursor: pointer;
}
.produkt-carousel__nav:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.produkt-carousel__nav:disabled:hover {
  background: #ffffff;
  border-color: #d9d9d9;
  color: #323e48;
}
.produkt-carousel__nav--prev {
  left: 0;
}
@media (min-width: 992px) {
  .produkt-carousel__nav--prev {
    left: -22px;
  }
}
.produkt-carousel__nav--next {
  right: 0;
}
@media (min-width: 992px) {
  .produkt-carousel__nav--next {
    right: -22px;
  }
}
@media (max-width: 767px) {
  .produkt-carousel__nav {
    width: 36px;
    height: 36px;
    font-size: 0.85rem;
  }
}
.produkt-carousel__dots {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
}
.produkt-carousel__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 2px solid #d9d9d9;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: all 0.2s ease;
}
.produkt-carousel__dot:hover {
  border-color: #ff8000;
}
.produkt-carousel__dot.is-active {
  background: #ff8000;
  border-color: #ff8000;
  transform: scale(1.2);
}
.produkt-carousel__dot:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.produkt-carousel--infinite .produkt-carousel__track {
  scroll-snap-type: x proximity;
}
@media (max-width: 575px) {
  .produkt-carousel__dots {
    max-width: 100%;
    overflow-x: auto;
    padding: 0.5rem;
  }
  .produkt-carousel__dots::-webkit-scrollbar {
    display: none;
  }
}
@media (min-width: 992px) {
  .produkt-carousel {
    padding: 2rem 0;
  }
  .produkt-carousel__track {
    padding: 0.75rem 3rem 2rem;
    margin: 0 -3rem;
    scroll-padding: 0 3rem;
  }
}
@media print {
  .produkt-carousel__nav,
  .produkt-carousel__dots {
    display: none;
  }
  .produkt-carousel__track {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    overflow: visible;
  }
  .produkt-carousel__slide {
    flex: none;
    page-break-inside: avoid;
  }
  .produkt-carousel__slide--clone {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .produkt-carousel__track {
    scroll-behavior: auto;
  }
  .produkt-carousel__card,
  .produkt-carousel__image,
  .produkt-carousel__link,
  .produkt-carousel__link i,
  .produkt-carousel__nav,
  .produkt-carousel__dot {
    transition: none;
  }
}
.ccm-block-lexikon-item-wrapper {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 6rem 2rem;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
  padding: 0 15px;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link {
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: #f7941e;
  color: #fff;
  border-radius: 50%;
  text-decoration: none;
  transition: all 0.3s ease;
  font-size: 1.5rem;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a:hover {
  background-color: #da7a08;
  transform: translateX(-3px);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a[data-tooltip]::before {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  background-color: #333;
  color: #fff;
  padding: 8px 12px;
  border-radius: 4px;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 400;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a[data-tooltip]::after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(5px);
  border: 6px solid transparent;
  border-top-color: #333;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a[data-tooltip]:hover::before,
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a[data-tooltip]:hover::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a i {
  margin: 0;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link {
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: #f7941e;
  color: #fff;
  border-radius: 50%;
  text-decoration: none;
  transition: all 0.3s ease;
  font-size: 1.5rem;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a:hover {
  background-color: #da7a08;
  transform: translateX(3px);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a[data-tooltip]::before {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  background-color: #333;
  color: #fff;
  padding: 8px 12px;
  border-radius: 4px;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 400;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a[data-tooltip]::after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(5px);
  border: 6px solid transparent;
  border-top-color: #333;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a[data-tooltip]:hover::before,
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a[data-tooltip]:hover::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a i {
  margin: 0;
}
.ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-content {
  text-align: justify;
}
@media (max-width: 768px) {
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a,
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a {
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
  }
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-content {
    font-size: 0.95rem;
    padding: 1rem;
  }
}
@media (max-width: 480px) {
  .ccm-block-lexikon-item-wrapper {
    padding: 10px 0;
  }
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation {
    margin-bottom: 20px;
  }
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-previous-link a,
  .ccm-block-lexikon-item-wrapper .ccm-block-lexikon-item-navigation .ccm-block-lexikon-item-next-link a {
    width: 35px;
    height: 35px;
    font-size: 1rem;
  }
}
.header__search-mobile,
.header__search-desktop {
  display: flex;
  align-items: center;
}
.header__search-desktop {
  margin-left: 0.75rem;
  flex-shrink: 0;
}
.header-search__trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: transparent;
  border: none;
  color: #323e48;
  font-size: 1.25rem;
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease;
  border-radius: 0.5rem;
  flex-shrink: 0;
  padding: 0;
  margin-left: 4rem;
}
.header-search__trigger:hover,
.header-search__trigger:focus {
  color: #ff8000;
  background-color: rgba(0, 0, 0, 0.05);
  outline: none;
}
.header-search__trigger:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.header-search__trigger[aria-expanded="true"] {
  color: #ff8000;
}
.header-search__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1060;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 0.3s, opacity 0.3s ease;
  pointer-events: none;
}
.header-search__overlay.is-active {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s, opacity 0.3s ease;
  pointer-events: auto;
}
.header-search__overlay-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 1;
  cursor: pointer;
}
.header-search__overlay-content {
  position: relative;
  z-index: 2;
  background-color: #ffffff;
  padding: 3rem 0;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  transform: translateY(-100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header-search__overlay.is-active .header-search__overlay-content {
  transform: translateY(0);
}
.header-search__form-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  max-width: 950px;
  margin: 0 auto;
}
.header-search__form {
  position: relative;
  flex: 1;
  min-width: 0;
}
.header-search__input-wrapper {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background-color: #f5f5f5;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  border: 2px solid transparent;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.header-search__input-wrapper:focus-within {
  border-color: #ff8000;
  box-shadow: 0 0 0 4px rgba(255, 128, 0, 0.15);
  background-color: #ffffff;
}
.header-search__icon {
  color: #5c7284;
  font-size: 1.25rem;
  flex-shrink: 0;
}
.header-search__input-wrapper:focus-within .header-search__icon {
  color: #ff8000;
}
.header-search__input {
  flex: 1;
  min-width: 0;
  border: none;
  background: transparent;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.2rem;
  font-weight: 400;
  color: #323e48;
  padding: 0.75rem 0;
  outline: none;
}
.header-search__input::placeholder {
  color: #8398a9;
  font-weight: 400;
}
.header-search__submit {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background-color: #ff8000;
  color: #ffffff;
  border: none;
  padding: 0.75rem 2rem;
  border-radius: 0.5rem;
  font-family: 'Open Sans', sans-serif;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.1s ease;
  white-space: nowrap;
  flex-shrink: 0;
}
.header-search__submit:hover {
  background-color: #d66c00;
}
.header-search__submit:active {
  transform: scale(0.98);
}
.header-search__submit:focus-visible {
  outline: 2px solid #323e48;
  outline-offset: 2px;
}
.header-search__submit i {
  font-size: 0.875rem;
  transition: transform 0.2s ease;
}
.header-search__submit:hover i {
  transform: translateX(3px);
}
.header-search__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  background-color: #f5f5f5;
  border: none;
  color: #323e48;
  font-size: 1.5rem;
  cursor: pointer;
  border-radius: 0.5rem;
  transition: color 0.2s ease, background-color 0.2s ease;
  flex-shrink: 0;
  padding: 0;
  margin-top: 2px;
}
.header-search__close:hover {
  color: #ffffff;
  background-color: #ff8000;
}
.header-search__close:focus-visible {
  outline: 2px solid #ff8000;
  outline-offset: 2px;
}
.header-search__suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin-top: 0.75rem;
  background-color: #ffffff;
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  max-height: 400px;
  overflow-y: auto;
  z-index: 10;
}
.header-search__suggestions:empty {
  display: none;
}
.header-search__suggestions::-webkit-scrollbar {
  width: 8px;
}
.header-search__suggestions::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 4px;
}
.header-search__suggestions::-webkit-scrollbar-thumb {
  background: #d3d3d3;
  border-radius: 4px;
}
.header-search__suggestions::-webkit-scrollbar-thumb:hover {
  background: #bababa;
}
.suggesstion-box__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.suggesstion-box__item {
  border-bottom: 1px solid #d9d9d9;
}
.suggesstion-box__item:last-child {
  border-bottom: none;
}
.suggesstion-box__title {
  font-size: 0.85rem;
  font-weight: 600;
  color: #5c7284;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 0.75rem 1rem;
  margin: 0;
  background-color: #f5f5f5;
}
.suggesstion-box__title.h3--margin-15 {
  margin-top: 0;
}
.suggesstion-box__link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  color: #323e48;
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.suggesstion-box__link:hover {
  background-color: #f5f5f5;
  color: #323e48;
  text-decoration: none;
}
.suggesstion-box__img-box {
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f5f5f5;
  border-radius: 0.25rem;
  overflow: hidden;
}
.suggesstion-box__img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.suggesstion-box__text-box {
  flex: 1;
  min-width: 0;
}
.suggesstion-box__text-box p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.2;
}
.suggesstion-box__text-box p .bold {
  font-weight: 700;
  color: #ff8000;
}
.header-search__suggestions:not(:empty) {
  padding: 1rem;
}
.header-search__suggestions:has(.suggesstion-box__list) {
  padding: 0;
}
body.search-overlay-open {
  overflow: hidden;
}
@media (max-width: 991px) {
  .header-search__overlay-content {
    padding: 2rem 0;
  }
  .header-search__submit {
    padding: 0.75rem 1rem;
  }
}
@media (max-width: 767px) {
  .header-search__trigger {
    width: 40px;
    height: 40px;
    font-size: 1.125rem;
  }
  .header-search__overlay-content {
    padding: 1rem 0;
  }
  .header-search__form-row {
    gap: 0.75rem;
    align-items: flex-start;
  }
  .header-search__input-wrapper {
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.75rem;
  }
  .header-search__icon {
    display: none;
  }
  .header-search__input {
    flex: 1 1 100%;
    order: 1;
    font-size: 1rem;
    padding: 0.75rem;
  }
  .header-search__submit {
    flex: 1;
    order: 2;
    justify-content: center;
    padding: 0.75rem 1rem;
    font-size: 0.85rem;
  }
  .header-search__close {
    width: 44px;
    height: 44px;
    font-size: 1.25rem;
    margin-top: 0.75rem;
  }
  .header-search__suggestions {
    max-height: 50vh;
  }
}
@media (max-width: 374px) {
  .header-search__form-row {
    gap: 0.5rem;
  }
  .header-search__submit {
    font-size: 0.85rem;
    padding: 0.75rem 0.75rem;
  }
  .header-search__close {
    width: 40px;
    height: 40px;
  }
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main {
  margin-bottom: 0.75rem;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery__main-link {
  display: block;
  position: relative;
  overflow: hidden;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery__main-link:hover,
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery__main-link:focus {
  outline: none;
  box-shadow: none;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery__main-image {
  display: block;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery__main-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.5rem;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__main .ccm-block-gallery-image-overlay {
  display: none;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb {
  display: block;
  position: relative;
  overflow: hidden;
  width: 60px;
  height: 60px;
  border: 2px solid transparent;
  transition: border-color 0.2s ease;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb:hover,
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb:focus {
  outline: none;
  box-shadow: none;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb.active,
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb:hover {
  border-color: #ff8000;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb .ccm-block-gallery-image {
  width: 100%;
  height: 100%;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb .ccm-block-gallery-image picture {
  top: 0;
  left: 0;
  width: 56px;
  height: 56px;
}
.ccm-block-gallery--main-thumb .ccm-block-gallery__thumbnails .ccm-block-gallery__thumb .ccm-block-gallery-image picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.offset-top-left .ccm-block-gallery__main,
.offset-top-right .ccm-block-gallery__main,
.offset-bottom-left .ccm-block-gallery__main,
.offset-bottom-right .ccm-block-gallery__main {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1.77777778;
  overflow: visible;
  margin-bottom: 2rem;
}
.offset-top-left .ccm-block-gallery__main .ccm-block-gallery__main-link,
.offset-top-right .ccm-block-gallery__main .ccm-block-gallery__main-link,
.offset-bottom-left .ccm-block-gallery__main .ccm-block-gallery__main-link,
.offset-bottom-right .ccm-block-gallery__main .ccm-block-gallery__main-link {
  position: absolute;
  inset: 0;
  overflow: visible;
}
.offset-top-left .ccm-block-gallery__main .ccm-block-gallery__main-image,
.offset-top-right .ccm-block-gallery__main .ccm-block-gallery__main-image,
.offset-bottom-left .ccm-block-gallery__main .ccm-block-gallery__main-image,
.offset-bottom-right .ccm-block-gallery__main .ccm-block-gallery__main-image {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
}
@media (min-width: 768px) {
  .offset-top-left .ccm-block-gallery__main .ccm-block-gallery__main-image,
  .offset-top-right .ccm-block-gallery__main .ccm-block-gallery__main-image,
  .offset-bottom-left .ccm-block-gallery__main .ccm-block-gallery__main-image,
  .offset-bottom-right .ccm-block-gallery__main .ccm-block-gallery__main-image {
    width: 130%;
    height: 130%;
  }
}
.offset-top-left .ccm-block-gallery__main .ccm-block-gallery__main-image img,
.offset-top-right .ccm-block-gallery__main .ccm-block-gallery__main-image img,
.offset-bottom-left .ccm-block-gallery__main .ccm-block-gallery__main-image img,
.offset-bottom-right .ccm-block-gallery__main .ccm-block-gallery__main-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.offset-top-left .ccm-block-gallery__thumbnails,
.offset-top-right .ccm-block-gallery__thumbnails,
.offset-bottom-left .ccm-block-gallery__thumbnails,
.offset-bottom-right .ccm-block-gallery__thumbnails {
  position: relative;
  z-index: 10;
}
@media (min-width: 768px) {
  .offset-top-left .ccm-block-gallery__main .ccm-block-gallery__main-image {
    bottom: 0;
    right: 0;
    top: auto;
    left: auto;
  }
}
@media (min-width: 768px) {
  .offset-top-right .ccm-block-gallery__main .ccm-block-gallery__main-image {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
}
@media (min-width: 768px) {
  .offset-bottom-left .ccm-block-gallery__main .ccm-block-gallery__main-image {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
  }
}
@media (min-width: 768px) {
  .offset-bottom-right .ccm-block-gallery__main .ccm-block-gallery__main-image {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
  }
}
.ccm-page .text_bild_header {
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
}
.ccm-page .text_bild_header__bg {
  background: rgba(252, 192, 67, 0.8);
  padding: 2rem;
  position: relative;
}
.ccm-page .text_bild_header__bg:after {
  content: "";
  position: absolute;
  top: 0px;
  left: 5px;
  border: 2px solid #ffffff;
  width: calc(100% - 10px);
  transform: rotate(1deg);
  height: 100%;
  z-index: 1;
}
.ccm-page .text_bild_header__bg--bottom {
  background: #ffffff;
  margin-bottom: 1rem;
  text-align: left;
}
.ccm-page .text_bild_header__bg--bottom:after {
  border: 2px solid #cfe171;
}
.ccm-page .text_bild_header__bg-container {
  position: relative;
  z-index: 2;
}
.ccm-page .text_bild_header .inner {
  background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 70%);
  position: relative;
  text-align: center;
  height: 450px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 991px) {
  .ccm-page .text_bild_header .inner {
    height: 300px;
  }
}
.ccm-page .text_bild_header .inner.bottom {
  height: 550px;
  align-items: flex-end;
}
.ccm-page .text_bild_header video {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.ccm-page .trio_section {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  padding: 2rem 0;
}
@media (max-width: 991px) {
  .ccm-page .trio_section {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    padding: 2rem;
  }
}
@media (max-width: 576px) {
  .ccm-page .trio_section {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1rem;
  }
}
.ccm-page .trio_section__card {
  position: relative;
  width: 100%;
  aspect-ratio: 0.8;
  display: block;
  text-decoration: none;
  color: #ffffff;
  cursor: pointer;
  background-size: cover;
  background-position: center;
  background-color: #323e48;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-out;
}
@media (max-width: 991px) {
  .ccm-page .trio_section__card {
    aspect-ratio: 1.2;
  }
}
@media (max-width: 576px) {
  .ccm-page .trio_section__card {
    aspect-ratio: 1.4;
  }
}
.ccm-page .trio_section__card:hover {
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}
.ccm-page .trio_section__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(77, 77, 77, 0.3);
  opacity: 1;
  transition: background 0.3s ease-out;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  padding: 2rem;
}
@media (max-width: 576px) {
  .ccm-page .trio_section__overlay {
    padding: 1rem;
  }
}
.ccm-page .trio_section__card:hover .trio_section__overlay {
  background: rgba(77, 77, 77, 0.75);
}
.ccm-page .trio_section__content {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ccm-page .trio_section__lower {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.9399999999999999) 0.2s;
}
.ccm-page .trio_section__card:hover .trio_section__lower {
  opacity: 1;
  transform: translateY(0);
}
.ccm-page .trio_section__header {
  position: relative;
}
.ccm-page .trio_section__title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  color: #ffffff;
  letter-spacing: 1px;
}
.ccm-page .trio_section__divider {
  display: block;
  width: 0;
  height: 2px;
  background: #ffffff;
  margin: 0.75rem 0 0 0;
  padding: 0;
  border: none;
  transition: width 0.4s ease-out;
  transition-delay: 0.3s;
}
.ccm-page .trio_section__card:hover .trio_section__divider {
  width: 50px;
}
.ccm-page .trio_section__text p {
  margin: 0;
  padding: 0;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
}
.ccm-page .trio_section__cta {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 600;
  letter-spacing: 1px;
  color: #ffffff;
  text-transform: uppercase;
}
.ccm-page .trio_section__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 0.3s ease-out;
}
.ccm-page .trio_section__card:hover .trio_section__arrow {
  transform: translateX(4px);
}
.ccm-page {
  /* Radios verstecken */
  /* Basis-Stil der Links */
  /* Kein Bild-Zoom */
  /* Einheitliche Höhe + max. 2 Zeilen Titel */
  /* Icon-Link Style */
}
.ccm-page .referenzprojekt {
  background-color: #ffffff;
  border-radius: 0.5rem;
  padding: 2rem 3rem;
  margin-bottom: 3rem;
}
.ccm-page .referenzprojekt .produkte-buttons__list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
}
.ccm-page .referenzprojekt .produkte-buttons .btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  background-color: #ffffff;
  border-color: #ff8000;
  color: #ff8000;
}
.ccm-page .referenzprojekt .produkte-buttons .btn i {
  transition: transform 0.2s ease;
}
.ccm-page .referenzprojekt .produkte-buttons .btn:hover i {
  transform: translateX(4px);
}
.ccm-page .referenzprojekt .produkte-buttons .btn:hover {
  background-color: #ff8000 !important;
  color: #ffffff;
}
.ccm-page .benefits-3-cols .row,
.ccm-page .benefits-4-cols .row {
  display: flex;
  gap: 2rem;
  margin: 0;
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols .row,
  .ccm-page .benefits-4-cols .row {
    gap: 0;
    flex-direction: column;
  }
}
.ccm-page .benefits-3-cols .col-sm-4,
.ccm-page .benefits-4-cols .col-sm-4,
.ccm-page .benefits-3-cols .col-sm-3,
.ccm-page .benefits-4-cols .col-sm-3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: all 0.3s ease;
  padding: 0;
  flex: 1;
}
@media (max-width: 768px) {
  .ccm-page .benefits-3-cols .col-sm-4,
  .ccm-page .benefits-4-cols .col-sm-4,
  .ccm-page .benefits-3-cols .col-sm-3,
  .ccm-page .benefits-4-cols .col-sm-3 {
    margin-bottom: 0;
  }
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols .col-sm-4,
  .ccm-page .benefits-4-cols .col-sm-4,
  .ccm-page .benefits-3-cols .col-sm-3,
  .ccm-page .benefits-4-cols .col-sm-3 {
    padding: 0;
    margin-bottom: 2rem;
  }
}
.ccm-page .benefits-3-cols .col-sm-4:hover,
.ccm-page .benefits-4-cols .col-sm-4:hover,
.ccm-page .benefits-3-cols .col-sm-3:hover,
.ccm-page .benefits-4-cols .col-sm-3:hover {
  transform: translateY(-8px);
}
.ccm-page .benefits-3-cols .col-sm-4:hover picture,
.ccm-page .benefits-4-cols .col-sm-4:hover picture,
.ccm-page .benefits-3-cols .col-sm-3:hover picture,
.ccm-page .benefits-4-cols .col-sm-3:hover picture {
  transform: scale(1.08);
  box-shadow: 0 12px 30px rgba(255, 128, 0, 0.25);
}
.ccm-page .benefits-3-cols .col-sm-4:hover h3,
.ccm-page .benefits-4-cols .col-sm-4:hover h3,
.ccm-page .benefits-3-cols .col-sm-3:hover h3,
.ccm-page .benefits-4-cols .col-sm-3:hover h3 {
  color: #ff8000;
}
.ccm-page .benefits-3-cols picture,
.ccm-page .benefits-4-cols picture {
  width: 100%;
  max-width: 240px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(255, 128, 0, 0.08) 0%, rgba(163, 216, 230, 0.06) 100%);
  border-radius: 0.75rem;
  margin-bottom: 1rem;
  transition: all 0.3s ease;
  border: 1px solid rgba(255, 128, 0, 0.1);
  overflow: hidden;
  position: relative;
}
@media (max-width: 768px) {
  .ccm-page .benefits-3-cols picture,
  .ccm-page .benefits-4-cols picture {
    max-width: 220px;
    margin-bottom: 0.75rem;
  }
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols picture,
  .ccm-page .benefits-4-cols picture {
    max-width: 160px;
    margin-bottom: 1rem;
  }
}
.ccm-page .benefits-3-cols picture img,
.ccm-page .benefits-4-cols picture img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  max-width: 50%;
  object-fit: contain;
}
.ccm-page .benefits-3-cols h3,
.ccm-page .benefits-4-cols h3 {
  font-size: 1.75rem;
  font-weight: 600;
  color: #323e48;
  margin: 0 0 0.75rem;
  transition: color 0.3s ease;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .ccm-page .benefits-3-cols h3,
  .ccm-page .benefits-4-cols h3 {
    font-size: 1.5rem;
  }
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols h3,
  .ccm-page .benefits-4-cols h3 {
    font-size: 18px;
    margin-bottom: 0.5rem;
  }
}
.ccm-page .benefits-3-cols p,
.ccm-page .benefits-4-cols p {
  font-size: 1rem;
  color: #323e48;
  line-height: 1.8;
  margin: 0;
  transition: color 0.3s ease;
}
@media (max-width: 768px) {
  .ccm-page .benefits-3-cols p,
  .ccm-page .benefits-4-cols p {
    font-size: 15px;
  }
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols p,
  .ccm-page .benefits-4-cols p {
    font-size: 14px;
  }
}
.ccm-page .benefits-3-cols p strong,
.ccm-page .benefits-4-cols p strong {
  font-weight: 600;
  color: #323e48;
}
.ccm-page .benefits-3-cols p a,
.ccm-page .benefits-4-cols p a {
  color: #ff8000;
  text-decoration: none;
  border-bottom: 1px solid #ff8000;
  transition: all 0.2s ease;
}
.ccm-page .benefits-3-cols p a:hover,
.ccm-page .benefits-4-cols p a:hover {
  color: #323e48;
  border-bottom-color: #323e48;
}
@media (max-width: 576px) {
  .ccm-page .benefits-3-cols .mk-padding-divider,
  .ccm-page .benefits-4-cols .mk-padding-divider {
    display: none;
  }
}
@keyframes pulse-background {
  0%,
  100% {
    transform: scale(1);
    opacity: 0.3;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.6;
  }
}
.ccm-page .landingpage_content_element a:hover .landingpage_content_element__content,
.ccm-page .landingpage_content_element a:focus .landingpage_content_element__content {
  opacity: 1;
}
.ccm-page .landingpage_content_element a:hover .landingpage_content_element__inner,
.ccm-page .landingpage_content_element a:focus .landingpage_content_element__inner {
  opacity: 1;
  transform: scaleY(1);
}
.ccm-page .landingpage_content_element__element {
  position: relative;
  margin-bottom: 2rem;
}
.ccm-page .landingpage_content_element__inner {
  opacity: 0;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: 0.5s;
}
.ccm-page .landingpage_content_element__inner p:last-child {
  margin-bottom: 0px;
}
.ccm-page .landingpage_content_element__content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.6);
  display: flex;
  align-items: center;
  transition: 1s;
  opacity: 0;
}
.ccm-page .landingpage_content_element__inner {
  padding: 0 4rem;
}
.ccm-page input[name="categories"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.ccm-page .kategorien-filter {
  padding-left: 0 !important;
}
.ccm-page .kategorien-filter__link {
  cursor: pointer;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #6c757d;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  display: inline-block;
}
.ccm-page .kategorien-filter__link:hover {
  color: #343a40;
  background-color: #f8f9fa;
}
.ccm-page .katalog-download__img {
  transition: none !important;
  transform: none !important;
}
.ccm-page .katalog-download__card:hover .katalog-download__img {
  transform: none !important;
}
.ccm-page .katalog-download__card .card-body {
  display: flex;
  flex-direction: column;
  padding: 1rem !important;
}
.ccm-page .katalog-download__card .card-title {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.6rem;
}
.ccm-page .katalog-download__actions {
  display: flex;
  flex-direction: column;
  margin-top: auto;
}
.ccm-page .katalog-download__link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #343a40;
  text-decoration: none;
  font-size: 1rem;
  transition: all 0.2s ease-in-out;
  padding: 0.5rem 0;
}
.ccm-page .katalog-download__link:hover {
  color: #f7941e;
}
.ccm-page .katalog-download__link i {
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
}
.ccm-page .katalog-download__link span {
  font-weight: 500;
}
.ccm-page .katalog-download__title {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 5rem;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ccm-page .download-card-wrapper {
  background-color: #f5f5f5;
  padding: 3rem 0;
}
.ccm-page .category-filter__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.ccm-page .category-filter__list {
  padding-left: 0 !important;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
.ccm-page .category-filter__label {
  cursor: pointer;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #6c757d;
  text-decoration: none;
  transition: all 0.15s ease-in-out;
  display: inline-block;
  font-size: 0.85rem;
  text-transform: uppercase;
  font-weight: 600;
}
.ccm-page .category-filter__label:hover {
  color: #323e48;
  background-color: #e8e8e8;
}
.ccm-page .category-filter__label.active,
.ccm-page .category-filter__input:checked + .ccm-page .category-filter__list .ccm-page .category-filter__label[for] {
  color: #ffffff;
  background-color: #ff8000;
  border-color: #ff8000;
}
.ccm-page .software .download-card__img-container {
  padding: 0;
  max-height: 200px;
  overflow: hidden;
}
.ccm-page .software .download-card__img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center;
}
.ccm-page .anfrageformular .download-card__img-container {
  padding: 0;
  border-bottom: 1px solid #d9d9d9;
}
.ccm-page .download-card__title {
  display: flex !important;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 4rem;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ccm-page .download-card__title--single-line {
  min-height: auto;
  padding: 0.75rem 0;
  margin-bottom: 0.5rem;
  line-clamp: 1;
  -webkit-line-clamp: 1;
}
.ccm-page .download-card__card {
  border: 0;
  overflow: hidden;
  height: 100%;
}
.ccm-page .download-card__card .card-body {
  display: flex;
  flex-direction: column;
  padding: 1rem !important;
}
.ccm-page .download-card__card .card-title {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.6rem;
}
.ccm-page .download-card__img-container {
  overflow: hidden;
  position: relative;
  padding: 1rem;
}
.ccm-page .download-card__img {
  width: 100%;
  height: auto;
  display: block;
  transition: none !important;
  transform: none !important;
}
.ccm-page .download-card__img--zoom {
  backface-visibility: hidden;
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.ccm-page .download-card__img--zoom:hover {
  transform: scale(1.1);
}
.ccm-page .download-card__actions {
  display: flex;
  flex-direction: column;
  margin-top: auto;
}
.ccm-page .download-card__link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #323e48;
  text-decoration: none;
  font-size: 1rem;
  transition: all 0.2s ease-in-out;
  padding: 0.5rem 0;
}
.ccm-page .download-card__link:hover {
  color: #ff8000;
}
.ccm-page .download-card__link i {
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
}
.ccm-page .download-card__link span {
  font-weight: 500;
}
.ccm-page .download-card__description {
  line-height: 1.6;
  color: #323e48;
}
.ccm-page .download-card__description p {
  font-size: 0.85rem;
}
.ccm-page .download-card__description p:last-child {
  margin-bottom: 0;
}
.ccm-page .download-card-grid {
  align-content: flex-start;
  align-items: flex-start;
}
.ccm-page .download-card-grid .col {
  margin-bottom: 2rem;
}
.ccm-page .heimwerkertipps__item {
  margin-bottom: 2rem;
}
.ccm-page .heimwerkertipps__item--first {
  margin-bottom: 4rem;
}
.ccm-page .heimwerkertipps__content ul {
  list-style: none;
}
.ccm-page .heimwerkertipps__content ul li {
  position: relative;
  padding-left: 25px;
}
.ccm-page .heimwerkertipps__content ul li:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f068";
  color: #ff8000;
  position: absolute;
  left: 0px;
}
.ccm-page .lexikon--disable {
  display: none !important;
}
.ccm-page .lexikon__list {
  list-style: none;
  margin: 2rem 0 0;
}
.ccm-page .lexikon__item {
  border-bottom: 1px solid #ff8000;
}
.ccm-page .lexikon__item--big {
  font-size: 32px;
  font-weight: 700;
  color: #323e48;
  padding-bottom: 2rem;
}
.ccm-page .lexikon__item:last-child {
  border-bottom: 0px;
}
.ccm-page .lexikon__span {
  padding: 1rem;
  display: flex;
}
.ccm-page .lexikon__link {
  display: flex;
  align-items: center;
  color: #ff8000;
  text-decoration: none;
  padding: 1rem;
  transition: all .5s ease .05s;
}
.ccm-page .lexikon__link i {
  margin-left: auto;
}
.ccm-page .lexikon__link:hover,
.ccm-page .lexikon__link:focus {
  background: #ff8000;
  color: #ffffff;
}
.ccm-page .lexikon-list {
  list-style: none;
  margin: 0;
}
.ccm-page .lexikon-list .border-bottom {
  margin: 0 0 2rem;
}
.ccm-page .lexikon-list__list {
  list-style: none;
  margin: 0;
  text-align: center;
}
.ccm-page .lexikon-list__item {
  display: inline-block;
  margin: 0 7.5px;
}
.ccm-page .lexikon-list__link {
  display: block;
  padding: 0;
  transition: all .5s ease .05s !important;
  text-decoration: none;
}
.ccm-page .lexikon-list__link:hover {
  color: #ff8000;
}
.ccm-page .lexikon-list__link h4 {
  margin: 0;
}
.swiper-container,
.swiper {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
.swiper-wrapper {
  display: flex;
  position: relative;
  width: 100%;
  z-index: 1;
}
.swiper-slide {
  width: 100%;
  flex-shrink: 0;
}
.swiper-pagination {
  position: relative;
  text-align: center;
  padding: 3rem 0;
  z-index: 10;
  margin-top: 2rem;
}
@media (max-width: 576px) {
  .swiper-pagination {
    padding: 1rem 0;
    margin-top: 0;
  }
}
.swiper-pagination-bullet {
  background-color: #d9d9d9;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
  cursor: pointer;
  margin: 0 6px;
  transition: all 0.3s ease;
  opacity: 0.6;
}
.swiper-pagination-bullet:hover {
  opacity: 0.8;
  transform: scale(1.1);
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #ff8000;
  width: 16px;
  height: 16px;
  opacity: 1;
  transform: scale(1.2);
}
.testimonial {
  padding: 2rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.testimonial .testimonial-text p {
  font-size: 1.2rem;
}
.testimonial .swiper-slide {
  padding: 1rem;
}
@media (max-width: 767px) {
  .testimonial .swiper-slide {
    padding: 1rem 0;
  }
}
.ccm-page {
  /* Loading Animation */
}
.ccm-page #nl2go_form {
  transition: opacity 0.6s ease-in;
}
.ccm-page #nl2go_form.is-loaded {
  opacity: 1;
}
.ccm-page .newsletter-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 40px 20px;
}
.ccm-page .newsletter-loading.is-hidden {
  display: none;
}
.ccm-page .loading-spinner {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #FA8610;
  animation: spin 1.4s infinite;
}
.ccm-page .loading-spinner:nth-child(2) {
  animation-delay: 0.2s;
}
.ccm-page .loading-spinner:nth-child(3) {
  animation-delay: 0.4s;
}
@keyframes spin {
  0%,
  100% {
    opacity: 0.3;
  }
  50% {
    opacity: 1;
  }
}
.ccm-page .newsletter {
  margin-bottom: 40px;
}
.ccm-page .newsletter__radio-container {
  display: flex;
  flex-wrap: wrap;
  margin: 1rem -7.5px 0;
}
.ccm-page .newsletter__text {
  margin: 0 0 20px;
  text-align: left;
}
.ccm-page .newsletter__disclaimer {
  text-align: left;
  margin: 2rem 0 0.75rem;
}
.ccm-page .newsletter__bg-image {
  position: absolute;
  width: 300px;
  top: 2rem;
  right: 45px;
}
@media only screen and (max-width: 991px) {
  .ccm-page .newsletter__bg-image {
    display: none;
  }
}
.ccm-page .newsletter__image-container {
  position: relative;
  overflow: hidden;
}
.ccm-page .newsletter__image-container img {
  backface-visibility: hidden;
  -webkit-transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.ccm-page .newsletter__image-container:before {
  position: absolute;
  background: rgba(0, 0, 0, 0.3);
  content: '';
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.ccm-page .newsletter__input-group {
  background: #ffffff;
  margin: 0.75rem 0;
  position: relative;
  margin: 0 7.5px 1rem;
  flex: 1 1 30%;
}
@media only screen and (max-width: 767px) {
  .ccm-page .newsletter__input-group {
    flex: 1 1 40%;
  }
}
.ccm-page .newsletter__input-group:hover .newsletter__image-container img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
.ccm-page .newsletter__input-group--landingpage {
  background: none;
}
@media only screen and (max-width: 991px) {
  .ccm-page .newsletter__input-group--landingpage {
    flex: 1 1 30%;
    max-width: 33.33%;
  }
}
@media only screen and (max-width: 767px) {
  .ccm-page .newsletter__input-group--landingpage {
    max-width: 50%;
    flex: 1 1 45%;
  }
}
.ccm-page .newsletter__input-group--landingpage img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center center;
  border-radius: 4px;
}
.ccm-page .newsletter__input-group--landingpage label {
  position: absolute !important;
  font-size: 1.5rem;
  font-weight: 600;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 !important;
  display: flex !important;
  align-items: center;
  color: #ffffff !important;
  justify-content: center;
}
.ccm-page .newsletter__input-group--landingpage label:after {
  top: 25px !important;
  right: 1rem !important;
  left: unset !important;
}
.ccm-page .newsletter__input-group--landingpage input:checked ~ label {
  color: #ff8000;
}
.ccm-page .newsletter__input-group label {
  margin: 0;
  padding: 0.75rem 0px 0.75rem 45px;
  width: 100%;
  display: block;
  text-align: left;
  color: #3C454C;
  cursor: pointer;
  position: relative;
  z-index: 2;
  transition: color 200ms ease-in;
  overflow: hidden;
  font-family: 'Open Sans', sans-serif;
}
.ccm-page .newsletter__input-group label:hover {
  color: #ff8000;
}
.ccm-page .newsletter__input-group label:before {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  content: '';
  background-color: #eeeeee;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale3d(1, 1, 1);
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  z-index: -1;
}
.ccm-page .newsletter__input-group label:after {
  width: 24px;
  height: 24px;
  content: '';
  border: 2px solid #D1D7DC;
  background-color: #ffffff;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.414 11L4 12.414l5.414 5.414L20.828 6.414 19.414 5l-10 10z' fill='%23fff' fill-rule='nonzero'/%3E%3C/svg%3E ");
  background-repeat: no-repeat;
  background-position: -2px -1px;
  border-radius: 50%;
  z-index: 2;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  transition: all 200ms ease-in;
}
.ccm-page .newsletter__input-group input:checked ~ label {
  color: #ff8000;
}
.ccm-page .newsletter__input-group input:checked ~ label:after {
  background-color: #ff8000;
  border-color: #ff8000;
}
.ccm-page .newsletter__input-group input {
  width: 24px;
  height: 24px;
  order: 1;
  z-index: 2;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  visibility: hidden;
}
.ccm-page .newsletter__inner {
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: center;
  align-items: center;
  text-align: center;
  background-color: #ffffff;
  border: 1px solid #d9d9d9;
  padding: 4rem;
}
.ccm-page .newsletter__inner--landingpage {
  background: #f5f5f5;
  border: 1px solid #f5f5f5;
}
@media (max-width: 991px) {
  .ccm-page .newsletter__inner {
    padding: 2rem;
  }
}
.ccm-page .newsletter__inner h3 {
  margin: 0 0 1rem;
  font-weight: 600;
}
.ccm-page .newsletter__inner h3 i {
  margin-left: 1rem;
}
.ccm-page .newsletter__form {
  width: 100%;
  margin: 45px 0 0;
  max-width: 580px;
}
@media (max-width: 991px) {
  .ccm-page .newsletter__form {
    margin: 2rem 0 0;
  }
}
.ccm-page .newsletter__wrapper {
  position: relative;
}
.ccm-page .newsletter__wrapper--landinpage {
  margin: 0 0 2rem;
}
.ccm-page .newsletter__form-wrapper {
  position: relative;
}
.ccm-page .newsletter__btn-container {
  margin: 20px 0 0;
  text-align: left;
}
.ccm-page .newsletter__input {
  height: 45px;
  color: #000000;
  border-radius: 0;
  border-left: 0px;
  border-right: 0px;
  border-top: 0px;
  box-shadow: none;
}
.ccm-page .newsletter__input--top {
  margin-top: 1rem;
}
.ccm-page .newsletter__input--landingpage {
  border: 1px solid #cccccc;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.ccm-page .newsletter__input:focus {
  border-color: #cccccc !important;
  box-shadow: none;
}
.ccm-page .newsletter__input--error-message {
  background: #da153e;
  color: #ffffff;
}
.ccm-page .newsletter__input--error-message::-webkit-input-placeholder {
  color: #ffffff;
}
.ccm-page .newsletter__input--error-message:-moz-placeholder {
  color: #ffffff;
  opacity: 1;
}
.ccm-page .newsletter__input--error-message::-moz-placeholder {
  color: #ffffff;
  opacity: 1;
}
.ccm-page .newsletter__input--error-message:-ms-input-placeholder {
  color: #ffffff;
}
.ccm-page .newsletter__input--error-message::-ms-input-placeholder {
  color: #ffffff;
}
.ccm-page .newsletter__input--error-message::placeholder {
  color: #ffffff;
}
.ccm-page .newsletter__datenschutz {
  text-align: left;
  display: block;
  position: relative;
  font-weight: 400;
  padding: 0.5rem;
}
.ccm-page .newsletter__datenschutz p {
  margin: 0;
}
.ccm-page .newsletter__datenschutz input {
  position: absolute;
  left: 0.5rem;
  cursor: pointer;
}
.ccm-page .newsletter__datenschutz span {
  padding-left: 2rem;
  display: block;
  cursor: pointer;
}
.ccm-page .newsletter__datenschutz--error-message {
  background: #da153e;
}
.ccm-page .newsletter__datenschutz--error-message span {
  color: #ffffff;
}
.ccm-page .register-success__container {
  border: 1px solid #ff8000;
  padding: 2rem;
  text-align: center;
  margin: 0 0 1rem;
}
.ccm-page .newsletter-signup-step1 {
  background-color: #ff8000;
  padding: 2rem;
  margin: 4rem auto;
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1 {
    padding: 3rem;
  }
}
.ccm-page .newsletter-signup-step1__content-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: center;
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1__content-wrapper {
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
}
.ccm-page .newsletter-signup-step1__image-section {
  order: 0;
}
.ccm-page .newsletter-signup-step1__content {
  order: 1;
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1--image-left .newsletter-signup-step1__image-section {
    order: 0;
  }
  .ccm-page .newsletter-signup-step1--image-left .newsletter-signup-step1__content {
    order: 1;
  }
  .ccm-page .newsletter-signup-step1--image-right .newsletter-signup-step1__image-section {
    order: 1;
  }
  .ccm-page .newsletter-signup-step1--image-right .newsletter-signup-step1__content {
    order: 0;
  }
}
.ccm-page .newsletter-signup-step1__image-section {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 220px;
}
@media (min-width: 576px) {
  .ccm-page .newsletter-signup-step1__image-section {
    height: 260px;
  }
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1__image-section {
    height: auto;
    aspect-ratio: 1.77777778;
    overflow: visible;
  }
}
.ccm-page .newsletter-signup-step1__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1__image {
    position: absolute;
    width: 130%;
    height: 130%;
  }
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1--image-left .newsletter-signup-step1__image {
    bottom: 0;
    right: 0;
    top: auto;
    left: auto;
  }
  .ccm-page .newsletter-signup-step1--image-right .newsletter-signup-step1__image {
    bottom: 0;
    left: 0;
    top: auto;
    right: auto;
  }
}
.ccm-page .newsletter-signup-step1__content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.ccm-page .newsletter-signup-step1__heading {
  font-size: 1.5rem;
  color: #ffffff;
  margin: 0;
  font-weight: 900;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1__heading {
    font-size: 2rem;
  }
}
.ccm-page .newsletter-signup-step1__subheading {
  font-size: 0.95rem;
  color: #ffffff;
  margin: 0;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .ccm-page .newsletter-signup-step1__subheading {
    font-size: 1rem;
  }
}
.ccm-page .newsletter-signup-step1__form {
  display: flex;
  flex-direction: column;
}
.ccm-page .newsletter-signup-step1__input-group {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ccm-page .newsletter-signup-step1__label {
  font-weight: 500;
  color: #ffffff;
  margin: 0;
  font-size: 0.95rem;
}
.ccm-page .newsletter-signup-step1__input-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ccm-page .newsletter-signup-step1__input {
  padding: 0.75rem;
  border: 1px solid #ddd;
  border-radius: 0.375rem;
  font-size: 1rem;
  font-family: inherit;
  background-color: #ffffff;
  color: #323e48;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.ccm-page .newsletter-signup-step1__input:focus {
  outline: none;
  border-color: #ffffff;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3);
}
.ccm-page .newsletter-signup-step1__helper {
  font-size: 0.875rem;
  color: #ffffff;
  margin: 0;
}
.ccm-page .newsletter-signup-step1__gdpr {
  margin: 0.5rem 0 0 0;
  padding: 1rem 0 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.ccm-page .newsletter-signup-step1__gdpr-label {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  cursor: pointer;
  user-select: none;
}
.ccm-page .newsletter-signup-step1__gdpr-checkbox {
  margin-top: 0.375rem;
  cursor: pointer;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  flex-shrink: 0;
}
.ccm-page .newsletter-signup-step1__gdpr-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ffffff;
  margin: 0;
}
.ccm-page .newsletter-signup-step1__gdpr-text a {
  color: #ffffff;
  text-decoration: underline;
}
.ccm-page .newsletter-signup-step1__gdpr-text a:hover {
  opacity: 0.8;
}
.ccm-page .newsletter-signup-step1__button {
  align-self: stretch;
  margin-top: 0.5rem;
}
@media (min-width: 576px) {
  .ccm-page .newsletter-signup-step1__button {
    align-self: flex-start;
  }
}
.ccm-page .newsletter-signup-step1__button:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.ccm-page .newsletter-signup-step1__button:active {
  transform: translateY(0);
}
.ccm-page .newsletter-signup-step1__button.btn-secondary {
  background-color: #ffffff;
  color: #ff8000;
  font-weight: 600;
}
.ccm-page .newsletter-signup-step1__button.btn-secondary:hover {
  opacity: 0.9;
}
.zertifikat {
  padding: 1rem 0;
}
.zertifikat input[name="categories"] {
  display: none !important;
}
.zertifikat__filters {
  border: 1px solid #e8e8e8;
  border-radius: 0.5rem;
  padding: 2rem;
  margin-bottom: 2rem;
}
.zertifikat__filters .filters {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  align-items: center;
  justify-content: center;
}
.zertifikat__filters .filters li {
  display: inline-block;
  margin: 0;
}
.zertifikat__filters .filters label {
  cursor: pointer;
  text-decoration: none !important;
  color: #666;
  transition: all 0.3s ease;
  display: inline-block;
  padding: 0.5rem 0;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.3px;
  position: relative;
  white-space: nowrap;
}
.zertifikat__filters .filters label::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 2px;
  background: #f7941e;
  transition: width 0.3s ease;
}
.zertifikat__filters .filters label:hover {
  color: #333;
}
.zertifikat__filters .filters label:hover::after {
  width: 100%;
}
.zertifikat__filters .filters label.active {
  color: #333;
  font-weight: 600;
}
.zertifikat__filters .filters label.active::after {
  width: 100%;
}
@media (max-width: 768px) {
  .zertifikat__filters {
    padding: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .zertifikat__filters .filters {
    gap: 1.5rem;
  }
  .zertifikat__filters .filters label {
    font-size: 0.9rem;
  }
}
@media (max-width: 480px) {
  .zertifikat__filters {
    padding: 1rem;
  }
  .zertifikat__filters .filters {
    gap: 1rem;
  }
  .zertifikat__filters .filters label {
    font-size: 0.85rem;
  }
}
.zertifikat__list {
  list-style: none;
  padding: 0;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1.5rem !important;
  margin-top: 2rem !important;
}
@media (max-width: 1024px) {
  .zertifikat__list {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 768px) {
  .zertifikat__list {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
}
.zertifikat__item {
  display: flex !important;
  flex-direction: column;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease;
  min-width: 0;
}
.zertifikat__item.post[style*="display: none"] {
  display: none !important;
}
.zertifikat__card {
  border: 1px solid #e0e0e0;
  border-radius: 0.5rem;
  overflow: hidden;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  background: #fff;
  height: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
.zertifikat__card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.zertifikat__image-wrapper {
  overflow: hidden;
  background: #f8f9fa;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  flex-shrink: 0;
}
.zertifikat__image-wrapper img.zertifikat__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 1rem;
  display: block;
  max-width: 100%;
  max-height: 100%;
}
.zertifikat__image-wrapper img.zertifikat__img.lazyload {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: loading 1.5s infinite;
}
.zertifikat__image-wrapper img.zertifikat__img.lazyloaded {
  animation: none;
  background: transparent;
}
@keyframes loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.card-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 1.5rem;
}
.zertifikat__title {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.3;
  color: #333;
  margin-bottom: 1rem;
}
@media (max-width: 768px) {
  .zertifikat__title {
    font-size: 1rem;
  }
}
.zertifikat__description {
  font-size: 0.95rem;
  line-height: 1.5;
  color: #666;
  margin-bottom: 1rem;
  flex-grow: 1;
}
.zertifikat__description p {
  margin: 0 0 0.5rem 0;
}
.zertifikat__description p:last-child {
  margin-bottom: 0;
}
.zertifikat__description strong {
  color: #333;
  font-weight: 600;
}
.zertifikat__description em {
  font-style: italic;
}
.zertifikat__description a {
  color: #f7941e;
  text-decoration: underline;
  transition: all 0.2s ease;
}
.zertifikat__description a:hover {
  color: #d67a1a;
}
.btn.btn-primary {
  background-color: #f7941e;
  border-color: #f7941e;
  color: #fff;
  font-weight: 500;
  transition: all 0.2s ease;
}
.btn.btn-primary:hover {
  background-color: #d67a1a;
  border-color: #d67a1a;
  box-shadow: 0 2px 6px rgba(247, 148, 30, 0.3);
}
.btn.btn-primary:active,
.btn.btn-primary:focus {
  background-color: #c26b14;
  border-color: #c26b14;
}
.btn.btn-primary i {
  margin-right: 0.5rem;
}
.btn.btn-sm {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
}
.btn.w-100 {
  width: 100%;
  display: block;
}
.mt-auto {
  margin-top: auto;
}
.mt-auto .btn {
  display: block;
  width: 100%;
}
.ccm-page .social__card {
  padding: 0 1rem 1rem;
}
.ccm-page .social__header {
  display: flex;
  margin-bottom: 0.75rem;
}
.ccm-page .social__header img {
  border-radius: 50%;
  width: 97px;
  height: 97px;
  margin-right: 1rem;
}
.ccm-page .social__header h3 {
  font-size: 1rem;
  margin: 0;
}
.ccm-page .social__header h4 {
  font-size: 0.85rem;
  margin: 0.75rem 0 1rem;
  color: #666666;
}
.ccm-page .social__header-name {
  flex-grow: 1;
}
.ccm-page .social__list {
  list-style: none;
  margin: 0;
  -moz-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -moz-column-gap: 2rem;
  -webkit-column-gap: 2rem;
  column-gap: 7.5px;
  -moz-column-fill: initial;
  -webkit-column-fill: initial;
  column-fill: initial;
  -moz-column-count: 2;
  -webkit-column-count: 2;
  column-count: 2;
}
.ccm-page .social__item {
  position: relative;
  margin-bottom: 7.5px;
  display: inline-block;
}
.ccm-page .social__img {
  width: 100%;
}
.ccm-page .social__stats {
  display: flex;
}
.ccm-page .social__stats div {
  flex-grow: 1;
}
.ccm-page .social__span {
  display: block;
  font-weight: 600;
}
.ccm-page .social__span--small {
  font-weight: 400;
}
.ccm-page .social__tags {
  opacity: 0;
  z-index: 9;
  position: absolute;
  top: 1rem;
  width: 100%;
  text-align: center;
  transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
  padding: 0 0.5rem;
}
.ccm-page .social__tags span {
  color: #ffffff;
  font-size: 12px;
}
.ccm-page .social__tags span i {
  margin-right: 0.75rem;
}
.ccm-page .social__icon {
  width: 100%;
  position: absolute;
  bottom: 1rem;
  z-index: 9;
  text-align: center;
  opacity: 0;
  transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
}
.ccm-page .social__icon span {
  color: #ffffff;
  font-size: 38px;
}
.ccm-page .social__link {
  display: block;
  position: relative;
}
.ccm-page .social__link:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: rgba(0, 0, 0, 0.4);
  transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
}
.ccm-page .social__link:hover:after {
  opacity: 1;
}
.ccm-page .social__link:hover .social__tags,
.ccm-page .social__link:hover .social__icon {
  opacity: 1;
}
.ccm-page .animated-div {
  position: relative;
  margin-bottom: 50px;
}
.ccm-page .animated-div__img {
  width: 100%;
  animation: float 6s ease-in-out infinite;
}
.ccm-page .animated-div__cover {
  background-size: cover;
  background-position: center center;
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div__dots {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div__dot {
    background: #ffffff;
    border-radius: 50%;
    width: 3rem;
    height: 3rem;
    position: absolute;
    cursor: pointer;
  }
  .ccm-page .animated-div__dot:hover {
    background: #ff8000;
  }
  .ccm-page .animated-div__dot--0 {
    left: 180px;
    top: 250px;
  }
  .ccm-page .animated-div__dot--1 {
    left: 400px;
    top: 300px;
  }
  .ccm-page .animated-div__dot--2 {
    left: 540px;
    top: 400px;
  }
}
.ccm-page .animated-div__list {
  list-style: none;
  margin: 0;
}
.ccm-page .animated-div__inner {
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
  display: flex;
}
.ccm-page .animated-div__item {
  margin-bottom: 2rem;
}
.ccm-page .animated-div__item:last-child {
  margin-bottom: 0px;
}
.ccm-page .animated-div__icon {
  background: #ff8000;
  padding: 1rem;
  display: flex;
  align-items: center;
}
.ccm-page .animated-div__icon-img {
  width: 50px;
  height: 50px;
}
.ccm-page .animated-div__text {
  padding: 1rem;
  background: #ffffff;
}
.ccm-page .lp-tabs-title {
  font-size: 2rem;
  font-weight: 900;
  margin-bottom: 30px;
}
.block-tabs-planning .tabs-container {
  background-color: #f8f8f8;
  border-radius: 4px;
  overflow: hidden;
}
.block-tabs-planning .nav-tabs {
  background-color: #f8f8f8;
  border-right: 1px solid #ddd;
  padding: 0;
  margin: 0;
}
.block-tabs-planning .nav-tabs .nav-item {
  border-bottom: 1px solid #ddd;
}
.block-tabs-planning .nav-tabs .nav-item:last-child {
  border-bottom: none;
}
.block-tabs-planning .nav-tabs .nav-link {
  border: none;
  border-radius: 0;
  padding: 15px 20px;
  color: #333;
  font-weight: 500;
  background-color: transparent;
  text-align: left;
  transition: all 0.3s ease;
  width: 100%;
}
.block-tabs-planning .nav-tabs .nav-link:hover {
  background-color: #e8e8e8;
}
.block-tabs-planning .nav-tabs .nav-link.active {
  background-color: #ff8000;
  color: white;
  border-left: 4px solid #cc6d00;
  padding-left: 16px;
}
.block-tabs-planning .tab-content {
  background-color: white;
}
.block-tabs-planning .tab-content .tab-pane {
  animation: fadeIn 0.3s ease-in;
}
.block-tabs-planning .tab-content-image img {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.block-tabs-planning .tab-content-description {
  background-color: #ff8000;
  color: white;
  padding: 25px;
}
.block-tabs-planning .tab-content-description h3 {
  color: white;
  font-size: 1.5rem;
  margin-bottom: 15px;
  font-weight: 600;
}
.block-tabs-planning .tab-content-description p {
  margin-bottom: 10px;
  line-height: 1.6;
  font-size: 0.95rem;
}
.block-tabs-planning .tab-content-description p:last-child {
  margin-bottom: 0;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.page-type-produkt .main-container .ccm-custom-style-main div:nth-of-type(2) {
  display: none;
}
.page-type-produkt .main-container .eta-list__item {
  margin-top: 45px;
}
.page-type-produkt .main-container .eta-list img {
  width: 100%;
  max-width: 200px;
  height: auto;
}
.page-type-produkt .main-container .ccm-custom-style-main .container:nth-of-type(2) {
  display: none;
}
.ccm-page .imagecontainer {
  margin-bottom: 4rem;
}
.ccm-page .imagecontainer .main-image-wrapper {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 1.33333333;
  border-radius: 0.75rem;
  overflow: hidden;
  position: relative;
}
.ccm-page .imagecontainer .main-image-wrapper .main-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  transition: opacity 0.3s ease;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0.75rem;
  opacity: 1;
}
.ccm-page .imagecontainer .main-image-wrapper .main-image.fade {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.ccm-page .imagecontainer .main-image-wrapper .arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.4);
  color: #ffffff;
  border-radius: 50%;
  cursor: pointer;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  transition: background-color 0.3s;
  user-select: none;
}
.ccm-page .imagecontainer .main-image-wrapper .arrow:hover {
  background-color: rgba(0, 0, 0, 0.6);
}
.ccm-page .imagecontainer .main-image-wrapper .arrow.arrow-left {
  left: 0.75rem;
}
.ccm-page .imagecontainer .main-image-wrapper .arrow.arrow-right {
  right: 0.75rem;
}
.ccm-page .imagecontainer .thumbnail-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
}
.ccm-page .imagecontainer .thumbnail-grid .thumb-item {
  width: 80px;
  height: 80px;
  overflow: hidden;
  border: 2px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.ccm-page .imagecontainer .thumbnail-grid .thumb-item:hover {
  border-color: #007bff;
}
.ccm-page .imagecontainer .thumbnail-grid .thumb-item .thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ccm-page .unterlagen {
  padding: 5rem 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  align-content: flex-start;
  gap: 1rem;
  color: #ff8000;
}
.ccm-page .unterlagen div {
  min-width: 250px;
}
.ccm-page .unterlagen a {
  color: #ff8000;
}
.ccm-page .unterlagen i {
  font-size: 1.5rem;
  margin-right: 0.5rem;
}
.ccm-page .unterlagen .datenblatt,
.ccm-page .unterlagen .dwg {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding: 0.5rem;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 5px;
}
.ccm-page .unterlagen .datenblatt:hover,
.ccm-page .unterlagen .dwg:hover {
  background-color: #f8f8f8;
}
.ccm-page .unterlagen .datenblatt a,
.ccm-page .unterlagen .dwg a {
  word-break: break-word;
  overflow-wrap: anywhere;
  text-decoration: none;
}
.ccm-page .product-content {
  padding: 4rem 0;
}
.ccm-page .product-content--single {
  padding: 0px;
}
.ccm-page .product-content--single .slick-slider .slick-list {
  padding: 0 0 2rem;
}
.ccm-page .product-content--single .slick-prev,
.ccm-page .product-content--single .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}
.ccm-page .product-content--single .slick-next {
  right: -25px;
}
.ccm-page .product-content--single .slick-next:before {
  content: "\f054";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1rem;
  line-height: 1rem;
  color: #ff8000;
}
.ccm-page .product-content--single .slick-prev {
  left: -25px;
}
.ccm-page .product-content--single .slick-prev:before {
  content: "\f053";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1rem;
  line-height: 1rem;
  color: #ff8000;
}
.ccm-page .product-content--single .slick-dots {
  position: absolute;
  bottom: 0px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.ccm-page .product-content--single .slick-dots li {
  position: relative;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin: 0 0.5rem;
  padding: 0;
  cursor: pointer;
}
.ccm-page .product-content--single .slick-dots li.slick-active button:before,
.ccm-page .product-content--single .slick-dots li:hover button:before {
  background: #323e48;
}
.ccm-page .product-content--single .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 0.75rem;
  height: 0.75rem;
  padding: 0.5rem;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
.ccm-page .product-content--single .slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.75rem;
  height: 0.75rem;
  content: '';
  border: 1px solid #323e48;
  border-radius: 50%;
}
.ccm-page .product-content__img-container {
  position: relative;
}
@media (max-width: 991px) {
  .ccm-page .product-content__img-container {
    margin-bottom: 2rem;
  }
  .ccm-page .product-content__img-container img {
    margin-bottom: 2rem;
  }
}
.ccm-page .product-content__img-stoerer {
  position: absolute;
  top: 1rem;
  left: 1rem;
}
.ccm-page .product-content .description-container {
  position: relative;
}
.ccm-page .product-content .description-long {
  line-height: 1.8;
  color: #323e48;
  transition: max-height 0.5s ease, background 0.5s ease;
  max-height: 280px;
  overflow: hidden;
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 75%, rgba(255, 255, 255, 0));
  background-attachment: local;
  padding-bottom: 1rem;
}
.ccm-page .product-content .description-long.expanded {
  background: none;
}
.ccm-page .product-content .description-long::after {
  content: '';
  position: absolute;
  bottom: 42px;
  left: 0;
  right: 0;
  height: 50px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff 80%);
  pointer-events: none;
}
.ccm-page .product-content .description-long.no-fade::after {
  display: none;
}
.ccm-page .product-content .description-toggle {
  background: none;
  border: none;
  color: #ff8000;
  font-weight: 600;
  cursor: pointer;
  padding: 0.75rem 0;
  font-size: inherit;
  transition: color 0.2s ease;
  display: inline-block;
  margin-top: -1rem;
}
.ccm-page .product-content .description-toggle:hover {
  color: #cc6600;
}
.ccm-page .product-content .description-toggle::before {
  content: '➜ ';
  display: inline-block;
  transition: transform 0.4s ease;
  margin-right: 0.75rem;
}
.ccm-page .product-content .description-long.expanded ~ .description-toggle::before {
  transform: rotate(180deg);
}
.ccm-page .product-content .description-long > ul {
  margin-left: 0;
  padding-left: 0;
}
.ccm-page .product-content .description-long > ul > li > ul {
  margin-top: 0.5rem;
}
.ccm-page .product-content .description-long ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
.ccm-page .product-content .description-long ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.5rem;
}
.ccm-page .product-content .description-long ul li:before {
  content: "\f111";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #ff8000;
  position: absolute;
  left: 0px;
  font-size: 7px;
  top: 7px;
}
.ccm-page .product-content .description-long ul li ul li:before {
  content: "\f178";
  font-size: 12px;
  top: 4px;
}
.ccm-page .product-content table {
  width: 100%;
}
.ccm-page .product-content table th,
.ccm-page .product-content table td {
  padding: 0.5rem;
}
.ccm-page .product-content table {
  width: 100%;
  border-collapse: collapse;
}
.ccm-page .product-content table tr:nth-of-type(even) {
  background: #eee;
}
.ccm-page .product-content table th {
  background: #d6d6d6;
  color: #000000;
  font-weight: 700;
}
.ccm-page .product-content table td,
.ccm-page .product-content table th {
  padding: 6px;
  text-align: left;
}
.ccm-page .product-content .video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 2rem;
  height: 0;
  min-height: 341px;
  overflow: hidden;
}
.ccm-page .product-content .video-container iframe,
.ccm-page .product-content .video-container object,
.ccm-page .product-content .video-container embed {
  position: absolute;
  top: 1px;
  left: 1px;
  right: 1px;
  bottom: 1px;
  width: 100%;
  height: 100%;
}
.ccm-page .product-content .gradient-overlay {
  top: 1px !important;
  left: 1px !important;
  right: 1px !important;
  bottom: 1px !important;
}
.ccm-page .product-content .youtube-img {
  width: 100%;
}
.ccm-page .product-content .slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.ccm-page .product-content .slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.ccm-page .product-content .slick-list:focus {
  outline: none;
}
.ccm-page .product-content .slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.ccm-page .product-content .slick-slider .slick-track,
.ccm-page .product-content .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.ccm-page .product-content .slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ccm-page .product-content .slick-track:before,
.ccm-page .product-content .slick-track:after {
  display: table;
  content: '';
}
.ccm-page .product-content .slick-track:after {
  clear: both;
}
.ccm-page .product-content .slick-loading .slick-track {
  visibility: hidden;
}
.ccm-page .product-content .slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
.ccm-page .product-content .slick-slide img {
  display: block;
}
.ccm-page .product-content .slick-slide.slick-loading img {
  display: none;
}
.ccm-page .product-content .slick-slide.dragging img {
  pointer-events: none;
}
.ccm-page .product-content .slick-slide > div {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  height: 100%;
}
.ccm-page .product-content [dir='rtl'] .slick-slide {
  float: right;
}
.ccm-page .product-content .slick-initialized .slick-slide {
  display: block;
}
.ccm-page .product-content .slick-loading .slick-slide {
  visibility: hidden;
}
.ccm-page .product-content .slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.ccm-page .product-content .slick-arrow.slick-hidden {
  display: none;
}
.ccm-page .rt-vertical-table .single-item tr td {
  border-bottom: 1px solid #cccccc !important;
}
.ccm-page .rt-vertical-table .single-item tr td:last-child {
  border-bottom: 0px !important;
}
@media (max-width: 767px) {
  #table {
    display: block;
    width: 100%;
    border: 0;
  }
  #table thead {
    display: none;
  }
  #table tbody,
  #table tr,
  #table td {
    display: block;
    padding-right: 1rem;
  }
  #table tbody tr {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    margin: 0 0 12px 0;
    padding: 10px 12px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  #table tbody td {
    padding: 0.5rem;
    border: 0;
    margin-bottom: 0.5rem;
  }
  #table tbody td::before {
    content: attr(data-label);
    display: block;
    font-weight: 700;
    font-size: .9rem;
    margin-bottom: 2px;
    color: #333;
  }
}
/* =========================
   PRODUCT – Mobile Optimierung
   ========================= */
.product-content .imagecontainer {
  width: 100%;
}
/* Großbild */
.product-content .main-image-wrapper {
  position: relative;
  width: 100%;
  border-radius: 0;
  overflow: hidden;
}
.product-content .main-image {
  display: block;
  width: 100%;
  height: auto;
}
/* Fade */
.product-content #main-product-image.fade {
  opacity: .35;
  transition: opacity .18s ease;
}
/* Pfeile: auf Touch eher weg oder kleiner */
.product-content .arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 999px;
  cursor: pointer;
  user-select: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}
.product-content .arrow-left {
  left: 10px;
}
.product-content .arrow-right {
  right: 10px;
}
@media (max-width: 767px) {
  .product-content .arrow {
    width: 38px;
    height: 38px;
  }
}
/* Thumbnails: mobil horizontal scroll statt Grid */
.product-content .thumbnail-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(64px, 1fr));
  gap: 10px;
}
.product-content .thumb-item {
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
}
.product-content .thumb {
  display: block;
  width: 100%;
  height: 64px;
  object-fit: cover;
  cursor: pointer;
}
@media (max-width: 767px) {
  .product-content .thumbnail-grid {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 6px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }
  .product-content .thumb-item {
    flex: 0 0 76px;
    scroll-snap-align: start;
  }
  .product-content .thumb {
    height: 56px;
  }
}
/* Beschreibung: Button besser tappable */
.description-toggle {
  margin-top: 10px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background: #fff;
  cursor: pointer;
  font-weight: 600;
}
@media (max-width: 767px) {
  .description-container {
    margin-top: 10px;
  }
}
/* Tabelle: Mobile Scroll */
.tablefilter + table,
table[data-tablefilter] {
  width: 100%;
}
@media (max-width: 991px) {
  table[data-tablefilter],
  #table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
/* Lightbox */
.image-lightbox {
  display: none;
  /* wichtig: wirklich aus */
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.95);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}
.image-lightbox__container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.image-lightbox__content {
  max-width: 92vw;
  max-height: 88vh;
  margin: auto;
  animation: zoomIn 0.25s ease;
}
.image-lightbox__close {
  position: absolute;
  top: 14px;
  right: 18px;
  color: #fff;
  font-size: 38px;
  font-weight: bold;
  cursor: pointer;
  z-index: 10000;
}
.image-lightbox__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 44px;
  font-weight: bold;
  color: white;
  cursor: pointer;
  user-select: none;
  z-index: 10000;
  padding: 0 10px;
}
.image-lightbox__arrow--left {
  left: 8px;
}
.image-lightbox__arrow--right {
  right: 8px;
}
@media (max-width: 767px) {
  .image-lightbox__arrow {
    display: none;
  }
  /* Swipe/Thumbs reicht meistens */
  .image-lightbox__close {
    font-size: 34px;
  }
}
@keyframes zoomIn {
  from {
    transform: scale(0.92);
  }
  to {
    transform: scale(1);
  }
}
/* Highlight rows bleibt */
.highlight-row-animated {
  animation: pulse-highlight 0.8s ease-in-out 0s 2;
}
@keyframes pulse-highlight {
  0% {
    background-color: #ffff99;
  }
  50% {
    background-color: gold;
  }
  100% {
    background-color: #ffff99;
  }
}
.highlight-row-final {
  z-index: 10;
  position: relative;
  background-color: #fffce5;
  box-shadow: 0 0 0 0 #ff8000;
  animation: fade-border 0.6s ease-out forwards;
}
@keyframes fade-border {
  from {
    box-shadow: 0 0 0 0 rgba(255, 128, 0, 0);
  }
  to {
    box-shadow: 0 0 0 3px #ff8000;
  }
}
.ccm-page .terrasse .kategorien h1,
.ccm-page .terrasse .kategorien h2 {
  border-left: 5px solid #cfe171;
  padding-left: 1rem;
}
.ccm-page .terrasse .border-bottom h2:after {
  background: #cfe171;
}
.ccm-page .terrasse .kategorien--landinpage .kategorien__content {
  border-top: 2px solid #cfe171;
  border-bottom: 3px solid #cfe171;
}
.ccm-page .terrasse .kategorien--landinpage .kategorien__content p i {
  color: #cfe171;
}
.ccm-page .terrasse .text_bild_header__bg {
  background: rgba(207, 225, 113, 0.8);
}
.ccm-page .terrasse .animated-div__icon {
  background: #cfe171;
}
@media only screen and (min-width: 768px) {
  .ccm-page .terrasse .animated-div__dot:hover {
    background: #cfe171;
  }
  .ccm-page .terrasse .animated-div__dot--0 {
    left: 420px;
    top: 70px;
  }
  .ccm-page .terrasse .animated-div__dot--1 {
    left: 470px;
    top: 0px;
  }
  .ccm-page .terrasse .animated-div__dot--2 {
    left: 660px;
    top: 80px;
  }
}
.ccm-page .terrasse .image-box__link {
  background: #cfe171;
  border: 1px solid #cfe171;
}
.ccm-page .terrasse .image-box__link:hover,
.ccm-page .terrasse .image-box__link:focus {
  color: #cfe171;
}
.ccm-page .terrasse .kategorien_auflistung_header {
  background: #cfe171;
}
.ccm-page .zaun .animated-div__icon {
  background: #c9d749;
}
@media only screen and (min-width: 768px) {
  .ccm-page .zaun .animated-div__dot:hover {
    background: #c9d749;
  }
  .ccm-page .zaun .animated-div__dot--0 {
    left: 210px;
    top: 140px;
  }
  .ccm-page .zaun .animated-div__dot--1 {
    left: 350px;
    top: 120px;
  }
  .ccm-page .zaun .animated-div__dot--2 {
    left: 500px;
    top: 80px;
  }
}
.ccm-page .zaun .image-box__link {
  background: #cfe171;
  border: 1px solid #cfe171;
}
.ccm-page .zaun .image-box__link:hover,
.ccm-page .zaun .image-box__link:focus {
  color: #cfe171;
}
.ccm-page .holzbauschrauben .kategorien h1,
.ccm-page .holzbauschrauben .kategorien h2 {
  border-left: 5px solid #f16049;
  padding-left: 1rem;
}
.ccm-page .holzbauschrauben .btn {
  background: #FFE9E5;
  color: #323e48;
}
.ccm-page .holzbauschrauben .btn:hover {
  background: #ff8000;
  color: #ffffff;
}
.ccm-page .holzbauschrauben .landingpage_content_element__content {
  background: #ffffff;
}
.ccm-page .holzbauschrauben .kategorien--landinpage .kategorien__content {
  background: #f5f5f5;
  border-top: 0px !important;
  border-bottom: 0px !important;
}
.ccm-page .holzbauschrauben .kategorien--landinpage .kategorien__content h3 {
  text-align: left;
}
.ccm-page .holzbauschrauben .kategorien--landinpage .kategorien__content p i {
  color: #f16049;
}
.ccm-page .holzbauschrauben .text_bild_header .inner {
  align-items: start;
  background: rgba(255, 255, 255, 0.5);
}
@media (min-width: 992px) {
  .ccm-page .holzbauschrauben .text_bild_header .inner {
    background: none;
  }
}
.ccm-page .holzbauschrauben .text_bild_header .inner .btn {
  background: #FFE9E5;
  color: #323e48;
}
.ccm-page .holzbauschrauben .text_bild_header .inner .btn:hover {
  background: #ff8000;
  color: #ffffff;
}
.ccm-page .holzbauschrauben .text_bild_header__bg {
  background: none;
  padding: 0px;
  display: flex;
}
.ccm-page .holzbauschrauben .text_bild_header__bg:after {
  content: none;
}
.ccm-page .holzbauschrauben .text_bild_header__bg-container {
  margin-left: auto;
  text-align: left;
  padding-top: 90px;
}
.ccm-page .holzbauschrauben .text_bild_header h1 {
  color: #323e48;
}
.ccm-page .holzbauschrauben .text_bild_header h2 {
  color: #ffffff;
  font-size: 36px;
}
.ccm-page .holzbauschrauben .kategorien_auflistung_header {
  background: #f16049;
}
.ccm-page .solar .kategorien h1,
.ccm-page .solar .kategorien h2 {
  border-left: 5px solid #a3d8e6;
  padding-left: 1rem;
}
.ccm-page .solar .kategorien--landinpage .kategorien__content {
  background: #f5f5f5;
  border-top: 0px !important;
  border-bottom: 0px !important;
}
.ccm-page .solar .kategorien--landinpage .kategorien__content h3 {
  text-align: left;
}
.ccm-page .solar .kategorien--landinpage .kategorien__content p i {
  color: #a3d8e6;
}
.ccm-page .solar .text_bild_header .inner {
  align-items: start;
  background: rgba(255, 255, 255, 0.5);
}
@media (min-width: 992px) {
  .ccm-page .solar .text_bild_header .inner {
    background: none;
  }
}
.ccm-page .solar .text_bild_header__bg {
  background: none;
  padding: 0px;
  display: flex;
}
.ccm-page .solar .text_bild_header__bg:after {
  content: none;
}
.ccm-page .solar .text_bild_header__bg-container {
  margin-left: auto;
  text-align: left;
  padding-top: 90px;
}
.ccm-page .solar .text_bild_header h1 {
  color: #323e48;
}
.ccm-page .solar .text_bild_header h2 {
  color: #ffffff;
  font-size: 36px;
}
.ccm-page .solar .kategorien_auflistung_header {
  background: #a3d8e6;
}
.ccm-page .animated-div-solar {
  position: relative;
  text-align: center;
}
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--1--before:before,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--1--before:after,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--1--schraeg:before,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--2--before:before,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--2--before:after,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--2--schraeg:before,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--3--before:before,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--3--before:after,
.ccm-page .animated-div-solar--holz .animated-div-solar__icon--3--schraeg:before {
  background: #ffffff;
}
.ccm-page .animated-div-solar__img-container {
  position: relative;
}
.ccm-page .animated-div-solar__img-container-icon {
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #ff8000;
  cursor: pointer;
  display: block;
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__img-container-icon {
    display: none;
  }
}
.ccm-page .animated-div-solar__img-container-icon--1 {
  top: 5%;
  left: 25%;
}
.ccm-page .animated-div-solar__img-container-icon--2 {
  top: 30%;
  left: 40%;
}
.ccm-page .animated-div-solar__img-container-icon--3 {
  top: 60%;
  right: 30%;
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon {
    position: absolute;
    width: 30%;
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  .ccm-page .animated-div-solar__icon {
    background: #ffffff;
    padding: 2rem;
    text-align: left;
    margin-top: 2rem;
    display: none;
  }
  .ccm-page .animated-div-solar__icon.active {
    display: block;
  }
}
.ccm-page .animated-div-solar__icon h4 {
  margin: 0 0 0.75rem;
  color: #323e48;
  transition: all .5s ease .05s;
}
@media only screen and (max-width: 767px) {
  .ccm-page .animated-div-solar__icon h4 {
    color: #323e48;
  }
}
.ccm-page .animated-div-solar__icon p {
  color: #323e48;
  transition: all .5s ease .05s;
}
@media only screen and (max-width: 767px) {
  .ccm-page .animated-div-solar__icon p {
    color: #323e48;
  }
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon:hover h4,
  .ccm-page .animated-div-solar__icon:hover p {
    color: #323e48;
  }
}
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--1--before:before,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--1--before:after,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--2--before:before,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--2--before:after,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--2--schraeg:before,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--3--before:before,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--3--before:after,
.ccm-page .animated-div-solar__icon:hover .animated-div-solar__icon--3--schraeg:before {
  background: #ff8000;
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--1 {
    top: 0px;
    left: 50%;
  }
}
.ccm-page .animated-div-solar__icon--1--before:before {
  content: "";
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--1--before:before {
    width: 150px;
    height: 5px;
    background: #ff8000;
    position: absolute;
    top: 20px;
    left: -170px;
    transition: all .5s ease .05s;
  }
}
.ccm-page .animated-div-solar__icon--1--before:after {
  width: 14px;
  height: 14px;
  background: #ff8000;
  position: absolute;
  top: 15px;
  left: -170px;
  transition: all .5s ease .05s;
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--1--before:after {
    content: "";
  }
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--2 {
    bottom: 2rem;
    left: 70%;
  }
}
.ccm-page .animated-div-solar__icon--2--before:before {
  content: "";
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--2--before:before {
    width: 200px;
    height: 5px;
    background: #ff8000;
    position: absolute;
    top: -2rem;
    left: -75px;
    transition: all .5s ease .05s;
  }
}
.ccm-page .animated-div-solar__icon--2--before:after {
  width: 14px;
  height: 14px;
  background: #ff8000;
  position: absolute;
  top: 12px;
  left: -126px;
  transition: all .5s ease .05s;
  transform: rotate(135deg);
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--2--before:after {
    content: "";
  }
}
@media (max-width: 992px) {
  .ccm-page .animated-div-solar__icon--2--before:after {
    top: -3px;
    left: -113px;
  }
}
.ccm-page .animated-div-solar__icon--2--schraeg:before {
  width: 4rem;
  height: 5px;
  background: #ff8000;
  position: absolute;
  top: -9px;
  left: -124px;
  transition: all .5s ease .05s;
  transform: rotate(135deg);
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--2--schraeg:before {
    content: "";
  }
}
@media (max-width: 992px) {
  .ccm-page .animated-div-solar__icon--2--schraeg:before {
    width: 40px;
    top: -16px;
    left: -108px;
  }
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--3 {
    bottom: 0px;
    left: 0px;
  }
}
.ccm-page .animated-div-solar__icon--3--before:before {
  content: "";
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--3--before:before {
    width: 100px;
    height: 5px;
    background: #ff8000;
    position: absolute;
    top: 6px;
    right: 36px;
    transition: all .5s ease .05s;
  }
}
@media only screen and (min-width: 768px) and (max-width: 992px) {
  .ccm-page .animated-div-solar__icon--3--before:before {
    width: 2rem;
    right: 0.75rem;
  }
}
.ccm-page .animated-div-solar__icon--3--before:after {
  width: 14px;
  height: 14px;
  background: #ff8000;
  position: absolute;
  top: -85px;
  right: -58px;
  transition: all .5s ease .05s;
  transform: rotate(135deg);
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--3--before:after {
    content: "";
  }
}
@media (max-width: 992px) {
  .ccm-page .animated-div-solar__icon--3--before:after {
    top: -54px;
    right: -52px;
  }
}
.ccm-page .animated-div-solar__icon--3--schraeg:before {
  width: 120px;
  height: 5px;
  background: #ff8000;
  position: absolute;
  top: -36px;
  right: -65px;
  transition: all .5s ease .05s;
  transform: rotate(135deg);
}
@media only screen and (min-width: 768px) {
  .ccm-page .animated-div-solar__icon--3--schraeg:before {
    content: "";
  }
}
@media (max-width: 992px) {
  .ccm-page .animated-div-solar__icon--3--schraeg:before {
    width: 80px;
    top: -22px;
    right: -57px;
  }
}
@media only screen and (max-width: 767px) {
  .ccm-page .animated-div-solar__icon--active h4 {
    color: #323e48;
  }
}
@media only screen and (max-width: 767px) {
  .ccm-page .animated-div-solar__icon--active p {
    color: #323e48;
  }
}
.ccm-page .animated-div-solar__img {
  width: 600px;
  margin-left: -15%;
  animation: float 6s ease-in-out infinite;
}
@media (max-width: 768px) {
  .ccm-page .animated-div-solar__img {
    width: 100%;
    margin-left: 0px;
  }
}
.ccm-page .ingenieurholzbau .kategorien h1,
.ccm-page .ingenieurholzbau .kategorien h2 {
  border-left: 5px solid #fcc061;
  padding-left: 1rem;
}
.ccm-page .ingenieurholzbau .text_bild_header__bg ul {
  list-style: none;
}
.ccm-page .ingenieurholzbau .text_bild_header__bg ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 0.5rem;
}
.ccm-page .ingenieurholzbau .text_bild_header__bg ul li:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f111";
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 0.75rem;
  color: #ff8000;
}
.ccm-page .ingenieurholzbau .text_bild_header__bg:after {
  border: 2px solid #fcc061;
}
.ccm-page .ingenieurholzbau .kategorien_auflistung_header {
  background: #fcc061;
}
.ccm-page .holzverbinder .kategorien h1,
.ccm-page .holzverbinder .kategorien h2 {
  border-left: 5px solid #9cb2b5;
  padding-left: 1rem;
}
.ccm-page .holzverbinder .kategorien_auflistung_header {
  background: #9cb2b5;
}
.ccm-page .werkzeuge .kategorien h1,
.ccm-page .werkzeuge .kategorien h2 {
  border-left: 5px solid #0ea38f;
  padding-left: 1rem;
}
.ccm-page .werkzeuge .kategorien_auflistung_header {
  background: #0ea38f;
}
.ccm-page .beton .kategorien h1,
.ccm-page .beton .kategorien h2 {
  border-left: 5px solid #b29e94;
  padding-left: 1rem;
}
.ccm-page .beton .kategorien_auflistung_header {
  background: #b29e94;
}
.ccm-page .dach .kategorien h1,
.ccm-page .dach .kategorien h2 {
  border-left: 5px solid #bf685b;
  padding-left: 1rem;
}
.ccm-page .dach .kategorien_auflistung_header {
  background: #bf685b;
}
.ccm-page .industrie .kategorien_auflistung_header {
  background: #f5f5f5;
  padding: 0px;
}
.ccm-page .industrie .kategorien_auflistung_header__list {
  text-align: center;
}
.ccm-page .industrie .kategorien_auflistung_header__link {
  color: #323e48;
}
.ccm-page .industrie .kategorien_auflistung_header__link:hover,
.ccm-page .industrie .kategorien_auflistung_header__link:focus {
  color: #ff8000;
  text-decoration: none;
}
.ccm-page .industrie .kategorien_auflistung_header__item {
  border-right: 0px;
  padding: 0.5rem;
  margin: 0;
  position: relative;
  font-weight: 700;
}
.ccm-page .industrie .kategorien_auflistung_header__item:after {
  right: -3px;
  position: absolute;
  content: "";
  background: #323e48;
  width: 1px;
  top: 0.75rem;
  bottom: 0.75rem;
}
.ccm-page .industrie .kategorien_auflistung_header__item--last:after {
  display: none;
}
.ccm-page .title-main .kategorien h1,
.ccm-page .title-main .kategorien h2 {
  color: #ff8000;
}
@media only screen and (min-width: 768px) {
  .ccm-page .modular .animated-div__dot--0 {
    left: 160px;
    top: 280px;
  }
  .ccm-page .modular .animated-div__dot--1 {
    left: 340px;
    top: 190px;
  }
  .ccm-page .modular .animated-div__dot--2 {
    left: 520px;
    top: 340px;
  }
}
.ccm-page .landingpage-holz .kategorien {
  cursor: default !important;
}
.ccm-page .landingpage-holz .kategorien__card {
  cursor: default !important;
}
.landingpage_form {
  background: #ffffff;
  padding: 2rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  max-width: 100%;
  margin: 3rem auto;
  border-radius: 0.75rem;
  border: none;
  position: relative;
  overflow: hidden;
}
@media (min-width: 576px) {
  .landingpage_form {
    max-width: 600px;
    padding: 3rem;
  }
}
.landingpage_form .form-group {
  margin-bottom: 2rem;
}
.landingpage_form .form-group .form-label {
  font-weight: 600;
  color: #323e48;
  margin-bottom: 0.5rem;
  font-size: 1rem;
}
.landingpage_form .form-group .text-danger {
  color: #ff8000;
}
.landingpage_form .form-control {
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.landingpage_form .form-control:focus {
  border-color: #ff8000;
  box-shadow: 0 0 0 3px rgba(255, 128, 0, 0.15);
  outline: none;
}
.landingpage_form .form-control::placeholder {
  color: #d3d3d3;
}
.landingpage_form .range {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.landingpage_form .range .form-range {
  flex: 1;
  height: 8px;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 4px;
  cursor: pointer;
}
.landingpage_form .range .form-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 24px;
  height: 24px;
  background: #ff8000;
  border-radius: 50%;
  cursor: grab;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.landingpage_form .range .form-range::-webkit-slider-thumb:hover {
  transform: scale(1.1);
  box-shadow: 0 3px 10px rgba(255, 128, 0, 0.4);
}
.landingpage_form .range .form-range::-webkit-slider-thumb:active {
  cursor: grabbing;
  transform: scale(0.95);
}
.landingpage_form .range .form-range::-moz-range-thumb {
  width: 24px;
  height: 24px;
  background: #ff8000;
  border: none;
  border-radius: 50%;
  cursor: grab;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.landingpage_form .range .form-range::-moz-range-track {
  background: #f5f5f5;
  height: 8px;
  border-radius: 4px;
}
.landingpage_form .range .badge {
  background: #323e48 !important;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.5rem 0.75rem;
  border-radius: 0.25rem;
  min-width: 50px;
  text-align: center;
}
.landingpage_form .form-check {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding-left: 0;
}
.landingpage_form .form-check .form-check-input {
  flex-shrink: 0;
  margin-top: 5px;
  width: 22px;
  height: 22px;
  min-height: 20px;
  margin: 0;
  border: 2px solid #d9d9d9;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: all 0.2s ease;
}
.landingpage_form .form-check .form-check-input:checked {
  background-color: #ff8000;
  border-color: #ff8000;
}
.landingpage_form .form-check .form-check-input:focus {
  box-shadow: 0 0 0 3px rgba(255, 128, 0, 0.15);
}
.landingpage_form .form-check .form-check-label {
  cursor: pointer;
  flex: 1;
  padding-top: 2px;
}
.landingpage_form .form-check .form-check-label p {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.8;
  color: #323e48;
}
.landingpage_form .form-check .form-check-label p a {
  color: #ff8000;
  text-decoration: underline;
}
.landingpage_form .form-check .form-check-label p a:hover {
  color: #cc6600;
}
.landingpage_form .btn-primary {
  background: #ff8000;
  border: none;
  border-radius: 0.5rem;
  padding: 0.75rem 3rem;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.25s ease;
  width: 100%;
}
@media (min-width: 576px) {
  .landingpage_form .btn-primary {
    width: auto;
  }
}
.landingpage_form .btn-primary:hover {
  background: #d66c00;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(255, 128, 0, 0.4);
}
.landingpage_form .btn-primary:active {
  transform: translateY(0);
}
.landingpage_form .btn-primary .fa-spinner {
  display: none;
  margin-left: 0.5rem;
}
.landingpage_form .btn-primary.loading {
  pointer-events: none;
  opacity: 0.8;
}
.landingpage_form .btn-primary.loading .fa-spinner {
  display: inline-block;
}
.landingpage_form .alert-danger {
  background: rgba(241, 96, 73, 0.1);
  border: 1px solid #f16049;
  color: #ed371a;
  border-radius: 0.5rem;
  padding: 1rem;
}
.landingpage_form .alert-danger.hide {
  display: none;
}
.landingpage_form .alert-success {
  background: rgba(207, 225, 113, 0.3);
  border: 1px solid #aac329;
  color: #616f17;
  border-radius: 0.5rem;
  padding: 2rem;
  text-align: center;
}
.header--login {
  background: #ffffff;
  border-bottom: 1px solid #d9d9d9;
}
.header--login .header__top-container {
  padding: 0.75rem 0;
}
.header--login .header__flex-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.header--login .ccm-image-block {
  height: 3rem;
  width: auto;
}
.header--login .header__left-auto {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.header--login .header__left-auto ul {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.85rem;
  color: #323e48;
}
.header--login .header__left-auto ul a {
  color: #323e48;
  text-decoration: none;
  transition: color 0.2s ease;
}
.header--login .header__left-auto ul a:hover {
  color: #ff8000;
}
.header--login .ccm-block-social-links .list-inline {
  display: flex;
  gap: 0.5rem;
  margin: 0;
}
.header--login .ccm-block-social-links a {
  color: #323e48;
  font-size: 1rem;
  transition: color 0.2s ease;
}
.header--login .ccm-block-social-links a:hover {
  color: #ff8000;
}
@media (max-width: 576px) {
  .header--login .header__flex-container {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
  }
  .header--login .header__left-auto {
    flex-wrap: wrap;
    justify-content: center;
  }
}
:root {
  --bs-primary: #ff8000;
  --bs-primary-rgb: 255, 128, 0;
  --bs-secondary: #323e48;
  --bs-secondary-rgb: 50, 62, 72;
  --bs-success: #0ea38f;
  --bs-warning: #cfe171;
  --bs-danger: #f16049;
  --bs-info: #a3d8e6;
  --bs-light: #f5f5f5;
  --bs-dark: #323e48;
}
.bg-gray-100 {
  background-color: #f5f5f5;
}
.bg-gray-90 {
  background-color: rgba(245, 245, 245, 0.9);
}
.bg-gray-80 {
  background-color: rgba(245, 245, 245, 0.8);
}
.bg-gray-70 {
  background-color: rgba(245, 245, 245, 0.7);
}
.bg-white-100 {
  background-color: #ffffff;
}
.bg-white-90 {
  background-color: rgba(255, 255, 255, 0.9);
}
.bg-white-80 {
  background-color: rgba(255, 255, 255, 0.8);
}
.bg-white-70 {
  background-color: rgba(255, 255, 255, 0.7);
}
@media (min-width: 768px) {
  body .container {
    max-width: 920px;
  }
}
@media (min-width: 1200px) {
  body .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  body .container {
    max-width: 1320px;
  }
}
.text-hover-main:hover {
  color: #ff8000 !important;
}
.ccm-page .btn {
  transition: all .5s ease .05s !important;
  padding-left: 1rem;
  padding-right: 1rem;
}
.ccm-page .btn.btn-primary {
  background-color: #ff8000 !important;
  border-color: #ff8000 !important;
  color: #ffffff !important;
}
.ccm-page .btn.btn-primary:hover,
.ccm-page .btn.btn-primary:focus,
.ccm-page .btn.btn-primary:active {
  background-color: #ffffff !important;
  border-color: #ff8000 !important;
  color: #ff8000 !important;
}
.ccm-page .btn.btn-secondary {
  background-color: #323e48 !important;
  border-color: #323e48 !important;
  color: #ffffff !important;
}
.ccm-page .btn.btn-secondary:hover,
.ccm-page .btn.btn-secondary:focus,
.ccm-page .btn.btn-secondary:active {
  background-color: #ffffff !important;
  border-color: #323e48 !important;
  color: #323e48 !important;
}
.ccm-page .card {
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem -0.5rem rgba(0, 0, 0, 0.25);
}
.ccm-page .card .card-header {
  background: #ffffff;
  border-bottom: 1px solid #dddddd;
  border-radius: 0 !important;
}
.ccm-page .card .card-body {
  padding: 1rem;
}
.ccm-page .accordion .accordion-item {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0 !important;
}
.ccm-page .accordion .accordion-item .accordion-button {
  padding: 25px 25px 25px 0;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.ccm-page .accordion .accordion-item .accordion-button:not(.collapsed) {
  background: #ffffff !important;
  color: #323e48 !important;
  box-shadow: none !important;
}
.ccm-page .accordion .accordion-item .accordion-button:focus {
  box-shadow: none !important;
  border: 0 !important;
}
.ccm-page .accordion .accordion-item .accordion-button::after {
  background-image: none !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  content: "\f078" !important;
  color: #ff8000 !important;
  transform: none !important;
  width: auto !important;
  height: auto !important;
}
.ccm-page .accordion .accordion-item .accordion-button:not(.collapsed)::after {
  content: "\f077" !important;
}
.ccm-page .accordion .accordion-item .accordion-body {
  padding: 0px 2rem 1rem 0px;
}
.ccm-page .pagination .page-item.active .page-link {
  background-color: #ff8000 !important;
  border-color: #ff8000 !important;
  color: #ffffff !important;
}
.ccm-page .pagination .page-item .page-link {
  color: #ff8000 !important;
  border-radius: 0 !important;
}
.ccm-page .pagination .page-item .page-link:hover,
.ccm-page .pagination .page-item .page-link:focus {
  color: #ff8000 !important;
  background-color: rgba(255, 128, 0, 0.1) !important;
  border-color: #ff8000 !important;
}
.ccm-page .table th {
  background: #ff8000;
  color: #ffffff;
  border: 0;
}
.ccm-page .table td {
  border: 0;
  border-bottom: 1px solid #ededed;
}
.ccm-page .table tbody tr:last-child td {
  border-bottom: 0;
}
.ccm-page .panel-group .accordion-item {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
}
.ccm-page .panel {
  border: 0;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
  background: #ffffff;
}
.ccm-page .panel-heading {
  padding: 0;
  background: #ffffff;
  border-bottom: 1px solid #dddddd;
  border-radius: 0;
}
.ccm-page .panel-body {
  padding: 2rem;
  background: #ffffff;
}
.ccm-page .btn-default {
  background-color: #323e48 !important;
  border-color: #323e48 !important;
  color: #ffffff !important;
}
.ccm-page .btn-default:hover,
.ccm-page .btn-default:focus,
.ccm-page .btn-default:active {
  background-color: #ffffff !important;
  border-color: #323e48 !important;
  color: #323e48 !important;
}
.resp-table {
  width: 100% !important;
  border: 0px;
}
.resp-table thead th {
  background: #ff8000 !important;
  color: #ffffff !important;
  padding: 1rem !important;
  font-weight: 900;
  border: 0 !important;
}
.resp-table tbody tr {
  font-size: 1rem;
}
.resp-table tbody tr:nth-child(even) {
  background: #f8f9fa;
}
.resp-table tbody tr a {
  color: #ff8000;
}
.resp-table tbody td {
  padding: 8px 1rem !important;
  border: 0 !important;
  border-bottom: 1px solid #ededed !important;
}
@keyframes pop {
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes float {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-20px);
  }
  100% {
    transform: translatey(0px);
  }
}
@keyframes scale-up-center {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes slide {
  from {
    background-position: center 0;
  }
  to {
    background-position: center 286px;
  }
}
.resp-table {
  width: 100% !important;
  border: 0px;
}
.resp-table thead th {
  background: #ff8000 !important;
  color: #ffffff !important;
  padding: 1rem !important;
  font-weight: 900;
  border: 0 !important;
}
.resp-table tbody tr {
  font-size: 1rem;
}
.resp-table tbody tr:nth-child(even) {
  background: #f8f9fa;
}
.resp-table tbody tr a {
  color: #ff8000;
}
.resp-table tbody td {
  padding: 8px 1rem !important;
  border: 0 !important;
  border-bottom: 1px solid #ededed !important;
}
@keyframes pop {
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes float {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-20px);
  }
  100% {
    transform: translatey(0px);
  }
}
@keyframes scale-up-center {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes slide {
  from {
    background-position: center 0;
  }
  to {
    background-position: center 286px;
  }
}
/*!
 * Font Awesome Free 5.12.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -.0667em;
}
.fa-xs {
  font-size: .75em;
}
.fa-sm {
  font-size: .875em;
}
.fa-1x {
  font-size: 1em;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-6x {
  font-size: 6em;
}
.fa-7x {
  font-size: 7em;
}
.fa-8x {
  font-size: 8em;
}
.fa-9x {
  font-size: 9em;
}
.fa-10x {
  font-size: 10em;
}
.fa-fw {
  text-align: center;
  width: 1.25em;
}
.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}
.fa-border {
  border-radius: .1em;
  border: solid 0.08em #eeeeee;
  padding: .2em .25em .15em;
}
.fa-pull-left {
  float: left;
}
.fa-pull-right {
  float: right;
}
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: .3em;
}
.fa-spin {
  animation: fa-spin 2s infinite linear;
}
.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}
.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}
.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(-1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  filter: none;
}
.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2em;
}
.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-500px:before {
  content: "\f26e";
}
.fa-accessible-icon:before {
  content: "\f368";
}
.fa-accusoft:before {
  content: "\f369";
}
.fa-acquisitions-incorporated:before {
  content: "\f6af";
}
.fa-ad:before {
  content: "\f641";
}
.fa-address-book:before {
  content: "\f2b9";
}
.fa-address-card:before {
  content: "\f2bb";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-adn:before {
  content: "\f170";
}
.fa-adobe:before {
  content: "\f778";
}
.fa-adversal:before {
  content: "\f36a";
}
.fa-affiliatetheme:before {
  content: "\f36b";
}
.fa-air-freshener:before {
  content: "\f5d0";
}
.fa-airbnb:before {
  content: "\f834";
}
.fa-algolia:before {
  content: "\f36c";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-alipay:before {
  content: "\f642";
}
.fa-allergies:before {
  content: "\f461";
}
.fa-amazon:before {
  content: "\f270";
}
.fa-amazon-pay:before {
  content: "\f42c";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}
.fa-amilia:before {
  content: "\f36d";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-android:before {
  content: "\f17b";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angry:before {
  content: "\f556";
}
.fa-angrycreative:before {
  content: "\f36e";
}
.fa-angular:before {
  content: "\f420";
}
.fa-ankh:before {
  content: "\f644";
}
.fa-app-store:before {
  content: "\f36f";
}
.fa-app-store-ios:before {
  content: "\f370";
}
.fa-apper:before {
  content: "\f371";
}
.fa-apple:before {
  content: "\f179";
}
.fa-apple-alt:before {
  content: "\f5d1";
}
.fa-apple-pay:before {
  content: "\f415";
}
.fa-archive:before {
  content: "\f187";
}
.fa-archway:before {
  content: "\f557";
}
.fa-arrow-alt-circle-down:before {
  content: "\f358";
}
.fa-arrow-alt-circle-left:before {
  content: "\f359";
}
.fa-arrow-alt-circle-right:before {
  content: "\f35a";
}
.fa-arrow-alt-circle-up:before {
  content: "\f35b";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-arrows-alt-h:before {
  content: "\f337";
}
.fa-arrows-alt-v:before {
  content: "\f338";
}
.fa-artstation:before {
  content: "\f77a";
}
.fa-assistive-listening-systems:before {
  content: "\f2a2";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-asymmetrik:before {
  content: "\f372";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-atlas:before {
  content: "\f558";
}
.fa-atlassian:before {
  content: "\f77b";
}
.fa-atom:before {
  content: "\f5d2";
}
.fa-audible:before {
  content: "\f373";
}
.fa-audio-description:before {
  content: "\f29e";
}
.fa-autoprefixer:before {
  content: "\f41c";
}
.fa-avianex:before {
  content: "\f374";
}
.fa-aviato:before {
  content: "\f421";
}
.fa-award:before {
  content: "\f559";
}
.fa-aws:before {
  content: "\f375";
}
.fa-baby:before {
  content: "\f77c";
}
.fa-baby-carriage:before {
  content: "\f77d";
}
.fa-backspace:before {
  content: "\f55a";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-bacon:before {
  content: "\f7e5";
}
.fa-bahai:before {
  content: "\f666";
}
.fa-balance-scale:before {
  content: "\f24e";
}
.fa-balance-scale-left:before {
  content: "\f515";
}
.fa-balance-scale-right:before {
  content: "\f516";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-band-aid:before {
  content: "\f462";
}
.fa-bandcamp:before {
  content: "\f2d5";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-bars:before {
  content: "\f0c9";
}
.fa-baseball-ball:before {
  content: "\f433";
}
.fa-basketball-ball:before {
  content: "\f434";
}
.fa-bath:before {
  content: "\f2cd";
}
.fa-battery-empty:before {
  content: "\f244";
}
.fa-battery-full:before {
  content: "\f240";
}
.fa-battery-half:before {
  content: "\f242";
}
.fa-battery-quarter:before {
  content: "\f243";
}
.fa-battery-three-quarters:before {
  content: "\f241";
}
.fa-battle-net:before {
  content: "\f835";
}
.fa-bed:before {
  content: "\f236";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bezier-curve:before {
  content: "\f55b";
}
.fa-bible:before {
  content: "\f647";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-biking:before {
  content: "\f84a";
}
.fa-bimobject:before {
  content: "\f378";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-biohazard:before {
  content: "\f780";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitcoin:before {
  content: "\f379";
}
.fa-bity:before {
  content: "\f37a";
}
.fa-black-tie:before {
  content: "\f27e";
}
.fa-blackberry:before {
  content: "\f37b";
}
.fa-blender:before {
  content: "\f517";
}
.fa-blender-phone:before {
  content: "\f6b6";
}
.fa-blind:before {
  content: "\f29d";
}
.fa-blog:before {
  content: "\f781";
}
.fa-blogger:before {
  content: "\f37c";
}
.fa-blogger-b:before {
  content: "\f37d";
}
.fa-bluetooth:before {
  content: "\f293";
}
.fa-bluetooth-b:before {
  content: "\f294";
}
.fa-bold:before {
  content: "\f032";
}
.fa-bolt:before {
  content: "\f0e7";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-bone:before {
  content: "\f5d7";
}
.fa-bong:before {
  content: "\f55c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-book-dead:before {
  content: "\f6b7";
}
.fa-book-medical:before {
  content: "\f7e6";
}
.fa-book-open:before {
  content: "\f518";
}
.fa-book-reader:before {
  content: "\f5da";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-bootstrap:before {
  content: "\f836";
}
.fa-border-all:before {
  content: "\f84c";
}
.fa-border-none:before {
  content: "\f850";
}
.fa-border-style:before {
  content: "\f853";
}
.fa-bowling-ball:before {
  content: "\f436";
}
.fa-box:before {
  content: "\f466";
}
.fa-box-open:before {
  content: "\f49e";
}
.fa-boxes:before {
  content: "\f468";
}
.fa-braille:before {
  content: "\f2a1";
}
.fa-brain:before {
  content: "\f5dc";
}
.fa-bread-slice:before {
  content: "\f7ec";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-briefcase-medical:before {
  content: "\f469";
}
.fa-broadcast-tower:before {
  content: "\f519";
}
.fa-broom:before {
  content: "\f51a";
}
.fa-brush:before {
  content: "\f55d";
}
.fa-btc:before {
  content: "\f15a";
}
.fa-buffer:before {
  content: "\f837";
}
.fa-bug:before {
  content: "\f188";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-burn:before {
  content: "\f46a";
}
.fa-buromobelexperte:before {
  content: "\f37f";
}
.fa-bus:before {
  content: "\f207";
}
.fa-bus-alt:before {
  content: "\f55e";
}
.fa-business-time:before {
  content: "\f64a";
}
.fa-buy-n-large:before {
  content: "\f8a6";
}
.fa-buysellads:before {
  content: "\f20d";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-calendar:before {
  content: "\f133";
}
.fa-calendar-alt:before {
  content: "\f073";
}
.fa-calendar-check:before {
  content: "\f274";
}
.fa-calendar-day:before {
  content: "\f783";
}
.fa-calendar-minus:before {
  content: "\f272";
}
.fa-calendar-plus:before {
  content: "\f271";
}
.fa-calendar-times:before {
  content: "\f273";
}
.fa-calendar-week:before {
  content: "\f784";
}
.fa-camera:before {
  content: "\f030";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-campground:before {
  content: "\f6bb";
}
.fa-canadian-maple-leaf:before {
  content: "\f785";
}
.fa-candy-cane:before {
  content: "\f786";
}
.fa-cannabis:before {
  content: "\f55f";
}
.fa-capsules:before {
  content: "\f46b";
}
.fa-car:before {
  content: "\f1b9";
}
.fa-car-alt:before {
  content: "\f5de";
}
.fa-car-battery:before {
  content: "\f5df";
}
.fa-car-crash:before {
  content: "\f5e1";
}
.fa-car-side:before {
  content: "\f5e4";
}
.fa-caravan:before {
  content: "\f8ff";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-caret-square-down:before {
  content: "\f150";
}
.fa-caret-square-left:before {
  content: "\f191";
}
.fa-caret-square-right:before {
  content: "\f152";
}
.fa-caret-square-up:before {
  content: "\f151";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-carrot:before {
  content: "\f787";
}
.fa-cart-arrow-down:before {
  content: "\f218";
}
.fa-cart-plus:before {
  content: "\f217";
}
.fa-cash-register:before {
  content: "\f788";
}
.fa-cat:before {
  content: "\f6be";
}
.fa-cc-amazon-pay:before {
  content: "\f42d";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-apple-pay:before {
  content: "\f416";
}
.fa-cc-diners-club:before {
  content: "\f24c";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-jcb:before {
  content: "\f24b";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-centercode:before {
  content: "\f380";
}
.fa-centos:before {
  content: "\f789";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-chair:before {
  content: "\f6c0";
}
.fa-chalkboard:before {
  content: "\f51b";
}
.fa-chalkboard-teacher:before {
  content: "\f51c";
}
.fa-charging-station:before {
  content: "\f5e7";
}
.fa-chart-area:before {
  content: "\f1fe";
}
.fa-chart-bar:before {
  content: "\f080";
}
.fa-chart-line:before {
  content: "\f201";
}
.fa-chart-pie:before {
  content: "\f200";
}
.fa-check:before {
  content: "\f00c";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-check-double:before {
  content: "\f560";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-cheese:before {
  content: "\f7ef";
}
.fa-chess:before {
  content: "\f439";
}
.fa-chess-bishop:before {
  content: "\f43a";
}
.fa-chess-board:before {
  content: "\f43c";
}
.fa-chess-king:before {
  content: "\f43f";
}
.fa-chess-knight:before {
  content: "\f441";
}
.fa-chess-pawn:before {
  content: "\f443";
}
.fa-chess-queen:before {
  content: "\f445";
}
.fa-chess-rook:before {
  content: "\f447";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-chrome:before {
  content: "\f268";
}
.fa-chromecast:before {
  content: "\f838";
}
.fa-church:before {
  content: "\f51d";
}
.fa-circle:before {
  content: "\f111";
}
.fa-circle-notch:before {
  content: "\f1ce";
}
.fa-city:before {
  content: "\f64f";
}
.fa-clinic-medical:before {
  content: "\f7f2";
}
.fa-clipboard:before {
  content: "\f328";
}
.fa-clipboard-check:before {
  content: "\f46c";
}
.fa-clipboard-list:before {
  content: "\f46d";
}
.fa-clock:before {
  content: "\f017";
}
.fa-clone:before {
  content: "\f24d";
}
.fa-closed-captioning:before {
  content: "\f20a";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-cloud-download-alt:before {
  content: "\f381";
}
.fa-cloud-meatball:before {
  content: "\f73b";
}
.fa-cloud-moon:before {
  content: "\f6c3";
}
.fa-cloud-moon-rain:before {
  content: "\f73c";
}
.fa-cloud-rain:before {
  content: "\f73d";
}
.fa-cloud-showers-heavy:before {
  content: "\f740";
}
.fa-cloud-sun:before {
  content: "\f6c4";
}
.fa-cloud-sun-rain:before {
  content: "\f743";
}
.fa-cloud-upload-alt:before {
  content: "\f382";
}
.fa-cloudscale:before {
  content: "\f383";
}
.fa-cloudsmith:before {
  content: "\f384";
}
.fa-cloudversify:before {
  content: "\f385";
}
.fa-cocktail:before {
  content: "\f561";
}
.fa-code:before {
  content: "\f121";
}
.fa-code-branch:before {
  content: "\f126";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-codiepie:before {
  content: "\f284";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cog:before {
  content: "\f013";
}
.fa-cogs:before {
  content: "\f085";
}
.fa-coins:before {
  content: "\f51e";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-comment:before {
  content: "\f075";
}
.fa-comment-alt:before {
  content: "\f27a";
}
.fa-comment-dollar:before {
  content: "\f651";
}
.fa-comment-dots:before {
  content: "\f4ad";
}
.fa-comment-medical:before {
  content: "\f7f5";
}
.fa-comment-slash:before {
  content: "\f4b3";
}
.fa-comments:before {
  content: "\f086";
}
.fa-comments-dollar:before {
  content: "\f653";
}
.fa-compact-disc:before {
  content: "\f51f";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-compress:before {
  content: "\f066";
}
.fa-compress-alt:before {
  content: "\f422";
}
.fa-compress-arrows-alt:before {
  content: "\f78c";
}
.fa-concierge-bell:before {
  content: "\f562";
}
.fa-confluence:before {
  content: "\f78d";
}
.fa-connectdevelop:before {
  content: "\f20e";
}
.fa-contao:before {
  content: "\f26d";
}
.fa-cookie:before {
  content: "\f563";
}
.fa-cookie-bite:before {
  content: "\f564";
}
.fa-copy:before {
  content: "\f0c5";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-cotton-bureau:before {
  content: "\f89e";
}
.fa-couch:before {
  content: "\f4b8";
}
.fa-cpanel:before {
  content: "\f388";
}
.fa-creative-commons:before {
  content: "\f25e";
}
.fa-creative-commons-by:before {
  content: "\f4e7";
}
.fa-creative-commons-nc:before {
  content: "\f4e8";
}
.fa-creative-commons-nc-eu:before {
  content: "\f4e9";
}
.fa-creative-commons-nc-jp:before {
  content: "\f4ea";
}
.fa-creative-commons-nd:before {
  content: "\f4eb";
}
.fa-creative-commons-pd:before {
  content: "\f4ec";
}
.fa-creative-commons-pd-alt:before {
  content: "\f4ed";
}
.fa-creative-commons-remix:before {
  content: "\f4ee";
}
.fa-creative-commons-sa:before {
  content: "\f4ef";
}
.fa-creative-commons-sampling:before {
  content: "\f4f0";
}
.fa-creative-commons-sampling-plus:before {
  content: "\f4f1";
}
.fa-creative-commons-share:before {
  content: "\f4f2";
}
.fa-creative-commons-zero:before {
  content: "\f4f3";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-critical-role:before {
  content: "\f6c9";
}
.fa-crop:before {
  content: "\f125";
}
.fa-crop-alt:before {
  content: "\f565";
}
.fa-cross:before {
  content: "\f654";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-crow:before {
  content: "\f520";
}
.fa-crown:before {
  content: "\f521";
}
.fa-crutch:before {
  content: "\f7f7";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-css3-alt:before {
  content: "\f38b";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-cut:before {
  content: "\f0c4";
}
.fa-cuttlefish:before {
  content: "\f38c";
}
.fa-d-and-d:before {
  content: "\f38d";
}
.fa-d-and-d-beyond:before {
  content: "\f6ca";
}
.fa-dashcube:before {
  content: "\f210";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-deaf:before {
  content: "\f2a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-democrat:before {
  content: "\f747";
}
.fa-deploydog:before {
  content: "\f38e";
}
.fa-deskpro:before {
  content: "\f38f";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-dev:before {
  content: "\f6cc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-dharmachakra:before {
  content: "\f655";
}
.fa-dhl:before {
  content: "\f790";
}
.fa-diagnoses:before {
  content: "\f470";
}
.fa-diaspora:before {
  content: "\f791";
}
.fa-dice:before {
  content: "\f522";
}
.fa-dice-d20:before {
  content: "\f6cf";
}
.fa-dice-d6:before {
  content: "\f6d1";
}
.fa-dice-five:before {
  content: "\f523";
}
.fa-dice-four:before {
  content: "\f524";
}
.fa-dice-one:before {
  content: "\f525";
}
.fa-dice-six:before {
  content: "\f526";
}
.fa-dice-three:before {
  content: "\f527";
}
.fa-dice-two:before {
  content: "\f528";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-digital-ocean:before {
  content: "\f391";
}
.fa-digital-tachograph:before {
  content: "\f566";
}
.fa-directions:before {
  content: "\f5eb";
}
.fa-discord:before {
  content: "\f392";
}
.fa-discourse:before {
  content: "\f393";
}
.fa-divide:before {
  content: "\f529";
}
.fa-dizzy:before {
  content: "\f567";
}
.fa-dna:before {
  content: "\f471";
}
.fa-dochub:before {
  content: "\f394";
}
.fa-docker:before {
  content: "\f395";
}
.fa-dog:before {
  content: "\f6d3";
}
.fa-dollar-sign:before {
  content: "\f155";
}
.fa-dolly:before {
  content: "\f472";
}
.fa-dolly-flatbed:before {
  content: "\f474";
}
.fa-donate:before {
  content: "\f4b9";
}
.fa-door-closed:before {
  content: "\f52a";
}
.fa-door-open:before {
  content: "\f52b";
}
.fa-dot-circle:before {
  content: "\f192";
}
.fa-dove:before {
  content: "\f4ba";
}
.fa-download:before {
  content: "\f019";
}
.fa-draft2digital:before {
  content: "\f396";
}
.fa-drafting-compass:before {
  content: "\f568";
}
.fa-dragon:before {
  content: "\f6d5";
}
.fa-draw-polygon:before {
  content: "\f5ee";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-dribbble-square:before {
  content: "\f397";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-drum:before {
  content: "\f569";
}
.fa-drum-steelpan:before {
  content: "\f56a";
}
.fa-drumstick-bite:before {
  content: "\f6d7";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-dumbbell:before {
  content: "\f44b";
}
.fa-dumpster:before {
  content: "\f793";
}
.fa-dumpster-fire:before {
  content: "\f794";
}
.fa-dungeon:before {
  content: "\f6d9";
}
.fa-dyalog:before {
  content: "\f399";
}
.fa-earlybirds:before {
  content: "\f39a";
}
.fa-ebay:before {
  content: "\f4f4";
}
.fa-edge:before {
  content: "\f282";
}
.fa-edit:before {
  content: "\f044";
}
.fa-egg:before {
  content: "\f7fb";
}
.fa-eject:before {
  content: "\f052";
}
.fa-elementor:before {
  content: "\f430";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-ello:before {
  content: "\f5f1";
}
.fa-ember:before {
  content: "\f423";
}
.fa-empire:before {
  content: "\f1d1";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-envelope-open:before {
  content: "\f2b6";
}
.fa-envelope-open-text:before {
  content: "\f658";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-envira:before {
  content: "\f299";
}
.fa-equals:before {
  content: "\f52c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-erlang:before {
  content: "\f39d";
}
.fa-ethereum:before {
  content: "\f42e";
}
.fa-ethernet:before {
  content: "\f796";
}
.fa-etsy:before {
  content: "\f2d7";
}
.fa-euro-sign:before {
  content: "\f153";
}
.fa-evernote:before {
  content: "\f839";
}
.fa-exchange-alt:before {
  content: "\f362";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-expand:before {
  content: "\f065";
}
.fa-expand-alt:before {
  content: "\f424";
}
.fa-expand-arrows-alt:before {
  content: "\f31e";
}
.fa-expeditedssl:before {
  content: "\f23e";
}
.fa-external-link-alt:before {
  content: "\f35d";
}
.fa-external-link-square-alt:before {
  content: "\f360";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-dropper:before {
  content: "\f1fb";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-facebook-f:before {
  content: "\f39e";
}
.fa-facebook-messenger:before {
  content: "\f39f";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-fan:before {
  content: "\f863";
}
.fa-fantasy-flight-games:before {
  content: "\f6dc";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-feather:before {
  content: "\f52d";
}
.fa-feather-alt:before {
  content: "\f56b";
}
.fa-fedex:before {
  content: "\f797";
}
.fa-fedora:before {
  content: "\f798";
}
.fa-female:before {
  content: "\f182";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-figma:before {
  content: "\f799";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-alt:before {
  content: "\f15c";
}
.fa-file-archive:before {
  content: "\f1c6";
}
.fa-file-audio:before {
  content: "\f1c7";
}
.fa-file-code:before {
  content: "\f1c9";
}
.fa-file-contract:before {
  content: "\f56c";
}
.fa-file-csv:before {
  content: "\f6dd";
}
.fa-file-download:before {
  content: "\f56d";
}
.fa-file-excel:before {
  content: "\f1c3";
}
.fa-file-export:before {
  content: "\f56e";
}
.fa-file-image:before {
  content: "\f1c5";
}
.fa-file-import:before {
  content: "\f56f";
}
.fa-file-invoice:before {
  content: "\f570";
}
.fa-file-invoice-dollar:before {
  content: "\f571";
}
.fa-file-medical:before {
  content: "\f477";
}
.fa-file-medical-alt:before {
  content: "\f478";
}
.fa-file-pdf:before {
  content: "\f1c1";
}
.fa-file-powerpoint:before {
  content: "\f1c4";
}
.fa-file-prescription:before {
  content: "\f572";
}
.fa-file-signature:before {
  content: "\f573";
}
.fa-file-upload:before {
  content: "\f574";
}
.fa-file-video:before {
  content: "\f1c8";
}
.fa-file-word:before {
  content: "\f1c2";
}
.fa-fill:before {
  content: "\f575";
}
.fa-fill-drip:before {
  content: "\f576";
}
.fa-film:before {
  content: "\f008";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-fingerprint:before {
  content: "\f577";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-fire-alt:before {
  content: "\f7e4";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-firefox:before {
  content: "\f269";
}
.fa-firefox-browser:before {
  content: "\f907";
}
.fa-first-aid:before {
  content: "\f479";
}
.fa-first-order:before {
  content: "\f2b0";
}
.fa-first-order-alt:before {
  content: "\f50a";
}
.fa-firstdraft:before {
  content: "\f3a1";
}
.fa-fish:before {
  content: "\f578";
}
.fa-fist-raised:before {
  content: "\f6de";
}
.fa-flag:before {
  content: "\f024";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-flag-usa:before {
  content: "\f74d";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-flipboard:before {
  content: "\f44d";
}
.fa-flushed:before {
  content: "\f579";
}
.fa-fly:before {
  content: "\f417";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-minus:before {
  content: "\f65d";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-folder-plus:before {
  content: "\f65e";
}
.fa-font:before {
  content: "\f031";
}
.fa-font-awesome:before {
  content: "\f2b4";
}
.fa-font-awesome-alt:before {
  content: "\f35c";
}
.fa-font-awesome-flag:before {
  content: "\f425";
}
.fa-font-awesome-logo-full:before {
  content: "\f4e6";
}
.fa-fonticons:before {
  content: "\f280";
}
.fa-fonticons-fi:before {
  content: "\f3a2";
}
.fa-football-ball:before {
  content: "\f44e";
}
.fa-fort-awesome:before {
  content: "\f286";
}
.fa-fort-awesome-alt:before {
  content: "\f3a3";
}
.fa-forumbee:before {
  content: "\f211";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-free-code-camp:before {
  content: "\f2c5";
}
.fa-freebsd:before {
  content: "\f3a4";
}
.fa-frog:before {
  content: "\f52e";
}
.fa-frown:before {
  content: "\f119";
}
.fa-frown-open:before {
  content: "\f57a";
}
.fa-fulcrum:before {
  content: "\f50b";
}
.fa-funnel-dollar:before {
  content: "\f662";
}
.fa-futbol:before {
  content: "\f1e3";
}
.fa-galactic-republic:before {
  content: "\f50c";
}
.fa-galactic-senate:before {
  content: "\f50d";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-gas-pump:before {
  content: "\f52f";
}
.fa-gavel:before {
  content: "\f0e3";
}
.fa-gem:before {
  content: "\f3a5";
}
.fa-genderless:before {
  content: "\f22d";
}
.fa-get-pocket:before {
  content: "\f265";
}
.fa-gg:before {
  content: "\f260";
}
.fa-gg-circle:before {
  content: "\f261";
}
.fa-ghost:before {
  content: "\f6e2";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-gifts:before {
  content: "\f79c";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-git-alt:before {
  content: "\f841";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-github:before {
  content: "\f09b";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-gitkraken:before {
  content: "\f3a6";
}
.fa-gitlab:before {
  content: "\f296";
}
.fa-gitter:before {
  content: "\f426";
}
.fa-glass-cheers:before {
  content: "\f79f";
}
.fa-glass-martini:before {
  content: "\f000";
}
.fa-glass-martini-alt:before {
  content: "\f57b";
}
.fa-glass-whiskey:before {
  content: "\f7a0";
}
.fa-glasses:before {
  content: "\f530";
}
.fa-glide:before {
  content: "\f2a5";
}
.fa-glide-g:before {
  content: "\f2a6";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-globe-africa:before {
  content: "\f57c";
}
.fa-globe-americas:before {
  content: "\f57d";
}
.fa-globe-asia:before {
  content: "\f57e";
}
.fa-globe-europe:before {
  content: "\f7a2";
}
.fa-gofore:before {
  content: "\f3a7";
}
.fa-golf-ball:before {
  content: "\f450";
}
.fa-goodreads:before {
  content: "\f3a8";
}
.fa-goodreads-g:before {
  content: "\f3a9";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-google-drive:before {
  content: "\f3aa";
}
.fa-google-play:before {
  content: "\f3ab";
}
.fa-google-plus:before {
  content: "\f2b3";
}
.fa-google-plus-g:before {
  content: "\f0d5";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-gopuram:before {
  content: "\f664";
}
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-gratipay:before {
  content: "\f184";
}
.fa-grav:before {
  content: "\f2d6";
}
.fa-greater-than:before {
  content: "\f531";
}
.fa-greater-than-equal:before {
  content: "\f532";
}
.fa-grimace:before {
  content: "\f57f";
}
.fa-grin:before {
  content: "\f580";
}
.fa-grin-alt:before {
  content: "\f581";
}
.fa-grin-beam:before {
  content: "\f582";
}
.fa-grin-beam-sweat:before {
  content: "\f583";
}
.fa-grin-hearts:before {
  content: "\f584";
}
.fa-grin-squint:before {
  content: "\f585";
}
.fa-grin-squint-tears:before {
  content: "\f586";
}
.fa-grin-stars:before {
  content: "\f587";
}
.fa-grin-tears:before {
  content: "\f588";
}
.fa-grin-tongue:before {
  content: "\f589";
}
.fa-grin-tongue-squint:before {
  content: "\f58a";
}
.fa-grin-tongue-wink:before {
  content: "\f58b";
}
.fa-grin-wink:before {
  content: "\f58c";
}
.fa-grip-horizontal:before {
  content: "\f58d";
}
.fa-grip-lines:before {
  content: "\f7a4";
}
.fa-grip-lines-vertical:before {
  content: "\f7a5";
}
.fa-grip-vertical:before {
  content: "\f58e";
}
.fa-gripfire:before {
  content: "\f3ac";
}
.fa-grunt:before {
  content: "\f3ad";
}
.fa-guitar:before {
  content: "\f7a6";
}
.fa-gulp:before {
  content: "\f3ae";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-hacker-news-square:before {
  content: "\f3af";
}
.fa-hackerrank:before {
  content: "\f5f7";
}
.fa-hamburger:before {
  content: "\f805";
}
.fa-hammer:before {
  content: "\f6e3";
}
.fa-hamsa:before {
  content: "\f665";
}
.fa-hand-holding:before {
  content: "\f4bd";
}
.fa-hand-holding-heart:before {
  content: "\f4be";
}
.fa-hand-holding-usd:before {
  content: "\f4c0";
}
.fa-hand-lizard:before {
  content: "\f258";
}
.fa-hand-middle-finger:before {
  content: "\f806";
}
.fa-hand-paper:before {
  content: "\f256";
}
.fa-hand-peace:before {
  content: "\f25b";
}
.fa-hand-point-down:before {
  content: "\f0a7";
}
.fa-hand-point-left:before {
  content: "\f0a5";
}
.fa-hand-point-right:before {
  content: "\f0a4";
}
.fa-hand-point-up:before {
  content: "\f0a6";
}
.fa-hand-pointer:before {
  content: "\f25a";
}
.fa-hand-rock:before {
  content: "\f255";
}
.fa-hand-scissors:before {
  content: "\f257";
}
.fa-hand-spock:before {
  content: "\f259";
}
.fa-hands:before {
  content: "\f4c2";
}
.fa-hands-helping:before {
  content: "\f4c4";
}
.fa-handshake:before {
  content: "\f2b5";
}
.fa-hanukiah:before {
  content: "\f6e6";
}
.fa-hard-hat:before {
  content: "\f807";
}
.fa-hashtag:before {
  content: "\f292";
}
.fa-hat-cowboy:before {
  content: "\f8c0";
}
.fa-hat-cowboy-side:before {
  content: "\f8c1";
}
.fa-hat-wizard:before {
  content: "\f6e8";
}
.fa-hdd:before {
  content: "\f0a0";
}
.fa-heading:before {
  content: "\f1dc";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-headphones-alt:before {
  content: "\f58f";
}
.fa-headset:before {
  content: "\f590";
}
.fa-heart:before {
  content: "\f004";
}
.fa-heart-broken:before {
  content: "\f7a9";
}
.fa-heartbeat:before {
  content: "\f21e";
}
.fa-helicopter:before {
  content: "\f533";
}
.fa-highlighter:before {
  content: "\f591";
}
.fa-hiking:before {
  content: "\f6ec";
}
.fa-hippo:before {
  content: "\f6ed";
}
.fa-hips:before {
  content: "\f452";
}
.fa-hire-a-helper:before {
  content: "\f3b0";
}
.fa-history:before {
  content: "\f1da";
}
.fa-hockey-puck:before {
  content: "\f453";
}
.fa-holly-berry:before {
  content: "\f7aa";
}
.fa-home:before {
  content: "\f015";
}
.fa-hooli:before {
  content: "\f427";
}
.fa-hornbill:before {
  content: "\f592";
}
.fa-horse:before {
  content: "\f6f0";
}
.fa-horse-head:before {
  content: "\f7ab";
}
.fa-hospital:before {
  content: "\f0f8";
}
.fa-hospital-alt:before {
  content: "\f47d";
}
.fa-hospital-symbol:before {
  content: "\f47e";
}
.fa-hot-tub:before {
  content: "\f593";
}
.fa-hotdog:before {
  content: "\f80f";
}
.fa-hotel:before {
  content: "\f594";
}
.fa-hotjar:before {
  content: "\f3b1";
}
.fa-hourglass:before {
  content: "\f254";
}
.fa-hourglass-end:before {
  content: "\f253";
}
.fa-hourglass-half:before {
  content: "\f252";
}
.fa-hourglass-start:before {
  content: "\f251";
}
.fa-house-damage:before {
  content: "\f6f1";
}
.fa-houzz:before {
  content: "\f27c";
}
.fa-hryvnia:before {
  content: "\f6f2";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-hubspot:before {
  content: "\f3b2";
}
.fa-i-cursor:before {
  content: "\f246";
}
.fa-ice-cream:before {
  content: "\f810";
}
.fa-icicles:before {
  content: "\f7ad";
}
.fa-icons:before {
  content: "\f86d";
}
.fa-id-badge:before {
  content: "\f2c1";
}
.fa-id-card:before {
  content: "\f2c2";
}
.fa-id-card-alt:before {
  content: "\f47f";
}
.fa-ideal:before {
  content: "\f913";
}
.fa-igloo:before {
  content: "\f7ae";
}
.fa-image:before {
  content: "\f03e";
}
.fa-images:before {
  content: "\f302";
}
.fa-imdb:before {
  content: "\f2d8";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-industry:before {
  content: "\f275";
}
.fa-infinity:before {
  content: "\f534";
}
.fa-info:before {
  content: "\f129";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-intercom:before {
  content: "\f7af";
}
.fa-internet-explorer:before {
  content: "\f26b";
}
.fa-invision:before {
  content: "\f7b0";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-italic:before {
  content: "\f033";
}
.fa-itch-io:before {
  content: "\f83a";
}
.fa-itunes:before {
  content: "\f3b4";
}
.fa-itunes-note:before {
  content: "\f3b5";
}
.fa-java:before {
  content: "\f4e4";
}
.fa-jedi:before {
  content: "\f669";
}
.fa-jedi-order:before {
  content: "\f50e";
}
.fa-jenkins:before {
  content: "\f3b6";
}
.fa-jira:before {
  content: "\f7b1";
}
.fa-joget:before {
  content: "\f3b7";
}
.fa-joint:before {
  content: "\f595";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-journal-whills:before {
  content: "\f66a";
}
.fa-js:before {
  content: "\f3b8";
}
.fa-js-square:before {
  content: "\f3b9";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-kaaba:before {
  content: "\f66b";
}
.fa-kaggle:before {
  content: "\f5fa";
}
.fa-key:before {
  content: "\f084";
}
.fa-keybase:before {
  content: "\f4f5";
}
.fa-keyboard:before {
  content: "\f11c";
}
.fa-keycdn:before {
  content: "\f3ba";
}
.fa-khanda:before {
  content: "\f66d";
}
.fa-kickstarter:before {
  content: "\f3bb";
}
.fa-kickstarter-k:before {
  content: "\f3bc";
}
.fa-kiss:before {
  content: "\f596";
}
.fa-kiss-beam:before {
  content: "\f597";
}
.fa-kiss-wink-heart:before {
  content: "\f598";
}
.fa-kiwi-bird:before {
  content: "\f535";
}
.fa-korvue:before {
  content: "\f42f";
}
.fa-landmark:before {
  content: "\f66f";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-laptop-code:before {
  content: "\f5fc";
}
.fa-laptop-medical:before {
  content: "\f812";
}
.fa-laravel:before {
  content: "\f3bd";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-laugh:before {
  content: "\f599";
}
.fa-laugh-beam:before {
  content: "\f59a";
}
.fa-laugh-squint:before {
  content: "\f59b";
}
.fa-laugh-wink:before {
  content: "\f59c";
}
.fa-layer-group:before {
  content: "\f5fd";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-leanpub:before {
  content: "\f212";
}
.fa-lemon:before {
  content: "\f094";
}
.fa-less:before {
  content: "\f41d";
}
.fa-less-than:before {
  content: "\f536";
}
.fa-less-than-equal:before {
  content: "\f537";
}
.fa-level-down-alt:before {
  content: "\f3be";
}
.fa-level-up-alt:before {
  content: "\f3bf";
}
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-lightbulb:before {
  content: "\f0eb";
}
.fa-line:before {
  content: "\f3c0";
}
.fa-link:before {
  content: "\f0c1";
}
.fa-linkedin:before {
  content: "\f08c";
}
.fa-linkedin-in:before {
  content: "\f0e1";
}
.fa-linode:before {
  content: "\f2b8";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-lira-sign:before {
  content: "\f195";
}
.fa-list:before {
  content: "\f03a";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-lock:before {
  content: "\f023";
}
.fa-lock-open:before {
  content: "\f3c1";
}
.fa-long-arrow-alt-down:before {
  content: "\f309";
}
.fa-long-arrow-alt-left:before {
  content: "\f30a";
}
.fa-long-arrow-alt-right:before {
  content: "\f30b";
}
.fa-long-arrow-alt-up:before {
  content: "\f30c";
}
.fa-low-vision:before {
  content: "\f2a8";
}
.fa-luggage-cart:before {
  content: "\f59d";
}
.fa-lyft:before {
  content: "\f3c3";
}
.fa-magento:before {
  content: "\f3c4";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-mail-bulk:before {
  content: "\f674";
}
.fa-mailchimp:before {
  content: "\f59e";
}
.fa-male:before {
  content: "\f183";
}
.fa-mandalorian:before {
  content: "\f50f";
}
.fa-map:before {
  content: "\f279";
}
.fa-map-marked:before {
  content: "\f59f";
}
.fa-map-marked-alt:before {
  content: "\f5a0";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-map-marker-alt:before {
  content: "\f3c5";
}
.fa-map-pin:before {
  content: "\f276";
}
.fa-map-signs:before {
  content: "\f277";
}
.fa-markdown:before {
  content: "\f60f";
}
.fa-marker:before {
  content: "\f5a1";
}
.fa-mars:before {
  content: "\f222";
}
.fa-mars-double:before {
  content: "\f227";
}
.fa-mars-stroke:before {
  content: "\f229";
}
.fa-mars-stroke-h:before {
  content: "\f22b";
}
.fa-mars-stroke-v:before {
  content: "\f22a";
}
.fa-mask:before {
  content: "\f6fa";
}
.fa-mastodon:before {
  content: "\f4f6";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-mdb:before {
  content: "\f8ca";
}
.fa-medal:before {
  content: "\f5a2";
}
.fa-medapps:before {
  content: "\f3c6";
}
.fa-medium:before {
  content: "\f23a";
}
.fa-medium-m:before {
  content: "\f3c7";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-medrt:before {
  content: "\f3c8";
}
.fa-meetup:before {
  content: "\f2e0";
}
.fa-megaport:before {
  content: "\f5a3";
}
.fa-meh:before {
  content: "\f11a";
}
.fa-meh-blank:before {
  content: "\f5a4";
}
.fa-meh-rolling-eyes:before {
  content: "\f5a5";
}
.fa-memory:before {
  content: "\f538";
}
.fa-mendeley:before {
  content: "\f7b3";
}
.fa-menorah:before {
  content: "\f676";
}
.fa-mercury:before {
  content: "\f223";
}
.fa-meteor:before {
  content: "\f753";
}
.fa-microblog:before {
  content: "\f91a";
}
.fa-microchip:before {
  content: "\f2db";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-alt:before {
  content: "\f3c9";
}
.fa-microphone-alt-slash:before {
  content: "\f539";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-microscope:before {
  content: "\f610";
}
.fa-microsoft:before {
  content: "\f3ca";
}
.fa-minus:before {
  content: "\f068";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-mitten:before {
  content: "\f7b5";
}
.fa-mix:before {
  content: "\f3cb";
}
.fa-mixcloud:before {
  content: "\f289";
}
.fa-mizuni:before {
  content: "\f3cc";
}
.fa-mobile:before {
  content: "\f10b";
}
.fa-mobile-alt:before {
  content: "\f3cd";
}
.fa-modx:before {
  content: "\f285";
}
.fa-monero:before {
  content: "\f3d0";
}
.fa-money-bill:before {
  content: "\f0d6";
}
.fa-money-bill-alt:before {
  content: "\f3d1";
}
.fa-money-bill-wave:before {
  content: "\f53a";
}
.fa-money-bill-wave-alt:before {
  content: "\f53b";
}
.fa-money-check:before {
  content: "\f53c";
}
.fa-money-check-alt:before {
  content: "\f53d";
}
.fa-monument:before {
  content: "\f5a6";
}
.fa-moon:before {
  content: "\f186";
}
.fa-mortar-pestle:before {
  content: "\f5a7";
}
.fa-mosque:before {
  content: "\f678";
}
.fa-motorcycle:before {
  content: "\f21c";
}
.fa-mountain:before {
  content: "\f6fc";
}
.fa-mouse:before {
  content: "\f8cc";
}
.fa-mouse-pointer:before {
  content: "\f245";
}
.fa-mug-hot:before {
  content: "\f7b6";
}
.fa-music:before {
  content: "\f001";
}
.fa-napster:before {
  content: "\f3d2";
}
.fa-neos:before {
  content: "\f612";
}
.fa-network-wired:before {
  content: "\f6ff";
}
.fa-neuter:before {
  content: "\f22c";
}
.fa-newspaper:before {
  content: "\f1ea";
}
.fa-nimblr:before {
  content: "\f5a8";
}
.fa-node:before {
  content: "\f419";
}
.fa-node-js:before {
  content: "\f3d3";
}
.fa-not-equal:before {
  content: "\f53e";
}
.fa-notes-medical:before {
  content: "\f481";
}
.fa-npm:before {
  content: "\f3d4";
}
.fa-ns8:before {
  content: "\f3d5";
}
.fa-nutritionix:before {
  content: "\f3d6";
}
.fa-object-group:before {
  content: "\f247";
}
.fa-object-ungroup:before {
  content: "\f248";
}
.fa-odnoklassniki:before {
  content: "\f263";
}
.fa-odnoklassniki-square:before {
  content: "\f264";
}
.fa-oil-can:before {
  content: "\f613";
}
.fa-old-republic:before {
  content: "\f510";
}
.fa-om:before {
  content: "\f679";
}
.fa-opencart:before {
  content: "\f23d";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-opera:before {
  content: "\f26a";
}
.fa-optin-monster:before {
  content: "\f23c";
}
.fa-orcid:before {
  content: "\f8d2";
}
.fa-osi:before {
  content: "\f41a";
}
.fa-otter:before {
  content: "\f700";
}
.fa-outdent:before {
  content: "\f03b";
}
.fa-page4:before {
  content: "\f3d7";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-pager:before {
  content: "\f815";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-paint-roller:before {
  content: "\f5aa";
}
.fa-palette:before {
  content: "\f53f";
}
.fa-palfed:before {
  content: "\f3d8";
}
.fa-pallet:before {
  content: "\f482";
}
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-parachute-box:before {
  content: "\f4cd";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-parking:before {
  content: "\f540";
}
.fa-passport:before {
  content: "\f5ab";
}
.fa-pastafarianism:before {
  content: "\f67b";
}
.fa-paste:before {
  content: "\f0ea";
}
.fa-patreon:before {
  content: "\f3d9";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-pause-circle:before {
  content: "\f28b";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-peace:before {
  content: "\f67c";
}
.fa-pen:before {
  content: "\f304";
}
.fa-pen-alt:before {
  content: "\f305";
}
.fa-pen-fancy:before {
  content: "\f5ac";
}
.fa-pen-nib:before {
  content: "\f5ad";
}
.fa-pen-square:before {
  content: "\f14b";
}
.fa-pencil-alt:before {
  content: "\f303";
}
.fa-pencil-ruler:before {
  content: "\f5ae";
}
.fa-penny-arcade:before {
  content: "\f704";
}
.fa-people-carry:before {
  content: "\f4ce";
}
.fa-pepper-hot:before {
  content: "\f816";
}
.fa-percent:before {
  content: "\f295";
}
.fa-percentage:before {
  content: "\f541";
}
.fa-periscope:before {
  content: "\f3da";
}
.fa-person-booth:before {
  content: "\f756";
}
.fa-phabricator:before {
  content: "\f3db";
}
.fa-phoenix-framework:before {
  content: "\f3dc";
}
.fa-phoenix-squadron:before {
  content: "\f511";
}
.fa-phone:before {
  content: "\f095";
}
.fa-phone-alt:before {
  content: "\f879";
}
.fa-phone-slash:before {
  content: "\f3dd";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-phone-square-alt:before {
  content: "\f87b";
}
.fa-phone-volume:before {
  content: "\f2a0";
}
.fa-photo-video:before {
  content: "\f87c";
}
.fa-php:before {
  content: "\f457";
}
.fa-pied-piper:before {
  content: "\f2ae";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-pied-piper-hat:before {
  content: "\f4e5";
}
.fa-pied-piper-pp:before {
  content: "\f1a7";
}
.fa-pied-piper-square:before {
  content: "\f91e";
}
.fa-piggy-bank:before {
  content: "\f4d3";
}
.fa-pills:before {
  content: "\f484";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-p:before {
  content: "\f231";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-pizza-slice:before {
  content: "\f818";
}
.fa-place-of-worship:before {
  content: "\f67f";
}
.fa-plane:before {
  content: "\f072";
}
.fa-plane-arrival:before {
  content: "\f5af";
}
.fa-plane-departure:before {
  content: "\f5b0";
}
.fa-play:before {
  content: "\f04b";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-playstation:before {
  content: "\f3df";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-plus:before {
  content: "\f067";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-podcast:before {
  content: "\f2ce";
}
.fa-poll:before {
  content: "\f681";
}
.fa-poll-h:before {
  content: "\f682";
}
.fa-poo:before {
  content: "\f2fe";
}
.fa-poo-storm:before {
  content: "\f75a";
}
.fa-poop:before {
  content: "\f619";
}
.fa-portrait:before {
  content: "\f3e0";
}
.fa-pound-sign:before {
  content: "\f154";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-pray:before {
  content: "\f683";
}
.fa-praying-hands:before {
  content: "\f684";
}
.fa-prescription:before {
  content: "\f5b1";
}
.fa-prescription-bottle:before {
  content: "\f485";
}
.fa-prescription-bottle-alt:before {
  content: "\f486";
}
.fa-print:before {
  content: "\f02f";
}
.fa-procedures:before {
  content: "\f487";
}
.fa-product-hunt:before {
  content: "\f288";
}
.fa-project-diagram:before {
  content: "\f542";
}
.fa-pushed:before {
  content: "\f3e1";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-python:before {
  content: "\f3e2";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-question:before {
  content: "\f128";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-quidditch:before {
  content: "\f458";
}
.fa-quinscape:before {
  content: "\f459";
}
.fa-quora:before {
  content: "\f2c4";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-quran:before {
  content: "\f687";
}
.fa-r-project:before {
  content: "\f4f7";
}
.fa-radiation:before {
  content: "\f7b9";
}
.fa-radiation-alt:before {
  content: "\f7ba";
}
.fa-rainbow:before {
  content: "\f75b";
}
.fa-random:before {
  content: "\f074";
}
.fa-raspberry-pi:before {
  content: "\f7bb";
}
.fa-ravelry:before {
  content: "\f2d9";
}
.fa-react:before {
  content: "\f41b";
}
.fa-reacteurope:before {
  content: "\f75d";
}
.fa-readme:before {
  content: "\f4d5";
}
.fa-rebel:before {
  content: "\f1d0";
}
.fa-receipt:before {
  content: "\f543";
}
.fa-record-vinyl:before {
  content: "\f8d9";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-red-river:before {
  content: "\f3e3";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-alien:before {
  content: "\f281";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-redhat:before {
  content: "\f7bc";
}
.fa-redo:before {
  content: "\f01e";
}
.fa-redo-alt:before {
  content: "\f2f9";
}
.fa-registered:before {
  content: "\f25d";
}
.fa-remove-format:before {
  content: "\f87d";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-reply:before {
  content: "\f3e5";
}
.fa-reply-all:before {
  content: "\f122";
}
.fa-replyd:before {
  content: "\f3e6";
}
.fa-republican:before {
  content: "\f75e";
}
.fa-researchgate:before {
  content: "\f4f8";
}
.fa-resolving:before {
  content: "\f3e7";
}
.fa-restroom:before {
  content: "\f7bd";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-rev:before {
  content: "\f5b2";
}
.fa-ribbon:before {
  content: "\f4d6";
}
.fa-ring:before {
  content: "\f70b";
}
.fa-road:before {
  content: "\f018";
}
.fa-robot:before {
  content: "\f544";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-rocketchat:before {
  content: "\f3e8";
}
.fa-rockrms:before {
  content: "\f3e9";
}
.fa-route:before {
  content: "\f4d7";
}
.fa-rss:before {
  content: "\f09e";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-ruble-sign:before {
  content: "\f158";
}
.fa-ruler:before {
  content: "\f545";
}
.fa-ruler-combined:before {
  content: "\f546";
}
.fa-ruler-horizontal:before {
  content: "\f547";
}
.fa-ruler-vertical:before {
  content: "\f548";
}
.fa-running:before {
  content: "\f70c";
}
.fa-rupee-sign:before {
  content: "\f156";
}
.fa-sad-cry:before {
  content: "\f5b3";
}
.fa-sad-tear:before {
  content: "\f5b4";
}
.fa-safari:before {
  content: "\f267";
}
.fa-salesforce:before {
  content: "\f83b";
}
.fa-sass:before {
  content: "\f41e";
}
.fa-satellite:before {
  content: "\f7bf";
}
.fa-satellite-dish:before {
  content: "\f7c0";
}
.fa-save:before {
  content: "\f0c7";
}
.fa-schlix:before {
  content: "\f3ea";
}
.fa-school:before {
  content: "\f549";
}
.fa-screwdriver:before {
  content: "\f54a";
}
.fa-scribd:before {
  content: "\f28a";
}
.fa-scroll:before {
  content: "\f70e";
}
.fa-sd-card:before {
  content: "\f7c2";
}
.fa-search:before {
  content: "\f002";
}
.fa-search-dollar:before {
  content: "\f688";
}
.fa-search-location:before {
  content: "\f689";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-searchengin:before {
  content: "\f3eb";
}
.fa-seedling:before {
  content: "\f4d8";
}
.fa-sellcast:before {
  content: "\f2da";
}
.fa-sellsy:before {
  content: "\f213";
}
.fa-server:before {
  content: "\f233";
}
.fa-servicestack:before {
  content: "\f3ec";
}
.fa-shapes:before {
  content: "\f61f";
}
.fa-share:before {
  content: "\f064";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-shekel-sign:before {
  content: "\f20b";
}
.fa-shield-alt:before {
  content: "\f3ed";
}
.fa-ship:before {
  content: "\f21a";
}
.fa-shipping-fast:before {
  content: "\f48b";
}
.fa-shirtsinbulk:before {
  content: "\f214";
}
.fa-shoe-prints:before {
  content: "\f54b";
}
.fa-shopping-bag:before {
  content: "\f290";
}
.fa-shopping-basket:before {
  content: "\f291";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-shopware:before {
  content: "\f5b5";
}
.fa-shower:before {
  content: "\f2cc";
}
.fa-shuttle-van:before {
  content: "\f5b6";
}
.fa-sign:before {
  content: "\f4d9";
}
.fa-sign-in-alt:before {
  content: "\f2f6";
}
.fa-sign-language:before {
  content: "\f2a7";
}
.fa-sign-out-alt:before {
  content: "\f2f5";
}
.fa-signal:before {
  content: "\f012";
}
.fa-signature:before {
  content: "\f5b7";
}
.fa-sim-card:before {
  content: "\f7c4";
}
.fa-simplybuilt:before {
  content: "\f215";
}
.fa-sistrix:before {
  content: "\f3ee";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-sith:before {
  content: "\f512";
}
.fa-skating:before {
  content: "\f7c5";
}
.fa-sketch:before {
  content: "\f7c6";
}
.fa-skiing:before {
  content: "\f7c9";
}
.fa-skiing-nordic:before {
  content: "\f7ca";
}
.fa-skull:before {
  content: "\f54c";
}
.fa-skull-crossbones:before {
  content: "\f714";
}
.fa-skyatlas:before {
  content: "\f216";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-slack:before {
  content: "\f198";
}
.fa-slack-hash:before {
  content: "\f3ef";
}
.fa-slash:before {
  content: "\f715";
}
.fa-sleigh:before {
  content: "\f7cc";
}
.fa-sliders-h:before {
  content: "\f1de";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-smile:before {
  content: "\f118";
}
.fa-smile-beam:before {
  content: "\f5b8";
}
.fa-smile-wink:before {
  content: "\f4da";
}
.fa-smog:before {
  content: "\f75f";
}
.fa-smoking:before {
  content: "\f48d";
}
.fa-smoking-ban:before {
  content: "\f54d";
}
.fa-sms:before {
  content: "\f7cd";
}
.fa-snapchat:before {
  content: "\f2ab";
}
.fa-snapchat-ghost:before {
  content: "\f2ac";
}
.fa-snapchat-square:before {
  content: "\f2ad";
}
.fa-snowboarding:before {
  content: "\f7ce";
}
.fa-snowflake:before {
  content: "\f2dc";
}
.fa-snowman:before {
  content: "\f7d0";
}
.fa-snowplow:before {
  content: "\f7d2";
}
.fa-socks:before {
  content: "\f696";
}
.fa-solar-panel:before {
  content: "\f5ba";
}
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-alpha-down:before {
  content: "\f15d";
}
.fa-sort-alpha-down-alt:before {
  content: "\f881";
}
.fa-sort-alpha-up:before {
  content: "\f15e";
}
.fa-sort-alpha-up-alt:before {
  content: "\f882";
}
.fa-sort-amount-down:before {
  content: "\f160";
}
.fa-sort-amount-down-alt:before {
  content: "\f884";
}
.fa-sort-amount-up:before {
  content: "\f161";
}
.fa-sort-amount-up-alt:before {
  content: "\f885";
}
.fa-sort-down:before {
  content: "\f0dd";
}
.fa-sort-numeric-down:before {
  content: "\f162";
}
.fa-sort-numeric-down-alt:before {
  content: "\f886";
}
.fa-sort-numeric-up:before {
  content: "\f163";
}
.fa-sort-numeric-up-alt:before {
  content: "\f887";
}
.fa-sort-up:before {
  content: "\f0de";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-sourcetree:before {
  content: "\f7d3";
}
.fa-spa:before {
  content: "\f5bb";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-speakap:before {
  content: "\f3f3";
}
.fa-speaker-deck:before {
  content: "\f83c";
}
.fa-spell-check:before {
  content: "\f891";
}
.fa-spider:before {
  content: "\f717";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-splotch:before {
  content: "\f5bc";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-spray-can:before {
  content: "\f5bd";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-square-full:before {
  content: "\f45c";
}
.fa-square-root-alt:before {
  content: "\f698";
}
.fa-squarespace:before {
  content: "\f5be";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-stackpath:before {
  content: "\f842";
}
.fa-stamp:before {
  content: "\f5bf";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-and-crescent:before {
  content: "\f699";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-star-half-alt:before {
  content: "\f5c0";
}
.fa-star-of-david:before {
  content: "\f69a";
}
.fa-star-of-life:before {
  content: "\f621";
}
.fa-staylinked:before {
  content: "\f3f5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-steam-symbol:before {
  content: "\f3f6";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-sticker-mule:before {
  content: "\f3f7";
}
.fa-sticky-note:before {
  content: "\f249";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-stop-circle:before {
  content: "\f28d";
}
.fa-stopwatch:before {
  content: "\f2f2";
}
.fa-store:before {
  content: "\f54e";
}
.fa-store-alt:before {
  content: "\f54f";
}
.fa-strava:before {
  content: "\f428";
}
.fa-stream:before {
  content: "\f550";
}
.fa-street-view:before {
  content: "\f21d";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-stripe:before {
  content: "\f429";
}
.fa-stripe-s:before {
  content: "\f42a";
}
.fa-stroopwafel:before {
  content: "\f551";
}
.fa-studiovinari:before {
  content: "\f3f8";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-subway:before {
  content: "\f239";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-suitcase-rolling:before {
  content: "\f5c1";
}
.fa-sun:before {
  content: "\f185";
}
.fa-superpowers:before {
  content: "\f2dd";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-supple:before {
  content: "\f3f9";
}
.fa-surprise:before {
  content: "\f5c2";
}
.fa-suse:before {
  content: "\f7d6";
}
.fa-swatchbook:before {
  content: "\f5c3";
}
.fa-swift:before {
  content: "\f8e1";
}
.fa-swimmer:before {
  content: "\f5c4";
}
.fa-swimming-pool:before {
  content: "\f5c5";
}
.fa-symfony:before {
  content: "\f83d";
}
.fa-synagogue:before {
  content: "\f69b";
}
.fa-sync:before {
  content: "\f021";
}
.fa-sync-alt:before {
  content: "\f2f1";
}
.fa-syringe:before {
  content: "\f48e";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-table-tennis:before {
  content: "\f45d";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-tablet-alt:before {
  content: "\f3fa";
}
.fa-tablets:before {
  content: "\f490";
}
.fa-tachometer-alt:before {
  content: "\f3fd";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-tape:before {
  content: "\f4db";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-taxi:before {
  content: "\f1ba";
}
.fa-teamspeak:before {
  content: "\f4f9";
}
.fa-teeth:before {
  content: "\f62e";
}
.fa-teeth-open:before {
  content: "\f62f";
}
.fa-telegram:before {
  content: "\f2c6";
}
.fa-telegram-plane:before {
  content: "\f3fe";
}
.fa-temperature-high:before {
  content: "\f769";
}
.fa-temperature-low:before {
  content: "\f76b";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-tenge:before {
  content: "\f7d7";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-the-red-yeti:before {
  content: "\f69d";
}
.fa-theater-masks:before {
  content: "\f630";
}
.fa-themeco:before {
  content: "\f5c6";
}
.fa-themeisle:before {
  content: "\f2b2";
}
.fa-thermometer:before {
  content: "\f491";
}
.fa-thermometer-empty:before {
  content: "\f2cb";
}
.fa-thermometer-full:before {
  content: "\f2c7";
}
.fa-thermometer-half:before {
  content: "\f2c9";
}
.fa-thermometer-quarter:before {
  content: "\f2ca";
}
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}
.fa-think-peaks:before {
  content: "\f731";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbtack:before {
  content: "\f08d";
}
.fa-ticket-alt:before {
  content: "\f3ff";
}
.fa-times:before {
  content: "\f00d";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-tint:before {
  content: "\f043";
}
.fa-tint-slash:before {
  content: "\f5c7";
}
.fa-tired:before {
  content: "\f5c8";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-toilet:before {
  content: "\f7d8";
}
.fa-toilet-paper:before {
  content: "\f71e";
}
.fa-toolbox:before {
  content: "\f552";
}
.fa-tools:before {
  content: "\f7d9";
}
.fa-tooth:before {
  content: "\f5c9";
}
.fa-torah:before {
  content: "\f6a0";
}
.fa-torii-gate:before {
  content: "\f6a1";
}
.fa-tractor:before {
  content: "\f722";
}
.fa-trade-federation:before {
  content: "\f513";
}
.fa-trademark:before {
  content: "\f25c";
}
.fa-traffic-light:before {
  content: "\f637";
}
.fa-trailer:before {
  content: "\f941";
}
.fa-train:before {
  content: "\f238";
}
.fa-tram:before {
  content: "\f7da";
}
.fa-transgender:before {
  content: "\f224";
}
.fa-transgender-alt:before {
  content: "\f225";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-trash-alt:before {
  content: "\f2ed";
}
.fa-trash-restore:before {
  content: "\f829";
}
.fa-trash-restore-alt:before {
  content: "\f82a";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-trello:before {
  content: "\f181";
}
.fa-tripadvisor:before {
  content: "\f262";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-truck-loading:before {
  content: "\f4de";
}
.fa-truck-monster:before {
  content: "\f63b";
}
.fa-truck-moving:before {
  content: "\f4df";
}
.fa-truck-pickup:before {
  content: "\f63c";
}
.fa-tshirt:before {
  content: "\f553";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-tv:before {
  content: "\f26c";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-typo3:before {
  content: "\f42b";
}
.fa-uber:before {
  content: "\f402";
}
.fa-ubuntu:before {
  content: "\f7df";
}
.fa-uikit:before {
  content: "\f403";
}
.fa-umbraco:before {
  content: "\f8e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-umbrella-beach:before {
  content: "\f5ca";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-undo:before {
  content: "\f0e2";
}
.fa-undo-alt:before {
  content: "\f2ea";
}
.fa-uniregistry:before {
  content: "\f404";
}
.fa-unity:before {
  content: "\f949";
}
.fa-universal-access:before {
  content: "\f29a";
}
.fa-university:before {
  content: "\f19c";
}
.fa-unlink:before {
  content: "\f127";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-untappd:before {
  content: "\f405";
}
.fa-upload:before {
  content: "\f093";
}
.fa-ups:before {
  content: "\f7e0";
}
.fa-usb:before {
  content: "\f287";
}
.fa-user:before {
  content: "\f007";
}
.fa-user-alt:before {
  content: "\f406";
}
.fa-user-alt-slash:before {
  content: "\f4fa";
}
.fa-user-astronaut:before {
  content: "\f4fb";
}
.fa-user-check:before {
  content: "\f4fc";
}
.fa-user-circle:before {
  content: "\f2bd";
}
.fa-user-clock:before {
  content: "\f4fd";
}
.fa-user-cog:before {
  content: "\f4fe";
}
.fa-user-edit:before {
  content: "\f4ff";
}
.fa-user-friends:before {
  content: "\f500";
}
.fa-user-graduate:before {
  content: "\f501";
}
.fa-user-injured:before {
  content: "\f728";
}
.fa-user-lock:before {
  content: "\f502";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-user-minus:before {
  content: "\f503";
}
.fa-user-ninja:before {
  content: "\f504";
}
.fa-user-nurse:before {
  content: "\f82f";
}
.fa-user-plus:before {
  content: "\f234";
}
.fa-user-secret:before {
  content: "\f21b";
}
.fa-user-shield:before {
  content: "\f505";
}
.fa-user-slash:before {
  content: "\f506";
}
.fa-user-tag:before {
  content: "\f507";
}
.fa-user-tie:before {
  content: "\f508";
}
.fa-user-times:before {
  content: "\f235";
}
.fa-users:before {
  content: "\f0c0";
}
.fa-users-cog:before {
  content: "\f509";
}
.fa-usps:before {
  content: "\f7e1";
}
.fa-ussunnah:before {
  content: "\f407";
}
.fa-utensil-spoon:before {
  content: "\f2e5";
}
.fa-utensils:before {
  content: "\f2e7";
}
.fa-vaadin:before {
  content: "\f408";
}
.fa-vector-square:before {
  content: "\f5cb";
}
.fa-venus:before {
  content: "\f221";
}
.fa-venus-double:before {
  content: "\f226";
}
.fa-venus-mars:before {
  content: "\f228";
}
.fa-viacoin:before {
  content: "\f237";
}
.fa-viadeo:before {
  content: "\f2a9";
}
.fa-viadeo-square:before {
  content: "\f2aa";
}
.fa-vial:before {
  content: "\f492";
}
.fa-vials:before {
  content: "\f493";
}
.fa-viber:before {
  content: "\f409";
}
.fa-video:before {
  content: "\f03d";
}
.fa-video-slash:before {
  content: "\f4e2";
}
.fa-vihara:before {
  content: "\f6a7";
}
.fa-vimeo:before {
  content: "\f40a";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-vimeo-v:before {
  content: "\f27d";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-vk:before {
  content: "\f189";
}
.fa-vnv:before {
  content: "\f40b";
}
.fa-voicemail:before {
  content: "\f897";
}
.fa-volleyball-ball:before {
  content: "\f45f";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-mute:before {
  content: "\f6a9";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-vote-yea:before {
  content: "\f772";
}
.fa-vr-cardboard:before {
  content: "\f729";
}
.fa-vuejs:before {
  content: "\f41f";
}
.fa-walking:before {
  content: "\f554";
}
.fa-wallet:before {
  content: "\f555";
}
.fa-warehouse:before {
  content: "\f494";
}
.fa-water:before {
  content: "\f773";
}
.fa-wave-square:before {
  content: "\f83e";
}
.fa-waze:before {
  content: "\f83f";
}
.fa-weebly:before {
  content: "\f5cc";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-weight:before {
  content: "\f496";
}
.fa-weight-hanging:before {
  content: "\f5cd";
}
.fa-weixin:before {
  content: "\f1d7";
}
.fa-whatsapp:before {
  content: "\f232";
}
.fa-whatsapp-square:before {
  content: "\f40c";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-whmcs:before {
  content: "\f40d";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-wikipedia-w:before {
  content: "\f266";
}
.fa-wind:before {
  content: "\f72e";
}
.fa-window-close:before {
  content: "\f410";
}
.fa-window-maximize:before {
  content: "\f2d0";
}
.fa-window-minimize:before {
  content: "\f2d1";
}
.fa-window-restore:before {
  content: "\f2d2";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-wine-bottle:before {
  content: "\f72f";
}
.fa-wine-glass:before {
  content: "\f4e3";
}
.fa-wine-glass-alt:before {
  content: "\f5ce";
}
.fa-wix:before {
  content: "\f5cf";
}
.fa-wizards-of-the-coast:before {
  content: "\f730";
}
.fa-wolf-pack-battalion:before {
  content: "\f514";
}
.fa-won-sign:before {
  content: "\f159";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-wordpress-simple:before {
  content: "\f411";
}
.fa-wpbeginner:before {
  content: "\f297";
}
.fa-wpexplorer:before {
  content: "\f2de";
}
.fa-wpforms:before {
  content: "\f298";
}
.fa-wpressr:before {
  content: "\f3e4";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-x-ray:before {
  content: "\f497";
}
.fa-xbox:before {
  content: "\f412";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-y-combinator:before {
  content: "\f23b";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-yammer:before {
  content: "\f840";
}
.fa-yandex:before {
  content: "\f413";
}
.fa-yandex-international:before {
  content: "\f414";
}
.fa-yarn:before {
  content: "\f7e3";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-yen-sign:before {
  content: "\f157";
}
.fa-yin-yang:before {
  content: "\f6ad";
}
.fa-yoast:before {
  content: "\f2b1";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-youtube-square:before {
  content: "\f431";
}
.fa-zhihu:before {
  content: "\f63f";
}
.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
/*!
 * Font Awesome Free 5.12.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  src: url('/application/themes/eurotec/css/webfonts/fa-solid-900.eot');
  src: url('/application/themes/eurotec/css/webfonts/fa-solid-900.eot?#iefix') format('embedded-opentype'), url('/application/themes/eurotec/css/webfonts/fa-solid-900.woff2') format('woff2'), url('/application/themes/eurotec/css/webfonts/fa-solid-900.woff') format('woff'), url('/application/themes/eurotec/css/webfonts/fa-solid-900.ttf') format('truetype'), url('/application/themes/eurotec/css/webfonts/fa-solid-900.svg#fontawesome') format('svg');
}
.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
}
.lb-loader,
.lightbox {
  text-align: center;
  line-height: 0;
  position: absolute;
  left: 0;
}
body.lb-disable-scrolling {
  overflow: hidden;
}
.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #000;
  filter: alpha(opacity=80);
  opacity: .8;
  display: none;
}
.lightbox {
  width: 100%;
  z-index: 10000;
  font-weight: 400;
  outline: 0;
}
.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;
  border: 4px solid #ffffff;
}
.lightbox a img {
  border: none;
}
.lb-outerContainer {
  position: relative;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
  background-color: #fff;
}
.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}
.lb-loader {
  top: 43%;
  height: 25%;
  width: 100%;
}
.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(/application/themes/eurotec/css/images/loading.gif) no-repeat;
}
.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}
.lb-container > .nav {
  left: 0;
}
.lb-nav a {
  outline: 0;
  background-image: url(data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==);
}
.lb-next,
.lb-prev {
  height: 100%;
  cursor: pointer;
  display: block;
}
.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(/application/themes/eurotec/css/images/prev.png) left 48% no-repeat;
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-transition: opacity .6s;
  -moz-transition: opacity .6s;
  -o-transition: opacity .6s;
  transition: opacity 0.6s;
}
.lb-nav a.lb-prev:hover {
  filter: alpha(opacity=100);
  opacity: 1;
}
.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(/application/themes/eurotec/css/images/next.png) right 48% no-repeat;
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-transition: opacity .6s;
  -moz-transition: opacity .6s;
  -o-transition: opacity .6s;
  transition: opacity 0.6s;
}
.lb-nav a.lb-next:hover {
  filter: alpha(opacity=100);
  opacity: 1;
}
.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}
.lb-data {
  padding: 0 4px;
  color: #ccc;
}
.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em;
}
.lb-data .lb-caption {
  font-size: 13px;
  font-weight: 700;
  line-height: 1em;
}
.lb-data .lb-caption a {
  color: #4ae;
}
.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999;
}
.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(/application/themes/eurotec/css/images/close.png) top right no-repeat;
  text-align: right;
  outline: 0;
  filter: alpha(opacity=70);
  opacity: .7;
  -webkit-transition: opacity .2s;
  -moz-transition: opacity .2s;
  -o-transition: opacity .2s;
  transition: opacity 0.2s;
}
.lb-data .lb-close:hover {
  cursor: pointer;
  filter: alpha(opacity=100);
  opacity: 1;
}
#produktfilter-block select,
#produktfilter-block input[type="text"],
#produktfilter-block input[type="number"] {
  font-size: 1.13rem;
  min-height: 46px;
}
.adv-filter-card {
  min-height: 145px;
}
.filter-card {
  border: 1px solid #dee2e6;
  transition: all 0.2s ease;
  min-height: 205px;
}
.filter-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}
.filter-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.filter-icon {
  width: 48px;
  height: 48px;
  object-fit: contain;
  flex-shrink: 0;
}
.filter-icon-small {
  width: 24px;
  height: 24px;
  object-fit: contain;
  flex-shrink: 0;
  margin-right: 0.5rem;
}
.filter-title {
  font-weight: 600;
  font-size: 1.1rem;
  color: #212529;
}
#kategorie-buttons,
#antrieb-buttons {
  min-height: 60px;
  align-items: flex-start;
}
#kategorie-buttons .btn,
#antrieb-buttons .btn {
  transition: all 0.2s ease;
}
.fw-semibold i {
  margin-right: 0.5rem;
  color: #6c757d;
}
.filter-list-label {
  font-size: 0.9rem !important;
  color: #333 !important;
  font-weight: 400;
}
.filter-list-badge {
  font-size: 0.78rem !important;
  font-weight: 500;
  padding: 0.2em 0.6em;
}
.filter-info-box-ul .list-group-item {
  padding-top: 0.23rem;
  padding-bottom: 0.23rem;
}
.dual-wrap {
  --track-h: 6px;
  --thumb: 22px;
  --brand: #6c757d;
  position: relative;
  margin-bottom: 0;
}
.dual-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.dual-title {
  font-weight: 600;
  color: #495057;
  font-size: 1rem;
}
.dual-current .badge {
  font-size: 0.85rem;
  padding: 0.35rem 0.7rem;
  font-weight: 500;
  background-color: #f8f9fa !important;
  color: #495057 !important;
  border: 1px solid #dee2e6;
}
.dual-range {
  position: relative;
  height: 60px;
  display: flex;
  align-items: center;
}
.dual-range .track {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: var(--track-h);
  background: #dee2e6;
  border-radius: var(--track-h);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  z-index: 1;
}
.dual-range .fill {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: var(--track-h);
  background: linear-gradient(90deg, #fa8610 0%, #e3770e 100%);
  border-radius: var(--track-h);
  z-index: 2;
  box-shadow: 0 1px 3px rgba(121, 121, 121, 0.4);
  transition: all 0.15s ease;
}
.dual-range input[type="range"] {
  position: absolute;
  left: 0;
  right: 0;
  top: 33%;
  transform: translateY(-50%);
  width: 100%;
  height: var(--thumb);
  margin: 0;
  background: transparent;
  pointer-events: none;
  -webkit-appearance: none;
  appearance: none;
  z-index: 3;
}
.dual-range input[type="range"]::-webkit-slider-track {
  background: transparent;
  border: none;
  height: 0;
}
.dual-range input[type="range"]::-webkit-slider-runnable-track {
  background: transparent;
  border: none;
  height: 0;
}
.dual-range input[type="range"]::-moz-range-track {
  background: transparent;
  border: none;
  height: 0;
}
.dual-range input[type="range"]::-webkit-slider-thumb {
  pointer-events: auto;
  -webkit-appearance: none;
  appearance: none;
  width: var(--thumb);
  height: var(--thumb);
  border-radius: 50%;
  background: #fff;
  border: 3px solid var(--brand);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(0, 0, 0, 0.1);
  cursor: grab;
  transition: all 0.15s ease;
  position: relative;
  z-index: 4;
}
.dual-range input[type="range"]::-webkit-slider-thumb:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0, 0, 0, 0.15);
  border-color: #8e9398;
}
.dual-range input[type="range"]::-webkit-slider-thumb:active {
  cursor: grabbing;
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
  border-color: #004085;
}
.dual-range input[type="range"]::-moz-range-thumb {
  pointer-events: auto;
  width: var(--thumb);
  height: var(--thumb);
  border-radius: 50%;
  background: #fff;
  border: 3px solid var(--brand);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  cursor: grab;
  transition: all 0.15s ease;
}
.dual-range input[type="range"]::-moz-range-thumb:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  border-color: #484b4f;
}
.dual-range input[type="range"]::-moz-range-thumb:active {
  cursor: grabbing;
  transform: scale(1.05);
  border-color: #004085;
}
.dual-range input[type="range"]:focus {
  outline: none;
}
.dual-range input[type="range"]:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px rgba(193, 195, 198, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
}
.dual-range input[type="range"]:focus::-moz-range-thumb {
  box-shadow: 0 0 0 3px rgba(207, 207, 208, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
}
.dual-range .range-min {
  z-index: 5;
}
.dual-range .range-min::-webkit-slider-thumb {
  z-index: 5;
}
.dual-range .range-max {
  z-index: 6;
}
.dual-range .range-max::-webkit-slider-thumb {
  z-index: 6;
}
.dual-ends {
  display: flex;
  justify-content: space-between;
  font-size: 0.85rem;
  color: #6c757d;
  margin-top: 0.25rem;
}
.dual-actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.dual-actions .btn-link,
.dual-actions .reset-link {
  padding: 0 0.25rem;
  font-size: 0.85rem;
  text-decoration: none;
  color: #6c757d;
  transition: color 0.2s ease;
  cursor: pointer;
}
.dual-actions .btn-link:hover,
.dual-actions .reset-link:hover {
  text-decoration: underline;
  color: #6c757d;
}
.btn-check:checked + .btn-outline-secondary {
  background-color: #5a6268;
  border-color: #5a6268;
  color: white;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.btn-check + .btn-outline-secondary {
  transition: all 0.2s ease;
  border-color: #dee2e6;
  background-color: white;
  color: #495057;
  border-radius: 20px;
  padding: 0.4rem 1rem;
  font-size: 0.95rem;
}
.btn-check + .btn-outline-secondary:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border-color: #adb5bd;
}
.card:hover {
  transform: translateY(-2px);
  transition: transform 0.2s ease-in-out;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}
#loadingSpinner {
  transition: opacity 0.3s ease;
}
#loadingSpinner .spinner-border {
  width: 3rem;
  height: 3rem;
  animation: spinner-border 0.8s linear infinite;
}
#exportResults {
  transition: all 0.3s ease;
}
#exportResults:hover {
  transform: scale(1.05);
}
.product-card {
  transition: all 0.2s ease;
}
.product-item {
  border: 1px solid rgba(0, 0, 0, 0.125);
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
}
.product-item:hover {
  border-color: rgba(13, 110, 253, 0.3);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}
.product-item.list-view {
  flex-direction: row;
  min-height: auto;
}
.product-item.list-view .pf-image-container {
  width: 100px;
  min-height: 100px;
  max-height: 100px;
  padding: 0.5rem;
  flex-shrink: 0;
}
.product-item.list-view .pf-image-container .pf-img {
  max-height: 80px;
  max-width: 80px;
}
.product-item.list-view .card-body {
  flex: 1;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.product-item.list-view .pf-name {
  margin-bottom: 0.5rem;
  font-size: 0.9rem;
}
.product-item.list-view .pf-specs {
  font-size: 0.8rem;
  margin-bottom: 0;
  line-height: 1.4;
}
.product-item.list-view .pf-category-pill,
.product-item.list-view .pf-cert-pill {
  position: static;
  display: inline-block;
  margin-right: 0.5rem;
  font-size: 0.65rem;
  padding: 0.25rem 0.5rem;
}
.product-item.list-view:hover {
  transform: translateY(0);
  transform: translateX(2px);
}
.pf-image-container {
  position: relative;
  padding: 1rem;
  background-color: white;
  min-height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
.pf-image-container .pf-img {
  max-height: 180px;
  object-fit: contain;
  width: 100%;
}
.pf-image-container .pf-img-placeholder {
  width: 100%;
  height: 180px;
  background: white;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
  font-size: 0.75rem;
}
.pf-category-pill {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  font-size: 0.75rem;
  padding: 0.35rem 0.75rem;
  border-radius: 20px;
  font-weight: 500;
  background-color: rgba(108, 117, 125, 0.9);
  color: white;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.pf-cert-pill {
  position: absolute;
  top: 2.75rem;
  left: 0.75rem;
  font-size: 0.7rem;
  padding: 0.3rem 0.65rem;
  border-radius: 20px;
  font-weight: 500;
  background-color: rgba(173, 181, 189, 0.9);
  color: white;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.pf-name {
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.3;
}
.pf-name a {
  color: inherit;
  transition: color 0.2s ease;
}
.pf-name a:hover {
  color: #6c757d;
}
.pf-specs {
  font-size: 0.85rem;
  line-height: 1.6;
  color: #6c757d;
}
.product-image {
  transition: all 0.2s ease;
}
.product-image:hover {
  text-decoration: none;
}
.product-image img {
  transition: transform 0.2s ease;
}
.product-image:hover img {
  transform: scale(1.05);
}
.product-image-placeholder {
  background: linear-gradient(135deg, #f8f9fa 0%, #dee2e6 100%);
  border-radius: 0.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
  font-size: 0.75rem;
  min-height: 120px;
}
.product-name {
  color: #212529;
  transition: color 0.2s ease;
}
.product-name a {
  color: inherit;
  transition: color 0.2s ease;
}
.product-name a:hover {
  color: #6c757d;
}
.product-item:hover .product-name {
  color: #6c757d;
}
.product-keywords .badge {
  transition: all 0.2s ease;
}
.product-keywords .badge:hover {
  transform: scale(1.05);
}
.btn-group .btn-check:checked + .btn-outline-secondary {
  background-color: #6c757d;
  border-color: #6c757d;
  color: white;
}
@media (max-width: 768px) {
  #produktfilter-block .fs-5 {
    font-size: 1rem !important;
  }
  #produktfilter-block .rounded-pill {
    font-size: 0.85rem !important;
    padding: 0.4rem 0.8rem !important;
  }
  .dual-wrap {
    margin-bottom: 1rem;
  }
  .dual-range {
    height: 50px;
  }
  .dual-current .badge {
    font-size: 0.85rem;
    padding: 0.3rem 0.5rem;
  }
  .product-card {
    margin-bottom: 1rem;
  }
  .product-item.list-view .pf-image-container {
    width: 80px;
    min-height: 80px;
    max-height: 80px;
    padding: 0.35rem;
  }
  .product-item.list-view .pf-image-container .pf-img {
    max-height: 60px;
    max-width: 60px;
  }
  .product-item.list-view .card-body {
    padding: 0.5rem;
  }
  .product-item.list-view .pf-name {
    font-size: 0.85rem;
    margin-bottom: 0.35rem;
  }
  .product-item.list-view .pf-specs {
    font-size: 0.75rem;
  }
}
@media (max-width: 576px) {
  .dual-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .dual-current {
    align-self: flex-end;
  }
  .btn-group .btn {
    font-size: 0.8rem;
    padding: 0.3rem 0.6rem;
  }
}
@media (prefers-color-scheme: dark) {
  .dual-range .track {
    background: #495057;
  }
  .dual-range .fill {
    background: rgba(13, 110, 253, 0.4);
  }
  .dual-ends {
    color: #adb5bd;
  }
  .filter-list-label {
    color: #e9ecef !important;
  }
  .product-name {
    color: #e9ecef;
  }
  .product-item:hover .product-name {
    color: #66b3ff;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.product-card {
  animation: fadeIn 0.3s ease forwards;
}
.product-card:nth-child(odd) {
  animation-delay: 0.1s;
}
.product-card:nth-child(even) {
  animation-delay: 0.2s;
}
.results-loading {
  opacity: 0.6;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.alert {
  border: none;
  border-radius: 0.5rem;
}
.alert.alert-danger {
  background-color: rgba(220, 53, 69, 0.1);
  color: #721c24;
  border-left: 4px solid #dc3545;
}
.alert.alert-info {
  background-color: rgba(13, 110, 253, 0.1);
  color: #084298;
  border-left: 4px solid #0d6efd;
}
.alert.alert-warning {
  background-color: rgba(255, 193, 7, 0.1);
  color: #664d03;
  border-left: 4px solid #ffc107;
}
#results::-webkit-scrollbar {
  width: 8px;
}
#results::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}
#results::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 4px;
}
#results::-webkit-scrollbar-thumb:hover {
  background: #a1a1a1;
}
