/*
(c) ANcom.media
*/


body,
div,
p,
h1,
h2,
h3,
dl,
dd,
dt,
ul,
ol,
li,
input,
select,
textarea,
label,
fieldset,
form {
  background: transparent;
  border: 0;
  list-style-type: none;
  margin: 0;
  padding: 0;
  outline: 0;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  -ms-box-sizing:border-box;
  box-sizing:border-box;
}

@charset "UTF-8";

:root {
  --handarbeit-red: #e5313a; /* RGB _ 229 49 58 */
  --handarbeit-blue: #003054; /* RGB _ 0 48 84 */
  --handarbeit-gray: #333; /*  */
  --handarbeit-gray2: #222;
}

body, html {
  height: 100%;
  font-size: 100%;
}

body {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  background-color: #FFF; /* #CCC */
  color: #333;
  padding: 0;
  margin: 0;
  font-weight: 400;
}

img {
  width: 100%;
  max-width: 100%;
}

#content img {  }
.referenzen img { width: auto; max-width: auto; }

#layouthint { display: none; }

h1 { font-size: 2.3em; line-height: 1.2em; }
h2 { font-size: 1.9em; line-height: 1.3em; }
h3 { font-size: 1.25em; line-height: 1.5em; }
h4 { font-size: 1.1em; line-height: 1.5em; }
p { font-size: 100%; line-height: 1.55em; }

h1, h2, h3, h4 {
  margin: 25px 0 45px 0;
  color: var(--handarbeit-red);
  font-weight: 800;
}
h3 { color: #222; margin: 55px 0 25px 0; }

.home h2:first-of-type { margin-top: 0; }

@media (max-width: 640px) {
h1 { font-size: 1.9em; line-height: 1.2em; }
h2 { font-size: 1.6em; line-height: 1.3em; }
h3 { font-size: 1.2em; line-height: 1.4em; }
}

.home #content .page-header,
.ueber-mich #content .page-header {
  display: inline-block;
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

.home h1,
.ueber-mich h1 {
  display: inline-block;
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  font-size: 0;
}

p {
  margin: 0 0 23px 0;
  padding: 0;
}

strong { font-weight: 800; }

p.datenschutz-subheadline {
  margin-top: 45px;
}

#content p { font-size: 110%; line-height: 1.6em; }
@media(max-width: 480px) { #content p { font-size: 100%; line-height: 1.55em; } }

p.portrait {
  width: 135px;
  height: auto;
  border-radius: 2px;
  overflow: hidden;
}
@media (min-width: 1025px) {
p.portrait {
  display: inline-block;
  position: absolute;
  width: 165px;
  height: auto;
  top: 35px;
  left: 605px;
}
}

.label-warning { color: red; background-color: rgba(255,0,0,0.15); padding: 10px; display: block; margin: 15px 0; }

a {
  text-decoration: none;
  background-color: transparent;
  color: #333;
  cursor: pointer;
}
#content p a { color: #333; }

:after, :before,
a:after, a:before {
  box-sizing: border-box;
}

h2 a {
  color: var(--handarbeit-red);
  padding-left: 2px;
  padding-right: 2px;
/*  border-bottom: 3px solid rgba(0,53,93,0.1); */

  transition: all .2s ease-in-out;
}

h2 a:hover {
/*  border-bottom: 3px solid rgba(0,53,93,0.3); /* #00355d */
  background-color: var(--handarbeit-red);
  color: #FFF;
}

label a,
#content ul a,
#content ol a,
#content p a {
  padding: .05em .1em;
  box-shadow: inset 0 -0.19em 0 var(--handarbeit-red);
  transition: all 0.2s;
}
#content ul a.pdfansehen,
#content ol a.pdfansehen { margin-left: 10px; font-size: .8em; }

label a:hover,
#content ul a:hover,
#content ol a:hover,
#content p a:hover { box-shadow: inset 0 -1.35em 0 var(--handarbeit-red); color: white; }

#content .flexslider ol a,
#content .flexslider ol a:hover,
#content .flexslider ul a,
#content .flexslider ul a:hover { box-shadow: none; }


#content p.readmore { margin-top: 46px; }
a.cookiemsg-accept,
#content p.readmore a {
  box-shadow: none;
  background: none;
  padding: .55em .9em;
  font-size: .9em;
  color: var(--handarbeit-gray2);
  border: 3px solid var(--handarbeit-gray2);
  position: relative;
  z-index: 2;
  font-weight: 700;
  cursor: pointer;
}
a.cookiemsg-accept { color: white; border-color: white; font-size: 1.1em; display: block; padding: .75em 1em; margin: 8px 0; text-align: center; }
#content p.readmore a:hover { color: white; background: none; box-shadow: none; }
a.cookiemsg-accept:hover { color: #333; background: none; box-shadow: none; }

#below-content .moduletable.actn-mod p:last-child a::before,
a.cookiemsg-accept::before,
#content p.readmore a::before {
    content: '';
    width: 1px;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: width 0.3s ease;
    z-index: -1;
    background: var(--handarbeit-gray2);
    opacity: 0;
}
#below-content .moduletable.actn-mod p:last-child a::before,
a.cookiemsg-accept::before { background: white; }
#below-content .moduletable.actn-mod p:last-child a:hover::before,
a.cookiemsg-accept:hover::before,
#content p.readmore a:hover::before {
    width: 100%;
    opacity: 1;
}

.cookiemsg-text a { box-shadow: none; color: #FFF; background-color: var(--handarbeit-red); }
.cookiemsg-text a:hover { background-color: #FFF; color: #333; }



.none-shadow a,
#content .none-shadow a { box-shadow: none !important; }
.none-shadow a:hover,
#content .none-shadow a:hover { background-color: transparent !important; }

#content ul, ol {
  margin-left: 40px;
  margin-bottom: 23px;
  line-height: 1.45em;
}
#content .pagination  ul { margin-left: 0; }

#content ul li { list-style-type: circle; margin-bottom: 6px; padding-left: 6px; }
#content ul li:hover { list-style-type: disc; }

#content ol li { list-style-type: decimal; margin-bottom: 3px; padding-left: 6px; }

#content ul.metawords {
  margin: 45px 0 90px 0;
  display: block;
  max-width: 600px;
}
#content ul.metawords li {
  display: inline-block;
  list-style-type: none;
  padding: 8px 16px;
  border: 3px solid #EEE;
  border-radius: 2rem;
  background: white;
  color: #777;
  margin-right: 7px;
  margin-bottom: 12px;
  font-size: .95em;

  transition: all .3s ease;
}
#content ul.metawords:hover li {
  border-color: #DDD;
  background: white;
  color: #333;
  cursor: default;
}

@media (max-width: 640px) {
#content ul.metawords { margin: 45px 0 45px 0; }
#content ul.metawords li {
  font-size: .95em;
  padding: 7px 15px;
  margin-right: 7px;
  margin-bottom: 10px;
}
}

#privatleistungen h3 { color: #888; transition: all .3s ease; }
#privatleistungen:hover h3 { color: white; }

#privatleistungen ul.metawords {
  margin: 0;
  display: block;
  max-width: 900px;
}
#privatleistungen ul.metawords li {
  display: inline-block;
  list-style-type: none;
  padding: 8px 16px;
  border: 2px solid rgba(0,0,0,.25);
  border-radius: 2rem;
  background: transparent;
  color: #777;
  margin-right: 7px;
  margin-bottom: 12px;

  transition: all .3s ease;
}
#privatleistungen:hover ul.metawords li {
  border-color: rgba(0,0,0,.55);
  background: transparent;
  color: white;
  cursor: default;
}

@media (max-width: 1024px) {
#privatleistungen h3,
#privatleistungen ul.metawords li { color: white; }
#privatleistungen ul.metawords li { border-color: rgba(0,0,0,.55); }

}

hr {
    border: 0;
    height: 0;
    border-top: 12px solid rgba(0, 0, 0, 0.08);
    padding: 0;
    margin: 36px 0;
}

#handarbeit-branding {
  text-align: center;
  padding: 12px 0 21px 0;
  background: var(--handarbeit-red);
}
@media (max-width: 1023px) { #handarbeit-branding { background: transparent; } }

#handarbeit-branding span.svg-brand {
  display: inline-block;
  width: 220px;
  height: 76px;
  background-image: url(../images/handarbeit_5800px.png);
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 auto;
  padding: 0;
}

#handarbeit-branding span.svg-brand {
  width: 170px;
  height: 59px;
  background-size: 170px 59px;
}
@media (max-width: 1023px) {
#handarbeit-branding span.svg-brand {
  width: 220px;
  height: 76px;
  background-size: 220px 76px;
}
}
@media (max-width: 380px) {
#handarbeit-branding span.svg-brand {
  width: 190px;
  height: 66px;
  background-size: 190px 66px;
}
}
@media (max-width: 640px) {
#handarbeit-branding a { display: block; }
}

@media (min-width: 1680px) {
#handarbeit-branding span.svg-brand {
  width: 220px;
  height: 76px;
  background-size: 220px 76px;
}
}


/* COOKIE MSG */
#cookiemsg-wrapper {
  position: fixed;
  background: #333; /* var(--handarbeit-red) */
  color: #FFF;
  bottom: 35px;
  right: 35px;
  min-width: 400px;
  max-width: 425px;
  padding: 22px 25px 28px 25px;
  padding-bottom: 0;
  font-size: 85%;
  z-index: 999;
  transition: all .2s ease;
}

#cookiemsg-wrapper.accepted {
  opacity: 0;
  bottom: -135px;
  visibility: hidden;
}

@media (max-width: 640px) {
#cookiemsg-wrapper {

  border: 2px solid #EEE;
  bottom: 5%;
  right: 5%;
  min-width: 90%;
  max-width: 90%;
  padding: 20px;
}
}

main {
  margin: 0 auto;
  width: 85%;
  max-width: 840px;
}
@media(max-width: 1023px) { main { margin-top: 165px; } }
@media(max-width: 640px) { main { width: 80%; } }
@media(max-width: 320px) { main { width: 85%; margin-top: 145px; } }
@media(min-width: 1680px) { main { max-width: 920px; } }

main.home { max-width: 1200px; }
main.home #content {
  margin: 0 auto;
  width: 100%;
  max-width: 840px;
}

section.introduction { cursor: default; }

section.introduction .container {
  position: relative;
  display: block;
}

section.introduction .contentcontainer {
  position: absolute;
  display: inline-block;
  top: 15%;
  left: 6.25%;
}

section.introduction span.image {
  position: relative;
  display: block;
}

section.introduction span.h2 {
  position: relative;
  display: block;
  font-size: 2.2em;
  font-weight: 800;
  color: var(--handarbeit-red);
  margin-bottom: 30px;
}
section.introduction span.subline {
  position: relative;
  display: block;
  font-size: 1.1em;
  font-weight: 700;
  color: var(--handarbeit-gray);
  margin-bottom: 8px;
}


footer {
  position: relative;
  border-top: 8px solid #DDD;
  margin-top: 140px;
  background-color: white;
  font-size: 1em; /* .85em */
  color: #222;
  padding-bottom: 50px;
  padding-top: 0;
}

footer a { color: #222; }
footer a:hover { text-decoration: underline; }
footer li.current a { color: #222; text-decoration: underline; }

footer {
  padding: 50px;
}


@media (min-width: 1024px) {
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 245px;
  padding: 0;
  margin: 0;
  /* margin-bottom: 30px; */
  background-color: var(--handarbeit-red);
  z-index: 3;
}

nav {
  text-align: left;
  padding-top: 15px;
  padding-bottom: 60px;
  background: var(--handarbeit-red);
}

/* */
header {
  height: 100%;
  border-right: 2px solid #DDD;
  background: white;
}
main {
  padding-left: 245px;
  width: calc(85% - 245px);
}
footer {
  padding-left: calc(245px + 40px);
}

#layouthint {
  display: inline-block;
  position: absolute;
  bottom: 35px;
  left: 53px;
  font-size: .7em;
  line-height: 1.45em;
  color: #CCC;
}
#layouthint a { color: #CCC; text-decoration: none; }
#layouthint a:hover { color: #222; text-decoration: none; }
}

@media (min-width: 1025px) {
header { width: 245px; }
main {
  padding-left: 245px;
  width: calc(90% - 245px);
}
footer { padding-left: calc(245px + 50px); }
#layouthint { left: 39px; }
}

@media (min-width: 1680px) {
header { width: 375px; }
main {
  padding-left: 375px;
  width: calc(90% - 375px);
}
footer { padding-left: calc(375px + 75px); }
#layouthint { left: 78px; }
}


#footer-auszeichnungen {

  width: 100%;
  max-width: 100%;
  margin: 50px 0 0 0;
  padding: 0;
  font-size: .8em;

  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
#footer-auszeichnungen ul.footer-auszeichnungen {
  display: inline-block;
  margin: 0;
  padding: 0;

  width: 75%;
}
#footer-auszeichnungen ul.footer-auszeichnungen li {
  display: inline-block;
  padding: 0;
  margin: 0;

}
#footer-auszeichnungen ul.footer-auszeichnungen li.dosb img {
  height: 90px;
  width: auto;
  max-width: auto;
}
#footer-auszeichnungen ul.footer-auszeichnungen li.dosb img {  }
#footer-auszeichnungen ul.footer-auszeichnungen li.bvfo { margin-left: 28px; }
#footer-auszeichnungen ul.footer-auszeichnungen li.bvfo img {
  height: 86px;
  width: auto;
  max-width: auto;
}
@media (max-width: 1024px) {
#footer-auszeichnungen ul.footer-auszeichnungen { width: 70%; }
#footer-auszeichnungen ul.footer-auszeichnungen li.dosb img { height: 90px; }
#footer-auszeichnungen ul.footer-auszeichnungen li.bvfo img { height: 86px; }
}



#above-content {
  margin-top: 40px;
  margin-bottom: 80px;
}

#below-content {
  margin-left: auto;
  margin-right: auto;
}
#below-content { margin-top: 90px; }

#content {
  width: 100%;
  background-color: #FFF;
}

#lastrow {
  margin-top: 60px;
  text-align: left;
  font-size: .85em;
}

#privatleistungen {
  margin-top: 60px;
  background: var(--handarbeit-gray);
  color: white;
  font-size: .75em;
  padding: 25px 35px;
}

footer .pagebreak { display: inline-block; width: 10px; }
footer .spacer { display: inline-block; height: 1px; width: 17px; }
#lastrow p { margin: 0 0 10px 0; }

div[itemprop="blogPost"] { margin-bottom: 120px; position: relative; }

.home .items-leading div[itemprop="blogPost"] { margin-bottom: 60px; }


@media (max-width: 1023px) {
div[itemprop="blogPost"] { margin-bottom: 90px; }
}

@media (max-width: 640px) {
#lastrow p { margin: 0 0 25px 0; }
footer .spacer { display: block; height: 4px; width: 100%; }

div[itemprop="blogPost"] { margin-bottom: 70px; }
}


/* NAVs */
.collapsible-menu label,
input#menu-main,
input#menu-subnav {
  display: none;
}
.collapsible-menu label { margin: 0 !important; }

nav ul {
  display: block;
  /* z-index: 3; */
}

nav ul li { display: block; }

nav ul li a {
  display: block;
  height: 50px;
  line-height: 50px;
  padding: 0 0 0 41px;

  color: #FFF;
  font-weight: 600;
  font-size: 1.05em;
  background-color: transparent;
  border-bottom:2px solid #dc2e3b; /* 5%: #d72e3a */

  transition: all .2s ease;
}
nav ul > li:last-of-type a { border-bottom: none; }
nav ul li a:hover { background-color: rgba(0,0,0,.06); }
nav ul ul li a:hover { background-color: transparent; }

nav ul ul li a {
  font-size: .9em;
  font-weight: 500;
  border: none;
}
nav ul ul li.item-128,
nav ul ul li.item-143 {
  border-bottom: 2px solid rgba(255,255,255,.1);
  margin-bottom: 15px !important;
}



#subnav {
  line-height: 45px;
  text-align: center;
  border: 2px solid rgba(0,0,0,.1);

  width: 90%;
  max-width: 600px;
  margin: 0 auto;
  margin-top: 30px;


  display: none;
}

#subnav ul {
  line-height: 37px;
  padding-top: 10px;
  padding-bottom: 20px;
}

#subnav ul ul {
  font-size: .85em;
}

#subnav ul li {
  display: block;
}

#subnav ul li a { display: block; }

#subnav ul li.active.parent > a,
#subnav ul li.current.active > a {
  display: inline;
  padding: 0;
  border-bottom: 2px solid rgba(0,0,0,.2);
}

#subnav ul.nav {
  /* border-top: 1px solid #DDD; */
  background-color: rgba(0,0,0,0.1);
  padding-top: 10px;
  padding-bottom: 10px;
}


nav ul li.parent > a::after {
  position: relative;
  display: inline-block;
  content: '';
  width: 15px;
  height: 15px;
  background: url(../images/navicon-chev-right.svg) center center no-repeat;
  top: 1px;
  margin-left: 15px;

  transition: all .2s ease;
}

@media (min-width: 1024px) {
nav ul li.parent:hover a::after { margin-left: 20px; }

nav ul li.parent ul {
  display: block;
  position: absolute;
  margin-top: -54px;
  z-index: -1;
  min-width: 290px;
  padding-top: 10px;
  padding-bottom: 35px;

  visibility: hidden;
  left: 225px;
  opacity: 0;
  transition: all .3s ease;
}

nav ul li.parent:hover ul {
  left: 245px;
  opacity: 1;
  visibility: visible;
}

nav ul ul li a {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
  height: 45px;
  line-height: 45px;
  color: #FFF;
  font-weight: 600;
}
nav ul ul li {
  padding-left: 35px;
}
}




nav ul li.active a,
nav ul li:hover a {
  color: #FFF;
}
nav ul li.active > a { text-decoration: underline; }

nav ul ul li.active a,
nav ul ul li a:hover { text-decoration: underline; }
nav ul ul { background-color: var(--handarbeit-gray2); }

nav ul ul li a:after { border: none !important; }


@media (min-width: 1025px) {
nav ul li.parent ul { left: 225px; }
nav ul li.parent:hover ul { left: 245px; }
nav ul li a { padding-left: 39px; }
}
@media (min-width: 1680px) {
nav ul li.parent ul { left: 365px; }
nav ul li.parent:hover ul { left: 375px; }
nav ul li a { padding-left: 77px; }
}



@media (max-width: 1023px) {
footer {
  padding-left: 7.5%;
  padding-right: 7.5%;
}
}

@media (max-width: 1023px) {
header {
  background: rgba(230,49,59,1);
  height: 120px;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1001;
  padding: 0;
  margin: 0;
}

#handarbeit-branding {
  display: inline-block;
  padding: 0;
  margin: 15px 0 0 81px;
}

nav {
  display: inline-block;
}

nav ul li {
  display: inline-block;
  margin: 0;
  padding: 0 3px 6px 3px;
  width: 50%;
}
nav ul li a {
  font-size: 1.15em;
  display: block;
  padding: 0;
  border: none;
  background: transparent;
  text-align: center;
  height: 60px;
  line-height: 60px;
}
nav ul li.parent > a::after { display: none; }
nav ul ul { display: none; }

nav ul li a { font-weight: 800; }
nav ul ul li a { font-weight: 700; }

nav ul li a:hover { background-color: transparent; }


.collapsible-menu label {
  display: inline-block;
  cursor: pointer;
  text-align: center;
  padding: 10px;
  position: absolute;
  top: 50px;
  right: 73px;
}

.collapsible-menu.menu-main label span {
  height: 3px;
  width: 26px;
  background: white;
  display: block;
  transition: all .2s ease;
}
.collapsible-menu.menu-main label span:nth-child(2) {
  margin-top: 5px;
  margin-bottom: 5px;
}
.collapsible-menu.menu-main label:hover span:nth-child(2) {
/*  margin-left: -8px; */
}
input#menu-main:checked ~ label span:nth-child(1) {
  transform: translate(0px,8px)rotate(45deg);
}
input#menu-main:checked ~ label span:nth-child(2) {
  opacity: 0;
}
input#menu-main:checked ~ label span:nth-child(3) {
  transform: translate(0px,-8px)rotate(-45deg);
}

.menu-content {
  position: fixed;
  left: 0;
  top: 120px;
  padding: 0;
  height: calc(100% - 120px);
  width: 100%;
  background: rgb(51,51,51,1);
  z-index: -2;
  opacity: 0;
  visibility: hidden;

  transition: all .2s cubic-bezier(0.52, 0.16, 0.24, 1);
}

input#menu-main:checked ~ .menu-content,
input#menu-subnav:checked ~ .menu-content {
  z-index: 999;
  opacity: 1;
  visibility: visible;
}

.menu-content div.moduletable {
  display: block;
  position: relative;
  height: 100%;
  overflow-y: scroll;
  padding: 30px 0 75px 0;
}

nav ul ul li a {
  height: 40px;
  line-height: 40px;
  color: rgba(255,255,255,1);
}
nav ul ul li a:hover,
nav ul ul li.active a,
nav ul li.active > a { text-decoration: underline; }
}
/* END MAX-WIDTH 1023px */

@media (max-width: 1023px) {
nav ul li {
  display: block;
  margin: 0;
  padding: 0;
  width: auto;
  text-align: center;
}
nav ul ul { display: block; text-align: center; background: transparent; padding: 15px 0; }
nav ul ul li a { background: transparent; padding: 0; height: 50px; line-height: 50px; font-size: .9em; }
nav ul li.active ul li a,
nav ul li:hover ul li a,
nav ul ul li a,
nav ul li.active ul li a { color: rgba(255,255,255,.5); }

nav ul ul li.item-128, nav ul ul li.item-143 { display: none; }
nav ul ul li { padding: 0; }

}
/* END MAX-WIDTH 768px */


@media (max-width: 640px) {
#handarbeit-branding { margin: 15px 0 0 30px; }
.collapsible-menu label { right: 25px; }
}

@media (max-width: 420px) {
#handarbeit-branding { margin: 15px 0 0 38px; }
.collapsible-menu label { right: 28px; }
header { height: 110px; }
.menu-content { top: 110px; height: calc(100% - 110px); }

}

@media (max-width: 360px) {
#handarbeit-branding { margin: 10px 0 0 25px; }
.collapsible-menu label { top: 42px; right: 20px; }
header { height: 93px; }
.menu-content { top: 93px; height: calc(100% - 93px); }

nav ul li a { height: 45px; line-height: 45px; font-size: 1em; }
nav ul ul li a { height: 35px; line-height: 35px; font-size: .85em; }
nav ul ul { padding: 4px 0; }
}




#below-content div.moduletable h3,
#content .item-page.single-article div.actn-mod h2 { margin-top: 0; }

#content div.actn-mod {
  margin-top: 70px;
  padding: 30px 30px 15px 30px;

}

#below-content div.moduletable {
  margin-top: 0px;
  padding: 22px 30px 10px 30px;
  border: 0px solid rgba(2,0,0,.05);
  border-radius: 3px;

  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
  margin-top: 60px;
}


body.single-article #below-content { margin-top: 0px; }
body.news #below-content { margin-top: 80px; }

body.news #below-content div.moduletable { max-width: 500px; }
body.w650px #below-content div.moduletable { max-width: 650px; }
body.w700px #below-content div.moduletable { max-width: 700px; }



h3.full-width.partner {
  border: 2px solid rgba(0,0,0,0.1);

  padding: 25px 0;
  text-align: center;
}

h3.full-width.partner img { max-width: 775px; }


#below-content .moduletable.actn-mod,
#content .actn-mod {
  color: #FFF;
  background-color: var(--handarbeit-gray2);
}

#below-content div.moduletable.actn-mod h3 {
  color: white;
  line-height: 1.35em;
  margin-bottom: 25px;
}

#below-content div.moduletable.actn-mod p { margin-bottom: 22px; }

#below-content .moduletable.actn-mod p:last-child a { z-index: 2; }

#below-content .moduletable.actn-mod p:last-child a,
#content div.actn-mod p:last-child a,
.moduletable-actn-mod p:last-child a {
  display: inline-block;
  position: relative;
  padding: 8px 15px;
  background-color: transparent;
  color: white;

  border:2px solid white;
  border-radius: 2px;
  box-shadow: none;
  font-weight: 500;
  line-height: 1.25em;
}

#below-content .moduletable.actn-mod p:last-child a:hover,
#content div.actn-mod p:last-child a:hover,
.moduletable-actn-mod p:last-child a:hover { background: transparent; box-shadow: none; color: var(--handarbeit-gray2); }


.blog.loesungen div[itemprop="blogPost"] p a:after,
#content div.actn-mod a:after,
p.fehler-404 a:after,
.blog.home p a:after,
p.readmore a:after,
#below-content .moduletable p:last-child a:after,
.moduletable-actn-mod p:last-child a:after,
.moduletable-contact a:after,
.moduletable-faq a:after { content: '→'; display: inline-block; margin-left: 15px; }


#below-content p a.none:hover,
.blog.home p a.none:hover,
#below-content p a.none,
.blog.home p a.none,
#content a.none { box-shadow: none !important; background: none !important; }
#below-content p a.none:after,
#below-content p:last-child a.none:after,
.blog.home p a.none:after { display: none; }



#content p.action-button.mehr-erfahren a { box-shadow: none; }
#content p.action-button.mehr-erfahren a:after { display: none; }

#content p.action-button.mehr-erfahren { margin-top: 28px; }
#content p.action-button.mehr-erfahren.center { text-align: center; }
#content p.action-button.mehr-erfahren.left { text-align: left; }
#content p.action-button.mehr-erfahren.right { text-align: right; }
#content p.action-button.mehr-erfahren a {
  display: inline-block;
  background: transparent;
  border: 2px solid #333;
  color: #333;
  font-weight: 700;
  padding: 10px 25px;
  border-radius: 1px;
  transition: all .3s ease;
}

#content p.action-button.mehr-erfahren a:hover {
  background: transparent;
  color: var(--handarbeit-red);
  border-color: var(--handarbeit-red);
}

#content .blog.leistungen p.introtext { margin-top: 45px; }
#content .item-page p.introtext.leistungen { font-weight: 700; font-size: 1.3em; line-height: 1.55em; max-width: 650px; margin-left: 0; margin-right: auto; }

@media (min-width: 1025px) {
.blog.leistungen .row-0 .span6 {
  display: inline-block;
  width: calc(47.5% - 10px); /* calc(47.5% - 46px); */
  vertical-align: top;
}
.blog.leistungen .row-0 .span6:nth-child(1) { margin-right: 5%; }

.blog.leistungen .row-0 h2 { min-height: 85px; }
}


/* RELATED LEISTUNGEN */
#below-content div.moduletable.leistungen {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 930px;
}

#below-content div.moduletable.leistungen ul {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}

#below-content div.moduletable.leistungen ul li {
  display: inline-block;
  padding: 15px;
  margin: 0;
  width: calc(25% - 0px);
  vertical-align: text-top;
}

#below-content div.moduletable.leistungen > h3 { padding-left: 15px; }


@media (max-width: 1024px) {
#below-content div.moduletable.leistungen ul li {
  width: calc(50% - 0px);
}
}

@media (max-width: 680px) {
#below-content div.moduletable.leistungen ul li {
  width: calc(100% - 0px);
}
#below-content div.moduletable.leistungen > h3 { }
}

@media (max-width: 360px) {
#below-content div.moduletable.leistungen { display: none; }
}

#below-content div.moduletable.leistungen ul li:nth-child(1) { }
#below-content div.moduletable.leistungen ul li:nth-child(3) { }

#below-content div.moduletable.leistungen span.mod-articles-category-title-wrapper {
  display: block;
  margin-top: 20px;
  font-weight: 700;
  font-size: 90%;
  line-height: 1.5em;
/*  height: auto;
  min-height: 55px;
*/
}

#below-content div.moduletable.leistungen a.mod-articles-category-title {
  color: var(--handarbeit-gray);
  transition: all .3s ease;
}
#below-content div.moduletable.leistungen a.mod-articles-category-title:hover {
  color: var(--handarbeit-red);
}

#below-content div.moduletable.leistungen span.mod-articles-category-introimage {
  display: block;
  padding: 0;
  line-height: 0em;
}
#below-content div.moduletable.leistungen p.mod-articles-category-introtext {
  display: block;
  color: #999;
  font-size: .83em;
  margin: 0;
  margin-top: 12px;
}

.item-page.leistungen h2 { margin-top: 110px; }

p.img-caption {
  font-size: .9em;
  line-height: 1.4em;
  color: #999;
  padding: 0 5px 0 5px;
  margin-top: 0;
  margin-bottom: 30px;
}


/* ÜBER UNS */
@media (min-width: 1025px) {
.blog.ueber-uns div.leading-0[itemprop="blogPost"] { margin-bottom: 100px; }
}

.persons-wrapper {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}

.persons-wrapper .item-person-wrapper {
  display: inline-block;
  margin: 20px 0;
  padding: 0px;
  border-radius: 2rem;
  vertical-align: text-top;
  align-self: stretch;
}

.persons-wrapper .item-person-wrapper a {
  display: block;
  border: 5px solid #EEE;
  background: #f7f7f7;
  padding: 25px;
  border-radius: 2rem;
  transition: all .3s ease;
}

.persons-wrapper .item-person-wrapper a:hover {
  border-color: #EEE;
  background: #EEE;
}

.persons-wrapper .item-person h3 {
  color: var(--handarbeit-red);
  margin: 10px 0 10px 0;
  font-size: 1.45em;
  line-height: 1.25em;
  transition: all .3s ease;
}

.persons-wrapper .item-person-wrapper a:hover h3 {
  color: var(--handarbeit-gray);
}

@media (min-width: 768px) {
.persons-wrapper .item-person-wrapper {
  width: calc(50% - 31px);
  margin: 15px;
}
}
@media (min-width: 769px) {
.persons-wrapper .item-person-wrapper {
  width: calc(50% - 41px);
  margin: 20px;
}
}
@media (min-width: 1025px) {
  .persons-wrapper .item-person-wrapper a {
  padding: 35px;
}
}

#content p.person-image {
  line-height: 0;
  overflow: hidden;
  border-radius: 3px;
}



/* PAGENAV */
/* PAGINATION */
#content .pagination a { transition: none; }
#content .pagination { margin-top: 60px; }
#content ul.pagenav {
  display: block;
  text-align: right;
  margin: 0;
}
#content .pagination ul { text-align: center; }

ul.pagenav {
  margin-top: 40px;
}

ul.pagenav li,
.pagination li {
  display: inline-block;
}

ul.pagenav li a,
.pagination li span,
.pagination a {
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 40px;
  border: 2px solid;
  border-radius: 3px;
}
#content .pagination ul a, #content .pagination ul a:hover { box-shadow: none; }

.pagination li span,
.pagination a { line-height: 48px; }

ul.pagenav li a {
  width: auto;
  padding: 0 25px;
}

.pagination li span {
  border-color: var(--handarbeit-red);
  color: #FFF;
  background-color: var(--handarbeit-red);
  cursor: default;
}

ul.pagenav li a,
.pagination li a {
  border-color: rgba(0,0,0,.1);
  color: rgba(0,0,0,.5);
  background-color: transparent;

}

.pagination li { font-size: 1.15em; }
ul.pagenav li a { font-size: 2.25em; }

ul.pagenav li a:hover,
.pagination li a:hover {
  border-color: #333;
  color: #FFF;
  background-color: #333;
}

li.pagination-start,
li.pagination-prev {
  display: none;
}


/* BREADCRUMBS */
#breadcrumbs {
  display: block;
  font-size: .8em;
  line-height: 2.2em;

  padding-left: 35px;
  padding-right: 35px;
  width: 100%; /* calc(100% - 50px); */
  max-width: 1550px;
  margin: 0 auto;
  margin-top: 65px;
  margin-bottom: 20px;
}

#breadcrumbs,
#breadcrumbs a {
  color: rgba(255,255,255,0.55);
}

#breadcrumbs a {
  margin: 0;
  padding: 0;
  border-bottom: 2px solid rgba(255,255,255,0.25);

  transition: border-color 0.3s ease-in-out;
}

#breadcrumbs a:hover { border-color: rgba(200,210,0,1); }


#breadcrumbs ul li { display: inline-block; margin: 0; padding: 0; }
#breadcrumbs ul li.active { display: inline; }
#breadcrumbs .divider img { width: auto; max-width: auto; /* display: none; */ }
#breadcrumbs .divider { margin: 0 10px; }
#breadcrumbs li.active:nth-child(1),
#breadcrumbs .divider.icon-location { display: none; }

@media (max-width: 1023px) {
main.home #content,
#content { max-width: 600px; margin-left: auto; margin-right: auto; }
#below-content { max-width: 500px; }
main.leistungen #below-content { max-width: 600px; }
}

#below-content .moduletable.actn-mod { display: none; }

@media (min-width: 1440px) {
#below-content { margin-top: 0px; }
#below-content .moduletable.actn-mod {
  display: block;
  background-color: var(--handarbeit-gray2);
  color: #FFF;

  border-radius: 4px 0 0 4px;
  position: fixed;
  bottom: 42.5%;
  right: 0px;
  z-index: 2;
  font-size: 75%;
  width: 165px;
  padding: 20px 25px 2px 22px;
  transition: all .2s ease;
}
}
@media (min-width: 1800px) { #below-content .moduletable.actn-mod { width: 250px; } }


footer h3 { font-size: 1.15em; font-weight: 700; margin: 0 0 26px 0; }
#position-2, #position-3, #position-4, #position-5 { display: inline-block; vertical-align: top; }
#sitemap, #position-3, #position-4, #position-5 { text-align: left; }

#position-2 { width: 24%; margin-right: 3%; }
#position-3 { width: 34%; margin-right: 3%; }
#position-4 { width: 32%; }

@media (max-width: 1023px) {
#position-2 { width: 23%; margin-right: 2%; }
#position-3 { width: 34%; margin-right: 2%; }
#position-4 { width: 36%; }
}

@media (min-width: 1680px) {
#position-2 { width: 20%; margin-right: 2%; }
#position-3 { width: 23%; margin-right: 2%; }
#position-4 { width: 26%; }
}

@media (min-width: 1025px) {
#position-2 { max-width: 230px; }
#position-3,
#position-4 { max-width: 280px; }
}

#position-1 { display: block; }
#position-1 ul { display: block; }
#position-1 li { display: inline-block; }
#position-1 li:nth-of-type(1) { margin-right: 20px; }
#position-1 li:nth-of-type(1),
#position-1 li:nth-of-type(2) { font-size: 1.65em; }
#position-1 li:nth-of-type(3) { display: block; margin-top: 8px; }

#position-2 li,
#position-3 li,
#position-4 li { margin-bottom: 10px; }

footer li.item-128, footer li.item-143 { display: none; }


@media (max-width: 680px) {
#position-1, #position-2, #position-3, #position-4, #position-5 { display: block; position: relative; width: 100%; }
#position-1 li { display: block; margin-right: 0; }
#position-1 li:nth-of-type(3) { display: none; }
#position-1, #position-2, #position-3, #position-4 { margin-bottom: 50px; }

#position-1 { display: none !important; }

#position-2 li,
#position-3 li,
#position-4 li { margin-bottom: 9px; }
}


.responsive-video {
    position: relative;
    padding-bottom: 56%;
    padding-top: 0px;
    height: 0;
    overflow: hidden;
}

.responsive-video iframe, .responsive-video object, .responsive-video embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



/** HOME **/
#content .home.features div.media p { margin: 0; line-height: 0; padding: 0; }
#content .home.features div.text h2 { margin-top: 0; }
#content .home.features p.teaser.text { font-size: .98em; line-height: 1.5em; }

.home.features.wrapper {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}

.home.features.wrapper .item-wrapper {
  align-self: stretch;
}

.home.features.wrapper .item-wrapper .item {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;

    background: #EEE;
}

.home.features.wrapper .item-wrapper .item div {
    align-self: stretch;
}

.home.features.wrapper .item-wrapper .item div.media { align-self: center; }

.home.features.wrapper .item-wrapper .item div.text {
  align-self: center;
  padding: 25px 40px;
}

.home.features.wrapper .item-wrapper .item div.media { width: 57.5%; }
.home.features.wrapper .item-wrapper .item div.text { width: 40%; }
.home.features.wrapper .item-wrapper .item div.left { margin-right: 0; }
.home.features.wrapper .item-wrapper .item div.media.right { margin-left: auto; margin-right: 0; }
.home.features.wrapper .item-wrapper .item div.media.left { margin-left: 0; margin-right: auto; }

@media (max-width: 1024px) {
.home.features.wrapper .item-wrapper .item { display: block; }
.home.features.wrapper .item-wrapper .item div.media,
.home.features.wrapper .item-wrapper .item div.text { width: 100%; }
.home.features.wrapper .item-wrapper .item div.media { height: 400px; overflow: hidden; }
.home.features.wrapper .item-wrapper .item div.media img { margin-top: -17.5%; }
}

@media (max-width: 767px) {
.home.features.wrapper .item-wrapper .item div.media { height: auto; }
.home.features.wrapper .item-wrapper .item div.media img { margin: 0; }
}


/* CONTENT SLIDER */
#content p.loadmodule { height: 0; margin: 0; }
#content .flexslider ul li { padding: 0; margin: 0; list-style-type: none; }


div.ref_wrapper {
  background: rgba(0,0,0,.025);
  border-radius: 2rem;
  padding: 60px 25px 50px 25px;
  margin: 105px 0;
  position: relative;
}
.item-page div.ref_wrapper { margin: 120px 0; }
div.ref_wrapper::before {
  content: "\201F";
  position: absolute;
  top: -15px;
  left: 5%;
  font-size: 196px;
  line-height: 112px;
  text-align: center;
  opacity: .2;
}
div.ref_wrapper::after {
  content: "\02EE";
  position: absolute;
  bottom: -92px;
  right: 5%;
  font-size: 196px;
  line-height: 112px;
  text-align: center;
  opacity: .2;
}
#content p.ref_name {
  text-align: center;
  font-size: 1.5em;
  font-weight: 800;
  color: #999;
}
#content p.ref_text {
  text-align: center;
  font-style: italic;
  color: #AAA;
  font-size: 1.15em;
  line-height: 1.8em;

  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 500px;
}
#content p.ref_link {
  text-align: center;
  margin-top: 65px;
}
@media (max-width: 640px) {
div.ref_wrapper {
  padding: 35px 22px 40px 22px;
  margin: 60px 0;
}
#content p.ref_link { margin-top: 60px; }
}

#content p.home.contact-button {
  text-align: center;
  margin-bottom: 65px;
}

#content p.home.contact-button:first-of-type { margin-top: 155px; }
#content p.home.contact-button:last-of-type { margin-bottom: calc(155px - 0px); }

#content p.home.contact-button a {
  box-shadow: none;
  background-color: var(--handarbeit-red);
  font-weight: 600;
  font-size: 1.35em;

  color: #FFF;
  border: 0px solid var(--handarbeit-red);
  border-radius: 3px;
  padding: 16px 30px;

  transition: all .3s ease;
}

#content p.home.contact-button a:hover {
  background-color: #333;
  border-color: #333;
}

#content p.ref_link a {
  box-shadow: none;
  background-color: transparent;
  font-weight: 600;

  color: #999;
  border: 0px solid #DDD;
  border-radius: 2px;
  padding: 10px 15px;

  transition: all .3s ease;
}

#content p.ref_link a:hover {
  color: #333;
  border-color: #444;
}



div.advantages {
  position: relative;
  display: block;
  margin: 60px 0 60px 0;
}
div.advantages-all {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
div.advantages-all:before {
  content: "";
  position: absolute;
  top: 50%;
  width: 100%;
  border-bottom: 4px solid #EEE;
  z-index: 1;
}

div.advantages-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 1em;
  text-align: center;
  font-weight: 700;
  line-height: 1.2em;
  background-color: #FFF;
  border:6px solid #DDD;
  width: 11em;
  height: 11em;
  border-radius: 50%;
  z-index: 2;

}
div.advantages span.number {
    font-weight: 400;
    font-size: .9em;
    text-align: center;
    margin: -10px 0 5px 0;
}
div.advantages span.text {
  font-weight: 700;
  font-size: 1.15em;
}
@media (max-width: 640px) {
div.advantages { margin: 45px 0; }
div.advantages-all { display: block; }
div.advantages-item {
  margin: 0 auto;
  margin-bottom: 25px;
}
div.advantages-item:last-of-type { margin-bottom: 0; }
div.advantages-all:before {
  top: 0;
  left: 49%;
  height: 100%;
  width: auto;
  border-bottom: 0px;
  border-left: 4px solid #EEE;
}
}
/* */


#socialmedia.bottom {
  display: inline-block;
  margin-right: 25px;
}

#socialmedia.bottom ul {
  margin: 0 0 0 0;
  text-align: center;
  padding: 0;
}

#socialmedia.bottom li {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 0;
  border: none;
  border-radius: 50%;
  overflow: hidden;
  width: 55px;
  height: 55px;
  background: #222;
}


.bottom .mail a.icon,
.bottom .instagram a.icon {
  display: inline-block;
  width: 55px;
  height: 55px;
  background-size: 40px 40px;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  border-radius: 50%;
}

#socialmedia.bottom li.mail:hover { background: var(--handarbeit-red); }
#socialmedia.bottom li.instagram:hover {
  background: #edb44b; /* Old browsers */
  background: -moz-linear-gradient(45deg, #edb44b 0%, #f2833e 30%, #da475b 46%, #b43983 69%, #5466aa 86%, #5466aa 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, #edb44b 0%,#f2833e 30%,#da475b 46%,#b43983 69%,#5466aa 86%,#5466aa 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, #edb44b 0%,#f2833e 30%,#da475b 46%,#b43983 69%,#5466aa 86%,#5466aa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#edb44b', endColorstr='#5466aa',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.mail .icon { background-image: url(../images/f_mail.svg); }
.bottom .mail:hover .icon { background-image: url(../images/f_mail.svg); }

.instagram .icon { background-image: url(../images/f_instagram.svg); }
.bottom .instagram:hover .icon { background-image: url(../images/f_instagram.svg); }


/* VITA */
#content ul.vita { margin: 0; padding: 0; }
#content ul.vita li { padding: 0; margin-bottom: 23px; }
#content ul.vita li,
#content ul.vita li:hover { list-style-type: none; }

span.vita.jahreszahl {
  display: inline-block;
  padding: 3px 14px;
  border: 3px solid #DDD;
  border-radius: 2rem;
  color: var(--handarbeit-gray);
  font-weight: 800;
  font-size: .75em;
  margin-left: -4px;
  margin-bottom: 9px;
}


.column-text {
  box-sizing: border-box;
}
.column-text.cols-2 {
  column-count: 2;
  column-gap: 50px;
  width: auto;
}
.column-text.cols-3 {
  column-count: 3;
  column-gap: 30px;
  width: auto;
}


/* TIMELINE */
section.timeline { position: relative; display: block; border-sizing: border-box; padding: 0; }

section.timeline::before {
    content: '';
    background: rgba(0,0,0,.05);
    width: 4px;
    height: 95%;
    position: absolute;
    left: 30px;
    transform: translateX(-50%);
}

section div.container::before {
  display: table;
  content: " ";
  box-sizing: border-box;
}

section div.container {
  width: 100%;
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.timeline-item {
  position: relative;
  width: 100%;
  margin-bottom: 45px;
  display: block;
  box-sizing: border-box;
}


.timeline-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 2px solid var(--handarbeit-gray);
  background: white;

  position: absolute;
  left: 30px;
  margin-top: 11px;
  margin-left: -6px;
  box-sizing: border-box;
  box-shadow: 0px 0px 2px 18px #FFF;
  transition: all .3s ease;
}

.timeline-item:hover .timeline-dot {
  background: var(--handarbeit-red);
  border-color: var(--handarbeit-red);
}


.timeline-content {
  position: relative;
  width: 100%;
  max-width: 620px;
  padding: 0;

  box-sizing: border-box;

  margin-left: 85px;
  margin-right: auto;
  margin-top: 20px;
}


.timeline-card {
}
.timeline-card p {
}

.timeline-date {
  background: var(--handarbeit-red);
  display: inline-block;
  color: white;
  padding: 7px 14px;
  margin: 0 0 12px 0;
  border-radius: 4px;
  font-size: .72em;
}
.timeline-item.weiterbildung .timeline-date { background: var(--handarbeit-gray); color: #888; font-size: 85%; padding: 15px 30px 0 30px; width: auto; }

.timeline-item:nth-child(even) .timeline-content .timeline-date {
  right: auto;
  left: 0;
}

.timeline-img-header {
  height: 145px;
  position: relative;
  margin-top: 0px;
  margin-bottom: 20px;
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;

}

#content .timeline-content h2,
#content .timeline-content p { padding: 0 0 0 2px; }

.timeline-content h2 { font-size: 1.03em; margin: 5px 0 15px 0; color: var(--handarbeit-gray); }
#content .timeline-content p { font-size: .85em; }
.timeline-content p.timeline-item.weiterbildung .timeline-content h2 { margin: 12px 0 6px 0; }
.timeline-img-header h2 {
  color: #FFFFFF;
  position: absolute;
  bottom: 12px;
  left: 30px;
  margin: 0px;
}

@media (max-width: 1024px) {
.timeline-content {
  width: auto;
  max-width: auto;
}
}

@media (max-width: 767px) {
.timeline-dot,
section.timeline::before { left: 8px; }
.timeline-content { margin-left: 45px; }
}

@media (max-width: 320px) {

}


/* WEITERBILDUNGEN */
section.weiterbildungen div.container::before,
section.weiterbildungen div.container::after { display: none; }

section.weiterbildungen div.container {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}

#content section.weiterbildungen a {
  display: inline-block;
  width: calc(50% - 12px);
  margin: 6px;
  padding: 27px 23px;
  vertical-align: text-top;
  align-self: stretch;
  background: white;
  border: 5px solid #EEE;
  border-radius: 1rem;
  text-align: center;
  box-shadow: none;
  transition: all .3s ease;
  box-sizing: border-box;
}
#content section.weiterbildungen a:hover {
  color: white;
  background: var(--handarbeit-red);
  border-color: var(--handarbeit-red);
}

#content section.weiterbildungen a.none:hover {
  color: var(--handarbeit-gray);
  background: white;
  border: 5px solid #EEE;
  cursor: default;
}


.weiterbildung-date { font-size: .75em; margin-bottom: 9px; }
.weiterbildung-details { font-size: .9em; }
#content .weiterbildung-details p:first-of-type { font-weight: 800; line-height: 1.3em; }

#content .weiterbildung-item p { margin: 0; }
#content section.weiterbildungen a { }
#content .weiterbildung-item p.weiterbildungsort {
  font-weight: 600;
  font-size: .88em;
  color: #AAA;
  margin-top: 4px;
  transition: all .3s ease;
}
#content section.weiterbildungen a:hover p.weiterbildungsort { color: white; }

@media (max-width: 767px) {
#content section.weiterbildungen a { width: calc(100% - 10px); padding: 23px 17px; }
}


/* HOME LEISTUNGEN */
div.leistungen-auswahl-wrapper { position: relative; }
div.leistungen-auswahl-wrapper span.linie-1,
div.leistungen-auswahl-wrapper span.linie-2,
div.leistungen-auswahl-wrapper span.linie-3 { display: none; }

#content ul.leistungen-auswahl {
  position: relative;
  margin: 60px auto;
  padding: 0;
  z-index: 2;
}

#content ul.leistungen-auswahl li {
  position: relative;
  display: inline-block;
  width: calc(33.33% - 32px);
  background: transparent;
  height: 215px;
  font-size: .85em;
  font-weight: 700;
  margin-bottom: 15px;
  padding: 0;

  z-index: 3;
}
/*
#content ul.leistungen-auswahl:nth-child(even) li {
  margin-right: 15px;
}
*/

#content ul.leistungen-auswahl li.osteopathie { font-size: 1em; width: calc(100% - 17px); }
#content ul.leistungen-auswahl li.physiotherapie,
#content ul.leistungen-auswahl li.training { margin-right: 34px; }

/*
#content ul.leistungen-auswahl li { filter: grayscale(100%); }
#content ul.leistungen-auswahl li:hover { filter: grayscale(0%); }
*/

#content ul.leistungen-auswahl li {
/*  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto; */
  transition: all .2s ease;
}
#content ul.leistungen-auswahl li:hover {
/*  background-size: 105% auto; */
}

/* #content ul.leistungen-auswahl li.osteopathie { background-image: url(../../../images/slider_osteopathie/osteopathie_001.jpg); }
#content ul.leistungen-auswahl li.physiotherapie { background-image: url(../../../images/slider_physiotherapie/physiotherapie_001.jpg); }
#content ul.leistungen-auswahl li.training { background-image: url(../../../images/slider_training/training-u-reha_001.jpg); }
#content ul.leistungen-auswahl li.ernaehrung { background-image: url(../../../images/slider_ernaehrung/ernaehrungsberatung_001.jpg); }
*/


#content ul.leistungen-auswahl li span.text a {
  font-weight: 700;
  line-height: 205px;
  text-align: center;
  box-shadow: none;
  display: block;
  width: 100%;
  height: 100%;
  transition: all .2s ease;
  background: white;
  color: var(--handarbeit-gray);

  border: 5px solid #EEE;
  border-radius: 2rem;
/*
  text-shadow: 4px 4px 6px rgba(0,0,0,.25);
*/
}

#content ul.leistungen-auswahl li span.text a:hover {
  background: var(--handarbeit-red);
  color: white;
  border-color: var(--handarbeit-red);
}

@media (max-width: 1024px) {
#content ul.leistungen-auswahl li { height: 195px; }
#content ul.leistungen-auswahl li span.text a { line-height: 185px; }
#content ul.leistungen-auswahl li { background-size: 112% auto; }
}

@media (max-width: 767px) {
#content ul.leistungen-auswahl li.osteopathie,
#content ul.leistungen-auswahl li {
  width: calc(100% - 2px);
  height: 155px;
}
#content ul.leistungen-auswahl li span.text a { line-height: 145px; }

#content ul.leistungen-auswahl li,
#content ul.leistungen-auswahl li.osteopathie { font-size: .95em; margin-bottom: 25px; }
}


@media (min-width: 768px) {
div.leistungen-auswahl-wrapper span.linie-1 {
  width: 42.85714%;
  height: 38.09524%;
  border-bottom: 6px solid #EEE;
  -webkit-transform:
      translateY(-20px)
      translateX(5px)
      rotate(27deg);
  position: absolute;
  display: inline-block;
  top: 95px;
  z-index: 1;
}
div.leistungen-auswahl-wrapper span.linie-2 {
  width: 7px;
  height: 200px;
  background: #EEE;
  position: absolute;
  display: inline-block;
  top: 95px;
  left: calc(50% - 7px);
  z-index: 1;
}
div.leistungen-auswahl-wrapper span.linie-3 {
  width: 42.85714%;
  height: 38.09524%;
  border-bottom: 6px solid #EEE;
  -webkit-transform:
      translateY(20px)
      translateX(5px)
      rotate(-27deg);
  position: absolute;
  display: inline-block;
  top: 55px;
  z-index: 1;
}

#content ul.leistungen-auswahl li.osteopathie {margin-bottom: 70px; }
}

@media (min-width: 768px) {
div.leistungen-auswahl-wrapper span.linie-1 { left: 47%; }
div.leistungen-auswahl-wrapper span.linie-3 { left: 7.75%; }
#content ul.leistungen-auswahl li { font-size: .78em; }
}
@media (min-width: 769px) {
div.leistungen-auswahl-wrapper span.linie-1 { left: 47.5%; }
div.leistungen-auswahl-wrapper span.linie-3 { left: 7%; }
}
@media (min-width: 1025px) {
div.leistungen-auswahl-wrapper span.linie-1 { left: 46%; }
div.leistungen-auswahl-wrapper span.linie-3 { left: 9.25%; }
#content ul.leistungen-auswahl li { font-size: .85em; }
}


/* IMPRINT */
span.kuerzel { position: relative; }
span.daten { position: absolute; left: 50px; }
@media (max-width: 480px) { span.daten { left: 28px; } }
@media (max-width: 370px) {
span.daten {
  position: relative;
  left: auto;
  display: block;
}

}

/* GALERIE */
#content .galerie_wrapper { float: inherit !important; }

@supports (display: grid) {

#content .galerie_wrapper .items p { margin: 0; padding: 0; overflow: hidden; position: relative; display: block; width: 100%; height: 100%; background: #eee; }
#content .galerie_wrapper .items p img {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);

  filter: grayscale(0%);
  transition: all .3s ease;
 }
#content .galerie_wrapper .items p:hover img {
  filter: grayscale(100%);
}
#content .galerie_wrapper .items p:hover {
/*  cursor: help; */
}


.galerie_wrapper .items {
  display: -ms-grid;
  display: grid;
  -ms-grid-gap: 20px;
  grid-gap: 20px;
  -ms-grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  -ms-grid-auto-rows: 230px;
  grid-auto-rows: 230px;
  -ms-grid-auto-flow: dense;
  grid-auto-flow: dense;

}

.galerie_wrapper .items .horiz {
  -ms-grid-column: span 2;
  grid-column: span 2;
}
.galerie_wrapper .items .vert {
  -ms-grid-row: span 2;
  grid-row: span 2;
}
.galerie_wrapper .items .big {
  -ms-grid-column: span 2;
  grid-column: span 2;
  -ms-grid-row: span 3;
  grid-row: span 3;
}

span.galerie.bildbeschreibung {
  position: absolute;
  z-index: 99;
  bottom: 22px;
  left: 22px;

  padding: 7px 10px 8px 10px;
  background: transparent;
  color: white;

  font-size: .7em;
  font-weight: 600;
  display: inline-block;
  max-width: 85%;
  text-align: left;
  line-height: 1.35em;

  transition: all .3s ease;
  opacity: 0;
}
.galerie_wrapper p:hover span.galerie.bildbeschreibung {
  background: var(--handarbeit-red);
  bottom: 17px;
  opacity: 1;
}

span.galerie.overlay {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 98;
  background: black;
  opacity: 0;
  transition: all .3s ease;
}
.galerie_wrapper p:hover span.galerie.overlay { opacity: .35; }

.galerie_wrapper p:hover { cursor: help; }

}

@media (max-width: 1024px) {
.galerie_wrapper .items {
  -ms-grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  -ms-grid-auto-rows: 170px;
  grid-auto-rows: 170px;
}
}

@media (max-width: 480px) {
.galerie_wrapper .items {
  -ms-grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  -ms-grid-auto-rows: 90px;
  grid-auto-rows: 90px;
  -ms-grid-gap: 10px;
  grid-gap: 10px;
}
.galerie_wrapper .items .horiz {
  -ms-grid-column: span 1;
  grid-column: span 1;
}
.galerie_wrapper .items .vert {
  -ms-grid-column: span 1;
  grid-column: span 1;
  -ms-grid-row: span 2;
  grid-row: span 2;
}
.galerie_wrapper .items .big {
  -ms-grid-column: span 2;
  grid-column: span 2;
  -ms-grid-row: span 3;
  grid-row: span 3;
}
}

@media (max-width: 380px) {
.galerie_wrapper .items {
  -ms-grid-auto-rows: 80px;
  grid-auto-rows: 80px;
}
}

@media (max-width: 320px) {
.galerie_wrapper .items {
  -ms-grid-auto-rows: 75px;
  grid-auto-rows: 75px;
}
}





.galerie_wrapper .visible {
  visibility: visible;
  opacity: 1;
  z-index: 2;
}
.galerie_wrapper .hidden {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}


#content ul.switchlinks {
  margin: 0 auto;
  padding: 0;
  text-align: center;
}
#content ul.switchlinks.top { margin-bottom: 40px; }
#content ul.switchlinks.bottom { margin-top: 40px; }

#content ul.switchlinks li {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: inline-block;

  width: 44px;
  height: 15px;
}
#content ul.switchlinks li a {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  padding: 0px;
  margin-left: 4px;
  border: 2px solid #CCC;
  color: #999;
  font-weight: 600;
  border-radius: 1px;
  box-shadow: none;
  box-sizing: border-box;

  transition: all .3s ease;
}
#content ul.switchlinks li:first-of-type a { margin-left: 0; }

#content ul.switchlinks li:hover a {
  border-color: var(--handarbeit-gray);
  background-color: var(--handarbeit-gray);
  color: white;
}

#content ul.switchlinks li.active a {
  border-color: var(--handarbeit-red);
  background-color: var(--handarbeit-red);
  color: white;
  cursor: default;
}



/* FORMS */


fieldset,
label,
input,
select,
textarea {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  padding: 0;
  margin: 0;
  font-family: "Open Sans", sans-serif;
  font-size: 15px;
}

*:focus { outline: none; }

form { margin: 0px; }

div.form-response-box,
#content p.form-introtext,
div.form-fehler-box,
form#form1 {
  max-width: 475px;
  margin-left: 0;
  margin-right: auto;
}

#content p.form-introtext { margin-bottom: 35px; }

div.form-response-box {
  background: #EEE;
  padding: 25px;
}

fieldset {
  position: relative;
  display: inline-block;
  width: 49.5%;
}

fieldset.first {
  width: 44.5%;
  margin-right: 5%;
}

label {
  display: block;
  text-transform: uppercase;
  color: #666;
  font-size: .9em;
  margin: 0;
  margin-bottom: 3px;
  padding: 0;
  padding-left: 4px;
  letter-spacing: .025em;
}

legend { font-weight: 700; }
legend.second { margin-top: 30px; }

input,
select,
textarea {
  background-color: rgba(0,0,0,0.08);
  padding: 16px 14px;
  margin: 0;
  border: 0px solid #CCC;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  font-weight: 700;
  color: var(--handarbeit-gray);
}


select:hover, select:focus,
input:hover, input:focus,
textarea:hover, textarea:focus {
  background-color: rgba(0,0,0,0.12);
}

form div {
  margin-bottom: 18px;
}


div.check-or-radio-wrapper { margin: 15px 0; }
div.check-or-radio {
  position: relative;
  margin-bottom: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
div.check-or-radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
div.check-or-radio .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 23px;
    width: 23px;
    background-color: #eee;
    border-radius: 1px;
}
div.check-or-radio .checkmark.radio { border-radius: 50%; }
div.check-or-radio:hover input ~ .checkmark {
    background-color: #ccc;
}
div.check-or-radio input:checked ~ .checkmark {
    background-color: var(--handarbeit-red);
}
div.check-or-radio .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
div.check-or-radio input:checked ~ .checkmark:after {
    display: block;
}
div.check-or-radio .checkmark:after {
    left: 8px;
    top: 4px;
    width: 7px;
    height: 13px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
div.check-or-radio .checkmark.radio:after {
  left: 8px;
  top: 8px;
  border: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--handarbeit-red);
  -ms-transform: none;
  -webkit-transform: none;
  transform: none;
}


div.check-or-radio label {
  color: var(--handarbeit-gray);
  font-size: 1em;
  text-transform: none !important;
  display: block;
  width: 100%;
  padding-left: 35px;
  margin-bottom: 0;
  cursor: pointer !important;
}

input[type="number"],
input[type="text"] {
  display: block;
  width: 100%; /* calc(90% - 24px); */
}

select {
  display: block;
  width: 100%;
  background-image: url(../images/select-arrow.svg);
  background-position: 99% 50%;
  background-repeat: no-repeat;
}

div.thema { margin-top: 20px; }
div.submit-wrapper { text-align: center; }


input[type="button"],
input[type="submit"] {
  display: inline-block;
  background-color: var(--handarbeit-red);
  color: #FFF;
  font-weight: 700;
  padding: 14px 28px;
  font-size: 1.12em;
  border: 0px solid transparent;
  cursor: pointer;
  margin-top: 40px;
}

input[type="button"]:hover, input[type="button"]:focus,
input[type="submit"]:hover, input[type="submit"]:focus {
  border-color: #333;
  background-color: #333;
}

input#betreff,
textarea { width: 100%; }

input[type="checkbox"],
input[type="checkbox"]:checked {
  -webkit-appearance: checkbox !important;
  -moz-appearance: checkbox !important;
  -ms-appearance: checkbox !important;
  -o-appearance: checkbox !important;
  appearance: checkbox !important;
}

input[type="radio"],
input[type="radio"]:checked {
  -webkit-appearance: radio !important;
  -moz-appearance: radio !important;
  -ms-appearance: radio !important;
  -o-appearance: radio !important;
  appearance: radio !important;
}

input[type="file"] {
  background: #EEE;
  border-radius:2px;
  padding: 2px 6px;
  font-size: .9em;
  margin-bottom: 4px;
}

input[type="file"]:hover {
  background: #DDD;
  border-color: #DDD !important;
  cursor: pointer !important;
}

div.successfull-uploads {
  padding:15px 20px;
  border:2px solid rgba(0,0,0,0.35);
  border-radius: 2px;
}




div.vv input#wohnort,
div.vv input#strasse { display: inline-block; width: calc(70% - 4px); }
div.vv input#plz,
div.vv input#hausnr { display: inline-block; width: calc(25% - 4px); }
div.vv input#plz,
div.vv input#strasse { margin-right: 5%; }

div.vv input.zwanzig { display: inline-block; width: calc(26% - 4px); }
div.vv input.zehn { display: inline-block; width: calc(12% - 4px); }

div.vv label.zehn {
  display: inline-block;
  width: 80%;
  margin: 0;
  padding-left: 9px;
  text-transform: none;
  font-size: 1em;
  letter-spacing: normal;
  color: var(--handarbeit-gray);
}

span.zehn { display: inline-block; width: 75%; margin-left: 10px; line-height: 1.2em; vertical-align: middle; }

@media (max-width: 600px) {
div.vv input.zehn { width: calc(17% - 4px); }
span.zehn { width: 70%; }
}

div.vv div.pips { margin: 35px 0 35px 0; }

.ssl-wrapper {
  color: #777;
  text-align: center;
  font-size: .8em;
  margin-top: 20px;
}

.icon-ssl {
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(../images/ssl.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  margin-right: 10px;
  vertical-align:text-bottom;
}

/* FEHLER */
.form-fehler-box {
  display: block;

  border: 6px solid var(--handarbeit-gray);
  padding: 25px 20px;
  margin-top: 40px;
  margin-bottom: 30px;
  border-radius: 2px;
  line-height: 1.65em;
}

.select-fail, .input-fail, .textarea-fail { background-color: rgba(255,0,0,.12); color: rgba(255,20,20,1); border: 2px solid red; }
.select-fail:hover, .select-fail:focus, .input-fail:hover, .input-fail:focus, .textarea-fail:hover, .textarea-fail:focus { background-color: rgba(0,0,0,.12); border-color: var(--handarbeit-gray); color: var(--handarbeit-gray); }

@media (max-width: 640px) {
fieldset { display: block; width: 100%; }
fieldset.first { width: 100%; margin-right: 0; }

input#betreff,
textarea,
input[type="number"],
input[type="text"] { width: 100%; /* calc(100% - 28px); */ }
}



p.step-counter {
  border: 2px solid rgba(0,0,0,.1);
  border-radius: 2px;
  padding: 5px 0;
  margin-bottom: 45px;
  text-align: center;
  color: rgba(0,0,0,.5);
}

div.vv h2 {
  margin-bottom: 40px;
}

div.vv h2.sub-headline {
  margin-top: 90px;
  margin-bottom: 30px;
}

div.vv h3.sub-headline {
  font-size: 1.2em;
  margin-top: 40px;
  margin-bottom: 20px;
}

input.buttondisabled {
  background:#EEE;
  border-color:#DDD;
  color:#999;
  cursor:not-allowed !important;
}

input:disabled,
input[type="text"].input-disabled,
input.input-disabled,
select.select-disabled {
  -webkit-text-fill-color: rgba(0,0,0,0.5) !important; /* Override iOS / Android font color change */
  -webkit-opacity:1; /* Override iOS opacity change affecting text & background color */

  cursor: not-allowed !important;
  border-color: transparent !important;
  background-color: rgba(0,0,0,0.18) !important;
  color: rgba(0,0,0,0.5) !important;
}


div#forma_person_inputs { }

span#infohoverblock { position: relative; display: inline-block; }
span#infoicon {
  position: relative;
  display: inline-block;
  padding: 2px 6px 0 6px;
  margin-left: 8px;
  background-color: #AAA;
  color: #FFF;
  border-radius: 2px;
  cursor: help;
  font-weight: 500;
  font-size: .9em;
  letter-spacing: .025em;
  text-align: center;
  text-transform: uppercase !important;
}
span#hovertext { width: 320px; text-transform: none !important; display:none; }

span#infohoverblock:focus span#hovertext,
span#infohoverblock:hover span#hovertext {
  display: inline-block;
  position: absolute;
  z-index: 999;
  background: #FEFEFE;
  border: 2px solid #CCC;
  padding: 20px;
  font-size: 90%;
  line-height: 1.35em;

-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1);
-moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1);
box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1);
}

span#infoschliessen { display: none; }

@media (max-width: 1024px) {
span#infoschliessen { display: inline-block; padding: 6px 8px; background: #CCC; margin-top: 16px; }
}

/* REFERENZEN */


.easy_top_right_admin { display: none; }
.control-group.gbmailshow { display: none; }


.easy_frame {
  display: block;
/*  border-bottom: 36px solid rgba(0,0,0,0.04); */
/*  padding-bottom: 85px; */
  margin-bottom: 110px;

}

.easy_frame:last-of-type {
  border: none;
}

.easy_frame:first-of-type {
/*  border-top: 72px solid rgba(0,0,0,0.04); */
  margin-top: 110px;
}

.easy_big,
.easy_small {
  display: inline-block;
  padding: 7px 14px;
  margin-right: 10px;
  margin-bottom: 9px;
}

.easy_small {
  margin-right: 3px;
  padding: 6px 12px;
  border: 3px solid #DDD;
  border-radius: 2rem;
  color: #999;
  font-weight: 700;
  font-size: .68em;
}

.easy_small.red {
  border-color: red;
  color: red;
}

.easy_big {
  font-weight: 800;
  font-size: .83em;
  background: #222; /* var(--handarbeit-red) */
  border-color: #222;
  color: white;
  border: 3px solid #222;
  border-radius: 2rem;
}

.easy_spacer { display: none; margin: 0; padding: 0; height: 0px; }
@media (max-width: 767px) {
.easy_spacer {
  display: block;
  height: 1px;
}
.easy_big { margin-right: 0px; }
.easy_small { font-size: .75em; }
}

.easy_top {
  margin-bottom: 40px;
}

.easy_title {
  font-weight: 800;
  font-size: 1.35em;
  margin: 0 0 30px 0;
  padding-left: 4px;
}

.easy_content {
  position: relative;
  margin: 0;
  background: rgba(0,0,0,.03);
  border-radius: 2rem;
  padding: 45px 75px 50px 55px;
}

@media (max-width: 767px) {
.easy_content {
  background: transparent;
  padding: 0px;
}
.easy_frame {
  padding-bottom: 45px;
  margin-bottom: 45px;
  border-bottom: 36px solid rgba(0,0,0,0.04);
}

.easy_frame:first-of-type {
/*  border-top: 72px solid rgba(0,0,0,0.04);
  padding-top: 45px; */
  margin-top: 90px;
}
}

/*
@media (min-width: 768px) {
.easy_content::before {
  content: "\201F";
  position: absolute;
  bottom: -62px;
  right: 90px;
  font-size: 166px;
  line-height: 112px;
  text-align: center;
  opacity: 1;
  color: #e8e8e8;
}
.easy_content::after {
  content: "\02EE";
  position: absolute;
  bottom: -90px;
  right: 35px;
  font-size: 166px;
  line-height: 112px;
  text-align: center;
  opacity: 1;
  color: #e8e8e8;
}
}
*/

.easy_comment {
  padding-left: 5px;
  font-style: italic;
  font-size: 1em;
  line-height: 1.52em;
  color: #777;
}


.easy_rating {
  margin-top: 40px;
  padding-left: 2px;
  height: 28px;
}
.easy_rating img { height: 100%; }

#content p.easy_introtext {
}

div.sign {
  margin: 0 0 85px 0;
}

a.easy_view,
a.easy_sign {
  display: inline-block;
  background-color: var(--handarbeit-red);
  color: #FFF;
  font-weight: 700;
  padding: 14px 28px;
  font-size: 1.12em;
  border: 0px solid transparent;
  cursor: pointer;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  transition: all .3s ease;
}

a.easy_view:hover,
a.easy_sign:hover {
  background-color: #333;
  color: #FFF;
}

@media (max-width: 767px) {
a.easy_sign, p#easysubmit input[type="submit"] { display: block; text-align: center; padding: 16px 24px; }
p#easysubmit input[type="submit"] { width: 100%; }
}

#easybook .easy_entrylink form {
  max-width: 650px;
  margin-left: 0;
  margin-right: auto;
}

.alert-error div {
  display: block;
  border: 6px solid var(--handarbeit-gray);
  padding: 25px 20px;
  margin-top: 0px;
  margin-bottom: 10px;
  border-radius: 2px;
  line-height: 1.65em;
  font-weight: 700;
}
.alert-error div:last-child { margin-bottom: 30px; }

.alert-notice a.close,
.alert-error button.close { display: none; }

.alert-notice {
  max-width: 475px;
  margin-left: 0;
  margin-right: auto;
  margin-top: 25px;
  margin-top: 50px;
  background: rgba(0,0,0,0.04);
  padding: 20px 25px;
}

.alert-notice h4 {
  font-size: 1.25em;
  color: #333;
  margin: 0 0 15px 0;
}


/**
 * @package         Sliders
 * @version         7.6.3
 *
 * @author          Peter van Westen <info@regularlabs.com>
 * @link            http://www.regularlabs.com
 * @copyright       Copyright © 2018 Regular Labs All Rights Reserved
 * @license         http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
 */
/*
 * You can override this stylesheet by creating your own in:
 * /templates/[YOUR TEMPLATE]/css/sliders/style.min.css
 */
.rl_sliders .panel-heading a {
  background-color: rgba(0,0,0,0.04);
  box-shadow: none;
  font-weight: 800;
  color: var(--handarbeit-red);
}

.rl_sliders .fade {
  opacity: 0;
  -webkit-transition: opacity 1ms linear;
  -moz-transition: opacity 1ms linear;
  -o-transition: opacity 1ms linear;
  transition: opacity 1ms linear;
}
.rl_sliders .fade.in {
  opacity: 1;
}
.rl_sliders.has_effects .fade {
  -webkit-transition: opacity 0.15s linear;
  -moz-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.rl_sliders .collapse {
  display: block;
  position: relative;
  height: auto;
  overflow: hidden;
  -webkit-transition: height 1ms ease;
  -moz-transition: height 1ms ease;
  -o-transition: height 1ms ease;
  transition: height 1ms ease;
}
.rl_sliders .collapse.in {
  height: auto;
}
.rl_sliders.has_effects .collapse {
  -webkit-transition: height 0.35s ease;
  -moz-transition: height 0.35s ease;
  -o-transition: height 0.35s ease;
  transition: height 0.35s ease;
}
.rl_sliders.accordion {
  margin-bottom: 18px;
}
.rl_sliders.accordion > .accordion-group {
  margin-bottom: 1px;
  border-bottom: 0px solid rgba(2,0,0,.05);

}
.rl_sliders.accordion > .accordion-group .accordion-heading {
  border-bottom: 0;
}
.rl_sliders.accordion > .accordion-group .accordion-heading .accordion-toggle {
  display: block;
  padding: 15px 15px 15px 45px;
  cursor: pointer;
  position: relative;
}
.rl_sliders.accordion > .accordion-group > .accordion-body {
  padding: 0;
  border: none;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner {
  padding: 9px 15px;
  border-top: 0px solid #e5e5e5;
}
.rl_sliders.accordion > .accordion-group > .accordion-body.in:hover {
  overflow: visible;
}

.rl_sliders.accordion {
  *zoom: 1;

  max-width: 675px;
  margin-left: 0;
  margin-right: auto;
}
.rl_sliders.accordion:before,
.rl_sliders.accordion:after {
  display: table;
  content: "";
  line-height: 0;
}
.rl_sliders.accordion:after {
  clear: both;
}
.rl_sliders.accordion:last-child {
  margin-bottom: 0;
}
.rl_sliders.accordion > .accordion-group {
  -webkit-transition-duration: 0.2s;
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.rl_sliders.accordion > .accordion-group .panel-heading {
  padding: 0;
}
.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle:before {
}

.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle.collapsed:before {
}



/* CSS ICONS */
.nn_sliders-group span.sliders-icon-wrapper {
  display: inline-block;
  position: absolute;
  left: 16px;
  top: 18px;
  width: 15px;
  height: 15px;
}

.nn_sliders-group span.sliders-icon-wrapper span {
  height: 3px;
  width: 15px;
  display: block;
  margin: 0 auto;
  background: var(--handarbeit-gray);
  transition: all .2s;
}

.nn_sliders-group span.sliders-icon-wrapper span:nth-child(1) { position: absolute; top: 6px; }
.nn_sliders-group span.sliders-icon-wrapper span:nth-child(2) { transform: translate(0px,6px)rotate(90deg); opacity: 1; }

.nn_sliders-group.active span.sliders-icon-wrapper span:nth-child(1) { transform: rotate(180deg); }
.nn_sliders-group.active span.sliders-icon-wrapper span:nth-child(2) { transform: translate(0px,6px)rotate(180deg); opacity: 0; }


.nn_sliders-group .panel-heading a:hover span.sliders-icon-wrapper span,
.nn_sliders-group.active span.sliders-icon-wrapper span {
  background: var(--handarbeit-gray);
}



span.rl_sliders-toggle-inner {
  padding: 0 2px;
  box-shadow: none;
  transition: background .15s cubic-bezier(0.33, 0.66, 0.66, 1);
}

.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle > span.rl_sliders-toggle-inner,
.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle:hover > span.rl_sliders-toggle-inner {
  background-color: transparent;
  color: #000;
}

.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle {
  -webkit-transition-duration: 0.2s;
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  transition-duration: 0.2s;
}


.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle span.rl_sliders-title-inactive {
  display: inherit;
}
.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle span.rl_sliders-title-active {
  display: none;
}
.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle {

}
.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle span.rl_sliders-title-inactive {
  display: none;
}
.rl_sliders.accordion > .accordion-group.active > .accordion-heading > a.accordion-toggle span.rl_sliders-title-active {
  display: inherit;
}
.rl_sliders.accordion > .accordion-group > div > a:focus,
.rl_sliders.accordion > .accordion-group.active > div > a:focus {
  outline: none;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner {
  padding: 15px 15px 50px 46px;
  overflow-y: hidden !important;
  overflow-x: auto;
  *zoom: 1;
  /* font-size: .9em; */
  line-height: 1.65em;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner:before,
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner:after {
  display: table;
  content: "";
  line-height: 0;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner:after {
  clear: both;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner > :first-child {
  margin-top: 0;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner > :last-child {
  margin-bottom: 0;
}
.rl_sliders.accordion > .accordion-group > .accordion-body > .accordion-inner .rl_sliders-title {
  display: none;
}
.rl_sliders.accordion > .accordion-group.icon > .accordion-heading > a.accordion-toggle span.rl_sliders-toggle-inner:before {
  display: inline-block;
  *margin-right: .3em;
  speak: none;
  content: "\2a";
}
.rl_sliders.accordion > .accordion-group.icon.active > .accordion-heading > a.accordion-toggle span.rl_sliders-toggle-inner:before {
  content: "\4b";
}




/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v16-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../fonts/open-sans-v16-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-300italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/open-sans-v16-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'),
       url('../fonts/open-sans-v16-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-300italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v16-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/open-sans-v16-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Italic'), local('OpenSans-Italic'),
       url('../fonts/open-sans-v16-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/open-sans-v16-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'),
       url('../fonts/open-sans-v16-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-600italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v16-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v16-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v16-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('../fonts/open-sans-v16-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-700italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/open-sans-v16-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
       url('../fonts/open-sans-v16-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-700italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-800 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/open-sans-v16-latin-800.eot'); /* IE9 Compat Modes */
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
       url('../fonts/open-sans-v16-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-800italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/open-sans-v16-latin-800italic.eot'); /* IE9 Compat Modes */
  src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'),
       url('../fonts/open-sans-v16-latin-800italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v16-latin-800italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v16-latin-800italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v16-latin-800italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v16-latin-800italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
