/* Professional 12.11.2026: cookie, home length, trust, contrast tweaks */
#live-lab, #karriere { display: none !important; }
body.opl-short-home #live-lab, body.opl-short-home #karriere { display: none !important; }

/* Cookie banner: compact bottom bar so hero CTAs stay visible on mobile */
[data-cookie-banner] {
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 100 !important;
}
[data-cookie-banner] > div {
  max-width: 100% !important;
  padding: 0 !important;
}
[data-cookie-banner] > div > div {
  border-radius: 0 !important;
  padding: 0.7rem 1rem 0.85rem !important;
  margin: 0 !important;
}
@media (max-width: 640px) {
  [data-cookie-banner] { bottom: 0 !important; }
  [data-cookie-banner] p { font-size: 0.7rem !important; line-height: 1.35 !important; margin: 0 !important; }
  [data-cookie-banner] > div > div { padding: 0.45rem 0.75rem 0.5rem !important; }
  [data-cookie-banner] .mt-4,
  [data-cookie-banner] .flex-col-reverse {
    margin-top: 0.4rem !important;
    flex-direction: row !important;
    justify-content: stretch !important;
    gap: 0.4rem !important;
  }
  [data-cookie-banner] button {
    height: 2.1rem !important;
    min-height: 2.1rem !important;
    flex: 1 1 0 !important;
    padding: 0 0.5rem !important;
    font-size: 0.75rem !important;
  }
  /* keep both hero CTAs above the slimmer bar */
  main { padding-bottom: 6rem; }
}

/* Slightly stronger footer contrast */
[data-testid="footer-login"] { display: none !important; }
[data-testid="footer-login-note"] { display: none !important; }
a[href="/admin"] { display: none !important; }
a[href="/kunden"] { display: none !important; }

/* Payment marks */
.opl-pay-marks {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  margin: 0.75rem 0 0;
}
.opl-pay-marks img, .opl-pay-marks svg {
  display: block;
  height: 22px;
  width: auto;
  max-width: 72px;
  object-fit: contain;
}
.opl-pay-caption {
  width: 100%;
  margin: 0 0 0.15rem;
  font-size: 0.7rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #94a3b8;
}
.opl-trust {
  max-width: 72rem;
  margin: 0 auto;
  padding: 2.5rem 1rem 3rem;
}
.opl-trust h2 {
  margin: 0 0 1.25rem;
  color: #fff;
  font-weight: 800;
  font-size: 1.6rem;
  letter-spacing: -0.02em;
}
.opl-trust-grid {
  display: grid;
  gap: 0.85rem;
}
@media (min-width: 768px) {
  .opl-trust-grid { grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
}
.opl-trust-card {
  background: rgba(8,10,20,.8);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 1rem;
  padding: 1.15rem 1.2rem;
}
.opl-trust-card p.n {
  margin: 0 0 .4rem;
  color: #22d3ee;
  font-family: ui-monospace, monospace;
  font-size: .7rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.opl-trust-card h3 { margin: 0 0 .35rem; color: #fff; font-size: 1.05rem; font-weight: 800; }
.opl-trust-card p { margin: 0; color: #cbd5e1; font-size: .925rem; line-height: 1.55; }

.opl-mwst {
  font-size: .85rem;
  color: #94a3b8;
  margin: .5rem 0 0;
}

/* Home: keep the page scannable; details live on /preise, /shop, /start-shops */
.opl-page-home #preise,
.opl-page-home #shop,
.opl-page-home #online-business { display: none !important; }

#ss-package-mwst {
  margin: 0.4rem 0 0.9rem;
  color: #cbd5e1;
  font-size: 0.85rem;
  line-height: 1.4;
}
