
/* 
    Created on : 01.12.2023, 13:57:04
    Author     : hannohensing
*/


/* fonts */

/* customer color: #f9b82b - ;*/

@font-face {
  font-family: 'Avenir';
  src: url('../fonts/Avenir.ttf')  format('truetype');
}

body {
  font-family: 'Avenir-light', Helvetica, sans-serif;
  font-size: 110%;
  letter-spacing: 0.05em;
  line-height: 2.0em;
}

h1 {
	color: #f9b82b !important;
}

h2 {
	color: black !important;
}

h3 {
	font-size: 1.15em !important;
	font-weight: bold !important;
} 

h4 {
	font-size: 1.0em !important;
	font-weight: bold !important;
} 

a:link {
color: #f9b82b;
text-decoration: none;
}
a:visited {
color: #f9b82b;
}

a:hover {
color: grey;
}

a:active {
color: grey;
}

/* Remove focus ring from navbar dropdown toggles */
.navbar .dropdown-toggle:focus,
.navbar .dropdown-toggle:active,
.navbar .dropdown-toggle:focus-visible {
	outline: none;
	box-shadow: none;
}


section {
	scroll-margin-top: 100px; /* oder je nach Höhe des Headers */
}

.section-bg-pergament {
	background-color: #fdfcf9;
	background-image: repeating-linear-gradient(
	45deg,
	rgba(234, 181, 74, 0.02),
	rgba(234, 181, 74, 0.02) 2px,
	transparent 2px,
	transparent 6px
	);
}

.uppercase {
    text-transform: uppercase;
}

.textcolor-white {
    color:white;  
}

.text {
    color: darkslategray;
    letter-spacing: 0.2em;
    line-height: 2.0em;
    font-size: 1.1em;
}

.fade-text {
	display: -webkit-box;
	-webkit-line-clamp: 2;       /* Anzahl der sichtbaren Zeilen */
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}


/*  general */
.bg-color {
    background-color: #244e7d; 
}

.bg-color-white {
    background-color: #ffffff; 
}


/* elements */


section {
	border-bottom: 1px solid #f9b82b;
}
section.leader {
	background-color: #f9b82b;
	background-image: url('../images/background.jpg');
	background-size: cover;
	background-position: right top;
	color: #f9b82b;
	padding: 3rem 0; /* sorgt für Luft oben und unten */
	border-bottom: 1px solid #f9b82b;
}

@media screen and (max-width: 768px) {
	section.leader {
		padding-bottom: 3rem; /* mehr Luft unter dem Button */
	}
}


.cookie-consent-banner {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #f1f1f1;
    padding: 10px;
    text-align: center;
    border-top: 1px solid #ccc;
    z-index: 1000;
}

/* Optional: Styles für den Link und den Akzeptieren-Button */
.cookie-consent-banner a {
    color: #0275d8;
    text-decoration: none;
}

.cookie-consent-banner .accept-cookies {
    margin-left: 10px;
}


.custom-color {
    background-color: #f9b82b; /* Ersetzen Sie #IhreFarbe mit Ihrem Farbcode */
    border-color: #f9b82b; /* Optional, falls Sie den Rand anpassen möchten */
}

html {
    scroll-behavior: smooth;
}





.bi-check2-circle {
    color: #f9b82b;
}


.section-title h2 {
	font-size: 25px;
	text-transform: uppercase;
	color: #222222;
	white-space: nowrap;         /* kein Umbruch */
	word-break: keep-all;        /* nicht mitten im Wort trennen */
	overflow-wrap: normal;       /* keine erzwungenen Umbrüche */
	hyphens: manual;             /* nur &shy; erlaubt, nie automatisch */
}

.section-title h2::before,
.section-title h2::after {
	content: '';
	width: 50px;
	height: 2px;
	background: rgb(244,178,42);
	display: inline-block;
}

.section-title h2::before {
	margin: 0 15px 10px 0;
}
.section-title h2::after {
	margin: 0 0 10px 15px;
}

/* Tablet runter */
@media (max-width: 768px) {
	.section-title h2 {
		font-size: 18px;
	}
}

/* iPhone 11 Pro hochkant (375px) und kleiner */
@media (max-width: 375px) {
	.section-title h2 {
		font-size: 1.1rem;           /* kleiner, damit eine Zeile passt */
		font-weight: bold;
	}
	.section-title h2::before,
	.section-title h2::after {
		width: 24px;               /* Linien kürzen */
	}
	.section-title h2::before {
		margin: 0 8px 6px 0;
	}
	.section-title h2::after  {
		margin: 0 0 6px 8px;
	}
}



.img-fluid.profil {
  height: 15vw;
  width: 15vw;
  border-radius: 50%;
}


.card {
	border: 1px solid #dee2e6;
	border-radius: 1rem;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	padding: 1rem;
}

.card:hover {
	transform: translateY(-4px);
	box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.08);
}

.card h5 {
	font-weight: 600;
	font-size: 1.2rem;
	color: #0d6efd; /* Bootstrap Primary */
}

.card ul {
	padding-left: 1.2rem;
	margin-bottom: 0.5rem;
}

.card ul li {
	margin-bottom: 0.25rem;
}

.card .text-muted {
	font-style: italic;
	font-size: 0.85rem;
}
.icon-card .card-title {
	color: #eab54a;
}
.card-header-fixed {
	min-height: 110px;
}
.card-body-flex {
	flex-grow: 1;
}
.card-footer-fixed {
	margin-top: auto;
}

.card.no-border{
    border:none;
}

.card.rounded {
    border-radius: 5px;
}

.card-body.showresult {
    border-left:solid 1px lightgrey; 
    border-radius: 5px; 
    box-shadow: 3px 2px 2px grey;
}

.slider-color {
    background: black;
}

hr.white {
    border: 1px solid white;
}

.align-left {
    float:left;
}

.align-right {
    float:right;
}


.form-label {
    font-size: 110%;
    font-weight: 200;
}

.form-control.communication {
     border-radius: 5px; 
     border: 1px solid grey;
}



.form-control.communication:hover {
  
    border: 1px solid #244e7d;
}


.form-control.communication:focus {
   
    border: 1px solid #244e7d;
    box-shadow: none;
}


.customer_font_color {
	color: #eab54a;
}



.rounded-corners {
    border-radius: 10px;
}

.modal_text {
    line-height: 25px; 
    
}

  
/* Customize the appearance of the range slider */
.custom-range::-webkit-slider-thumb {
  background-color: #244e7d; /* change the background color */
  border-color: #244e7d; /* change the border color */
}
.custom-range::-moz-range-thumb {
  background-color: #244e7d;
  border-color: #244e7d;
}
.custom-range::-ms-thumb {
  background-color: #244e7d;
  border-color: #244e7d;
}

.page-item.active {
    background-color: #244e7d!important;
    color:white!important;
}

/* customize color of badge */

.badge_result {
  background-color: #244e7d;
}

.btn-close {
  color: white;
}

.btn-custom {
	background-color: #f9b82b;
    color: #000;
}

.btn-custom,
.btn-custom:link,
.btn-custom:visited,
.btn-custom:hover,
.btn-custom:active,
.btn-custom:focus {
	color: #000;
	text-decoration: none;
}


.btn-custom:hover {
	background-color: #f9b82b;
	color: #000;
    box-shadow: 2px 2px 0 0 lightgrey;
}

.btn-custom:active {
	background-color: #244e7d;
    color: white;
    box-shadow: 2px 2px 0 0 lightgrey;
}


@media (max-width: 576px) {
	.btn-custom {
		font-size: 0.9rem;       /* kleinere Schrift auf Mobile */
		padding: 0.5rem 1rem;     /* kleinerer Button */
	}
}



.form-check-input:checked {
    background-color: #244e7d; /* Farbe für den ausgewählten Zustand */
    border-color: white;
}

.pagination {
    -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
}

/* timeline */

.timeline {
  list-style: none;
  padding: 20px 0 20px;
  position: relative;
}
.timeline:before {
  top: 0;
  bottom: 0;
  position: absolute;
  content: " ";
  width: 3px;
  background-color: #CCCCCC;
  left: 25px;
  margin-left: -1.5px;
}

.timeline > li {
  margin-bottom: 20px;
  position: relative;
}
.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}
.timeline > li:after {
  clear: both;
}
.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}
.timeline > li:after {
  clear: both;
}

.timeline > li > .timeline-panel {
  width: calc( 100% - 65px );
  float: right;
  border: 0px solid #d4d4d4;
  border-radius: 22px;
  padding: 20px;
  position: relative;
  
  
}
.timeline > li > .timeline-panel:before {
  position: absolute;
  top: 26px;
  left: -15px;
  display: inline-block;
}
.timeline > li > .timeline-panel:after {
  position: absolute;
  top: 27px;
  left: -14px;
  display: inline-block;
}
.timeline > li > .timeline-badge {
  color: white;
  width: 30px;
  height: 30px;
  line-height: 50px;
  font-size: 0.7em;
  text-align: center;
  position: absolute;
  top: 16px;
  left: 10px;
  border: 1px solid #d4d4d4;
  
  background-color: #244e7d;
  z-index: 100;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border-bottom-right-radius: 50%;
  border-bottom-left-radius: 50%;
}
.timeline > li.timeline-inverted > .timeline-panel {
  float: left;
}
.timeline > li.timeline-inverted > .timeline-panel:before {
  border-left-width: 0;
  border-right-width: 15px;
  right: -15px;
  right: auto;
}
.timeline > li.timeline-inverted > .timeline-panel:after {
  border-left-width: 0;
  border-right-width: 14px;
  left: -14px;
  right: auto;
}
.timeline-badge.primary {
  background-color: #f9b82b  !important;
}
.timeline-badge.up {
  background-color: #339933 !important;
}
.timeline-badge.down {
  background-color: #CC3333 !important;
}
.timeline-badge.neutral {
  background-color: #999999 !important;
}
.timeline-title {
  margin-top: 0;
  color: inherit;
}
.timeline-body > p,
.timeline-body > ul {
  margin-bottom: 0;
}
.timeline-body > p + p {
  margin-top: 5px;
}

.badge.bg-secondary {
    background-color: #d4d4d4!important; /* Ersetzen Sie #IhreFarbe mit dem gewünschten Farbcode */
}

.scroll-cards-wrapper {
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 1rem;
	-webkit-overflow-scrolling: touch;
}

.scroll-card {
	flex: 0 0 85%;
	scroll-snap-align: start;
}

@media (min-width: 992px) {
	.scroll-cards-wrapper {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1.5rem;
		overflow: visible;
	}

	.scroll-card {
		flex: none;
		scroll-snap-align: unset;
	}
}

.icon-box {
	padding: 1.5rem;
}

.icon-circle {
	width: 80px;
	height: 80px;
	background: linear-gradient(135deg, #eab54a, #f5d493);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	color: white;
	font-size: 2rem;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.icon-box h5 {
	font-weight: 600;
	margin-top: 1rem;
}

.icon-box p {
	font-size: 1.1rem;
	color: #444;
}

.back-btn {
	position: fixed;
	bottom: 20px;
	right: 20px;
	border: 2px solid #ffc107; /* gelber Rahmen */
	color: #ffc107; /* gelber Text */
	background-color: transparent;
	padding: 8px 16px;
	border-radius: 4px;
	z-index: 9999;
	text-decoration: none;
}
.back-btn:hover {
	background-color: #ffc107;
	color: #000;
	text-decoration: none;
}

.modal-header-yellow {
	background-color: #ffc107; /* Dein Gelb */
	color: #000; /* Schwarzer Text */
}

.modal-header-yellow .modal-title {
	color: #000; /* Überschrift schwarz */
}

.modal-header-yellow .btn-close {
	filter: invert(1) grayscale(100%) brightness(0); /* Schwarzes X auf gelbem Hintergrund */
}
