@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
    font-family: var(--primary-font);
}

:root {
  --primary-color: #10293f;
  --secondary-color: #081835;
  --primary-color-hover: #1E4363;
  --secondary-color-hover: #31baff;
  --green: #4BB543;
  --green-background: rgba(75,181,67,0.15);
  --red: #FF4E2E;
  --yellow: #FDCC0D;
  --border-color: #2470b3;
  --primary-font: "Outfit", serif;;
  --primary-background: #f4f5ff;
  --primary-background-rgba: rgba(49,186,255,0.1);
  --primary-text: #2f2f2f;
  --secondary-text: #a2a2a2;
  --border: #e7e7e7;
  --max-width: 1300px;
}
html {
  font-family: var(--primary-font);
  scroll-behavior: smooth;
}
.wrapper {
  width:92%;
  max-width:1300px;
  margin: 0 auto;
}
.hidden {
    display:none!important;
}
/* header start */
header {
  width: 92%;
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px 0;
  border-bottom:1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header-right {
  display: flex;
  align-items: center;
  gap:25px;
}
.header-right a {
  font-size:16px;
  color:var(--secondary-text);
  text-decoration: none;
  font-weight:300;
}
.header-logo {
  width:50px;
  height:50px;
}
.header-cta {
  background:var(--primary-color);
  color:white!important;
  padding:13px 18px;
  font-size:20px;
  font-weight:300;
  text-decoration: none;
}
.header-cta:hover {
  color:white!important;
}
.header-right-hover:hover, .text-hover {
  color:var(--primary-text)!important;
}
.header-bars {
  visibility: hidden;
  display: none;
}
.header-mobile {
  position: fixed;
  z-index: 200;
  top: 0;
  right: 0;
  height: calc(100vh - 30px);
  left: -100%;
  width: 90%;
  background: white;
  padding-top: 30px;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
  flex-direction: column;
  transition: 0.8s all ease;
  overflow-y: auto;
}
.header-mobile-link:last-child {
  margin-bottom: 150px;
}
.header-mobile-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header-mobile-head p {
  font-size: 19px;
  text-transform: uppercase;
  font-weight: 500;
}
.header-mobile-head i {
  font-size: 25px;
  cursor: pointer;
  padding: 10px 0 10px 10px;
}
.header-mobile-link {
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--primary-text);
  font-size: 17px;
  padding: 20px 0;
}
.header-mobile-link i {
   position: relative;
   left: 0;
   transition: 0.2s all ease;
 }
.header-mobile-link:hover {
  color: var(--secondary-color);
}
.header-mobile-link:hover> i {
  left: 2px;
  transition: 0.2s all ease;
}
/* header end */
/* dashboard start */
.dashboard-overheadline {
  font-size:18px;
  font-weight:300;
  text-transform: uppercase;
  color:var(--primary-font);
}
.dashboard-h1 {
  font-size: 40px;
  font-weight: 600;
  color: var(--primary-color);
  line-height: 50px;
  margin: 20px 0;
}
.dashboard-h2 {
  font-size: 30px;
  font-weight: 500;
  color: var(--primary-color);
  line-height: 40px;
  margin: 25px 0 15px 0;
}
.dashboard-kpi {
  display: flex;
  flex-wrap:wrap;
  gap:20px;
}
.kpi-item {
  display: flex;
  padding:15px;
  border-radius:9px;
  border:2px solid var(--border);
}
.kpi-item span {
  color:rgba(0,0,0,0.5);
  font-size:14px;
  font-weight:400;
}
.kpi-item p {
  color:var(--primary-color);
  font-size:25px;
  font-weight:500;
}
.kpi-item {
  display: flex;
  flex-direction: column;
  gap:10px;
}
.qa-flex {
  display: flex;
  row-gap:10px;
  padding: 0 0 15px 0;
  flex-wrap:wrap;
  column-gap:20px;
}
.qa-flex a {
  padding:8px 10px;
  border-radius:10px;
  border:2px solid var(--border);
  color:var(--primary-color);
  text-decoration: none;
}
.qa-flex a:hover {
  background:var(--border);
}
.qa-flex i {
  margin-right:5px;
}
.leads-flex {
  padding:10px;
  border-radius:7px;
  border:2px solid var(--border);
  display: flex;
  flex-direction: column;
}
.leads-filter {
  display: flex;
  flex-direction: column;
}
.leads-filter-head {
  display: flex;
  justify-content: space-between;
}
.leads-filter-checkboxes {
  display: flex;
  margin:10px 0;
  row-gap:10px;
  column-gap:20px;
  flex-wrap:wrap;
}
.leads-filter-left-box {
  display: flex;
  align-items: center;
  gap:8px;
  flex-wrap:wrap;
}
.leads-filter-title {
  font-size:12px;
  font-weight:500;
  color:rgba(0,0,0,0.7);
  text-transform: uppercase;
  margin-bottom:8px;
  display:block;
}
.filter-formular {
  display: flex;
  gap:10px;
  align-items: center;
  flex-wrap:wrap;
}
.leads-filter-left-box select, .leads-filter-left-box input, .filter-formular select, .filter-formular input, .leads-max {
  outline: none;
  margin: 0;
  padding:1px;
  border: 2px solid var(--border);
  border-radius:4px;
  background:rgba(0,0,0,0.05);
  font-family: var(--primary-font);
  font-size:14px;
  font-weight:300;
  color:var(--primary-color);
  width: 150px;
}
.leads-filter-btn {
  outline:0;
  border:0;
  border-radius:4px;
  background:var(--primary-color);
  color:white;
  padding:4px 10px;
  font-family: var(--primary-font);
  cursor:pointer;
}
.leads-filter-zurucksetzen {
  font-size:12px;
  color:rgba(0,0,0,0.5);
  text-decoration: none;
}
.leads-max {
  margin-top:10px;
}
.leads-filter-right {
  border:2px solid var(--border);
  border-radius:4px;
  background: rgba(0,0,0,0.05);
  display: flex;
  align-items: center;
  height:fit-content;
}
.leads-filter-right input {
  outline: none;
    margin: 0;
    font-family: var(--primary-font);
    font-size:14px;
    font-weight:300;
    color:var(--primary-color);
    width: 100%;
    background:transparent;
    border:0;
}
.leads-filter-right i {
  font-size:16px;
  padding:7px;
  cursor: pointer;
}
.leads-head {
  padding: 10px;
  border-top: 2px solid var(--border);
  border-bottom:2px solid var(--border);
  width:calc(100% - 20px);
}
.leads-grid {
  display:grid;
  grid-template-columns: 0.5fr 1fr 0.6fr 0.7fr 0.9fr 0.8fr 1fr;
}
.leads-table {
  display: flex;
  flex-direction: column;
}
.leads-item:nth-child(odd) {
    background: rgba(0,0,0,0.04);
}
.leads-item:hover {
  background: rgba(0,0,0,0.06);
}
.leads-item {
  padding:10px;
  border-bottom:1px solid var(--border);
  align-items: center;
}
.leads-item-datum {
  font-size:15px;
  font-weight:300;
  color: var(--primary-color);
}
.leads-item-lead {
  display: flex;
  flex-direction: column;
  color:var(--primary-color);
  gap:8px;
}
.leads-item-lead span {
  font-size:16px;
  font-weight:500;
}
.leads-item-lead p {
  font-size:14px;
}
.leads-item-status {
  font-family: var(--primary-font);
  padding:0 20px 0 8px;
  border-radius:7px;
  border:2px solid var(--border);
  font-size:13px;
  font-weight:300;
  background:transparent;
  height:25px;
  width:90%;
}
.leads-item-edit {
  display: flex;
  flex-wrap: wrap;
  gap:6px;
}
.leads-item-edit p, .leads-item-edit a {
  color:var(--primary-color);
  padding:5px;
  border-radius:6px;
  border:2px solid var(--border);
  font-size:13px;
  height:fit-content;
  cursor:pointer;
  text-decoration: none;
}
.leads-item-edit p:hover, .leads-item-edit a:hover {
  background:var(--primary-color);
  color:white;
}
.leads-item-edit p>i, .leads-item-edit a>i {
  margin-right:5px;
}
.lead-delete {
  text-decoration: none;
  position: relative;
  top:-3px;
}
.lead-delete i {
  margin-right:0!important;
}
.lead-delete {
  top:0!important;
}
.delete-lead-h1 {
    font-size:20px;
    line-height:25px;
    color:white;
    text-align:center;
    margin: 10px 0 5px 0;
}
/*
.lead-delete i {
  padding:8px;
  border-radius:50%;
  font-size:15px;
  color:rgba(0,0,0,0.5);
  cursor:pointer;
}
.lead-delete i:hover {
  padding:8px;
  color:red;
  background:rgba(255,0,0,0.15);
}*/
.leads-item-edit-icon {
   margin-right:0!important;
   font-size:12px;
 }
/*
.leads-item-edit-icon {
   padding:8px 10px;
   border-radius:50%;
   font-size:15px;
   color:rgba(0,0,0,0.5);
   cursor:pointer;
 }
.leads-item-edit-icon:hover {
   color:var(--primary-color);
   background:rgba(16,41,63,0.2);
 }*/
.terminwahl {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  grid-template-columns: 1fr 25px;
  border:2px solid var(--border);
  border-radius:7px;
  width:calc(100% - 25px);
  height:25px;
  position: relative;
}
.terminwahl i {
  height:25px;
  width: 25px;
  font-size:20px;
  display: flex;
  justify-content: center;
  align-items: center;
  color:var(--green);
  text-align: center;
  cursor:pointer;
  border-radius:6px;
}
.terminwahl i:hover {
  background:rgba(75,181,67,0.2);
}
.terminwahl input {
  font-family: var(--primary-font);
  left:5px;
  border:0;
  position: absolute;
  font-size:13px;
  font-weight:300;
  background:transparent;
  width:calc(100% - 35px);
}
/* sub: lead anlegen start */
.formular-flex {
  width:100%;
  display: flex;
  flex-direction: column;
  gap:15px;
}
.formular-four {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap:15px;
}
.formular-three {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap:15px;
}
.formular-two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap:15px;
}
.formular-item {
  display: flex;
  flex-direction: column;
  gap:6px;
}
.formular-item p, .formular-checkbox p {
  font-size: 16px;
  font-weight:400;
  color:var(--primary-color);
}
.formular-item span {
  color: red;
  font-style: italic;
}
.formular-item input {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 2px solid var(--border);
  border-radius:4px;
  background:rgba(0,0,0,0.05);
  font-family: var(--primary-font);
  font-size:16px;
  font-weight:300;
  color:var(--primary-color);
  width: calc(100% - 24px);
}
.formular-dropdown select {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 2px solid var(--border);
  border-radius:4px;
  background:rgba(0,0,0,0.05);
  font-family: var(--primary-font);
  font-size:16px;
  font-weight:300;
  color:var(--primary-color);
  width: 100%;
}
.vertrag-img {
    width:100%;
    margin:15px 0;
    max-height:400px;
}
.vertrag-h3 {
    font-size:17px;
    font-weight:500;
    color:var(--primary-color);
}
.yellow-icon {
    background:var(--yellow);
}
.orange-icon {
    background: #ff9576; /* Orange */
}
.red-icon {
    background:var(--red);
}
.input-gueltig {
    border: 2px solid var(--green)!important;
}
.input-disabled {
    opacity:0.4;
}
.formular-notizen textarea {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 2px solid var(--border);
  border-radius:4px;
  background:rgba(0,0,0,0.05);
  font-family: var(--primary-font);
  font-size:16px;
  line-height:20px;
  font-weight:300;
  color:var(--primary-color);
  width: calc(100% - 24px);
  height:50px;
  resize: vertical;
  max-height:200px;
  min-height:50px;
}
.formular-checkbox {
  display: flex;
  align-items: center;
}
.formular-checkbox input {
  margin-right:5px;
}
.formular-checkbox input[type="checkbox"], .formular-checkbox input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #999;
  border-radius: 5px;
  background-color: #fff;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}
.formular-checkbox input[type="checkbox"]:hover, .formular-checkbox input[type="radio"]:hover {
  border-color: var(--border-color);
}
.formular-checkbox input[type="checkbox"]:checked::after, .formular-checkbox input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  top:-1px;
  left: 4px;
  width: 6px;
  height: 12px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  background-color: transparent;
}
.formular-checkbox input[type="checkbox"]:checked, .formular-checkbox input[type="radio"]:checked {
  background-color: var(--border-color); /* example primary color */
  border-color: var(--border-color);
}
.formular-checkbox input[type="checkbox"]::after, .formular-checkbox input[type="radio"]::after {
  transition: all 0.2s ease-in-out;
}
#close-modal {
  position: absolute;
  top:5px;
  right:10px;
  padding:10px;
  font-size:20px;
  color:rgba(0,0,0,0.4);
  cursor: pointer;
}
#firma, #terminfeld {
  display: none;
  visibility: hidden;
}
.formular-button {
  outline: 0;
  border: 0;
  text-align: center;
  width:100%;
  padding: 10px 0;
  background: var(--border-color);
  color:white;
  font-size:18px;
  letter-spacing: 1px;
  font-weight:300;
  font-family: var(--primary-font);
  margin-top:20px;
  border-radius:6px;
  cursor: pointer;
}
.ueber-mich-modal {
    padding:15px 0 8px 0;
    font-size:17px;
    font-weight:600;
    text-decoration:underline;
}
.success-notification {
  padding:10px;
  border-radius:8px;
  border:1px solid var(--green);
  background: var(--green-background);
  font-size:18px;
  font-weight:400;
  background: rgba(75,181,67.0.2);
  color:var(--green);
  margin-top:20px;
}
.success-notification i {
  margin-right: 5px;
}
/* lead anlegen end */
/* bewerbung layout start */
.bewerbung-item {
  display: flex;
  flex-direction: column;
  gap:6px;
  width:100%;
}
.bewerbung-item p {
  font-size: 14px;
  font-weight:400;
  color:var(--border);
}
.bewerbung-item span {
  color: red;
  font-style: italic;
}
.bewerbung-item input {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius:4px;
  background:rgba(0,0,0,0.2);
  font-family: var(--primary-font);
  font-size:16px;
  font-weight:300;
  color:var(--border);
  width: calc(100% - 24px);
  height:22px;
}
.bewerbung-item select {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius:4px;
  background:rgba(0,0,0,0.2);
  font-family: var(--primary-font);
  font-size:16px;
  font-weight:300;
  color:var(--border);
  width: 100%;
  height:44px;
}
.bewerbung-item select option {
    background:var(--primary-color);
}
.bewerbung-item textarea {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius:4px;
  background:rgba(0,0,0,0.2);
  font-family: var(--primary-font);
  font-size:16px;
  line-height:20px;
  font-weight:300;
  color:var(--border);
  width: calc(100% - 24px);
  height:80px;
  resize: vertical;
  max-height:130px;
  min-height:80px;
}
.bewerbung-two {
    width:100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}
.bewerbung-refer {
    margin-top:25px;
    font-size:16px;
    font-weight:300;
    color:var(--border);
    text-align:center;
}
.bewerber-icon-small {
    font-size:11px;
    margin-left:5px;
}
/* bewerbung layout end */
/* lead zuweisen seite start */
.tel-blurred {
    filter:blur(6px);
    user-select: none;
    will-change: filter;
    pointer-events:none;
}
.lz-head {
    display: flex;
    flex-wrap:wrap;
    gap:15px;
}
.lz-flex {
    display:flex;
    flex-direction:column;
    row-gap:10px;
    margin: 30px 0 20px 0;
}
.lz-item {
    gap: 10px;
}
.lz-head button {
    outline: none;
    padding: 10px;
    margin: 22px 0 0 0;
    border: 0;
    border-radius: 4px;
    background: var(--red);
    font-family: var(--primary-font);
    font-size: 18px;
    letter-spacing:1px;
    font-weight: 300;
    color: white;
    font-weight:400;
    width: 150px;
    height:46px;
    text-decoration:none;
    cursor:pointer;
}
/* lead zuweisen seite end */
/* team seite layout start */
.team {
    display: flex;
    flex-direction:column;
    padding:22px;
    border:1px solid var(--border);
    border-radius:8px;
    margin-bottom:30px;
}
.team-name {
    font-size:30px;
    font-weight:600;
    margin-bottom:25px;
    color:var(--primary-color);
}
.team-user-flex {
    display:grid;
    grid-template-columns: repeat(auto-fill, 16.6%);
    row-gap:25px;
}
.team-user {
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align: center;
}
.team-user p {
    font-size:16px;
    font-weight:500;
    margin-top:8px;
    color:var(--primary-color);
}
.team-user span {
    font-size:13px;
    font-weight:400;
    margin-top:3px;
    color:rgba(0,0,0,0.45);
}
.team-user-image-container {
    position: relative;
    width: 40px;
    height: 40px;
}

.delete-overlay {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 100%;
    height: 100%;
    background: rgba(255, 0, 0, 0.6); /* Roter Schleier */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    cursor: pointer;
    color: white;
    font-size: 14px;
}

.team-user-image-container:hover .delete-overlay {
    opacity: 1;
}
/* team seite layout end */
/* dokument hochladne page start */
#file-upload-form {
  display: flex;
  flex-direction: column;
  gap:10px;
  width:100%;
  max-width:300px;
}
.formular-row {
  width:100%;
  display: flex;
  flex-direction: column;
  gap:10px;
}
.formular-row input {
  outline: none;
  border:2px solid var(--border);
  padding:8px 10px;
  font-family:var(--primary-font);
}
.file-card h3 {
  font-size:20px;
  font-weight:600;
  color:var(--primary-color);
  margin-bottom:10px;
}
#uploaded-files-list li {
  list-style: none;
  margin: 6px 0;
}
#uploaded-files-list li a {
  text-decoration: none;
  color:var(--primary-color);
}
/* dokument hochladne page end */
/* event page css start */
.event-flex {
    display:flex;
    flex-direction:column;
    gap:15px;
    min-height:280px;
}
.event {
    padding:15px;
    border-radius:8px;
    border:2px solid var(--border);
}
.event-overheadline {
    font-size:12px;
    text-transform:uppercase;
    color:var(--secondary-text);
}
.event-headline {
    color:var(--primary-color);
    font-size:23px;
    line-height:26px;
    margin: 8px 0 12px 0;
    font-weight:600;
}
.event-description {
    color:var(--primary-color);
    font-size: 16px;
    line-height:20px;
    margin: 7px 0 15px 0;
}
.event-time {
    font-size:15px;
    color:var(--primary-color);
}
.event-location {
    font-size:15px;
    margin-top:8px;
}
.event-actions {
    display: grid;
    grid-template-columns:1fr;
    gap:15px;
    margin-top:15px;
}
.event-actions a {
    text-decoration: none;
    border-radius:7px;
    display: flex;
    align-items: center;
    justify-content: center;
    height:30px;
    color:white;
}
.event-actions a:nth-child(1) {
    background: var(--primary-color);
}
.event-actions a:nth-child(2) {
    background: var(--yellow);
}
.event-actions a:nth-child(3) {
    background: var(--red);
}
.yellow-button {
    background:var(--yellow)!important;
}
.green-button {
    background:var(--green)!important;
}
/* event page css end */
/* mitarbeiter start */
.ma-flex {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap:15px;
}
.ma-box {
  padding:15px;
  border-radius:7px;
  border:2px solid var(--border);
  display: flex;
  flex-direction: column;
  position: relative;
  text-decoration: none;
}
.ma-box-overheadline {
  font-size:11px;
  font-weight:500;
  color:rgba(0,0,0,0.6);
  text-transform: uppercase;
  margin-bottom:8px;
}
.ma-box-name {
  font-size:18px;
  font-weight:600;
  margin-bottom:12px;
  color:var(--primary-color);
}
.ma-box-tel, .ma-box-iban {
  font-size:14px;
  font-weight:400;
  color: var(--primary-color);
}
.ma-box-tel i, .ma-box-iban i {
  margin-right:5px;
}
.ma-box .ma-box-i {
    opacity: 0;
    transition: opacity 0.2s ease; /
}
.ma-box:hover .ma-box-i {
    opacity: 1;
}

.ma-box .ma-box-i {
    position: absolute;
    top: 5px;
    right: 7px;
    font-size: 13px;
    color:rgba(0,0,0,0.5);
    padding:8px 8px;
    background:rgba(0,0,0,0.05);
    border-radius:50%;
}
.ma-box-iban {
  margin-top:10px;
}
/* MA end */
/* qc start */
.qc {
  width:100%;
  border-radius:8px;
  border:2px solid var(--border);
  height:70px;
  margin-bottom:30px;
  overflow:hidden;
}
.qc-open {
  min-height:40px;
  height:fit-content;
}
.qc-headline {
  height:30px;
  width:calc(100% - 40px);
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor:pointer;
  user-select: none;
}
.qc-headline i {
  color: rgba(0,0,0,0.5);
  font-size:25px;
}
.qc-headline:hover, .qc-active {
  background:rgba(0,0,0,0.05);
}
.qc-headline p {
  font-size:25px;
  font-weight:500;
  line-height:40px;
  color:var(--primary-color);
}
.qc-wrapper {
  padding:20px;
  width:100%;
}
.qc-question {
  font-size:18px;
  font-weight:400;
  color:var(--primary-color);
  margin-bottom:15px;
  margin-top:30px;
}
.qc-checkboxes-horizontal {
  display: flex;
  gap:20px;
  flex-wrap: wrap;
}
.qc-checkboxes-horizontal p {
  font-size:17px;
  position: relative;
  bottom:1px;
}
.qc-minmax {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width:calc(100% - 40px);
  margin-bottom:12px;
}
.qc-minmax p {
  font-size:15px;
  font-weight:400;
  color:var(--primary-color);
}
.qc-minmax-right {
  display: flex;
  align-items: center;
  gap:30px;
}
.qc-minmax-right-element {
  display: flex;
  align-items: center;
  gap:5px;
}
.qc-minmax-right-element span {
  font-size:15px;
  font-weight:300;
}
.qc-minmax-right-element input {
  outline: none;
    padding: 10px;
    margin: 0;
    border: 2px solid var(--border);
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.05);
    font-family: var(--primary-font);
    font-size: 16px;
    font-weight: 300;
    color: var(--primary-color);
    width: 60px;
}
.qc-table {
  width: calc(100% - 40px);
  border-collapse: collapse;
  font-family: Arial, sans-serif;
  font-family:var(--primary-font);
}
.qc-table th, .qc-table td {
  border: 1px solid #ccc;
  padding: 10px 5px;
  text-align: center;
  font-size:15px;
  font-weight:400;
}
.qc-table td:first-child {
  text-align: left;
  font-weight: bold;
  color:var(--primary-color);
  font-family:var(--primary-font);
}
.qc-table th {
  background-color: var(--primary-color);
  color: white;
}
.qc-table td input[type="radio"] {
  display: block;
  margin: 0 auto;
}
.qc-table th:not(:first-child),
.qc-table td:not(:first-child) {
    width: 80px;
    min-width: 80px;
}
.qc-table-short th:not(:first-child),
.qc-table-short td:not(:first-child) {
  max-width:100px;
}
.qc-table th:first-child,
.qc-table td:first-child {
    width: auto;
}
.qc-table-short th:first-child,
.qc-table-short td:first-child {
  width:100px;
}
.qc-table input[type=text], .qc-table input[type=number] {
  border:0;
  outline:0;
  background:transparent;
  font-family:var(--primary-font);
}
.qc-table select, .qc-table input[type=date] {
  outline: none;
  padding: 3px 10px;
  margin: 0;
  border: 2px solid var(--border);
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.05);
  font-family: var(--primary-font);
  font-size: 16px;
  font-weight: 300;
  color: var(--primary-color);
  width: 100%;
}
.qc-table input[type=date] {
  width:calc(100% - 30px);
}
/* Fügen Sie dies zu Ihrer stylesheet.css hinzu */

.qc-grid {
    display: grid;
    grid-template-columns: 0.5fr 1.5fr 1fr 1fr 1fr; /* 5 Spalten */
    gap: 10px; /* Optional, um den Abstand zwischen den Spalten zu steuern */
    align-items: center;
    width:calc(100% - 40px);
}
.qc-unterschrift {
  padding:8px 10px;
  border-radius:7px;
  border:2px solid var(--border);
  color:var(--primary-color);
  font-size:16px;
  text-decoration: none;
}
.qc-unterschrift i {
  margin-right: 5px;
}
.qc-unterschrift:hover {
  background:var(--primary-color);
  border:2px solid var(--primary-color);
  color:White;
}

/* Anpassung für mobile Geräte, falls die Grid-Darstellung auf kleinen Bildschirmen Probleme macht */

.qc-textarea {
  outline: none;
    padding: 10px;
    margin: 0;
    border: 2px solid var(--border);
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.05);
    font-family: var(--primary-font);
    font-size: 16px;
    line-height: 20px;
    font-weight: 300;
    color: var(--primary-color);
    width: calc(100% - 64px);
    height: 50px;
    resize: vertical;
    max-height: 200px;
    min-height: 50px;
}
.qc-submit {
  width:calc(100% - 44px);
  border:2px solid var(--yellow);
  background: rgba(253,204,13,0.2);
  height:40px;
  margin-top:30px;
  border-radius:8px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size:16px;
  color:var(--primary-color);
  font-weight:400;
  letter-spacing: 1px;
  cursor:pointer;
}
.qc-submit-green {
  background: var(--green)!important;
  border:2px solid var(--green)!important;
}
.qc-submit:hover {
  background:var(--yellow);
}
.qc-complete {
  background: rgba(75,181,67,0.2)!important;
}
.qc-complete p {
  color:var(--green)!important;
}
.qc-complete i {
  color:var(--green)!important;
}
.qc-complete-border {
  border:2px solid var(--green);
}
.minmax-text-bigger {
  font-size:17px!important;
}
#add-person {
  margin-top:10px;
  padding:7px 10px;
  border-radius:5px;
  border: 2px solid var(--border);
  color:rgba(0,0,0,0.3);
  cursor:pointer;
  display:inline-block;
}
#add-person i {
  margin-right:5px;
}
#add-person:hover {
  color:white;
  background:var(--primary-color);
  border:2px solid var(--primary-color)
}
.customer-search-headline {
         font-size:16px;
         font-weight:400;
         padding-bottom:8px;
     }
.searchable-dropdown {
    position: relative;
    width: 100%;
}
.form-group {
    padding:25px 0 7px 0;
    display:inline-grid;
}
.form-control {
    outline: none;
    padding: 3px 10px;
    margin: 0;
    border: 2px solid var(--border);
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.05);
    font-family: var(--primary-font);
    font-size: 16px;
    font-weight: 300;
    color: var(--primary-color);
}
/* Die schwebende Liste */
.dropdown-results-list {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1000;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 0 0 5px 5px;
    max-height: 250px;
    overflow-y: auto;
    margin: 0;
    padding: 0;
    list-style: none;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

/* Einzelne Listeneinträge */
.dropdown-results-list li {
    padding: 10px 15px;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.2s;
}

.dropdown-results-list li:hover {
    background-color: #f8f9fa;
    color: #007bff;
}

.dropdown-results-list li.no-selection {
    font-style: italic;
    color: #6c757d;
}

/* Wenn keine Ergebnisse gefunden werden */
.no-results-found {
    padding: 10px 15px;
    color: #dc3545;
}
/* qc unterschrift seite  start */
.ek {
  padding:40px;
  border:1px solid #333;
  box-shadow: rgba(100, 100, 111, 0.15) 0px 7px 29px 0px;
  max-width:800px;
}
.ek-headline {
  font-size:30px;
  font-weight:600;
  margin-bottom:30px;
}
.ek-text {
  margin: 15px 0;
  line-height:20px;
  font-weight:400;
  font-size:0.969em;
  text-align: justify;
}
.ek-ul {
  list-style: inside;
  margin: 25px 0;
}
.ek-ul li {
  margin: 6px 0;
}
.ek-section-1 {
  display: grid;
  grid-template-columns: 160px 1fr;
  grid-row-gap: 8px;
  width:100%;
  max-width:500px;
  margin-bottom:25px;
}
.ek-section-1 p {
  font-size:16px;
  font-weight:400;
}
.ek-section-1 span {
  font-size:16px;
  font-weight:600;
}
.ek-fields {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top:100px;
}
.ek-field-box {
  display: flex;
  flex-direction: column;
  gap:10px;
  width:100%;
  max-width:300px;
}
.ek-field-box span {
  font-size:18px;
  font-weight:400;
}
.ek-field-box p {
  width:100%;
  border-top:1px solid black;
  padding-top:8px;
  font-size:14px;
  font-weight:400;
}
.signature-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.signature-container canvas {
    border: 1px solid #000;
    background-color: #fff;
}
.signature-container button {
  width:100%;
  border:2px solid var(--border);
  outline:0;
    margin-top: 5px;
    padding: 5px 10px;
    cursor: pointer;
}
.ek-erstellen {
  border
}
.ek-erstellen {
  width:100%;
  border:2px solid var(--yellow);
  background: rgba(253,204,13,0.2);
  height:40px;
  margin-top:50px;
  border-radius:8px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size:16px;
  color:var(--primary-color);
  font-weight:400;
  letter-spacing: 1px;
  cursor:pointer;
}
.ek-erstellen i {
  margin-right:5px;
}
.ek-erstellen:hover {
  background:var(--yellow);
}
.ek-loading {
  width:100%;
  border:2px solid var(--border);
  background: var(--border);
}
@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes spin {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}
.ek-loading i {
    animation: spin 1s linear infinite;
    -webkit-animation: spin 1s linear infinite; /* Webkit-Browser-Präfix */
}
.ek-loading:hover {
  border:2px solid var(--border)!important;
  background: var(--border)!important;
}
/* qc unterschrift seite  end */
.dashboard-success, .dashboard-error {
  padding:10px;
  width:calc(100% - 22px);
  font-weight:500;
  border-radius:6px;
  margin-bottom:20px;
}
.dashboard-success {
  border:1px solid var(--green);
  background:rgba(75,181,67,0.1);
  color:var(--green);
}
.dashboard-error {
  border:1px solid var(--red);
  background:rgba(255,78,46,0.1);
  color:var(--red);
}
@keyframes disappear {
  0% {
    opacity: 1;
  }
  100% {
    opacity:0;
  }
}
.message-disappear {
  animation: disappear 1s ease forwards;
}
/* qc end */
.image-600 {
  max-width:600px;
  max-height:600px;
  width:100%;
}
#imageModal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    display: none;
}
#modalOverlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1;
}
#modalContent {
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    position: relative;
}
#enlargedImage {
    max-width: 90vw;
    max-height: 90vh;
  }
.modal {
  display: none;
  visibility: hidden;
  position: fixed;
  top:0;
  left:0;
  bottom:0;
  right:0;
  height:100vh;
  width:100%;
  backdrop-filter: blur(2px);
  background-color:rgba(0,0,0,0.1);
  align-items: center;
  justify-content: center;
  overflow-y: auto;
}
.modal-box {
  padding:20px;
  border-radius:8px;
  border:2px solid var(--border);
  background:white;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width:1000px;
  max-height: 90vh;
  overflow-y: auto;
  margin: 20px 0;
  position: relative;
}
.modal-logo {
  margin: 5px 0 15px 0;
  width:40px;
  height:40px;
}
.modal-headline {
  font-size:30px;
  color:var(--primary-color);
  margin-bottom:30px;
  text-align: center;
  font-weight:500;
}
.modal-headline i {
  margin-right:6px;
  font-size:26px;
}
/* modal element end */
/* dashboard end */
.recht-text {
  line-height:23px;
}
.recht-ol {
  list-style: decimal inside none;
}
.recht-ol>li {
  font-size:25px;
  font-weight:500;
  margin-bottom:20px;
  margin-top:35px;
}
.recht-ol ul li {
  font-size:16px;
  font-weight:400;
  margin:0;
  line-height:23px;
}
.recht-ol ol>li {
  font-size:19px;
  font-weight:500;
  margin-bottom:15px;
  margin-top:25px;
}
/* login page start */
.login-main {
  width:100%;
  height:100vh;
  min-height:400px;
  display: flex;
  justify-content: center;
  align-items:center;
}
.login-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--primary-color);
  padding: 30px;
  border-radius:8px;
  width:280px;
}
.login-box img {
  width:80px;
  height:80px;
}
.login-form-item {
  display: flex;
  flex-direction: column;
  gap:7px;
  width:100%;
  margin-top:10px;
}
.login-form-item p {
  font-size: 14px;
  font-weight:300;
  color:white;
}
.login-form-item span {
  color: red;
  font-style: italic;
}
.login-form-item input {
  outline: none;
  padding: 10px;
  margin: 0;
  border: 0;
  border-radius:4px;
  background:white;
  font-family: var(--primary-font);
  font-size:16px;
  font-weight:300;
}
.login-box button {
  outline: 0;
  border: 0;
  text-align: center;
  width:100%;
  padding: 10px 0;
  background: var(--border-color);
  color:white;
  font-size:18px;
  letter-spacing: 1px;
  font-weight:300;
  font-family: var(--primary-font);
  margin-top:20px;
  border-radius:6px;
  cursor: pointer;
}
.red-background {
  background: red!important;
}
.error-message {
  color:red;
  margin: 10px 0 0 0;
  font-size:14px;
  text-align: left;
  width:100%;
}
/* login page end */
.link-shared, .link-shared:hover {
    border:2px solid var(--green)!important;
    background:var(--green-background)!important;
    color:var(--green)!important;
}
/* footer code begins */
footer {
  background: var(--primary-color);
  border-top: 1px solid var(--border);
  width: 100%;
  margin-top: 40px;
}
.footer-wrap {
  width: calc(100% - 60px);
  padding: 0 30px;
  margin: 0 auto;
  max-width: var(--max-width);
  padding-top: 80px;
  display: flex;
}
.footer-column {
  width: 33.33%;
}
.footer-column-one {
  display: flex;
  flex-direction: column;
}
.footer-column-img {
  width: 50px;
  height: 50px;
  margin-bottom: 20px;
}
.footer-column-p {
  color: white;
}
.footer-column p {
  font-size: 17px;
  margin: 20px 0 8px 0;
  line-height: 24px;
}
.footer-column-info {
  display: inline-block;
  line-height: 24px;
  font-weight:200;
  width: calc(100% - 50px);
  color: white;
  font-size:15px;
}
.footer-column ul {
  list-style: none;
}
.footer-column ul li {
  margin-top: 20px;
}
.footer-column ul li a {
  text-decoration: none;
  color: var(--secondary-text);
  font-weight:300;
}
.footer-sm-icons {
  display: flex;
  margin-top: 20px;
}
.footer-sm-icons img {
  width: 22px;
  height: 22px;
  margin-right: 8px;
  filter: invert(10%) sepia(34%) saturate(13%) hue-rotate(325deg) brightness(95%) contrast(79%);
}
.footer-support-email {
  margin-top: 20px;
  display: inline-block;
  text-decoration: none;
  color: var(--primary-text);
}
.footer-support-email i {
  font-size: 14px;
  margin-right: 3px;
}
.footer-copyright {
  padding: 15px 0;
  width: 100%;
  text-align: center;
  color: var(--secondary-text);
  font-size: 14px;
  margin-top:50px;
}
.footer-column-subtitle {
  color:white;
}
.footer-column-description {
  font-size:14px;
  font-weight:300;
  color:var(--secondary-text);
  line-height:22px;
}
/* footer end */
@media screen and (max-width:410px) {
    .bewerbung-two {
    grid-template-columns: 1fr;
}
}
@media screen and (min-width:450px) and (max-width:750px) {
    .event-actions {
        display:flex!important;
        flex-wrap: wrap;
}
.event-actions a:nth-child(1), .event-actions a:nth-child(2) {
    flex-basis: calc(50% - 8px); 
    flex-grow: 0;
}
.event-actions a:nth-child(3) {
    flex-basis: 100%;
}
}
@media screen and (max-width:550px) {
    .dashboard-h1 {
        font-size:30px;
        margin: 15px 0 5px 0;
    }
    .dashboard-h2 {
        font-size:24px;
        margin: 10px 0 12px 0;
    }
    .dashboard-kpi {
        gap:10px;
    }
    .kpi-item {
        padding: 10px;
        border-radius:7px;
    }
    .kpi-item span {
        font-size:12px;
    }
    .kpi-item p {
        font-size:20px;
    }
}
@media screen and (max-width:500px) {
  .formular-three,.formular-two {
    grid-template-columns:1fr;
  }
  .formular-four {
      grid-template-columns: 1fr!important;
  }
}
@media screen and (min-width:451px) and (max-width:650px) {
  .formular-three {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (max-width: 960px) {
    .footer-wrap {
        flex-direction: column;
    }
    .footer-column {
        width: 100%;
        margin-bottom: 25px;
    }
    .header-right {
      display: none;
      visibility: hidden;
    }
    .header-bars {
      display: block;
      visibility: visible;
      font-size: 25px;
      padding: 10px;
    }
    .header-right-hover {
      display:none;
      visibility: hidden;
    }
    .leads-filter-head {
        flex-direction:column-reverse;
        gap:15px;
    }
    .leads-filter-right {
        
    }
}
@media only screen and (min-width: 751px) {
  .footer-column-one {
    margin-bottom: 30px;
  }
  .event-actions {
    grid-template-columns:1fr 1fr 1fr;
}
}
@media screen and (max-width: 520px) {
  .ma-flex {
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 521px) and (max-width: 750px) {
  .ma-flex {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 751px) and (max-width: 950px) {
  .ma-flex {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 900px) {
    .qc-grid {
        grid-template-columns: 1fr; /* Alle Spalten untereinander stapeln */
    }
    .formular-four {
        grid-template-columns: 1fr 1fr;
    }
    .ma-box .ma-box-i {
        opacity:1;
        padding:7px;
        font-size:12px;
    }
}
@media screen and (max-width:1020px) {
    .leads-grid {
        grid-template-columns: 1fr; /* Alle Spalten untereinander stapeln */
    }
    .leads-grid {
        gap:10px;
    }
    .leads-head.qc-grid, .leads-head.leads-grid {
        display: none; /* Header bei kleinen Geräten ausblenden */
    }
    .leads-item-status {
        width:100%;
    }
    .leads-item {
        width:calc(100% - 20px)!important;
    }
}
