/* BOGOM showcase: shared, scoped typography and interaction vocabulary. */
:root {
  --showcase-font: var(--bogom-font-sans);
  --showcase-ink: #f0f5f6;
  --showcase-muted: #a5b5bd;
  --showcase-accent: #adf2f4;
  --showcase-line: #ffffff21;
  --showcase-ease: cubic-bezier(.22,1,.36,1);
  --showcase-gutter: clamp(20px,4vw,64px);
}
.showcase-shell {
  width: min(1380px, calc(100% - var(--showcase-gutter) * 2));
  margin-inline: auto;
}
.showcase-hero, .showcase-contact, .showcase-presence, .showcase-footer {
  font-family: var(--showcase-font);
  font-optical-sizing: auto;
  font-feature-settings: "liga" 1, "calt" 1;
  -webkit-font-smoothing: antialiased;
}
:is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *,
:is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *::before,
:is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *::after { box-sizing: border-box; }
:is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) :is(a,button,input,textarea):focus-visible {
  outline: 2px solid var(--showcase-accent); outline-offset: 5px;
}
.showcase-eyebrow {
  display: flex; align-items: center; flex-wrap: wrap; gap: 12px;
  margin: 0; color: #bdcdd3; font-size: 12px; font-weight: 520;
  letter-spacing: .08em; line-height: 1.6; text-transform: uppercase;
}
.showcase-signal { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--showcase-accent); }
.showcase-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 58px; padding: 17px 28px; border: 1px solid var(--showcase-accent);
  border-radius: 999px; background: var(--showcase-accent); color: #081317;
  font: 600 16px/1.4 var(--showcase-font); text-align: center; text-decoration: none;
  transition: background .25s, border-color .25s, transform .35s var(--showcase-ease);
}
.showcase-button:is(:hover,:focus-visible) { color: #081317; background: #d4fcfb; border-color: #d4fcfb; transform: translateY(-2px); }
.showcase-text-link {
  display: inline-flex; align-items: center; min-height: 48px;
  color: var(--showcase-ink); font-size: 14px; font-weight: 500;
  text-decoration: underline; text-underline-offset: 6px; text-decoration-color: #ffffff4a;
  transition: color .25s, text-decoration-color .25s;
}
.showcase-text-link:hover { color: var(--showcase-accent); text-decoration-color: currentColor; }
@media (prefers-reduced-motion: reduce) {
  :is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *,
  :is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *::before,
  :is(.showcase-hero,.showcase-contact,.showcase-presence,.showcase-footer) *::after {
    animation: none !important; transition: none !important; scroll-behavior: auto !important;
  }
  .showcase-button:is(:hover,:focus-visible) { transform: none; }
}
