/*
dantem_web.css
- main stylesheet, defines ALL styles including tweaks for print
*/

/* Imports are bad for compression, instead using direct links in templates */
/*@import url(../fonts/roboto/roboto.css);*/

/* Reset */
html {
  background-color: #646464;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1.5 !important;
  /*overflow-x: hidden;*/
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: none;
}

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

body {
  -webkit-text-size-adjust: none;
}

/* Box Model */
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Basic */
@-ms-viewport {
  /*noinspection CssInvalidPropertyValue*/
  width: device-width;
}

body {
  -ms-overflow-style: scrollbar;
}

@media screen and (max-width: 480px) {
  html,
  body {
    min-width: 230px;
  }
}

body {
  background: white;
}

body.is-loading *,
body.is-loading *:before,
body.is-loading *:after {
  -moz-animation: none !important;
  -webkit-animation: none !important;
  -ms-animation: none !important;
  animation: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  -ms-transition: none !important;
  transition: none !important;
}

/* Type */
body {
  background-color: white;
  color: #111111;
}

body,
button,
input,
select,
textarea {
  font-family: Roboto, sans-serif;
  font-size: 13pt;
  font-weight: 300;
  line-height: 2;
}

@media screen and (max-width: 1680px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

@media screen and (max-width: 1280px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

@media screen and (max-width: 980px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

@media screen and (max-width: 736px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

@media screen and (max-width: 480px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

a {
  -moz-transition: color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

strong,
b {
  font-weight: 700;
}

em,
i {
  font-style: italic;
}

p {
  margin: 0 0 0.5em 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 0 0;
  text-transform: uppercase;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: inherit;
  text-decoration: none;
}

h1 {
  font-size: 1.8em;
  margin: -0.35em 0 0.25em 0;
}

h2 {
  font-size: 1.55em;
}

h3 {
  font-size: 1.2em;
}

h4 {
  font-size: 1.1em;
}

h5 {
  font-size: 0.9em;
}

h6 {
  font-size: 0.7em;
}

@media screen and (max-width: 736px) {
  h1 {
    font-size: 1.5em;
  }
  h2 {
    font-size: 1.25em;
  }
  h3 {
    font-size: 1.1em;
  }
}

sub {
  font-size: 0.8em;
  position: relative;
  top: 0.5em;
}

sup {
  font-size: 0.8em;
  position: relative;
  top: -0.5em;
}

blockquote {
  border: none;
  margin: 0 0 0 -2em;
  padding: 0.5em 0 0 2em;
  position: relative;
}

blockquote div.quote {
  font-family: 'Georgia', serif;
  font-style: italic;
  opacity: 0.9;
  color: rgb(90,90,90);
  font-size: 120%;
  line-height: 140%;
}

blockquote div.quote:before {
    content: '\201C';
    color: #f69490;
    font-size: 7.5em;
    font-weight: 700;
    opacity: .3;
    position: absolute;
    top: 0.25em;
    left: 0;
    text-shadow: none;
    z-index: -300;
}

blockquote div.quote > *:last-child:after {
    content: '\201D';
}

blockquote div.author,
blockquote div.position,
blockquote div.company {
  opacity: 0.8;
  margin: 0;
  color: #ee2922;
}

blockquote div.author,
blockquote div.company {
  font-weight: bold;
}

code {
  border-radius: 0;
  border: solid 1px;
  font-family: 'Courier New', monospace;
  font-size: 0.9em;
  margin: 0 0.25em;
  padding: 0.25em 0.65em;
}

pre {
  -webkit-overflow-scrolling: touch;
  font-family: 'Courier New', monospace;
  font-size: 0.9em;
  margin: 0 0 2em 0;
}

pre code {
  display: block;
  line-height: 1.75;
  padding: 1em 1.5em;
  overflow-x: auto;
}

hr {
  border: 0;
  border-bottom: solid 1px;
  margin: 2em 0;
}

hr.major {
  margin: 3em 0;
}

.align-left {
  text-align: left;
}

.align-center {
  text-align: center;
}

.align-right {
  text-align: right;
}

input,
select,
textarea {
  color: #ee2922;
}

a {
  color: #ee2922;
}

strong,
b {
  /*color: #ee2922;*/
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #ee2922;
}

blockquote {
  border-left-color: #ee2922;
}

code {
  background: none;
  border-color: #ee2922;
}

hr {
  border-bottom-color: #ee2922;
}


/* Box */
.box {
  border-radius: 0;
  border: solid 1px;
  margin-bottom: 2em;
  padding: 1.5em;
}

.box> :last-child,
.box> :last-child> :last-child,
.box> :last-child> :last-child> :last-child {
  margin-bottom: 0;
}

.box.alt {
  border: 0;
  border-radius: 0;
  padding: 0;
}

.box {
  border-color: #ee2922;
}

/* Button */
input[type='submit'],
input[type='reset'],
input[type='button'],
button,
.button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  border-radius: 0;
  border: 0;
  cursor: pointer;
  display: inline-block;
  font-size: .8em;
  font-weight: 700;
  height: 3.5em;
  line-height: 3.65em;
  padding: 0 2.25em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

input[type='submit']:hover,
input[type='reset']:hover,
input[type='button']:hover,
button:hover,
.button:hover {
  text-decoration: none;
}


input[type='submit'].fit,
input[type='reset'].fit,
input[type='button'].fit,
button.fit,
.button.fit {
  display: block;
  margin: 0 0 1em 0;
  width: 100%;
}

input[type='submit'].small,
input[type='reset'].small,
input[type='button'].small,
button.small,
.button.small {
  font-size: 0.8em;
}

input[type='submit'].big,
input[type='reset'].big,
input[type='button'].big,
button.big,
.button.big {
  font-size: 1.35em;
}

input[type='submit'].disabled,
input[type='submit']:disabled,
input[type='reset'].disabled,
input[type='reset']:disabled,
input[type='button'].disabled,
input[type='button']:disabled,
button.disabled,
button:disabled,
.button.disabled,
.button:disabled {
  -moz-pointer-events: none;
  -webkit-pointer-events: none;
  -ms-pointer-events: none;
  pointer-events: none;
  opacity: 0.25;
}

input[type='submit'],
input[type='reset'],
input[type='button'],
button,
.button {
  background-color: #5a5a5a;
  color: white !important;
}

input[type='submit']:hover,
input[type='reset']:hover,
input[type='button']:hover,
button:hover,
.button:hover {
  background-color: #676767;
}

input[type='submit']:active,
input[type='reset']:active,
input[type='button']:active,
button:active,
.button:active {
  background-color: #4d4d4d;
}

input[type='submit'].alt,
input[type='reset'].alt,
input[type='button'].alt,
button.alt,
.button.alt {
  box-shadow: inset 0 0 0 2px #ee2922;
  color: #ee2922 !important;
  background-color: transparent;
}

input[type='submit'].alt:hover,
input[type='reset'].alt:hover,
input[type='button'].alt:hover,
button.alt:hover,
.button.alt:hover {
  color: white !important;
  background-color: #ee2922 !important;
}

input[type='submit'].alt:active,
input[type='reset'].alt:active,
input[type='button'].alt:active,
button.alt:active,
.button.alt:active {
  background-color: #f9dadb;
}

input[type='submit'].special,
input[type='reset'].special,
input[type='button'].special,
button.special,
.button.special {
  background-color: #ee2922;
  color: white !important;
}

input[type='submit'].special:hover,
input[type='reset'].special:hover,
input[type='button'].special:hover,
button.special:hover,
.button.special:hover {
  background-color: #e85d61;
}

input[type='submit'].special:active,
input[type='reset'].special:active,
input[type='button'].special:active,
button.special:active,
.button.special:active {
  background-color: #e23135;
}

@keyframes contact-submit-preclassifying {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}

input[type='submit'].preclassifying:disabled {
  animation: contact-submit-preclassifying 1s linear infinite;
  background-image: linear-gradient(110deg, #5a5a5a 0%, #5a5a5a 35%, #777777 50%, #5a5a5a 65%, #5a5a5a 100%);
  background-size: 220% 100%;
  cursor: progress;
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  input[type='submit'].preclassifying:disabled {
    animation: none;
  }
}


/* Form */
form {
  margin: 0 0 2em 0;
}

form .field {
  margin: 0 0 2em 0;
}

form .field.half {
  width: 50%;
  float: left;
  padding: 0 0 0 1em;
}

form .field.half.first {
  padding: 0 1em 0 0;
}

form>.actions {
  margin: 2.5em 0 0 0;
}

@media screen and (max-width: 736px) {
  form .field {
    margin: 0 0 1.5em 0;
  }
  form .field.half {
    padding: 0 0 0 0.75em;
  }
  form .field.half.first {
    padding: 0 0.75em 0 0;
  }
  form>.actions {
    margin: 2em 0 0 0 !important;
  }
}

@media screen and (max-width: 480px) {
  form .field.half {
    width: 100%;
    float: none;
    padding: 0;
  }
  form .field.half.first {
    padding: 0;
  }
}

label {
  display: block;
  float: left;
  font-size: 0.9em;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 0 1em 0;
}

input[type='text'],
input[type='password'],
input[type='email'],
select,
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  border-radius: 0;
  border: solid 3px;
  color: inherit;
  display: block;
  outline: 0;
  padding: 0 1em;
  text-decoration: none;
  width: 100%;
}

input[type='text']:invalid,
input[type='password']:invalid,
input[type='email']:invalid,
select:invalid,
textarea:invalid {
  box-shadow: none;
}

.select-wrapper {
  text-decoration: none;
  display: block;
  position: relative;
}

.select-wrapper:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

.select-wrapper:before {
  display: block;
  height: 2.75em;
  line-height: 2.75em;
  pointer-events: none;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 2.75em;
}

.select-wrapper select::-ms-expand {
  display: none;
}

input[type='text'],
input[type='password'],
input[type='email'],
select {
  height: 2.75em;
}

textarea {
  padding: 0.75em 1em;
}

input[type='checkbox'],
input[type='radio'] {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  display: block;
  float: left;
  margin-right: -2em;
  opacity: 0;
  width: 1em;
  z-index: -1;
}

input[type='checkbox'] + label,
input[type='radio'] + label {
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  font-size: 1em;
  font-weight: 300;
  padding-left: 2.4em;
  padding-right: 0.75em;
  position: relative;
}

input[type='checkbox'] + label:before,
input[type='radio'] + label:before {
  content: '';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

input[type='checkbox'] + label:before,
input[type='radio'] + label:before {
  border-radius: 100%;
  border: solid 1px;
  display: inline-block;
  height: 1.5em;
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 1.5em;
  padding-left: 0.1em;
  padding-top: 0.05em;
  font-weight: bold;
}

input[type='checkbox']:checked + label:before,
input[type='radio']:checked + label:before {
  content: 'Γ';
  transform: rotate(-135deg);
}

input[type='checkbox']:hover + label,
input[type='radio']:hover + label {
  font-weight: bold;
}

::-webkit-input-placeholder {
  opacity: 1.0;
}

:-moz-placeholder {
  opacity: 1.0;
}

::-moz-placeholder {
  opacity: 1.0;
}

:-ms-input-placeholder {
  opacity: 1.0;
}

.formerize-placeholder {
  opacity: 1.0;
}

label {
  color: #ee2922;
}

input[type='text'],
input[type='password'],
input[type='email'],
select,
textarea {
  background: none;
  border-color: #fceced;
}

input[type='text']:focus,
input[type='password']:focus,
input[type='email']:focus,
select:focus,
textarea:focus {
  border-color: #ee2922;
  box-shadow: 0 0 0 1px #ee2922;
}

.select-wrapper:before {
  color: #ee2922;
}

input[type='checkbox']+label,
input[type='radio']+label {
  color: #111111;
}

input[type='checkbox']+label:before,
input[type='radio']+label:before {
  background: none;
  border-color: #ee2922;
}

input[type='checkbox']:checked+label:before,
input[type='radio']:checked+label:before {
  background-color: #ee2922;
  border-color: #ee2922;
  color: white;
}

input[type='checkbox']:focus+label:before,
input[type='radio']:focus+label:before {
  border-color: #ee2922;
  box-shadow: 0 0 0 1px #ee2922;
}

::-webkit-input-placeholder {
  color: #717171 !important;
}

:-moz-placeholder {
  color: #717171 !important;
}

::-moz-placeholder {
  color: #717171 !important;
}

:-ms-input-placeholder {
  color: #717171 !important;
}

.formerize-placeholder {
  color: #717171 !important;
}


/* Image */
.image {
  border-radius: 0;
  border: 0;
  display: inline-block;
  position: relative;
}

.image img {
  border-radius: 0;
  display: block;
}

.image.left,
.image.right {
  max-width: 40%;
}

.image.left img,
.image.right img {
  width: 100%;
}

.image.left {
  float: left;
  margin: 0 1.5em 1em 0;
  top: 0.25em;
}

.image.right {
  float: right;
  margin: 0 0 1em 1.5em;
  top: 0.25em;
}

.image.fit {
  display: block;
  margin: 0 0 1em 0;
  width: 100%;
}

.image.fit img {
  width: 100%;
}

.image.main {
  display: block;
  margin: 0 0 3em 0;
  width: 100%;
}

.image.main img {
  width: 100%;
}


/* List */
ol {
  list-style: decimal;
  margin: 0 0 0.5em 0;
  padding-left: 1.25em;
}

ol li {
  padding-left: 0.25em;
}

ul {
  list-style: square url(../images/right_arrow.svg);
  margin: 0 0 0 0;
  padding-left: 1.2em;
}

ul li {
  padding-left: 0.5em;
  padding-bottom: 0.2em;
}

ul.alt {
  list-style: none;
  padding-left: 0;
}

ul.alt li {
  border-top: solid 1px;
  padding: 0.5em 0;
}

ul.alt li:first-child {
  border-top: 0;
  padding-top: 0;
}

ul.icons {
  cursor: default;
  list-style: none;
  padding-left: 0;
}

ul.icons li {
  display: inline-block;
  padding: 0 1em 0 0;
}

ul.icons li:last-child {
  padding-right: 0;
}

ul.icons li .icon:before {
  font-size: 2em;
}

ul.actions {
  cursor: default;
  list-style: none;
  padding-left: 0;
  margin-top: 1em;
}

ul.actions li {
  display: inline-block;
  padding: 0 1em 0 0;
  vertical-align: middle;
}

ul.actions li:last-child {
  padding-right: 0;
}

ul.actions.small li {
  padding: 0 0.5em 0 0;
}

ul.actions.vertical li {
  display: block;
  padding: 1em 0 0 0;
}

ul.actions.vertical li:first-child {
  padding-top: 0;
}

ul.actions.vertical li>* {
  margin-bottom: 0;
}

ul.actions.vertical.small li {
  padding: 0.5em 0 0 0;
}

ul.actions.vertical.small li:first-child {
  padding-top: 0;
}

ul.actions.fit {
  display: table;
  margin-left: -1em;
  padding: 0;
  table-layout: fixed;
  width: calc(100% + 1em);
}

ul.actions.fit li {
  display: table-cell;
  padding: 0 0 0 1em;
}

ul.actions.fit li>* {
  margin-bottom: 0;
}

ul.actions.fit.small {
  margin-left: -0.5em;
  width: calc(100% + 0.5em);
}

ul.actions.fit.small li {
  padding: 0 0 0 0.5em;
}

dl {
  margin: 0 0 2em 0;
}

dl dt {
  display: block;
  font-weight: 700;
  margin: 0 0 1em 0;
}

dl dd {
  margin-left: 2em;
}

ul.alt li {
  border-top-color: #ee2922;
}


/* Section/Article */
section.special,
article.special {
  text-align: center;
}

section .inner {
  max-width: 65em;
  width: calc(100% - 6em);
  margin: 0 auto;
}

@media screen and (max-width: 480px) {
  section .inner {
    max-width: 90%;
    width: 90%;
  }
}

header p {
  position: relative;
  margin: 0 0 1.5em 0;
}

header h2+p {
  font-size: 1.25em;
  margin-top: -1em;
}

header h3+p {
  font-size: 1.1em;
  margin-top: -0.8em;
}

header h4+p,
header h5+p,
header h6+p {
  font-size: 0.9em;
  margin-top: -0.6em;
}

header p {
  color: #717171;
}


/* Table */
.table-wrapper {
  -webkit-overflow-scrolling: touch;
  overflow-x: auto;
}

table {
  margin: 0 0 2em 0;
  width: 100%;
}

table tbody tr {
  border: solid 1px;
  border-left: 0;
  border-right: 0;
}

table td {
  padding: 0.75em 0.75em;
}

table th {
  font-size: 0.9em;
  font-weight: 700;
  padding: 0 0.75em 0.75em 0.75em;
  text-align: left;
}

table thead {
  border-bottom: solid 2px;
}

table tfoot {
  border-top: solid 2px;
}

table.alt {
  border-collapse: separate;
}

table.alt tbody tr td {
  border: solid 1px;
  border-left-width: 0;
  border-top-width: 0;
}

table.alt tbody tr td:first-child {
  border-left-width: 1px;
}

table.alt tbody tr:first-child td {
  border-top-width: 1px;
}

table.alt thead {
  border-bottom: 0;
}

table.alt tfoot {
  border-top: 0;
}

table tbody tr {
  border-color: #ee2922;
}

table tbody tr:nth-child(2n+1) {
  background-color: transparent;
}

table th {
  color: #ee2922;
}

table thead {
  border-bottom-color: #ee2922;
}

table tfoot {
  border-top-color: #ee2922;
}

table.alt tbody tr td {
  border-color: #ee2922;
}


/* Wrapper */
.wrapper {
  position: relative;
}

.wrapper>.inner {
  margin: 0 auto;
  width: 60em;
}

.wrapper.style1 {
  background-color: #ee2922;
  color: #f2a3a5;
}

.wrapper.style1 input,
.wrapper.style1 select,
.wrapper.style1 textarea {
  color: white;
}

.wrapper.style1 a {
  color: white;
}

.wrapper.style1 strong,
.wrapper.style1 b {
  color: white;
}

.wrapper.style1 h1,
.wrapper.style1 h2,
.wrapper.style1 h3,
.wrapper.style1 h4,
.wrapper.style1 h5,
.wrapper.style1 h6 {
  color: white;
}

.wrapper.style1 blockquote {
  border-left-color: white;
}

.wrapper.style1 code {
  background: none;
  border-color: white;
}

.wrapper.style1 hr {
  border-bottom-color: white;
}

.wrapper.style1 .box {
  border-color: white;
}

.wrapper.style1 input[type='submit'],
.wrapper.style1 input[type='reset'],
.wrapper.style1 input[type='button'],
.wrapper.style1 button,
.wrapper.style1 .button {
  background-color: #5a5a5a;
  color: white !important;
}

.wrapper.style1 input[type='submit']:hover,
.wrapper.style1 input[type='reset']:hover,
.wrapper.style1 input[type='button']:hover,
.wrapper.style1 button:hover,
.wrapper.style1 .button:hover {
  background-color: #676767;
}

.wrapper.style1 input[type='submit']:active,
.wrapper.style1 input[type='reset']:active,
.wrapper.style1 input[type='button']:active,
.wrapper.style1 button:active,
.wrapper.style1 .button:active {
  background-color: #4d4d4d;
}

.wrapper.style1 input[type='submit'].alt,
.wrapper.style1 input[type='reset'].alt,
.wrapper.style1 input[type='button'].alt,
.wrapper.style1 button.alt,
.wrapper.style1 .button.alt {
  background-color: transparent;
  box-shadow: inset 0 0 0 2px white;
  color: white !important;
}

.wrapper.style1 input[type='submit'].alt:hover,
.wrapper.style1 input[type='reset'].alt:hover,
.wrapper.style1 input[type='button'].alt:hover,
.wrapper.style1 button.alt:hover,
.wrapper.style1 .button.alt:hover {
  background: rgba(255, 255, 255, 0.25);
}

.wrapper.style1 input[type='submit'].alt:active,
.wrapper.style1 input[type='reset'].alt:active,
.wrapper.style1 input[type='button'].alt:active,
.wrapper.style1 button.alt:active,
.wrapper.style1 .button.alt:active {
  background-color: rgba(255, 255, 255, 0.2);
}

.wrapper.style1 input[type='submit'].special,
.wrapper.style1 input[type='reset'].special,
.wrapper.style1 input[type='button'].special,
.wrapper.style1 button.special,
.wrapper.style1 .button.special {
  background-color: white;
  color: #ee2922 !important;
}

.wrapper.style1 label {
  color: white;
}

.wrapper.style1 input[type='text'],
.wrapper.style1 input[type='password'],
.wrapper.style1 input[type='email'],
.wrapper.style1 select,
.wrapper.style1 textarea {
  background: none;
  border-color: rgba(255, 255, 255, 0.25);
}

.wrapper.style1 input[type='text']:focus,
.wrapper.style1 input[type='password']:focus,
.wrapper.style1 input[type='email']:focus,
.wrapper.style1 select:focus,
.wrapper.style1 textarea:focus {
  border-color: white;
  box-shadow: 0 0 0 1px white;
}

.wrapper.style1 .select-wrapper:before {
  color: white;
}

.wrapper.style1 input[type='checkbox']+label,
.wrapper.style1 input[type='radio']+label {
  color: #f2a3a5;
}

.wrapper.style1 input[type='checkbox']+label:before,
.wrapper.style1 input[type='radio']+label:before {
  background: none;
  border-color: white;
}

.wrapper.style1 input[type='checkbox']:checked+label:before,
.wrapper.style1 input[type='radio']:checked+label:before {
  background-color: white;
  border-color: white;
  color: #ee2922;
}

.wrapper.style1 input[type='checkbox']:focus+label:before,
.wrapper.style1 input[type='radio']:focus+label:before {
  border-color: white;
  box-shadow: 0 0 0 1px white;
}

.wrapper.style1 ::-webkit-input-placeholder {
  color: #f8d1d2 !important;
}

.wrapper.style1 :-moz-placeholder {
  color: #f8d1d2 !important;
}

.wrapper.style1 ::-moz-placeholder {
  color: #f8d1d2 !important;
}

.wrapper.style1 :-ms-input-placeholder {
  color: #f8d1d2 !important;
}

.wrapper.style1 .formerize-placeholder {
  color: #f8d1d2 !important;
}

.wrapper.style1 ul.alt li {
  border-top-color: white;
}

.wrapper.style1 header p {
  color: #f8d1d2;
}

.wrapper.style1 table tbody tr {
  border-color: white;
}

.wrapper.style1 table tbody tr:nth-child(2n+1) {
  background-color: transparent;
}

.wrapper.style1 table th {
  color: white;
}

.wrapper.style1 table thead {
  border-bottom-color: white;
}

.wrapper.style1 table tfoot {
  border-top-color: white;
}

.wrapper.style1 table.alt tbody tr td {
  border-color: white;
}

.wrapper.style2 {
  background-color: #5a5a5a;
  color: #d5d5d5;
}

.wrapper.style2 input,
.wrapper.style2 select,
.wrapper.style2 textarea {
  color: white;
}

.wrapper.style2 a {
  color: #ee2922;
}

.wrapper.style2 strong,
.wrapper.style2 b {
  color: white;
}

.wrapper.style2 blockquote {
  border-left-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 code {
  background: rgba(255, 255, 255, 0.075);
  border-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 hr {
  border-bottom-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 .box {
  border-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 input[type='submit'],
.wrapper.style2 input[type='reset'],
.wrapper.style2 input[type='button'],
.wrapper.style2 button,
.wrapper.style2 .button {
  background-color: white;
  color: #5a5a5a !important;
}

.wrapper.style2 input[type='submit'].alt,
.wrapper.style2 input[type='reset'].alt,
.wrapper.style2 input[type='button'].alt,
.wrapper.style2 button.alt,
.wrapper.style2 .button.alt {
  background-color: transparent;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.15);
  color: white !important;
}

.wrapper.style2 input[type='submit'].alt:hover,
.wrapper.style2 input[type='reset'].alt:hover,
.wrapper.style2 input[type='button'].alt:hover,
.wrapper.style2 button.alt:hover,
.wrapper.style2 .button.alt:hover {
  background: rgba(255, 255, 255, 0.5);
}

.wrapper.style2 input[type='submit'].alt:active,
.wrapper.style2 input[type='reset'].alt:active,
.wrapper.style2 input[type='button'].alt:active,
.wrapper.style2 button.alt:active,
.wrapper.style2 .button.alt:active {
  background-color: rgba(255, 255, 255, 0.2);
}

.wrapper.style2 input[type='submit'].special,
.wrapper.style2 input[type='reset'].special,
.wrapper.style2 input[type='button'].special,
.wrapper.style2 button.special,
.wrapper.style2 .button.special {
  background-color: #ee2922;
  color: white !important;
}

.wrapper.style2 input[type='submit'].special:hover,
.wrapper.style2 input[type='reset'].special:hover,
.wrapper.style2 input[type='button'].special:hover,
.wrapper.style2 button.special:hover,
.wrapper.style2 .button.special:hover {
  background-color: #e85d61;
}

.wrapper.style2 input[type='submit'].special:active,
.wrapper.style2 input[type='reset'].special:active,
.wrapper.style2 input[type='button'].special:active,
.wrapper.style2 button.special:active,
.wrapper.style2 .button.special:active {
  background-color: #e23135;
}

.wrapper.style2 label {
  color: white;
}

.wrapper.style2 input[type='text'],
.wrapper.style2 input[type='password'],
.wrapper.style2 input[type='email'],
.wrapper.style2 select,
.wrapper.style2 textarea {
  background: rgba(255, 255, 255, 0.075);
  border-color: rgba(255, 255, 255, 0.5);
}

.wrapper.style2 input[type='text']:focus,
.wrapper.style2 input[type='password']:focus,
.wrapper.style2 input[type='email']:focus,
.wrapper.style2 select:focus,
.wrapper.style2 textarea:focus {
  border-color: #ee2922;
  box-shadow: 0 0 0 1px #ee2922;
}

.wrapper.style2 .select-wrapper:before {
  color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 input[type='checkbox']+label,
.wrapper.style2 input[type='radio']+label {
  color: #d5d5d5;
}

.wrapper.style2 input[type='checkbox']+label:before,
.wrapper.style2 input[type='radio']+label:before {
  background: rgba(255, 255, 255, 0.075);
  border-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 input[type='checkbox']:checked+label:before,
.wrapper.style2 input[type='radio']:checked+label:before {
  background-color: #ee2922;
  border-color: #ee2922;
  color: white;
}

.wrapper.style2 input[type='checkbox']:focus+label:before,
.wrapper.style2 input[type='radio']:focus+label:before {
  border-color: #ee2922;
  box-shadow: 0 0 0 1px #ee2922;
}

.wrapper.style2 ::-webkit-input-placeholder {
  color: #bdbdbd !important;
}

.wrapper.style2 :-moz-placeholder {
  color: #bdbdbd !important;
}

.wrapper.style2 ::-moz-placeholder {
  color: #bdbdbd !important;
}

.wrapper.style2 :-ms-input-placeholder {
  color: #bdbdbd !important;
}

.wrapper.style2 .formerize-placeholder {
  color: #bdbdbd !important;
}

.wrapper.style2 ul.alt li {
  border-top-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 header p {
  color: #bdbdbd;
}

.wrapper.style2 table tbody tr {
  border-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 table tbody tr:nth-child(2n+1) {
  background-color: rgba(255, 255, 255, 0.075);
}

.wrapper.style2 table th {
  color: white;
}

.wrapper.style2 table thead {
  border-bottom-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 table tfoot {
  border-top-color: rgba(255, 255, 255, 0.15);
}

.wrapper.style2 table.alt tbody tr td {
  border-color: rgba(255, 255, 255, 0.15);
}

@media screen and (max-width: 1280px) {
  .wrapper>.inner {
    width: 65em;
  }
}

@media screen and (max-width: 980px) {
  .wrapper>.inner {
    width: 100%;
  }
}

/* SVG icons */
.svg_icon {
  fill: white;
  vertical-align: text-bottom;
}

.svg_icon.pr {
  margin-right: 0.5em;
}

.button_text+.svg_icon,
.actions .svg_icon {
  position: relative;
  top: -0.15em;
}

/* Header */
body {
  position: relative;
  padding-top: 6em;
}

#header {
  background: #1c1c1c;
  color: #d5d5d5;
  cursor: default;
  position: fixed;
  top: 0;
  left: 0;
  text-align: right;
  width: 100%;
  height: 6em;
  max-height: 6em;
  z-index: 10001;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
}

#header.shrink {
  height: 4em;
  box-shadow: 4px 4px 8px 8px rgba(0, 0, 0, 0.15);
}

#header .inner {
  width: calc(100% - 6em);
  max-width: 65em;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 480px) {
  #header .inner {
    max-width: 90%;
    width: 90%;
  }
}

#header #logo {
  width: fit-content;
  height: fit-content;
}

#logo img {
  margin-top: 0.4em;
  width: 10.2253em;
  height: 4em;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
}

#header.shrink #logo img {
  margin-top: 0.6em;
  width: 7em;
  height: 2.2em;
}

@media screen and (max-width: 480px) {
  #header {
    min-width: 320px;
  }
}

/* Menu */
#nav {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1 1 auto;
  position: relative;
}

.main_menu {
  width: calc(100% - 2em);
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  flex: 0 1 auto;
}

@supports not (display: grid) {
  .main_menu {
    position: relative;
  }
}

#nav a {
  flex: 0 0 auto;
  transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
  display: flex;
  padding: 0 calc(.5em + 1px) 0 .5em;
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: normal;
  font-size: .85em;
  border-right: 1px solid #ee2922;
  min-height: 1.5em;
  text-align: center;
}

#nav a.no_border {
  border-right: none;
  padding-right: .5em;
}

#nav a.border_left {
  border-left: 1px solid #ee2922;
  padding-left: calc(.5em + 1px);
}

#nav .main_menu > a:last-child,
#nav .language_menu > a:last-child {
  border-right: none;
  padding-right: 0;
}

@media screen and (max-width: 736px) {
  #nav a {
    padding: 0 0.5em;
  }
}

#nav a:hover {
  color: #f04942;

}

#nav a.active, #nav a.ancestor {
  color: #f04942;
}

#nav .main_menu_item .svg_icon {
  margin-top: 0.25em;
}

@media screen and (max-width: 1150px) {
  #nav {
    display: none;
  }
}

/* Language selection - flags */
.language_menu {
  display: flex;
  position: absolute;
  visibility: hidden;
  opacity: 0;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

@supports not (display: grid) {
  .language_menu {
    top: 2.4em;
    right: 0;
  }

  .shrink .language_menu {
    top: 1.4em;
    right: 0;
  }
}

.language_menu, .main_menu {
  -moz-transition: opacity 0.5s, visibility 0.5s ease-in-out;
  -webkit-transition: opacity 0.5s, visibility 0.5s ease-in-out;
  -ms-transition: opacity 0.5s, visibility 0.5s ease-in-out;
  transition: opacity 0.5s, visibility 0.5s ease-in-out;
}

.language_menu_item img, .current_language img {
  display: inline;
  flex: 0 0 auto;
  width: 1.2em;
  height: 0.8em;
  position: relative;
  top: 0.3em;
  margin-right: 0.3em;
}

.language_menu_item span, .current_language span {
  flex: 0 0 auto;
}

.current_language .fa {
  margin: 0.3em 0 0 0.2em;
}

#nav .current_language {
  padding-right: 0;
}

/* Navigation panel - shows instead of menu on small screens */
/* Navigation panel icon */
.nav_panel_toggle {
  position: absolute;
  right: 1.8em;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  font-size: 1.5em;
  margin: auto 0;
  padding: 0;
  width: 1.5em;
  display: none;
  z-index: 10002;
  color: white;
}

@supports not (display: grid) {
  .nav_panel_toggle {
    top: 1.2em;
  }
  .shrink .nav_panel_toggle {
    top: 0.6em;
  }
}

.nav_panel_toggle:hover {
  color: #f69490;
  transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
}

@media screen and (max-width: 1150px) {
  .nav_panel_toggle {
    display: block;
  }
}

@media screen and (max-width: 480px) {
  .nav_panel_toggle {
    position: absolute;
    right: 0.6em;
  }
}

@media screen and (max-width: 320px) {
  .nav_panel_toggle {
    position: absolute;
    right: 1.05em;
  }
}

/* Navigation panel itself */
#nav_panel {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;

  transform: translatex(20em);
  -moz-transform: translatex(20em);
  -webkit-transform: translatex(20em);
  -ms-transform: translatex(20em);
  transition: transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -moz-transition: -moz-transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -webkit-transition: -webkit-transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -ms-transition: -ms-transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
  -webkit-overflow-scrolling: touch;
  visibility: hidden;
  overflow-y: auto;
  position: fixed;
  right: 0;
  top: 0;
  background: #1c1c1c;
  color: white;
  height: 100%;
  max-width: 80%;
  width: 20em;
  padding: 1.5em;
  text-transform: uppercase;
  z-index: 10003;
  display: none;
  border-left: 1px solid white;
}

#nav_panel.visible {
  -moz-transform: translatex(0);
  -webkit-transform: translatex(0);
  -ms-transform: translatex(0);
  transform: translatex(0);
  box-shadow: 0 0 1.5em 0 rgba(0, 0, 0, 0.2);
  visibility: visible;
}

#nav_panel a br {
  content: '';
}

#nav_panel a br:after {
  content: ' ';
}

#nav_panel a:not(.close) {
  color: white;
  transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
  font-weight: normal;
  display: block;
  width: 100%;
  padding: 0.75em 0;
  text-decoration: none;
}

#nav_panel a:hover {
  color: #f04942;
}

#nav_panel a.active, #nav_panel a.ancestor {
  color: #f04942;
}

#nav_panel .current_language {
  display: flex;
  order: -1;
  position: relative;
  top: -0.8em;
  border-bottom: dashed 1px #646464;
}

#nav_panel .main_menu,
#nav_panel .language_menu {
  width: 85%;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

#nav_panel .main_menu_item,
#nav_panel .language_menu_item {
  flex: 0 0 auto;
}

#nav_panel .current_language img,
#nav_panel .language_menu_item img {
  top: 0.05em;
}

#nav_panel .close {
  text-decoration: none;
  transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out;
  -webkit-tap-highlight-color: transparent;
  color: white;
  border: 0;
  cursor: pointer;
  display: block;
  width: 3em;
  height: 3em;
  line-height: 3em;
  padding-right: 1.25em;
  position: absolute;
  right: -1.2em;
  top: -0.5em;
  text-align: center;
  vertical-align: middle;
  font-size: 200%;
}

#nav_panel .svg_icon {
  position: relative;
  top: -0.3em;
  left: -0.1em;
}

#nav_panel .main_menu_item .svg_icon {
  position: relative;
  top: 0;
  left: 0.3em;
}

@media screen and (max-width: 1150px) {
  #nav_panel {
    display: flex;
  }
}

/* Section menu */
nav.section_menu ul {
  margin-top: 0;
  margin-bottom: 1em;
  padding: 0;
  list-style: none;
}

nav.section_menu li.menu_item {
  background-image: url(../images/right_arrow.svg);
  background-repeat: no-repeat;
  background-position: 0.5em .7em;
  background-color: lightgray;
  width: 100%;
  padding: 0;
  margin: 2px 0;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
}

nav.section_menu li.menu_item:hover {
  background-color: #f69490;
}

nav.section_menu li.menu_item.active, nav.section_menu li.menu_item.ancestor {
  background-image: url(../images/right_arrow_white.svg);
  background-color: #ee2922;
}

nav.section_menu li.menu_item a {
  width: inherit;
  display: block;
  padding: 0.3em 0.5em 0.3em 1.75em;
  color: black;
}

nav.section_menu li.menu_item a:hover {
  text-decoration: none;
}

nav.section_menu li.menu_item.active a, nav.section_menu li.menu_item.ancestor a {
  color: white;
}

nav.section_menu li.submenu {
  margin: 0;
  padding: 0;
}

/* Banner */
#banner {
  color: white;
  padding: 6em 0 5em 0;
  background-color: #0c0c0c;
  background-image: url('../images/retail_inventory_banner.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 15% 0;
  text-align: left;
  position: relative;
  z-index: 9999;
}

#banner:after {
  -moz-transition: opacity 2s ease;
  -webkit-transition: opacity 2s ease;
  -ms-transition: opacity 2s ease;
  transition: opacity 2s ease;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  background-color: #0c0c0ce0;
  opacity: 0;
}

#banner h1 {
  color: white;
}

#banner .button.alt {
  background-color: transparent;
  box-shadow: inset 0 0 0 2px white;
  color: white !important;
}

#banner .inner {
  max-width: 65em;
  width: calc(100% - 6em);
  margin: 0 auto;
  position: relative;
  z-index: 10000;
  line-height: 1.5;
}

#banner .background {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 2em;
  position: relative;
  z-index: 10000;
  background-color: rgba(0,0,0,0.6);

  transition-duration: 1.5s;
  transition-delay: .3s;
  transition-property: opacity, transform;
  transition-timing-function: ease;
  opacity: 0;
  transform: translate3d(-100px,0,0);
}

#banner .loaded {
  opacity: 1;
  transform: none;
}

#banner h1.one, #banner h1.two {
  font-size: 1.9em;
  margin: 0;
  padding: 0;
  letter-spacing: 3px;
  line-height: 140%;
  font-weight: normal;
}

#banner.smaller_text h1.one, #banner.smaller_text h1.two {
  letter-spacing: 1px;
  font-size: 1.4em;
}

#banner h1.two {
  margin: 0.15em 0 0.5em 0;
}

body.is-loading #banner:after {
  opacity: 1;
}

@media screen and (max-width: 736px) {
  #banner .texts h1 {
    font-size: 1em;
    letter-spacing: 1px;
  }

  #banner.smaller_text .texts h1 {
    font-size: 0.8em;
    letter-spacing: 1px;
  }

  #banner .background {
    display: block;
    width: max-content;
    padding: 1.5em 1.5em;
    left: 1em;
    bottom: 1em;
  }

  @supports not (display: grid) {
    #banner .background {
      width: 12.5em;
    }
  }
}

@media screen and (max-width: 480px) {
  #banner {
    width: 100%;
    padding: 8em 0 0 0;
    background-position: 30% 0;
  }

  #banner .inner {
    width: 100%;
  }

  #banner .background {
    display: block;
    width: max-content;
    padding: 1em 1em;
    left: 1em;
    bottom: 1em;
  }

  @supports not (display: grid) {
    #banner .background {
      width: 11.5em;
    }
  }
}

/* Main */
#main {
  padding: 3em 0;
}

@media screen and (max-width: 736px) {
  #main {
    padding: 2em 0;
  }
}

@media screen and (max-width: 480px) {
  #main {
    padding: 1em 0;
  }
}

#main .inner p:last-child {
  margin-bottom: 0;
}

/* Homepage metrics */
#metrics {
  background: white;
  border-bottom: 1px solid #dddddd;
  padding: 1.5em 0;
}

#metrics .inner {
  display: block;
}

#metrics .metrics_grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#metrics .metric_item {
  border-right: 1px solid #dddddd;
  padding: 0.1em 1.25em 0.2em 1.25em;
}

#metrics .metric_item:first-child {
  padding-left: 0;
}

#metrics .metric_item:last-child {
  border-right: none;
  padding-right: 0;
}

#metrics .metric_value {
  color: #ee2922;
  font-size: 1.9em;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

#metrics .metric_label {
  color: #111111;
  font-size: 0.72em;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 0.45em;
  text-transform: uppercase;
}

@media screen and (max-width: 980px) {
  #metrics .metrics_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #metrics .metric_item {
    padding-top: 1em;
  }
}

@media screen and (max-width: 736px) {
  #metrics {
    padding: 1.25em 0;
  }

  #metrics .metrics_grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #metrics .metric_item {
    border-bottom: 1px solid #dddddd;
    padding: 0.9em 1em 0.9em 0;
  }

  #metrics .metric_item:nth-child(2n) {
    border-right: none;
    padding-left: 1em;
    padding-right: 0;
  }

  #metrics .metric_item:nth-child(2n+1) {
    padding-left: 0;
  }

  #metrics .metric_item:nth-last-child(-n+2) {
    border-bottom: none;
  }
}

@media screen and (max-width: 480px) {
  #metrics {
    padding: 1em 0;
  }

  #metrics .metric_value {
    font-size: 1.65em;
  }

  #metrics .metric_label {
    font-size: 0.66em;
  }
}

/* One column layout */
#one {
  padding: 3em 0 3em 0;
}

#one h2 {
  margin-top: -0.35em;
}

#one .inner {
  display: flex;
  position: relative;
}

#one .inner .text {
  flex: 1 1 auto;
}

#one .inner .text li {
  padding-bottom: 0;
}

#one .inner .image {
  padding-left: 2em;
}

#one .image {
  height: auto;
  max-height: 12em;
}

@supports not (display: grid) {
  #one .image {
    width: 12em;
  }
}

@media screen and (max-width: 736px) {
  #one {
    padding: 2em 0 2em 0;
  }

  #one h2 {
    margin-top: 0;
  }

  #one .inner {
    position: relative;
  }

  #one .text {
    z-index: 1;
  }

  #one .image {
    position: absolute;
    right: 0;
    z-index: 0;
    opacity: 0.15;
    padding: 0;
  }
}

@media screen and (max-width: 480px) {
  #one {
    padding: 1em 0;
  }
}

#two {
  padding: 3em 0 3em 0;
  background: #f3f3f3;
  background: -moz-linear-gradient(left, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
  background: -webkit-linear-gradient(left, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
  background: linear-gradient(to right, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f3', endColorstr='#f7f7f7', GradientType=1);
}

#two .inner {
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

#two .inner article {
  width: 50%;
}

#two .inner article:first-child {
  padding-right: 6em;
}

#two .inner article:last-child {
  padding-left: 6em;
}

@media screen and (max-width: 980px) {
  #two {
    padding: 3em 0 3em 0;
    background: -moz-linear-gradient(top, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
    background: -webkit-linear-gradient(top, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
    background: linear-gradient(to bottom, #f3f3f3 0%, #f3f3f3 50%, #f7f7f7 0%, #f7f7f7 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f3f3', endColorstr='#f7f7f7', GradientType=0);
  }
  #two .inner {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  #two .inner article {
    width: 100%;
  }
  #two .inner article:first-child {
    padding-right: 0;
    padding-bottom: 2em;
  }
  #two .inner article:last-child {
    padding-left: 0;
    padding-top: 2em;
  }
}

@media screen and (max-width: 736px) {
  #two {
    padding: 2em 0 0.1em 0;
  }
}

@media screen and (max-width: 480px) {
  #two {
    padding: 1em 0;
  }
}

#three {
  padding: 3em 0 3em 0;
  background: #eeeeee;
}

#three .inner {
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: justify;
}

#three .inner article {
  width: 30%;
  display: block;
}

#three .inner article p {
  color: black;
}

#three .inner article .image {
  border: 1px solid lightgray;
}

@media screen and (max-width: 980px) {
  #three {
    padding: 3em 0 3em 0;
  }
  #three .inner {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  #three .inner article {
    width: 100%;
    margin: 0 auto;
  }
  #three .inner .actions {
    margin-top: 0 !important;
  }
  #three .button {
    margin-top: 0;
    margin-bottom: 2em;
  }

  #three article:last-child .button {
    margin: 0;
  }
}

@media screen and (max-width: 736px) {
  #three {
    padding: 2em 0 2em 0;
  }
}

@media screen and (max-width: 480px) {
  #three {
    padding: 1em 0;
  }
}

/* One wide column and one narrow (2/3 and 1/3) */
#two_and_one {
  height: 100%;
  padding-bottom: 3em;
  background: #fafafa;
  background: -moz-linear-gradient(to right, #fafafa 0%, #fafafa calc((100% - 65em)/2 + 65em*2/3), #eeeeee 0%, #eeeeee 100%);
  background: -webkit-linear-gradient(to right, #fafafa 0%, #fafafa calc((100% - 65em)/2 + 65em*2/3), #eeeeee 0%, #eeeeee 100%);
  background: linear-gradient(to right, #fafafa 0%, #fafafa calc((100% - 65em)/2 + 65em*2/3), #eeeeee 0%, #eeeeee 100%);
}

@media screen and (max-width: 76em) {
  #two_and_one {
    background: #fafafa;
    background: linear-gradient(to right, #fafafa 0%, #fafafa 65%, #eeeeee 0%, #eeeeee 100%);
  }
}

#two_and_one .inner {
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  margin: 3em auto 0 auto;
}

#two_and_one .inner > :first-child {
  padding-right: 2em;
  width: 66.67%;
}

#two_and_one .inner * .go_to_form {
  margin-top: 1em;
}

#two_and_one .inner > :last-child {
  padding-left: 2em;
  padding-top: 0;
  margin-top: -0.35em;
  width: 33.33%
}

#two_and_one .top_image {
  border-bottom: 1px solid lightgray;
  margin: 0;
}

#two_and_one .top_image.tall {
  display: none;
}

#two_and_one .alt blockquote {
  margin-top: -0.5em;
}

#two_and_one .alt blockquote+.image {
  margin-top: 2em;
}

#two_and_one .alt blockquote .image {
  border: 1px solid lightgray;
}

#two_and_one h1 {
  margin-bottom: 0;
}

#two_and_one .inner > :last-child h4 {
  margin-bottom: 0;
}

#two_and_one .inner > :last-child img {
  border: 1px solid lightgray;
}

@media screen and (max-width: 980px) {
  #two_and_one {
    background: #f3f3f3;
  }
  #two_and_one aside .content .image.fit:last-child {
    margin: 0;
  }
  #two_and_one .inner {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  #two_and_one .inner > :first-child {
    padding-right: 0;
    padding-bottom: 1em;
    width: 100%;
    border-right: none;
  }
  #two_and_one .inner > :last-child {
    padding-left: 0;
    padding-top: 1em;
    padding-bottom: 0;
    width: 100%;
  }
  #two_and_one .inner > :last-child h4 {
    margin-bottom: 0.5em;
  }

  #two_and_one .alt blockquote {
    margin-top: 0;
  }

  /* Section menu for max width 980 */
  nav.section_menu ul {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 2em;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  nav.section_menu li.menu_item {
    margin: 0.2em 0.2em 0 0;
    background-image: none;
    background-color: lightgray;
    display: block;
    width: auto;
  }

  nav.section_menu li.menu_item:hover {
    background-color: #f69490;
  }

  nav.section_menu li.menu_item.active, nav.section_menu li.menu_item.ancestor {
    background-image: none;
    background-color: #ee2922;
    color: white;
  }

  nav.section_menu li.menu_item a {
    padding: 0.5em 0.7em;
    color: black;
  }

  nav.section_menu li.menu_item a:hover {
    text-decoration: none;
  }

}

@media screen and (max-width: 736px) {
  #two_and_one {
    padding-bottom: 2em;
  }

  #two_and_one .inner {
    margin: 2em auto 0 auto;
  }
  #two_and_one .top_image.tall {
    display: block !important;
  }
  #two_and_one .top_image.normal {
    display: none !important;
  }
  #two_and_one .top_image.autoresize {
    object-fit: cover;
    height: 100px;
  }
}

@media screen and (max-width: 480px) {
  #two_and_one {
    padding-bottom: 1em;
  }

  #two_and_one .inner {
    margin: 1em auto 0 auto;
  }

  #two_and_one blockquote {
    margin-left: -0.5em;
  }
}

#main h3,
#two_and_one h3 {
  margin-top: 0.5em;
}

.content h3:first-child {
  margin-top: 0 !important;
}

#two_and_one .go_to_form {
  margin-bottom: 1.5em;
}

#two_and_one div.references h3 {
  margin-top: 0.5em !important;
}

/* Footer */
#footer {
  background-color: #646464;
  color: black;
  padding: 3em 0 3em 0;
}

@media screen and (max-width: 736px) {
  #footer {
    padding: 2em 0 0.1em 0;
  }
}

@media screen and (max-width: 480px) {
  #footer {
    padding: 1em 0 0.1em 0;
  }
}

#footer input,
#footer select,
#footer textarea {
  color: white;
}

#footer a {
  color: white;
}

#footer p {
  padding: 1em 0 0 0;
}

#footer strong,
#footer b,
#footer p {
  color: white;
}

#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6 {
  color: white;
}

#footer blockquote {
  border-left-color: white;
}

#footer code {
  background: none;
  border-color: white;
}

#footer hr {
  border-bottom-color: white;
  border-bottom-style: dashed;
  border-bottom-width: 1px;
  margin: 0.75em 0 0.75em 0;
  opacity: 0.5;
}

#footer hr.upper {
  margin-top: 0;
}

#footer input[type='submit'],
#footer input[type='reset'],
#footer input[type='button'],
#footer button,
#footer .button {
  background-color: #646464;
  color: white !important;
}

#footer input[type='submit']:hover,
#footer input[type='reset']:hover,
#footer input[type='button']:hover,
#footer button:hover,
#footer .button:hover {
  background-color:#646464;
}

#footer input[type='submit']:active,
#footer input[type='reset']:active,
#footer input[type='button']:active,
#footer button:active,
#footer .button:active {
  background-color: #c8c8c8;
}

#footer input[type='submit'].alt,
#footer input[type='reset'].alt,
#footer input[type='button'].alt,
#footer button.alt,
#footer .button.alt {
  background-color: transparent;
  box-shadow: inset 0 0 0 2px white;
  color: white !important;
}

#footer input[type='submit'].alt:hover,
#footer input[type='reset'].alt:hover,
#footer input[type='button'].alt:hover,
#footer button.alt:hover,
#footer .button.alt:hover {
  background: #ee2922;
}

#footer input[type='submit'].alt:active,
#footer input[type='reset'].alt:active,
#footer input[type='button'].alt:active,
#footer button.alt:active,
#footer .button.alt:active {
  background-color: #c8c8c8;
}

#footer input[type='submit'].special,
#footer input[type='reset'].special,
#footer input[type='button'].special,
#footer button.special,
#footer .button.special {
  background-color: white;
  color: #ee2922 !important;
}

#footer input[type='submit'].preclassifying:disabled {
  background-color: #646464;
  background-image: linear-gradient(110deg, #646464 0%, #646464 35%, #808080 50%, #646464 65%, #646464 100%);
  box-shadow: inset 0 0 0 2px white;
  color: white !important;
}

#footer label {
  color: white;
}

#footer input[type='text'],
#footer input[type='password'],
#footer input[type='email'],
#footer select,
#footer textarea {
  background-color: #505050;
  color: white;
  border-color: #c8c8c8;
}

#footer input[type='text']:focus,
#footer input[type='password']:focus,
#footer input[type='email']:focus,
#footer select:focus,
#footer textarea:focus {
  border-color: white;
  background-color: black;
  box-shadow: 0 0 0 1px white;
}

#footer .select-wrapper:before {
  color: white;
}

#footer label {
  float: none;
}

#footer input[type='checkbox'],
#footer input[type='radio'] {
  float: none;
}

#footer input[type='checkbox']+label,
#footer input[type='radio']+label {
  color: white;
  float: none;
  padding: 0.1em 0 0.15em 2.5em;
}

#footer input[type='checkbox']+label:before,
#footer input[type='radio']+label:before {
  background: none;
  border-color: white;
}

#footer input[type='checkbox']:checked+label:before,
#footer input[type='radio']:checked+label:before {
  background-color: white;
  border-color: white;
  color: #ee2922;
}

#footer input[type='checkbox']:focus+label:before,
#footer input[type='radio']:focus+label:before {
  border-color: white;
  box-shadow: 0 0 0 1px white;
}

#footer ::-webkit-input-placeholder {
  color: white !important;
}

#footer :-moz-placeholder {
  color: white !important;
}

#footer ::-moz-placeholder {
  color: white !important;
}

#footer :-ms-input-placeholder {
  color: white !important;
}

#footer .formerize-placeholder {
  color: white !important;
}

#footer .inner {
  max-width: 65em;
  width: calc(100% - 6em);
  margin: 0 auto;
}

@media screen and (max-width: 480px) {
  #footer .inner {
    max-width: 90%;
    width: 90%;
  }
}

#footer .contacts {
  font-size: 125%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  color: white;
  margin: 0 0 0 0;
  font-weight: bold;
}

#footer .contacts>* {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-bottom: 0.5em;
  margin-left: 1em;
  flex: 0 0 auto;
}

#footer .contacts a:hover {
  text-decoration: none;
  color: #f69490;
}

#footer .contacts .footer_jobs_contact a {
  background: #ee2922;
  border: 2px solid #ee2922;
  color: white;
  line-height: 1.8;
  padding: 0 0.65em;
}

#footer .contacts .footer_jobs_contact a:hover {
  background: black;
  border-color: black;
  color: white;
}

@media screen and (max-width: 736px) {
  #footer .contacts {
    font-size: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 480px) {
  #footer .contacts>* {
    margin-left: 0;
  }
  #footer .contacts .logo {
    display: none !important;
  }
}

#footer .contacts>*:first-child {
  margin-left: 0;
}

#footer .contacts .logo {
  flex: 1 0 auto;
  display: flex;
  justify-content: flex-end;
}

#footer .contacts .logo img {
  height: 1em;
}

#footer .contacts .fa {
  font-size: 150%;
  padding-right: 0.3em;
}

#footer .contacts .fa-envelope-o {
  padding-bottom: 0.1em;
}

#footer .links {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  color: white;
  width: 100%;
}

#footer .links>* {
  padding-right: 1em;
}

#footer .links a {
  color: white;
}

#footer .links a:hover {
  text-decoration: none;
  color: #f69490;
}

#footer .version,
#footer .credits {
  opacity: 33%;
}

#footer .svg_icon {
  vertical-align: middle;
  position: relative;
  top: -0.15em;
}

/* Contact form */
#form .success {
  padding: 2em;
  background: white;
  margin-bottom: 3em;
  border: 2px solid #ee2922;
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.5);
  display: flex;
  align-items: center;
}

#form .success .text {
  margin-left: 2em;
}

#form .success h2 {
  color: #ee2922;
}

#form .success p {
  padding-top: 0.5em;
  color: black;
  font-size: 120%;
}

#form .failure {
  color: yellow;
}

#form p.failure {
  padding: 0 0 2em 0;
  font-size: 120%;
  font-weight: bold;
}

#form form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
  column-gap: 1em;
  row-gap: 2em;
  float: none;
  width: 100%;
  margin: 0 0 0 0;
  padding: 0 0 2em 0;
}

@media screen and (max-width: 480px) {
  #form form  {
    row-gap: 1em;
  }

  #form header p {
    font-size: 100%;
  }
}

#form .field {
  margin: 0;
  padding: 0;
  align-self: end;
}

#form .field label {
  margin: 0;
  padding: 0 0 0.5em 0;
}

@supports not (display: grid) {
  #form .field label {
    margin-top: 1em;
  }
}

#form input.error,
#form textarea.error {
  border-color: #ee2922;
  outline: 1px solid white;
}

#form ul.errorlist {
  list-style: none;
  display: block;
  margin: 0;
  padding: 0;
}

#form ul.errorlist li {
  color: #f69490;
  display: block;
  margin: 0;
  padding: 0;
}

#form .field p {
  padding: 0;
  margin: 0.5em 0 0 0;
}

#form .field p a {
  font-weight: bold;
}

#form ul.actions {
  margin: 0 !important;
}

@supports not (display: grid) {
  #form ul.actions {
    margin-top: 1em !important;
  }
}

#form ul.actions li {
  margin: 0;
  padding: 0;
}

#form .field.full,
#form .actions {
  grid-column: 1 / 3;
}

#form .job_redirect_offer {
  align-self: start;
  background: white;
  border: 2px solid #ee2922;
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.35);
  display: none;
  padding: 1.25em;
}

#form .job_redirect_offer.visible {
  display: block;
}

#form .job_redirect_offer h3 {
  color: #ee2922;
  margin: 0 0 0.35em 0;
}

#form .job_redirect_offer p {
  color: #111111;
  margin: 0 0 1em 0;
  padding: 0;
}

#form .job_redirect_actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75em;
}

#footer #form .job_redirect_offer .button.special {
  background: #ee2922;
  color: white !important;
}

#footer #form .job_redirect_offer .button.special:hover {
  background: #e85d61;
}

#footer #form .job_redirect_offer button.alt {
  box-shadow: inset 0 0 0 2px #646464;
  color: #646464 !important;
}

#footer #form .job_redirect_offer button.alt:hover {
  background: #646464 !important;
  color: white !important;
}

@media screen and (max-width: 480px) {
  #form .field {
    grid-column: 1 / 3;
  }

  #form .job_redirect_actions {
    display: block;
  }

  #form .job_redirect_actions .button,
  #form .job_redirect_actions button {
    margin-top: 0.75em;
    width: 100%;
  }
}

/* Specific pages */
ul.references {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  z-index: 1000;
}

ul.references li {
  padding: 0 0.55em 0.2em 0;
  margin: 0;
}

ul.references li:after {
  /*content: '\25A0';*/
  content: '+';
  color: #ee2922;
  position: relative;
  left: 0.25em;
  font-size: 100%;
}

ul.references li:last-child:after {
  display: none;
}

#vacancies ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#vacancies li {
  padding: 0 0 1em 0;
  margin: 0;
  display: flex;
  width: 100%;
}

#vacancies li:last-child {
  padding: 0;
}

#vacancies li .image {
  flex: 0 0 200px;
  margin-right: 1em;
  border: 1px solid lightgray;
  height: fit-content;
}

#vacancies .image:hover {
  border: 1px solid #ee2922;
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.5);
  filter: saturate(150%) brightness(110%);
}

#vacancies .text {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-self: center;
}

#vacancies .title {
  font-size: 125%;
  font-weight: bold;
}

#vacancies .description {
  color: black !important;
}

#vacancies .register {
  width:fit-content;
  margin-top: 1em;
}

#vacancies li p {
  margin: 0;
}

#vacancies li.empty {
  padding: 0;
}

@media screen and (max-width: 480px) {
   #vacancies li .image {
      display: none;
   }
}

#about_us #flex {
  display: flex;
  width: 100%;
}

#about_us #flex > :first-child {
  flex: 1 1 67%;
}

#about_us #flex > :last-child {
  flex: 1 1 33%;
  margin-left: 1em;
}

#about_us img {
  width: 100%;
}

@media screen and (max-width: 736px) {
  #about_us #flex {
    flex-wrap: wrap;
    position: relative;
    height: 100%;
  }

  #about_us img {
    width: auto;
    height: 100%;
    right: initial;
  }

  #about_us #flex > :last-child {
    overflow: hidden;
    position: absolute;
    height: 75%;
    margin-left: 0;
    top: 0;
    right: 0;
    opacity: 0.15;
    z-index: 1;
  }
}

@media screen and (max-width: 480px) {
  #about_us #flex > :last-child {
    height: 35%;
  }
}

#contacts .alt .content {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

#contacts aside h3+div {
  margin-top: 0.5em;
}

#contacts aside a {
  display: flex;
  align-items: center;
  margin-bottom: 0.5em;
}

#contacts .alt .flag {
  margin-right: 0.5em;
  width: 2em;
  /*border: 1px solid gray !important;*/
  border: none !important;
  box-shadow: 0 2px 4px 0 rgba(0,0,0,0.5);
}

#contacts #map {
  margin-top: 1em;
}

#contacts #map .hover,
#contacts #map .subsidiary:hover {
  fill: yellow !important;
  stroke: black !important;
}

@media screen and (max-width: 980px) {
  #contacts aside.alt {
    padding-top: 0 !important;
    margin-top: 0;
  }

  #contacts .alt .content {
    padding-right: 0;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: nowrap;
  }

  #contacts #map {
    width: 60%;
    height: 60%;
  }
}

@media screen and (max-width: 480px) {
  #contacts .alt .content {
    flex-wrap: wrap;
  }
  #contacts #map {
    width: 100%;
    height: 100%;
  }
}

#search form {
  margin-bottom: 0;
}

#search form .field {
  margin-bottom: 1em;
}

#search .no_results {
  margin-top: 1em;
}

#search .result_title {
  margin-top: 1em;
  margin-bottom: 0.5em;
}

#search .results {

}

#impressum h3 {
  text-transform: none !important;
}

#impressum h3:not(:first-of-type) {
  padding-top: 0.5em;
}

#cookie_consent {
  z-index: 10000;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 1em;
  padding: 1em 3em;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  bottom: 0;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  background-color: black;
  color: white;
  box-shadow: 0 1em 1em 1em rgba(0, 0, 0, 0.2);
  -moz-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

#cookie_consent.visible {
  visibility: visible !important;
  opacity: 1 !important;
  -moz-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

#cookie_consent p {
  margin: 0;
  padding: 0;
}

#cookie_consent div {
  display: grid;
  grid-template-columns: 3fr 2fr;
  grid-gap: 1em;
  justify-self: end;
}

#cookie_consent button {
  display: inline;
  margin: 0;
  box-shadow: inset 0 0 0 2px white;
  color: white !important;
}

#cookie_consent .settings {
  color: white !important;
  font-weight: bold;
  text-decoration: none;
}

#cookie_consent .settings::after {
  content: " >>";
}

#cookie_consent .settings:hover {
  text-decoration: none;
}

#cookie_consent button.agree_to_all {
  box-shadow: inset 0 0 0 2px #20ff20;
  color: #20ff20 !important;
}

#cookie_consent button.agree_to_all:hover {
  background-color: #20ff20 !important;
  color: black !important;
}

#cookie_consent button.agree_to_none {
  box-shadow: inset 0 0 0 2px #ee2922;
  color: #ee2922 !important;
}

#cookie_consent button.agree_to_none:hover {
  background-color: #ee2922 !important;
  color: white !important;
}

@media screen and (max-width: 980px) {
  #cookie_consent {
    grid-template-columns: minmax(0, 1fr) auto;
    padding-left: 2em;
    padding-right: 2em;
  }

  #cookie_consent div {
    grid-template-columns: 1fr;
    max-width: 16em;
    width: max-content;
  }

  #cookie_consent button {
    line-height: 1.15;
    min-height: 2.4em;
    padding: 0 0.8em;
    white-space: normal;
    width: 100%;
  }
}

@media screen and (max-width: 736px) {
  #cookie_consent {
    font-size: 75%;
  }
}

@media screen and (max-width: 480px) {
  @supports (display: grid) {
    #cookie_consent {
      display: grid;
      grid-template-columns: 1fr;
      grid-gap: 0.65rem;
      padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom));
    }
    #cookie_consent p {
      line-height: 1.35;
    }
    #cookie_consent div {
      grid-template-columns: 1fr 1fr;
      grid-gap: 0.5rem;
      justify-self: stretch;
      max-width: none;
      width: 100%;
    }
    #cookie_consent button {
      min-height: 2.25rem;
      padding: 0 0.5rem;
      white-space: normal;
      line-height: 1.15;
    }
  }
}

#cookie_consent_form {
  padding: 0;
  margin: 0;
}

#cookie_consent_form input {
  float: none;
  margin: 0;
  padding: 0;
}

input[type='checkbox']:disabled+label:before {
  background-color: gray;
  border-color: gray;
}

#cookie_consent_form label {
  float: none;
  margin: 0;
}


/* RocketChat Live chat */
.rocketchat-container {
  display: none;
}


/* Optional content blocks. Existing page templates keep their original styles. */
.content-blocks-heading {
  padding: 3em 0;
  background: #fafafa;
}

.content-blocks-heading h1 {
  margin: 0;
}

.content-block-inner {
  max-width: 65em;
  width: calc(100% - 6em);
  margin: 0 auto;
}

.content-block {
  padding: 4em 0;
  background: #fafafa;
  color: #111;
  overflow-wrap: anywhere;
}

.content-block-heading {
  margin-bottom: 1.4em;
}

.content-block-heading h1,
.content-block-heading h2,
.content-block-column h2,
.content-block-column h3 {
  margin: 0;
}

.content-block-heading::after,
.content-blocks-heading h1::after {
  content: '';
  display: block;
  width: 3em;
  margin-top: .8em;
  border-bottom: 3px solid #ee2922;
}

.content-block-copy {
  max-width: 52em;
}

.content-block-copy h2,
.content-block-copy h3,
.content-block-copy h4,
.content-block-copy h5,
.content-block-copy h6 {
  margin: 1.2em 0 .5em;
}

.content-block-copy > :first-child {
  margin-top: 0;
}

.content-block-copy > :last-child {
  margin-bottom: 0;
}

.content-block-copy img {
  max-width: 100%;
  height: auto;
}

.content-block-copy pre,
.content-block-copy table {
  max-width: 100%;
  overflow-x: auto;
}

.content-block-actions {
  margin-top: 1.75em;
}

.content-block .button {
  height: auto;
  min-height: 3.5em;
  padding: .8em 2.25em;
  line-height: 1.7;
  white-space: normal;
  max-width: 100%;
}

.content-block-align-center {
  text-align: center;
}

.content-block-align-center .content-block-heading::after,
.content-block-align-center .content-block-copy {
  margin-left: auto;
  margin-right: auto;
}

.content-block-theme-muted {
  background: #eee;
}

.content-block-theme-dark {
  background: #1c1c1c;
  color: #fff;
}

.content-block-theme-dark :is(h1, h2, h3, h4, h5, h6),
.content-block-theme-accent :is(h1, h2, h3, h4, h5, h6),
.content-block-hero.content-block-has-image :is(h1, h2, h3, h4, h5, h6) {
  color: inherit;
}

.content-block-theme-dark a:not(.button) {
  color: #ff827d;
}

.content-block-theme-accent {
  background: #ee2922;
  color: #fff;
}

.content-block-theme-accent a,
.content-block-theme-accent .button.alt {
  color: #fff !important;
}

.content-block-theme-accent .content-block-heading::after {
  border-color: #fff;
}

.content-block-theme-accent .button.alt {
  box-shadow: inset 0 0 0 2px #fff;
}

.content-block-theme-accent .button.alt:hover {
  color: #ee2922 !important;
  background: #fff !important;
}

.content-block-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 28em;
  padding: 5em 0;
}

.content-block-hero-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}

.content-block-hero.content-block-has-image::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(0, 0, 0, .82), rgba(0, 0, 0, .38));
}

.content-block-hero.content-block-has-image {
  color: #fff;
}

.content-block-hero .content-block-copy {
  max-width: 42em;
}

.content-block-hero h1 {
  font-size: clamp(1.8em, 3.6vw, 2.6em);
}

.content-block-hero.content-block-has-image a:not(.button) {
  color: #fff;
  text-decoration: underline;
}

.content-block-hero.content-block-has-image .button.alt {
  color: #fff !important;
  box-shadow: inset 0 0 0 2px #fff;
}

.content-block-image-layout {
  display: grid;
  gap: 2.5em;
  align-items: center;
}

.content-block-image-with-copy {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.content-block-figure {
  margin: 0;
  min-width: 0;
}

.content-block-figure img,
.content-block-column > img {
  display: block;
  width: 100%;
  height: auto;
}

.content-block-figure figcaption {
  margin-top: .75em;
  font-size: .9em;
  line-height: 1.6;
}

.content-block-image-right .content-block-image-with-copy .content-block-figure {
  order: 1;
}

.content-block-columns {
  display: grid;
  gap: 2em;
  margin-top: 2em;
}

.content-block-columns-1 {
  grid-template-columns: minmax(0, 1fr);
}

.content-block-columns-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.content-block-columns-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.content-block-column {
  min-width: 0;
}

.content-block-column > img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  margin-bottom: 1.25em;
}

.content-block-column > h2,
.content-block-column > h3 {
  margin-bottom: .75em;
}

.content-block-column > .button {
  margin-top: 1.5em;
}

.content-block-cta {
  padding: 3.5em 0;
}

@media screen and (max-width: 980px) {
  .content-block-columns-3 {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media screen and (max-width: 736px) {
  .content-block {
    padding: 3em 0;
  }
  .content-block-image-with-copy,
  .content-block-columns-2 {
    grid-template-columns: minmax(0, 1fr);
  }
  .content-block-image-right .content-block-image-with-copy .content-block-figure {
    order: 0;
  }
  .content-block-hero {
    min-height: 25em;
    padding: 4em 0;
  }
}

@media screen and (max-width: 480px) {
  .content-block-inner {
    width: 90%;
  }
  .content-block-image-layout,
  .content-block-columns {
    gap: 1.75em;
  }
}

/* Print styles */
@media print {
  * {
    background: none !important;
    color: black !important;
    box-shadow: none !important;
  }

  body, #footer {
    padding: 0;
  }

  #one, #two, #three, #two_and_one {
    padding-top: 1em;
    padding-bottom: 0;
  }

  #banner, #form, #cookie_consent, #footer .links, .go_to_form, #footer .logo, .button {
    display: none;
  }

  #header {
    margin-top: 0 !important;
    padding-top: 0 !important;
    position: static !important;
    display: block !important;
    opacity: 1 !important;
  }

  #header.shrink {
    margin-top: 0 !important;
    padding-top: 0 !important;
    position: static !important;
    display: block !important;
    opacity: 1 !important;
  }
}
