/*
███████████████████████████████████████████████████████████████████████████████████████████████
    FontAwesome
███████████████████████████████████████████████████████████████████████████████████████████████
*/
@import "fontawesome/solid.min.css";

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Web-Fonts
███████████████████████████████████████████████████████████████████████████████████████████████
*/
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src:
    url("../fonts/montserrat-v25-latin-300.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-300.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 300;
  src:
    url("../fonts/montserrat-v25-latin-300italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-300italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src:
    url("../fonts/montserrat-v25-latin-regular.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 400;
  src:
    url("../fonts/montserrat-v25-latin-italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src:
    url("../fonts/montserrat-v25-latin-500.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-500.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 500;
  src:
    url("../fonts/montserrat-v25-latin-500italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-500italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src:
    url("../fonts/montserrat-v25-latin-600.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-600.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 600;
  src:
    url("../fonts/montserrat-v25-latin-600italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-600italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src:
    url("../fonts/montserrat-v25-latin-700.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-700.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 700;
  src:
    url("../fonts/montserrat-v25-latin-700italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-700italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  src:
    url("../fonts/montserrat-v25-latin-800.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-800.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 800;
  src:
    url("../fonts/montserrat-v25-latin-800italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-800italic.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src:
    url("../fonts/montserrat-v25-latin-900.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-900.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 900;
  src:
    url("../fonts/montserrat-v25-latin-900italic.woff2") format("woff2"),
    url("../fonts/montserrat-v25-latin-900italic.woff") format("woff");
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Viewport-Anweisung
███████████████████████████████████████████████████████████████████████████████████████████████
*/
@-ms-viewport {
  width: device-width;
  zoom: 1;
}
@-o-viewport {
  width: device-width;
  zoom: 1;
}
@viewport {
  width: device-width;
  zoom: 1;
}
/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Eric Meyer's CSS Reset
███████████████████████████████████████████████████████████████████████████████████████████████
*/
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,
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-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
header,
section,
footer,
aside,
nav,
main,
article,
figure {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
ol li {
  list-style: decimal;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Variablen
███████████████████████████████████████████████████████████████████████████████████████████████
*/
:root {
  --font_serif: "Times New Roman", Times, serif;
  --font_sans_serif: "Montserrat", Arial, Helvetica, Sans-Serif;

  --font_size_html: 16px;

  --font_size_h1: 2.8em;
  --font_size_h2: 1.8em;
  --font_size_h3: 1.5em;
  --font_size_h4: 1.1em;

  --font_color_default: #2d3336;
  --font_color_heading: #2d3336;
  --font_color_link: #0e5287;

  --font_weight_light: 300;
  --font_weight_normal: 400;
  --font_weight_medium: 500;
  --font_weight_bold: 700;
  --font_weight_black: 900;

  --color_brand: #373435;
  --color_brand_2: #4a6616;

  --wrapper_width_inner: 1300px;
  --wrapper_width_narrow: 980px;

  --inital_flex_col_width_wide: 63%;
  --inital_flex_col_width_narrow: 31%;
}
@media (max-width: 1200px) {
  :root {
    --inital_flex_col_width_narrow: 34%;
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    allgemeine Einstellungen
███████████████████████████████████████████████████████████████████████████████████████████████
*/
html {
  font-size: var(--font_size_html);
  scroll-behavior: smooth;
  min-height: 100%;
  position: relative;
}
body {
  font-size: 100%;
  background-color: #fff;
}
body,
body * {
  box-sizing: border-box;
  font-family: var(--font_sans_serif);
  color: var(--font_color_default);
  line-height: 1.8em;
  background-repeat: no-repeat;
  font-weight: var(--font_weight_normal);
}
p,
table {
  margin-bottom: 1.5em;
}
.medium {
  font-weight: var(--font_weight_medium);
}
strong,
.bold {
  font-weight: var(--font_weight_bold);
}
.bolder {
  font-weight: var(--font_weight_black);
}
i,
em {
  font-style: italic;
}
.center {
  text-align: center !important;
}
.center > * {
  display: inline-block;
}
.clear {
  clear: both;
  float: none;
  display: block;
}
a.fancybox img[style*="float:left"],
a.fancybox img[style*="float: left"] {
  margin: 0 2% 1% 0;
}
a.fancybox img[style*="float:right"],
a.fancybox img[style*="float: right"] {
  margin: 0 0 1% 2%;
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    dynamische Schriftgröße
███████████████████████████████████████████████████████████████████████████████████████████████
*/
@media (max-width: 1300px) {
  body {
    font-size: 98.4%;
  }
}
@media (max-width: 1200px) {
  body {
    font-size: 96.8%;
  }
}
@media (max-width: 1100px) {
  body {
    font-size: 95.2%;
  }
}
@media (max-width: 1000px) {
  body {
    font-size: 93.6%;
  }
}
@media (max-width: 900px) {
  body {
    font-size: 92%;
  }
}
@media (max-width: 800px) {
  body {
    font-size: 90.4%;
  }
}
@media (max-width: 700px) {
  body {
    font-size: 88.8%;
  }
}
@media (max-width: 600px) {
  body {
    font-size: 87.2%;
  }
}
@media (max-width: 500px) {
  body {
    font-size: 85.6%;
  }
}
@media (max-width: 400px) {
  body {
    font-size: 84%;
  }
}
@media (max-width: 300px) {
  body {
    font-size: 82.4%;
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Überschriften
███████████████████████████████████████████████████████████████████████████████████████████████
*/
h1,
.like_h1,
h2,
h3,
h4 {
  display: block;
  clear: both;
  float: none;
  overflow: visible;
  text-align: left;
  line-height: 1.2em;
  color: var(--font_color_heading);
  font-weight: var(--font_weight_bold);
}
h1,
.like_h1 {
  font-size: var(--font_size_h1);
  margin-top: calc(var(--font_size_h1) * 0.6);
  margin-bottom: calc(var(--font_size_h1) * 0.4);
  font-weight: var(--font_weight_bold);
}
h1 + .subheading,
.like_h1 + .subheading {
  font-size: 1.5em !important;
  margin-top: calc(var(--font_size_h1) * -0.6) !important;
  font-weight: var(--font_weight_normal);
  color: var(--color_brand);
  line-height: 1.1em;
}
h2,
.like_h2 {
  font-size: var(--font_size_h2);
  margin-top: calc(var(--font_size_h2));
  margin-bottom: calc(var(--font_size_h2) * 0.3);
}
h3 {
  font-size: var(--font_size_h3);
  margin-top: calc(var(--font_size_h3) * 0.8);
  margin-bottom: calc(var(--font_size_h3) * 0.3);
}
h4 {
  font-size: var(--font_size_h4);
  margin-top: calc(var(--font_size_h4) * 0.6);
  margin-bottom: calc(var(--font_size_h4) * 0.2);
  color: var(--font_color_default);
}
@media (max-width: 1100px) {
  h1,
  h2.like_h1 {
    font-size: calc(var(--font_size_h1) * 0.84);
  }
  h2,
  h1.like_h2 {
    font-size: calc(var(--font_size_h2) * 0.88);
  }
  h3 {
    font-size: calc(var(--font_size_h3) * 0.92);
  }
  h4 {
    font-size: calc(var(--font_size_h4) * 0.96);
  }
}
@media (max-width: 900px) {
  h1,
  h2.like_h1 {
    font-size: calc(var(--font_size_h1) * 0.8);
    text-transform: none;
  }
  h2,
  h1.like_h2 {
    font-size: calc(var(--font_size_h2) * 0.87);
  }
  h3 {
    font-size: calc(var(--font_size_h3) * 0.94);
  }
}
@media (max-width: 600px) {
  h1,
  h2.like_h1 {
    font-size: calc(var(--font_size_h1) * 0.78);
  }
  h2,
  h1.like_h2 {
    font-size: calc(var(--font_size_h2) * 0.83);
  }
  h3 {
    font-size: calc(var(--font_size_h3) * 0.88);
  }
  h4 {
    font-size: calc(var(--font_size_h4) * 0.93);
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Sticky Footer
███████████████████████████████████████████████████████████████████████████████████████████████
*/
html {
  height: 100%;
}
body {
  height: 100%;
  display: flex;
  flex-direction: column;
}
#content {
  flex: 1 0 auto;
}
#header,
#footer {
  flex-shrink: 0;
}
/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Layout
███████████████████████████████████████████████████████████████████████████████████████████████
*/
.inner {
  width: 100%;
  max-width: var(--wrapper_width_inner);
  margin: 0 auto;
  overflow: auto;
  padding-left: 2rem;
  padding-right: 2rem;
}
.narrow {
  width: 100%;
  max-width: var(--wrapper_width_narrow);
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
}
.anchor {
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  margin-top: -160px;
}
@media (max-width: 1000px) {
  .inner {
    max-width: 843px;
  }
}
@media (max-width: 900px) {
  .inner,
  .narrow {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Column-Layout
███████████████████████████████████████████████████████████████████████████████████████████████
*/
.clc {
  overflow: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: stretch;
}
.clc.vcenter {
  align-items: center;
  align-content: center;
}
.clc .col {
  flex-grow: 0;
  flex-shrink: 1;
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Header
███████████████████████████████████████████████████████████████████████████████████████████████
*/
#header {
  padding: 1rem 0 1rem 0;
}
#header .clc {
  align-items: center;
  align-content: center;
}
#header .clc .logo_col {
  width: var(--inital_flex_col_width_wide);
  line-height: 0;
}
#header .clc .contact_col {
  width: var(--inital_flex_col_width_narrow);
}
#header .logo {
  display: inline-block;
  line-height: 0;
  text-decoration: none;
}
#header .logo img {
  display: block;
  width: auto;
  height: auto;
  max-height: 226px;
  max-width: 100%;
}
#header .counterparts {
  display: flex;
  flex-direction: column;
  gap: 2ch;
  margin-inline: auto;
}
#header .counterparts .block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#header a.telephone {
  text-decoration: none;
}
#header .telephone {
  display: inline-block;
  font-size: 1.35em;
  line-height: 1.5em;
  font-weight: var(--font_weight_medium);
  float: right;
}
#header .telephone::before {
  font-family: "Font Awesome 5 Free";
  content: "\f879";
  font-size: 1.2em;
  display: inline-block;
  margin-right: 0.4em;
  color: var(--color_brand_2);
}
@media (max-width: 730px) {
  #header .clc .col {
    width: 100% !important;
    text-align: center;
  }
  #header .logo {
    margin-inline: auto;
  }
  #header .counterparts {
    margin-top: 2rem;
  }
  #header .counterparts .block {
    align-items: center;
  }
  #header .telephone {
    float: none;
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Content
███████████████████████████████████████████████████████████████████████████████████████████████
*/
#content {
  overflow: auto;
  padding: 1em 0 4rem 0;
}
#content > .inner {
  overflow: visible;
}
#content ul {
  margin-left: 1.8rem;
  list-style: none !important;
}
#content ul li {
  line-height: inherit;
  margin-top: 0.8em;
  line-height: 1.5em;
}
#content ul li::before {
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-size: 0.9em;
  display: block;
  float: left;
  width: 1.8rem;
  margin-left: -1.8rem;
  text-align: center;
  color: inherit;
}
#content ol {
  margin-left: 3.3em;
}
#content ol li {
  margin-top: 0.6em;
}
#content p,
#content table,
#content ol,
#content ul {
  margin-bottom: 1.2em;
}
#content a:not(.button) {
  color: var(--font_color_link);
  text-decoration: underline;
}
#content img {
  width: 100%;
}
@media (max-width: 730px) {
  #content {
    padding-top: 1rem;
    padding-bottom: 2rem;
  }
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Homepage
███████████████████████████████████████████████████████████████████████████████████████████████
*/
#layout_con {
  overflow: visible;
}
#layout_con .col {
  border-radius: 0.4em !important;
  overflow: hidden;
  box-shadow:
    0.3px 0.3px 0.7px rgba(0, 0, 0, 0.01),
    0.6px 0.8px 1.6px rgba(0, 0, 0, 0.014),
    1px 1.3px 2.8px rgba(0, 0, 0, 0.017),
    1.6px 2.1px 4.4px rgba(0, 0, 0, 0.02),
    2.5px 3.3px 6.8px rgba(0, 0, 0, 0.023),
    3.9px 5.1px 10.6px rgba(0, 0, 0, 0.026),
    6.5px 8.5px 17.5px rgba(0, 0, 0, 0.03),
    13px 17px 35px rgba(0, 0, 0, 0.04);
}
#layout_con .hero_col {
  width: var(--inital_flex_col_width_wide);
  background-color: var(--color_brand_2);
}
#layout_con .hero_col img {
  display: block;
  line-height: 0;
}
#layout_con .hero_col h1 {
  display: block;
  width: 100%;
  background-color: var(--color_brand_2);
  color: #fff;
  font-size: 1.5em;
  text-align: center;
  line-height: 1.1em;
  margin: 0;
  padding: 0.5em;
  font-weight: var(--font_weight_normal);
}
#layout_con .hero_col .text {
  background-color: var(--color_brand_2);
  padding: 1em 1em;
  text-align: center;
  color: #fff;
  line-height: 1.4em;
  margin-bottom: 0;
}
#layout_con .info_col {
  width: var(--inital_flex_col_width_narrow);
  background-color: #fff;
  color: var(--font_color_default);
  background-color: var(--color_brand);
  color: #fff;
  padding: 3rem 2.5em;
}
#layout_con .info_col * {
  color: inherit;
}
#layout_con .info_col :last-child,
#layout_con .info_col :last-child :last-child {
  margin-block-end: 0;
}
#layout_con .info_col .heading {
  display: block;
  line-height: 1.2em;
  font-size: 1.6em;
  font-weight: var(--font_weight_normal);
  margin: 3ch 0 0.6em 0;
  padding-bottom: 0.2em;
  border-bottom: 1px solid #666;
}
#layout_con .info_col > .heading:first-child {
  margin-top: 0;
}
#layout_con .info_col table tr > td {
  line-height: 1.3em;
}
#layout_con .info_col table tr > td:nth-child(2) {
  padding-left: 1.5em;
}
#layout_con .info_col .block {
  margin-bottom: 1em;
}
#layout_con .info_col a {
  color: inherit;
}
#layout_con .info_col span,
#layout_con .info_col a {
  display: inline-block;
  line-height: 1.3em;
}
#layout_con .info_col a.telephone,
#layout_con .info_col a.email {
  text-decoration: none;
}
#layout_con .info_col a.telephone:hover,
#layout_con .info_col a.email:hover {
  text-decoration: underline;
}
@media (max-width: 1200px) {
  #layout_con .hero_col .text {
    padding-left: 2em;
    padding-right: 2em;
  }
}
@media (max-width: 1100px) {
  #layout_con .info_col {
    padding: 1.5em 2em;
  }
}
@media (max-width: 1000px) {
  #layout_con .col {
    width: 100% !important;
  }
  #layout_con .info_col {
    margin-top: 3rem;
  }
}
@media (max-width: 730px) {
  #layout_con .info_col {
    margin-top: 3vw;
  }
}
@media (max-width: 600px) {
  #layout_con .hero_col h1 {
    font-size: 1.4em;
    text-align: left;
  }
  #layout_con .hero_col .text {
    text-align: left;
    padding-left: 1em;
    padding-right: 1em;
  }
}
@media (max-width: 300px) {
  #layout_con .info_col {
    padding: 1em;
  }
  #layout_con .info_col .heading {
    font-size: 1.4em;
  }
  #layout_con .info_col table tr > td:nth-child(2) {
    padding-left: 0.7em;
  }
}
/*
███████████████████████████████████████████████████████████████████████████████████████████████
  Copyright- und KI-Kennzeichnung
███████████████████████████████████████████████████████████████████████████████████████████████
*/
.mcc {
  position: relative;
}
.media_credit {
  font-family: Arial, Verdana, Helvetica, sans-serif !important;
  position: absolute;
  z-index: 1;
  right: 3px;
  bottom: 3px;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 0.2rem;
  cursor: pointer;
}
.media_credit.top {
  bottom: unset;
  top: 3px;
}
.media_credit label {
  position: relative;
  font-family: Arial, Verdana, Helvetica, sans-serif !important;
  font-size: 16px;
  font-weight: 300;
  grid-column: 1 / -1 !important;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.8ch 1.5ch;
  background-color: #333 !important;
  color: #fff !important;
  line-height: 1em;
  cursor: pointer;
  border-radius: 5rem;
  box-shadow:
    0 0 1px rgba(255, 255, 255, 0.05),
    0 0 2px rgba(255, 255, 255, 0.09),
    0 0 5px rgba(255, 255, 255, 0.14),
    0 0 8px rgba(255, 255, 255, 0.18),
    0 0 13px rgba(255, 255, 255, 0.23);
}
.media_credit label * {
  font-family: inherit;
  color: inherit !important;
}
.media_credit label:has(input[type="checkbox"]:checked) {
  padding: 0.2em 0.5em 0.15em;
  border-radius: 0.4rem;
}
.media_credit label::before {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.21rem;
  aspect-ratio: 1;
  font-size: 1.15em;
  line-height: 0;
  box-sizing: border-box;
}
.media_credit .copyright::before {
  content: "\00A9"/ "Copyrightzeichen";
  padding-top: 1px;
  padding-left: 1px;
}
.media_credit .ai::before {
  content: "KI";
  font-size: 0.8em;
  padding-top: 0.2em;
}
.media_credit label:has(input[type="checkbox"]:checked)::before {
  justify-content: flex-start;
  width: unset;
}
.media_credit .ai:has(input[type="checkbox"]:checked)::before {
  display: none;
}
.media_credit label input[type="checkbox"] {
  position: absolute !important;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  z-index: 1 !important;
  cursor: pointer;
}
.media_credit label input[type="checkbox"]:checked ~ span {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 0.5ch 2ch;
}
.media_credit label input[type="checkbox"]:checked ~ span cite {
  line-height: inherit;
}
.media_credit label .indicator {
  --focus_outline_size: 3px;
  --focus_outline_offset: 0;
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 9rem;
  outline: 0 var(--focus_outline_style, dashed)
    var(--focus_outline_color, fuchsia);
  outline-offset: var(--focus_outline_offset, 1px);
  pointer-events: none;
}
.media_credit label input[type="checkbox"]:focus-visible ~ .indicator {
  outline-width: var(--focus_outline_size, 4px);
}
.media_credit label span {
  display: none;
  position: unset !important;
  font-size: 0.9em;
  line-height: 1.2em !important;
  font-style: italic;
}
/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Back-to-Top-Button
███████████████████████████████████████████████████████████████████████████████████████████████
*/
#b2t_btn {
  background: #000;
  position: fixed;
  bottom: 1.5%;
  right: 1.5%;
  height: 2em;
  width: 2em;
  border-radius: 99em;
  opacity: 0.5;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#b2t_btn::before {
  content: "";
  display: inline-block;
  position: absolute;
  height: 0.45em;
  width: 0.45em;
  border: solid #fff;
  border-width: 0.2em 0 0 0.2em;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: 42%;
  left: 51%;
  margin-left: -16%;
  -webkit-transition: all 0.1s ease;
  -moz-transition: all 0.1s ease;
  -ms-transition: all 0.1s ease;
  -o-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
#b2t_btn:hover {
  opacity: 1;
}
#b2t_btn:hover::before {
  margin-top: -0.2em;
}

/*
███████████████████████████████████████████████████████████████████████████████████████████████
    Footer
███████████████████████████████████████████████████████████████████████████████████████████████
*/
#footer {
  background-color: var(--color_brand);
  padding: 0.6rem 0;
  color: #fff;
  text-align: center;
}
#footer * {
  color: inherit;
}
#footer a {
  text-decoration: none;
}
#footer a:hover {
  text-decoration: underline;
}
#footer ul li {
  display: inline-block;
  margin: 0 0.7em;
}
#footer ul li:first-of-type {
  margin-left: 0;
}
@media (max-width: 500px) {
}
