@charset "UTF-8";
/*
|---------------------------------------------------------------
| indual CMS
| Copyright by indual GmbH, Brig-Glis (https://www.indual.ch)
|---------------------------------------------------------------
*/
/*
|---------------------------------------------------------------
| indual CMS
| Copyright by indual GmbH, Brig-Glis (https://www.indual.ch)
|---------------------------------------------------------------
*/
@font-face {
  font-family: "Source Sans Pro";
  src: url("fonts/SourceSans3-Italic-VariableFont_wght.woff2") format("woff2");
  font-weight: 1 999;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Source Sans Pro";
  src: url("fonts/SourceSans3-VariableFont_wght.woff2") format("woff2");
  font-weight: 1 999;
  font-style: normal;
  font-display: swap;
}
/*
|--------------------------------------------------------------------------
| phpComasy - content management system
|--------------------------------------------------------------------------
|
| Copyright indual GmbH, Brig (https://www.indual.ch)
| phpComasy is released under his own licence: https://www.phpcomasy.com/licence/
|
 */
/* --------------------------------------------------------------------------

Content in this file:

- global helpers
- floating classes
- content: accordeon & table
- forms: checkbox & captcha
- entry links
- cookie banner / privacy banner
- tooltip
- custom font awesome

-----------------------------------------------------------------------------*/
/* !@group global helpers */
* {
  margin: 0;
  padding: 0;
}

a, object {
  outline: none !important;
}

.cf,
.clear {
  float: none;
  clear: both;
  line-height: 0;
  width: 1px;
  margin: 0;
  padding: 0;
  font-size: 0;
  height: 0;
}

.nomargin {
  margin: 0 !important;
}

.nopadding {
  padding: 0 !important;
}

.fullwidth,
.p_fullwidth input {
  width: 100% !important;
}

hr {
  display: none;
}

.nobr {
  white-space: nowrap;
}

.hidden {
  display: none;
}

.sr-only {
  clip: rect(0px, 0px, 0px, 0px) !important;
  height: 1px !important;
  position: absolute !important;
  width: 1px !important;
  border-width: 0px !important;
  border-style: initial !important;
  border-color: initial !important;
  -o-border-image: initial !important;
     border-image: initial !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0px !important;
  display: block !important;
}

/* @end */
/* @group picture styles */
.resource_background {
  display: block;
  position: relative;
}

.resource.picture:not(.picture_content) {
  float: left;
}

.resource.picture a img,
.resource.picture img {
  display: block;
}

/* @end */
/* @group floating classes */
.float_right {
  float: right;
}

.float_left, .float_left_no_clear {
  float: left;
  position: relative;
}

.float_right_with_clear {
  float: right;
  clear: right;
}

.float_left_with_clear {
  float: left;
  clear: left;
}

.clear {
  clear: both;
  float: none;
}

label.nofloat {
  clear: none;
  padding: 0;
  margin: 0;
  float: none !important;
  width: auto !important;
  max-width: none;
}

/* @end */
/* @group content: accordeon & table */
.accordeon {
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

.accordeon_content {
  display: none;
  padding: 2px 0 14px 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

table th,
table td {
  vertical-align: top;
}

.table_wrap_container,
.table_wrap {
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.table_wrap_container {
  overflow: hidden;
  position: relative;
  margin-bottom: 15px;
}
.table_wrap_container.visible_indicator {
  position: relative;
  padding: 25px 0 0;
}
.table_wrap_container.visible_indicator .table_wrap_container table,
.table_wrap_container.visible_indicator .news_events_table {
  width: auto !important;
}
.table_wrap_container.visible_indicator .table_scroll_indicator {
  display: block;
}

.table_scroll_indicator {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
}
.table_scroll_indicator:hover {
  cursor: pointer;
}

/* @end */
/* @group forms: checkbox & captcha */
label.label_remember_me_checkbox {
  display: block;
  padding: 4px 0;
}

input#remember_me {
  width: auto;
}

label.label_remember_me_checkbox label.checkbox {
  display: inline;
  width: auto !important;
  float: none !important;
  font-size: 93%;
}

label.label_remember_me_checkbox input {
  margin-right: 5px;
}

label.label_remember_me_checkbox label {
  pointer-events: none;
}

div.captcha_protection {
  padding: 14px 15px;
  background: #eee;
  background: linear-gradient(to bottom, #fff, #eee);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#eeeeee");
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: 0 0 3px #eee;
  width: auto;
  display: inline-block;
  zoom: 1;
  *display: inline;
  max-width: 100%;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

div.captcha_protection span.captcha_title {
  font-weight: normal;
  display: block;
  font-size: 12px;
  line-height: normal;
  border-bottom: 1px solid #ccc;
  margin: -14px -15px 8px;
  padding: 8px 15px;
  background: linear-gradient(to bottom, #fff, #eee);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#eeeeee");
  border-radius: 7px 7px 0 0;
  color: #333;
}

div.captcha_protection span.captcha_input_title {
  font-weight: normal;
  margin-bottom: 1px;
  display: block;
  color: #555;
}

div.captcha_protection label {
  margin-right: -8px;
  display: none !important;
}

div.captcha_protection span#captcha_help_link {
  font-size: 10px;
  text-decoration: underline;
  position: relative;
  cursor: help;
  color: #666;
  white-space: nowrap;
}

div.captcha_protection span#captcha_help_link:hover {
  color: #333;
}

div.captcha_protection span#captcha_help_text {
  position: absolute;
  top: 10px;
  right: -195px;
  width: 180px;
  background: #f0f0f0;
  border: 1px solid #666;
  border-radius: 5px;
  box-shadow: 0 0 3px #666;
  padding: 5px 8px;
  background: #eee;
  background: linear-gradient(to bottom, #f0f0f0, #eee);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f0f0f0", endColorstr="#eee");
}

div.captcha_protection img.captcha_img {
  width: 220px;
}

/* @end */
/* @group entire link */
.listing_entry_link,
.overview_entry_link,
.portlet_content_entry_link,
.portlet_listing_entry_link,
.portlet_shop_article_entry_link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  cursor: pointer;
  z-index: 25;
}

/* @end entire link */
/* @group cookie banner / privacy banner */
#privacy_banner {
  position: fixed;
  left: 20px;
  bottom: 20px;
  width: 100%;
  max-width: 460px;
  background: rgba(0, 0, 0, 0.85);
  z-index: 1000;
}
#privacy_banner #privacy_banner_inner {
  padding: 20px;
  font-size: 14px;
  line-height: 21px;
  color: #fff;
  text-align: left;
  position: relative;
}
#privacy_banner #privacy_banner_inner #privacy_icon {
  display: inline-block;
  vertical-align: middle;
  width: 86px;
  margin-right: -5px;
}
#privacy_banner #privacy_banner_inner #privacy_icon i {
  font-size: 66px;
  line-height: 66px;
}
@media screen and (max-width: 380px) {
  #privacy_banner #privacy_banner_inner #privacy_icon {
    display: none;
  }
}
#privacy_banner #privacy_banner_inner #privacy_description_wrap {
  display: inline-block;
  vertical-align: middle;
  width: calc(100% - 86px);
}
#privacy_banner #privacy_banner_inner #privacy_description_wrap .privacy_responsive_icon {
  display: none;
  float: left;
  margin-right: 10px;
}
#privacy_banner #privacy_banner_inner #privacy_description_wrap .privacy_responsive_icon i {
  font-size: 30px;
  line-height: 30px;
}
@media screen and (max-width: 380px) {
  #privacy_banner #privacy_banner_inner #privacy_description_wrap {
    width: 100%;
  }
  #privacy_banner #privacy_banner_inner #privacy_description_wrap .privacy_responsive_icon {
    display: block;
    float: left;
  }
  #privacy_banner #privacy_banner_inner #privacy_description_wrap .privacy_message {
    overflow: hidden;
  }
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button,
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information {
  margin-top: 10px;
  display: inline-block;
  vertical-align: middle;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button {
  margin-right: 10px;
  width: auto;
  padding: 8px 14px 7px;
  text-decoration: none;
  color: #fff;
  background: rgba(255, 255, 255, 0.18);
  border: none;
  outline: none;
  cursor: pointer;
  backface-visibility: hidden;
  transition: color 0.2s ease-out, background 0.2s ease-out;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button i {
  margin-right: 6px;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button i:before {
  color: #fff;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button:hover, #privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button:focus, #privacy_banner #privacy_banner_inner #privacy_buttons #privacy_button:active {
  opacity: 0.7;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information {
  position: relative;
  text-decoration: none;
  color: #fff;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information:before {
  content: "";
  position: absolute;
  top: auto;
  left: 0;
  right: 0;
  bottom: 2px;
  width: 100%;
  height: 1px;
  background: #fff;
}
#privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information:hover, #privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information:focus, #privacy_banner #privacy_banner_inner #privacy_buttons #privacy_more_information:active {
  opacity: 0.7;
}
@media screen and (max-width: 500px) {
  #privacy_banner {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: 100%;
  }
}

/* @end */
/* @group tooltip  */
.tooltipster-default {
  border-radius: 5px;
  background: #343333;
  color: #fff;
}
.tooltipster-default .tooltipster-content {
  font-family: Arial, sans-serif;
  font-size: 12px;
  line-height: 14px;
  padding: 8px;
  overflow: hidden;
}

.tooltipster-base {
  padding: 0;
  font-size: 0;
  line-height: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999999;
  pointer-events: none;
  width: auto;
  overflow: visible;
}
.tooltipster-base .tooltipster-content {
  overflow: hidden;
}

.tooltipster-arrow {
  display: block;
  text-align: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.tooltipster-arrow span {
  display: block;
  width: 0;
  height: 0;
  position: absolute;
}

.tooltipster-arrow-border {
  display: block;
  width: 0;
  height: 0;
  position: absolute;
}

.tooltipster-arrow-top span,
.tooltipster-arrow-top-right span,
.tooltipster-arrow-top-left span {
  border-left: 8px solid transparent !important;
  border-right: 8px solid transparent !important;
  border-top: 8px solid;
  bottom: -7px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.tooltipster-arrow-top .tooltipster-arrow-border,
.tooltipster-arrow-top-right .tooltipster-arrow-border,
.tooltipster-arrow-top-left .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-top: 9px solid;
  bottom: -7px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.tooltipster-arrow-bottom span,
.tooltipster-arrow-bottom-right span,
.tooltipster-arrow-bottom-left span {
  border-left: 8px solid transparent !important;
  border-right: 8px solid transparent !important;
  border-bottom: 8px solid;
  top: -7px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.tooltipster-arrow-bottom .tooltipster-arrow-border,
.tooltipster-arrow-bottom-right .tooltipster-arrow-border,
.tooltipster-arrow-bottom-left .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-bottom: 9px solid;
  top: -7px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.tooltipster-arrow-top-left span,
.tooltipster-arrow-bottom-left span {
  left: 6px;
}
.tooltipster-arrow-top-left .tooltipster-arrow-border,
.tooltipster-arrow-bottom-left .tooltipster-arrow-border {
  left: 5px;
}

.tooltipster-arrow-top-right span,
.tooltipster-arrow-bottom-right span {
  right: 6px;
}
.tooltipster-arrow-top-right .tooltipster-arrow-border,
.tooltipster-arrow-bottom-right .tooltipster-arrow-border {
  right: 5px;
}

.tooltipster-arrow-left span,
.tooltipster-arrow-left .tooltipster-arrow-border {
  border-top: 8px solid transparent !important;
  border-bottom: 8px solid transparent !important;
  border-left: 8px solid;
  top: 50%;
  margin-top: -7px;
  right: -7px;
}

.tooltipster-arrow-left .tooltipster-arrow-border {
  border-top: 9px solid transparent !important;
  border-bottom: 9px solid transparent !important;
  border-left: 9px solid;
  margin-top: -8px;
}

.tooltipster-arrow-right span,
.tooltipster-arrow-right .tooltipster-arrow-border {
  border-top: 8px solid transparent !important;
  border-bottom: 8px solid transparent !important;
  border-right: 8px solid;
  top: 50%;
  margin-top: -7px;
  left: -7px;
}

.tooltipster-fade {
  opacity: 0;
  transition-property: opacity;
}

.tooltipster-fade-show {
  opacity: 1;
}

/* @end */
/* @group font Awesome */
.fa-file-docx:before {
  content: "\e5ed";
}

.fa-photo:before {
  content: "\f03e";
}

/* @end */
/* @group system page and paragraphs */
.system_page #header_image,
.system_page #subnavigation,
.system_page #navigation,
.system_page .logo_wrap,
.system_page #mountains {
  display: none;
}
.system_page #contentframe #content {
  background: none;
  box-shadow: none;
  padding: 0;
}
.system_page #contentframe #content > #page_title {
  display: none;
}
.system_page #contentframe #content ol {
  margin: 0;
}
.system_page h1 {
  border-bottom: none;
}

/* @end */
/* @group basics */
html,
body {
  min-height: 100%;
  height: 100%;
}

body {
  --management-highlight-color: #cc2935;
  --management-highlight-color-rgb: 204, 41, 53;
}

body {
  position: relative;
  font: 16px/24px "Source Sans Pro", Arial, Tahoma, sans-serif;
  color: #333;
  margin: 0;
  padding: 0;
  height: auto;
}

body:before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  z-index: 50;
  transition: all 0.3s ease-out;
}

body.navi_open {
  overflow: hidden;
  height: 100%;
}

body.navi_open:before {
  opacity: 0.8;
  visibility: visible;
}

body > nav {
  display: none;
}

#siteframe {
  max-width: 951px;
  margin: 0 auto;
  padding: 0 20px;
}

#contentframe {
  clear: both;
}

#contentframe #header_image {
  margin: 15px 0;
  box-shadow: 0 0 10px #ccc;
}

#contentframe #header_image img {
  display: block;
  width: 100%;
  height: auto;
}

#contentframe #content {
  padding: 30px;
  box-shadow: 0 0 10px #ccc;
  background-color: #fff;
}

#mountains {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: -1;
}

#mountains img {
  display: block;
  width: 100%;
  height: auto;
}

/* @end */
/* @group header */
#logo {
  margin: 15px 0;
  width: 66.3%;
  float: left;
}

#logo img {
  display: block;
  width: 100%;
  height: auto;
}

#logo img.mobile {
  display: none;
}

#login_button {
  margin-top: 50px;
  float: right;
}

#login_button input,
.login_form input[type=submit] {
  cursor: pointer;
  border: 0;
  background: #eee;
  color: #cc2935;
  padding: 8px 14px;
  font-weight: bold;
  font-size: 14px;
  -webkit-appearance: none;
  border-radius: 0;
}

#login_button input:hover,
.login_form input[type=submit]:hover {
  background: #cc2935 none;
  color: #fff;
}

.login_form > p:first-child {
  margin-top: 14px;
}

.login_form label {
  width: 150px;
  display: block;
  float: left;
}

/* @end */
/* @group footer */
#footer {
  font-size: 12px;
  padding: 10px 0;
  margin: 0;
  color: #888;
  text-align: right;
}

#footer a {
  color: #888;
  text-decoration: none;
}

#footer a:hover {
  color: #000;
}

/* @end */
/* @group ressources */
.resource_container.documents {
  margin: 20px 0 0 0;
  padding: 0;
  border: none;
}

.resource_container.documents h2 {
  display: none;
}

.resource_container.documents .document a {
  font-weight: 600;
}

.resource_container.documents .document .description {
  display: block;
  padding: 0 0 15px 23px;
  font-style: italic;
}

.resource_container.documents .document .description > *:last-child {
  margin-bottom: 0;
}

.resource_container {
  margin: 0;
  padding: 0;
}

.resource.picture {
  float: left;
  margin: 0;
}

/* @end */
/* @group management */
.management_container {
  font: 14px/22px "Source Sans Pro", Arial, Tahoma, sans-serif;
  color: #333;
}

/* --- message --- */
.message {
  color: #CC2935;
  font-weight: 600;
  border: 0;
  border-bottom: 2px solid #CC2935;
  margin: 20px 0;
  padding: 0 0 8px;
  background: none;
}

/* --- admin panel --- */
#administration_panel {
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.2);
  font-size: 15px;
  border-radius: 3px;
  width: 230px;
}

#administration_panel h1 {
  background-color: #CC2935;
  color: #FFF;
  margin: 0;
  padding: 7px 10px;
  font-weight: 700;
  text-transform: none;
  font-size: 18px;
}
#administration_panel h1:before {
  display: none;
}

#administration_panel h2 {
  background-color: #eee;
  color: #333;
  padding: 7px 10px;
  font-size: 16px;
  font-weight: 300;
  text-transform: none;
}

#administration_panel .admin_part {
  background: #fff none;
  padding: 10px;
}

#administration_panel .state-published {
  color: #CC2935;
}

/* --- pagination --- */
.pagination {
  margin: 30px 0 0;
}

.pagination a {
  display: inline-block;
  margin: 0;
  padding: 7px 14px;
  color: #000;
  font-weight: 600;
  background: #eee;
  transition: all 0.3s ease-out;
}

.pagination a + a {
  margin-left: 8px;
}

.pagination a:hover {
  background: #ddd;
}

.pagination a.inactive {
  display: none;
}

.pagination a.current {
  color: #fff;
  background: #CC2935;
}

/* @end */
/* @group links and paragraphs */
a {
  color: #CC2935;
  text-decoration: none;
}

a:hover {
  color: #333;
}

.content p {
  margin: 0 0 20px;
}

/* @end */
/* @group headings */
h1 {
  font-weight: normal;
  border-bottom: 1px solid #8C8C8C;
}

.introduction {
  font-weight: 700;
  margin: 0 0 20px;
}

h1,
h1 a {
  font-size: 28px;
  line-height: 34px;
  font-weight: 400;
  text-decoration: none;
  color: #000;
  margin: 0 0 30px 0;
  padding: 0 0 12px 0;
}

h1 {
  border-bottom: 1px solid #ddd;
}

h2, h2 a {
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  color: #000;
  margin: 0 0 10px;
}

h2 a.phone {
  display: inline-block;
  position: relative;
}

h2 a.phone:before {
  content: "\f095";
  font-family: "Font Awesome 6 Pro";
  display: inline-block;
  margin: 0 9px 0 7px;
  vertical-align: -1px;
}

h3, h3 a {
  font-size: 20px;
  line-height: 26px;
  font-weight: 400;
  color: #000;
  margin: 0 0 7px;
}

h4, h4 a,
h5, h5 a,
h6, h6 a {
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  color: #000;
  margin: 0 0 5px 0;
  padding: 0;
}

#content > h3 > img,
#content > p > strong > img,
#content > p > a > img,
#content > p > img {
  display: inline-block;
  max-width: 100%;
  width: auto !important;
  height: auto !important;
}

/* --- danger map --- */
.danger_map {
  display: block;
  float: left;
  width: 30%;
  margin: 0 30px 0 0;
}

.danger_map img {
  float: none !important;
  clear: both;
  display: block;
  width: 100%;
  height: auto;
}

/* @end */
/* @group lists */
#content ul,
#content ol {
  margin: 0 0 15px 14px;
}

/* @end */
/* @group table */
.table_wrap_container,
.table_wrap {
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.table_wrap_container {
  overflow: hidden;
  margin: 0 0 20px 0;
}

.table_scroll_indicator {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
  width: 18px;
  height: 18px;
  display: none;
}

.table_scroll_indicator:before {
  content: "\f0ec";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  font-family: "Font Awesome 6 Pro";
  font-size: 18px;
  line-height: 18px;
  text-align: center;
  z-index: 20;
  color: #333;
}

#content table {
  width: 100% !important;
  table-layout: auto;
  margin: 0 0 10px;
}

table th,
table td {
  padding: 10px 15px 10px 0;
}

#content table th,
#content table td {
  border-bottom: 1px solid #ddd;
  text-align: left;
}

#content table th {
  font-weight: 700;
  border-bottom: 1px solid #000;
}

/* @end */
/* @group gallery */
.pictures.gallery {
  margin: 0 -20px 0 0;
}

.pictures.gallery .picture {
  display: block;
  float: left;
  width: 20%;
  margin: 0;
  padding: 0 20px 20px 0;
  box-sizing: border-box;
}

.pictures.gallery .picture .resource_link {
  padding: 0;
  border: 0;
}

.pictures.gallery .picture .resource_subtitle {
  display: none;
}

.pictures.gallery .picture img {
  display: block;
  width: 100%;
  height: auto;
}

/* @end */
/* @group root navigation */
#navigation ul {
  background-color: #cc2935;
  padding: 0;
  margin-bottom: 1px;
  height: 40px;
}

#navigation ul li {
  list-style: none;
  display: inline;
  float: left;
  margin: 0;
  padding: 0;
  border-right: 1px solid #fff;
  letter-spacing: 0.1em;
}

#navigation ul li a {
  float: left;
  padding: 0 20px;
  height: 40px;
  line-height: 40px;
  color: #fff;
  font-weight: normal;
  text-decoration: none;
  font-size: 15px;
}

#navigation ul li.current a,
#navigation ul li:hover {
  background-color: #900006;
}

/* @end */
/* @group sub navigation */
#subnavigation ul {
  background-color: #eee;
  padding: 5px;
}
#subnavigation ul:not(:first-of-type) {
  display: none;
}

#subnavigation ul li {
  list-style: none;
  display: inline;
  padding-top: 6px;
  padding-bottom: 6px;
  font-size: 14px;
  border-right: 1px solid #fff;
}
#subnavigation ul li .level2 {
  display: none;
}

#subnavigation ul li a {
  color: #666;
  text-decoration: none;
  padding: 11px;
  padding-top: 5px;
  padding-bottom: 5px;
}

#subnavigation ul li.current a {
  color: #cc2935;
}

#subnavigation ul li:hover {
  background-color: #e9e9e9;
}

/* @end */
/* @group responsive navigation */
.rwd_navigation {
  display: block;
  list-style: none;
  padding: 25px;
}

.rwd_navigation li a {
  display: block;
  text-decoration: none;
  color: #333;
}

.rwd_navigation li.current > a {
  color: #cc2935;
}

.rwd_navigation > li:first-child > a {
  border-top: 0;
  padding-top: 0;
}

.rwd_navigation > li > a {
  padding: 14px 5px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  border-top: 1px solid #ddd;
}

.rwd_navigation ul.level1 {
  margin: -8px 0 0;
  padding: 0 0 14px;
  list-style: none;
}

.rwd_navigation ul.level1 > li > a {
  color: #aaa;
  font-size: 14px;
  line-height: 20px;
  padding: 3px 5px;
  font-weight: 300;
  position: relative;
}

.rwd_navigation ul.level1 > li.current > a {
  color: #cc2935;
}

.rwd_navigation ul.level1 ul {
  display: none;
}

/* -- login button --- */
#rwdnav #login_button {
  display: none;
  float: none;
  clear: both;
  margin: 20px 30px 5px;
}

#rwdnav #login_button input {
  padding: 8px 15px;
  font-size: 14px;
}

/* @end */
/* @group listing */
.listing-description {
  overflow: hidden;
  margin: 0 0 30px;
}

.listing-description .listing-description-inline > *:last-child {
  margin-bottom: 0;
}

.listing_entry {
  position: relative;
  margin: 0;
  padding: 0;
}

.listing_entry + .listing_entry {
  margin-top: 30px;
}

.listing_entry .listing_content_container {
  overflow: hidden;
}

.listing_entry .listing-date {
  font-weight: 600;
  font-size: 14px;
  color: #888;
}

.listing_entry .pictures {
  float: left;
  width: 30%;
  margin: 5px 30px 5px 0;
}

.listing_entry .pictures .picture,
.listing_entry .pictures .picture img {
  display: block;
  width: 100%;
  height: auto;
  float: none;
}

.listing_entry .pictures .picture + .picture {
  display: none;
}

.listing_entry .listing-more-button {
  display: inline-block;
  margin: 0;
  padding: 7px 14px;
  color: #fff;
  font-weight: 600;
  background: #CC2935;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

.listing_entry .listing-more-button:hover {
  background: #900006;
}

.listing_entry .listing_actions {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 7px 10px;
  background: #eee;
}

.listing_entry .listing_actions li,
.listing_entry .listing_actions a {
  color: #333;
  margin: 0;
  padding: 0;
  width: auto;
  height: auto;
}

.listing_entry .listing_actions li:hover,
.listing_entry .listing_actions a:hover {
  color: #CC2935;
}

.listing_entry .listing_actions li i.fa,
.listing_entry .listing_actions a i.fa {
  margin: 0 3px;
}

/* @end */
/* @group persönliche daten */
#module_persoenliche_daten legend {
  border: 0;
  background: #fff;
  padding: 0 10px;
  margin: 0 -10px;
}

#module_persoenliche_daten fieldset {
  padding: 10px 20px 20px;
  border: 1px solid #ddd;
  border-radius: 0;
}

#module_persoenliche_daten p {
  margin: 0 0 10px;
}

/* @end */
/* @group kalender */
#module_kalender fieldset + p {
  margin: 20px 0;
}

#module_kalender legend {
  border: 0;
  font-weight: 700;
  background: #fff;
  padding: 0 10px;
  margin: 0 -10px;
}

#module_kalender fieldset {
  padding: 10px 20px 20px;
  border: 1px solid #ddd;
  border-radius: 0;
}

#module_kalender fieldset + fieldset {
  margin-top: 20px;
}

#module_kalender fieldset fieldset legend {
  font-weight: 400;
}

#module_kalender fieldset fieldset {
  margin: 0;
  padding: 5px 20px 15px;
}

#module_kalender fieldset fieldset + fieldset {
  margin-top: 15px;
}

#module_kalender label {
  display: inline-block;
  margin: 0;
  padding: 0 20px 0 0;
}

#module_kalender input {
  display: inline-block;
  margin: 0;
  padding: 5px 10px;
  border: 1px solid #ccc;
  border-radius: 2px;
  font: 400 16px/24px "Source Sans Pro", Arial, Tahoma, sans-serif;
  box-sizing: border-box;
}

#module_kalender input#comment {
  width: 300px;
}

#module_kalender .button {
  display: inline-block;
  margin: 0;
  padding: 6px 15px 8px;
  background: #cc2935;
  border: 0;
  outline: 0;
  font: 400 16px/24px "Source Sans Pro", Arial, Tahoma, sans-serif;
  color: #fff;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

#module_kalender .button:hover,
#module_kalender .button:focus {
  background: #333;
}

#module_kalender table {
  max-width: 420px;
  width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
}

#module_kalender table th,
#module_kalender table td {
  padding: 4px 8px !important;
  border: 0;
}

#module_kalender table td.actday {
  background: #eee !important;
}

#module_kalender .table_wrap_container {
  padding: 0;
}

#module_kalender .table_scroll_indicator:before {
  display: none;
}

#module_kalender table input {
  display: inline-block;
  margin: 0;
  padding: 2px 4px;
  border: 0;
  outline: 0;
  color: #000;
  font: 10px/16px "Source Sans Pro", Arial, Tahoma, sans-serif;
  background: #e1e1e1;
  cursor: pointer;
  box-sizing: border-box;
  transition: all 0.3s ease-out;
}

#module_kalender table input:hover,
#module_kalender table input:focus {
  background: #777;
  color: #fff;
}

#module_kalender table input[type=checkbox] {
  margin: 0 5px 0 0;
}

#module_kalender table ~ p {
  padding-top: 20px;
}

/* @end */
/* @group email */
#module_email legend {
  border: 0;
  background: #fff;
  padding: 0 10px;
  margin: 0 -10px;
}

#module_email fieldset {
  padding: 10px 20px 20px;
  border: 1px solid #ddd;
  border-radius: 0;
}

#module_email fieldset + p {
  margin: 20px 0;
}

#module_email p {
  margin: 0 0 10px;
}

#module_email fieldset > *:last-child {
  margin-bottom: 0;
}

#module_email fieldset fieldset fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}

#module_email fieldset fieldset fieldset + fieldset {
  margin-top: 10px;
}

#module_email fieldset fieldset fieldset legend {
  margin: 0 0 10px;
  padding: 0;
}

#module_email fieldset fieldset fieldset p {
  margin: 0 0 3px;
}

#module_email #mailAdd span + input,
#module_email #plus_button input {
  width: 100%;
}

#module_email #mailAdd span + input {
  margin: 0 0 0 10px;
}

div#module_email fieldset input[type=checkbox] {
  display: block;
  float: left;
  margin: 0 8px 0 0;
}

div#module_email fieldset input[type=checkbox] + label {
  display: block;
  clear: none;
}

#module_email fieldset [id^=mailAdd-] {
  margin: 0 0 11px;
}
#module_email fieldset [id^=mailAdd-] .select2-container {
  width: calc(100% - 337px) !important;
}
#module_email fieldset [id^=mailAdd-] div.controls {
  display: inline-flex;
  margin-left: 10px;
}
#module_email fieldset [id^=mailAdd-] div.controls #delete_button {
  width: 45px;
  height: 45px;
  line-height: 42px;
}

/* @end */
/* @group kursanmeldung */
#module_kursanmeldung legend {
  border: 0;
  background: #fff;
  padding: 0 10px;
  margin: 0 -10px;
}

#module_kursanmeldung fieldset {
  padding: 10px 20px 20px;
  border: 1px solid #ddd;
  border-radius: 0;
}

#module_kursanmeldung p {
  margin: 0 0 10px;
}

#module_kursanmeldung #kurse + input,
#module_kursanmeldung #plus_button input {
  cursor: pointer;
  width: auto;
  margin: 0 0 5px;
  padding: 0 8px;
  height: 25px;
  background: #e1e1e1;
  border: 0;
  font-size: 20px;
  line-height: 25px;
  color: #333;
  box-sizing: border-box;
}

#module_kursanmeldung #kurse + input:hover,
#module_kursanmeldung #plus_button input:hover {
  color: #fff;
  background: #333;
}

#module_kursanmeldung #kurse + input {
  margin: 0 0 0 10px;
}

#module_kursanmeldung #management > fieldset:last-child > a {
  display: inline-block;
  margin: 7px 0 7px 8px;
  width: 25px;
  height: 25px;
  background: #e1e1e1;
  text-align: center;
  line-height: 25px;
  vertical-align: middle;
  transition: all 0.3s ease-out;
}

#module_kursanmeldung #management > fieldset:last-child > a:hover {
  color: #fff;
  background: #333;
}

#module_kursanmeldung #management > fieldset:last-child > a img {
  display: none;
}

#module_kursanmeldung #management > fieldset:last-child > a:before {
  content: "\f00d";
  font-family: "Font Awesome 6 Pro";
  display: inline-block;
}

#module_kursanmeldung #management > fieldset:last-child > a + a:before {
  content: "\f56d";
}

/* @end */
/* @group materiallisten */
#module_materiallisten fieldset > input#button {
  display: inline-block;
  margin: 10px 0;
}

/* @end */
/* @group guestbook */
.guestbook_entry {
  position: relative;
  margin: 20px 0 0;
  padding: 20px;
  border: 1px solid #ddd;
}

.guestbook_entry .guestbook_entry_details {
  margin: 0 0 3px;
}

.guestbook_entry .date {
  display: block;
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  color: #000;
}

.guestbook_entry .guestbook_name {
  display: block;
  font-size: 22px;
  line-height: 28px;
  font-weight: 400;
  color: #000;
  margin: 2px 0 15px;
}

.guestbook_entry .guestbook_website + .guestbook_email {
  border-left: 1px solid #CC2935;
  padding-left: 7px;
  margin-left: 5px;
}

.guestbook_entry a.guestbook_action {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  margin: 0;
  padding: 7px 14px;
  font-size: 0;
  line-height: 0;
  font-weight: 700;
  text-decoration: none;
  color: #333;
  background: #efefef;
}

.guestbook_entry a.guestbook_action i.fa {
  margin: 0;
  font-size: 16px;
  line-height: 22px;
}

.guestbook_entry a.guestbook_action:hover {
  background: #ddd;
}

a.guestbook_add_button {
  display: inline-block;
  margin: 15px 0 0;
  padding: 7px 14px;
  text-decoration: none;
  color: #fff;
  background: #cc2935;
}

a.guestbook_add_button:hover {
  background: #900006;
}

.add_guestbook_form {
  max-width: 600px;
  padding: 20px 0 0;
}

.add_guestbook_form label {
  display: block;
  width: 30%;
  float: left;
  padding: 7px 20px 0 0;
  box-sizing: border-box;
}

.add_guestbook_form textarea,
.add_guestbook_form input {
  display: block;
  width: 70%;
  margin: 0;
  padding: 7px 14px;
  font: 400 16px/24px "Source Sans Pro", Arial, Tahoma, sans-serif;
  color: #aaa;
  border: 1px solid #ddd;
  border-radius: 0;
  background: none;
  box-sizing: border-box;
  box-shadow: none;
  transition: all 0.3s ease-out;
}

.add_guestbook_form textarea:hover,
.add_guestbook_form textarea:focus,
.add_guestbook_form input:hover,
.add_guestbook_form input:focus {
  border-color: #333;
  color: #333;
}

.add_guestbook_form input.button {
  width: auto;
  color: #fff;
  border: 0;
  cursor: pointer;
  background: #cc2935;
}

.add_guestbook_form input.button:hover,
.add_guestbook_form input.button:focus {
  background: #900006;
}

/* @end */
/* @group login form */
.login_form {
  max-width: 600px;
  padding: 0;
}

.login_form label {
  display: block;
  width: 30%;
  float: left;
  padding: 7px 20px 0 0;
  box-sizing: border-box;
}

.login_form input {
  display: block;
  width: 70%;
  margin: 0;
  padding: 7px 14px;
  font: 400 16px/24px "Source Sans Pro", Arial, Tahoma, sans-serif;
  color: #aaa;
  border: 1px solid #ddd;
  border-radius: 0;
  background: none;
  box-sizing: border-box;
  box-shadow: none;
  transition: all 0.3s ease-out;
}

.login_form input#username,
.login_form input#password {
  -webkit-appearance: none;
}

.login_form .p_remember_me_checkbox input {
  float: left;
  width: auto;
  margin: 2px 8px 0 4px;
}

.login_form .p_remember_me_checkbox label.checkbox {
  padding: 0;
  overflow: hidden;
}

.login_form input:hover,
.login_form input:focus {
  border-color: #333;
  color: #333;
}

.login_form input.button {
  width: auto;
  color: #fff;
  border: 0;
  cursor: pointer;
  font-size: 16px;
  background: #cc2935;
}

.login_form input.button:hover,
.login_form input.button:focus {
  background: #900006;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
}

/* @end */
/* @group pagination */
.pagination .pagination_inner {
  display: flex;
  justify-content: space-between;
}
.pagination .cf {
  display: none;
}

/* @end */
/* @group special modules */
.mod_persoenliche_daten:not(.system_page) div#system_page_content,
.mod_materiallisten:not(.system_page) div#system_page_content,
.mod_email:not(.system_page) div#system_page_content {
  display: contents;
}
.mod_persoenliche_daten:not(.system_page) .breadcrumb,
.mod_materiallisten:not(.system_page) .breadcrumb,
.mod_email:not(.system_page) .breadcrumb {
  display: none !important;
}

/* @end */
/* @group menu toggle */
.responsive_navigation_toggle {
  z-index: 270;
  display: none;
  width: 36px;
  height: 22px;
  position: fixed;
  top: 41px;
  right: 13px;
  padding: 12px 7px;
  background: #fff;
  transition: all 0.3s ease-out;
  transform: translateY(-50%);
}

.responsive_navigation_toggle span {
  position: absolute;
  top: 10px;
  left: 7px;
  right: 7px;
  background: #cc2935;
  display: block;
  height: 5px;
  transform: rotate(0deg);
  transition: transform 0.3s ease 0s, top 0.25s ease 0.25s, opacity 0.01s ease 0.25s;
  z-index: 150;
}

.responsive_navigation_toggle span:nth-child(2) {
  top: 24px;
}

.responsive_navigation_toggle span:nth-child(3) {
  top: 38px;
}

.navi_open .responsive_navigation_toggle span {
  top: 42.5%;
  transition: top 0.25s ease 0s, transform 0.3s ease 0.25s, opacity 0.01s ease 0.25s;
}

.navi_open .responsive_navigation_toggle span:first-child {
  opacity: 0;
}

.navi_open .responsive_navigation_toggle span:nth-child(2) {
  transform: rotate(-45deg);
}

.navi_open .responsive_navigation_toggle span:nth-child(3) {
  transform: rotate(45deg);
}

/* @end */
/* @group responsive */
@media screen and (max-width: 920px) {
  /* -- navigation -- */
  .is_scrolled .logo_wrap {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  }
  .logo_wrap {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    padding: 0 20px;
    z-index: 100;
    transition: box-shadow 0.3s ease-out;
  }
  #logo {
    width: 400px;
  }
  #login_button {
    margin: 28px 60px 0 0;
  }
  #siteframe {
    padding-top: 83px;
  }
  #subnavigation,
  #navigation {
    display: none;
  }
  .responsive_navigation_toggle {
    display: block;
  }
  nav#rwdnav {
    display: block;
    visibility: hidden;
    position: fixed;
    z-index: 200;
    top: 0;
    left: 0;
    width: 77%;
    height: 100%;
    max-width: 400px;
    opacity: 1;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 24px 0 rgba(0, 0, 0, 0.2);
    transform: perspective(1px) translate3d(-100%, 0, 0);
    transition: all 0.3s ease-out;
    overflow: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .navi_open nav#rwdnav {
    visibility: visible;
    opacity: 1;
    transform: perspective(1px) translate3d(0, 0, 0);
  }
  /* --- gallery --- */
  .pictures.gallery .picture {
    width: 25%;
  }
}
@media screen and (max-width: 720px) {
  /* --- gallery --- */
  .pictures.gallery .picture {
    width: 33.33%;
  }
}
@media screen and (max-width: 600px) {
  /* -- header -- */
  #siteframe {
    padding-top: 94px;
  }
  .responsive_navigation_toggle {
    top: 31px;
    margin-top: 0;
  }
  .logo_wrap #login_button,
  #logo img.desktop {
    display: none;
  }
  #rwdnav #login_button {
    display: block;
  }
  #logo {
    width: 173px;
  }
  #logo img.mobile {
    display: block;
    backface-visibility: hidden;
  }
  .is_scrolled #logo {
    width: 100px;
    transition: all 0.3s ease-out;
  }
  /* -- header image -- */
  #contentframe #header_image {
    position: relative;
    overflow: hidden;
  }
  #contentframe #header_image img {
    position: relative;
    left: 80%;
    width: auto;
    height: 73px;
    transform: translate(-80%, 0);
  }
  /* --- content --- */
  #contentframe #content {
    padding: 20px 0;
    box-shadow: none;
    background: #fff;
  }
  #mountains {
    position: absolute;
  }
  #footer {
    border-top: 1px solid #ddd;
    padding-bottom: 63px;
    text-align: left;
  }
  h1,
  h1 a {
    font-size: 24px;
    line-height: 30px;
    margin: 0 0 25px 0;
    padding: 0 0 10px 0;
  }
  h2, h2 a {
    font-size: 20px;
    line-height: 26px;
    margin: 0 0 10px;
  }
  h3, h3 a {
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 7px;
  }
  /* --- guestbook -- */
  .add_guestbook_form label {
    width: 100%;
    margin: 0 0 10px;
    padding: 0;
  }
  .add_guestbook_form textarea,
  .add_guestbook_form input {
    width: 100%;
  }
  .add_guestbook_form form > p:last-child label {
    display: none;
  }
  /* --- login form --- */
  .login_form label {
    width: 100%;
    margin: 0 0 10px;
    padding: 0;
  }
  .login_form input {
    width: 100%;
  }
  .login_form label.prefix_checkbox,
  .login_form form > p:last-child label {
    display: none;
  }
  /* --- special  --- */
  #module_kalender input#comment,
  #module_kursanmeldung input#kurse,
  #module_kursanmeldung select#name,
  #module_persoenliche_daten select#name,
  #module_email select#mail,
  #module_email input#file,
  #module_email input#betreff {
    width: 100%;
    margin: 5px 0 7px;
    box-sizing: border-box;
  }
  #module_kalender input#comment {
    margin: 10px 0 5px;
  }
  #module_kalender table {
    font-size: 11px;
    line-height: 16px;
    text-align: center;
  }
  #module_kalender table th,
  #module_kalender table td {
    padding: 4px 5px !important;
  }
  /* --- listing --- */
  .listing_entry .pictures {
    margin: 5px 20px 5px 0;
  }
}
@media screen and (max-width: 550px) {
  #administration_panel {
    width: 100%;
    border-radius: 0;
    box-shadow: none;
  }
}
@media screen and (max-width: 500px) {
  /* --- listing --- */
  .listing_entry .pictures {
    float: none;
    clear: both;
    width: 100%;
    margin: 0 0 20px;
  }
  /* --- content --- */
  .danger_map {
    float: none;
    clear: both;
    width: 100%;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 450px) {
  /* --- font --- */
  body {
    font-size: 14px;
    line-height: 22px;
  }
  /* --- kalender --- */
  #module_kalender fieldset {
    padding: 10px 15px 20px;
  }
  #module_kalender fieldset fieldset {
    padding: 5px 15px 15px;
  }
  /* --- gallery --- */
  .pictures.gallery .picture {
    width: 50%;
  }
  /* -- tables -- */
  .table_wrap_container {
    position: relative;
    padding: 20px 0 0;
  }
  .table_wrap_container table {
    min-width: 500px;
    width: auto !important;
  }
  .table_scroll_indicator {
    display: block;
  }
}
/* @end *//*# sourceMappingURL=styles1.css.map */