/* ----------------------------------------
  Reset
---------------------------------------- */

* {margin:0;padding:0;border:0;}
*,:before,:after {-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}

html {-webkit-text-size-adjust:none;-ms-text-size-adjust:none;scroll-behavior: smooth;}

ul {list-style:none;}
a {color:inherit;text-decoration:none;cursor:pointer;}
a:active,a:hover,a:focus {outline:none;}
a[x-apple-data-detectors] {background:none !important;border:none !important;color: inherit !important;text-decoration:none !important;}

input,select {vertical-align:middle;}
img {display:block;width:100%;height:auto;}
audio,canvas,progress,video {display:inline-block;vertical-align:baseline;}

/* ----------------------------------------
  Gutenberg Reset
---------------------------------------- */

/* Verhindert neue Elemente unterhalb Content per Click */
:root :where(.editor-styles-wrapper)::after {
  height:0!important;
  padding-bottom:40px;
}

h1.wp-block {
  font-family:sans-serif;
  font-size:22px;
  font-weight:300;
  color:#616161;
  padding-left:20px;
}

h1.wp-block:before {
  content:'Titel: ';
  color:#007cba;
}

body .is-layout-flex {
  __display:grid;
}

/* Navigation */

header .wp-block-navigation {
  position:static;
}

header .wp-block-navigation button svg {
  display:none;
}

header .wp-block-navigation__responsive-container-open:before,
header .wp-block-navigation__responsive-container-close:before {
  content:'menu';
  color:var(--cyan);
  font-family:'Material Icons';
  font-size:30px;
  position:fixed;
  top:0;
  right:5px;
  z-index:9999;
  cursor:pointer;
}

header .wp-block-navigation__responsive-container-close:before {
  content:'close';
}

/* theme resets */

:not(.wp-block).top-hero .top-image {
  margin-left:-4.5vw;
  min-width:calc(100% + 4.5vw);
}

/* ----------------------------------------
    Fonts in use
---------------------------------------- */

@font-face {
    font-family:'Hind';
    src: url('assets/fonts/hind/hind-light-webfont.woff2') format('woff2'),
         url('assets/fonts/hind/hind-light-webfont.woff') format('woff');
    font-weight:300;
    font-style:normal;
}

@font-face {
    font-family:'Hind';
    src: url('assets/fonts/hind/hind-regular-webfont.woff2') format('woff2'),
         url('assets/fonts/hind/hind-regular-webfont.woff') format('woff');
    font-weight:400;
    font-style:normal;
}

@font-face {
    font-family:'Hind';
    src: url('assets/fonts/hind/hind-medium-webfont.woff2') format('woff2'),
         url('assets/fonts/hind/hind-medium-webfont.woff') format('woff');
    font-weight:500;
    font-style:normal;
}

@font-face {
    font-family:'Hind';
    src: url('assets/fonts/hind/hind-semibold-webfont.woff2') format('woff2'),
         url('assets/fonts/hind/hind-semibold-webfont.woff') format('woff');
    font-weight:600;
    font-style:normal;
}

@font-face {
    font-family:'Hind';
    src: url('assets/fonts/hind/hind-bold-webfont.woff2') format('woff2'),
         url('assets/fonts/hind/hind-bold-webfont.woff') format('woff');
    font-weight:700;
    font-style:normal;
}

@font-face {
    font-family: 'brix-slab';
    src: url('assets/fonts/brix/brixslab-regular.woff2') format('woff2'),
         url('assets/fonts/brix/brixslab-regular.woff') format('woff');
    font-weight:normal;
    font-style: normal;
}

@font-face {
    font-family:'Roboto Slab';
    src: url('assets/fonts/roboto-slab/robotoslab-regular-webfont.woff2') format('woff2'),
         url('assets/fonts/roboto-slab/robotoslab-regular-webfont.woff') format('woff');
    font-weight:400;
    font-style:normal;
}

@font-face {
  font-family:'Material Icons';
  font-style:normal;
  font-weight:400;
  src: url('assets/fonts/material-icons/materialicons.woff2') format('woff2')
}

/* ----------------------------------------
    Font Styles
---------------------------------------- */

* {font-weight:inherit;font-style:normal;}

html {
   font-size:100%; 
   font-smoothing:always;
   -webkit-font-smoothing:always;
   -moz-osx-font-smoothing:always;
}

body {
  font-family: 'Hind', sans-serif;
    font-weight:300;
  font-size:22px;
  letter-spacing: 0.025em;
  line-height:1.4;
  color:#222;
}

.h1,h1,.h2,h2,.h3,h3,.slab {
  font-family: 'brix-slab', serif;
  color:var(--blau);
}

h1,.h1,h2,.h2 {font-size:2.2em;}
h3,.h3 {font-size:1.4em;}
h4,.h4,h5,h5,.large {font-size:1.25em;}
h6,.h6 {font-size:1em;}

h6.slab {font-size:1.1em;}

h1,.h1,h2,.h2 {
  line-height:1.2;
}

h3,.h3,h4,.h4 {
  line-height:1.5;
}

p {padding-bottom:1.5rem}

ul,h2,h3,h4,h5 {
  padding-bottom:1rem;
}

p,ul,h1,h2,h3,h4,h5,h6 {
  margin:0;
}

p:last-child {padding-bottom:0;}

small,.small {font-size:0.85em;}

.tiny {font-size:0.7em;}

strong,.strong,b,.subline {
   font-weight:500;
   font-size:1.05em;
   letter-spacing:0;
}

.subline {
  color:var(--blau);
}

.roboto {
  font-family: 'Roboto Slab', serif;
}

@media (max-width: 1100px) {
  
  body {
    font-size:18px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    __hyphens:auto;
    __hyphenate-limit-chars: 10 3 4;
  }
  
  h1,.h1,h2,.h2,h3,.h3 {
    font-size:1.7em;
    line-height:1.2;
  }
  
  .media-sm .sm-smaller {
    font-size:1.8em;
  }
  
  h1,.h1,h2,.h2,.hyphen {
    __hyphens:auto;
  }
    
  .white-space {
    white-space:nowrap;
  }
}

/* Color */

:root {
  --blau:#162F75;
  --blau-gradient:linear-gradient(90deg, rgba(28,27,74,1) 0%, rgba(22,47,117,1) 50%, rgba(22,47,117,1) 100%); 
  --cyan:#3DBEFB;
  --black:rgb(0, 0, 0);
  --gray: #e1e5e7;
  --shadow: 0 10px 25px 0 rgb(21, 47, 117, 0.2);
}

.blau {
  color:var(--blau);
}

.bg-blau {
  background:var(--blau);
}

.bg-blau-gradient {
  background:var(--blau-gradient); 
}

.cyan {
  color:var(--cyan);
}

.white {
  color:white;
}

.bg-gray {
  background:var(--gray);
}

.bg-gray-light {
  background:#f1f2f3;
}

/* ----------------------------------------
  Columns
---------------------------------------- */

.page {
  min-height:100%;
}

section,
.wp-block-block {
  min-width:100vw;
  margin:0;
  padding:0;
}

.grid {
  display:grid!important;
  grid-template-columns:var(--cols);
}

.fluid {
  grid-template-columns:var(--page-border) var(--cols) var(--page-border);
}

.wp-block-columns .wp-block-columns,
.wp-block-group {
  width:100%;
  max-width:100%;
}

.wp-block-column {
  padding-top:1.25rem;
  padding-bottom:1.25rem;
}

@media (min-width:1025px) {

  :root  {
  --page-width:1400px;
  --page-border:calc(((100% - var(--page-width)) / 2) - var(--gap));
  --cols:repeat(12,1fr);
  --gap:2.5rem;
  }
  
  .container,
  .wp-block-columns {
    width:var(--page-width);
    max-width:90%;
    column-gap:var(--gap);
    row-gap:0;
    margin:0 auto;
  }
  
  .fluid {
    min-width:94vw;
  }
  
  .cols-40-60 {grid-template-columns:40% 60%;}
  
  .cols-1 {--cols:1fr}
  .cols-2 {--cols:repeat(2,1fr)}
  .cols-3 {--cols:repeat(3,1fr)}
  .cols-4 {--cols:repeat(4,1fr)}
  .cols-5 {--cols:repeat(5,1fr)}
  .cols-6 {--cols:repeat(6,1fr)}
  
  .col-1 {grid-column:auto / span 1}
  .col-2 {grid-column:auto / span 2}
  .col-3 {grid-column:auto / span 3}
  .col-4 {grid-column:auto / span 4}
  .col-5 {grid-column:auto / span 5}
  .col-6 {grid-column:auto / span 6}
  .col-7 {grid-column:auto / span 7}
  .col-8 {grid-column:auto / span 8}
  .col-9 {grid-column:auto / span 9}
  .col-10 {grid-column:auto / span 10}
  .col-12 {grid-column:auto / span 12}
  .col-13 {grid-column:auto / span 13}
  .col-14 {grid-column:auto / span 14}
  
  .start-1 {grid-column-start:1}
  .start-2 {grid-column-start:2}
  .start-3 {grid-column-start:3}
  .start-4 {grid-column-start:4}
  .start-5 {grid-column-start:5}
  .start-6 {grid-column-start:6}
  .start-7 {grid-column-start:7}
  .start-9 {grid-column-start:9}
  
  .gap {column-gap:var(--gap);}
  .gap-0 {column-gap:0}
  .gap-l {column-gap:3.5vw}
  
  br.soft {display:none}
  
}

@media (max-width:1025px) {
  
  :root  {
  --page-width:100%;
  --page-border:calc(((100% - var(--page-width)) / 2) - var(--gap));
  --cols:1.25rem 1fr 1.25rem;
  }
  
  .grid > * {
    grid-column: 2 / 3;
  }
  
  .fluid > *,
  .md-fluid > * {
    grid-column: 1 / 4;
  }
  
}

@media print {
  
  body,.container {
  width:100%;
  }
}

header {
  padding-top:40px;
}

.logo {
  width:300px;
}

/* Nav */

@media (min-width:1025px) {
  
  header .nav-main {
    display:flex;
    justify-content:space-between;
  }
  
  header .nav-main li:not(first-child) {
    __padding-left:40px;
  }
  
  header .nav-main a:hover span,
  header .nav-main .current-menu-item span,
  .parent-pageid-1138 .nav-main .link-rechtsanwaelte span {
    color:var(--cyan);
  }
  
}

@media (max-width:1025px) {
  
  .logo {
    margin:0 auto;
  }
  
  .wp-block-navigation__responsive-container {
    background:var(--blau)!important;
  }
  
  .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
    color:white!important;
  }
  
  .wp-block-navigation {
    border-top:1px solid white!important;
    min-width:90%!important;
  }
  
  .wp-block-navigation-item {
    padding:20px 0!important;
    border-bottom:1px solid white!important;
    min-width:100%!important;
  }
  
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    __display: flex;
    display:block;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }
  
}

/* Styles */

.intro-block {
  padding:40px 5%;
  color:white;
  background:var(--blau-gradient);
}

.intro-block h1,
.intro-block h2 {
  color:white;
}

.top-hero {
  display:flex;
  align-items:flex-end;
}

.top-hero h2 {
  padding:0;
}

.top-hero .top-image {
  position:relative;
  padding-top:0;
}

@media (min-width:1025px) {
  
  .top-hero {
    padding-bottom:100px;
  }
  
  .intro-block {
    padding:3.5vw;
  }
  
  .top-hero .intro-block {
    height:34vw;
    position:relative;
    z-index:9999;
  }
  
  .top-hero .intro-block h1 {
    font-size:2.25vw;
  }
    
  .top-hero .top-subline {
    padding:10px 30% 10px 20px;
    border-left:2px solid var(--cyan);
    position:relative!important;
  }
  
  .top-hero a.top-subline-anchor {
    content:'';
    width:30px;
    height:20px;
    background:url(/wp-content/themes/piccto/assets/images/arrow-down.svg) no-repeat;
    display:inline-block;
    position:absolute;
    left:-15px;
    bottom:-50px;
  }
  
  .top-subline figure.auszeichnungen {
    position:absolute;
    right:0;
    top:-235px;
  }
  
  .top-subline figure.auszeichnungen img {
    width:230px;
  }

}

@media (max-width:1025px) {
  
  .top-hero {
    padding:0;
    text-align:center;
  }
  
  .top-hero .top-image {
    order:-1;
    margin:20px 0 -40px 0;
  }
  
  .top-hero .top-subline {
    max-width:90%;
    margin:0 auto;
    padding:1.25rem 0;
    padding-bottom:40px;
    border-bottom:2px solid var(--cyan);
  }
  
  .top-hero .intro-block {
    min-height:250px;
  }
  
  .top-subline figure.auszeichnungen {
    padding-top:20px;
  }
  
}

.auszeichnungen {
  padding:0 3.5vw;
}

.media-md .auszeichnungen {
  padding:0 15vw;
}

.auszeichnungen img {
  box-shadow:var(--shadow);
}

.media-md .auszeichnungen img {
  max-width:300px;
  margin:0 auto;
}

.team-card {
  text-align:center;
  padding-bottom: 80px;
  margin-top:20px;
  border-bottom:2px solid var(--gray);
  background:url(assets/images/arrow-right-cyan.svg) no-repeat bottom 30px center;
  background-size:25px auto;
  position:relative;
}

.media-md .team-card {
  padding-bottom:60px;
}

.team-card:hover {
  background:url(assets/images/arrow-right-blau.svg) no-repeat bottom 30px center;
  background-size:25px auto;
}

.team-card h6 {
  font-weight:600;
  color:var(--blau);
  padding:20px 0;
}

.media-md .team-card img {
  max-width:400px;
  margin:0 auto;
}

.kontakt {
  padding:3.5vw 0;
  color:var(--blau);
}

.kontakt p {
  font-size:1.15em;
}

footer .intro-block {
  padding-bottom:30px;
}

.media-md .kontakt {
  padding:40px 0;
}

.kontakt .tab {
  display:inline-block;
  width:65px;
  font-weight:500;
}

.media-lg .kontakt .bt-arrow {
  margin-left:-40px;
}

.news-cards li {
  font-family: 'Roboto Slab', serif;
  font-size:1.1em;
  line-height:1.5;
  color:var(--blau);
  background:var(--gray) url(assets/images/arrow-right-blau.svg) no-repeat bottom 30px right 30px;
  background-size:25px auto;
}

.news-cards li:nth-child(odd) {
  color:white;
  background:var(--blau) url(assets/images/arrow-right-cyan.svg) no-repeat bottom 30px right 30px;
  background-size:25px auto;
}

.news-cards a.wp-block-latest-posts__post-title {
  display:inline-block;
  padding:50px 30px 70px 30px;
}

.media-md .news-cards li {
  margin-bottom:1.25rem;
}

  
.vita ul {
  padding:30px 0;
  border-bottom:1px solid #9CA9B1;
}

.vita ul:first-child {
  padding-top:0;
}

.vita li:first-child {
  font-weight:600;
  color:var(--blau);
}
  
@media (min-width:1025px) {
  
  .vita li:first-child {
    text-align:right;
    padding-right:60px;
  }
  
}

@media (max-width:1025px) {
  
  .vita {
    padding:0 5%;
  }
  
  .vita ul.grid > * {
    grid-column: 1 / 3;
  }
  
}

.wp-block-post-navigation-link a:hover,
.wp-block-post-navigation-link .is-arrow-arrow {
  color:var(--cyan);
}

/* tools */

.devider-top {
  border-top:2px solid var(--cyan);
  padding-top:60px;
  margin-top:40px;
}

.media-md .devider-top {
  padding-top:40px;
  margin-top:0;
}

.media-md .intro .devider-top {
  border:0;
  padding:0;
  margin:0;
}

.the-button {
  text-align:center;
  padding-top:40px;
}

.the-button a,
.wpcf7-submit {
  display:inline-block;
  padding:10px 60px 10px 20px;
  background:var(--cyan) url(assets/images/arrow-right-white.svg) right 20px center no-repeat;
  background-size:25px auto;
  border-radius:5px;
  color:white;
  font-size:0.9em;
  box-shadow:var(--shadow);
  cursor:pointer;
}

.the-button a:hover {
  background-color:var(--blau);
}

.bt-arrow {
  padding-left:40px;
  background:url(assets/images/arrow-right-cyan.svg) no-repeat top 0.4em left;
  background-size:25px auto;
}

.trigger_active.bt-arrow,
.bt-arrow:hover {
  background:url(assets/images/arrow-right-blau.svg) no-repeat top 0.4em left;
  background-size:25px auto;
}

.bt-plus.trigger {
  cursor:pointer;
  padding-left:60px;
  position:relative;
}

.bt-plus.trigger::before,
.bt-plus.trigger_active::before {
  content:url(assets/images/bt-plus.svg);
  display:inline-block;
  width:35px;
  height:35px;
  margin:10px;
  transition: 0.2s ease-in-out;
  position:absolute;
  left:-5px;
  top:-10px;
}

.bt-plus.trigger_active::before {
  rotate:45deg;
}

.faux-link a {
  height:100%;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  opacity:0;
}

/* Accordeon */

.accordeon {
  padding-top:22px;
  border-top:1px solid #9CA9B1;
  border-bottom:1px solid #9CA9B1;
  margin-top:-1px;
}

.accordeon h4 {
  font-family:'Roboto Slab', serif;
  color:var(--blau);
  padding-bottom:0;
  margin-bottom:20px;
  cursor:pointer;
}

.accordeon ul {
  padding-left:40px;
}

.accordeon ul {
  list-style:square;
  padding-left:calc(40px + 1em);
}

.accordeon li::marker {
  color:var(--blau);
}

.toggle_container {
  margin-bottom:10px;
}

.toggle_container li a {
  border-bottom:1px solid var(--cyan);
}

.toggle_container li a:hover {
  color:var(--cyan);
}

@media (max-width:1025px) {
  
  .accordeon h2 {
    font-size:1.56em;
  }
  
  .bt-plus.trigger {
    padding-left:40px;
  }
  
  .bt-plus.trigger::before,
  .bt-plus.trigger_active::before {
    width:25px;
    height:25px;
  }

}

/* footer */

footer ul.bottom {
  font-size:0.9em;
}

footer ul.bottom li {
  padding:5px 0;
}

footer ul.bottom li:first-child {
  padding-left:0;
}

@media (min-width:1100px) {
  
  footer ul.bottom {
    display:flex;
  }
  
  footer ul.bottom li {
    padding:0 20px;
  }
  
  footer ul.bottom li.wortmarke span {
    border-right:1px solid var(--blau);
    padding-right:10px;
    margin-right:10px;
  }
  
}

@media (max-width:1100px) {
  
  footer ul.bottom li.wortmarke {
    font-size:1.2em;
  }
  
  footer ul.bottom li.wortmarke span {
    display:block;
  }
  
}

/* cf7 */

form {
  padding-top:40px;
}

form input,
form textarea {
  font-family:inherit;
  font-size:18px;
  font-weight:400;
  color:var(--blau);
  width:100%;
  padding:15px 20px;
  margin-bottom:5px;
  border-radius:5px;
  border:1px solid var(--blau);
}

form textarea {
  height:120px;
}

.wpcf7-list-item {
  display:block;
  font-size:14px;
  padding:0 0 0 15px;
  position:relative;
}

.wpcf7-list-item a {
  border-bottom:1px solid white;
}

.wpcf7-list-item input {
  width: 20px;
  height: 20px;
  position:absolute;
  top:0;
  left:-15px;
}

.wpcf7-submit {
  width:auto;
  cursor:pointer;
}

.wpcf7-text:focus, 
.wpcf7-textarea:focus {
outline:none;
}

.mail-captcha {
  position:relative;
  top:-10px;
  __font-size:18px;
}

.mail-captcha label input {
  padding:5px;
  width:31px;
  height:31px;
  margin-left:10px;
  margin-top:-3px;
  text-align:center;
}

.mail-captcha label {
  display:flex;
}

/* Checkbox Reset */

input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  display: flex;
  padding: 0.25rem;
  border: 1px solid #989898;
  background:white;
}

input[type="checkbox"]:checked {
  transform: scale(1);
  background:#989898;
}

input[type="checkbox"]::before {
  content: "";
  width: 1.0rem;
  height: 0.7rem;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  background-color:white;
}

input[type="checkbox"]:checked::before {
  transform: scale(1);
}

/* bxslider */

.bx-wrapper,
.bx-viewport {
  
}

.top-slider img {
  min-width:100%;
  min-height:auto;
}

.bx-pager {
  position:absolute;
  bottom:25px;
  right:20px;
  z-index:9999;
}

.bx-pager.bx-default-pager {
    display:flex;
    justify-content:center;
    align-content:center;
}

a.bx-pager-link {
    display:inline-block;
    font-size:0;
    line-height:0;
    color:transparent;
    height:35px;
}

a.bx-pager-link::after {
    content:'●';
    font-size:30px;
    color:white;
    padding:0 3px;
    position:relative;
    top:15px;
    z-index:9999;
}

a.bx-pager-link.active::after {
    color:#3dbefb;
}

table  {
  border-collapse:collapse;
  min-width:100%;
  margin-bottom:1.5rem;
  border-top:1px solid #ccc;
  border-bottom:1px solid #ccc;
}

th, td {
  width:50%;
  padding:8px 15px;
}

tr:nth-child(odd) {background: #e1e5e7}

@media (max-width:1025px) {
  
  table {
    font-size:0.9em;
  }
  
  a.bx-pager-link::after {
    font-size:12px;
  }
  
}

/* ----------------------------------------
    Helpers
---------------------------------------- */

/* image */

.auto-resize img,
img.auto-resize {
    display:block;
    object-fit:cover;
    width:100%;
    height:100%;
}

/* grid */

.grid {
    display:grid;
}

.flex {
    display:flex;
    direction:row;
    flex-wrap:wrap;
}

.align-top {
    align-items:start;
    align-self:start;
    /*flex*/
    align-items:flex-start;
    align-self:flex-start;
}

.align-right {
    justify-items:end;
    justify-self:end;
    /*flex*/
    justify-content:flex-end;
}

.align-bottom {
    align-items:end;
    align-self:end;
    /*flex*/
    align-items:flex-end;
    align-self:flex-end;
}

.align-left {
    justify-items:start;
    justify-self:start;
    /*flex*/
    justify-content:flex-start;
    
}

.align-center {
    justify-items:center;
    justify-self:center;
    /*flex*/
    justify-content:center;
}

.align-middle {
    align-items:center;
    align-self:center;
}

.content-middle {
    display:grid;
    place-content:center;
}

.content-bottom {
    display:grid;
    place-content:end;
}

.content-stretch {
    display:grid;
    place-content:stretch;
}

.content-stretch > :last-child {
    align-self:end;
}

.stretch-x {
    justify-items:stretch;
    justify-self:stretch;
    /*flex*/
    justify-content:space-between;
}

.stretch-y {
    align-items:stretch;
    align-self:stretch;
}

/* Font Helpers */

.link {
   __text-decoration:underline var(--blau) solid;
}

.link:hover {
   color:#e3010a;
}

.lead,.subline {margin-top:-10px;}

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

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

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

.text-justify {
    text-align:justify;
    text-align-last:end;
}

.uppercase {text-transform:uppercase;}

.lowercase {text-transform:lowercase;}

mark {background:#ffff00;}

::selection {background: #ffff00;}

/* list */

ul {
  list-style:none;
}

ul.list  {
  list-style:square;
  padding-left:1em;
}

.list li {
  padding-bottom:1rem;
}

.list li::marker {
  color:var(--blau);
}

/*
ul:not(.nolist) li {
  padding-left:1.25em;
  padding-bottom:10px;
  position:relative;
}

ul:not(.nolist) li::before {
  font-family:'Material Icons';
  content:'\e047';
  color:var(--blau);
  position:absolute;
  left:0;
  top:0;
}

ul.check-list li::before {
  content:'\e5ca';
  font-size:1.05em;
  font-weight:800;
  top:-1px;
  transform: rotate(-5deg);
}

ul.i-check li::before {
  content:'\e876';
}

ul.i-chevron li::before {
  content:'\e5cc';
}

ul.i-arrow li::before {
  content:'\e5c8';
}

ul.li-lined li {
    margin-top:10px;
    padding-bottom:10px;
    border-bottom:1px solid #bbb;
}

ul.lined {
    border-bottom:1px solid #ccc;
    margin-left:0;
    margin-bottom:20px!important;
}

.lined li {
   border-top:1px solid #ccc;
   padding:10px 0;
}
*/

sup,sub {
    vertical-align: baseline;
    position: relative;
    top: -0.4em;
    font-size:0.6em;
}

sub {
    top: 0.4em;
}

q,.quotes,blockquote {
    quotes:"\201E" "\201C";
}

html[lang="en"] q,html[lang="en"] .quotes,html[lang="en"] blockquote {
    quotes:"\201C" "\201D";
}

html[lang="en"] #de,html[lang="de"] #en {
    display:none;
}

/* float: */

.left {float:left;}

.right {float:right;}

.float-none {clear:both;}

.clear:after {
    content:"";
    display:table;
    clear:both;
}

/* position */

.relative {position:relative;}

.absolute {position:absolute;}

.fixed {position:fixed;}


/* display: */

.hidden {display:none;}

.inline {display:inline;}

.block {display:block;}

.inline-block {display:inline-block;}

/* spacer */

@media (max-width:1280px) {
  
  :root {
    --spacer-xs:1rem;
    --spacer-s:1rem;
    --spacer-m:1rem;
    --spacer-l:1rem;
    --spacer-xl:1rem;
  }
  
}

@media (min-width:1280px) {
  
  :root {
    --spacer-xs:0.5rem;
    --spacer-s:1rem;
    --spacer-m:2rem;
    --spacer-l:3rem;
    --spacer-xl:4rem;
  }

}

.spacer-0,.spacer-r-0,.spacer-x-0 {padding-right:0;}
.spacer-0,.spacer-l-0,.spacer-x-0 {padding-left:0;}
.spacer-0,.spacer-t-0,.spacer-y-0 {padding-top:0;}
.spacer-0,.spacer-b-0,.spacer-y-0 {padding-bottom:0;}

.spacer-xs,.spacer-r-xs,.spacer-x-xs {padding-right:var(--spacer-xs);}
.spacer-xs,.spacer-l-xs,.spacer-x-xs {padding-left:var(--spacer-xs);}
.spacer-xs,.spacer-t-xs,.spacer-y-xs {padding-top:var(--spacer-xs);}
.spacer-xs,.spacer-b-xs,.spacer-y-xs {padding-bottom:var(--spacer-xs);}

.spacer-s,.spacer-r-s,.spacer-x-s {padding-right:var(--spacer-s);}
.spacer-s,.spacer-l-s,.spacer-x-s {padding-left:var(--spacer-s);}
.spacer-s,.spacer-t-s,.spacer-y-s {padding-top:var(--spacer-s);}
.spacer-s,.spacer-b-s,.spacer-y-s {padding-bottom:var(--spacer-s);}

.spacer-m,.spacer-r-m,.spacer-x-m {padding-right:var(--spacer-m);}
.spacer-m,.spacer-l-m,.spacer-x-m {padding-left:var(--spacer-m);}
.spacer-m,.spacer-t-m,.spacer-y-m {padding-top:var(--spacer-m);}
.spacer-m,.spacer-b-m,.spacer-y-m {padding-bottom:var(--spacer-m);}
  
.spacer-l,.spacer-r-l,.spacer-x-l {padding-right:var(--spacer-l);}
.spacer-l,.spacer-l-l,.spacer-x-l {padding-left:var(--spacer-l);}
.spacer-l,.spacer-t-l,.spacer-y-l {padding-top:var(--spacer-l);}
.spacer-l,.spacer-b-l,.spacer-y-l {padding-bottom:var(--spacer-l);}

.spacer-xl,.spacer-r-xl,.spacer-x-xl {padding-right:var(--spacer-xl);}
.spacer-xl,.spacer-l-xl,.spacer-x-xl {padding-left:var(--spacer-xl);}
.spacer-xl,.spacer-t-xl,.spacer-y-xl {padding-top:var(--spacer-xl);}
.spacer-xl,.spacer-b-xl,.spacer-y-xl {padding-bottom:var(--spacer-xl);}

/* border */

.bt-1,.bl-1,.bb-1,.br-1 {border:1px dotted #ccc;}
.bt-0,.bl-1,.bb-1,.br-1 {border-top:0;}
.br-0,.bt-1,.bl-1,.bb-1 {border-right:0;}
.bb-0,.bt-1,.bl-1,.br-1 {border-bottom:0;}
.bl-0,.bt-1,.bb-1,.br-1 {border-left:0;}

.ba-0,.border-0 {border:0;}

hr {
    display:block;
    height:0;
    border:0;
    margin:20px 0;
    border-top:1px solid #ccc;
}

/* klaro consent */

.klaro {
  /* colors */
  --green1:#04acfb; /* bt aktive */
  --green2:#02186b; /* bt mandatory */
  --green3:red;
  
  --blue1:#3dbefb;
  --blue2:#02186b;
  --blue3:#02186b;
  
  --white1:inherit; /* ??? */
  --white2:#aaa; /* inaktive button bg */
  --white3:inherit; /* button-knobs */
  
  --light1:inherit; /* text color */
  --light2:inherit;
  --light3:inherit;
  
  --dark1:#e8ebf2; /*bg modal */
  --dark2:#02186b; /* text modal */
  --dark3:inherit; /* text modal */
}

.klaro .cookie-modal {
  z-index:99999!important;
}

.klaro .cn-body {
  padding:10px 20px 20px 20px!important;
  position:realtive;
}

.klaro-bottom a {
  color:inherit!important;
  font-size:0.95em;
}

@media (max-width:600px) {
  .klaro .cn-body p {
    font-size:0.9em;
    line-height:1.4;
    text-align:center!important;
  }
}

.klaro .cm-header,
.klaro .cm-body,
.klaro .cm-footer,
.klaro .context-notice {
  padding:20px 0!important;
}

.klaro .cm-modal {
  padding:0 25px!important;
}

.klaro .cm-btn {
  padding:5px 10px!important;
}

.klaro .cn-ok {
  padding-top:5px;
  justify-content:left!important;
}

.klaro .cn-ok .cn-learn-more {
  order:2;
  __text-align:right;
  
  color:var(--blau);
  __color:var(--button-text-color, #fff);
  background-color:#b3b9d2;
  __background-color:var(--dark2, #5c5c5c);
  border-radius:4px;
  border-radius:var(--border-radius, 4px);
  padding:4px 10px;
  margin-top: 0.5em;
  margin-right:.5em;
  border-style:none;
  __padding:0.4em;
  font-size:1em;
  text-align:center;
  cursor:pointer;
  flex-grow:0!important;
}

.klaro .cn-ok {
  
}

.klaro .cm-btn-accept {
  background:var(--green2)!important;
}

.klaro .cm-required {
  font-size:0.7em!important;
  color:var(--dark3)!important;
}

.klaro .cm-list-label {
  font-size:1.25em;
}

.klaro p.purposes {
  display:none!important;
}

.klaro .context-notice p {
  color:var(--dark3)!important;
}

.klaro .cm-btn.cm-btn-success-var,
.klaro .cm-btn.cm-btn-success {
  background:var(--blue2)!important;
}