/* Innovatura Neubau: fits the reused brief (entdecker.css) and demo (labor.css) styles into the site look.
   Only var(--…) from /assets/tokens.css. The accent stays reserved for the one main action. */
@layer tokens, reset, base, site, components, sections, animations, entdecker, anpassung;
@layer anpassung {
  .btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--abstand-0); padding: var(--abstand-2) var(--abstand-3); border-radius: var(--radius-knopf);
    font: var(--gewicht-fett) var(--stufe-1)/var(--zeile-titel) var(--schrift-display); min-height: 48px; min-width: 44px; white-space: normal; text-align: center; cursor: pointer; }
  .btn--primary { background: var(--farbe-text); color: var(--farbe-text-umgekehrt); border: var(--linie-stark) solid var(--farbe-text); }
  .btn--primary:hover { background: var(--farbe-tiefschwarz); }
  .btn--ghost { background: transparent; color: var(--farbe-text); border: var(--linie-stark) solid var(--farbe-text); }
  .btn--ghost:hover { background: var(--farbe-text); color: var(--farbe-text-umgekehrt); }
  .btn--sm { padding: var(--abstand-1) var(--abstand-2); font-size: var(--stufe-0); }
  .btn--full { width: 100%; }
  .btn[disabled] { opacity: .55; pointer-events: none; }
  /* the brief's final send is the page's main action: the one accent button */
  #ent-submit, #ent-send { background: var(--farbe-akzent); color: var(--farbe-auf-akzent); border-color: var(--farbe-akzent); }
  #ent-submit:hover, #ent-send:hover { background: var(--farbe-akzent-hover); }

  .ent__header { position: sticky; top: 0; z-index: 5; background: var(--farbe-grund); border-bottom: var(--linie-duenn) solid var(--farbe-linie); backdrop-filter: none; -webkit-backdrop-filter: none;
    display: flex; justify-content: space-between; align-items: center; gap: var(--abstand-2); padding: var(--abstand-1) var(--rand); height: auto; min-height: 3.2rem; }
  .ent__header-titel { font: var(--gewicht-fett) var(--stufe-1)/var(--zeile-mittel) var(--schrift-display); }
  .ent__header-right { gap: var(--abstand-1); }
  .ent__reset-header { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
  .ent__hero-title { font: var(--gewicht-fett) var(--stufe-6)/var(--zeile-titel) var(--schrift-display) !important; letter-spacing: var(--laufweite-titel); text-wrap: balance; }
  .ent__hero-sub { font-family: var(--schrift-text); font-size: var(--stufe-2); max-width: 36ch; }
  .ent__nebenweg { margin-top: var(--abstand-2); font: var(--gewicht-normal) var(--stufe-1)/var(--zeile-knapp) var(--schrift-display); }
  .ent__nebenweg a { color: var(--farbe-text-leise); text-decoration: underline; text-underline-offset: .18em; }
  .ent__voice p { font-family: var(--schrift-text); }
  .ent__neu { padding: var(--abstand-2) var(--rand) var(--abstand-5); text-align: center; }
  .ent__reset { text-decoration: underline; text-underline-offset: .18em; font: var(--gewicht-normal) var(--stufe-1)/var(--zeile-knapp) var(--schrift-display); color: var(--farbe-text-leise); min-height: 44px; }
  .ent__noscript { font: var(--gewicht-normal) var(--stufe-2)/var(--zeile-text) var(--schrift-text); }
  .ent__main a, .lab__main a:not(.btn):not(.knopf) { text-decoration: underline; text-underline-offset: .18em; }
  @media (max-width: 480px) { .ent__header-titel { display: none; } .ent__progress-bar { width: 4.5rem; } }

  .lab__intro { padding: var(--abstand-4) 0 var(--abstand-2); margin-bottom: var(--abstand-4); max-width: none; }
  .lab__title { font: var(--gewicht-fett) var(--stufe-6)/var(--zeile-titel) var(--schrift-display) !important; letter-spacing: var(--laufweite-titel); max-width: 14ch; text-wrap: balance; }
  .lab__lead { font-family: var(--schrift-text); font-size: var(--stufe-2); max-width: 40rem; margin-top: var(--abstand-2); }
  .lab__note-global { font: var(--gewicht-normal) var(--stufe-1)/var(--zeile-text) var(--schrift-display); color: var(--farbe-text-leise); max-width: 40rem; margin-top: var(--abstand-2); }
  .lab__demo-desc, .lab__real { font-size: var(--stufe-1); }
  .lab__demo-title { font: var(--gewicht-fett) var(--stufe-6)/var(--zeile-eng) var(--schrift-display); letter-spacing: var(--laufweite-abschnitt); }
  .lab__demo:nth-of-type(even) { background: var(--farbe-flaeche-1); box-shadow: 0 0 0 100vmax var(--farbe-flaeche-1); clip-path: inset(0 -100vmax); }
  .lab__noscript { padding: var(--abstand-4) 0; font: var(--gewicht-normal) var(--stufe-2)/var(--zeile-text) var(--schrift-text); }
  .lab__main .schluss { margin-top: var(--abstand-4); padding-inline: 0; }
  .lab__stage, .resv, .resv__step { min-width: 0; max-width: 100%; }
  .lab__stage { overflow: hidden; }
  .ent__intro, .ent__intro * { animation: none !important; transition: none !important; opacity: 1 !important; transform: none !important; }
  .ent__hero-title, .lab__title, .lab__demo-title, .lab__main .schluss h2 { font-family: var(--schrift-titel) !important; font-weight: var(--gewicht-titel) !important; }
  @media (min-width: 900px) {
    .lab__demo:nth-of-type(even) { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--abstand-5); align-items: start; }
    .lab__demo:nth-of-type(even) > .lab__real { grid-column: 2; }
  }
}
