.sf2-consent-banner {
  position: fixed;
  right: 18px;
  bottom: 18px;
  left: 18px;
  z-index: 1000;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 20px;
  color: #0b192b;
  background: #fff;
  border: 1px solid #cdd8e1;
  border-radius: 8px;
  box-shadow: 0 18px 50px rgba(11, 25, 43, 0.24);
}

.sf2-consent-copy h2 {
  margin: 0 0 8px;
  font-size: 20px;
}

.sf2-consent-copy p {
  max-width: 760px;
  margin: 0 0 12px;
  color: #405268;
}

.sf2-consent-copy label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0 18px 0 0;
  font-size: 14px;
}

.sf2-consent-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.sf2-consent-actions button,
.site-footer [data-consent-settings] {
  border: 0;
  font: inherit;
  cursor: pointer;
}

.sf2-consent-actions button {
  min-height: 42px;
  padding: 9px 14px;
  color: #0b192b;
  background: #eef4f7;
  border: 1px solid #bdccd6;
  border-radius: 6px;
  font-weight: 700;
}

.sf2-consent-actions button.primary {
  color: #fff;
  background: #087fc3;
  border-color: #087fc3;
}

.site-footer [data-consent-settings] {
  display: block;
  padding: 0;
  color: inherit;
  background: transparent;
  text-align: left;
}

body #klaro .cookie-notice,
body #klaro .cookie-modal .cm-modal {
  color: #0b192b;
  background: #fff;
  border: 1px solid #cdd8e1;
  border-radius: 8px;
  box-shadow: 0 18px 60px rgba(11, 25, 43, 0.28);
}

body #klaro .cookie-notice {
  right: 18px;
  bottom: 18px;
  left: 18px;
  width: auto;
  max-width: 880px;
  margin: 0 auto;
}

body #klaro .cookie-notice .cn-body,
body #klaro .cookie-modal .cm-body {
  color: #405268;
}

body #klaro .cookie-notice .cn-body p,
body #klaro .cookie-modal .cm-body p,
body #klaro .cookie-modal .cm-purpose p,
body #klaro .cookie-modal .cm-service p {
  color: #405268 !important;
}

body #klaro .cookie-notice .cn-body strong,
body #klaro .cookie-modal .cm-header h1,
body #klaro .cookie-modal .cm-list-title {
  color: #0b192b;
}

body #klaro .cookie-notice a,
body #klaro .cookie-modal a {
  color: #087fc3;
}

body #klaro .cookie-notice .cm-btn,
body #klaro .cookie-modal .cm-btn {
  min-height: 40px;
  padding: 9px 13px;
  color: #0b192b;
  background: #eef4f7;
  border: 1px solid #bdccd6;
  border-radius: 6px;
  font-weight: 700;
}

body #klaro .cookie-notice .cm-btn.cm-btn-success,
body #klaro .cookie-notice .cm-btn.cm-btn-success-var,
body #klaro .cookie-modal .cm-btn.cm-btn-success,
body #klaro .cookie-modal .cm-btn.cm-btn-success-var {
  color: #fff;
  background: #087fc3;
  border-color: #087fc3;
}

body #klaro .cookie-notice .cm-btn.cm-btn-danger,
body #klaro .cookie-modal .cm-btn.cm-btn-danger {
  color: #0b192b;
  background: #eef4f7;
}

body #klaro .cookie-modal .cm-bg {
  background: rgba(6, 17, 30, 0.66);
}

body #klaro .cookie-modal .cm-service,
body #klaro .cookie-modal .cm-purpose {
  border-color: #d7e1e8;
}

[data-content-api-status] {
  min-height: 24px;
  color: #466172;
}

body[data-page="account-delete"] .account-preview-hero-card {
  grid-template-columns: minmax(0, 1fr);
}

body[data-page="account-delete"] .account-preview-hero-card h1 {
  white-space: normal;
}

@media (max-width: 760px) {
  body[data-page="software"] {
    overflow-x: clip;
  }

  body[data-page="software"] #software-vergleich {
    overflow-x: hidden;
  }

  body[data-page="software"] .table-wrap {
    width: 100%;
    contain: inline-size;
  }

  body[data-page="home"] .hero-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }

  body[data-page="home"] .hero-copy,
  body[data-page="home"] .hero-visual {
    min-width: 0;
  }

  body[data-page="home"] .hero h1 {
    font-size: 2.1rem;
    overflow-wrap: break-word;
    hyphens: none;
  }

  body[data-page="events"] .hero h1 {
    font-size: 2.05rem;
    white-space: normal;
    hyphens: none;
  }

  body[data-page="case-studies"] .hero .no-break {
    white-space: normal;
  }

  body[data-page="edge-challenge"] .challenge-form,
  body[data-page="edge-challenge"] .challenge-form fieldset,
  body[data-page="edge-challenge"] .challenge-form label,
  body[data-page="edge-challenge"] .challenge-form input,
  body[data-page="edge-challenge"] .challenge-form select,
  body[data-page="edge-challenge"] .challenge-form textarea {
    min-width: 0;
    max-width: 100%;
  }

  body[data-page="edge-challenge"] .challenge-form fieldset {
    width: 100%;
  }

  body[data-page="edge-challenge"] .challenge-form legend {
    max-width: calc(100% - 24px);
    white-space: normal;
  }

  .sf2-consent-banner {
    align-items: stretch;
    flex-direction: column;
    max-height: calc(100vh - 24px);
    overflow: auto;
  }

  .sf2-consent-actions {
    justify-content: stretch;
  }

  .sf2-consent-actions button {
    flex: 1 1 100%;
  }
}
