/* Shared wordmark component used by site, print and social artifacts.
   The chosen treatment — „Spokojna elegancja”: serif name (Lora) + tracked
   sans descriptor (Manrope). This is the single source of truth for the
   wordmark; restyle THIS file to adjust it everywhere at once — the markup
   contract below stays unchanged.

   Markup contract:
   <div class="brand-lockup" role="img" aria-label="Paweł Łukaszewicz — psycholog">
     <span class="brand-lockup__name">Paweł Łukaszewicz</span>
     <span class="brand-lockup__descriptor">psycholog</span>
   </div>
   Scale with --lockup-fs on the element or a parent.

   Documented content deviation: print/sign.html and print/reminder-card.html
   render "mgr Paweł Łukaszewicz" inside brand-lockup__name (and aria-label),
   because their master-copy lines (micro.sign_lines[0],
   micro.reminder_card_lines[3]) carry the credential verbatim. Everywhere
   else the wordmark stays "Paweł Łukaszewicz" and "mgr …" lives in plain
   contact/text lines (see print/brochure.html). */

.brand-lockup {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-size: var(--lockup-fs, 2rem);
  color: var(--text);
}

.brand-lockup__name {
  font-family: var(--font-serif);
  font-weight: 500;
  font-size: 1em;
  line-height: 1.1;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.brand-lockup__descriptor {
  font-family: var(--font-sans);
  font-weight: 400;
  /* 9px legibility floor — same guard as the board treatments */
  font-size: max(0.28em, 0.5625rem);
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.36em;
  /* re-center: letter-spacing leaves a phantom space after the final glyph */
  text-indent: 0.36em;
  margin-top: 1em;
  color: var(--text-muted);
}

/* one-line variant for page headers; the descriptor floor is raised to the
   site's 0.8125rem visible-text minimum (header lockup runs at 1.25–1.375rem,
   where the brand 9px floor would land well below it) */
.brand-lockup--inline { flex-direction: row; align-items: baseline; gap: 0.6em; }
.brand-lockup--inline .brand-lockup__descriptor { margin-top: 0; font-size: max(0.45em, 0.8125rem); }

/* on accent-strong backgrounds */
.brand-lockup--inverted,
.brand-lockup--inverted .brand-lockup__name,
.brand-lockup--inverted .brand-lockup__descriptor { color: var(--on-accent, #fff); }

/* monochrome (print one-color) */
.brand-lockup--mono,
.brand-lockup--mono .brand-lockup__name,
.brand-lockup--mono .brand-lockup__descriptor { color: #1a1a1a; }

/* display variant — hero / OG / cover. Sets the name in Fraunces (the display
   serif) for large brand-facing surfaces; the working (Lora) mark stays the
   default everywhere else. Opt-in via the class; markup contract unchanged. */
.brand-lockup--display .brand-lockup__name {
  font-family: var(--font-serif-display);
  font-weight: 600;
  letter-spacing: 0;
}
