@charset "UTF-8";
/*
#######################################################################################
~~ Animation
#######################################################################################
*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes flip-in {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  60% {
    opacity: 1;
    transform: translateY(20%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes flip-out {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  60% {
    opacity: 0;
    transform: translateY(120%);
  }
  100% {
    opacity: 0;
    transform: translateY(100%);
  }
}
@keyframes slide-in {
  0% {
    height: 0px;
    transform: translateY(-100%);
  }
  100% {
    height: 100%;
    transform: translateY(0%);
  }
}
@keyframes slide-out {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-100%);
    display: none !important;
  }
}
@keyframes height-collapse {
  0% {
    height: initial;
  }
  100% {
    height: 0px;
  }
}
@keyframes blink {
  0% {
    color: #ffe3a9;
  }
  50% {
    color: #171714;
  }
  100% {
    color: #ffe3a9;
  }
}
/*
#######################################################################################
~~ Transition
#######################################################################################
*/
.transition-1,
.button {
  -moz-transition: 0.05s ease-in;
  -o-transition: 0.05s ease-in;
  -webkit-transition: 0.05s ease-in;
  transition: 0.05s ease-in;
}
/*
#######################################################################################
~~ Utility: Alignment Colors Image-layout 
#######################################################################################
*/
.float-left {
  float: left;
}
.absolute {
  position: absolute;
}
.inline-box {
  display: inline-block;
}
.display_none {
  display: none;
}
.relative_img_lr_center .image_container {
  position: relative;
  left: 50%;
  translate: -50%;
}
.img_lr_center .image_container {
  position: relative;
  left: 50%;
  translate: -50%;
}
.img_tb_center .image_container {
  position: relative;
  top: 50%;
  translate: 0 -50%;
}
.img_center .image_container {
  position: relative;
  left: 50%;
  translate: -50%;
}
.align_right {
  text-align: right !important;
}
.align_left {
  text-align: left !important;
}
.align_center {
  text-align: center !important;
}
.align_center h2 {
  text-align: center !important;
}
.bg_prim {
  background-color: #ffd580;
}
.bg_prim_light {
  background-color: #ffe3a9;
}
.bg_ter {
  background-color: #6f725f;
}
.clr_prim {
  color: #ffd580 !important;
}
.clr_prim h2 {
  text-align: center !important;
  font-size: 2.7em !important;
}
.clr_snd {
  color: #3f4136 !important;
}
.clr_snd h2 {
  color: #3f4136 !important;
}
.clr_ter {
  color: #6f725f !important;
}
.clr_ter h2 {
  color: #6f725f !important;
}
.clr_wht {
  color: white !important;
}
.bg_green {
  background-color: #3f4136;
}
.main-content {
  margin-top: unset;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: unset;
}
.content-wrapper {
  max-width: 100%;
  background: none !important;
}
.rs-colomn .ce_text {
  margin-top: 0;
}
.fix-width img {
  width: auto;
}
.centered img {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}
.titled_text_column div {
  margin-top: 0 !important;
}
/*
###########################################################################
~~ Header Navigation
###########################################################################
*/
.main-navigation-wrapper {
  border: none;
  background: #3f4136;
  width: 100%;
  margin: auto;
  box-shadow: none !important;
  margin-bottom: 0px;
}
.main-navigation {
  position: relative;
  left: -50%;
  translate: 50%;
  float: right;
  padding: unset;
}
.main-navigation > ul > li > strong.active {
  font-size: 1em;
  color: #ffd580;
}
.main-navigation > ul > li > strong.active:after {
  border: none !important;
  background: #3f4136 !important;
  bottom: -0.85em !important;
}
.main-navigation > ul > li > a {
  font-size: 1em;
  text-decoration: none;
  color: white;
  transition: unset !important;
}
.main-navigation > ul > li > a:hover {
  color: #ffd580;
}
.main-navigation > ul > li > a:after {
  border: none !important;
  background: #6f725f !important;
  bottom: -0.85em !important;
}
.main-navigation > ul > li > strong.forward {
  font-size: 1em;
  color: #ffd580;
}
.main-navigation > ul > li > strong.forward:after {
  border: none !important;
  background: #6f725f !important;
  bottom: -0.85em !important;
}
.main-navigation > ul > li > strong.forward:hover::after {
  background: #5e6151 !important;
}
.main-navigation > ul > li > a.trail {
  color: #ffd580;
}
.main-navigation > ul .submenu {
  transition: background-color 0.3s ease;
}
.main-navigation > ul .submenu:hover {
  background: #5e6151 !important;
}
.main-navigation > ul .submenu::after {
  top: unset !important;
}
.main-navigation > ul .level_2 {
  border: unset;
  right: unset !important;
  background: #5e6151;
  z-index: -1 !important;
  position: absolute;
  box-shadow: inset 0 8px 8px -10px rgba(0, 0, 0, 0.5);
}
.main-navigation > ul .level_2 > li {
  border-top: unset;
}
.main-navigation > ul .level_2 > li > a {
  text-decoration: none;
  color: white;
  font-family: DMSans14pt;
  font-size: 1em;
  transition: unset !important;
}
.main-navigation > ul .level_2 > li > a:hover {
  color: #ffd580;
  background-color: #6f725f;
}

.main-navigation > ul > li:focus-within > ul {
  z-index: 1;
  max-height: 9999px;
  opacity: 1;
  transition: opacity 0.2s;
  pointer-events: auto;
}

.main-navigation > ul .level_2 strong.active {
  color: #ffd580;
  font-size: 1em;
}
/*
###########################################################################
~~ Mobile Navigation
###########################################################################
*/
.main-navigation-mobile-open {
  top: 30px !important;
  right: calc(6.66667% + var(--safe-area-left));
  left: unset;
}
.main-navigation-mobile-open::after {
  background: white;
  box-shadow: 0 7px white, 0 14px white;
}
.main-navigation-mobile a,
.main-navigation-mobile span {
  font-size: 30px;
  background: unset !important;
  border: unset !important;
  box-shadow: unset !important;
  text-decoration: none;
  color: white;
  font-family: Gabarito;
  text-transform: uppercase;
}
.main-navigation-mobile .level_2 a,
.main-navigation-mobile .level_2 span {
  text-align: left;
  font-size: 20px;
  padding-left: calc(50% - 80px) !important;
  background: unset !important;
  border: unset !important;
  box-shadow: unset !important;
  text-decoration: none;
  color: white;
  font-family: Gabarito;
  text-transform: uppercase;
}
.main-navigation-mobile {
  background-color: rgba(33, 34, 28, 0.97);
  width: 100% !important;
  padding-top: 100px;
}
.main-navigation-mobile .active {
  color: #ffd580;
}
.main-navigation-mobile .level_2_wrapper {
  overflow: hidden;
}
.main-navigation-mobile .level_2_wrapper.is-collapsed {
  animation: height-collapse 0.8s forwards;
}
.main-navigation-mobile .level_2_wrapper.is-collapsed > ul {
  display: block;
  animation: slide-out 0.4s forwards;
}
.main-navigation-mobile .level_2 {
  animation: slide-in 0.4s;
}
.main-navigation-mobile .level_2 .active {
  color: #ffd580;
}
.main-navigation-mobile-close {
  position: absolute;
  left: 85%;
  top: 30px;
  height: 22px;
  width: 23px;
  background-image: url("/files/ellios/icons/cross.svg") !important;
}
.main-navigation-mobile-expand {
  box-shadow: unset !important;
  padding: unset !important;
  right: 6% !important;
  top: 15px !important;
  font-size: 2.5em;
}
@media (min-width: 600px) {
  .mobile_navigation_logo {
    display: none !important;
  }
}
/*
#######################################################################################
~~ Autumn Sale Hover Button
#######################################################################################
*/
.autumn-banner {
  font-size: 20px;
}
@media (max-width: 900px) {
  .autumn-banner {
    font-size: 14px;
  }
}
.hover_button {
  border-radius: 10px;
  width: 60px;
  height: 60px;
  overflow: hidden;
  transition: width 0.3s, height 0.3s;
  background: #ffe3a9;
  position: fixed;
  display: flex;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 1px;
  padding-bottom: 1px;
  top: 150px;
  left: 5%;
}
.hover_button:hover,
.hover_button:focus-within {
  width: 300px;
  height: 150px;
}
@media (max-width: 900px) {
  .hover_button {
    visibility: collapse;
  }
}
.hover_menu_button {
  width: 50%;
  position: relative;
  left: 50%;
  translate: -50%;
  background-color: transparent;
  object-fit: contain;
  border-radius: 5px;
}
.hover_menu_button a {
  width: 100%;
  border: none !important;
  text-align: center;
  padding: 10px;
  font-size: 0.8em;
}
.hover_content {
  position: absolute;
  left: 44px;
  top: 8px;
  width: 233px;
  height: 142px;
  padding: 2px;
  margin-left: unset !important;
}
.hover_content .-large-first {
  margin-right: 3px !important;
}
.hover_content .h6 {
  font-size: 0.9em !important;
}
.hover_content .ce_rs_columns_start {
  height: 74px;
}
.hover_content .ce_headline {
  margin-top: 8px;
}
.hover_content .button-box {
  margin-top: 10px !important;
}
.fix_hover_column .-large-first {
  padding-right: 3%;
  width: 30.5% !important;
}
.fix_hover_column .-large-last {
  width: 68.5% !important;
}
.img_center_hover .image_container {
  margin: unset;
  position: relative;
  left: 50%;
  translate: -50% 12%;
}
/*
#######################################################################################
~~ Tagline with Background
#######################################################################################
*/
.tagline {
  margin-top: -3px;
}
.logo-width figure img {
  width: calc(63px + 15%);
  max-width: 288px;
}
.home_header .logo-width figure img {
  width: calc(63px + 23%);
}
.home_header .logo-width {
  margin-bottom: 5%;
}
.info-box-width {
  width: 60%;
}
.home_wrapper .centered-wrapper-inner {
  position: unset;
}
.home_logo {
  position: absolute;
  top: 39.5%;
  left: 45%;
  width: inherit;
  transform: translate(-50%, -50%);
}
.home_logo.switched figure img {
  transform: translate(34%, 0px);
}
.home_header {
  position: absolute;
  left: 60%;
  top: 75%;
  width: 60%;
  transform: translate(-50%, -50%);
}
.home_header .start_part {
  color: #3f4136;
  text-shadow: -3px 0 #ffd580, 0 1px #ffd580, 1px 0 #ffd580, 0 -1px #ffd580;
}
.info-box-padding {
  padding: calc(10px + 4%) !important;
  margin-top: calc(-15px - 7%) !important;
}
.center-animation-text .centered-wrapper-inner {
  left: 178px;
}
@media (max-width: 1600px) {
  .center-animation-text .centered-wrapper-inner {
    left: 240px;
  }
}
@media (max-width: 1200px) {
  .home_header {
    left: 50%;
    top: 66%;
    font-size: xx-small;
  }
  .home_header .start_part {
    color: white;
  }
  .center-animation-text .centered-wrapper-inner {
    left: unset;
  }
  .center-animation-text .centered-wrapper-inner .h1 {
    display: block;
    float: unset;
    padding-right: unset;
  }
  .center-animation-text .centered-wrapper-inner .animate-words-wrapper {
    display: block;
    float: unset;
  }
  .center-animation-text .centered-wrapper-inner .flip-hidden {
    left: 50%;
    translate: -50%;
    width: 100%;
  }
  .center-animation-text .centered-wrapper-inner .flip-visible {
    left: 50%;
    translate: -50%;
    width: 100%;
  }
}
@media (max-width: 1000px) {
  .info-box-width {
    width: 90%;
  }
}
@media (max-width: 840px) {
  .home_header {
    top: 56%;
  }
}
@media (max-width: 600px) {
  .center-animation-text .centered-wrapper-inner .h1 {
    margin-top: 20px;
  }
  .center-animation-text .centered-wrapper-inner .animate-words-wrapper .h1 {
    margin: unset;
    font-size: 3.1em !important;
  }
}
@media (max-width: 500px) {
  .home_header {
    top: 46%;
  }
}
@media (max-width: 400px) {
  .info-box-width {
    width: 98% !important;
  }
}
.opacity-0 {
  opacity: 0;
  position: absolute;
}
.start-hidden {
  opacity: 0;
  position: absolute;
}
.flip-hidden {
  opacity: 0;
  position: absolute !important;
  animation: flip-out 0.6s;
}
.flip-visible {
  position: absolute !important;
  opacity: 1;
  animation: flip-in 0.6s;
  text-shadow: -3px 0 #3f4136, 0 1px #3f4136, 1px 0 #3f4136, 0 -1px #3f4136;
}

.tagline .header_switch_area {
  position: absolute;
  z-index: 1;
  cursor: pointer;
}
/* .tagline .header_switch_area:hover {
  opacity: 0.06;
}
.tagline .header_switch_area.switched {
  left: 0%;
  width: 55%;
} */
/*
#######################################################################################
~~ Imagebanner
#######################################################################################
*/
.bg_app_device_banner,
.bg_sunset_md,
.bg_forest_banner,
.bg_mountain_banner,
.bg_blog_banner,
.alarmsystem_installation {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #000000;
}
.bg_banner,
.banner_overlay {
  width: 100%;
  position: absolute;
  left: 0;
  margin-top: -2%;
}
.bg_banner.banner_overlay {
  position: relative;
}
.banner_overlay {
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}
.bg_sunset_md {
  background-position: center bottom;
  background-position-y: 30%;
}
@media (max-width: 900px) {
  .bg_sunset_md {
    background-image: url("/files/ellios/img/backgrounds/mobil_mountain_sunset/mountain_sunset.png");
  }
}
.bg_forest_banner {
  background-image: url("/files/ellios/img/backgrounds/forest_banner/forest_banner_bg_klein.png");
}
.bg_mountain_banner {
  background-image: url("/files/ellios/img/backgrounds/mountain/schoene-berge.png");
}
.bg_blog_banner {
  background-image: url("/files/ellios/img/backgrounds/blog/blog_bg.png");
}
.alarmsystem_installation {
  background-image: url("/files/ellios/img/backgrounds/alarmsystem_installation/alarmsystem_installation_bg.png");
}

/*
#######################################################################################
~~ Blog-Link
#######################################################################################
*/
.blog_link {
  max-height: 475px;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  margin: 2%;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 5px;
  margin-bottom: 40px;
  color: unset;
  text-decoration: none;
  position: relative;
}

.blog_link:focus-within {
  outline: #005e81 thick dotted;
}

.blog_link a {
  color: #005e81 !important;
}

.blog_link:hover,
.blog_link::selection {
  text-decoration: none;
  color: inherit;
}

.blog_link img:first-child {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 200px;
}

.blog_link .blog_link__content {
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: inset 0 -10px 10px -12px gray;
}
.blog_link .blog_link__content .blog_link__text h3 {
  margin-top: unset;
}
.blog_link .blog_link__icon-container {
  height: 56px;
  display: flex;
}
.blog_link .blog_link__icon-container .__icon {
  margin: auto;
  height: 25px;
  width: 25px;
  background-image: url("/files/ellios/icons/blog_link_plus.svg");
  background-size: cover;
  background-position: center;
}
.blog_link .blog_link__link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
}
@media (max-width: 1100px) {
  #blog .rs-columns .-large-last.-large-first-row {
    margin-top: unset;
    margin-right: unset;
  }
}

/*
#######################################################################################
~~ Infographics - Feats/Sensors
#######################################################################################
*/

.home_info_graphics {
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-bottom: -70px;
}

.home_info_graphics .ce_headline {
  margin-top: 0.65em;
  color: white;
}
.home_info_graphics .info__sensor_column .ce_headline {
  text-align: right;
  padding-right: 1.25em;
}
.home_info_graphics .info__feat_column .ce_headline {
  text-align: left;
  padding-left: 1.25em;
}

.home_info_graphics .info__image_column {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  position: relative;
}

.home_info_graphics .info__sensor_column,
.home_info_graphics .info__feat_column {
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
}
@media (max-width: 902px) {
  .home_info_graphics .info__image_column {
    display: none;
  }
}

@media (max-width: 600px) {
  .home_info_graphics .info__sensor_column .ce_headline,
  .home_info_graphics .info__feat_column .ce_headline {
    text-align: center;
  }
}

/* ########################### modern Button - START ##################### */

/* .ce_text general */
.home_info_graphics .info__sensor_column .ce_text,
.home_info_graphics .info__feat_column .ce_text {
  border: none;
  outline: none;
  cursor: pointer;
  position: relative;
  z-index: 0;
  border-top: 2px solid #6f725f;
  padding: 1.25em;
  text-align: center;
  background: transparent;
  transition: background-color 0.3s ease-in-out;
}
.home_info_graphics .info__sensor_column .ce_text :is(h1, h2, h3, h4, h5, h6),
.home_info_graphics .info__sensor_column .ce_text::before,
.home_info_graphics .info__feat_column .ce_text :is(h1, h2, h3, h4, h5, h6),
.home_info_graphics .info__feat_column .ce_text::before {
  color: #ffd580;
  transition: color 0.3s ease-in-out;
}
.home_info_graphics .info__sensor_column .ce_text:last-of-type,
.home_info_graphics .info__feat_column .ce_text:last-of-type {
  border-bottom: 2px solid #6f725f;
}

.home_info_graphics .info__sensor_column .ce_text :is(h1, h2, h3, h4, h5, h6) {
  text-align: right;
  margin: 0;
  padding-right: 1em;
}

.home_info_graphics .info__feat_column .ce_text :is(h1, h2, h3, h4, h5, h6) {
  text-align: left;
  margin: 0;
  padding-left: 1em;
}

/* .ce_text.active general */
.home_info_graphics .info__sensor_column .ce_text.active,
.home_info_graphics .info__feat_column .ce_text.active {
  background: #ffd580;
}
.home_info_graphics .info__sensor_column .ce_text.active :is(h1, h2, h3, h4, h5, h6),
.home_info_graphics .info__sensor_column .ce_text.active::before,
.home_info_graphics .info__feat_column .ce_text.active :is(h1, h2, h3, h4, h5, h6),
.home_info_graphics .info__feat_column .ce_text.active:before {
  color: #3f4136;
}
.home_info_graphics .info__sensor_column .ce_text:active,
.home_info_graphics .info__feat_column .ce_text:active {
  filter: brightness(85%);
}

/* only arrow-head */
.home_info_graphics .info__sensor_column .ce_text::before,
.home_info_graphics .info__feat_column .ce_text:before {
  content: "\2B9F";
  position: absolute;
  font-size: 1em;
  top: 2em;
  transform: translate(0, -50%);
  opacity: 0;
  transition: all 0.3s ease-in-out;
}
.home_info_graphics .info__sensor_column .ce_text::before {
  right: 1em;
}
.home_info_graphics .info__feat_column .ce_text:before {
  left: 1em;
}
/* arrow-head active */
/* - */
/* arrow-head selection */
.home_info_graphics .info__sensor_column .ce_text.selected::before,
.home_info_graphics .info__feat_column .ce_text.selected::before {
  opacity: 1;
  top: 2.05em;
}
.home_info_graphics .info__sensor_column .ce_text.selected::before {
  right: 1em;
  transform: rotate(-90deg) translate(0.8em, 0em);
}
.home_info_graphics .info__feat_column .ce_text.selected:before {
  left: 1em;
  transform: rotate(90deg) translate(-0.8em, 0em);
}

/* paragraph */
.home_info_graphics .info__sensor_column .ce_text p,
.home_info_graphics .info__feat_column .ce_text p {
  display: none;
  text-align: justify;
  color: white;
}
.home_info_graphics .info__sensor_column .ce_text.active p,
.home_info_graphics .info__feat_column .ce_text.active p {
  color: #3f4136;
}

@media (max-width: 600px) {
  .home_info_graphics .info__sensor_column .ce_text.active::before,
  .home_info_graphics .info__feat_column .ce_text.active:before {
    opacity: 1;
  }

  .home_info_graphics .info__sensor_column .ce_text :is(h1, h2, h3, h4, h5, h6),
  .home_info_graphics .info__feat_column .ce_text :is(h1, h2, h3, h4, h5, h6) {
    text-align: center;
  }
}
/* ########################### modern Button - END ##################### */

/* Text Template */
.home_info_graphics .info__image_column .info__text_template {
  border: 1px solid #b4b4ef;
  background: #2e2e2e;
  color: white !important;
  position: absolute;
  bottom: 10.5%;
  padding: 1em;
  border-radius: 5px;
  max-height: 44%;
  transition: height 0.3s ease-in-out;
  text-align: justify;
}

.home_info_graphics .info__image_column .info__text_template .ce_text :is(h1, h2, h3, h4, h5, h6) {
  color: white !important;
  margin-top: 0.1em;
}
.home_info_graphics .info__image_column .info__text_template .close_btn {
  cursor: pointer;
}
.home_info_graphics .info__image_column .info__text_template .close_btn:hover {
  font-weight: 900;
}

.home_info_graphics .info__image_column .info__text_template .ce_text p {
  overflow-y: scroll;
  max-height: 13.5em;
  margin-bottom: unset;
  padding-right: 10px;
}

.home_info_graphics .info__image_column .info__text_template .ce_text p::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #f5f5f5;
  border-radius: 10px;
}

.home_info_graphics .info__image_column .info__text_template .ce_text p::-webkit-scrollbar {
  width: 6px;
  background-color: rgba(255, 255, 255, 0.2);
}

.home_info_graphics .info__image_column .info__text_template .ce_text p::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: rgb(122, 153, 217);
}

/* Breakpoint for small desktop */
@media (max-width: 1250px) {
  .home_info_graphics .info__image_column .info__text_template {
    max-height: 55%;
  }
}

@media (max-width: 500px) {
}

/*
#######################################################################################
~~ Button
#######################################################################################
*/
.button {
  padding: 15px;
  width: 225px;
  text-transform: uppercase;
  font-size: 1em;
  font-family: DMSans14pt;
  font-stretch: normal;
  font-style: normal;
  letter-spacing: 0.72px;
  color: white;
  background-color: #57407b;
  object-fit: contain;
  border-radius: 30px;
  box-shadow: -1px 1px 4px #3f4136;
}
@media (max-width: 1024px) {
  .button {
    width: 250px;
  }
}
.button:hover {
  background-color: white;
  color: #9789ad;
}
.button:active {
  box-shadow: none;
}
@media (max-width: 1400px) {
  .button {
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 13px;
    padding-bottom: 13px;
  }
}
.center-button a {
  left: 50%;
  translate: -50%;
}
@media (max-width: 1200px) {
  .center-button-lg a {
    left: 50%;
    translate: -50%;
  }
}
@media (max-width: 768px) {
  .center-button-sm a {
    left: 50%;
    translate: -50%;
  }
}
/*
#######################################################################################
~~ Headers and Paragraphs
#######################################################################################
*/
html {
  font-size: 1rem;
}
@media (max-width: 1600px) {
  html {
    font-size: 14px;
  }
}
@media (max-width: 567px) {
  html {
    font-size: 13px;
  }
}
body {
  scroll-behavior: smooth;
}
.no_text_transform {
  text-transform: none !important;
}
.bold {
  font-weight: 600 !important;
}
h1,
.h1 {
  font-size: 2.7em !important;
  font-family: Gabarito;
  font-weight: 900;
  color: #ffd580;
  text-transform: uppercase;
}
h2,
.h2 {
  font-size: 2em !important;
  font-family: Gabarito;
  font-weight: 900 !important;
  text-align: left;
  color: #3f4136;
  text-transform: uppercase;
  line-height: 1;
}
h3,
.h3,
.top_icon_boxes .icon-boxes-item h3,
.app_preview_icon_box h2 {
  text-align: left;
  font-size: 2em !important;
  font-family: Gabarito;
  font-weight: 900 !important;
  text-transform: uppercase;
}
.app_preview_icon_box h2 {
  color: #3f4136;
}
h4,
.h4 {
  text-align: left;
  font-size: 1.5em !important;
  font-family: DMSans14pt;
  color: #3f4136;
  font-weight: 600 !important;
  text-transform: uppercase;
}
.h4-5,
h5,
.h5,
.contact .widget-submit button,
.mail-inline-flex form .formbody div .submit {
  text-align: left;
  font-size: 1.3em !important;
  font-family: DMSans14pt;
  color: #3f4136;
  font-weight: 600;
  text-transform: uppercase;
}
h6,
.h6 {
  text-align: left;
  font-size: 0.8em !important;
  font-family: DMSans14pt;
  color: #3f4136;
  font-weight: normal;
  text-transform: uppercase;
}
.h4-5 {
  font-size: 1.2em !important;
  font-weight: 900;
  font-family: Gabarito;
}
p,
.p {
  font-size: 1.1em !important;
  font-family: DMSans14pt;
  font-weight: normal;
  margin-top: unset;
  margin-bottom: unset;
  word-break: normal;
  hyphens: auto;
  hyphenate-limit-chars: auto 3;
  hyphenate-limit-lines: 4;
}
.p_plus {
  font-size: 1.1em !important;
}
a:focus,
.a:focus,
.focusable:focus,
.focusable:focus-within {
  outline: thick dotted;
}
.small_text {
  font-size: 0.8em !important;
  font-family: DMSans14pt;
  font-weight: normal;
}
.remove-uppercase {
  text-transform: unset !important;
}
/*
#######################################################################################
~~ Icon-boxes
#######################################################################################
*/
.top_icon_boxes .icon-boxes-item p,
.titled_icon_box .icon-boxes-item p {
  padding: unset;
  text-align: center;
  font-weight: normal;
}
.bg-0 .icon-boxes-item-icon {
  border: unset;
  background: unset;
}
.top_icon_boxes {
  margin-left: 5%;
  margin-right: 5%;
}
@media (max-width: 600px) {
  .top_icon_boxes .icon-boxes-item:hover .icon-boxes-item-icon {
    opacity: 1;
  }
  .top_icon_boxes .icon-boxes-item:focus .icon-boxes-item-icon {
    opacity: 1;
  }
}
.top_icon_boxes .icon-boxes-item-icon {
  padding: unset;
  width: 150px;
  height: 150px;
  line-height: 200px;
}
@media (max-width: 1600px) {
  .top_icon_boxes .icon-boxes-item-icon {
    line-height: 180px;
  }
}
.top_icon_boxes .icon-boxes-item-icon::before {
  font-size: 2.5em;
  color: #3f4136;
}
@media (max-width: 900px) {
  .top_icon_boxes .icon-boxes-item-icon {
    width: 115px;
    height: 115px;
    line-height: 140px;
  }
  .top_icon_boxes .icon-boxes-item-icon::before {
    font-size: 2em;
    color: #3f4136;
  }
}
.top_icon_boxes .icon-boxes-item {
  width: 25% !important;
  margin: unset;
  margin-bottom: 50px;
}
.top_icon_boxes .icon-boxes-item h3 {
  text-align: center;
}
.top_icon_boxes .icon-boxes-item p {
  padding-left: 50px;
  padding-right: 50px;
  margin: 5px;
}
@media (max-width: 900px) {
  .top_icon_boxes .icon-boxes-item h3 {
    font-size: 1.5em !important;
    color: white !important;
  }
  .top_icon_boxes .icon-boxes-item p {
    color: white !important;
  }
}
@media (max-width: 1400px) {
  .top_icon_boxes .icon-boxes-item {
    width: 50% !important;
  }
}
@media (max-width: 600px) {
  .top_icon_boxes .icon-boxes-item {
    width: 100% !important;
  }
}
.titled_icon_box {
  padding: unset;
  margin-top: 5px;
  margin-bottom: 5px;
}
.titled_icon_box .icon-boxes-item-icon {
  margin-top: 20px;
  margin-bottom: 0px;
  padding: 5px;
  position: relative;
}
.titled_icon_box .icon-boxes-item-icon::before {
  position: absolute;
  display: inline;
  top: 0;
  left: 50%;
  transform: translate(-50%, 25%);
  font-size: 1.9em;
}
.titled_icon_box .icon-boxes-item {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.15);
  padding: unset;
  margin-left: 1% !important;
  margin-right: 1% !important;
  margin-top: 2% !important;
}
.titled_icon_box .icon-boxes-item p {
  font-family: Gabarito;
  margin-left: 15px;
  margin-right: 15px;
  margin-top: 19px;
  margin-bottom: 25px;
  font-size: 22px;
  font-style: bold;
  text-transform: uppercase;
  color: white !important;
}
.-inverted-icon.-background-color .icon-boxes-item-icon {
  font-size: 25px;
}
.-inverted-icon .icon-boxes-item-icon::before {
  position: relative !important;
  left: 0 !important;
}
.-inverted-icon .icon-boxes-item-text p {
  font-size: 20px !important;
}
@media (max-width: 1240px) {
  .titled_icon_box .icon-boxes-item p {
    margin-top: 14px;
    margin-bottom: 20.3px;
  }
}
@media (max-width: 900px) {
  .-inverted-icon .icon-boxes-item-text p {
    font-size: 15px !important;
  }
}

/* plain head */
h3.plain_head {
  font-size: 2.5rem !important;
  margin: 0;
  margin-bottom: 22px;
}

/* plain card boxes */
.plain_card_box {
  display: flex;
  flex-wrap: wrap;
  color: #3f4136;
  margin: 0;
}
.plain_card_box::before {
  margin: 0;
}
.plain_card_box .icon-boxes-item,
.plain_card_box.split {
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 25px;
  padding-bottom: 27px;
}
.plain_card_box.split {
  max-height: unset;
  align-items: flex-start;
  padding-top: 0;
  padding-left: 15px;
  padding-right: 15px;
}
.plain_card_box .icon-boxes-item {
  max-height: 150px;
}
.plain_card_box .icon-boxes-item p {
  font-family: Gabarito;
  margin: auto;
  font-size: inherit;
  font-weight: bold;
  text-transform: uppercase;
}
.plain_card_box .icon-boxes-item-text {
  color: inherit;
  line-height: 1.5rem;
}
.plain_card_box .icon-boxes-item-icon {
  font-size: 50px;
  padding: unset;
  margin: unset;
}

.plain_card_box.split .card_box_title {
  font-size: 20px;
  margin: 16px 0;
  text-transform: uppercase;
}
.plain_card_box.split .card_box_title p {
  padding: unset;
  margin: unset;
}
.plain_card_box.split .feature-content {
  display: flex;
  flex-direction: row;
  max-height: fit-content;
}
.plain_card_box.split .feature-content .-large-first {
  width: fit-content;
}
.plain_card_box.split .feature-content .ce_image,
.plain_card_box.split .feature-content .feature-text {
  padding-top: unset;
  padding-bottom: unset;
  margin: unset;
}
.plain_card_box.split .feature-content .ce_image {
  max-height: 150px;
  max-width: 200px;
}
.plain_card_box.split .feature-content .feature-text {
  padding-left: 5px;
  color: inherit;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.plain_card_box.split .feature-content p {
  margin: 0;
}
.plain_card_box.split .feature-content .feature-price-container {
  line-height: 1;
}
.plain_card_box.split .feature-content .feature-price {
  font-family: Gabarito;
}
.plain_card_box.split .feature-content .feature-price-text {
  font-size: 12px !important;
}

@media (max-width: 800px) {
  .plain_card_box.split .feature-content .feature-price-container {
    align-self: center;
  }
}
@media (max-width: 620px) {
  .plain_card_box.split .feature-content {
    flex-wrap: wrap;
    justify-content: center;
  }
  .plain_card_box.split .feature-content .-large-first {
    margin: 0;
  }
  .plain_card_box.split .feature-content .ce_image {
    max-height: unset;
    max-width: unset;
  }
  .plain_card_box.split .feature-content .feature-text {
    width: 100%;
    row-gap: 2em;
  }
}
@media (max-width: 598px) {
  .plain_card_box .icon-boxes-item {
    min-width: 180px;
  }
}
@media (max-width: 400px) {
  .plain_card_box {
    justify-content: center;
  }
  .plain_card_box .icon-boxes-item {
    margin: 0 !important;
    margin-bottom: 2rem !important;
  }
}
/* plain card box end */

.shop_link a {
  text-decoration: none;
  color: inherit;
}
.shop_link:hover {
  opacity: 0.7;
}

.product-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-container table,
.product-container table td {
  border: none;
}

.product-container .product_text h2 {
  font-size: 2em !important;
}

.product-container .product_text h3 {
  font-size: 2em !important;
  text-align: center;
}

.product-container .product_text h4 {
  font-size: 48px !important;
  text-align: center;
}

.other-product-column {
  border: 2px solid #6f725f;
  border-radius: 40px;
  background-color: #fff;
}

.your-product-column {
  border-radius: 40px;
}

@media (max-width: 768px) {
  .product-container {
    flex-direction: column;
  }
}

@media (max-width: 600px) {
  .your-product-column,
  .other-product-column {
    border-radius: 15px;
    margin: 0px !important;
  }
  .product-container .product_text h2 {
    font-size: 1em !important;
  }

  .product-container .product_text h3,
  .product-container .product_text h4 {
    font-size: 20px !important;
  }
  .your-product-column dt {
    color: #fff;
  }
  .other-product-column dt {
    color: black;
  }
}

@media (max-width: 500px) {
  .product-container {
    flex-direction: row;
    align-items: stretch;
  }
}

.rs-column.-large-first {
  margin-left: unset;
}
.app_preview_icon_box h2 {
  text-transform: unset !important;
  margin-left: 55px;
  margin-top: 5px;
  color: #1d1d1d;
  font-family: DMSans14pt;
}
@media (max-width: 1600px) {
  .app_preview_icon_box h2 {
    margin-left: 45px;
  }
}
.app_preview_icon_box .icon-boxes-item {
  padding-left: unset;
}
.app_preview_icon_box .icon-boxes-item-icon {
  left: 0px;
  top: 0px;
  font-size: 1.2em;
  background-color: #6f725f;
  border: unset;
}
.app_preview_icon_box .icon-boxes-item-icon::before {
  color: white;
  position: absolute;
  display: inline;
  top: 0;
  left: 50%;
  transform: translate(-50%, 50%);
}
.app_preview_icon_box .icon-boxes-item-text {
  color: #1d1d1d;
  font-size: 1.2em;
}
.fix_column_medium .icon-boxes-item {
  width: 30%;
}
@media (max-width: 1400) {
  .fix_column_medium .icon-boxes-item {
    width: 46%;
  }
}
/*
###########################################################################
~~ Apppreview
###########################################################################
*/
.apppreview-padding-bottom {
  padding-bottom: calc(70px);
}
@media (max-width: 900px) {
  .apppreview-padding-bottom {
    padding-bottom: calc(50px);
  }
}
.center-feature-img .feature-box-img {
  position: relative;
  left: 50%;
  translate: -50%;
}
.app-header-width {
  width: calc(250px + 25%) !important;
}
.absolute_lr_center {
  position: absolute;
  left: 50%;
  translate: -50%;
}
.size_contained figure img {
  height: 75vw;
}
.translate_down_15 {
  translate: 0 15%;
}
@media (max-width: 900px) {
  .translate_down_15 {
    translate: unset;
  }
}
.full_width_feature_image .feature-box-image {
  width: 90% !important;
  margin: unset;
  padding: unset;
  position: relative;
  left: 50%;
  translate: -50%;
}
@media (max-width: 900px) {
  .size_contained {
    visibility: collapse;
  }
}
@media (max-width: 900px) {
  .align_left_lg .ce_headline {
    text-align: left !important;
  }
  .align_left_lg .ce_text {
    text-align: left !important;
  }
}
@media (max-width: 900px) {
  .align_center_lg li {
    text-align: center !important;
  }
}
@media (min-width: 900px) {
  .float-right-md .rs-columns .-large-first {
    float: right;
  }
}
@media (max-width: 900px) {
  .img-w-sm-60 .feature-box-image img {
    width: 60%;
  }
}
.column-m-right-none .-large-first {
  margin-right: unset;
}
/*
###########################################################################
~~ Shop & Produkt View
###########################################################################
*/
.textblock p {
  margin-top: 0;
  margin-bottom: 0;
}
.appear-lg {
  height: 0 !important;
  visibility: collapse;
}
@media (max-width: 1200px) {
  .appear-lg {
    height: auto !important;
    visibility: visible;
  }
}
@media (max-width: 1200px) {
  .colapse-first-lg .-large-first {
    height: 0 !important;
    visibility: collapse;
  }
}
@media (max-width: 1200px) {
  .colapse-first-lg .ce_rs_column_start {
    width: 100% !important;
  }
  .colapse-first-lg .ce_rs_column_start h3,
  .colapse-first-lg .ce_rs_column_start .h3,
  .colapse-first-lg .ce_rs_column_start h5 {
    text-align: center !important;
  }
  .colapse-first-lg .ce_rs_column_start .ce_text p {
    text-align: center !important;
  }
}
.appear-800 {
  height: 0 !important;
  visibility: collapse;
}
@media (max-width: 800px) {
  .appear-800 {
    height: auto !important;
    visibility: visible;
  }
}
@media (max-width: 800px) {
  .colapse-first-800 .-large-first {
    height: 0 !important;
    visibility: collapse;
  }
}
.appear-600 {
  height: 0 !important;
  visibility: collapse;
}
@media (max-width: 600px) {
  .appear-600 {
    height: auto !important;
    visibility: visible;
  }
}
@media (max-width: 600px) {
  .colapse-first-600 .-large-first {
    height: 0 !important;
    visibility: collapse;
  }
}
.appear-400 {
  height: 0 !important;
  visibility: collapse;
}
@media (max-width: 400px) {
  .appear-400 {
    height: auto !important;
    visibility: visible;
  }
}
@media (max-width: 400px) {
  .colapse-first-400 .-large-first {
    height: 0 !important;
    visibility: collapse;
  }
}
.center-rel-md figure {
  left: 50%;
  translate: -50%;
}
@media (max-width: 1200px) {
  .align-center-l .ce_rs_column_start h2,
  .align-center-l .ce_rs_column_start h5 {
    text-align: center !important;
  }
}
/*
###########################################################################
~~ Sliderskin
###########################################################################
*/
.ellios_slider .rsts-crop {
  left: 50%;
  translate: -50%;
  width: 85% !important;
  height: 100%;
}
.rsts-skin-oneo .rsts-prev {
  left: -5%;
}
.rsts-skin-oneo .rsts-next {
  right: -5%;
}
.rsts-skin-oneo .rsts-prev,
.rsts-skin-oneo .rsts-next {
  position: absolute;
  overflow: hidden;
  margin-top: -1.73333em;
  border: unset;
  border-radius: 5em;
  outline: none;
  line-height: 0;
  color: #6f725f;
  text-indent: -99em;
  background-color: rgba(255, 213, 128, 0.5);
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
  text-decoration: none;
  display: none;
}
.expanded_slide .rsts-prev,
.expanded_slide .rsts-next {
  display: none;
}
.rsts-skin-oneo .rsts-prev,
.rsts-skin-oneo .rsts-next {
  display: block;
}
@media (max-width: 1350px) {
  .rsts-skin-oneo .rsts-prev {
    left: 2%;
  }
  .rsts-skin-oneo .rsts-next {
    right: 2%;
  }
  .rsts-skin-oneo .rsts-prev,
  .rsts-skin-oneo .rsts-next {
    top: -20px;
  }
}

/*
#######################################################################################
~~ Accordion
#######################################################################################
*/
.ce_accordionSingle:focus-within {
  border: 2px solid blue;
}

.accordion_visibility_gone {
  visibility: collapse !important;
  height: 0px !important;
}
.accordion_ellios .ui-accordion-header {
  padding: 30px;
  color: white;
  font-family: DMSans14pt;
  font-size: 1.2em;
  font-style: bold;
  background: #6f725f;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 5px;
}
.accordion_ellios .ui-accordion-header::after {
  content: "";
  top: 50%;
  translate: 0 -50%;
}
.accordion_ellios .ui-accordion-header:hover {
  color: #ffd580;
}
.accordion_ellios .ui-accordion-header .info_accordion_content span {
  display: inline-flex;
  width: 50%;
  padding-left: 0px !important;
}
.accordion_ellios .ui-accordion-header .ui-accordion-content {
  margin-top: -50px;
  margin-bottom: 50px;
}
.accordion_ellios .ui-accordion-header-active::after {
  content: "" !important;
}
.accordion_app_feature_preview .ui-accordion-header {
  color: #1d1d1d;
  font-family: DMSans14pt;
  font-size: 1.2em;
  font-weight: normal;
  font-style: normal;
  margin-bottom: 20px;
  padding-left: 0px;
  padding-right: 0px;
  padding-top: 12px;
  padding-bottom: 3px;
  border: unset;
  border-bottom: 3px solid gainsboro;
  border-bottom-width: 90%;
}
.accordion_app_feature_preview .ui-accordion-header::after {
  content: "";
  color: gainsboro;
  top: 50%;
  translate: 0 -50%;
}
.accordion_app_feature_preview .ui-accordion-header:hover {
  color: #6f725f;
}
.accordion_app_feature_preview .ui-accordion-header .info_accordion_content span {
  display: inline-flex;
  width: 50%;
  padding-left: 0px !important;
}
.accordion_app_feature_preview .ui-accordion-header .ui-accordion-content {
  margin-top: -50px;
  margin-bottom: 50px;
}
.accordion_app_feature_preview .ui-accordion-header-active::after {
  content: "" !important;
}
/*
###########################################################################
~~ App Feature Preview (Webpage for 'App')
###########################################################################
*/
.app_preview_header_column .rs-column {
  margin-top: unset;
}
.m-lr-app-preview-p {
  margin-left: calc(39.3% - 141px);
  margin-right: calc(39.3% - 141px);
}
.icon-margin-none .icon-boxes-item-icon {
  margin-bottom: unset;
}
.show {
  opacity: 1 !important;
}
.hide {
  opacity: 0 !important;
}
.app-preview-info-box-text {
  width: calc(75% + 25px);
}
.app-preview-info-boxes {
  width: calc(46% + 390px);
  position: relative;
  margin-top: calc(-100px - 4%);
}
.app-preview-info-boxes .-large-first-row {
  width: calc(16.5% + 109px) !important;
  margin-right: calc(25% - 168px);
}
.app-preview-info-boxes .-large-first-row .ce_text {
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}
.app-preview-info-boxes .-large-first-row:hover .ce_text {
  opacity: 1;
}
.app-preview-info-boxes .-large-first-row .centered-wrapper {
  height: 350px;
}
.app-preview-info-boxes .-large-first-row .icon-boxes {
  margin-top: 50px;
}
.app-preview-info-boxes .-large-first-row .-large-first {
  width: 95% !important;
}
.app-preview-info-boxes .-large-first-row .-large-last {
  margin-right: unset;
}
.app-preview-info-boxes .icon-boxes-item .icon-boxes-item-icon {
  border: unset;
  font-size: 1.8em;
  background-color: rgba(255, 255, 255, 0.2);
}
@media (max-width: 768px) {
  .app-preview-info-boxes {
    width: 280px;
  }
  .app-preview-info-boxes .-large-first-row {
    width: 280px !important;
    margin-right: 100%;
  }
}
@media (max-width: 1400px) {
  .app_feature_first_column .-large-first {
    width: 57% !important;
  }
  .app_feature_first_column .-large-last {
    width: 40% !important;
  }
}
@media (max-width: 900px) {
  .app_feature_first_column .-large-first {
    width: 100% !important;
  }
  .app_feature_first_column .-large-last {
    width: 100% !important;
  }
}
@media (max-width: 1400px) {
  .app_feature_last_column .-large-first {
    width: 100% !important;
  }
  .app_feature_last_column .-large-last {
    width: 100% !important;
  }
}
.app_img_full_width .feature-box-image {
  width: 100% !important;
  margin: unset;
  padding: unset;
  position: relative;
}
/*
###########################################################################
~~ Kontakt page (Webpage for 'Kontakt')
###########################################################################
*/
.header_background_shadow .centered-wrapper-background {
  box-shadow: inset 0px -120px 50px 0px rgba(0, 0, 0, 0.5);
}
.w-md-contact {
  width: 100%;
}
@media (min-width: 600px) {
  .w-md-contact {
    max-width: 1100px;
  }
}
@media (max-width: 1600px) {
  .w-md-contact {
    max-width: 900px;
  }
}
@media (max-width: 600px) {
  .fontsize-md-2 {
    font-size: 2em !important;
  }
}
.contact {
  margin-left: 10%;
  margin-right: 10%;
}
.contact textarea {
  width: 100%;
}
.contact .ce_rs_columns_start {
  border: unset !important;
  margin-bottom: 20px;
}
.contact .ce_rs_columns_start .widget {
  margin-top: 20px;
}
.contact .ce_rs_columns_start .widget label {
  font-family: Gabarito;
  color: #3f4136 !important;
}

.mandatory {
  color: #cc0000ed !important;
}

.contact .ce_rs_columns_start .widget input {
  width: 100%;
  border: 1px solid #6f725f;
  border-radius: 7px;
  box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.15);
}
.contact .ce_rs_columns_start .widget textarea {
  border-radius: 5px;
  border: 1px solid #6f725f;
}
.contact .ce_rs_columns_start .widget legend {
  display: none;
  font-family: Gabarito;
  color: #3f4136;
}
.contact .widget-submit button {
  left: 50%;
  translate: -50%;
  border-radius: 5px;
  background: #6f725f;
  font-size: 1.1em !important;
  text-align: center;
  color: white !important;
  box-shadow: 2px 3px 3px 0 rgba(0, 0, 0, 0.15);
}
/*
###########################################################################
~~ Slider
###########################################################################
*/
.expand_button {
  position: absolute;
  bottom: 39px;
  left: 48%;
  display: none;
}
.expand_button:hover {
  cursor: pointer;
}
.expand_back {
  display: none;
}
.expandable {
  display: block;
}
.expandable_content {
  height: auto;
  padding: 5%;
  padding-bottom: 0%;
  display: -webkit-box;
  -webkit-line-clamp: 10;
  -webkit-box-orient: vertical;
  white-space: initial;
  overflow: hidden;
  z-index: 5;
  box-shadow: inset 0 -10px 10px -12px gray;
}
.expanded_slide .expandable_content {
  box-shadow: unset;
}
.expandable_slide_box .rsts-crop {
  transition-duration: 284.793ms;
}
.expandable_slide_box h1,
.expandable_slide_box h2,
.expandable_slide_box h3,
.expandable_slide_box h4,
.expandable_slide_box h5,
.expandable_slide_box h6 {
  margin: 0 auto;
  word-break: break-word;
}
.expandable_slide {
  height: 100%;
  padding-bottom: 56px;
  display: grid;
  margin: 2%;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 5px;
  margin-bottom: 40px;
}
.expanded_slide .expandable_slide {
  width: 75%;
  height: auto !important;
  box-shadow: unset;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1200px) {
  .expanded_slide .expandable_slide {
    width: 100%;
    height: fit-content !important;
  }
}
.expanded_slide .expandable_slide .expand_button figure {
  display: none;
}
.expandable_slide_box .expanded_slide .expandable_slide .ce_text {
  -webkit-line-clamp: unset;
  overflow: visible;
  transition: all 0.3s;
  padding-left: 15px;
  padding-right: 23px;
}
.expandable_slide_box .expanded_slide .expandable_slide .ce_text p.review_text {
  display: block;
}
.expanded_crop {
  pointer-events: none;
}
.expandable_slide_box .expanded_slide .expandable_slide .utility_elements a {
  pointer-events: auto;
}

.expanded_slide .customer_review_slide {
  width: auto !important;
  height: auto !important;
  max-width: unset !important;
}

.expandable_slide_box .rsts-slide {
  display: flex !important;
  overflow: visible !important;
  justify-content: center !important;
}

.expandable_slide_box .expanded_slide .customer_review_slide .ce_text {
  -webkit-line-clamp: unset;
  overflow: visible;
  transition: all 0.3s;
}

.expandable_slide_box .expanded_slide .customer_review_slide .ce_text p.review_text {
  display: block;
}

.no_review_text .customer_review_slide {
  margin-left: auto;
  margin-right: auto;
}

.expandable_slide_box .rsts-crop {
  overflow-y: visible;
  overflow-x: clip;
}

.customer_review_slide {
  width: auto;
  height: 375px;
  border-radius: 20px;
  background: #fff;
  padding: 20px 10px 10px 10px;
  margin-left: 10px;
  margin-right: 10px;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.customer_review_slide .ce_text {
  display: -webkit-box;
  -webkit-line-clamp: 10;
  -webkit-box-orient: vertical;
  white-space: initial;
  overflow: hidden;
  z-index: 5;
}

.expandable_slide_box .customer_review_slide .ce_text p.review_text {
  display: inline;
}

.expand_review_button {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 10px;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  display: none;
}

.expand_review_button:hover {
  cursor: pointer;
}

.expanded_slide .expand_review_button {
  pointer-events: auto !important;
}

@media screen and (max-width: 850px) {
  .review_slider_column .rsts-slide .customer_review_slide {
    width: auto;
    height: 270px;
    margin-left: 20px;
    margin-right: 20px;
  }
}

@media screen and (max-width: 500px) {
  .review_slider_column .rsts-slide .customer_review_slide {
    height: 330px;
  }
}

@media screen and (max-width: 400px) {
  .customer_review_slide {
    max-width: 280px;
  }
}

@media screen and (max-width: 360px) {
  .expanded_slide .customer_review_slide {
    max-width: 280px !important;
    margin-left: auto;
    margin-right: auto;
  }
}

.rsts-skin-default .rsts-prev {
  width: 73px;
  height: 73px;
  background-image: url(https://hausnotruf-ellio.de/files/ellios/icons/slider-left-arrow-ellioS.svg);
  right: 100%;
  bottom: 45%;
  display: block !important;
}
.rsts-skin-default .rsts-next {
  width: 73px;
  height: 73px;
  left: 100%;
  bottom: 45%;
  background-image: url(https://hausnotruf-ellio.de/files/ellios/icons/right-slider-arrow-ellioS.svg);
  display: block !important;
}
.rsts-skin-default .rsts-prev:focus,
.rsts-skin-default .rsts-next:focus {
  outline: thick dotted;
}
.rsts-skin-default .rsts-prev:hover,
.rsts-skin-default .rsts-next:hover {
  background-color: rgba(197, 197, 197, 0.7);
}

@media screen and (max-width: 423px) {
  .rsts-skin-default .rsts-prev,
  .rsts-skin-default .rsts-next {
    width: 30px;
    height: 30px;
  }
}

.mt-fix-3 {
  margin-top: -65px !important;
}
.expanded_crop .rsts-slides {
  transform: unset !important;
  width: 100%;
}
.expanded_slide .expand_button {
  pointer-events: auto !important;
  position: unset;
}
.expanded_crop .rsts-slide {
  display: none;
}
.expanded_crop .rsts-slide.expanded_slide {
  transform: unset !important;
  z-index: 1;
  width: inherit !important;
  display: block;
  position: relative;
}
.rsts-view:has(> div.expanded_crop) .rsts-prev,
.rsts-view:has(> div.expanded_crop) .rsts-next {
  display: none;
}
.no_review_text > div {
  width: 100%;
}
.no_review_text .expandable_slide {
  margin-left: auto;
  margin-right: auto;
}
/*
###########################################################################
~~ Blog
###########################################################################
*/
.blog_wrapper h2 {
  padding-left: 90px;
  padding-right: 90px;
}
.expandable_blog {
  width: auto;
  height: 473px;
}
.expandable_blog .expandable_content h2 {
  margin-top: 0;
}
.expandable_blog .ce_image:first-child {
  width: 100%;
  max-height: 172.3px;
  display: inline-flex;
}
.expandable_blog .ce_image:first-child figure {
  width: 100%;
}
.expandable_blog .ce_image:first-child figure img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}
.expanded_slide .expandable_blog .ce_image:first-child {
  width: auto;
  max-height: unset;
  display: inherit;
}
.ellios_blog_slider .rsts-view .rsts-crop .rsts-slides .rsts-slide div {
  width: 100%;
}
.ellios_blog_slider .rsts-prev {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  background-size: 50px 50px;
}
.ellios_blog_slider .rsts-next {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  background-size: 50px 50px;
}
.box-shadow {
  width: 100%;
  height: 650px;
  padding: 10px;
}
.news-blog-item {
  border-radius: 20px;
  background: white;
  height: 100%;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.blog-flex-container {
  display: flex;
  flex-direction: column;
  height: 300px;
}
.news-blog-item-image {
  height: 250px;
  max-width: unset;
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.news-blog-item-image img {
  min-width: 100%;
  min-height: 100%;
  flex-shrink: 0;
  max-width: unset;
}
.news-blog-item-more {
  height: 14%;
}
.news-blog-item-more a {
  height: 100%;
  display: block;
  color: transparent;
  background-image: url(http://hausruf-ellio.local/files/ellio/Bilder_new/icons/plus_button.svg);
  background-repeat: no-repeat;
  background-position-x: center;
  background-position-y: 55%;
  background-size: 40px 40px;
}
.blog-header {
  margin: unset !important;
  margin-top: 15px !important;
  margin-left: 25px !important;
  margin-right: 25px !important;
}
.blog-teaser-text {
  height: 300px;
  padding: 25px;
  overflow: hidden;
}
.blog_wrapper_full {
  max-width: 50%;
  margin: auto;
}
.news-blog-item-full {
  display: flex;
  flex-direction: column;
  justify-content: end;
  height: 300px;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: cover !important;
}
.news-blog-item-full a {
  color: white;
  font-size: 0.8em;
}
/* 
###########################################################################
~~ Email Newsletter
###########################################################################
*/
.mail-inline-flex form .formbody {
  display: flex;
}
@media (max-width: 1200px) {
  .mail-inline-flex form .formbody {
    flex-direction: column;
  }
}
.mail-inline-flex form .formbody div {
  flex: 1;
  height: 65px;
  margin-right: 2%;
}
.mail-inline-flex form .formbody div .text {
  width: 100%;
  height: 100%;
}
.mail-inline-flex form .formbody div .submit {
  width: 100%;
  height: 100%;
  background: #6f725f;
  text-align: center;
  color: white !important;
}
.mail-inline-flex button {
  padding: calc(8px + 1%) !important;
}
@media (max-width: 1400px) {
  .colapse-xl {
    visibility: collapse;
    position: absolute;
  }
}
/*
###########################################################################
~~ Footer
###########################################################################
*/
footer {
  background: #3f4136;
  padding-bottom: 30px;
}
footer ul {
  list-style: none;
  padding-left: unset !important;
}
footer ul li {
  text-align: left;
}
footer ul li a span {
  font-family: DMSans14pt;
  font-size: 1.2em;
  color: white;
}
footer .footer-copyright {
  color: white;
  margin-bottom: unset;
}
.ellioS_cookie p,
.ellioS_cookie a {
  color: #3f4136 !important;
}
/*
###########################################################################
~~ Impressum
###########################################################################
*/
.impressum_wrapper {
  padding-left: calc(28% - 77px);
  padding-right: calc(28% - 77px);
}
.impressum_wrapper h1 {
  font-size: 3.7em !important;
}
.impressum_wrapper h2 {
  font-size: 2.7em !important;
}
@media (max-width: 760px) {
  .impressum_wrapper {
    padding-left: 6%;
    padding-right: 6%;
  }
  .impressum_wrapper h1 {
    font-size: 2em !important;
  }
  .impressum_wrapper h2 {
    font-size: 1.8em !important;
  }
}
/*
###########################################################################
~~ Impressum
###########################################################################
*/
.download-element a {
  color: #6f725f;
  text-decoration: none;
  font-size: 21px;
}
.download-element a:hover {
  text-decoration: underline;
}
/*
###########################################################################
~~ Umschlag
###########################################################################
*/
@media (max-width: 1400px) {
  .fix_column .ce_rs_column_start {
    width: 100% !important;
  }
}
@media (max-width: 1400px) {
  .fix_column .margin-top-xl {
    margin-top: 50px !important;
  }
}
@media (max-width: 900px) {
  .fix_column_900 .ce_rs_column_start {
    width: 100% !important;
  }
}
.bg-gray-box {
  background: rgba(0, 0, 0, 0.15);
}
/*
###########################################################################
~~ Other Links
###########################################################################
*/
#ellio_link_icon .hyperlink_img {
  width: 50px;
  height: 50px;
}
#ellio_link_icon .hyperlink_img:hover {
  content: url("../../ellios/icons/link_icons/ellio_link_icon_inverted.svg");
}
#ellios_icon_instagram .hyperlink_img {
  width: 50px;
  height: 50px;
}
#ellios_icon_instagram .hyperlink_img:hover {
  content: url("../../ellios/icons/link_icons/ellios_icon_instagram_inverted.svg");
}
#ellios_icon_youtube .hyperlink_img {
  width: 50px;
  height: 50px;
}
#ellios_icon_youtube .hyperlink_img:hover {
  content: url("../../ellios/icons/link_icons/ellios_icon_youtube_inverted.svg");
}
/*
###########################################################################
~~ Responsives
###########################################################################
*/
.show_mobile {
  display: none !important;
}
.show_tablet {
  display: none !important;
}
@media (max-width: 900px) {
  .tablet_flex-column {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .tablet_text-center {
    text-align: center;
  }
}
@media (max-width: 850px) {
  .hide_tablet {
    display: none !important;
  }
  .show_tablet {
    display: block !important;
  }
}
@media (max-width: 500px) {
  .hide_mobile {
    display: none !important;
  }
  .show_mobile,
  .show_mobile_only {
    display: block !important;
  }

  .mobile_flex-column {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .mobile_text-center {
    text-align: center;
  }
}

.translate-up-100 {
  translate: 0% -100%;
}
.w-10 {
  width: 10%;
}
.w-20 {
  width: 20%;
}
.w-80 {
  width: 80%;
}
.w-90 {
  width: 90%;
}
.w-250 {
  width: 250px;
}
.max-width-500 {
  max-width: 500px;
}
.p-lr-5 {
  padding-left: 5%;
  padding-right: 5%;
}
.p-lr-10 {
  padding-left: 10%;
  padding-right: 10%;
}
.p-lr-20 {
  padding-left: 20%;
  padding-right: 20%;
}
.p-t-5 {
  padding-top: 5%;
}
.p-t-300p {
  padding-top: 300px !important;
}
.p-r-20p {
  padding-right: 20px;
}
.p-b-5 {
  padding-bottom: 5%;
}
.p-b-200p {
  padding-bottom: 200px !important;
}
.m-b-0 {
  margin-bottom: 0px !important;
}
.m-b-5 {
  margin-bottom: 5% !important;
}
.m-b-10 {
  margin-bottom: 10%;
}
.m-t-0 {
  margin-top: 0px !important;
}
.m-t-5 {
  margin-top: 5% !important;
}
.m-t-10 {
  margin-top: 10%;
}
.m-t-30p {
  margin-top: 30px !important;
}
.m-t-320-imp {
  margin-top: 260px !important;
}
@media (max-width: 600px) {
  .m-t-320-imp {
    margin-top: 150px !important;
  }
}
.m-lr-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}
.m-lr-10 {
  margin-left: 10%;
  margin-right: 10%;
}
.m-lr-5 {
  margin-left: 5%;
  margin-right: 5%;
}
@media (max-width: 1400px) {
  .height_350_xxl {
    height: 350px;
  }
}
@media (max-width: 576px) {
  .w-sm-35 {
    width: 35%;
  }
  .w-sm-60 {
    width: 60%;
  }
  .w-sm-75 {
    width: 75%;
  }
  .m-lr-sm-5 {
    margin-left: 5%;
    margin-right: 5%;
  }
  .m-lr-sm-15 {
    margin-left: 15%;
    margin-right: 15%;
  }
  .m-tb-sm-5 {
    margin-top: 5%;
    margin-bottom: 5%;
  }
  .m-tb-sm-15 {
    margin-top: 15%;
    margin-bottom: 15%;
  }
  .p-lr-sm-5 {
    padding-left: 5%;
    padding-right: 5%;
  }
  .p-lr-sm-15 {
    padding-left: 15%;
    padding-right: 15%;
  }
  .p-tb-sm-5 {
    padding-top: 5%;
    padding-bottom: 5%;
  }
  .p-tb-sm-15 {
    padding-top: 15%;
    padding-bottom: 15%;
  }
  .p-lr-20 {
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media (min-width: 768px) {
  .w-md-35 {
    width: 35%;
  }
  .w-md-75 {
    width: 75%;
  }
  .w-md-650px {
    max-width: 650px;
  }
  .w-md-550px {
    max-width: 550px;
  }
  .w-md-415px {
    width: 415px;
  }
  .m-lr-md-5 {
    margin-left: 5%;
    margin-right: 5%;
  }
  .m-lr-md-10 {
    margin-left: 10%;
    margin-right: 10%;
  }
  .m-lr-md-15 {
    margin-left: 15%;
    margin-right: 15%;
  }
  .m-lr-md-35 {
    margin-left: 35%;
    margin-right: 35%;
  }
  .m-tb-md-5 {
    margin-top: 5%;
    margin-bottom: 5%;
  }
  .m-tb-md-15 {
    margin-top: 15%;
    margin-bottom: 15%;
  }
  .p-lr-md-5 {
    padding-left: 5%;
    padding-right: 5%;
  }
  .p-lr-md-10 {
    padding-left: 10%;
    padding-right: 10%;
  }
  .p-lr-md-15 {
    padding-left: 15%;
    padding-right: 15%;
  }
  .p-lr-md-25 {
    padding-left: 25%;
    padding-right: 25%;
  }
  .p-lr-md-30 {
    padding-left: 30%;
    padding-right: 30%;
  }
  .p-lr-md-35 {
    padding-left: 35%;
    padding-right: 35%;
  }
  .p-lr-md-40 {
    padding-left: 38%;
    padding-right: 38%;
  }
  .p-tb-md-5 {
    padding-top: 5%;
    padding-bottom: 5%;
  }
  .p-tb-md-15 {
    padding-top: 15%;
    padding-bottom: 15%;
  }
}
@media (min-width: 992px) {
  .w-lg-35 {
    width: 35%;
  }
  .w-lg-75 {
    width: 75%;
  }
  .m-lr-lg-5 {
    margin-left: 5%;
    margin-right: 5%;
  }
  .m-lr-lg-15 {
    margin-left: 15%;
    margin-right: 15%;
  }
  .m-tb-lg-5 {
    margin-top: 5%;
    margin-bottom: 5%;
  }
  .m-tb-lg-15 {
    margin-top: 15%;
    margin-bottom: 15%;
  }
  .p-lr-lg-5 {
    padding-left: 5%;
    padding-right: 5%;
  }
  .p-lr-lg-15 {
    padding-left: 15%;
    padding-right: 15%;
  }
  .p-tb-lg-5 {
    padding-top: 5%;
    padding-bottom: 5%;
  }
  .p-tb-lg-15 {
    padding-top: 15%;
    padding-bottom: 15%;
  }
}
@media (max-width: 1250px) {
  .p-lr-10 {
    padding-left: 5%;
    padding-right: 5%;
  }
  .p-lr-20 {
    padding-left: 10%;
    padding-right: 10%;
  }
}
@media (min-width: 1400px) {
  .w-xxl-35 {
    width: 35%;
  }
  .w-xxl-75 {
    width: 75%;
  }
  .m-lr-xxl-5 {
    margin-left: 5%;
    margin-right: 5%;
  }
  .m-lr-xxl-15 {
    margin-left: 15%;
    margin-right: 15%;
  }
  .m-tb-xxl-5 {
    margin-top: 5%;
    margin-bottom: 5%;
  }
  .m-tb-xxl-15 {
    margin-top: 15%;
    margin-bottom: 15%;
  }
  .p-l-xxl-10 {
    padding-left: 10%;
  }
  .p-lr-xxl-5 {
    padding-left: 5%;
    padding-right: 5%;
  }
  .p-lr-xxl-15 {
    padding-left: 15%;
    padding-right: 15%;
  }
  .p-tb-xxl-5 {
    padding-top: 5%;
    padding-bottom: 5%;
  }
  .p-tb-xxl-15 {
    padding-top: 15%;
    padding-bottom: 15%;
  }
}
/*# sourceMappingURL=custom.css.map */
