/**
 * this file is for
 *
 * + htmlreset
 * + default elements (mobile first)
 *
 * ONLY !
 *
 * NO extension stuff
 * NO IDs
 * NO media queries
 */
/*==========  html reset (ONLY additional to bootstrap html reset)  ==========*/
html,
body,
div,
span,
applet,
button,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  font-family: pt_sansregular, Arial, sans-serif;
  background: none no-repeat scroll 0 0 rgba(0, 0, 0, 0);
  border: 0 none;
  font-weight: 400;
  margin: 0;
  outline: 0 none;
  padding: 0;
  vertical-align: baseline;
  -webkit-appearance: none;
}
/*==========  attribute mixins  ==========*/
.clear:before,
.clear:after {
  content: " ";
  display: table;
}
.clear:after {
  clear: both;
}
.clear:before,
.clear:after {
  content: " ";
  display: table;
}
.clear:after {
  clear: both;
}
.fullscale {
  /* css3 only */
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.fillwidth {
  width: 100%;
  max-width: none;
  height: auto;
}
.fillheight {
  /*height: 100vh;*/
  height: 100%;
  max-width: none;
  width: auto;
}
/* on img  tag */
.autoscale {
  width: 100%;
  max-width: none;
  height: auto;
}
/* on img  tag */
.autoscale-h {
  /*height: 100vh;*/
  height: 100%;
  max-width: none;
  width: auto;
}
/* on img  tag */
.autoscale-box {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
/* mixin for usage on the PARENT element of the image */
.boxscale {
  position: relative;
}
.boxscale img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
/**
 * mixins for positioning in a parent element
 * which is:
 * position: relative;
 * overflow: hidden;
 */
.position-center,
.position-center-h,
.position-center-v {
  position: absolute;
  margin: auto;
}
.position-center {
  top: -9999px;
  bottom: -9999px;
  left: -9999px;
  right: -9999px;
}
.position-center-h {
  left: -9999px;
  right: -9999px;
}
.position-center-v {
  top: -9999px;
  bottom: -9999px;
}
/* positioning without absolute */
.align-center-h {
  margin-left: 50%;
  transform: translateX(-50%);
}
.small {
  font-size: 14px;
}
.cell-filterlabel {
  text-align: left;
  font-family: pt_sans_narrowregular, Arial, sans-serif;
  font-size: 15px;
  color: #9c9c9c;
}
/*==========  basic html  ==========*/
html,
body {
  height: 100%;
  width: 100%;
}
body {
  font-size: 16px;
  line-height: 150%;
  color: #333333;
  background-color: #FFFFFF;
}
.paragraph {
  font-family: pt_sansregular, Arial, sans-serif;
  font-size: 16px;
  line-height: 150%;
  color: #333333;
}
a:hover,
.link:hover,
a:focus,
.link:focus,
a:visited,
.link:visited {
  outline: none;
}
a:hover,
.link:hover {
  color: #e41d18;
  outline: 0 none;
  text-decoration: underline;
  background-color: transparent;
  cursor: pointer;
}
b,
strong,
p b,
p strong {
  font-family: pt_sansbold, Arial, sans-serif;
}
p a,
.paragraph a,
p .link,
.paragraph .link {
  color: #6b7f97;
}
img {
  width: 100%;
  max-width: none;
  height: auto;
  display: block;
  float: left;
}
button:focus {
  outline: none;
}
input:not([type="checkbox"]):not([type="radio"]) {
  -webkit-appearance: none;
}
ul.none,
ol.none {
  list-style-type: none;
}
ul {
  list-style-type: none;
}
ul.list {
  margin-left: 18px;
  list-style-position: outside;
  list-style-type: none;
}
ul.inline li {
  display: inline-block;
}
/*==========  basic ci elements  ==========*/
.headline-default {
  font-family: pt_sans_narrowregular, Arial, sans-serif;
  text-transform: uppercase;
  font-size: 22px;
  color: #9c9c9c;
  line-height: 1em;
}
.headline-special,
.special-heading {
  font-family: pt_sans_narrowregular, Arial, sans-serif;
  text-transform: uppercase;
  font-size: 36px;
  color: #464646;
  line-height: 36px;
  margin-bottom: 0;
}
/* Special Heading */
div.specialheading-wrapper {
  width: 100%;
  border-left: 4px solid #e41d18;
  text-align: left;
  margin: 0px 0px 35px 0px;
  padding-left: 20px;
}
div.specialheading-wrapper .headline-special,
div.specialheading-wrapper .special-heading {
  font-family: pt_sans_narrowregular, Arial, sans-serif;
  text-transform: uppercase;
  font-size: 36px;
  color: #464646;
  line-height: 36px;
  margin-bottom: 0;
}
div.specialheading-wrapper .special-subheading {
  font-family: pt_sans_narrowregular, Arial, sans-serif;
  text-transform: uppercase;
  font-size: 24px;
  color: #9c9c9c;
  padding-top: 8px;
  margin-top: 0;
}
/* basic table sorting  - use tool class for derivates */
.table-sorting th.sorter-false:after {
  content: "" !important;
}
.table-sorting thead tr th.headerSortUp:after,
.table-sorting thead tr th.headerSortDown:after,
.table-sorting thead tr th.header:after,
.table-sorting thead tr th.tablesorter-headerAsc:after,
.table-sorting thead tr th.tablesorter-headerDesc:after,
.table-sorting thead tr th.tablesorter-headerUnSorted:after {
  font-family: FontAwesome;
  cursor: pointer;
  margin-left: 15px;
}
.table-sorting thead tr th.headerSortUp:after,
.table-sorting thead tr th.tablesorter-headerAsc:after {
  content: "\f0de";
}
.table-sorting thead tr th.headerSortDown:after,
.table-sorting thead tr th.tablesorter-headerDesc:after {
  content: "\f0dd";
}
.table-sorting thead tr th.tablesorter-headerUnSorted:after {
  content: "\f0dc";
}
.table-sorting .tablesorter-header-inner {
  float: left;
}
