/*! HTML5 Boilerplate v6.1.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

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

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */


h1,h2,h3,h4,h5,h6,p,a,button,input,textarea{
	font-size:inherit;
	line-height:inherit;
	color:inherit;
	margin:0;
}

ul,ol,li{
	list-style:none;
	margin:0;
	padding:0;
}

a{
    outline:none;
}
a:hover{
	color:inherit;
	text-decoration:none;
}

img{
	width:100%;
}


/*
	Variables
*/

:root {
	--main-bg-color: #141414;
	--second-bg-color: #fff;
	--third-bg-color: #F2F2F2;
	--light-bg-color: #1E1E1E;
	
	--main-txt-color: #141414;
	--second-txt-color: #fff;
	--third-txt-color: #BCB243;
	--fourth-txt-color: #BEBEBE;
    
    --border-color-primary: #ECECEC;
    --border-color-secondary: #A0A0A0;
    --border-color-tertiary: #fff;
    
    --brand-color: #BCB243;
	
	--font-size-lg: 30px;
	--font-size-md: 22px;
	--font-size-sm: 20px;
	--font-size-sm2: 18px;
	--font-size-xs: 16px;
	--font-size-tiny: 12px;
	
	--font-size-h1: 30px;
	--font-size-h2: 25px;
	--font-size-h3: 20px;
	--font-size-h4: 15px;
	--font-size-h5: 12px;
	
	--font-weight-bold: 600;
}

/*
	Layout
*/

html{
    scroll-behavior: smooth;
}

body{
	font-family: 'Roboto', sans-serif;
	color: var(--main-txt-color);
    line-height:1.2;
	background-color: var(--third-bg-color);
}

.container{
    max-width:100%;
}

.row{
	position:relative
}

.header-container{
	position: fixed;
	top: 0;
	left: 0;
	background-color: var(--main-bg-color);
    color: var(--second-txt-color);
	z-index: 1100;
    width:100vw;
}
.header-logo{
	width:320px;
    padding:30px;
    position:relative;
    background-color: var(--light-bg-color);
    z-index:1200;
    display:inline-block;
}
.header-logo img{
    width:140px;
    margin-left:40px;
}
.header-user{
    margin-bottom:30px;
    position:relative;
    padding-left:40px;
}
.header-user-name{
    font-size: var(--font-size-xs);
}
.header-login{
    margin-bottom:30px;
}
.header-user-icon{
    width:30px;
    height:30px;
    position:absolute;
    top:1px;
    left:0;
    background-color:var(--second-bg-color);
	border-radius:100%;
	text-align:center;
}
.header-user-icon .icon-user{
    background-color:var(--main-bg-color);
	margin-top:7px
}
.header-user-links{
	margin-top:-5px
}
.header-user-links li{
    display:inline-block;
}
.header-user-links a{
    font-size:8px;
    position:relative;
    padding:0 15px;
}
.header-user-links a:before{
    content:"";
    display:block;
    background-image:url('/assets/img/icon-arrow.svg');
    background-size:cover;
    width:8px;
    height:8px;
    position:absolute;
    top:1px;
    left:0;
    transform: rotate(-90deg);
}


.sidebar{
    position:fixed;
    top:0;
    left:0;
    width:80vw;
    max-width:320px;
    height:100vh;
    padding:15px;
    z-index: 30;
    background-color: var(--main-bg-color);
    color:var(--second-txt-color);
    padding-top:51px;
}
.sidebar-footer{
    position:absolute;
    bottom:50px;
    left: 15px;
    padding: 25px;
}
.sidebar-imprint nav ul{
    display:flex;
    margin-top:15px;
}
.sidebar-imprint nav li{
    margin-right:5px;
}

.main-container{
	margin-left:330px;
	padding: 165px 30px 70px 30px;
    min-height: 100vh;
    overflow: hidden;
}

.footer-text{
    padding:60px 0;
}

.button-mobile{
    display:none;
    width:24px;
    position:absolute;
    top: 50%;
    left:15px;
    transform: translate(0,-50%);
    cursor:pointer;
    z-index:1210;
}

/*
    Navigation
*/


.sidebar-nav{
	padding: 0 25px;
    margin-top:60px;
}
.sidebar-nav li{
	padding:10px 0;
}
.sidebar-nav a{
    position:relative;
    padding-left:30px;
	font-size: var(--font-size-md);
	font-weight: var(--font-weight-bold);
    transition: .6s;
}
.sidebar-nav a:hover{
    color:var(--fourth-txt-color);
    padding-left:35px;
}
.sidebar-nav .rex-active a,
.sidebar-nav .rex-current a{
	color: var(--third-txt-color);
}
.sidebar-nav a:before{
	content:"";
    display:block;
    background-image:url('/assets/img/icon-arrow.svg');
    background-size:cover;
    width:23px;
    height:23px;
    position:absolute;
    top:3px;
    left:0;
	transform: rotate(-90deg);
}
.sidebar-nav .is-locked a:before{
    width:20px;
    height:20px;
    -webkit-mask-image: url('/assets/img/icon-lock.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-lock.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background:var(--second-bg-color);
    transform:none;
}

.meta-container{
    position:absolute;
	z-index: 20;
    top: 0;
	left: 0;
    padding:0;
    background-color: var(--second-bg-color);
    width:100%;
    height: 100%;
    padding: 0 45px 0 375px;
}
.header-meta{
    display:flex;
    justify-content: flex-end;
    align-items: center;
    height:100%;
    position:relative;
}
.header-meta .button-help{
    margin-right:15px;
    background-color:var(--main-bg-color);
    color:var(--second-txt-color);
    padding:5px;
    border-radius:3px;
    height: 30px;
    border:0;
    outline:none;
    cursor:pointer;
    line-height:1;
    transition:.3s opacity;
    font-size:var(--font-size-sm2);
}
.header-meta-user{
    margin-right:15px;
}
.header-meta-user .icon{
    width: 20px;
    height: 20px;
    margin-top: 5px;
}
.header-meta-breadcrumb{
    position:absolute;
    left:0;
    color:var(--main-txt-color)
}
.header-meta-breadcrumb .rex-breadcrumb{
    display:flex;
}
.header-meta-breadcrumb .rex-breadcrumb li{
    font-size:var(--font-size-sm2);
}
.header-meta-breadcrumb .rex-breadcrumb li:last-child{
    color:var(--third-txt-color)
}
.header-meta-breadcrumb .rex-breadcrumb li:not(:last-child):after{
    content:"/";
    display:inline-block;
    margin:0 5px;
}
.nav-lang{
    position:relative;
    text-transform:uppercase;
    background-color:var(--main-bg-color);
    color:var(--second-txt-color);
    border-radius:3px;
    padding:5px 30px 5px 15px;
    cursor:pointer;
    height:30px;
    font-size:var(--font-size-sm2);
}
.nav-lang .icon-arrow{
    transform: rotate(0deg);
    background-color: var(--second-bg-color);
    width: 12px;
    height: 12px;
    position: absolute;
    top: 10px;
    right:0;
}
.nav-lang.active .icon-arrow{
    transform: rotate(-180deg);
}
.nav-lang ul{
    opacity:0;
    position: absolute;
    top: 25px;
    background-color: black;
    width: 100%;
    left: 0;
    border-radius: 5px;
    padding: 5px 15px;
    transition:.3s;
}
.nav-lang.active ul{
    opacity: 1;
}

/*
	Typo
*/

.typo-text-lg{
    font-size:var(--font-size-lg);
}
.typo-text-md{
    font-size:var(--font-size-md);
}
.typo-text-sm{
    font-size:var(--font-size-sm);
}
.typo-text-xs,
.text p{
    font-size:var(--font-size-xs);
    line-height: 1.5;
}
.typo-text-tiny{
    font-size:var(--font-size-tiny);
    line-height: 1.3;
}
.typo-headline-h2,
.text h1,
.text h2{
    font-weight:var(--font-weight-bold);
    font-size:var(--font-size-h2);
    line-height: 1;
}
.typo-headline-h3,
.text h3{
    font-weight:var(--font-weight-bold);
    font-size:var(--font-size-h3);
    line-height: 1.3;
}
.typo-headline-h4,
.text h4{
    font-weight:var(--font-weight-bold);
    font-size:var(--font-size-h4);
    line-height: 1.3;
}
.text blockquote{
    position:relative;
    background-color:var(--brand-color);
    padding:15px;
    margin:40px 0;
    border-left:30px solid var(--main-bg-color)
}
.text blockquote:after{
    content:"";
    display:block;
    position:absolute;
    top:15px;
    left:-25px;
    width:20px;
    height:20px;
    -webkit-mask-image: url('/assets/img/icon-error.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-error.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--second-bg-color);
}
.text .image{
    margin:40px 0;
    cursor:zoom-in;
}
.text .image-style-align-center{
    margin:0 auto;
}
.text figcaption{
    margin-top:15px;
    font-style:italic;
    font-size:var(--font-size-tiny);
}
.text ul{
    margin-top:40px;
}
.text ul li{
    padding-left:20px;
    position:relative;
    font-size: var(--font-size-xs)
}
.text ul li:not(:last-child){
    padding-bottom:15px;
    margin-bottom:15px;
    border-bottom:1px solid var(--border-color-secondary)
}
.text ul li:before{
    content:"";
    display:block;
    width:12px;
    height:12px;
    position:absolute;
    top:3px;
    left:0;
    background-color:var(--main-bg-color);
    -webkit-mask-image: url('/assets/img/icon-arrow.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-arrow.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
	transform: rotate(-90deg);
}
#searchresults li:before{
    top:7px;
}
.text ol{
    margin-top:40px;
}
.text ol li{
    padding-left:20px;
    position:relative;
    counter-increment: decimal;
    font-size: var(--font-size-xs)
}
.text ol li:before{
    content: counter(decimal) ".";
    display:block;
    width:12px;
    height:12px;
    position:absolute;
    top:0px;
    left:0;
}
.text ol li:not(:last-child){
    padding-bottom:15px;
    margin-bottom:15px;
    border-bottom:1px solid var(--border-color-secondary)
}
.text h2{
    margin-bottom:30px;
}
.text h3{
    margin-bottom:15px;
}
.text h4{
    margin-bottom:25px;
}
.text .link{
    text-decoration:underline;
}

/*
	Color
*/

.color-gray{
    color:#6E6E6E;
}

/*
	Checkmark
*/

.checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #7ac142;
  fill: none;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.checkmark {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: #fff;
  stroke-miterlimit: 10;
  margin: 30px auto;
  box-shadow: inset 0px 0px 0px #7ac142;
  animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
}

.checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px #7ac142;
  }
}

/*
	vendor
*/

.uppy-Root {
    font-family: inherit;
    color:var(--main-txt-color);
}
.uppy-Dashboard-AddFiles-title,
.uppy-StatusBar-content{
    color:var(--main-txt-color);
}
.uppy-Dashboard-browse{
    color:var(--third-txt-color);
}
.uppy-Dashboard-inner{
    width:100%!important;
}

.flatpickr-calendar.inline{
    top:0;
}
.flatpickr-calendar{
    box-shadow:none;
    border:1px solid var(--border-color-primary);
}

#toast-container > .toast-error{
    transform:translate(0);
}

/*
	Helper
*/

.box{
	background-color: var(--second-bg-color);
	padding:30px;
    border-radius: 5px;
    border: 0.5px solid var(--border-color-primary);
}
/* .box h2{ */
    /* margin-bottom: 39px; */
/* } */
/* .box h3{ */
    /* margin-bottom: 25px; */
/* } */

.box-category:not(:last-child){
    padding-bottom:10px;
    margin-bottom:10px;
    border-bottom:1px solid var(--border-color-secondary);
}

.is-current > a,
.is-active > a{
    font-weight: var(--font-weight-bold);
}

.link-download{
    padding-left:20px;
    position:relative;
}
.link-download:before{
    content:"";
    display:block;
    width:12px;
    height:12px;
    position:absolute;
    top:5px;
    left:0;
    background-color:var(--main-bg-color);
    -webkit-mask-image: url('/assets/img/icon-arrow.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-arrow.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    transform: rotate(-90deg);
}

/*
	Vendpr
*/

.flatpickr-day.selected,
.flatpickr-day.selected:hover{
    background-color:var(--main-bg-color);
    border-color:var(--border-color-primary);
}

/*
	Buttons
*/

.btn{
    font-size:var(--font-size-xs);
    border-radius:0;
    transition:.3s;
    border-radius:5px;
}
.btn-primary{
	background-color:#000;
    border-color:#000;
    color:var(--second-txt-color);
}
.btn-primary:hover,
.btn-primary:not([disabled]):not(.disabled):active,
.btn-primary:not([disabled]):not(.disabled):active:focus,
.btn-primary:focus{
	background-color:var(--second-bg-color);
    border-color:var(--primary-bg-color);
    color:var(--primary-txt-color);
    font-weight:var(--font-weight-bold);
    box-shadow:none!important;
}
.btn-outline-light{
    border-color:var(--border-color-tertiary);
    color:var(--secondary-txt-color);
}
.btn-outline-primary{
    border-color:var(--border-color-primary);
    color:var(--primary-txt-color);
}
.btn-outline-primary:hover,
.btn-outline-primary:not([disabled]):not(.disabled):active,
.btn-outline-primary:not([disabled]):not(.disabled):active:focus,
.btn-outline-primary:focus{
    background-color:var(--primary-bg-color);
    border-color:var(--border-color-primary);
    color:var(--secondary-txt-color);
    font-weight:var(--font-weight-bold);
    box-shadow:none!important;
}
.btn-link{
    color:var(--primary-txt-color);
}
.btn-link:hover{
    color:var(--primary-txt-color);
}
.btn .icon{
    margin-right:5px;
}
.btn-outline-light .icon-user{
	background-color:var(--second-bg-color);
}
.btn-outline-light:hover .icon-user{
	background-color:var(--main-bg-color);
}

/*
	Icons
*/

.icon{
    transition:transform .3s;
}

.icon-user{
	display:inline-block;
    width:15px;
    height:15px;
	-webkit-mask-image: url('/assets/img/icon-user.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-user.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--main-bg-color);
}
.icon-company{
	display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
	-webkit-mask-image: url('/assets/img/icon-company.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-company.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--main-bg-color);
}
.icon-printer{
	display:inline-block;
    vertical-align:middle;
    width:20px;
    height:20px;
	-webkit-mask-image: url('/assets/img/icon-printer.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: contain;
    mask-image: url('/assets/img/icon-printer.svg');
	mask-repeat:no-repeat;
    mask-size: contain;
    background-color:var(--main-bg-color);
}
.icon-arrow{
    display:inline-block;
    vertical-align:middle;
    width:20px;
    height:20px;
    -webkit-mask-image: url('/assets/img/icon-arrow.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-arrow.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--main-bg-color);
    margin-right:15px;
	transform: rotate(-90deg);
}
.icon-question{
    display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
    -webkit-mask-image: url('/assets/img/icon-question.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-question.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--second-bg-color);
}
.icon-error{
    display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
    -webkit-mask-image: url('/assets/img/icon-error.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-error.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--second-bg-color);
    margin-bottom: -2px;
}
.icon-pdf{
    display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
    background-image: url('/assets/img/icon-pdf.svg');
    background-repeat:no-repeat;
    background-size: cover;
}
.icon-engineering{
    display:inline-block;
    vertical-align:middle;
    -webkit-mask-image: url('/assets/img/icon-engineering.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-engineering.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--main-bg-color);
}
.icon-movie{
    display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
    background-image: url('/assets/img/icon-movie.svg');
    background-repeat:no-repeat;
    background-size: cover;
}
.icon-folder{
    display:inline-block;
    vertical-align:middle;
    width:15px;
    height:15px;
    -webkit-mask-image: url('/assets/img/icon-folder.svg');
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    mask-image: url('/assets/img/icon-folder.svg');
	mask-repeat:no-repeat;
    mask-size: cover;
    background-color:var(--main-bg-color);
}

/*
	Forms
*/

.form .form-field input{
    border:0.5px solid var(--border-color-primary);
    border-radius:5px;
    width:100%;
    padding:15px 25px;
}
.form .form-group{
	padding-top:0;
    transition:.3s;
    position:relative;
}
.form .form-group.is-active{
    padding-top:30px;
}
.form .form-group label,
.form .form-check-group label{
	/* position: absolute; */
    /* top: 20px; */
    /* left: 15px; */
    transition:.3s;
    font-size:var(--font-size-xs);
}
.form .form-group.is-active label{
    top: 0;
    left: 15px;
}
.form .formcheckbox label{
	padding-left: 20px;
    position: relative;
    font-size:var(--font-size-xs);
}
.form .form-control{
	border-radius:5px;
    border-color:var(--border-color-primary);
    padding-top:15px;
    padding-bottom:15px;
}
.form select.form-control{
    padding-top:5px;
    padding-bottom:5px;
    font-size:var(--font-size-xs);
    color:var(--primary-txt-color)
}
.form .formcheckbox input{
	margin-right:5px;
    position: absolute;
    left: 0;
    top: 2px;
}
.form .form-check-group label{
    display:block;
}
.form .form-check-group .checkbox{
    display:inline-block;
    margin-right:15px;
    position:relative;
}
.form .form-check-group .checkbox input{
    position: absolute;
    z-index:-1;
}
.form .form-check-group .form-helper{
    display:inline-block;
    vertical-align:middle;
    position:relative;
    width:20px;
    height:20px;
    border:1px solid var(--border-color-primary);
    border-radius:5px;
    margin-right:5px;
}
.form .form-check-group input:checked+.form-helper:after{
    content:"✓";
    display:block;
    position:absolute;
    top:0;
    left:2px;
    font-size:15px;
}
.form .alert-danger ul{
    margin-top:0;
}
.form .alert{
    display:none;
}
.form .has-error select,
.form .has-error input,
.form .has-error textarea{
    border-color:red;
}
.control-label.has-error,
#yform-formular-files .has-error,
#yform-formular-date_appointment .has-error,
#yform-formular-time_appointment .has-error,
.formcheckbox.has-error label{
    color:red;
}
.form .btn{
    padding-top:20px;
    padding-bottom:20px;
    min-width:150px;
    margin: 30px 15px 0 0;
}
.form a{
    text-decoration:underline;
}
.form .form-submitter{
    position:fixed;
    top:0;
    left:0;
    z-index:10000;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.8);
    opacity:0;
    visibility:hidden;
    transition:opacity .3s;
}
.form .form-submitter.is-active{
    opacity:1;
    visibility:visible;
}
.form .form-submitter .container{
    position: absolute;
    width: 50%;
    top: 50%;
    left: 50%;
    background-color: #fff;
    padding: 30px;
    transform: translate(-50%,-50%);
    min-width:300px;
}
.form-submitter .text{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.form-submitter .loader{
    width: 220px;
    margin: 30px auto;
}
.form-optional{
    border: 1px solid var(--brand-color);
    border-radius:5px;
    padding:30px;
    margin-top:50px;
    margin-bottom:30px;
    position:relative;
}
.form-optional-label{
    position:absolute;
    top:-39px;
    left:-1px;
    background-color:var(--brand-color);
    padding:10px;
    border-radius:5px;
}
.form-optional-label:after{
    content:"";
    display:block;
    position:absolute;
    bottom:0;
    left: 0;
    width:100%;
    height:5px;
    background-color:var(--brand-color);
}
.form-optional-label:before{
    content:"";
    display:block;
    position:absolute;
    bottom:-5px;
    left: 0;
    width:1px;
    height:100%;
    background-color:var(--brand-color);
}
.form .is-loading{
    background-image:url('/assets/img/icon-ajax.svg');
    background-repeat:no-repeat;
    background-size:24px;
    background-position:center right 15px;
}

#yform-formular-time_appointment .radio:first-of-type{
    display:none;
}

/*
	Tags
*/

.tag{
    padding: 5px;
    border-radius: 3px;
    height: 30px;
    border: 0;
    outline: none;
    line-height: 1;
    transition: .3s opacity;
    font-size: var(--font-size-xs);
}
.tag-info{
    background-color: var(--color-info);
    color: var(--second-txt-color);
}

/*
	Mods
*/

.mod-contact .contact-info{
    margin-bottom:32px;
}

.mod-headline{
    margin-bottom:32px;
}

.mod-news-teasers .news-teasers{
	margin-top:25px
}
.mod-news-teasers .news-teaser:not(:last-child){
	margin-bottom:25px
}

.mod-search-input{
    margin-bottom:30px;
}
.mod-search-input .form{
    position:relative;
}
.mod-search-input button{
    position:absolute;
    bottom:10px;
    right:15px;
    background-color:transparent;
    border:0;
    cursor:pointer;
    outline:none!important;
}
.mod-search-results .highlightedtext span{
    font-weight:var(--font-weight-bold)
}

.mod-dracoon-categories ul > li > ul > li{
    padding-left: 30px;
    font-size: var(--font-size-xs);
    margin-top:7px;
    position:relative;
}
.mod-dracoon-categories .icon-arrow{
    width:12px;
    height:12px;
    position:absolute;
    top:3px;
    left:0;
}

.mod-dracoon-overview .dracoon-group{
    margin-top:30px
}
.mod-dracoon-overview .dracoon-file{
    margin-top:30px
}
.mod-dracoon-overview .dracoon-file .icon{
    width:25px;
    height:25px;
    margin-top: -6px;
    margin-right: 5px;
}
.mod-dracoon-overview .dracoon-file video{
    min-height:300px;
    max-width:100%;
}
.mod-dracoon-overview .dracoon-file .link-download{
    margin-top:15px;
    display:block;
}

.mod-nextarticle{
    margin-top:30px
}

.mod-grid{
    margin-top:30px
}
.mod-grid .grid-icon{
    width:50px;
    margin-bottom:20px;
}
.mod-grid .grid-text{
    font-weight: var(--font-weight-bold);
}

.mod-userdata{
    margin-bottom:30px;
}
.mod-userdata .icon{
    margin-right:10px;
}

.mod-booking h3{
    margin-bottom:50px;
}
.mod-booking .form-booking-printers{
    margin-bottom:30px;
}
.mod-booking .form-booking-printer{
    margin-bottom:10px;
    background-color: var(--third-bg-color);
    position:relative;
    border-radius:3px;
    padding:30px 30px 30px 70px;
    cursor:pointer;
    border:1px solid transparent;
    transition: border .3s
}
.mod-booking .form-booking-printer.is-active{
    border:1px solid var(--border-color-primary)
}
.mod-booking .form-booking-printer-icon{
    position:absolute;
    top:33px;
    left:30px;
}
.mod-booking .form-booking-printer-location{
    font-style:italic;
}
.mod-booking .form-booking-printer-link{
    margin-top:15px;
    display:inline-block;
    text-decoration:none;
}
.mod-booking .form-booking-hints li{
    padding:10px 0;
    border-bottom:1px solid var(--border-color-secondary);
}
.mod-booking .form-booking-hints .icon-arrow{
    width:12px;
    height:12px;
    margin-right:0;
}
.mod-booking input[name="printer"]{
    display:none;
}
.mod-booking .form-booking-date{
    margin-bottom:0;
    display: inline-block;
    vertical-align: top;
}
.mod-booking .form-booking-date .form-control.input,
.mod-booking .form-booking-date label{
    display:none;
}
.mod-booking .form-booking-date #yform-formular-date_appointment{
    margin-bottom:0;
}
.mod-booking .form-booking-timepicker{
    border:1px solid var(--border-color-primary);
    border-radius:3px;
    padding:10px;
    height:100%;
    display: inline-block;
    width: 200px;
    margin-left: 15px;
}
.mod-booking .form-booking-timepicker .radio{
    padding:5px;
    margin-top:15px;
    opacity:0.8;
    transition:.3s;
    border:1px solid var(--border-color-secondary);
    position:relative;
}
.mod-booking .form-booking-timepicker .radio.is-active{
    background-color:var(--main-bg-color);
    color:var(--second-txt-color);
    opacity:1;
}
.mod-booking .form-booking-timepicker .radio.is-disabled{
    opacity:0.2;
    cursor:initial;
}
.mod-booking .form-booking-timepicker label{
    cursor:pointer;
    margin-bottom:0;
}
.mod-booking .form-booking-timepicker .radio.is-active label{
    color:var(--second-txt-color);
}
.mod-booking .form-booking-timepicker .form-helper{
    display:none;
}
.mod-booking .form-booking-timepicker input{
    opacity: 0;
    position: absolute;
    width: 100%;
    left: 0;
    height: 100%;
    top: 0;
    cursor:pointer;
}

.mod-profile-data,
.mod-profile-security{
    margin-top:15px;
}

.mod-profile-appointments .appointment{
    margin-top:15px;
}
.mod-profile-appointments .appointment-status{
    margin-top:5px;
}

/*
	Mediaqueries
*/

@media only screen and (max-width: 1400px) {
	
    /* .main-container{ */
        /* padding:70px 30px; */
    /* } */
}

@media only screen and (max-width: 1280px) {
    
    .header-logo{
        background-color:transparent;
        width:auto;
    }
	
    .sidebar{
        transform:translate(-100%,0);
        transition:.5s;
        overflow-y:scroll;
    }
    .sidebar.active{
        transform:translate(0,0);
    }
    .sidebar-nav{
        padding-left: 0;
    }
    .sidebar-footer{
        position:unset;
        padding-left: 0;
    }
    
    .nav-meta{
		position:fixed;
        top:15px;
		right:0;
        padding:5px;
    }
    .nav-meta .button-help{
        background-color:var(--second-bg-color);
        color:var(--main-txt-color);
		opacity:1;
    }
    .nav-meta .icon-question{
        background-color:var(--main-bg-color);
    }
	.nav-meta-user .icon{
		background-color:var(--second-bg-color);
	}
    
	.nav-lang{
        position: unset;
        background-color:var(--second-bg-color);
        color:var(--main-txt-color);
        width: 70px;
	}
	.nav-lang .icon-arrow{
        background-color:var(--main-bg-color);
    }
    .nav-lang ul{
        background-color:var(--second-bg-color);
        color:var(--main-txt-color);
        width: 70px;
        right: 0;
        left:unset;
        top: 25px;
    }
    
    .meta-container{
        width: auto;
        padding: 0;
        background-color: transparent;
        position: absolute;
        z-index:40;
        top: 25px;
        left: unset;
        right: 15px;
        height:auto;
    }
    .header-meta-breadcrumb{
        display:none;
    }
    .header-meta .icon-user{
        background-color:var(--second-bg-color);
    }
    .header-meta .button-help{
        background-color:var(--second-bg-color);
        color:var(--main-txt-color);
    }
    .header-meta .icon-question{
        background-color:var(--main-bg-color);
    }
    
    .main-container{
        padding:30px 0;
        margin:0;
    }
    
    .button-mobile{
        display:block;
    }
    
    .box{
		margin-bottom:15px;
    }
    
    .mod-grid{
        margin-top:0;
    }
}

@media only screen and (min-width: 1280px) and (max-height: 800px) {
    
    .sidebar{
        overflow-y:scroll;
    }
    .sidebar-footer{
        position:unset;
    }
}

@media only screen and (max-width: 600px){
	
    .main-container {
        padding: 100px 0 30px;
    }
    
	.header-logo img{
		height:20px;
        margin-left:0;
	}
	
	body:not(.is-startpage) .mod-headline{
		display:none;
	}
    
    .header-meta .button-help{
        display:none
    }
	
    .mod-contact .wrapper,
    .mod-success .wrapper{
        padding:50px 40px;
    }
    
    .box{
        padding:15px;
		margin-bottom:15px;
    }
    
    .text blockquote{
        margin:15px 0;
    }
    .text .image{
        margin:15px 0;
    }
    
    .mod-booking .form-booking-timepicker{
        margin-left:0;
        margin-top:15px;
    }
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
    white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster */
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
