/* ==========================================================================
   KOBIL — IDentity: Pre-Footer CTA
   Foto-Karte (572px, Radius 12) mit Corporate-Foto, weißem Verlaufs-Scrim
   links (617px breit, in Figma um -90° gedrehtes Gradient-Rect) und
   linksbündiger Copy-Spalte (539px) + Kerben-Button wie Homepage-CTA.
   ========================================================================== */

.sec-identity-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 572px;
  padding: 48px 40px;
  border-radius: var(--radius-sm);
}

.sec-identity-cta__photo {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Reproduziert den Figma-Crop (Bild 167.83% hoch, top -37.04%) */
  object-position: 50% 54.6%;
}

/* Weißer Scrim: in Figma ein -90° gedrehtes 572x617-Rect mit Verlauf
   weiß(0.9)→transparent bei 80% Opacity → links→rechts, 0.72→0 */
.sec-identity-cta__scrim {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 617px;
  max-width: 100%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.72) 0%, rgba(255, 255, 255, 0) 100%);
}

/* ---- Copy-Spalte: links, vertikal zentriert ---- */

.sec-identity-cta__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 48px;
  width: 100%;
  max-width: 539px;
}

.sec-identity-cta__copy {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sec-identity-cta__eyebrow {
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  color: var(--blue);
}

.sec-identity-cta__title {
  font-size: 40px;
  line-height: 50px;
  font-weight: 700;
  color: var(--navy);
}

/* ---- Button mit diagonaler Kerbe unten rechts (Figma-Shapes als Maske) ---- */

.sec-identity-cta__btn {
  position: relative;
  isolation: isolate;
  height: 40px;
  padding: 4px 20px 4px 16px;
  gap: 8px;
  font-size: 14px;
  line-height: 18px;
  border-radius: 4px;
  color: var(--white);
}

.sec-identity-cta__btn::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--blue);
  -webkit-mask-image: url("/assets/products/identity/cta/btn-body.svg"),
    url("/assets/products/identity/cta/btn-end.svg");
  mask-image: url("/assets/products/identity/cta/btn-body.svg"),
    url("/assets/products/identity/cta/btn-end.svg");
  -webkit-mask-position: left center, right center;
  mask-position: left center, right center;
  -webkit-mask-size: calc(100% - 40px) 100%, 67px 100%;
  mask-size: calc(100% - 40px) 100%, 67px 100%;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
  transition: background-color var(--dur) var(--ease);
}

.sec-identity-cta__btn:hover::before {
  background: #1e4fd6;
}

.sec-identity-cta__btn:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}

.sec-identity-cta__btn-icon {
  transition: transform var(--dur) var(--ease);
}

.sec-identity-cta__btn:hover .sec-identity-cta__btn-icon {
  transform: translateX(3px);
}

/* ---- Responsive ---- */

@media (max-width: 1024px) {
  .sec-identity-cta {
    min-height: 520px;
  }

  .sec-identity-cta__title {
    font-size: 36px;
    line-height: 46px;
  }
}

@media (max-width: 768px) {
  .sec-identity-cta {
    min-height: 460px;
    padding: 48px 24px;
  }

  /* Foto rückt auf schmalen Screens weiter unter den Text —
     Scrim volle Breite für Lesbarkeit */
  .sec-identity-cta__scrim {
    width: 100%;
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.8) 0%,
      rgba(255, 255, 255, 0.35) 100%
    );
  }

  .sec-identity-cta__content {
    gap: 32px;
  }

  .sec-identity-cta__title {
    font-size: 32px;
    line-height: 42px;
  }
}

@media (max-width: 480px) {
  .sec-identity-cta {
    min-height: 440px;
    padding: 40px 20px;
  }

  .sec-identity-cta__eyebrow {
    font-size: 20px;
    line-height: 28px;
  }

  .sec-identity-cta__title {
    font-size: 28px;
    line-height: 36px;
  }
}
