@charset "UTF-8";
/**
 * infos specific settings
 */
:root {
  /* Use Arimo font instead of Cassiopeia font - Andreas */
  --cassiopeia-font-family-body: Arimo;
  /* Use Open+Sans font instead of Cassiopeia font - Horst */
  --cassiopeia-font-family-headings: Open+Sans;
  /* Andreas 1024px changed to: 1105px = 1040 + 25 (left margin) + 25 (right margin) + 15 (scrollbar) */
  --width-max: 1105px;
  /* Andreas */
  --pad: 25px;
  /* Andreas */
  --cassiopeia-font-weight-headings: 100;
  /* Horst */
  --infos-red: rgb(250,54,38);
  --infos-banner-grey: rgb(208,208,208);
  --cassiopeia-color-link: var(--infos-red);
  --cassiopeia-color-hover: var(--infos-red);
  --infos-btn-color-primary: var(--infos-red);
  --infos-btn-color-hover: #F88;
  --infos-btn-clear-color: rgb(108,108,108);
}

/* Andreas */
@media (max-width: 414px) {
  :root {
    --pad: 10px;
  }
}

h1, .h1 {
  margin: 34px 0; /* Andreas */
}

.navbar-brand {
  padding-top: 1rem; /* Andreas */
  padding-bottom: 1rem; /* Andreas */
}

.breadcrumb-item.active {
  color: white;
}
a.pathway {
  color: white;
} 
.breadcrumb-item + .breadcrumb-item:before {
  font-family: 'Font Awesome 6 Free'; 
  font-weight: 600;
  content: "\f0da"; /* fa-caret-right */
  color: var(--infos-red);
}

.mod-menu {
  -ms-flex-direction: row; /* Andreas */
  flex-direction: row; /* Andreas */
  gap: 1rem; /* Andreas */
}

.moduletable{
    display:inline-block;
}

/* Andreas & Horst: Banner modules shall have Layout = banner */
.container-banner .banner-overlay {
  height: revert;
}
.container-banner .banner-overlay .overlay {
  height: revert;
  padding: revert;
  background-color: white;
}

@media screen and (max-height: 740px) {
  .container-banner .banner-overlay {
    height: revert;
  }
}

.dl-buttons{
    display:block;
    text-align:center;
    margin-top:-50px;
    margin-bottom: 30px;
}
.svg{
    width: 150px;
    height:150px;
    background:rgb(231,59,42) no-repeat center 65px;
    background-size:36%;
    border-radius: 50%;
    display:inline-block; 
    vertical-align:top;
    margin:0 10px;
}
.svg-dl:hover{
    transform: scale(1.1);
}
.svg-br:hover{
    transform: scale(1.1);
}
.svg-cm:hover{
    transform: scale(1.1);
}
.svg-dl{
    background-image:url(https://www.informatik-forum.org/media/templates/site/infos/images/infos_Website_Startseite_Icon_Download.svg);
    transition: all .2s ease-in-out;
}
.svg-cm{
    background-image:url(https://www.informatik-forum.org/media/templates/site/infos/images/infos_Website_Startseite_Icon_Computermuseum.svg);
    transition: all .2s ease-in-out;
}
.svg-br{
    background-image: url(https://www.informatik-forum.org/media/templates/site/infos/images/infos_Website_Startseite_Icon_Kontaktmesse.svg);
    background-position: center 65px;
    transition: all .2s ease-in-out;
}

.buttonueberschrift {
  font-family: 'Arimo', sans-serif;
  font-weight:bold;
  line-height: 18px;
  color: white;
  text-decoration: none;
  text-align:center;
  display: block;
  padding-top: 25px;
}

@media (max-width: 414px) {
  .svg {
    width: 95px;
    height: 95px;
    background-position: center 54px;
    margin: 0 1px;
  }
  .svg-br {
    background-position: center 52px;
  }
  .buttonueberschrift{
    font-size: 12px;
    line-height: 12px;
  }
}

.footer {
  background-color: rgb(87,87,87);
  background-image: revert;
  background-image: revert;
  margin: revert;
}
.footer .grid-child {
  -webkit-box-align: revert;
      -ms-flex-align: revert;
  align-items: normal;
  gap: 40px;
  padding: 2.5rem 1.75em;
}

/* Andreas */
.legal-con {
  color: #999;
  font-size: 14px;
}

/* Andreas */
.container-header {
  background-color: revert;
  background-image: revert;
  -webkit-box-shadow: revert;
          box-shadow: revert;
}
.container-header .grid-child {
  padding: 0 var(--pad);
}

/* Andreas */
.container-header .navbar-brand {
  -webkit-margin-end: revert;
          margin-inline-end: revert;
}

/* Andreas */
.container-header .container-nav {
  padding-bottom: revert;
}

/* Andreas: Align Menu left */
.container-header .container-nav > * {
  margin-left: -15px;
}


/** Top Menu **/

.container-header .mod-menu {
  padding: 0 var(--pad); /* Andreas */
  justify-content: flex-end; /* Andreas */
}

.grid-child {
  max-width: revert;
  margin-right: revert;
  margin-left: revert;
  flex-direction: column; /* Andreas */
}

.container-header .grid-child,
.container-top-a > *,
.container-top-b > *,
.container-bottom-a > *,
.container-bottom-b > *,
.container-component > main,
#system-message-container,
footer .grid-child {
  padding: 0 var(--pad);
}

.container-component > nav > * {
  padding-left: var(--pad) !important;
  padding-right: var(--pad) !important;
}

@media (min-width: --width-max) {
  .grid-child {
    padding-left: 0;
    padding-right: 0;
  }
  .container-header .grid-child,
  .container-header .mod-menu,
  .container-footer .grid-child,
  .container-component > main,
  .container-component > nav > *,
  #system-message-container,
  .container-top-a > *,
  .container-top-b > *,
  .container-bottom-a > *,
  .container-bottom-b > * {
    width: 1040px; /* Andreas */
    padding: 0; /* Andreas */
    margin-right: auto;
    margin-left: auto;
  }
  .container-component > nav > * {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* When there is no banner, every second grid-child shall have a grey background */
.site-grid .grid-child:nth-child(even) {
  background-color: rgb(227, 227, 227);
}

/* When there is a banner, the first and then odd following grid-children shall have a grey background */
.site-grid .container-banner ~ .grid-child:nth-child(even) {
  background-color: inherit;
}
.site-grid .container-banner ~ .grid-child:nth-child(odd) {
  background-color: rgb(227, 227, 227);
}

.container-topbar,
.container-below-top {
  background: rgb(178,178,178); /* Andreas added */
}

.container-banner {
  margin: revert; /* Andreas */
}
.container-banner p {
  margin: 0;
  width:100%;
  background-color: var(--infos-banner-grey);
}

.container-bottom-a > *,
.container-bottom-b > * {
  margin: 1.0em 0 0 0;
}

.container-component nav {
  background-color: rgb(178,178,178);
  font-size: 12px;
  color: white;
}

/* Andreas */
.container-component > *:first-child,
.container-sidebar-left > *:first-child,
.container-sidebar-right > *:first-child {
  margin-top: revert;
}

@supports (display: grid) {
  .site-grid {
    grid-template-columns: [full-start] 0 [main-start] repeat(4, 25%) [main-end] 0 [full-end];
    grid-gap: revert; /* Andreas */
  }

  /* Andreas */
  .site-grid > [class^=container-],
  .site-grid > [class*=" container-"] {
    width: revert;
    max-width: revert;
    -webkit-column-gap: revert;
       -moz-column-gap: revert;
            column-gap: revert;
  }

  /* Andreas: we do not use left and right sidebars */
  @media (min-width: 992px) {
    .site-grid {
    grid-template-areas: ". banner banner banner banner ." ". top-a top-a top-a top-a ." ". top-b top-b top-b top-b ." ". comp comp comp comp ." ". side-r side-r side-r side-r ." ". side-l side-l side-l side-l ." ". bot-a bot-a bot-a bot-a ." ". bot-b bot-b bot-b bot-b .";
    }
  }
}

/* Start Andreas */
.kooperationen {
  display: flex;
  flex-wrap: wrap;
}
.kooperation {
  max-width: 280px;
  margin-right: 46px;
  margin-bottom: 0;
}
.kooperation a {
  float: left;
  margin: 0 16px 16px 0;
  line-height: 0; /* Andreas: assume that the content is an image not text */;
}
.kooperation p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.4;
}
/* End Andreas */


.brand-logo img{
  max-width:35%;
}

/* Start Horst */
.btn-primary {
  background-color: var(--infos-btn-color-primary);
  border-color: var(--infos-btn-color-primary);
}
.btn-primary:hover, .btn-primary:focus {
  background-color: var(--infos-btn-color-hover);
  border-color: var(--infos-btn-color-hover);
}
.js-stools-container-bar .btn-toolbar .js-stools-btn-clear {
  background-color: var(--infos-btn-clear-color);
  border: 0;
}
a {
  text-decoration: none
}
.btn-link {
  text-decoration: none
}
a:not([class]) {
  text-decoration: none
}
@media (max-width: 991.98px) {
  .container-header .mod-menu > li.active > a, .container-header .mod-menu > li.active > span,
  .container-header .mod-menu > li > a:hover {
    text-decoration: none;
  }
}
.mod-list li a:hover {
  text-decoration: none
}
.mod-list li.active > a {
  text-decoration: none
}
.metismenu.mod-menu .metismenu-item.active > a, .metismenu.mod-menu .metismenu-item.active > button,
.metismenu.mod-menu .metismenu-item > a:hover,
.metismenu.mod-menu .metismenu-item > button:hover {
  text-decoration: none
}

.email:before {
  font-family: 'Font Awesome 6 Free'; 
  font-weight: 400;
  content: "\f0e0"; /* fa-envelope */
  font-size: 107%;
  padding-right: 4px; }

.firmenmitglieder, .zeitung {
  padding-left:25px;
}
.stellenanzeigen {
  padding-left:0px;
}
.kontaktmessen {
  margin-top:-20px;
  padding-left:25px;
}   
.mitgliederversammlungen {
  padding-left:25px;
}
.mitgliederversammlung table {
  width:revert;
}
.mitgliederversammlung td.mitglieder-top {
  white-space: nowrap;
}
.mitgliedernummern {
  padding-left:0px;
}
.mitglieder-top {
  min-width:0px !important;
}
.vorstand {
  padding-right:70px;
  min-width: 250px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.com-content-category__table > :not(:first-child) {
  border-top: 1px solid;
  border-top-color: inherit;
}
.table-awards th {
  font-weight: bolder;
}
/* End Horst */

