/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
html {
    scroll-behavior: smooth;
  }
.menu-link{
	font-size: 1em !important;
}
.menu-link a:hover{
	color:#eee !important;
}
.sub-menu-container{
	width:250px !important;
}
.highlighted{
	color:#005578 !important;
}
.highlightwhite{
	color:#fff;
}
.bluedbg{
	background-color:#005578 !important;
}
.bigger-font{
	font-size:3em !important;
}
.cap{
	text-transform: uppercase !important;
}
.promo{
	background-color:#fff !important;
}
.subline{
	font-style:italic;
	margin-top:-30px !important;
}
.subline:after , .subline:before{
	content: "''" !important;
}
.vertline{
	border-left: 1px solid #fff;
}
.bg-blueish{
	background-color:#04617b;
}
.slider-wrap{
	overflow:hidden;
	max-height:500px;
}
.roundskilltext{
	font-size:1em !important;
	font-weight: 500;
}
.swiper-slide img {
	width: 150px;
	height: 100px;
	object-fit: contain;
}
.owl-carousel .item {
  margin: 0 20px; /* Falls gap nicht gewünscht ist, nutze margin */
}
.underlined{
	text-decoration:underline !important;
}
.dividerlight{
	background-color:#fff !important;
}
.textcol-white{
	color:#fff !important;
}
.textcol-1{
	color:#dcb768 !important;
}
.textcol-2{
	color:#5faad9 !important;
}
.textcol-3{
	color:#57cc73 !important;
}
.textcol-4{
	color:#ec5252 !important;
}
.bgcol-1{
	background-color:#dcb768 !important;
}
.bgcol-2{
	background-color:#5faad9 !important;
}
.bgcol-3{
	background-color:#57cc73 !important;
}
.bgcol-4{
	background-color:#ec5252 !important;
}
.rdnskibtn{
	width:100%;
	height:100%;
	border-radius:50%;
}
.maxwidth{
	max-width:450px !important;
}

.mt-neg-5{
	margin-top:-50px !important;
}
.sizingx3{
	font-size:2em;
}
.sub-menu-container{
	width:300px !important;
}
.menu-link{
	font-weight:600 !important;
}
.countdown{
	font-size:2em !important;
	text-align:center;
}
.karriereoverview{
	max-width:150px;
}
.karriereoverviewtitle{
	font-size:1.5em;
	font-weight:bold;
	
}
.karriereoverviewsubtitle{
	font-size:1em !important;
	font-weight:normal;
	margin-top:-40px ;
}
.karrierereasontitle{
	font-size:2.2em;
	font-weight:bold;
	padding-bottom:20px;
}
.benefits li{
	 list-style: none !important;
	 margin-left:20px;
}
.benefits li::before{
	content:"\2022";
	font-size:1.1em;
	padding-right:15px;
}
.pb-2{
	padding-bottom:20px;
}
.pb-3{
	padding-bottom:30px;
}
.pb-4{
	padding-bottom:40px;
}
.pb-5{
	padding-bottom:50px;
}
.pt-2{
	padding-top:20px;
}
.pt-3{
	padding-top:30px;
}
.pt-4{
	padding-top:40px;
}
.pt-5{
	padding-top:50px;
}




.calendly-button {
    position: fixed;
	top: 180px;
	right: 20px;
	width: 45px;
	height: 45px;
	background-color: #005578;
	color: white;
	border: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	z-index: 1050;
	transition: background-color 0.3s ease;
	border:1px solid #fff;
}

.calendly-button:hover {
	background-color: #555;
}

.call-button {
    position: fixed;
	top: 240px;
	right: 20px;
	width: 45px;
	height: 45px;
	background-color: #005578;
	color: white;
	border: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	z-index: 1050;
	transition: background-color 0.3s ease;
	border:1px solid #fff;
}

.call-button:hover {
	background-color: #555;
}



@media (min-width: 970px) and (max-width: 1200px) {
	.card-title{
		font-size:25px;
	}
}



/* GROUP NAVIGATION START */
.groupnav{
	height:35px;
	overflow:hidden;
	color:#333 !important;
	transition:all 0.8s ease;
	padding-left:10px;
	padding-right:10px;
	text-align:center;
	background: #4A628A;
	background:#005578;
}
.groupnav h6{
	text-transform:uppercase;
}
.groupnavbottom{
	width:100%;
	height:2px;
	background-color:#444;
	padding-top:2px;
	background: #9DB2BF;
}
.groupnav:hover{
	height:220px;
	transition:all 0.8s ease;
}
.darkcol{
	color:#333;
}
.lightcol{
	color:#fff;
}
.groupheadline{
	font-size:1.1em;
	text-transform:uppercase;
	font-weight:500;
}
.groupsubheadline{
	font-style:italic;
	font-size:1.3em;
}
.groupmember{
}
.groupmember img{
	border-radius:10px;
	transition:all 0.8s ease;
}
.maximg{
	max-width:190px;
}
.groupmember:hover img{
	transform:scale(1.05);
	transition:all 0.6s ease;
}
.memberdescr{

}
.groupbtflex{
	display:flex;
	flex-direction: column;
	flex:100%;
	align-items: center;
}
.groupbtn{
	border-radius:10px;
	padding:5px 10px 5px 10px;
	border:1px solid #fff;
	color:#333;
	text-transform:uppercase;
	transition:all 0.6s ease;
}
.groupbtn:hover{
	transition:all 0.1s ease;
	letter-spacing: 3px;
}
.groupbtn:hover > .lightcol{
	color:#fff !important;
}
.grouplink{
	font-size: clamp(0.7rem, 0.9vw, 1rem); 
}
.grouplink:hover{
	color:#fff !important;
}
.text-left{
	text-align:left;
}

@media screen and (max-width: 950px) {
	.desktops{
		display:none;
	}
	.groupnav:hover{
		height:170px;
	}
	.groupsubheadline{
		font-size:1em;
	}
	.navbar-brand img{
		width:220px;
	}
}

/* GROUP NAVIGATION END */






.btn-outline-dark{
	color:#115578;
	border:1px solid #115578;
}
.btn-outline-dark:hover{
	color:#fff;
	background-color:#115578;
}
.btn-active{
	background-color:#115578;
	color:#fff;
}
.btn-active:hover{
	color:#005578;
	border:1px solid #005578;
	background-color:#fff;
}
.leistung {
  border: 1px solid #ddd;
  border-radius: 12px; /* oder 8px, je nach Geschmack */
  padding: 20px;
}

.leistung:hover {
  background-color:#fafafa;
}





/* Pricing Section */
.pricing-container {
	padding-bottom:80px !important;
}

.pricing-card {
  border-radius: 12px;
  transition: transform 0.3s ease;
}

.pricing-card:hover {
  transform: translateY(-5px);
}

.card-title{
	font-size:1.3em;
}

.card-price {
  font-size: 28px;
  font-weight: bold;
  color: #115578;
  margin: 20px 0;
}

.highlight {
  background-color: #e6f1f8;
  border: 2px solid #115578;
}
.text-dark ul li{
	color:#ddd !important;
}


/*BadgeSytling*/
.bg-blue{
	background-color:#115578;
}
.bg-orange{
	background-color:#acdcff;
	color:#666;
}
.badge{
	 text-transform:uppercase;
}

.buttonwhitehover:hover{
	background-color:#ddd !important;
	color:#666 !important;
}

.buttontranshover{
	color:#ddd !important;
}

.buttonhead{
	border:1px solid #005578;
	background-color:#eee !important;
	color:#005578 !important;
}
.buttonhead:hover{
	background-color:#acdcff !important;
	color:#005578 !important;
}

@keyframes pulse-soft {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(172, 220, 255, 0.4); /* #acdcff mit 40% */
  }
  50% {
    transform: scale(1.03);
    box-shadow: 0 0 8px 4px rgba(172, 220, 255, 0.2); /* #acdcff mit 20% */
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(172, 220, 255, 0);
  }
}

.pulse-badge {
  animation: pulse-soft 3s ease-in-out infinite;
  display: inline-block;
  transition: transform 0.3s ease;
}



/* Header Block */
.header-block {
  background-color: #000; /* Hintergrundfarbe */
  color: #fff; /* Schriftfarbe */
  text-align: left; /* Linksbündiger Text */
  padding: 0.6rem 0; /* Vertikaler Abstand */
  position: relative; /* Für Animation */
  transition: opacity 0.3s ease, visibility 0.3s ease; /* Weicher Übergang */
  z-index:1;
}
@media (max-width: 779px)  { 
	.header-block { 
		display:none; 
	} 
}

.header-text {
  font-size: 1rem; /* Schriftgröße */
  margin: 0; /* Kein zusätzlicher Abstand */
  cursor: pointer; /* Ändert den Cursor beim Hover */
}

/* Cratos Group - Full-Width-Block */
.full-width-block {
  background-color: #000; /* Hintergrundfarbe */
  color: #fff; /* Schriftfarbe */
  height: 250px; /* Höhe des Blocks */
  display: flex; /* Flexbox für zentrierten Inhalt */
  align-items: center; /* Vertikale Zentrierung */
  justify-content: center; /* Horizontale Zentrierung */
  text-align: left; /* Linksbündiger Text */
  width: 100%; /* Volle Breite */
  position: relative; /* Positionierung */
  z-index: 999; /* Über der Navigation */
}

.full-width-block a{
	color: #fff; /* Schriftfarbe */
}

.full-width-block p {
  font-size: 1rem; /* Schriftgröße */
  margin: 0; /* Kein zusätzlicher Abstand */
}
#assessments-overview {
  scroll-margin-top: 80px;
}
#assessments-overview .btn-group {
    margin-top: 1.5rem;
  }
.assessmentlist ul{
	padding-left: 1rem;
}

.assessmentul{
	padding-left:15px;
}
.assessmenttitle{
	
}
.assessmentul li{
	  list-style-type: square;
	  padding-bottom:15px;
}
.cta {
  color: #fff; /* weiße Schrift */
  padding: 3rem 2rem;
  border-radius: 1rem;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  align-items: center; /* sorgt dafür, dass Text & Button vertikal ausgerichtet sind */
  margin-bottom:3em;
}

.cta h4 {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.6;
}

.cta .btn {
  padding: 0.75rem 1.5rem;
  font-size: 1rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.cta .btn:hover {
  background: #005578;
  color: #ffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(255, 255, 255, 0.3);
}

.serviceslisthandler{
}
.serviceslisthandler ul li{
	padding-bottom:1.5em;
	list-style-type: square;
	margin-left:15px;
	padding-right:2em;
}

/* Timelinesection / Ablaufsection*/
/* ========== Timeline (Bootstrap) ========== */
.timeline {
  position: relative;
  margin: 2rem 0;
}

/* Vertikale Linie */
.timeline::before {
  content: "";
  position: absolute;
  left: 1.25rem;                 /* Basis für mobile */
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(0,0,0,.1);
}

/* Item: verbindet Marker + Card */
.timeline-item {
  position: relative;
  padding-left: 3rem;            /* Platz für Marker auf mobile */
  margin-bottom: 2.5rem;
}

/* Marker (Punkt) */
.timeline-item::before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: .5rem;
  transform: translate(-50%, 0);
  width: 14px;
  height: 14px;
  background: #005578;
  border: 2px solid #fff;
  box-shadow: 0 0 0 3px rgba(13,110,253,.15);
  border-radius: 50%;
  z-index: 2;
}

/* Card-Styling */
.timeline-card {
  background: #fff;
  border-radius: .75rem;
  border: 1px solid rgba(0,0,0,.06);
}

/* --- ab md: Linie in die Mitte und Alternation links/rechts --- */
@media (min-width: 768px) {
  .timeline::before {
    left: 50%;
    transform: translateX(-50%);
  }

  .timeline-item {
    padding-left: 0;
    margin-bottom: 3rem;
  }

  /* Spalte, die die Card enthält, soll sich an der Mittellinie orientieren */
  .timeline-col {
    position: relative;
  }

  /* Marker mittig auf der Linie je Item */
  .timeline-item::before {
    left: 50%;
    transform: translate(-50%, 0);
  }

  /* kleine „Connector“-Linien von der Mitte zur Card */
  .timeline-item .timeline-col::before {
    content: "";
    position: absolute;
    top: 1rem;                     /* vertikale Ausrichtung zum Card-Header */
    width: 30px;
    height: 2px;
    background: rgba(0,0,0,.1);
  }

  /* Cards auf der linken Seite (odd Items) – verbinden nach rechts zur Mitte */
  .timeline-item:nth-child(odd) .timeline-col {
    text-align: right;
  }
  .timeline-item:nth-child(odd) .timeline-col::before {
    right: -15px;                  /* halb von 30px */
  }

  /* Cards auf der rechten Seite (even Items) – verbinden nach links zur Mitte */
  .timeline-item:nth-child(even) .timeline-col {
    text-align: left;
  }
  .timeline-item:nth-child(even) .timeline-col::before {
    left: -15px;
  }
}

/* Dark-Mode/ dunkler Abschnitt Support (optional) */
.dark .timeline::before,
.dark .timeline-item .timeline-col::before {
  background: rgba(255,255,255,.15);
}
.dark .timeline-card {
  background: #111;
  border-color: rgba(255,255,255,.08);
}


/* Warum Partner Section */
/* Warum-Partner: Feature Cards */
#warum-partner .feature-card {
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 1rem;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  background: #fff;
}

#warum-partner .feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
  border-color: rgba(13,110,253,.25); /* Bootstrap Primary */
}

#warum-partner .feature-icon i {
  font-size: 2rem;
  line-height: 1;
  padding: .85rem;
  border-radius: .75rem;
  background: rgba(13,110,253,.1);
  color: #005578;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Dark-Mode kompatibel (falls .dark im Body/Fußbereich genutzt wird) */
.dark #warum-partner .feature-card {
  background: #111;
  border-color: rgba(255,255,255,.08);
}
.dark #warum-partner .feature-card:hover {
  border-color: rgba(13,110,253,.4);
  box-shadow: 0 12px 30px rgba(0,0,0,.6);
}
.dark #warum-partner .feature-icon i {
  background: rgba(13,110,253,.2);
}

/* Pakete Section */
/* Pakete */
#pakete .package-card {
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 1rem;
  background: #fff;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
#pakete .package-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
  border-color: rgba(13,110,253,.25);
}
#pakete .package-featured {
  border: 2px solid rgba(13,110,253,.35);
  transform: translateY(-6px);
}
#pakete .package-featured:hover {
  transform: translateY(-8px);
}


/* Vorteile */
#vorteile .benefits-wrap {
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 1rem;
}

#vorteile .benefit {
  padding: .75rem 1rem;
  border-radius: .75rem;
  transition: background-color .2s ease, transform .2s ease;
}

#vorteile .benefit:hover {
  background: rgba(255,255,255,.6);
  transform: translateY(-2px);
}

#vorteile .benefit-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  border-radius: .65rem;
  background: rgba(13,110,253,.12);
  color: #005578;
  flex: 0 0 40px;
  font-size: 1em;
}


/* CTA Abschluss */
#cta-abschluss {
  margin: 3rem auto;
  max-width: 1200px;
  color:#000;
}

#cta-abschluss h2 {
  font-weight: 700;
}


/* Badge Grid */
.badge-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin: 0;
  padding: 0;
}
@media (max-width: 1199.98px) { .badge-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 991.98px)  { .badge-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575.98px)  { .badge-grid { grid-template-columns: 1fr; } }

.badge-link { text-decoration: none; }

.badge-card {
  position: relative;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  padding: 14px 14px 10px;
  margin: 0;
  height: 100%;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  box-shadow: 0 2px 10px rgba(0,0,0,0.15);
}

.badge-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 11 / 6;              /* stabiles Layout */
  object-fit: contain;                /* logos nicht gestaucht */
  filter: grayscale(100%) opacity(.85);
  transition: filter .2s ease, transform .2s ease;
}

.badge-card figcaption {
  text-align: center;
  font-size: .85rem;
  color: rgba(255,255,255,0.8);
  margin-top: 8px;
  line-height: 1.2;
}

.badge-link:hover .badge-card {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  border-color: rgba(255,255,255,0.18);
}
.badge-link:hover .badge-card img {
  filter: grayscale(0%) opacity(1);
  transform: scale(1.02);
}



/* Floating Language Switcher */
.lang-switcher-floating {
  position: fixed;
  right: 20px;
  bottom: 80px; /* sitzt über den Call-/Calendly-Buttons */
  z-index: 9999;
  background: #ffffff;
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  padding: 4px 10px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
}

.lang-link {
  text-decoration: none;
  color: #333333;
  padding: 3px 6px;
  border-radius: 999px;
  transition: background-color 0.2s ease, color 0.2s ease;
  text-transform: uppercase;
}

.lang-link:hover {
  background-color: #04607a;
  color: #ffffff;
}

.lang-link.active {
  background-color: #04607a;
  color: #ffffff;
}

.lang-separator {
  color: #999999;
  font-size: 12px;
}

/* Mobile: etwas höher setzen, damit sie nicht mit anderen Elementen kollidiert */
@media (max-width: 767.98px) {
  .lang-switcher-floating {
    right: 15px;
    bottom: 80px;
    font-size: 12px;
  }
}



/* =========================
   GLPI FAQ
========================= */
#glpi-faq {
}

#glpi-faq .faq-intro h2 {
  color: #005578;
  margin-bottom: 0.75rem;
}

#glpi-faq .faq-intro p {
  max-width: 760px;
  margin: 0 auto;
}

#glpi-faq .faq-accordion {
  margin-bottom: 0;
}

#glpi-faq .faq-item {
  border: 1px solid rgba(0, 85, 120, 0.08);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
  margin-bottom: 1rem;
}

#glpi-faq .accordion-button {
  background: #fff;
  color: #1f2937;
  font-weight: 600;
  font-size: 1.05rem;
  line-height: 1.5;
  padding: 1.2rem 1.35rem;
  box-shadow: none !important;
}

#glpi-faq .accordion-button:not(.collapsed) {
  background: #eef7fb;
  color: #005578;
}

#glpi-faq .accordion-button:focus {
  box-shadow: none;
  border-color: rgba(0, 85, 120, 0.18);
}

#glpi-faq .accordion-button::after {
  filter: hue-rotate(165deg) saturate(180%);
}

#glpi-faq .accordion-body {
  padding: 1.35rem 1.35rem 1.15rem;
  color: #4b5563;
}

#glpi-faq .accordion-body p {
  margin-bottom: 1rem;
}

#glpi-faq .accordion-body p:last-child {
  margin-bottom: 0;
}

#glpi-faq .faq-cta p {
  color: #6b7280;
}

@media (max-width: 767.98px) {
  #glpi-faq .accordion-button {
    font-size: 1rem;
    padding: 1rem 1.1rem;
  }

  #glpi-faq .accordion-body {
    padding: 1.1rem;
  }
}


.event-promo-modal .modal-dialog{
			max-width: 980px;
		}
		.event-promo-modal-content{
			border: 0;
			overflow: hidden;
			border-radius: 24px;
			box-shadow: 0 30px 80px rgba(11,57,84,.28);
		}
		.event-promo-modal-header{
			background: linear-gradient(135deg, #0b3954 0%, #04607a 55%, #0e7490 100%);
			border: 0;
			padding: 1.3rem 1.5rem;
			color: #fff;
		}
		.event-promo-modal-header .modal-title{
			font-size: 1.55rem;
			font-weight: 700;
			margin: 0;
			color:#fff;
		}
		.event-promo-kicker{
			font-size: .82rem;
			text-transform: uppercase;
			letter-spacing: .12em;
			font-weight: 700;
			opacity: .9;
			margin-bottom: .35rem;
		}
		.event-promo-modal-body{
			padding: 1.5rem;
			background: linear-gradient(180deg, #f7fbfd 0%, #ffffff 100%);
		}
		.event-promo-visual{
			height: 100%;
			background: linear-gradient(145deg, #0b3954 0%, #04607a 55%, #1587a8 100%);
			border-radius: 22px;
			padding: 1.6rem;
			color: #fff;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			min-height: 100%;
			box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 20px 45px rgba(4,96,122,.24);
		}
		.event-promo-badge{
			display: inline-flex;
			align-self: flex-start;
			padding: .45rem .8rem;
			border-radius: 999px;
			background: rgba(255,255,255,.12);
			border: 1px solid rgba(255,255,255,.18);
			font-weight: 700;
			font-size: .85rem;
			margin-bottom: 1.25rem;
		}
		.event-promo-visual h3{
			font-size: 1.95rem;
			line-height: 1.2;
			margin-bottom: 1rem;
			color:#fff;
		}
		.event-promo-visual p{
			margin: 0;
			font-size: 1rem;
			line-height: 1.7;
			color: rgba(255,255,255,.92);
		}
		.event-promo-card{
			height: 100%;
			background: #fff;
			border: 1px solid rgba(4,96,122,.12);
			border-radius: 22px;
			padding: 1.55rem;
			box-shadow: 0 16px 35px rgba(11,57,84,.08);
		}
		.event-promo-meta{
			display:grid;
			gap: .8rem;
			margin-bottom: 1rem;
		}
		.event-promo-meta div{
			background:#f4f8fb;
			border:1px solid rgba(4,96,122,.08);
			border-radius:16px;
			padding:.9rem .95rem;
			font-size:1.5rem;
			font-weight:600;
			line-height:1.45;
			color:#143447;
		}
		.event-promo-text{
			font-size: 1rem;
			line-height: 1.75;
			color: #29485b;
			margin-bottom: 1.1rem;
		}
		.event-promo-list{
			list-style:none;
			padding:0;
			margin:0 0 1.25rem 0;
		}
		.event-promo-list li{
			position:relative;
			padding-left: 1.4rem;
			margin-bottom: .7rem;
			line-height:1.6;
			color:#29485b;
		}
		.event-promo-list li:before{
			content:"";
			position:absolute;
			left:0; top:.6rem;
			width:8px; height:8px;
			border-radius:50%;
			background:#04607a;
			box-shadow:0 0 0 6px rgba(4,96,122,.10);
		}
		.event-promo-actions{
			display:flex;
			flex-wrap:wrap;
			gap:.85rem;
		}
		.event-promo-btn{
			display:inline-flex;
			align-items:center;
			justify-content:center;
			padding:.95rem 1.2rem;
			border-radius:999px;
			font-weight:700;
			text-decoration:none !important;
			transition:all .2s ease;
			min-width:220px;
		}
		.event-promo-btn-primary{
			background:#04607a;
			color:#fff;
		}
		.event-promo-btn-primary:hover{
			background:#0b3954;
			color:#fff;
		}
		.event-promo-btn-secondary{
			background:#fff;
			color:#04607a;
			border:1px solid rgba(4,96,122,.22);
		}
		.event-promo-btn-secondary:hover{
			background:#f4f8fb;
			color:#0b3954;
		}
		@media (max-width: 991.98px){
			.event-promo-meta{ grid-template-columns:1fr; }
			.event-promo-modal-body{ padding:1rem; }
			.event-promo-visual, .event-promo-card{ padding:1.25rem; }
			.event-promo-visual h3{ font-size:1.55rem; }
		}

/* =========================================================
   Blueteam Landingpage Style: Sticky Side Actions
   Step: Termin buchen + Language Switch + Mobile Call
   ========================================================= */
:root {
  --bt-primary: #11567b;
  --bt-blue-700: #074766;
  --bt-blue-050: #eef7fb;
  --bt-border: rgba(17, 86, 123, .16);
  --bt-fg-2: #314d60;
}

/* Alte Floating-Button-Klassen neutralisieren, falls noch im Markup vorhanden */
.calendly-button,
.call-button,
.lang-switcher-floating {
  all: unset;
}

.side {
  position: fixed;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: 'Barlow', 'Roboto', Arial, sans-serif;
}

.side__cta,
.side__call {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 60px;
  padding: 12px 10px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--bt-primary) 0%, var(--bt-blue-700) 100%);
  color: #fff !important;
  text-decoration: none !important;
  text-align: center;
  line-height: 1.2;
  font-weight: 600;
  font-size: 10px;
  letter-spacing: .06em;
  text-transform: uppercase;
  box-shadow: 0 10px 26px -10px rgba(17,86,123,.45), 0 3px 8px -3px rgba(17,86,123,.30);
  position: relative;
  overflow: hidden;
  transition: transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, background .3s;
}

.side__cta::before,
.side__call::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 0%, rgba(255,255,255,.25), transparent 60%);
  opacity: 0;
  transition: opacity .3s;
  pointer-events: none;
}

.side__cta:hover,
.side__call:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px -10px rgba(17,86,123,.55), 0 4px 12px -3px rgba(17,86,123,.40);
  color: #fff !important;
}

.side__cta:hover::before,
.side__call:hover::before { opacity: 1; }

.side__cta-ico,
.side__call-ico {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.16);
  display: grid;
  place-items: center;
  margin-bottom: 1px;
}

.side__cta-ico svg,
.side__call-ico i {
  width: 13px;
  height: 13px;
  color: #fff;
  font-size: 13px;
  line-height: 1;
}

.side__cta-lbl,
.side__call-lbl {
  font-size: 9px;
  letter-spacing: .06em;
  line-height: 1.2;
}

.side__cta-lbl strong,
.side__call-lbl strong {
  display: block;
  font-size: 9.5px;
  letter-spacing: .04em;
  font-weight: 700;
  margin-top: 1px;
}

/* Call auf Desktop ausblenden – nur mobil sichtbar */
.side__call { display: none; }

.side__lang {
  display: flex;
  flex-direction: column;
  width: 60px;
  background: #fff;
  border: 1px solid var(--bt-border);
  border-radius: 11px;
  overflow: hidden;
  box-shadow: 0 6px 18px -8px rgba(10,40,66,.18);
}

.side__lang a {
  min-height: 30px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--bt-border);
  cursor: pointer;
  padding: 7px 0;
  font-family: 'Barlow', 'Roboto', Arial, sans-serif;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .12em;
  color: var(--bt-fg-2) !important;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background .2s, color .2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.side__lang a:last-child { border-bottom: 0; }
.side__lang a:hover { background: var(--bt-blue-050); color: var(--bt-primary) !important; }
.side__lang a.is-active { background: var(--bt-primary); color: #fff !important; cursor: default; }
.side__lang a.is-active:hover { background: var(--bt-primary); color: #fff !important; }

.side__flag {
  width: 14px;
  height: 10px;
  border-radius: 2px;
  display: inline-block;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.15);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.side__flag--de {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3'><rect width='5' height='1' y='0' fill='%23000'/><rect width='5' height='1' y='1' fill='%23DD0000'/><rect width='5' height='1' y='2' fill='%23FFCE00'/></svg>");
}

.side__flag--en {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'><rect width='60' height='30' fill='%23012169'/><path d='M0,0 L60,30 M60,0 L0,30' stroke='%23ffffff' stroke-width='6'/><path d='M0,0 L60,30' stroke='%23C8102E' stroke-width='4' stroke-dasharray='34 100' stroke-dashoffset='-2'/><path d='M60,0 L0,30' stroke='%23C8102E' stroke-width='4' stroke-dasharray='34 100' stroke-dashoffset='-2'/><rect x='25' width='10' height='30' fill='%23ffffff'/><rect y='10' width='60' height='10' fill='%23ffffff'/><rect x='27' width='6' height='30' fill='%23C8102E'/><rect y='12' width='60' height='6' fill='%23C8102E'/></svg>");
}

@media (max-width: 880px) {
  body { padding-bottom: 84px; }

  .side {
    right: 10px;
    left: 10px;
    top: auto;
    bottom: 10px;
    transform: none;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    gap: 6px;
  }

  .side__cta,
  .side__call {
    display: flex;
    width: auto;
    flex: 1 1 0;
    max-width: 180px;
    flex-direction: row;
    justify-content: center;
    padding: 9px 12px;
    border-radius: 11px;
    gap: 8px;
  }

  .side__cta-ico,
  .side__call-ico {
    width: 22px;
    height: 22px;
    margin-bottom: 0;
  }

  .side__cta-lbl,
  .side__call-lbl { text-align: left; }

  .side__lang {
    flex-direction: row;
    width: auto;
    flex: 0 0 auto;
    border-radius: 11px;
  }

  .side__lang a {
    min-height: auto;
    padding: 0 10px;
    border-bottom: 0;
    border-right: 1px solid var(--bt-border);
  }

  .side__lang a:last-child { border-right: 0; }
}

@media (max-width: 520px) {
  .side__cta-lbl span,
  .side__call-lbl span { display: none; }

  .side__cta-lbl strong,
  .side__call-lbl strong { font-size: 10px; }
}

@media print { .side { display: none !important; } }



/* ==================================================
   BLUETEAM HERO
================================================== */

.bt-hero-section{
    position:relative;
    overflow:hidden;
    background:#f5f8fb;
    padding:120px 0 80px 0;
}

.bt-hero-row{
    min-height:680px;
    padding:40px 0;
}

.bt-hero-grid{
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(0,85,120,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0,85,120,.05) 1px, transparent 1px);
    background-size:50px 50px;
    pointer-events:none;
}

.bt-kicker{
    font-size:.85rem;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:#005578;
    font-weight:700;
    margin-bottom:30px;
}

.bt-hero-title{
    font-size:5rem;
    line-height:.95;
    font-weight:800;
    color:#081b2d;
    margin-bottom:35px;
}

.bt-hero-title span{
    color:#005578;
}

.bt-hero-text{
    font-size:1.4rem;
    line-height:1.8;
    color:#496173;
    max-width:720px;
    margin-bottom:40px;
}

.bt-hero-buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
    margin-bottom:40px;
}

.bt-btn{
    padding:18px 34px;
    border-radius:16px;
    font-weight:700;
    text-decoration:none;
    transition:.3s ease;
    display:inline-flex;
    align-items:center;
    gap:12px;
}

.bt-btn-primary{
    background:#005578;
    color:#fff;
    box-shadow:0 12px 30px rgba(0,85,120,.18);
}

.bt-btn-primary:hover{
    background:#003f59;
    color:#fff;
    transform:translateY(-3px);
}

.bt-btn-secondary{
    border:1px solid #005578;
    color:#005578;
    background:#fff;
}

.bt-btn-secondary:hover{
    background:#005578;
    color:#fff;
}

.bt-hero-badges{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.bt-badge{
    background:#fff;
    border:1px solid rgba(0,85,120,.1);
    border-radius:999px;
    padding:12px 18px;
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:600;
    color:#2d4759;
}

.bt-badge i{
    width:24px;
    height:24px;
    border-radius:50%;
    background:#e6f2f8;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#005578;
    font-size:.75rem;
}

/* DASHBOARD */

.bt-dashboard-wrap{
    position:relative;
}

.bt-dashboard-glow{
    position:absolute;
    inset:40px;
    background:rgba(0,85,120,.25);
    filter:blur(80px);
    z-index:0;
}

.bt-dashboard{
    position:relative;
    z-index:1;
    background:#04111f;
    border-radius:28px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.06);
    box-shadow:
        0 40px 80px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.04);
}

.bt-dashboard-top{
    height:72px;
    border-bottom:1px solid rgba(255,255,255,.05);
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 28px;
    background:#071827;
}

.bt-dashboard-brand{
    color:#7ea1bb;
    font-weight:600;
}

.bt-live-status{
    color:#34d399;
    font-weight:700;
    display:flex;
    align-items:center;
    gap:10px;
}

.bt-live-dot{
    width:10px;
    height:10px;
    background:#34d399;
    border-radius:50%;
    animation:pulse 1.5s infinite;
}

.bt-dashboard-body{
    display:flex;
    min-height:640px;
}

.bt-sidebar{
    width:220px;
    background:#061321;
    border-right:1px solid rgba(255,255,255,.05);
    padding:25px 0;
}

.bt-side-item{
    padding:18px 28px;
    color:#89a8be;
    display:flex;
    align-items:center;
    gap:14px;
    transition:.3s ease;
}

.bt-side-item.active,
.bt-side-item:hover{
    background:rgba(0,85,120,.18);
    color:#fff;
}

.bt-dashboard-content{
    flex:1;
    padding:28px;
}

.bt-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-bottom:22px;
}

.bt-stat-card{
    background:#071b2d;
    border:1px solid rgba(255,255,255,.06);
    border-radius:18px;
    padding:24px;
}

.bt-stat-card span{
    display:block;
    color:#6f92ac;
    font-size:.8rem;
    margin-bottom:12px;
}

.bt-stat-card strong{
    display:block;
    color:#fff;
    font-size:2rem;
    margin-bottom:8px;
}

.bt-stat-card small{
    color:#34d399;
}

.bt-feed{
    background:#071b2d;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.06);
    padding:24px;
    margin-bottom:22px;
}

.bt-feed-title{
    color:#8db1cb;
    font-size:.8rem;
    letter-spacing:.18em;
    margin-bottom:20px;
}

.bt-feed-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.bt-feed-item{
    background:#081f33;
    border-radius:14px;
    padding:14px 18px;
    display:grid;
    grid-template-columns:90px 80px 1fr auto;
    align-items:center;
    gap:14px;
    animation:feedPulse 4s infinite;
}

.feed-time{
    color:#64849d;
}

.feed-badge{
    padding:6px 10px;
    border-radius:8px;
    font-size:.7rem;
    font-weight:700;
    text-align:center;
}

.feed-badge.info{
    background:#143b58;
    color:#56b8ff;
}

.feed-badge.warn{
    background:#4f3410;
    color:#ffb84d;
}

.feed-badge.crit{
    background:#4a1418;
    color:#ff6b6b;
}

.feed-text{
    color:#d8e8f5;
}

.feed-status{
    font-size:.8rem;
    font-weight:700;
}

.feed-status.ok{
    color:#34d399;
}

.feed-status.monitor{
    color:#ffb84d;
}

.feed-status.isolate{
    color:#ff6b6b;
}

.bt-bottom-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}

.bt-chart-card,
.bt-map-card{
    background:#071b2d;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.06);
    padding:24px;
}

.mini-title{
    color:#8db1cb;
    font-size:.8rem;
    letter-spacing:.16em;
    margin-bottom:18px;
}

.bt-bars{
    height:180px;
    display:flex;
    align-items:flex-end;
    gap:10px;
}

.bt-bars span{
    flex:1;
    background:linear-gradient(to top,#005578,#29b3ff);
    border-radius:8px 8px 0 0;
    animation:bars 2s infinite ease-in-out;
}

.bt-bars span:nth-child(1){height:20%;}
.bt-bars span:nth-child(2){height:65%;}
.bt-bars span:nth-child(3){height:35%;}
.bt-bars span:nth-child(4){height:80%;}
.bt-bars span:nth-child(5){height:55%;}
.bt-bars span:nth-child(6){height:90%;}
.bt-bars span:nth-child(7){height:30%;}
.bt-bars span:nth-child(8){height:72%;}
.bt-bars span:nth-child(9){height:45%;}
.bt-bars span:nth-child(10){height:95%;}

.bt-map{
    position:relative;
    height:180px;
    background:
        radial-gradient(circle at center,
        rgba(0,85,120,.18),
        transparent 70%);
    border-radius:18px;
}

.ping{
    position:absolute;
    width:14px;
    height:14px;
    background:#ff5b5b;
    border-radius:50%;
    animation:ping 2s infinite;
}

.ping::before{
    content:"";
    position:absolute;
    inset:-10px;
    border:2px solid rgba(255,91,91,.4);
    border-radius:50%;
}

.ping-1{top:40%;left:20%;}
.ping-2{top:25%;left:60%;}
.ping-3{top:60%;left:75%;}

@keyframes pulse{
    0%{opacity:1;}
    50%{opacity:.3;}
    100%{opacity:1;}
}

@keyframes ping{
    0%{transform:scale(1);}
    50%{transform:scale(1.2);}
    100%{transform:scale(1);}
}

@keyframes bars{
    0%{opacity:.8;}
    50%{opacity:1;}
    100%{opacity:.8;}
}

@keyframes feedPulse{
    0%{border-color:rgba(255,255,255,.04);}
    50%{border-color:rgba(41,179,255,.25);}
    100%{border-color:rgba(255,255,255,.04);}
}

/* MOBILE */

@media(max-width:991px){

    .bt-hero-title{
        font-size:3.6rem;
    }

    .bt-dashboard{
        margin-top:60px;
    }

    .bt-dashboard-body{
        flex-direction:column;
    }

    .bt-sidebar{
        width:100%;
        display:flex;
        overflow:auto;
    }

    .bt-stats-grid,
    .bt-bottom-grid{
        grid-template-columns:1fr;
    }

    .bt-feed-item{
        grid-template-columns:1fr;
    }

}

@media(max-width:767px){

    .bt-hero-section{
        padding-top:160px;
    }

    .bt-hero-title{
        font-size:2.8rem;
    }

    .bt-hero-text{
        font-size:1.05rem;
    }

    .bt-btn{
        width:100%;
        justify-content:center;
    }

}

/* =========================================
   HERO DASHBOARD QUERFORMAT / KOMPAKT
========================================= */

.bt-dashboard-wrap{
    display:flex;
    justify-content:flex-end;
}

.bt-dashboard{
    max-width:920px;
    height:520px;
}

.bt-dashboard-body{
    min-height:0;
    height:448px; /* 520px - 72px Topbar */
}

.bt-sidebar{
    width:165px;
    padding:16px 0;
}

.bt-side-item{
    padding:13px 18px;
    font-size:.85rem;
}

.bt-dashboard-content{
    padding:18px;
    overflow:hidden;
}

.bt-stats-grid{
    gap:12px;
    margin-bottom:14px;
}

.bt-stat-card{
    padding:15px;
    border-radius:14px;
}

.bt-stat-card strong{
    font-size:1.45rem;
}

.bt-feed{
    padding:16px;
    margin-bottom:14px;
}

.bt-feed-title{
    margin-bottom:12px;
}

.bt-feed-list{
    gap:8px;
}

.bt-feed-item{
    padding:9px 12px;
    grid-template-columns:70px 58px 1fr auto;
    gap:10px;
    font-size:.78rem;
}

.bt-bottom-grid{
    gap:14px;
}

.bt-chart-card,
.bt-map-card{
    padding:15px;
    border-radius:14px;
}

.bt-bars,
.bt-map{
    height:105px;
}

@media(max-width:1400px){
    .bt-dashboard{
        max-width:820px;
        height:500px;
    }

    .bt-dashboard-body{
        height:428px;
    }
}

@media(max-width:991px){
    .bt-dashboard{
        max-width:100%;
        height:auto;
    }

    .bt-dashboard-body{
		height:auto;
        flex-direction:column;
    }
	
	.bt-sidebar{
        width:100%;
        display:flex;
        flex-wrap:nowrap;
        gap:8px;
        overflow-x:auto;
        overflow-y:hidden;
        padding:12px;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.06);
        scrollbar-width:none;
        -ms-overflow-style:none;
    }

    .bt-sidebar::-webkit-scrollbar{
        display:none;
    }

    .bt-side-item{
        flex:0 0 auto;
        white-space:nowrap;
        padding:10px 14px;
        border-radius:12px;
        font-size:.78rem;
        background:rgba(255,255,255,.03);
    }

    .bt-side-item.active::before{
        display:none;
    }
}

@media(max-width:767px){
    .bt-sidebar{
        display:grid;
        grid-template-columns:repeat(2, 1fr);
        gap:8px;
    }

    .bt-side-item{
        width:100%;
        justify-content:center;
    }
}

/* =========================================
   MOBILE FLOATING BUTTONS FIX
========================================= */

@media(max-width:767px){

    /* CONTAINER */
    .side-floating{
        position:fixed;
        left:12px;
        right:12px;
        bottom:14px;
        display:flex;
        gap:10px;
        z-index:99999;
        align-items:stretch;
    }

    /* TERMIN BUCHEN */
    .side-book{
        flex:1.4;
        min-width:150px;
    }

    /* ANRUFEN */
    .side-call{
        flex:1;
        min-width:110px;
    }

    /* LANGUAGE */
    .side-lang{
        flex:0 0 auto;
    }

    /* BUTTONS */
    .side-book,
    .side-call,
    .side-lang{
        height:58px;
        border-radius:16px;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:0 18px;
        background:#005578;
        color:#fff;
        text-decoration:none;
        font-weight:700;
        box-shadow:0 10px 25px rgba(0,0,0,.18);
        border:1px solid rgba(255,255,255,.12);
    }

    /* TEXT NICHT UMBRECHEN */
    .side-book span,
    .side-call span{
        white-space:nowrap;
        line-height:1;
        font-size:.82rem;
    }

    /* ICON */
    .side-book i,
    .side-call i{
        margin-right:10px;
        font-size:1rem;
    }

    /* LANGUAGE */
    .side-lang{
        background:#fff;
        color:#081b2d;
        gap:10px;
        padding:0 14px;
    }

    .side-lang a{
        text-decoration:none;
        font-size:.8rem;
        font-weight:700;
        color:#081b2d;
    }

}

/* =========================================
   HERO DASHBOARD LIVE ANIMATIONEN
========================================= */

.bt-feed-list{
    max-height:260px;
    overflow:hidden;
}

.bt-feed-item{
    transition:
        transform .35s ease,
        opacity .35s ease,
        background-color .35s ease,
        box-shadow .35s ease;
}

.bt-feed-new{
    animation:feedSlideIn .45s ease forwards;
    box-shadow:0 0 0 1px rgba(41,179,255,.25),
               0 0 24px rgba(41,179,255,.18);
}

@keyframes feedSlideIn{
    0%{
        opacity:0;
        transform:translateY(-16px) scale(.98);
    }
    100%{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

/* Sidebar klickbarer machen */
.bt-side-item{
    cursor:pointer;
    position:relative;
}

.bt-side-item.active::before{
    content:"";
    position:absolute;
    left:0;
    top:10px;
    bottom:10px;
    width:4px;
    border-radius:999px;
    background:#29b3ff;
    box-shadow:0 0 16px rgba(41,179,255,.8);
}

/* Etwas lebendigeres Dashboard */
.bt-stat-card{
    animation:softFloat 5s ease-in-out infinite;
}

.bt-stat-card:nth-child(2){
    animation-delay:.5s;
}

.bt-stat-card:nth-child(3){
    animation-delay:1s;
}

@keyframes softFloat{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-4px);
    }
}

/* ==================================================
   LAGE / STAT SECTION
================================================== */

.bt-situation-section{
    background:#ffffff;
    padding:90px 0;
}

.bt-section-kicker{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-bottom:18px;
    font-size:.82rem;
    font-weight:700;
    letter-spacing:.24em;
    text-transform:uppercase;
    color:#005578;
}

.bt-section-kicker::before{
    content:"";
    width:28px;
    height:1px;
    background:#005578;
}

.bt-section-title{
    font-size:3.4rem;
    line-height:1.05;
    font-weight:800;
    color:#081b2d;
    margin-bottom:22px;
}

.bt-section-text{
    font-size:1.25rem;
    line-height:1.75;
    color:#526b7d;
    max-width:850px;
}

.bt-stat-box{
    position:relative;
    height:100%;
    min-height:260px;
    background:#fff;
    border:1px solid rgba(0,85,120,.14);
    border-radius:18px;
    padding:34px 28px 28px;
    box-shadow:0 8px 24px rgba(0,35,60,.05);
    overflow:hidden;
}

.bt-stat-box:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 40px rgba(0,35,60,.09);
    transition:.25s ease;
}

.bt-stat-topline{
    position:absolute;
    top:0;
    left:0;
    width:58px;
    height:4px;
    background:#005578;
    border-radius:0 0 6px 0;
}

.bt-stat-number{
    display:flex;
    align-items:flex-end;
    gap:10px;
    font-size:4.2rem;
    line-height:.9;
    font-weight:800;
    color:#081b2d;
    margin-bottom:22px;
}

.bt-stat-number span{
    font-size:1.65rem;
    line-height:1.1;
    color:#005578;
    font-weight:800;
    margin-bottom:7px;
}

.bt-stat-box p{
    color:#344d60;
    font-size:1rem;
    line-height:1.55;
    margin-bottom:24px;
}

.bt-stat-source{
    border-top:1px dashed rgba(0,85,120,.16);
    padding-top:16px;
    color:#5f788a;
    font-size:.78rem;
}

.bt-stat-number .bt-count{
    font-size:inherit;
    line-height:.9;
    font-weight:800;
    color:#081b2d;
    margin-bottom:0;
}

.bt-stat-number .bt-unit{
    font-size:1.65rem;
    line-height:1.1;
    color:#005578;
    font-weight:800;
    margin-bottom:7px;
}

@media(max-width:991px){
    .bt-section-title{
        font-size:2.6rem;
    }
}

@media(max-width:767px){
    .bt-situation-section{
        padding:60px 0;
    }

    .bt-section-title{
        font-size:2.2rem;
    }

    .bt-section-text{
        font-size:1.05rem;
    }

    .bt-stat-number{
        font-size:3.4rem;
    }
}

/* ==================================================
   CEO / GF STATEMENT
================================================== */

.bt-ceo-section{
    padding:90px 0;
    background:#ffffff;
}

.bt-ceo-card{
    position:relative;
    background:linear-gradient(
        135deg,
        #f6f9fb 0%,
        #edf4f8 100%
    );

    border:1px solid rgba(0,85,120,.08);
    border-radius:28px;
    padding:50px 60px;

    box-shadow:
        0 12px 40px rgba(0,35,60,.06),
        inset 0 1px 0 rgba(255,255,255,.7);

    overflow:hidden;
}

.bt-ceo-card::before{
    content:"";
    position:absolute;
    top:-120px;
    right:-120px;
    width:300px;
    height:300px;
    background:radial-gradient(
        circle,
        rgba(0,85,120,.08),
        transparent 70%
    );
    pointer-events:none;
}

.bt-ceo-image-wrap{
    position:relative;
    display:inline-flex;
    padding:6px;
    border-radius:50%;
    background:#ffffff;
    box-shadow:
        0 10px 30px rgba(0,35,60,.12);
}

.bt-ceo-image{
    width:210px;
    height:210px;
    object-fit:cover;
    border-radius:50%;
    display:block;
}

.bt-ceo-quote-mark{
    font-size:5rem;
    line-height:1;
    color:#005578;
    font-weight:700;
    margin-bottom:-15px;
    opacity:.9;
}

.bt-ceo-quote-open{
    margin-bottom:-15px;
}

.bt-ceo-quote-close{
    text-align:right;
    margin-top:-25px;
    margin-bottom:10px;
}

.bt-ceo-quote{
    font-size:2.2rem;
    line-height:1.35;
    font-weight:700;
    color:#081b2d;
    margin-bottom:10px;
    max-width:1100px;
}

.bt-ceo-person{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:16px;
    color:#5f788a;
    font-size:.95rem;
    text-transform:uppercase;
    letter-spacing:.14em;
}

.bt-ceo-person strong{
    color:#081b2d;
    font-size:1.2rem;
    letter-spacing:normal;
    text-transform:none;
}

.bt-ceo-separator{
    width:1px;
    height:20px;
    background:rgba(0,85,120,.18);
}

.bt-ceo-role{
    color:#6a8497;
}

/* HOVER */
.bt-ceo-card{
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

.bt-ceo-card:hover{
    transform:translateY(-4px);
    box-shadow:
        0 20px 50px rgba(0,35,60,.1),
        inset 0 1px 0 rgba(255,255,255,.8);
}

/* MOBILE */

@media(max-width:991px){

    .bt-ceo-card{
        padding:40px 35px;
    }

    .bt-ceo-quote{
        font-size:1.8rem;
    }

}

@media(max-width:767px){

    .bt-ceo-section{
        padding:60px 0;
    }

    .bt-ceo-card{
        padding:35px 24px;
        border-radius:22px;
    }

    .bt-ceo-image{
		width:145px;
		height:145px;
	}

    .bt-ceo-quote-mark{
        font-size:3.5rem;
        margin-bottom:-5px;
    }

    .bt-ceo-quote{
        font-size:1.35rem;
        line-height:1.45;
        margin-bottom:24px;
    }

    .bt-ceo-person{
        gap:10px;
        font-size:.78rem;
    }

    .bt-ceo-person strong{
        width:100%;
        font-size:1rem;
    }

    .bt-ceo-separator{
        display:none;
    }

}


/* ==================================================
   INTRO TRUST SECTION
================================================== */

.bt-intro-section{
    background:#ffffff;
    padding:90px 0;
}

.bt-intro-card{
    position:relative;
    background:linear-gradient(135deg,#f7fbfd 0%,#ffffff 100%);
    border:1px solid rgba(0,85,120,.12);
    border-radius:28px;
    padding:46px;
    box-shadow:0 14px 38px rgba(0,35,60,.06);
    overflow:hidden;
}

.bt-intro-card::before{
    content:"";
    position:absolute;
    top:0;
    left:46px;
    width:70px;
    height:4px;
    border-radius:0 0 8px 8px;
    background:#005578;
}

.bt-intro-block{
    height:100%;
}

.bt-intro-number{
    display:inline-flex;
    margin-bottom:18px;
    font-size:.85rem;
    font-weight:800;
    letter-spacing:.2em;
    color:#005578;
}

.bt-intro-block h3{
    font-size:1.8rem;
    line-height:1.2;
    font-weight:800;
    color:#081b2d;
    margin-bottom:18px;
}

.bt-intro-block p{
    font-size:1.05rem;
    line-height:1.75;
    color:#435d70;
    margin-bottom:0;
}

.bt-intro-highlight{
    margin-top:42px;
    padding:26px;
    border-radius:22px;
    background:#081b2d;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:28px;
}

.bt-intro-highlight strong{
    display:block;
    color:#ffffff;
    font-size:1.2rem;
    margin-bottom:8px;
}

.bt-intro-highlight span{
    display:block;
    color:#a8bfd1;
    line-height:1.6;
}

.bt-trust-row{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px;
}

.bt-trust-pill{
    background:#fff;
    border:1px solid rgba(0,85,120,.12);
    border-radius:999px;
    padding:12px 18px;
    display:flex;
    align-items:center;
    gap:10px;
    color:#2d4759;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,35,60,.04);
}

.bt-trust-pill i{
    width:24px;
    height:24px;
    border-radius:50%;
    background:#e6f2f8;
    color:#005578;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:.75rem;
}

@media(max-width:991px){
    .bt-intro-card{
        padding:34px;
    }

    .bt-intro-highlight{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:767px){
    .bt-intro-section{
        padding:60px 0;
    }

    .bt-intro-card{
        padding:28px 22px;
        border-radius:22px;
    }

    .bt-intro-block h3{
        font-size:1.45rem;
    }

    .bt-intro-highlight{
        padding:22px;
    }

    .bt-intro-highlight .bt-btn{
        width:100%;
        justify-content:center;
    }
}

/* ==================================================
   PRINCIPLES SECTION
================================================== */

.bt-principles-section{
    background:#eef5f9;
    padding:100px 0;
}

.bt-principles-head{
    max-width:820px;
    margin:0 auto 60px;
    text-align:center;
}

.bt-principles-head .bt-section-kicker{
    justify-content:center;
    margin-bottom:18px;
}

.bt-principles-head .bt-section-title{
    margin-bottom:24px;
}

.bt-principles-head .bt-section-text{
    margin:0 auto;
    max-width:760px;
}

.bt-principle-card{
    position:relative;
    height:100%;
    min-height:330px;
    background:#ffffff;
    border:1px solid rgba(0,85,120,.12);
    border-radius:24px;
    padding:44px 40px 38px;
    box-shadow:0 12px 32px rgba(0,35,60,.04);
    overflow:hidden;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.bt-principle-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 50px rgba(0,35,60,.09);
    border-color:rgba(0,85,120,.22);
}

.bt-principle-meta{
    position:absolute;
    top:28px;
    right:32px;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.16em;
    color:#87bdd7;
    text-transform:uppercase;
}

.bt-principle-icon{
    width:62px;
    height:62px;
    border-radius:18px;
    background:#dcecf4;
    color:#005578;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.55rem;
    margin-bottom:34px;
}

.bt-principle-card h3{
    font-size:1.65rem;
    line-height:1.2;
    font-weight:800;
    color:#081b2d;
    margin-bottom:18px;
}

.bt-principle-card p{
    font-size:1rem;
    line-height:1.7;
    color:#496173;
    margin-bottom:0;
}

@media(max-width:991px){
    .bt-principles-section{
        padding:80px 0;
    }

    .bt-principles-head{
        margin-bottom:42px;
    }
}

@media(max-width:767px){
    .bt-principles-section{
        padding:60px 0;
    }

    .bt-principle-card{
        padding:38px 28px 32px;
        min-height:auto;
    }

    .bt-principle-meta{
        position:static;
        margin-bottom:22px;
    }

    .bt-principle-icon{
        margin-bottom:24px;
    }
}

/* ==================================================
   THREAT TICKER CONTAINER VERSION
================================================== */

.bt-threat-wrapper{
    padding:28px 0;
    background:#f5f8fb;
}

.bt-threat-ticker{
    width:100%;
    height:56px;

    background:#05344a;

    border-radius:18px;

    border:1px solid rgba(255,255,255,.06);

    display:flex;
    align-items:center;

    overflow:hidden;

    box-shadow:
        0 12px 28px rgba(0,35,60,.08),
        inset 0 1px 0 rgba(255,255,255,.04);
}

.bt-threat-label{
    flex:0 0 auto;

    margin-left:18px;

    padding:9px 16px;

    border:1px solid rgba(255,255,255,.14);

    border-radius:10px;

    font-size:.76rem;
    font-weight:800;
    letter-spacing:.14em;

    display:flex;
    align-items:center;
    gap:10px;

    color:#ffffff;

    background:rgba(255,255,255,.05);

    z-index:2;
}

.bt-threat-dot{
    width:9px;
    height:9px;

    border-radius:50%;

    background:#35e6a5;

    box-shadow:0 0 0 rgba(53,230,165,.6);

    animation:btThreatPulse 1.6s infinite;
}

.bt-threat-marquee{
    flex:1;
    overflow:hidden;
    white-space:nowrap;
}

.bt-threat-track{
    display:inline-flex;
    align-items:center;

    gap:54px;

    padding-left:30px;

    animation:btThreatMove 60s linear infinite;
}

.bt-threat-track span{
    font-size:.92rem;
    color:#c6d8e2;
}

.bt-threat-track strong{
    color:#ffffff;
    margin-right:6px;
}

.bt-threat-source{
    margin-left:14px;
    padding:4px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    color:#7fc6e8;
    font-size:.72rem;
    font-style:normal;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
}

@keyframes btThreatMove{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

@keyframes btThreatPulse{
    0%{
        box-shadow:0 0 0 0 rgba(53,230,165,.6);
    }

    70%{
        box-shadow:0 0 0 8px rgba(53,230,165,0);
    }

    100%{
        box-shadow:0 0 0 0 rgba(53,230,165,0);
    }
}

.bt-threat-ticker:hover .bt-threat-track{
    animation-play-state:paused;
}

/* MOBILE */

@media(max-width:767px){

    .bt-threat-wrapper{
        padding:18px 0;
    }

    .bt-threat-ticker{
        height:50px;
        border-radius:14px;
    }

    .bt-threat-label{
        margin-left:10px;
        padding:7px 10px;
        font-size:.66rem;
    }

    .bt-threat-track{
        gap:34px;
        padding-left:20px;
        animation-duration:28s;
    }

    .bt-threat-track span{
        font-size:.76rem;
    }

}

/* ==================================================
   SERVICES SECTION
================================================== */

.bt-services-section{
    background:#ffffff;
    padding:100px 0;
}

.bt-services-head{
    max-width:860px;
    margin:0 auto 34px;
    text-align:center;
}

.bt-services-head .bt-section-kicker{
    justify-content:center;
}

.bt-service-tabs{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:42px;
}

.bt-service-tabs span{
    padding:9px 16px;
    border-radius:999px;
    background:#f3f8fb;
    border:1px solid rgba(0,85,120,.12);
    color:#36566b;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.08em;
}

.bt-services-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:24px;
}


/* Landingpager fix: Bootstrap .row/.col classes must not control the custom BT service grid. */
.bt-services-grid.row{
    display:grid !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

.bt-services-grid > .bt-service-item{
    width:100% !important;
    max-width:none !important;
    flex:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
}

.bt-services-grid > .bt-service-item > .bt-service-card{
    height:100%;
}

.bt-service-card{
    position:relative;
    min-height:360px;
    padding:34px;
    border-radius:24px;
    background:#ffffff;
    border:1px solid rgba(0,85,120,.12);
    box-shadow:0 10px 28px rgba(0,35,60,.04);
    text-decoration:none !important;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    transition:.3s ease;
}

.bt-service-card::before{
    content:"";
    position:absolute;
    top:0;
    left:34px;
    width:56px;
    height:4px;
    background:#005578;
    border-radius:0 0 8px 8px;
}

.bt-service-card:hover{
    transform:translateY(-6px);
    border-color:rgba(0,85,120,.28);
    box-shadow:0 24px 50px rgba(0,35,60,.09);
}

.bt-service-card-featured{
    background:linear-gradient(135deg,#f7fbfd 0%,#ffffff 100%);
}

.bt-service-meta{
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-bottom:30px;
}

.bt-service-meta span{
    color:#87a9bc;
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.14em;
}

.bt-service-meta strong{
    color:#005578;
    font-size:.8rem;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.bt-service-icon{
    width:58px;
    height:58px;
    border-radius:18px;
    background:#dcecf4;
    color:#005578;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.45rem;
    margin-bottom:28px;
}

.bt-service-card h3{
    color:#081b2d;
    font-size:1.55rem;
    line-height:1.2;
    font-weight:800;
    margin-bottom:16px;
}

.bt-service-card p{
    color:#496173;
    line-height:1.7;
    margin-bottom:28px;
}

.bt-service-link{
    margin-top:auto;
    color:#005578;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    gap:9px;
}

.bt-service-link i{
    transition:.25s ease;
}

.bt-service-card:hover .bt-service-link i{
    transform:translateX(4px);
}

@media(max-width:991px){
    .bt-services-grid{
        grid-template-columns:repeat(2, 1fr);
    }
}

@media(max-width:767px){
    .bt-services-section{
        padding:60px 0;
    }

    .bt-services-grid{
        grid-template-columns:1fr;
    }

    .bt-service-card{
        min-height:auto;
        padding:30px 24px;
    }
}

.bt-service-tab{
    border:1px solid rgba(0,85,120,.12);
    background:#f3f8fb;
    color:#36566b;
    padding:9px 16px;
    border-radius:999px;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.08em;
    cursor:pointer;
    transition:.25s ease;
}

.bt-service-tab:hover,
.bt-service-tab.active{
    background:#005578;
    color:#fff;
    border-color:#005578;
}

.bt-service-card.is-hidden{
    display:none;
}

@media(max-width:767px){
    .bt-service-tabs{
        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;
        padding-bottom:6px;
        scrollbar-width:none;
    }

    .bt-service-tabs::-webkit-scrollbar{
        display:none;
    }

    .bt-service-tab{
        flex:0 0 auto;
    }
}

/* ==================================================
   REGULATORIK SECTION
================================================== */

.bt-reg-section{
    background:#ffffff;
    padding:100px 0;
}

.bt-reg-head{
    padding-bottom:48px;
    margin-bottom:48px;
    border-bottom:1px solid rgba(0,85,120,.14);
}

.bt-reg-title{
    font-size:4.2rem;
    line-height:1.06;
    font-weight:300;
    color:#081b2d;
    margin:0;
}

.bt-reg-title span{
    color:#005578;
    font-weight:800;
}

.bt-reg-intro{
    font-size:1.15rem;
    line-height:1.75;
    color:#263f52;
    margin-bottom:24px;
}

.bt-reg-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#081b2d;
    font-weight:800;
    text-decoration:none !important;
    border-bottom:1px solid #081b2d;
    padding-bottom:8px;
}

.bt-reg-link:hover{
    color:#005578;
    border-color:#005578;
}

.bt-reg-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(0,85,120,.14);
    border-left:1px solid rgba(0,85,120,.14);
}

.bt-reg-card{
    min-height:245px;
    padding:34px 30px;
    border-right:1px solid rgba(0,85,120,.14);
    border-bottom:1px solid rgba(0,85,120,.14);
    background:#fff;
    transition:.25s ease;
}

.bt-reg-card:hover{
    background:#f6fbfd;
}

.bt-reg-number{
    display:block;
    color:#496f86;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.18em;
    margin-bottom:20px;
}

.bt-reg-card h3{
    color:#081b2d;
    font-size:1.55rem;
    font-weight:800;
    margin-bottom:18px;
}

.bt-reg-status{
    display:flex;
    align-items:center;
    gap:8px;
    color:#005578;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:26px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(0,85,120,.12);
}

.bt-reg-status span{
    width:10px;
    height:10px;
    border-radius:50%;
    background:#005578;
    box-shadow:0 0 0 4px rgba(0,85,120,.12);
}

.bt-reg-card p{
    color:#244258;
    font-size:.95rem;
    line-height:1.65;
    margin:0;
}

.bt-reg-proof{
    margin-top:44px;
    background:#f3f8fb;
    border:1px solid rgba(0,85,120,.12);
    border-radius:18px;
    padding:28px 32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}

.bt-reg-proof-label{
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#496f86;
}

.bt-reg-proof-items{
    display:flex;
    gap:22px;
    flex-wrap:wrap;
}

.bt-reg-proof-item{
    background:#ffffff;
    border:1px solid rgba(0,85,120,.12);
    border-radius:12px;
    padding:14px 22px;
    min-width:190px;
}

.bt-reg-proof-item strong{
    display:block;
    color:#081b2d;
    font-size:1rem;
    margin-bottom:3px;
}

.bt-reg-proof-item span{
    color:#005578;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

@media(max-width:991px){
    .bt-reg-title{
        font-size:3.2rem;
    }

    .bt-reg-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .bt-reg-proof{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:767px){
    .bt-reg-section{
        padding:60px 0;
    }

    .bt-reg-title{
        font-size:2.6rem;
    }

    .bt-reg-grid{
        grid-template-columns:1fr;
    }

    .bt-reg-card{
        min-height:auto;
        padding:30px 24px;
    }

    .bt-reg-proof-item{
        width:100%;
    }
}

/* ==================================================
   PARTNER / TECH ECOSYSTEM
================================================== */

.bt-partner-section{
    background:#ffffff;
    padding:80px 0;
}

.bt-partner-box{
    background:linear-gradient(135deg,#f6fbfd 0%,#ffffff 100%);
    border:1px solid rgba(0,85,120,.12);
    border-radius:28px;
    padding:44px 0 34px;
    box-shadow:0 14px 38px rgba(0,35,60,.05);
    overflow:hidden;
}

.bt-partner-head{
    padding:0 44px 34px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:40px;
    align-items:end;
}

.bt-partner-title{
    font-size:3rem;
    line-height:1.08;
    font-weight:800;
    color:#081b2d;
    margin:0;
}

.bt-partner-head p{
    color:#496173;
    font-size:1.08rem;
    line-height:1.7;
    margin:0;
}

.bt-partner-marquee{
    position:relative;
    overflow:hidden;
    border-top:1px solid rgba(0,85,120,.10);
    border-bottom:1px solid rgba(0,85,120,.10);
    background:#ffffff;
    padding:24px 0;
}

.bt-partner-marquee::before,
.bt-partner-marquee::after{
    content:"";
    position:absolute;
    top:0;
    width:120px;
    height:100%;
    z-index:2;
    pointer-events:none;
}

.bt-partner-marquee::before{
    left:0;
    background:linear-gradient(to right,#ffffff,rgba(255,255,255,0));
}

.bt-partner-marquee::after{
    right:0;
    background:linear-gradient(to left,#ffffff,rgba(255,255,255,0));
}

.bt-partner-track{
    display:flex;
    align-items:center;
    gap:22px;
    width:max-content;
    animation:btPartnerMove 38s linear infinite;
}

.bt-partner-logo{
    width:170px;
    height:76px;
    border:1px solid rgba(0,85,120,.10);
    border-radius:16px;
    background:#ffffff;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:16px 22px;
    flex:0 0 auto;
}

.bt-partner-logo img{
    max-width:100%;
    max-height:60px;
    object-fit:contain;
    transition:.25s ease;
}

.bt-partner-logo:hover img{
    transform:scale(1.04);
}

.bt-partner-marquee:hover .bt-partner-track{
    animation-play-state:paused;
}

@keyframes btPartnerMove{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

@media(max-width:991px){
    .bt-partner-head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .bt-partner-title{
        font-size:2.4rem;
    }
}

@media(max-width:767px){
    .bt-partner-section{
        padding:60px 0;
    }

    .bt-partner-box{
        border-radius:22px;
    }

    .bt-partner-head{
        padding:0 24px 28px;
    }

    .bt-partner-title{
        font-size:2rem;
    }

    .bt-partner-logo{
        width:145px;
        height:68px;
    }
}

/* ==================================================
   FAQ SECTION
================================================== */

.bt-faq-section{
    background:#ffffff;
    padding:100px 0;
}

.bt-faq-head{
    text-align:center;
    max-width:850px;
    margin:0 auto 50px;
}

.bt-faq-head .bt-section-kicker{
    justify-content:center;
}

.bt-faq-list{
    max-width:980px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.bt-faq-item{
    border:1px solid rgba(0,85,120,.28);
    border-radius:14px;
    background:#ffffff;
    box-shadow:0 8px 22px rgba(0,35,60,.04);
    overflow:hidden;
    transition:.25s ease;
}

.bt-faq-item:hover{
    box-shadow:0 14px 34px rgba(0,35,60,.08);
}

.bt-faq-question{
    width:100%;
    border:0;
    background:transparent;
    padding:24px 28px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    color:#081b2d;
    font-size:1rem;
    font-weight:700;
    text-align:left;
    cursor:pointer;
}

.bt-faq-question i{
    color:#005578;
    font-size:.9rem;
    flex:0 0 auto;
}

.bt-faq-answer{
    max-height:0;
    overflow:hidden;
    padding:0 28px;
    box-sizing:border-box;
    color:#344d60;
    font-size:.98rem;
    line-height:1.75;
    transition:max-height .35s ease, padding-bottom .35s ease;
}

.bt-faq-answer p{
    padding:0;
    margin:0 0 .75rem;
}

.bt-faq-answer p:last-child{
    margin-bottom:0;
}

.bt-faq-item.active .bt-faq-answer{
    padding-bottom:26px;
}

.bt-faq-item.active .bt-faq-answer{
    max-height:260px;
}

.bt-faq-item.active{
    border-color:#005578;
}

@media(max-width:767px){
    .bt-faq-section{
        padding:60px 0;
    }

    .bt-faq-question{
        padding:20px 22px;
        font-size:.95rem;
    }

    .bt-faq-answer{
        padding-left:22px;
        padding-right:22px;
        font-size:.9rem;
    }

    .bt-faq-item.active .bt-faq-answer{
        padding-bottom:22px;
    }
}

/* ==================================================
   PRICING / ASSESSMENT
================================================== */

.bt-pricing-section{
    background:#f5f8fb;
    padding:100px 0;
}

.bt-pricing-head{
    text-align:center;
    max-width:860px;
    margin:0 auto 54px;
}

.bt-pricing-head .bt-section-kicker{
    justify-content:center;
}

.bt-pricing-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}

.bt-price-card{
    position:relative;
    background:#ffffff;
    border:1px solid rgba(0,85,120,.12);
    border-radius:26px;
    padding:38px 34px;
    box-shadow:0 14px 34px rgba(0,35,60,.05);
    transition:.3s ease;
    display:flex;
    flex-direction:column;
}

.bt-price-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 54px rgba(0,35,60,.10);
}

.bt-price-card-featured{
    border:2px solid #005578;
    transform:scale(1.03);
    background:linear-gradient(180deg,#f8fcff 0%,#ffffff 100%);
}

.bt-price-card-featured:hover{
    transform:scale(1.03) translateY(-6px);
}

.bt-price-badge{
    position:absolute;
    top:18px;
    right:18px;
    background:#005578;
    color:#ffffff;
    padding:8px 14px;
    border-radius:999px;
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.12em;
}

.bt-price-label{
    display:block;
    color:#6f90a4;
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.16em;
    margin-bottom:20px;
}

.bt-price-top h3{
    font-size:2rem;
    font-weight:800;
    color:#081b2d;
    margin-bottom:18px;
}

.bt-price{
    font-size:3rem;
    font-weight:800;
    color:#005578;
    line-height:1;
    margin-bottom:20px;
}

.bt-price-top p{
    color:#496173;
    line-height:1.7;
    margin-bottom:30px;
}

.bt-price-features{
    list-style:none;
    padding:0;
    margin:0 0 34px;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.bt-price-features li{
    display:flex;
    align-items:center;
    gap:12px;
    color:#6f8190;
    font-size:.96rem;
}

.bt-price-features li.active{
    color:#12283a;
    font-weight:600;
}

.bt-price-features li.active i{
    color:#00a86b;
}

.bt-price-features li i{
    width:18px;
    text-align:center;
    color:#c3ccd3;
}

.bt-price-btn{
    margin-top:auto;
    width:100%;
    height:56px;
    border-radius:16px;
    background:#005578;
    color:#ffffff !important;
    font-weight:800;
    text-decoration:none !important;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    transition:.25s ease;
}

.bt-price-btn:hover{
    background:#003f59;
    transform:translateY(-2px);
}

.bt-price-btn i{
    transition:.25s ease;
}

.bt-price-btn:hover i{
    transform:translateX(4px);
}

@media(max-width:991px){

    .bt-pricing-grid{
        grid-template-columns:1fr;
    }

    .bt-price-card-featured{
        transform:none;
    }

    .bt-price-card-featured:hover{
        transform:translateY(-6px);
    }

}

@media(max-width:767px){

    .bt-pricing-section{
        padding:60px 0;
    }

    .bt-price-card{
        padding:32px 24px;
        border-radius:22px;
    }

    .bt-price{
        font-size:2.5rem;
    }

}

/* ==================================================
   MODERN FOOTER
================================================== */

.bt-footer{
    background:#05344a !important;
    color:#b9cedb;
    padding:70px 0 26px;
    border:0;
}

.bt-footer a{
    color:#b9cedb;
    text-decoration:none !important;
    transition:.2s ease;
}

.bt-footer a:hover{
    color:#ffffff;
}

.bt-footer-main{
    display:grid;
    grid-template-columns:1.25fr 1fr 1fr 1fr;
    gap:70px;
    padding-bottom:52px;
}

.bt-footer-logo{
    display:inline-flex;
    margin-bottom:26px;
}

.bt-footer-logo img{
    max-width:105px;
    height:auto;
}

.bt-footer-brand p{
    margin-bottom:22px;
    color:#c7d8e2;
    font-size:1rem;
}

.bt-footer-brand address{
    font-style:normal;
    color:#b9cedb;
    line-height:1.75;
    margin:0;
}

.bt-footer-brand strong{
    display:block;
    color:#ffffff;
    margin-bottom:6px;
}

.bt-footer-col h4{
    color:#ffffff;
    font-size:.82rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:24px;
}

.bt-footer-col a{
    display:block;
    margin-bottom:14px;
    font-size:.95rem;
}

.bt-footer-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding-top:24px;
    display:flex;
    justify-content:space-between;
    gap:24px;
    color:#7fb8d2;
    font-size:.86rem;
}

.bt-footer-legal{
    display:flex;
    gap:24px;
}

.bt-footer-legal a{
    color:#7fb8d2;
}

.bt-footer-legal a:hover{
    color:#ffffff;
}

@media(max-width:991px){
    .bt-footer-main{
        grid-template-columns:1fr 1fr;
        gap:44px;
    }
}

@media(max-width:767px){
    .bt-footer{
        padding:52px 0 96px;
    }

    .bt-footer-main{
        grid-template-columns:1fr;
        gap:34px;
    }

    .bt-footer-bottom{
        flex-direction:column;
    }
}

/* ==================================================
   CTA SECTION
================================================== */

.bt-cta-section{
    background:#f5f8fb;
    padding:90px 0 0;
}

.bt-cta-box{
    position:relative;
    overflow:hidden;

    background:
        linear-gradient(135deg,#05344a 0%,#005578 100%);

    border-radius:34px;

    padding:70px;

    box-shadow:
        0 30px 70px rgba(0,35,60,.18);
}

.bt-cta-glow{
    position:absolute;
    right:-120px;
    top:-120px;

    width:380px;
    height:380px;

    background:rgba(41,179,255,.22);

    border-radius:50%;

    filter:blur(80px);

    pointer-events:none;
}

.bt-cta-title{
    font-size:3.4rem;
    line-height:1.05;
    font-weight:800;
    color:#ffffff;
    margin-bottom:26px;
    max-width:720px;
}

.bt-cta-text{
    color:#c8d9e3;
    font-size:1.08rem;
    line-height:1.8;
    max-width:720px;
    margin-bottom:34px;
}

.bt-cta-points{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
}

.bt-cta-point{
    display:flex;
    align-items:center;
    gap:10px;

    color:#ffffff;
    font-weight:600;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.10);

    border-radius:999px;

    padding:12px 18px;
}

.bt-cta-point i{
    color:#35e6a5;
}

.bt-cta-actions{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.bt-cta-btn{
    position:relative;

    min-height:88px;

    border-radius:22px;

    padding:22px 24px;

    display:flex;
    align-items:center;
    gap:18px;

    text-decoration:none !important;

    transition:.3s ease;
}

.bt-cta-btn:hover{
    transform:translateY(-4px);
}

.bt-cta-btn i{
    width:54px;
    height:54px;

    border-radius:16px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:1.2rem;

    flex:0 0 auto;
}

.bt-cta-btn strong{
    display:block;
    font-size:1.05rem;
    margin-bottom:4px;
}

.bt-cta-btn span{
    display:block;
    font-size:.92rem;
    opacity:.82;
}

.bt-cta-btn-primary{
    background:#ffffff;
    color:#081b2d;
}

.bt-cta-btn-primary i{
    background:#dcecf4;
    color:#005578;
}

.bt-cta-btn-primary:hover{
    color:#081b2d;
    box-shadow:0 18px 40px rgba(0,0,0,.16);
}

.bt-cta-btn-secondary{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    color:#ffffff;
}

.bt-cta-btn-secondary i{
    background:rgba(255,255,255,.10);
    color:#ffffff;
}

.bt-cta-btn-secondary:hover{
    color:#ffffff;
    background:rgba(255,255,255,.12);
}

@media(max-width:991px){

    .bt-cta-box{
        padding:50px;
    }

    .bt-cta-title{
        font-size:2.8rem;
    }

    .bt-cta-actions{
        margin-top:40px;
    }

}

@media(max-width:767px){

    .bt-cta-section{
        padding:60px 0 0;
    }

    .bt-cta-box{
        border-radius:26px;
        padding:36px 26px;
    }

    .bt-cta-title{
        font-size:2.1rem;
    }

    .bt-cta-text{
        font-size:.98rem;
    }

    .bt-cta-points{
        flex-direction:column;
        align-items:flex-start;
    }

    .bt-cta-btn{
        min-height:auto;
        padding:18px;
        border-radius:18px;
    }

}

/* ==================================================
   LIGHT CTA SECTION
================================================== */

.bt-cta-light-section{
    background:#f5f8fb;
    padding:90px 0 90px;
}

.bt-cta-light-box{
    position:relative;

    background:
        linear-gradient(
            135deg,
            #f8fcff 0%,
            #ffffff 55%,
            #f1f8fc 100%
        );

    border:1px solid rgba(0,85,120,.10);

    border-radius:32px;

    padding:56px 60px;

    overflow:hidden;

    box-shadow:
        0 18px 50px rgba(0,35,60,.05);
}

.bt-cta-light-box::before{
    content:"";

    position:absolute;

    right:-120px;
    top:-120px;

    width:320px;
    height:320px;

    background:rgba(0,85,120,.06);

    border-radius:50%;

    filter:blur(40px);
}

.bt-cta-light-title{
    font-size:3.2rem;
    line-height:1.05;
    font-weight:800;
    color:#081b2d;
    margin-bottom:24px;
}

.bt-cta-light-text{
    font-size:1.08rem;
    line-height:1.8;
    color:#496173;
    max-width:720px;
    margin:0;
}

.bt-cta-light-actions{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.bt-cta-light-btn{
    min-height:82px;

    border-radius:22px;

    padding:18px 22px;

    display:flex;
    align-items:center;
    gap:18px;

    text-decoration:none !important;

    transition:.28s ease;
}

.bt-cta-light-btn:hover{
    transform:translateY(-3px);
}

.bt-cta-light-btn i{
    width:54px;
    height:54px;

    border-radius:16px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 auto;

    font-size:1.15rem;
}

.bt-cta-light-btn strong{
    display:block;
    font-size:1rem;
    margin-bottom:4px;
}

.bt-cta-light-btn span{
    display:block;
    font-size:.9rem;
}

.bt-cta-light-btn.primary{
    background:#005578;
    color:#ffffff;
    box-shadow:0 14px 34px rgba(0,85,120,.18);
}

.bt-cta-light-btn.primary i{
    background:rgba(255,255,255,.12);
    color:#ffffff;
}

.bt-cta-light-btn.primary span{
    color:rgba(255,255,255,.76);
}

.bt-cta-light-btn.primary:hover{
    color:#ffffff;
    background:#004766;
}

.bt-cta-light-btn.secondary{
    background:#ffffff;

    border:1px solid rgba(0,85,120,.12);

    color:#081b2d;
}

.bt-cta-light-btn.secondary i{
    background:#e6f2f8;
    color:#005578;
}

.bt-cta-light-btn.secondary span{
    color:#607889;
}

.bt-cta-light-btn.secondary:hover{
    color:#081b2d;
    border-color:rgba(0,85,120,.24);
}

@media(max-width:991px){

    .bt-cta-light-box{
        padding:46px;
    }

    .bt-cta-light-title{
        font-size:2.6rem;
    }

    .bt-cta-light-actions{
        margin-top:34px;
    }

}

@media(max-width:767px){

    .bt-cta-light-section{
        padding:60px 0 60px;
    }

    .bt-cta-light-box{
        padding:32px 24px;
        border-radius:24px;
    }

    .bt-cta-light-title{
        font-size:2rem;
    }

    .bt-cta-light-text{
        font-size:.98rem;
    }

    .bt-cta-light-btn{
        min-height:auto;
        padding:16px 18px;
        border-radius:18px;
    }

}

.bt-booking-modal .modal-content{
    border:0;
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 30px 80px rgba(0,35,60,.22);
}

.bt-booking-modal-header{
    padding:22px 26px;
    background:#f7fbfd;
    border-bottom:1px solid rgba(0,85,120,.12);
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.bt-booking-modal-header span{
    display:block;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.16em;
    color:#005578;
    margin-bottom:4px;
}

.bt-booking-modal-header h5{
    margin:0;
    color:#081b2d;
    font-size:1.3rem;
    font-weight:800;
}

.bt-booking-modal-body{
    height:78vh;
    background:#fff;
}

.bt-booking-modal-body iframe{
    width:100%;
    height:100%;
    border:0;
}
/* Landingpager: zusätzliche Blöcke in der BT Intro Section */
.bt-intro-extra-block{
    margin-top: clamp(32px, 5vw, 72px);
}
.bt-intro-extra-block--wide,
.bt-intro-extra-block--split{
    background: #fff;
    border: 1px solid rgba(0, 85, 120, .14);
    border-radius: 28px;
    padding: clamp(28px, 4vw, 52px);
    box-shadow: 0 24px 70px rgba(0, 85, 120, .08);
}
.bt-intro-extra-text{
    color: #29445a;
    font-size: clamp(1rem, 1.15vw, 1.12rem);
    line-height: 1.85;
}
.bt-intro-extra-text > *:first-child{ margin-top: 0; }
.bt-intro-extra-text > *:last-child{ margin-bottom: 0; }
.bt-intro-extra-text p{ margin-bottom: 1.1rem; }
.bt-intro-extra-text h2,
.bt-intro-extra-text h3,
.bt-intro-extra-text h4{
    color: #061728;
    font-weight: 800;
    line-height: 1.18;
    margin-bottom: 1rem;
}
.bt-intro-extra-text ul,
.bt-intro-extra-text ol{
    padding-left: 1.25rem;
    margin-bottom: 1.1rem;
}
.bt-intro-extra-image{
    border-radius: 24px;
    overflow: hidden;
    background: #eef7fb;
    min-height: 260px;
    box-shadow: 0 18px 45px rgba(0, 85, 120, .12);
}
.bt-intro-extra-image img{
    display: block;
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
}
@media (max-width: 991px){
    .bt-intro-extra-block--split{ padding: 24px; }
    .bt-intro-extra-block--image_right .row{ flex-direction: column-reverse; }
}

/* Fix: BT Intro Zusatzblöcke optisch wie die obere Intro-Box */
.bt-intro-extra-block--wide,
.bt-intro-extra-block--split{
    position: relative;
    background: linear-gradient(135deg,#f7fbfd 0%,#ffffff 100%) !important;
    border: 1px solid rgba(0,85,120,.12) !important;
    border-radius: 28px !important;
    padding: 46px !important;
    box-shadow: 0 14px 38px rgba(0,35,60,.06) !important;
    overflow: hidden;
}

.bt-intro-extra-block--wide::before,
.bt-intro-extra-block--split::before{
    content: "";
    position: absolute;
    top: 0;
    left: 46px;
    width: 70px;
    height: 4px;
    border-radius: 0 0 8px 8px;
    background: #005578;
}

.bt-intro-extra-block--wide .bt-intro-extra-text,
.bt-intro-extra-block--split .bt-intro-extra-text{
    position: relative;
    z-index: 1;
    font-size: 1.05rem;
    line-height: 1.75;
    color: #435d70;
}

.bt-intro-extra-block--wide .bt-intro-extra-text p,
.bt-intro-extra-block--split .bt-intro-extra-text p{
    margin: 0 0 1.1rem 0;
}

.bt-intro-extra-block--wide .bt-intro-extra-text ul,
.bt-intro-extra-block--wide .bt-intro-extra-text ol,
.bt-intro-extra-block--split .bt-intro-extra-text ul,
.bt-intro-extra-block--split .bt-intro-extra-text ol{
    margin: 0 0 1.1rem 0;
    padding-left: 1.35rem;
}

.bt-intro-extra-block--wide .bt-intro-extra-text li,
.bt-intro-extra-block--split .bt-intro-extra-text li{
    margin-bottom: .55rem;
}

@media(max-width:991px){
    .bt-intro-extra-block--wide,
    .bt-intro-extra-block--split{
        padding: 34px !important;
    }
}

@media(max-width:767px){
    .bt-intro-extra-block--wide,
    .bt-intro-extra-block--split{
        padding: 28px 22px !important;
        border-radius: 22px !important;
    }
    .bt-intro-extra-block--wide::before,
    .bt-intro-extra-block--split::before{
        left: 28px;
    }
}
