/* Deliberately limited to the SteuerTagebuch substitutions in Astroplate. */
.stb-hero-kicker {
  color: var(--color-text-dark);
  font-weight: 600;
}

.stb-hero-highlight {
  background: #fff45c;
  border: 2px solid #eadf00;
  border-radius: 0.5rem;
  color: #17162b;
  line-height: 1.08;
  padding: 0.02em 0.18em 0.08em;
}

.dark .stb-hero-kicker {
  color: var(--color-darkmode-text-dark);
}

/* Landing-Hero: layout only. Typography remains in landing-showcase.css. */
.stb-showcase-hero .stb-showcase-hero__panel {
  background: transparent;
  border-radius: 0;
  gap: clamp(1.5rem, 2.5vw, 2.75rem);
  grid-template-columns: minmax(700px, 0.98fr) minmax(500px, 1.02fr);
  min-height: 0;
  overflow: visible;
  padding: 0;
}

.stb-showcase-hero .stb-showcase-hero__panel::before {
  display: none;
}

.stb-showcase-hero .stb-showcase-hero__panel .landing-copy {
  background:
    radial-gradient(circle at 84% 13%, rgba(255, 157, 94, 0.46), transparent 27%),
    radial-gradient(circle at 62% 94%, rgba(255, 80, 177, 0.28), transparent 32%),
    linear-gradient(120deg, #7838ef 0%, #8c2eed 48%, #c837de 100%);
  border-radius: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: none;
  min-height: 690px;
  overflow: hidden;
  padding: 4.5rem 2.5rem;
  width: 100%;
}

.stb-showcase-hero .stb-showcase-hero__panel .tax-visual {
  align-self: center;
  justify-self: center;
  max-width: 700px;
  min-height: 0;
  min-width: 0;
  width: 100%;
}

.stb-showcase-hero .stb-showcase-hero__panel .tax-visual .dashboard-mockup {
  display: none;
}

.stb-showcase-hero .stb-showcase-hero__illustration {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 700px;
  object-fit: contain;
  width: 100%;
}

/*
 * Der Hero-CTA ist bewusst eine kleinere, klickbare Version des gelben
 * "Tracken macht es einfach."-Highlights: gleiche Fläche, gleicher Radius,
 * dieselbe schwere Headline-Typografie statt klassischer Button-Anmutung.
 */
.stb-showcase-hero .landing-actions .stb-showcase-cta {
  align-items: center;
  background: #fff45c;
  border: 0;
  border-radius: 0.75rem;
  box-shadow: none;
  color: #17162b;
  display: inline-flex;
  font-family: inherit;
  font-size: clamp(1.9rem, 2.5vw, 2.35rem);
  font-weight: 800;
  justify-content: center;
  letter-spacing: -0.045em;
  line-height: 1;
  padding: 0.34em 0.48em 0.4em;
  text-decoration: none;
  width: fit-content;
  transition: box-shadow .15s ease, transform .15s ease;
}

.stb-showcase-hero .landing-actions .stb-showcase-cta:hover,
.stb-showcase-hero .landing-actions .stb-showcase-cta:focus-visible {
  background: #fff45c;
  border-color: transparent;
  color: #17162b;
  box-shadow: 0 0.55rem 1.35rem rgba(23, 22, 43, 0.18);
  transform: translateY(-2px);
}

@media (max-width: 1250px) {
  .stb-showcase-hero .stb-showcase-hero__panel {
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr);
  }

  .stb-showcase-hero .stb-showcase-hero__panel .landing-copy {
    min-height: 0;
    padding: 3.5rem 2rem;
  }

  .stb-showcase-hero .stb-showcase-hero__panel .tax-visual {
    max-width: 700px;
  }
}

@media (max-width: 640px) {
  .stb-showcase-hero .stb-showcase-hero__panel .landing-copy {
    border-radius: 1.5rem;
    padding: 2.75rem 1.25rem;
  }

  .stb-showcase-hero .landing-actions .stb-showcase-cta {
    font-size: clamp(1.55rem, 7vw, 1.9rem);
    max-width: 100%;
  }
}