* {
 margin: 0;
 padding: 0;
}

@fontface {
 font-family: 'NicoStyle01';
 src: url('/fileadmin/ASP/fonts/DIN_Condensed_Bold.ttf') format("truetype");
}

@fontface {
 font-family: 'NicoStyle02';
 src: url('/fileadmin/ASP/fonts/DIN_Condensed_Bold.ttf') format('truetype');
}

body {
 font-family: 'NicoStyle01', sans-serif;
 background: #f3f3f3 !important;
}

.background-image {
 position: fixed;
 z-index: -10;
 left: 0;
 top: 0;
 width: 100vw;
 height: 100vh;
 background: url('/fileadmin/ASP/images/background-image.jpg') center/cover no-repeat;
}

.main-section {
 min-height: calc(100vh - 8.1rem);
}

.bg-blue {
 background-color: #112E7C !important;
}

.text-blue {
 color: #112E7C !important;
}

.btn-blue {
 background-color: #112E7C !important;
 color: #f3f3f3 !important;
 border: none !important;
}
/*
.navbar-collapse {
 padding: 0 0.9rem 0.9rem 0.9rem;
}

.navbar-collapse {
 padding: 0 1rem 1rem 1rem;
 background: #fff;
 position: fixed;
 margin: 0 0 0 1vw;
 z-index: 10000;
}

.navbar-collapse .nav-item {
 border-bottom: 1px solid #000000;
 padding: 0.25rem 1rem
}

.navbar-collapse .nav-item-heading {
 padding: 0.25rem;
 color: #112e7c;
 font-size: 1.25rem;
 border: 3px solid #112e7c;
 border-radius: 0.5rem;
}

.navbar-collapse .nav-item-NAV p {
 cursor: none;
}

.navbar-collapse .nav-item a {
 font-size: 1.25rem;
 font-weight: 400;
 color: #000000;
 text-decoration: none;
 padding: 0.25rem;
}

*/

.email-wrapper {
 position: relative;
}

.email-required {
 position: absolute;
 top: -65%;
 right: 65%;
 padding: 5px;
 color: red;
}

.email-required-show {
 position: absolute;
 top: -65%;
 right: 65%;
 padding: 5px;
 color: red;
 display: block;
}

.card {
 overflow-y: auto !important;
}

.firma {
 border-bottom: 1px solid #000000;
 padding: 0 1rem;
}

.main-heading {
 color: #112E7C !important;
 letter-spacing: 0.1em;
}

.main-subheading {
 color: #818181;
}

.start-site-container {
 background: rgba(255,255,255, 0.8);
 border-radius: 0.5rem;
}

.sub-site-container {
 background: rgba(42,61,129, 0.8);
 border-radius: 0.5rem;
}

.start-site-heading {
 color: #112E7C;
 letter-spacing: 0.05rem;
}

.sub-site-heading {
 background: rgba(17, 46, 124, 1);
 color: #f3f3f3;
 border-radius: 0.5rem;
}

.login-form input {
 background-color: #d6d9de;
}

.login-link, .kachel-link {
 text-decoration: none;
}

.bg-kachel {
 min-height: 40vh;
 background: rgba(17, 46, 124, .9);
 border-radius: 0.5rem;
 margin: 0 0.5rem;
 transition: all 0.75s ease-in-out;
}

.bg-kachel:hover {
 background: rgba(17, 46, 124, 1);
 transform: scale(1.05);
}

.start-image {
 height: 17.5vh;
}

.btn-back {
 text-decoration: none;
 background-color: #7d96bc !important;
 color: #f3f3f3 !important;
 font-size: 1rem;
}

.btn-back img {
 height: 1rem;
}

.standorte, .firmen {
 border: none !important;
 /* opacity: 0.9; */
}

.firmen-details {
 font-size: 0.9em;
 font-weight: bold;
}

.such-container {
 border-bottom: 2px solid black;
 padding: 0 0 2rem 0;
 align-items: center;
}

.such-container .form-select,
.such-container .form-control {
 height: 3rem !important;
 border-radius: 0.5rem !important;
}

.mail-container {
 font-size:0.75em;
}

.detail-body {
 height: 50vh;
}

.accordion-button {
 background-color: #f3f3f3 !important;
 border-radius: 0.5rem !important;
}

.location-name, .show-firms {
 border-bottom: 1px solid #dad7d7 !important;
}

.ud-button {
 height: 2rem !important;
 cursor: pointer;
}

.add-button {
 text-decoration: none;
 color: inherit;
}

.add-icon {
 height: 1.5rem !important;
}

.firm-address, .firm-zip, .last-mail {
 color: #818181;
 font-weight: lighter;
 font-size: 0.75rem;
}

.dot {
 width: 1.25rem;
 height: 1.25rem;
 border-radius: 50%;
}

.sub-span {
 width: 1em;
 height: 1em;
 border-radius: 50%;
 background-color: #cfcfcf;
}

.firm-button {
 height: 2rem !important;
}

.firm-search-container {
 border-radius: 0.5rem;
}

.underline {
 text-align: center;
 border-bottom: 1px solid #cfcfcf;
}

.small-line {
 width: 5%;
 border-bottom: 1px solid #cfcfcf;
}

.btnVideo {
 width: 10vw !important;
 font-size: 0.75em !important;
}

.btnEmail {
 width: 10vw !important;
 font-size: 0.75em !important;
}

.acc-header {
 border-radius: 5rem !important;
}

.control-container {
 border: none !important;
}

.firm-name {
 border-bottom: none !important;
 text-decoration: none;
}

.acc-button {
 height: 1.5rem;
}

.ctrl-btn {
 text-decoration: none;
}

.ctrl-card {
 border: none !important;
}

.icon-btn {
 height: 1rem;
}

.text-btn {
 font-size: 0.75rem;
 color: #f3f3f3
}

#messageBox {
 position: absolute;
 background-color: #333;
 color: #fff;
 padding: 10px;
 border-radius: 5px;
 display: none;
}

#messageBox.visible {
 display: block;
}

.circle-container {
 display: flex;
 justify-content: center;
 align-items: center;
}

.number-container {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 1.5rem;
 width: 1.5rem;
 padding: 1.5rem;
 border-radius: 50%;
 background-color: #919191;
 color: #f3f3f3;
 font-size: 1.5rem;
 font-weight: bold;
}

.number-container-active {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 1.5rem;
 width: 1.5rem;
 padding: 1.5rem;
 border-radius: 50%;
 background-color: #112E7C;
 color: #f3f3f3;
 font-size: 1.5rem;
 font-weight: bold;
}


footer a {
 text-decoration: none;
}

.footer-text {
 color: #818181;
}

.footer-name {
 color: #112E7C;
}

.btn-logout {
 background: #575757 !important;
 color: #f3f3f3 !important;
 transition: all 0.75s ease-in-out;
}

.btn-logout:hover {
 background: #818181 !important;
 color: #f3f3f3 !important;
}

.btn-logout-image {
 height: 1rem;
}

/* Modal */
#Fremdfirmen .modal-body {
 background: #f3f3f3;
}

/* Fragen im Modal*/

/* Fragen */
#Fremdfirmen .modal-body p {
 font-size: 1.5rem;
 font-weight: bold;
 margin-bottom: 1rem;
}

/* zu wiederholende Fragen */
#Fremdfirmen .modal-body  span {
 margin-bottom: 0.5rem;
 display: block;
 font-size: 1rem;
 font-weight: bold;
}

/* Antworten */
#Fremdfirmen .modal-body label {
 cursor: pointer;
 margin-bottom: 0.75rem;
 padding: 0.5rem 0.5rem;
 border: 1px solid transparent;
 border-radius: 0.5rem;
 transition: background-color 0.1s;
}

/* auszuwählende Antwort hervorheben */
#Fremdfirmen .modal-body label:hover {
 background-color: #cfcfcf;
}

/* Radio-Buttons */
#Fremdfirmen .modal-body input[type="radio"] {
 margin-right: 0.75rem;
}

/* Buttons */
#Fremdfirmen .modal-body button {
 display: flex;
 justify-content: flex-end;
 padding: 0.5rem 0.75rem;
 margin-top: 1rem;
 background-color: #007BFF;
 color: white;
 border: none;
 border-radius: 0.25rem;
 cursor: pointer;
 transition: background-color 0.3s;
}

#Fremdfirmen .modal-body button:hover {
 background-color: #0056b3;
}