/* Services Section Updates für 4 Leistungen */

/* Abstand nach unten - nur Desktop */
@media screen and (min-width: 800px) {
  .services-section {
    margin-bottom: 150px !important;
  }
}

/* Container breiter für 4 Spalten */
.services-section .container {
  max-width: 1400px;
}

/* Sehr breite Bildschirme (über 1920px) */
@media screen and (min-width: 1921px) {
  .services-section .container {
    max-width: 1550px;
  }
}

/* Zwischenüberschrift zwischen den Service-Gruppen */
.services-section .services-divider {
  text-align: center;
  margin: 130px auto 40px auto;
  max-width: 800px;
}

.services-section .services-divider .divider-title {
  font-size: 28px;
  font-weight: 700;
  color: #1a2030;
  margin-bottom: 12px;
  line-height: 1.3;
}

.services-section .services-divider .divider-subtitle {
  font-size: 17px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.7;
  margin: 0;
}

/* Services Section Head Paragraph - Gleiche Stile wie it-services-header p */
.services-section .head p {
  font-size: 17px;
  font-weight: 400;
  line-height: 1.7;
  color: #64748b;
  margin: 0;
}

/* Grid Layout: Erste Reihe 3 Spalten, Zweite Reihe 3 Spalten */
.services-section .services-blocks .row {
  display: grid !important;
  gap: 24px;
  margin: 0 !important;
  align-items: stretch;
}

/* Erste Reihe: 3 Spalten (Microsoft Azure, IT-Infrastrukturen, IT Security) */
.services-section .services-blocks .services-row-first {
  grid-template-columns: repeat(3, 1fr);
}

/* Zweite Reihe: 3 Spalten (Cloud Workplace, Digitalisierung, Unternehmens-KI) */
.services-section .services-blocks .services-row-second {
  grid-template-columns: repeat(3, 1fr);
}

.services-section .services-blocks .row::before,
.services-section .services-blocks .row::after {
  display: none !important;
}

.services-section .services-blocks .col {
  float: none !important;
  padding: 0 !important;
  width: 100% !important;
  display: block !important;
}

/* Breite Karten über 2 Spalten (nicht mehr benötigt, aber für Kompatibilität behalten) */
.services-section .services-blocks .col.col-wide {
  grid-column: span 2;
}

.services-section .services-blocks .block {
  height: 100%;
  display: flex !important;
  flex-direction: column;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.services-section .services-blocks .block:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.services-section .services-blocks .block .icon {
  flex-shrink: 0;
}

.services-section .services-blocks .block .info {
  flex-grow: 1;
  display: flex !important;
  flex-direction: column;
  justify-content: flex-start;
  position: relative !important;
  padding: 30px 30px 90px 30px;
  text-align: center;
}

/* Icon Hintergründe aktualisiert */
.services-section .services-blocks .block .icon {
  height: 200px !important;
}

.services-section .services-blocks .block .icon.one {
  background: url("../img/icons/azurecloud-white.png") center no-repeat #e0f4fc !important;
  background-size: 80px auto !important;
}

.services-section .services-blocks .block .icon.two {
  background: url("../img/icons/server-white.svg") center no-repeat #e0f7f5 !important;
  background-size: 80px auto !important;
}

/* Gradient Backgrounds für alle Service Cards */

/* Erste Reihe: Microsoft Azure, IT-Infrastrukturen, IT Security */

/* Microsoft Azure - Cyan Gradient mit Hintergrundbild */
.services-section .services-blocks .services-row-first .col:nth-child(1) .block {
  background: linear-gradient(135deg, rgba(13, 173, 234, 0.85), rgba(77, 197, 223, 0.85)), url("../img/Menue/Microsoft-Azure-Metricsiro.webp") center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(1) .block .icon.one {
  background: 
    url("../img/icons/azurecloud-white.png") center no-repeat,
    radial-gradient(circle at center, rgba(13, 173, 234, 0.98) 0%, rgba(13, 173, 234, 0.88) 35%, rgba(77, 197, 223, 0.75) 100%),
    url("../img/Menue/Microsoft-Azure-Metricsiro.webp") center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, center !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(1) .block .info h3 {
  background: linear-gradient(135deg, #0dadea, #4dc5df);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-first .col:nth-child(1) .block .service-more {
  color: #0dadea;
}

.services-section .services-blocks .services-row-first .col:nth-child(1) .block .info .line.azure {
  background: #0dadea !important;
}

/* IT-Infrastrukturen - Teal Gradient mit Hintergrundbild */
.services-section .services-blocks .services-row-first .col:nth-child(2) .block {
  background: linear-gradient(135deg, rgba(0, 169, 157, 0.85), rgba(0, 201, 184, 0.85)), url("../img/Menue/DSC002311.webp") center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(2) .block .icon.two {
  background: 
    url("../img/icons/server-white.svg") center no-repeat,
    radial-gradient(circle at center, rgba(0, 169, 157, 0.98) 0%, rgba(0, 169, 157, 0.88) 35%, rgba(0, 201, 184, 0.75) 100%),
    url("../img/Menue/DSC002311.webp") center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, center !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(2) .block .info h3 {
  background: linear-gradient(135deg, #00a99d, #00c9b8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-first .col:nth-child(2) .block .service-more {
  color: #00a99d;
}

.services-section .services-blocks .services-row-first .col:nth-child(2) .block .info .line.infra {
  background: #00a99d !important;
}

/* IT Security - Rose/Pink Gradient mit Hintergrundbild */
.services-section .services-blocks .services-row-first .col:nth-child(3) .block {
  background: linear-gradient(135deg, rgba(198, 90, 111, 0.85), rgba(233, 122, 143, 0.85)), url("../img/Menue/slider-datenschutz1.webp") center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(3) .block .icon.four {
  background: 
    url("../img/icons/itsecurity-white.svg") center no-repeat,
    radial-gradient(circle at center, rgba(198, 90, 111, 0.98) 0%, rgba(198, 90, 111, 0.88) 35%, rgba(233, 122, 143, 0.75) 100%),
    url("../img/Menue/slider-datenschutz1.webp") center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, center !important;
}

.services-section .services-blocks .services-row-first .col:nth-child(3) .block .info h3 {
  background: linear-gradient(135deg, #C65A6F, #e97a8f);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-first .col:nth-child(3) .block .service-more {
  color: #C65A6F;
}

.services-section .services-blocks .services-row-first .col:nth-child(3) .block .info .line.security {
  background: #C65A6F !important;
}

.services-section .services-blocks .block .icon.three {
  background: url("../img/icons/openai-white.png") center no-repeat #e0e9fc !important;
  background-size: 80px auto !important;
}

.services-section .services-blocks .block .icon.four {
  background: url("../img/icons/itsecurity-white.svg") center no-repeat #fce8ec !important;
  background-size: 80px auto !important;
}

.services-section .services-blocks .block .icon.five {
  background: url("../img/icons/modernworkplace-white.svg") center no-repeat #e0f5f8 !important;
  background-size: 80px auto !important;
}

/* Unternehmens-KI - Icon mit Hintergrundbild (wie Cloud Workplace) - Jetzt Position 2 */
.services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki {
  background: linear-gradient(135deg, rgba(16, 94, 251, 0.85), rgba(25, 154, 251, 0.85)), url("../img/Menue/ki.webp") center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki .icon.ki-icon {
  background: 
    url("../img/icons/openai-white.png") center no-repeat,
    radial-gradient(circle at center, rgba(16, 94, 251, 0.98) 0%, rgba(16, 94, 251, 0.88) 35%, rgba(25, 154, 251, 0.75) 100%),
    url("../img/Menue/ki.webp") center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, center !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki .info h3 {
  background: linear-gradient(135deg, #105efb, #199afb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki .service-more {
  color: #2463eb;
}

.services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki .info .line.ki-line {
  background: #2463eb !important;
}

/* Digitalisierung - Icon mit Hintergrundbild (wie Cloud Workplace) - Jetzt Position 3 */
.services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung {
  background: linear-gradient(135deg, rgba(156, 145, 223, 0.85), rgba(189, 181, 235, 0.85)), url("../img/Menue/process-leistung.webp") center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung .icon.digitalisierung-icon {
  background: 
    url("../img/icons/process.svg") center no-repeat,
    radial-gradient(circle at center, rgba(156, 145, 223, 0.98) 0%, rgba(156, 145, 223, 0.88) 35%, rgba(189, 181, 235, 0.75) 100%),
    url("../img/Menue/process-leistung.webp") center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, center !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung .info h3 {
  background: linear-gradient(135deg, #9c91df, #bdb5eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung .service-more {
  color: #9c91df;
}

.services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung .info .line.digitalisierung-line {
  background: #9c91df !important;
}

/* Cloud Workplace - Zweite Reihe (Position 1) */
.services-section .services-blocks .services-row-second .col:nth-child(1) .block {
  background: linear-gradient(135deg, rgba(0, 160, 200, 0.85), rgba(0, 136, 162, 0.85)), url("../img/Menue/digital-workplace-slider.webp") left center/cover no-repeat !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(1) .block .icon.five {
  background: 
    url("../img/icons/modernworkplace-white.svg") center no-repeat,
    radial-gradient(circle at center, rgba(0, 160, 200, 0.98) 0%, rgba(0, 160, 200, 0.88) 35%, rgba(0, 136, 162, 0.75) 100%),
    url("../img/Menue/digital-workplace-slider.webp") left center/cover no-repeat !important;
  background-size: 80px auto, 100% 100%, cover !important;
  background-position: center, center, left center !important;
}

.services-section .services-blocks .services-row-second .col:nth-child(1) .block .info h3 {
  background: linear-gradient(135deg, #00a0c8, #0088a2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.services-section .services-blocks .services-row-second .col:nth-child(1) .block .service-more {
  color: #0088a2;
}

.services-section .services-blocks .services-row-second .col:nth-child(1) .block .info .line.workplace {
  background: #0088a2 !important;
}

/* Text Styles für Service Cards */

.services-section .services-blocks .block .service-subtitle {
  font-size: 16px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.5;
  margin-bottom: 16px;
}

.services-section .services-blocks .block .info h3 {
  font-size: 24px !important;
  font-weight: 700;
  color: #1a2030;
  margin-bottom: 16px;
  line-height: 1.2 !important;
}

.services-section .services-blocks .block .service-category {
  font-size: 13px;
  font-weight: 600;
  color: #94a3b8;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 16px;
  line-height: 1.4;
}

.services-section .services-blocks .block .service-description {
  font-size: 15px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.6;
  margin-bottom: 20px;
}

.services-section .services-blocks .block .service-more {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%) translateY(-8px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.services-section .services-blocks .block:hover .service-more {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* Linien-Farben - Horizontal über gesamte Breite */
.services-section .services-blocks .block .info .line {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 5px !important;
  transform: none !important;
}

.services-section .services-blocks .block .info .line.azure {
  background: #0dadea !important;
}

.services-section .services-blocks .block .info .line.infra {
  background: #00a99d !important;
}

.services-section .services-blocks .block .info .line.ki {
  background: #2463eb !important;
}

.services-section .services-blocks .block .info .line.security {
  background: #C65A6F !important;
}

/* Vertikale Balken für die 4 oberen Karten (zusätzlich zu horizontalen) */
.services-section .services-blocks .block .info .line-vertical-small {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 5px;
}

.services-section .services-blocks .block .info .azure-line {
  background: #0dadea;
}

.services-section .services-blocks .block .info .infra-line {
  background: #00a99d;
}

.services-section .services-blocks .block .info .workplace-line {
  background: #0088a2;
}

.services-section .services-blocks .block .info .security-line {
  background: #C65A6F;
}

/* Responsive: 2x2 Grid bei kleineren Bildschirmen (bis 1599px) */
@media screen and (max-width: 1599px) {
  .services-section .services-blocks .services-row-first {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  
  .services-section .services-blocks .services-row-second {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  
  .services-section .services-blocks .col.col-wide {
    grid-column: span 2;
  }
}

/* Responsive: 2x2 Grid bei kleineren Bildschirmen (ab 1400px) */
@media screen and (max-width: 1400px) {
  .services-section .services-blocks .services-row-first {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .services-section .services-blocks .services-row-second {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .services-section .container {
    max-width: 1200px;
  }
  
  .services-section .services-blocks .col.col-wide {
    grid-column: span 2;
  }
}

/* Responsive: 1 Spalte auf Mobile */
@media screen and (max-width: 799px) {
  .services-section .services-blocks .services-row-first,
  .services-section .services-blocks .services-row-second {
    grid-template-columns: 1fr !important;
    gap: 30px;
  }
  
  .services-section .services-blocks .col {
    margin-bottom: 0;
  }
  
  .services-section .services-blocks .col.col-wide {
    grid-column: span 1;
  }
  
  .services-section .services-blocks .block .info {
    padding: 25px 25px 45px 25px;
  }
  
  .services-section .services-blocks .block .service-subtitle {
    font-size: 15px;
  }
  
  .services-section .services-blocks .block .info h3 {
    font-size: 20px !important;
  }
  
  .services-section .services-blocks .block .service-description {
    font-size: 14px;
  }
  
  /* Icon-Block Höhe auf Mobile reduzieren */
  .services-section .services-blocks .block .icon.one,
  .services-section .services-blocks .block .icon.two,
  .services-section .services-blocks .block .icon.three,
  .services-section .services-blocks .block .icon.four,
  .services-section .services-blocks .block .icon.five {
    height: 150px !important;
  }
  
  /* Icons auf Mobile um 25% verkleinern (von 80px auf 60px) */
  .services-section .services-blocks .block .icon.one,
  .services-section .services-blocks .block .icon.two,
  .services-section .services-blocks .block .icon.three,
  .services-section .services-blocks .block .icon.four,
  .services-section .services-blocks .block .icon.five {
    background-size: 60px auto !important;
  }
  
  /* Desktop-Regeln auf Mobile: Icon verkleinern, aber Gradient und Hintergrundbild beibehalten */
  .services-section .services-blocks .services-row-first .col:nth-child(1) .block .icon.one {
    background-size: 60px auto, 100% 100%, cover !important;
  }
  
  .services-section .services-blocks .services-row-first .col:nth-child(2) .block .icon.two {
    background-size: 60px auto, 100% 100%, cover !important;
  }
  
  .services-section .services-blocks .services-row-first .col:nth-child(3) .block .icon.four {
    background-size: 60px auto, 100% 100%, cover !important;
  }
  
  .services-section .services-blocks .services-row-second .col:nth-child(1) .block .icon.five {
    background-size: 60px auto, 100% 100%, cover !important;
  }
  
  /* "Mehr erfahren" auf Mobile immer sichtbar und vertikal mittig zwischen Text und Rand */
  .services-section .services-blocks .block .info {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
  }
  
  .services-section .services-blocks .block .service-more {
    opacity: 1 !important;
    position: static !important;
    transform: none !important;
    margin-top: auto;
    margin-bottom: 0;
    align-self: center;
    font-size: 16px !important;
  }
  
  .services-section .services-blocks .block:hover .service-more {
    transform: none !important;
  }
  
  /* Zwischenüberschrift Mobile */
  .services-section .services-divider {
    margin: 60px auto 30px auto;
    padding: 0 !important;
  }
  
  .services-section .services-divider .divider-title {
    font-size: 22px;
  }
  
  .services-section .services-divider .divider-subtitle {
    font-size: 15px;
  }
  
  /* Services Section Head Paragraph Mobile */
  .services-section .head p {
    font-size: 15px;
  }
  
  /* Unternehmens-KI und Digitalisierung auf Mobile: Icon verkleinern, aber Gradient und Hintergrundbild beibehalten */
  .services-section .services-blocks .services-row-second .col:nth-child(2) .block.unternehmens-ki .icon.ki-icon {
    background-size: 60px auto, 100% 100%, cover !important;
  }
  
  .services-section .services-blocks .services-row-second .col:nth-child(3) .block.digitalisierung .icon.digitalisierung-icon {
    background-size: 60px auto, 100% 100%, cover !important;
  }
}

/* Breite Service-Karten Styles */
.services-section .services-blocks .block.wide-block {
  min-height: 180px;
  padding: 35px 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.services-section .services-blocks .block.wide-block .wide-content {
  width: 100%;
  text-align: center;
}

.services-section .services-blocks .block.wide-block h3 {
  font-size: 24px !important;
  font-weight: 700;
  color: #fff !important;
  margin-bottom: 16px;
  line-height: 1.2 !important;
}

.services-section .services-blocks .block.wide-block .service-description {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.6;
  margin-bottom: 20px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.services-section .services-blocks .block.wide-block .service-more {
  position: static;
  transform: translateY(-8px);
  color: #fff;
  opacity: 0;
  display: inline-flex;
  font-size: 15px;
  font-weight: 600;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.services-section .services-blocks .block.wide-block:hover .service-more {
  opacity: 1;
  transform: translateY(0);
}

/* Digitalisierung - Zwei-Spalten Layout */
.services-section .services-blocks .block.digitalisierung {
  background: #fff !important;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 8px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.services-section .services-blocks .block.digitalisierung .wide-content {
  display: grid;
  grid-template-columns: 0.5fr 1.5fr;
  align-items: stretch;
  min-height: 180px;
  flex: 1;
  height: 100%;
}

.services-section .services-blocks .block.digitalisierung .wide-icon {
  background: 
    radial-gradient(circle at center, rgba(156, 145, 223, 0.98) 0%, rgba(156, 145, 223, 0.88) 35%, rgba(189, 181, 235, 0.75) 100%),
    url("../img/Menue/process-leistung.webp") center/cover no-repeat;
  background-size: 100% 100%, cover;
  background-position: center, center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
}

.services-section .services-blocks .block.digitalisierung .wide-icon-img {
  width: 80px;
  height: 80px;
  background: url("../img/icons/process.svg") center no-repeat;
  background-size: 80px auto;
}

.services-section .services-blocks .block.digitalisierung .wide-text {
  padding: 35px 50px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #fff;
  position: relative;
}

.services-section .services-blocks .block.digitalisierung .line-vertical {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 5px;
  background: #9c91df;
}

.services-section .services-blocks .block.digitalisierung .line-right {
  right: 0;
}

.services-section .services-blocks .block.digitalisierung h3 {
  background: linear-gradient(135deg, #9c91df, #bdb5eb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: #1a2030;
  padding-bottom: 4px;
  line-height: 1.3 !important;
}

.services-section .services-blocks .block.digitalisierung .service-description {
  color: #64748b;
}

.services-section .services-blocks .block.digitalisierung .service-more {
  color: #9c91df !important;
}

.services-section .services-blocks .block.digitalisierung:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(156, 145, 223, 0.2);
}

/* Unternehmens-KI - Zwei-Spalten Layout (gespiegelt) */
.services-section .services-blocks .block.unternehmens-ki {
  background: #fff !important;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 8px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.services-section .services-blocks .block.unternehmens-ki .wide-content {
  display: grid;
  grid-template-columns: 1.5fr 0.5fr;
  align-items: stretch;
  min-height: 180px;
  flex: 1;
  height: 100%;
}

.services-section .services-blocks .block.unternehmens-ki .wide-icon {
  background: 
    radial-gradient(circle at center, rgba(16, 94, 251, 0.98) 0%, rgba(16, 94, 251, 0.88) 35%, rgba(25, 154, 251, 0.75) 100%),
    url("../img/Menue/ki.webp") center/cover no-repeat;
  background-size: 100% 100%, cover;
  background-position: center, center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
}

.services-section .services-blocks .block.unternehmens-ki .wide-icon-img {
  width: 80px;
  height: 80px;
  background: url("../img/icons/openai-white.png") center no-repeat;
  background-size: 80px auto;
}

.services-section .services-blocks .block.unternehmens-ki .wide-text {
  padding: 35px 50px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #fff;
  position: relative;
}

.services-section .services-blocks .block.unternehmens-ki .line-vertical {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 5px;
  background: #2463eb;
}

.services-section .services-blocks .block.unternehmens-ki .line-left {
  left: 0;
}

.services-section .services-blocks .block.unternehmens-ki h3 {
  background: linear-gradient(135deg, #105efb, #199afb);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: #1a2030;
  padding-bottom: 4px;
  line-height: 1.3 !important;
}

.services-section .services-blocks .block.unternehmens-ki .service-description {
  color: #64748b;
}

.services-section .services-blocks .block.unternehmens-ki .service-more {
  color: #2463eb !important;
}

.services-section .services-blocks .block.unternehmens-ki:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(36, 99, 235, 0.2);
}

/* Responsive für breite Karten */
@media screen and (max-width: 1400px) {
  .services-section .services-blocks .col.col-wide {
    grid-column: span 2;
  }
  
  .services-section .services-blocks .block.digitalisierung .wide-text {
    padding: 30px 40px;
  }
  
  .services-section .services-blocks .block.unternehmens-ki .wide-text {
    padding: 30px 40px;
  }
}

@media screen and (max-width: 799px) {
  .services-section .services-blocks .block.wide-block {
    padding: 30px 25px;
    min-height: 160px;
  }
  
  .services-section .services-blocks .block.wide-block h3 {
    font-size: 20px !important;
  }
  
  .services-section .services-blocks .block.wide-block .service-description {
    font-size: 14px;
  }
  
  /* Digitalisierung Mobile - Icon oben, Text unten (wie andere Blöcke) */
  .services-section .services-blocks .block.digitalisierung .wide-content {
    grid-template-columns: 1fr;
    display: flex;
    flex-direction: column;
  }
  
  .services-section .services-blocks .block.digitalisierung .wide-icon {
    order: 1;
    height: 150px !important;
    min-height: 150px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .services-section .services-blocks .block.digitalisierung .wide-icon-img {
    width: 60px;
    height: 60px;
    background-size: 60px auto;
  }
  
  .services-section .services-blocks .block.digitalisierung .wide-text {
    order: 2;
    padding: 25px 25px 45px 25px;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  
  /* "Mehr erfahren" für Digitalisierung auf Mobile */
  .services-section .services-blocks .block.digitalisierung .wide-text .service-more {
    opacity: 1 !important;
    position: static !important;
    transform: none !important;
    margin-top: auto;
    margin-bottom: 0;
    align-self: center;
    font-size: 16px !important;
  }
  
  /* Unternehmens-KI Mobile - Icon oben, Text unten (wie andere Blöcke) */
  .services-section .services-blocks .block.unternehmens-ki .wide-content {
    grid-template-columns: 1fr;
    display: flex;
    flex-direction: column;
  }
  
  .services-section .services-blocks .block.unternehmens-ki .wide-icon {
    order: 1;
    height: 150px !important;
    min-height: 150px;
    padding: 0;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .services-section .services-blocks .block.unternehmens-ki .wide-icon-img {
    width: 60px;
    height: 60px;
    background-size: 60px auto !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    flex-shrink: 0;
  }
  
  .services-section .services-blocks .block.unternehmens-ki .wide-text {
    order: 2;
    padding: 25px 25px 45px 25px;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  
  /* "Mehr erfahren" für Unternehmens-KI auf Mobile */
  .services-section .services-blocks .block.unternehmens-ki .wide-text .service-more {
    opacity: 1 !important;
    position: static !important;
    transform: none !important;
    margin-top: auto;
    margin-bottom: 0;
    align-self: center;
    font-size: 16px !important;
  }
}

/* =========================================================
   Subpage Hero (z.B. Placetel VoIP KI)
   ========================================================= */

.routing-badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 20px;
  border-radius: 6px;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  margin: 0;
  position: relative;
}

.routing-badge::before {
  content: '';
  position: absolute;
  inset: 0;
  background-color: #f0f4ff;
  border-radius: 6px;
  z-index: -1;
}

.routing-badge,
.routing-badge .routing-badge-icon {
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}

/* Routing-Badge Links: Hover darf keine andere Textfarbe erzwingen */
a.routing-badge:hover,
a.routing-badge:focus,
a.routing-badge:active,
.routing-badge:hover {
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #00a0c8 !important;
}

@media (max-width: 640px) {
  .routing-badge {
    font-size: 0.75rem;
    padding: 6px 16px;
  }
}

.subpage-hero {
  background-color: #f8f9fa;
  min-height: 100vh;
  /* Abstand vom fixen Header nach unten (~Headerhöhe + 30px) und unten 120px */
  padding: 179px 0 120px;
  box-sizing: border-box;
}

.subpage-hero .subpage-hero-teaser {
  margin: 16px 0 0 0;
  max-width: 58ch;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1rem, 0.25vw + 0.95rem, 1.125rem);
  line-height: 1.65;
}

.subpage-hero .subpage-hero-teaser strong {
  color: rgba(255, 255, 255, 0.98);
}

.subpage-hero .container {
  /* Exakt die gleichen Werte wie der globale .container */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 81.25%; /* Gleich wie Header */
  padding: 0 !important; /* WICHTIG: Überschreibt das padding von @media (max-width: 1530px) */
}

.subpage-hero-panel {
  background: linear-gradient(218deg, #6788ff4d, #0094b0 69% 50%), url(../img/WallpaperFertig.webp);
  background-size: cover;
  background-position: center;
  border-radius: 28px;
  color: #f9fafb;
  box-shadow: 0 6px 8px rgba(0,0,0,0.4);
  /* Höhe: gesamter grauer Bereich (100vh) minus Padding oben/unten */
  min-height: calc(100vh - 179px - 30px);
  box-sizing: border-box;
  display: flex;
  align-items: stretch;
  position: relative;
  overflow: hidden;
}

.subpage-hero-panel-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.subpage-hero-panel-bg-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.subpage-hero-inner {
  max-width: 1600px;
  margin: 0 auto;
  padding: 72px 40px 64px;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  grid-template-rows: auto 1fr auto;
  grid-template-areas:
    "headline text"
    "cards    cards"
    "scroll   scroll";
  gap: 0px 24px;
  /* Verteilt Kopfbereich oben und Karten unten im verfügbaren Raum */
  align-content: space-between;
  position: relative;
  z-index: 2;
}

.subpage-hero-header {
  grid-area: headline;
}

.subpage-hero-kicker {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1px solid #d9e2f3;
  font-size: clamp(0.66rem, 0.04vw + 0.69rem, 0.76rem); /* Base erhöht: ~11.5-12px, größer bei 80% */
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d9e2f3;
  margin-bottom: 16px;
}

.subpage-hero-header h1 {
  font-size: clamp(2.1rem, 0.1vw + 2.8rem, 3.2rem); /* Etwas reduziert: ~48-50px, kleiner bei 90% */
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: #f9fafb;
  margin: 0;
}

.subpage-hero-copy {
  grid-area: text;
  align-self: end; /* Text am Ende der Grid-Area ausrichten */
  color: #ffffffeb;
  font-size: clamp(1rem, 0.06vw + 1.05rem, 1.15rem); /* Base erhöht: ~17-19px, noch größer bei 80% */
  line-height: 1.7;
  padding-top: clamp(4rem, 15vh - 3rem, 20rem); /* Dynamisch: basiert auf Viewport-Höhe */
}

.subpage-hero-cards {
  grid-area: cards;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-self: end;
}

.subpage-hero-card {
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.4);
  min-height: 320px;
  max-height: 400px; /* Reduzierte Höhe für bessere Darstellung */
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.9);
  cursor: pointer;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.subpage-hero-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 40px 120px rgba(15, 23, 42, 1);
}

.subpage-hero-card-image {
  position: relative;
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: saturate(1.1);
  transform: scale(1.03);
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  z-index: 0;
}

.subpage-hero-card:hover .subpage-hero-card-image {
  transform: scale(1.06);
}

.subpage-hero-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(15, 23, 42, 0.85) 0%, rgba(15, 23, 42, 0.65) 30%, rgba(15, 23, 42, 0.35) 60%, rgba(15, 23, 42, 0.15) 80%, transparent 100%);
  z-index: 1;
}

/* Platzhalter-Bilder: auf Mobile NICHT laden (Cards werden dort ausgeblendet) */
.subpage-hero-card-image-1,
.subpage-hero-card-image-2 {
  background-image: none;
}

@media (min-width: 1025px) {
  .subpage-hero-card-image-1 {
    background-image: url("/img/placetelki/ai-agent.avif");
  }

  .subpage-hero-card-image-2 {
    background-image: url("/img/placetelki/grafik-ai-pro-4_skaliert.avif");
  }
}

.subpage-hero-card-number {
  position: absolute;
  top: 22px;
  left: 28px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.6);
  background: rgba(15, 23, 42, 0.9);
  font-size: clamp(0.6rem, 0.03vw + 0.64rem, 0.7rem); /* Base erhöht: ~10.5px, größer bei 80% */
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #e5e7eb;
}

.subpage-hero-card-chip {
  position: absolute;
  top: 52px;
  left: 28px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.6);
  background: rgba(15, 23, 42, 0.9);
  font-size: clamp(0.6rem, 0.03vw + 0.64rem, 0.7rem); /* Base erhöht: ~10.5px, größer bei 80% */
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #e5e7eb;
}

.subpage-hero-card-content {
  position: absolute;
  left: 32px;
  right: 80px;
  bottom: 32px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.subpage-hero-card-label {
  font-size: clamp(0.66rem, 0.04vw + 0.69rem, 0.76rem); /* Base erhöht: ~11.5-12px, größer bei 80% */
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #9ca3af;
}

.subpage-hero-card h2 {
  font-size: clamp(1.1rem, 0.06vw + 1.2rem, 1.4rem); /* Base erhöht: ~20-22px, größer bei 80% */
  margin: 0;
  color: #f9fafb;
}

.subpage-hero-card p {
  font-size: clamp(0.82rem, 0.04vw + 0.88rem, 0.96rem); /* Base erhöht: ~15-16px, größer bei 80% */
  line-height: 1.7;
  color: #d1d5db;
  margin: 0;
}

.subpage-hero-card-cta {
  position: absolute;
  right: 28px;
  bottom: 28px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 14px;
  border: 1px solid rgba(248, 250, 252, 0.85);
  background: rgba(15, 23, 42, 0.8);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #f9fafb;
  font-size: 18px;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
}

.subpage-hero-card-cta span {
  transform: translate(1px, -1px);
}

.subpage-hero-card:hover .subpage-hero-card-cta {
  background: #f9fafb;
  color: #020617;
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.9);
}

/* ========================================
   SCROLL INDICATOR (für Subpage Hero)
   ======================================== */

.scroll-indicator {
  grid-area: scroll;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-top: 25px;
  margin-bottom: -40px;
  justify-self: center;
  opacity: 0.7;
  transition: opacity 0.3s ease;
}

.scroll-indicator:hover {
  opacity: 1;
}

.scroll-icon {
  width: 24px;
  height: 40px;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 12px;
  position: relative;
  display: flex;
  justify-content: center;
  padding-top: 6px;
  animation: scroll-bounce 2s infinite;
}

.scroll-wheel {
  width: 3px;
  height: 6px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 2px;
  animation: scroll-wheel 2s infinite;
}

.scroll-text {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
}

/* Animations */
@keyframes scroll-bounce {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(8px);
  }
}

@keyframes scroll-wheel {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(16px);
  }
}

/* ===== Responsive Optimierungen für Laptops & Tablets ===== */


/* Sehr breite Viewports - greift bei 90% Zoom auf Laptops (bis 2200px) */
@media screen and (max-width: 2200px) {
  .subpage-hero-header h1 {
    font-size: clamp(2rem, 0.09vw + 2.7rem, 3.1rem); /* Reduziert für 90% Zoom: ~46-48px */
  }

  .subpage-hero-copy {
    font-size: clamp(0.9rem, 0.05vw + 0.98rem, 1.08rem); /* Reduziert für 90% Zoom: ~16-17px */
  }

  .subpage-hero-card {
    max-height: 280px; /* Konstante Kartenhöhe für alle Laptop-Zoom-Stufen (80-100%) */
    min-height: 240px;
  }
}

/* Mittelgroße Laptops (bis 1600px) */
@media screen and (max-width: 1600px) {
  /* padding bleibt bei 179px 0 30px vom Standard */

  .subpage-hero-inner {
    padding: 55px 38px 55px;
  }

  .subpage-hero-header h1 {
    font-size: clamp(1.7rem, 0.09vw + 2.5rem, 3rem); /* Reduzierte H1: ~42-48px */
  }

  .subpage-hero-copy {
    font-size: clamp(0.75rem, 0.04vw + 0.85rem, 0.95rem); /* Kleinerer Text */
  }

  .subpage-hero-card {
    max-height: 280px; /* Konstante Kartenhöhe 280px */
    min-height: 240px;
  }
}

/* Sehr breite Bildschirme (bis 1920px) */
@media screen and (max-width: 1920px) {
  .subpage-hero-copy {
    padding-top: clamp(3rem, 12vh - 2rem, 16rem); /* Dynamisch, weniger Abstand */
  }
}

/* Laptops bei 100% Zoom (bis 1920px) - kleineres Scroll-Icon */
@media screen and (max-width: 1920px) {
  .scroll-icon {
    width: 19px; /* ~20% kleiner als Standard (24px) */
    height: 31px; /* ~22% kleiner als Standard (40px) */
    border-width: 1.5px;
    padding-top: 5px;
  }

  .scroll-wheel {
    width: 2.5px;
    height: 5px;
  }

  .scroll-text {
    font-size: 8px;
  }

  .scroll-indicator {
    margin-top: 20px;
    margin-bottom: -25px;
  }
}

/* Mittelgroße Desktops (bis 1600px) */
@media screen and (max-width: 1600px) {
  .subpage-hero-copy {
    padding-top: clamp(2.5rem, 10vh - 1.5rem, 12rem); /* Dynamisch, noch weniger */
  }
}

/* Große Laptops & kleinere Desktops (bis 1440px) */
@media screen and (max-width: 1440px) {
  .subpage-hero {
    min-height: auto; /* Keine feste Höhe mehr */
    padding: 120px 0 30px;
  }

  .subpage-hero-panel {
    min-height: auto; /* Dynamische Höhe basierend auf Inhalt */
    border-radius: 20px; /* Kleinerer Radius */
  }

  .subpage-hero-inner {
    padding: 50px 35px 50px;
    gap: 0px 20px;
  }

  .subpage-hero-header h1 {
    font-size: clamp(1.6rem, 0.08vw + 2.3rem, 2.8rem); /* Kleinere H1: ~38-44px */
  }

  .subpage-hero-copy {
    font-size: clamp(0.72rem, 0.04vw + 0.82rem, 0.92rem); /* Kleinerer Text */
    padding-top: clamp(1.5rem, 6vh - 0.5rem, 7rem); /* Weniger Abstand */
  }

  .subpage-hero-card {
    max-height: 280px; /* Konstante Kartenhöhe 280px wie bei allen Laptop-Größen */
    min-height: 240px;
  }

  .subpage-hero-card h2 {
    font-size: clamp(0.85rem, 0.04vw + 1rem, 1.12rem); /* Kleinere Card-Überschriften */
  }

  .subpage-hero-card p {
    font-size: clamp(0.68rem, 0.02vw + 0.76rem, 0.84rem); /* Kleinerer Card-Text */
  }

  .subpage-hero-kicker {
    font-size: clamp(0.54rem, 0.02vw + 0.58rem, 0.64rem); /* Kleinerer Kicker */
  }

  /* Scroll-Icon bei 1440px etwas kleiner als bei 1920px */
  .scroll-icon {
    width: 18px;
    height: 29px;
  }

  .scroll-wheel {
    width: 2px;
    height: 4.5px;
  }

  .scroll-text {
    font-size: 7.5px;
  }
}

/* Standard Laptops 14-15 Zoll (bis 1280px) */
@media screen and (max-width: 1280px) {
  .subpage-hero {
    padding: 130px 15px 25px 15px !important; /* Top-Padding für kleine Laptops */
  }

  .subpage-hero .container {
    width: 100% !important; /* Wie Header: wechselt auf 100% Breite */
    padding: 0 !important; /* Kein Container-Padding */
  }

  .subpage-hero-panel {
    border-radius: 18px;
  }

  .subpage-hero-inner {
    padding: 40px 30px 40px;
    gap: 0px 16px;
  }

  .subpage-hero-header h1 {
    font-size: clamp(1.5rem, 0.07vw + 2.1rem, 2.5rem); /* Noch kleinere H1: ~34-40px */
  }

  .subpage-hero-copy {
    font-size: clamp(0.68rem, 0.03vw + 0.78rem, 0.86rem); /* Noch kleinerer Text */
    padding-top: clamp(1.2rem, 5vh - 0.5rem, 6rem);
  }

  .subpage-hero-card {
    max-height: 280px; /* Konstante Kartenhöhe 280px */
    min-height: 240px;
  }

  .subpage-hero-card h2 {
    font-size: clamp(0.8rem, 0.03vw + 0.94rem, 1.05rem);
  }

  .subpage-hero-card p {
    font-size: clamp(0.65rem, 0.02vw + 0.73rem, 0.8rem);
  }

  .subpage-hero-kicker {
    font-size: clamp(0.52rem, 0.02vw + 0.56rem, 0.62rem);
  }

  /* Noch kleineres Scroll-Icon auf kleinen Laptops */
  .scroll-icon {
    width: 17px;
    height: 28px;
    padding-top: 3px;
  }

  .scroll-wheel {
    width: 2px;
    height: 4px;
  }

  .scroll-text {
    font-size: 7px;
  }

  .scroll-indicator {
    margin-top: 15px;
  }
}

/* Tablets & kleinere Laptops (bis 1024px) */
@media screen and (max-width: 1024px) {
  .subpage-hero {
    padding: 130px 15px 30px 15px !important; /* Top-Padding für Tablets */
  }

  .subpage-hero .container {
    width: 100% !important; /* Volle Breite */
    padding: 0 !important; /* Kein Container-Padding */
  }

  .subpage-hero-panel {
    border-radius: 20px;
  }

  .subpage-hero-inner {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "headline"
      "text"
      "cards"
      "scroll";
    padding: 40px 30px 40px;
    gap: 20px;
  }

  .subpage-hero-copy {
    padding-top: 0; /* Kein zusätzlicher Abstand mehr im Stack-Layout */
    align-self: start; /* Im Stack-Layout oben ausrichten */
    max-width: none;
    font-size: 18px !important; /* 18px Schriftgröße auf Mobile */
    line-height: 1.4 !important; /* Verringerte Zeilenabstände */
    margin-top: 32px !important; /* Größerer Abstand zur Überschrift */
  }
  
  /* Karten-Container auf Mobile komplett ausblenden */
  .subpage-hero-cards {
    display: none !important;
  }

  .subpage-hero-card {
    max-height: 300px;
    min-height: 240px;
  }

  .scroll-indicator {
    margin-top: 20px;
    margin-bottom: -20px;
  }
}

/* Tablets im Portrait-Modus (bis 900px) */
@media screen and (max-width: 900px) {
  .subpage-hero {
    padding: 130px 15px 25px 15px !important; /* Top-Padding für Tablets Portrait */
  }

  .subpage-hero .container {
    width: 100% !important; /* Volle Breite */
    padding: 0 !important; /* Kein Container-Padding */
  }

  .subpage-hero-cards {
    gap: 16px;
  }

  .subpage-hero-card {
    max-height: 280px;
    min-height: 220px;
  }
}

/* Mobile Buttons - Standard: Ausblenden auf Desktop */
.subpage-hero-mobile-buttons {
  display: none;
}

/* Smartphones & kleine Tablets (bis 799px) */
@media screen and (max-width: 799px) {
  .subpage-hero {
    padding: 130px 15px 20px 15px !important; /* Top-Padding für Smartphones */
    padding-bottom: 60px !important; /* Abstand zum Intro-Bereich auf Mobile */
  }

  .subpage-hero .container {
    width: 100% !important; /* Volle Breite */
    padding: 0 !important; /* Kein Container-Padding */
  }

  .subpage-hero-panel {
    border-radius: 16px;
  }

  .subpage-hero-inner {
    padding: 32px 20px 32px;
    gap: 16px;
  }
  
  .subpage-hero-copy {
    font-size: 18px !important; /* 18px Schriftgröße auf Mobile */
    line-height: 1.4 !important; /* Verringerte Zeilenabstände */
    margin-top: 32px !important; /* Größerer Abstand zur Überschrift */
  }
  
  /* Mobile Buttons - nur auf Mobile sichtbar */
  .subpage-hero-mobile-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
    align-items: flex-start;
  }
  
  .subpage-hero-mobile-buttons .placetel-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: auto;
    text-align: left;
    padding: 16px 24px;
    font-size: 16px;
    margin: 0;
  }
  
  .subpage-hero-mobile-buttons .placetel-btn-primary .subpage-hero-button-arrow {
    color: #0088a2;
  }
  
  .subpage-hero-mobile-button-text {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 16px 24px;
    padding-left: 3px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.95);
    text-align: left;
    transition: color 0.3s ease;
    width: auto;
    margin: 0;
  }
  
  .subpage-hero-mobile-button-text:hover {
    color: #ffffff;
  }
  
  .subpage-hero-mobile-button-text .subpage-hero-button-arrow {
    color: rgba(255, 255, 255, 0.95);
  }
  
  .subpage-hero-mobile-button-text:hover .subpage-hero-button-arrow {
    color: #ffffff;
  }
  
  .subpage-hero-button-arrow {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    transition: transform 0.3s ease, color 0.3s ease;
  }
  
  .subpage-hero-mobile-buttons a:hover .subpage-hero-button-arrow {
    transform: translateX(4px);
  }
  
  /* Karten-Container auf Mobile komplett ausblenden */
  .subpage-hero-cards {
    display: none !important;
  }

  .subpage-hero-card {
    min-height: 240px;
    max-height: none; /* Flexible Höhe */
    border-radius: 20px;
  }

  .subpage-hero-card-content {
    left: 24px;
    right: 70px;
    bottom: 24px;
  }

  .subpage-hero-card-cta {
    width: 36px;
    height: 36px;
    right: 20px;
    bottom: 20px;
    font-size: 16px;
  }

  .scroll-indicator {
    margin-top: 12px;
    margin-bottom: 0;
  }

  .scroll-icon {
    width: 20px;
    height: 34px;
  }
  
  .scroll-text {
    font-size: 8px;
  }
}

/* Sehr kleine Smartphones (bis 480px) */
@media screen and (max-width: 480px) {
  .subpage-hero {
    padding: 130px 15px 16px 15px !important; /* Top-Padding für iPhone */
  }

  .subpage-hero .container {
    width: 100% !important; /* Volle Breite */
    padding: 0 !important; /* Kein Container-Padding */
  }

  .subpage-hero-panel {
    border-radius: 12px;
  }

  .subpage-hero-inner {
    padding: 24px 16px 24px;
    gap: 12px;
  }
  
  .subpage-hero-copy {
    font-size: 18px !important;
    line-height: 0.4 !important;
    margin-top: 17px !important;
  }
  
  .subpage-hero-copy p {
    line-height: 1.7 !important;
  }
  
  /* Karten-Container auf Mobile komplett ausblenden */
  .subpage-hero-cards {
    display: none !important;
  }

  .subpage-hero-kicker {
    padding: 3px 10px;
  }

  .subpage-hero-card {
    min-height: 200px;
    border-radius: 16px;
  }

  .subpage-hero-card-number {
    top: 16px;
    left: 20px;
  }

  .subpage-hero-card-chip {
    top: 40px;
    left: 20px;
    padding: 3px 10px;
  }

  .subpage-hero-card-content {
    left: 20px;
    right: 60px;
    bottom: 20px;
    gap: 6px;
  }

  .subpage-hero-card-cta {
    width: 32px;
    height: 32px;
    right: 16px;
    bottom: 16px;
    font-size: 14px;
    border-radius: 10px;
  }

  .scroll-indicator {
    display: none; /* Auf sehr kleinen Screens ausblenden */
  }
}

/* ========================================
   PLACETEL VOIP KI - CONTENT SEKTIONEN
   ======================================== */

/* Container für alle Placetel-Sektionen */
.container-placetel {
  /* Muss mit der Menü-/Headerbreite (.container) fluchten */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 81.25%;
  max-width: 1800px;
  padding: 0;
}

/* Wie bei .container: bei <=1530px kommt horizontales Padding dazu */
@media screen and (max-width: 1530px) {
  .container-placetel {
    width: 81.25%;
    padding: 0 30px;
  }
}

/* Mobile-Container verhält sich wie .container */
@media screen and (max-width: 799px) {
  .container-placetel {
    width: auto;
    padding: 0 30px;
  }
}

@media screen and (max-width: 768px) {
  .container-placetel {
    padding: 0 24px;
  }
}

/* ========================================
   Hero-/Badge-Row (für Success-Story-Link als Badge)
   ======================================== */
.subpage-hero-meta-row {
  display: flex;
  gap: 16px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.subpage-hero-meta-row .routing-badge {
  cursor: pointer;
}

.placetel-successstory-badge {
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.placetel-successstory-badge:hover {
  transform: none;
}

/* Kicker (kleiner Label über Überschriften) */
.placetel-kicker {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #0088a2;
  margin-bottom: 16px;
  padding: 6px 14px;
  border: 1px solid rgba(0, 136, 162, 0.3);
  border-radius: 999px;
}

/* ========================================
   WARUM PLACETEL VOIP KI? - ASYMMETRISCHES GRID
   ======================================== */

/* Content Container für konsistente Breite */
.content-container {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 40px;
}

.section-spacing {
  padding: 120px 0;
}

/* SEO Intro - exakt wie Hauptseite (.it-services-header) */
.seo-intro {
  text-align: center;
  max-width: 900px;
  margin: 0 auto 80px auto;
}

.seo-intro .subtitle {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6788ff;
  background: #f0f4ff;
  padding: 8px 16px;
  border-radius: 6px;
  margin-bottom: 24px;
}

.seo-intro-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.3;
  color: #282828;
  margin: 0 0 30px 0;
}

.seo-intro-text {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.7;
  color: #64748b;
  margin: 0 0 40px 0;
  padding-bottom: 40px;
  position: relative;
}

.seo-intro-text:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: #e2e8f0;
}

.seo-intro-text strong {
  color: #0088a2;
  font-weight: 600;
}

/* Benefits Grid - Karten-Style */
.seo-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  max-width: 1000px;
  margin: 0 auto;
}

.seo-benefit-item {
  text-align: center;
  padding: 0;
}

.seo-benefit-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 16px auto;
  background: url('../img/icons/check.svg') center no-repeat;
  background-size: contain;
  opacity: 0.8;
}

.seo-benefit-title {
  font-size: 18px;
  font-weight: 600;
  color: #1a2030;
  line-height: 1.4;
  margin-bottom: 8px;
}

.seo-benefit-text {
  font-size: 15px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.6;
  margin-bottom: 20px;
}

.why-section-wrapper {
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
}

/* Header-Bereich: Badge + Überschrift + Beschreibung */
.why-left-area {
  margin-bottom: 0;
}

.why-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6788ff;
  background: #f0f4ff;
  padding: 8px 16px;
  border-radius: 6px;
  margin-bottom: 24px;
}

.why-header {
  margin-bottom: 40px;
}

.why-main-title {
  font-size: 48px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.2;
  margin: 0 auto 24px auto;
  max-width: 800px;
}

.why-main-title .highlight-blue {
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}

/* Beschreibungstext unter der Überschrift */
.why-hero-grid {
  max-width: 800px;
  margin: 0 auto 60px auto;
  display: block;
}

.why-description {
  font-size: 18px;
  line-height: 1.7;
  color: #475569;
  margin: 32px auto 60px auto;
  max-width: 750px;
}

/* Problem/Lösung Container */
.why-comparison-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto;
}

.why-comparison-card {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  padding: 30px 30px 45px 30px;
  text-align: left;
  position: relative;
  cursor: pointer;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.why-comparison-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
  border-color: transparent;
}

/* Horizontale Linie unten (wie bei Service-Blocks) */
.why-comparison-card:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 5px;
  border-radius: 0 0 8px 8px; /* Abgerundete Ecken unten */
}

.why-comparison-card.problem:after {
  background: #ef4444;
}

.why-comparison-card.solution:after {
  background: #0088a2;
}

.why-comparison-label {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: inline-block;
  color: #94a3b8;
}

.why-comparison-title {
  font-size: 24px;
  font-weight: 700;
  color: #1a2030;
  margin: 0 0 20px 0;
  line-height: 1.2;
}

.why-comparison-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.why-comparison-list li {
  font-size: 15px;
  line-height: 1.6;
  color: #64748b;
  margin-bottom: 14px;
  padding-left: 28px;
  position: relative;
}

.why-comparison-list li:last-child {
  margin-bottom: 0;
}

.why-comparison-card.problem .why-comparison-list li:before {
  content: '✕';
  position: absolute;
  left: 0;
  top: 0;
  color: #ef4444;
  font-weight: 700;
  font-size: 16px;
}

.why-comparison-card.solution .why-comparison-list li:before {
  content: '✓';
  position: absolute;
  left: 0;
  top: 0;
  color: #0088a2;
  font-weight: 700;
  font-size: 16px;
}

/* Bild Cards */
.why-image-main,
.why-image-secondary {
  position: relative;
  background: #f0f0f0;
}

.why-image-main img,
.why-image-secondary img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.why-image-main {
  grid-row: span 1;
}

.why-image-secondary {
  grid-row: span 1;
}

/* Stat Cards */
.why-stat-card {
  background: linear-gradient(180deg, #6788ff 0%, #5777ff 100%);
  padding: 40px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  color: #ffffff;
  border: none;
  position: relative;
  overflow: hidden;
}

.why-stat-card::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 200px;
  height: 200px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  pointer-events: none;
}

.why-stat-highlight {
  background: linear-gradient(180deg, #5977ff 0%, #6a88ff 100%);
}

.why-stat-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.95);
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  z-index: 1;
}

.why-stat-label svg {
  opacity: 0.95;
}

.why-stat-number {
  font-size: 120px;
  font-weight: 700;
  line-height: 1;
  color: #ffffff;
  margin-bottom: 0;
  z-index: 1;
}

.why-stat-percent {
  font-size: 56px;
  font-weight: 700;
  margin-left: -4px;
}

.why-stat-number-small {
  font-size: 18px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.95);
  line-height: 1.6;
  z-index: 1;
}

.why-stat-big {
  display: block;
  font-size: 100px;
  font-weight: 700;
  line-height: 1;
  margin-top: 8px;
}

/* Text-Bereich: Optional für zusätzlichen Content */
.why-right-area {
  text-align: center;
  max-width: 700px;
  margin: 60px auto 0 auto;
  padding-top: 0;
}

.why-text-title {
  font-size: 32px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 20px 0;
  line-height: 1.3;
}

.why-text-body {
  font-size: 17px;
  line-height: 1.7;
  color: #475569;
  margin: 0 0 32px 0;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

.btn-with-arrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* Responsive */
@media screen and (max-width: 1200px) {
  .why-comparison-grid {
    gap: 32px;
  }
  
  .why-main-title {
    font-size: 40px;
  }
  
  .why-text-title {
    font-size: 28px;
  }
}

@media screen and (max-width: 900px) {
  .seo-intro-title {
    font-size: 30px;
  }
  
  .seo-intro-text {
    font-size: 18px;
    margin-bottom: 32px;
  }
  
  .seo-benefits {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }

  .seo-benefit-icon {
    width: 40px;
    height: 40px;
    margin-bottom: 12px;
  }

  .seo-benefit-title {
    font-size: 17px;
  }
  
  .seo-benefit-text {
    font-size: 14px;
  }
}

@media screen and (max-width: 600px) {
  .seo-intro .subtitle {
    font-size: 10px;
    padding: 6px 12px;
  }
  
  .seo-intro-title {
    font-size: 26px;
  }
  
  .seo-intro-text {
    font-size: 17px;
  }
  
  .seo-benefits {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .seo-benefit-icon {
    width: 36px;
    height: 36px;
    margin-bottom: 10px;
  }

  .seo-benefit-title {
    font-size: 16px;
  }

  .seo-benefit-text {
    font-size: 14px;
  }
  
  .why-comparison-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  
  .why-comparison-card {
    padding: 25px 25px 45px 25px;
  }
  
  .why-comparison-title {
    font-size: 20px;
  }
  
  .why-comparison-list li {
    font-size: 14px;
  }
  
  .why-description {
    font-size: 17px;
    margin: 24px auto 48px auto;
  }
}

@media screen and (max-width: 968px) {
  .why-hero-grid {
    grid-template-rows: repeat(2, 280px);
  }
  
  .why-stat-number {
    font-size: 90px;
  }
  
  .why-stat-big {
    font-size: 80px;
  }
}

@media screen and (max-width: 799px) {
  .why-hero-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 20px;
  }
  
  .why-grid-item {
    min-height: 240px;
  }
  
  .why-image-main,
  .why-image-secondary {
    min-height: 300px;
  }
  
  .why-stat-number {
    font-size: 80px;
  }
  
  .why-stat-big {
    font-size: 72px;
  }
  
  .why-main-title {
    font-size: 32px;
  }
  
  .why-text-title {
    font-size: 28px;
  }
  
  .why-header {
    margin-bottom: 32px;
  }
  
  .why-section-wrapper {
    gap: 48px;
  }
}

/* ========================================
   FEATURES SEKTION
   ======================================== */

.placetel-features-section {
  padding: 120px 0;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
}

.placetel-features-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 80px;
}

.placetel-features-header h2 {
  font-size: 48px;
  font-weight: 700;
  color: #0f172a;
  margin: 0;
  line-height: 1.2;
}

/* Wenn die Features-Headline bewusst das Problem/Lösungs-Design nutzen soll */
.placetel-features-header h2.problem-solution-subtitle {
  font-size: 2.5rem; /* entspricht 40px bei 16px Root */
  font-weight: 700;
  color: #1a2030;
  line-height: 1.2;
  margin: 0;
}

.placetel-features-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 56px 80px;
  margin-top: 56px;
}

.placetel-feature-card {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  transition: none;
  cursor: default;
}

.placetel-feature-card:hover {
  transform: none;
  box-shadow: none;
  border-color: transparent;
}

.placetel-feature-icon {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 10px;
  background: #eaf2ff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.placetel-feature-icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.placetel-feature-number {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
.placetel-feature-content {
  flex: 1 1 auto;
  min-width: 0;
}

.placetel-feature-card h3 {
  font-size: 20px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 10px 0;
  line-height: 1.3;
}

.placetel-feature-card p {
  font-size: 16px;
  line-height: 1.75;
  color: #64748b;
  margin: 0;
}

@media screen and (max-width: 1200px) {
  .placetel-features-grid {
    gap: 44px 56px;
  }
}

@media screen and (max-width: 968px) {
  .placetel-features-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  
  .placetel-features-header h2 {
    font-size: 36px;
  }

  .placetel-features-header h2.problem-solution-subtitle {
    font-size: 2rem;
  }
  
  .placetel-feature-card {
    gap: 16px;
  }
}

@media screen and (max-width: 640px) {
  .placetel-features-grid {
    grid-template-columns: 1fr;
  }

  .placetel-features-header h2.problem-solution-subtitle {
    font-size: 1.75rem;
  }
}

/* ========================================
  CTA TRENNER (Subpage-Hero-Panel Look)
  ======================================== */

.placetel-cta-separator {
  padding: 60px 0 60px;
  background: #ffffff;
}

/* Container wie im Subpage-Hero: keine zusätzlichen Side-Paddings */
.placetel-cta-separator .container {
  padding: 0 !important;
}

/* Subpage-Hero-Panel ist im Hero sehr hoch – hier als Trenner kompakt */
.placetel-cta-separator .subpage-hero-panel {
  min-height: 280px;
  align-items: center;
}

.placetel-cta-panel-inner {
  width: 100%;
  /* an container-placetel ausrichten, damit CTA-Text bündig zu den Feature-Kacheln startet */
  max-width: none;
  margin: 0 auto;
  /* wie im Subpage-Hero: links/rechts Inset statt bündig am Panelrand */
  padding: 70px 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 28px;
  box-sizing: border-box;
}

.placetel-cta-panel-copy {
  max-width: 780px;
  flex: 1 1 780px;
}

.placetel-cta-panel-title {
  font-size: clamp(1.9rem, 1.1vw + 1.6rem, 2.6rem);
  font-weight: 700;
  line-height: 1.15;
  color: #f9fafb;
  margin: 0 0 12px 0;
  letter-spacing: -0.02em;
}

.placetel-cta-panel-text {
  font-size: 18px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.95);
  margin: 0;
}

.placetel-cta-panel-actions {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: flex-start;
  margin-left: 0;
  flex-wrap: wrap;
}

.placetel-cta-panel-badges {
  margin-top: 18px;
}

@media screen and (max-width: 968px) {
  .placetel-cta-panel-inner {
    padding: 44px 40px;
    flex-direction: column;
    align-items: flex-start;
  }

  .placetel-cta-panel-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

@media screen and (max-width: 640px) {
  .placetel-cta-panel-inner {
    padding: 36px 28px;
  }

  .placetel-cta-panel-text {
    font-size: 16px;
  }
}

/* ========================================
  ANWENDUNGSFÄLLE / BRANCHEN
  ======================================== */

.placetel-usecases-section {
  padding: 120px 0;
  background: #ffffff;
}

.placetel-usecases-header {
  text-align: center;
  max-width: 900px;
  margin: 0 auto 70px;
}

.placetel-usecases-header .routing-badge {
  margin-bottom: 16px;
}

.placetel-usecases-header .why-description {
  margin: 24px auto 0;
}

.placetel-usecases-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.placetel-usecase-item {
  /* AOS liegt auf diesem Wrapper (wie bei euren anderen Kacheln) */
}

.placetel-usecase-card {
  position: relative;
  background: #ffffff;
  border-radius: 18px;
  padding: 34px 32px 30px;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 18px 60px rgba(15, 23, 42, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, border-color 0.25s ease;
  overflow: hidden;
}

.placetel-usecase-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #eaf2ff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  color: #3b82f6;
}

.placetel-usecase-icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.placetel-usecase-card h3 {
  font-size: 20px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 8px 0;
  line-height: 1.25;
}

.placetel-usecase-link {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  color: #3b82f6;
  margin-bottom: 12px;
  text-decoration: none;
}

.placetel-usecase-link:hover {
  text-decoration: underline;
}

.placetel-usecase-card p {
  font-size: 16px;
  line-height: 1.7;
  color: #64748b;
  margin: 0;
}

.placetel-usecase-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  font-size: 15px;
  font-weight: 600;
  color: #3b82f6;
  text-decoration: none;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.placetel-usecase-card:hover .placetel-usecase-cta,
.placetel-usecase-card.is-featured .placetel-usecase-cta {
  opacity: 1;
  transform: translateY(0);
}

/* Featured / Hover wie im Screenshot (blau) */
.placetel-usecase-card.is-featured,
.placetel-usecase-card:hover {
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 55%, #6788ff 100%);
  border-color: rgba(255, 255, 255, 0.22);
  box-shadow: 0 24px 90px rgba(15, 23, 42, 0.18);
  transform: translateY(-6px);
}

.placetel-usecase-card.is-featured h3,
.placetel-usecase-card:hover h3,
.placetel-usecase-card.is-featured p,
.placetel-usecase-card:hover p {
  color: rgba(255, 255, 255, 0.96);
}

.placetel-usecase-card.is-featured .placetel-usecase-link,
.placetel-usecase-card:hover .placetel-usecase-link,
.placetel-usecase-card.is-featured .placetel-usecase-cta,
.placetel-usecase-card:hover .placetel-usecase-cta {
  color: #ffffff;
}

.placetel-usecase-card.is-featured .placetel-usecase-icon,
.placetel-usecase-card:hover .placetel-usecase-icon {
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

@media screen and (min-width: 769px) {
  .placetel-usecases-grid {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 1200px) {
  .placetel-usecases-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (max-width: 768px) {
  .placetel-usecases-section {
    padding: 90px 0;
  }

  .placetel-usecases-header {
    margin-bottom: 50px;
  }

  .placetel-usecases-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .placetel-usecase-card {
    padding: 28px 24px 24px;
    transform: none;
  }

  .placetel-usecase-card:hover,
  .placetel-usecase-card.is-featured {
    transform: none;
  }
}

/* ========================================
  IN 4 SCHRITTEN ZUR KI-TELEFONIE
  ======================================== */

.placetel-steps-section {
  padding: 120px 0;
  background: #f8f9fa;
}

.placetel-steps-header {
  text-align: center;
  max-width: 900px;
  margin: 0 auto 70px;
}

.placetel-steps-header .routing-badge {
  margin-bottom: 16px;
}

.placetel-steps-header .why-description {
  margin: 24px auto 0;
}

/* Timeline Layout (wie Beispielbild) */
.placetel-steps-timeline {
  --progress: 50%;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}

.placetel-steps-track {
  position: absolute;
  left: 0;
  right: 0;
  top: 46px;
  height: 2px;
  background: rgba(148, 163, 184, 0.35);
}

.placetel-steps-track::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 2px;
  width: var(--progress);
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
}

.placetel-steps-nodes {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

.placetel-step-node {
  text-align: center;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.placetel-step-circle {
  width: 92px;
  height: 92px;
  border-radius: 999px;
  margin: 0 auto 18px;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.placetel-step-circle svg {
  display: none;
}

.placetel-step-circle-number {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* Hover-Lift wie bei euren anderen Kacheln */
.placetel-step-node:hover .placetel-step-circle {
  transform: translateY(-6px);
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.10);
}

.placetel-step-node.is-active .placetel-step-circle {
  /* Aktueller Schritt: immer sichtbar (Shadow), aber ohne Lift */
  background: #f8f9fa;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.10);
}

.placetel-step-node.is-done .placetel-step-circle {
  background: linear-gradient(135deg, #0ea5e9 0%, #3b82f6 55%, #6788ff 100%);
  border: 0;
  color: #ffffff;
}

.placetel-step-node.is-done .placetel-step-circle svg {
  display: block;
}

.placetel-step-node.is-done .placetel-step-circle-number {
  display: none;
}

.placetel-step-node.is-active .placetel-step-circle {
  background: #f8f9fa;
  border: 2px solid rgba(59, 130, 246, 0.9);
  color: rgba(59, 130, 246, 0.95);
}

.placetel-step-node.is-upcoming .placetel-step-circle {
  background: #ffffff;
  border: 1px solid rgba(203, 213, 225, 0.7);
  color: rgba(148, 163, 184, 0.75);
}

.placetel-step-meta {
  max-width: 260px;
  margin: 0 auto;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 34px 32px 10px;
  justify-content: center;
}

.placetel-step-node:hover .placetel-step-meta {
  transform: none;
}

.placetel-step-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0f172a;
  font-weight: 700;
  font-size: 20px;
  margin-bottom: 0;
  justify-content: center;
  min-height: 28px;
}

.placetel-step-label svg {
  color: rgba(59, 130, 246, 0.9);
}

.placetel-step-node.is-upcoming .placetel-step-label,
.placetel-step-node.is-upcoming .placetel-step-label svg {
  color: rgba(148, 163, 184, 0.8);
}

.placetel-step-meta p {
  font-size: 16px;
  line-height: 1.5;
  color: #64748b;
  margin: 0;
  /* gleiche Höhe der Beschreibung (2 Zeilen) */
  min-height: 72px;
}

/* Fact-Kachel separat unter "Erstberatung" */
.placetel-steps-facts-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  max-width: 1400px;
  width: 100%;
  margin: 18px auto 0;
}

.placetel-steps-fact-card {
  position: relative;
  border-radius: 18px;
  padding: 22px 22px;
  overflow: hidden;
  /* default = "locked" / ruhig */
  color: #0f172a;
  background: #ffffff;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 16px 50px rgba(15, 23, 42, 0.06);
  min-height: 140px;
  display: flex;
  flex-direction: column;
}

.placetel-steps-fact-card::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
}

/* Nur Step 1 bekommt beim Reveal den kräftigen Verlauf – die anderen bleiben clean und werden nur entblurt */
.placetel-steps-fact-card[data-steps-fact-step="1"].is-revealed {
  color: rgba(255, 255, 255, 0.96);
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  border-color: rgba(255, 255, 255, 0.22);
  box-shadow: 0 18px 60px rgba(15, 23, 42, 0.14);
}

.placetel-steps-fact-kicker {
  display: inline-block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(15, 23, 42, 0.72);
  margin-bottom: 10px;
}

.placetel-steps-fact-card[data-steps-fact-step="1"].is-revealed .placetel-steps-fact-kicker {
  color: rgba(255, 255, 255, 0.92);
}

.placetel-steps-fact-text {
  font-size: 16px;
  line-height: 1.55;
  margin: 0;
  color: rgba(15, 23, 42, 0.72);
}

.placetel-steps-fact-body {
  opacity: 0.45;
  filter: blur(2.2px);
  transition: opacity 220ms ease, filter 220ms ease;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}

.placetel-steps-fact-card.is-revealed .placetel-steps-fact-body {
  opacity: 1;
  filter: blur(0);
}

.placetel-steps-fact-card[data-steps-fact-step="1"].is-revealed .placetel-steps-fact-text {
  color: rgba(255, 255, 255, 0.96);
}

.placetel-steps-fact-text strong {
  font-weight: 800;
  color: rgba(15, 23, 42, 0.92);
}

.placetel-steps-fact-card[data-steps-fact-step="1"].is-revealed .placetel-steps-fact-text strong {
  color: #ffffff;
}

.placetel-step-node.is-upcoming .placetel-step-meta p {
  color: rgba(148, 163, 184, 0.8);
}

.placetel-steps-footer {
  margin-top: 48px;
  text-align: center;
}

.placetel-steps-next {
  /* nutzt jetzt das Design von .placetel-btn-primary */
  border: 0;
  cursor: pointer;
}

/* Stepper-CTA: bläulicher Verlauf + weiße Schrift */
.placetel-steps-section .placetel-steps-next.placetel-btn-primary {
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  color: #ffffff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.18);
}

.placetel-steps-section .placetel-steps-next.placetel-btn-primary:hover {
  background: linear-gradient(90deg, #00a0c8 0%, rgb(103, 136, 255) 100%);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.22);
}

.placetel-steps-complete-cta {
  margin: 28px auto 0;
  max-width: 900px;
  padding: 14px 18px;
  border-radius: 14px;
  background: rgba(248, 249, 250, 0.9);
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.06);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  animation: placetelFadeUp 240ms ease-out both;
}

/* Sicherstellen: CTA erscheint wirklich nur, wenn JS das hidden-Attribut entfernt */
.placetel-steps-complete-cta[hidden] {
  display: none !important;
}

.placetel-steps-complete-text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.55;
  color: #475569;
  margin: 0;
}

.placetel-steps-complete-badge {
  text-decoration: none;
}

.placetel-steps-complete-badge:hover {
  text-decoration: none;
}

.placetel-steps-complete-badges {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
}

@keyframes placetelFadeUp {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media screen and (max-width: 1200px) {
  .placetel-steps-timeline {
    max-width: 1400px;
  }
}

@media screen and (max-width: 768px) {
  .placetel-steps-section {
    padding: 90px 0;
  }

  .placetel-steps-header {
    margin-bottom: 50px;
  }

  /* Mobil: untereinander */
  .placetel-steps-track {
    display: none;
  }

  .placetel-steps-nodes {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .placetel-step-node {
    text-align: left;
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 16px;
    align-items: center;
  }

  .placetel-step-circle {
    margin: 0;
  }

  .placetel-step-meta {
    max-width: none;
    margin: 0;
  }

  .placetel-step-label {
    justify-content: flex-start;
  }

  .placetel-step-meta {
    min-height: 0;
  }

  .placetel-step-meta p {
    min-height: 0;
  }

  .placetel-steps-facts-grid {
    grid-template-columns: 1fr;
  }

  .placetel-steps-fact-card {
    grid-column: auto;
  }
}

/* ========================================
   BENEFITS / USP SEKTION
   ======================================== */

.placetel-benefits-section {
  padding: 120px 0;
  background: #0f172a;
  color: #ffffff;
}

.placetel-benefits-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 80px;
}

.placetel-benefits-header h2:not(.problem-solution-subtitle) {
  font-size: 48px;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
}

.placetel-benefits-header .placetel-kicker {
  color: #67e8f9;
  border-color: rgba(103, 232, 249, 0.3);
}

.placetel-benefits-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  margin-top: 60px;
}

.placetel-benefit-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 48px;
  transition: all 0.3s ease;
}

.placetel-benefit-card:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(0, 136, 162, 0.5);
  transform: translateY(-4px);
}

.placetel-benefit-header {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 20px;
}

.placetel-benefit-number {
  font-size: 32px;
  font-weight: 700;
  color: #0088a2;
  min-width: 60px;
}

.placetel-benefit-card h3 {
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  line-height: 1.3;
}

.placetel-benefit-card p {
  font-size: 16px;
  line-height: 1.7;
  color: #cbd5e1;
  margin: 0;
}

@media screen and (max-width: 968px) {
  .placetel-benefits-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  
  .placetel-benefits-header h2:not(.problem-solution-subtitle) {
    font-size: 36px;
  }
  
  .placetel-benefit-card {
    padding: 36px;
  }
}

/* ========================================
   MID-PAGE CTA
   ======================================== */

.placetel-cta-mid {
  padding: 100px 0;
  background: linear-gradient(135deg, #0088a2 0%, #006b84 100%);
}

.placetel-cta-mid-inner {
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 80px 60px;
  background: rgba(255, 255, 255, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-radius: 28px;
  backdrop-filter: blur(10px);
}

.placetel-cta-mid-inner h2 {
  font-size: 48px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 24px 0;
  line-height: 1.2;
}

.placetel-cta-mid-inner p {
  font-size: 20px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.95);
  margin: 0 0 40px 0;
}

.placetel-cta-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}

.placetel-btn-primary,
.placetel-btn-secondary {
  display: inline-block;
  padding: 18px 48px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 12px;
  transition: all 0.3s ease;
  cursor: pointer;
}

.placetel-btn-primary {
  background: #ffffff;
  color: #0088a2;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.placetel-btn-primary:hover {
  background: #f0f9ff;
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2);
}

.placetel-btn-secondary {
  background: transparent;
  color: #ffffff;
  border: 2px solid rgba(255, 255, 255, 0.4);
}

.placetel-btn-secondary:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.8);
  transform: translateY(-2px);
}

@media screen and (max-width: 768px) {
  .placetel-cta-mid-inner {
    padding: 60px 40px;
  }
  
  .placetel-cta-mid-inner h2 {
    font-size: 36px;
  }
  
  .placetel-cta-mid-inner p {
    font-size: 18px;
  }
  
  .placetel-cta-buttons {
    flex-direction: column;
    align-items: stretch;
  }
  
  .placetel-btn-primary,
  .placetel-btn-secondary {
    padding: 16px 36px;
  }
}

/* ========================================
   DEEP DIVE SEKTION
   ======================================== */

.placetel-deep-dive {
  padding: 120px 0;
  background: #ffffff;
}

.placetel-deep-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 80px;
}

.placetel-deep-header h2 {
  font-size: 48px;
  font-weight: 700;
  color: #0f172a;
  margin: 0;
  line-height: 1.2;
}

.placetel-deep-content {
  max-width: 1000px;
  margin: 0 auto;
}

.placetel-deep-block {
  margin-bottom: 80px;
}

.placetel-deep-block:last-child {
  margin-bottom: 0;
}

.placetel-deep-block h3 {
  font-size: 32px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 24px 0;
  line-height: 1.3;
}

.placetel-deep-block h4 {
  font-size: 22px;
  font-weight: 700;
  color: #0088a2;
  margin: 32px 0 16px 0;
  line-height: 1.3;
}

.placetel-deep-block p {
  font-size: 17px;
  line-height: 1.8;
  color: #475569;
  margin: 0 0 20px 0;
}

.placetel-deep-block ul {
  list-style: none;
  padding: 0;
  margin: 24px 0;
}

.placetel-deep-block li {
  font-size: 17px;
  line-height: 1.8;
  color: #475569;
  padding-left: 36px;
  margin-bottom: 16px;
  position: relative;
}

.placetel-deep-block li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #0088a2;
  font-weight: 700;
  font-size: 20px;
}

.placetel-example {
  background: #f8f9fa;
  border-left: 4px solid #0088a2;
  padding: 32px;
  margin: 32px 0;
  border-radius: 12px;
}

.placetel-use-cases {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 32px;
}

.placetel-use-case {
  background: #f0f9ff;
  border: 1px solid #bae6f3;
  border-radius: 12px;
  padding: 32px;
  transition: all 0.3s ease;
}

.placetel-use-case:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 136, 162, 0.15);
}

.placetel-use-case h4 {
  font-size: 20px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 12px 0;
}

.placetel-use-case p {
  font-size: 15px;
  color: #475569;
  margin: 0;
}

@media screen and (max-width: 968px) {
  .placetel-deep-header h2 {
    font-size: 36px;
  }
  
  .placetel-deep-block h3 {
    font-size: 28px;
  }
  
  .placetel-use-cases {
    grid-template-columns: 1fr;
  }
  
  .placetel-example {
    padding: 24px;
  }
}

/* ========================================
   FAQ SEKTION
   ======================================== */

.placetel-faq-section {
  padding: 120px 0;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
}

.placetel-faq-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 80px;
}

.placetel-faq-header h2 {
  font-size: 48px;
  font-weight: 700;
  color: #0f172a;
  margin: 0;
  line-height: 1.2;
}

.placetel-faq-list {
  max-width: 1000px;
  margin: 0 auto;
}

.placetel-faq-item {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 40px;
  margin-bottom: 24px;
  transition: all 0.3s ease;
}

.placetel-faq-item:hover {
  box-shadow: 0 12px 32px rgba(0, 136, 162, 0.1);
  border-color: #0088a2;
}

.placetel-faq-item h3 {
  font-size: 24px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 20px 0;
  line-height: 1.3;
}

.placetel-faq-answer p {
  font-size: 17px;
  line-height: 1.8;
  color: #475569;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .placetel-faq-header h2 {
    font-size: 36px;
  }
  
  .placetel-faq-item {
    padding: 32px 24px;
  }
  
  .placetel-faq-item h3 {
    font-size: 20px;
  }
  
  .placetel-faq-answer p {
    font-size: 16px;
  }
}

/* ========================================
   FINAL CTA SEKTION
   ======================================== */

.placetel-final-cta {
  padding: 120px 0;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  position: relative;
  overflow: hidden;
}

.placetel-final-cta::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at top right, rgba(0, 136, 162, 0.2), transparent 50%);
  pointer-events: none;
}

.placetel-final-cta-inner {
  position: relative;
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 80px 60px;
  background: rgba(255, 255, 255, 0.05);
  border: 2px solid rgba(255, 255, 255, 0.1);
  border-radius: 28px;
  backdrop-filter: blur(10px);
}

.placetel-final-cta-inner h2 {
  font-size: 52px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 24px 0;
  line-height: 1.2;
}

.placetel-final-cta-inner p {
  font-size: 20px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.9);
  margin: 0 0 40px 0;
}

.placetel-final-cta-benefits {
  display: flex;
  gap: 32px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 48px;
}

.placetel-final-cta-benefits span {
  font-size: 16px;
  font-weight: 600;
  color: #67e8f9;
  display: flex;
  align-items: center;
  gap: 8px;
}

.placetel-btn-final {
  display: inline-block;
  padding: 20px 56px;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  background: linear-gradient(135deg, #0088a2 0%, #00b4d8 100%);
  color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 12px 40px rgba(0, 136, 162, 0.4);
  transition: all 0.3s ease;
}

.placetel-btn-final:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 56px rgba(0, 136, 162, 0.5);
  background: linear-gradient(135deg, #006b84 0%, #0088a2 100%);
}

@media screen and (max-width: 768px) {
  .placetel-final-cta-inner {
    padding: 60px 40px;
  }
  
  .placetel-final-cta-inner h2 {
    font-size: 36px;
  }
  
  .placetel-final-cta-inner p {
    font-size: 18px;
  }
  
  .placetel-final-cta-benefits {
    flex-direction: column;
    gap: 16px;
    align-items: center;
  }
  
  .placetel-btn-final {
    padding: 18px 40px;
    font-size: 16px;
  }
}



