/* ===== ONKA demo opener · ref onkalabs/company-docs#173 =====
     ONKA's door, not the client's: every demo is hosted on an onkalabs.com
     subdomain. Identical on every demo; only data-lang and the client name
     differ. Copy this block verbatim when adding a new demo. */
  #onka-gate{
    position:fixed;inset:0;z-index:99999;background:#0a0a0a;color:#fff;
    font-family:"Space Grotesk",sans-serif;display:flex;align-items:center;
    justify-content:center;padding:24px;overflow:auto;
  }
  /* The door has to look the same on every demo, and each host site styles its
     own h1/p/button. Inheritance loses to any direct host rule (WAMA's h1 is
     Fraunces, BSCD's is Playfair), so pin the family inside the opener. */
  #onka-gate,#onka-gate *{font-family:"Space Grotesk",sans-serif}
  .og-inner{max-width:38rem;width:100%;animation:og-rise .7s cubic-bezier(.16,1,.3,1) both}
  @keyframes og-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion:reduce){.og-inner{animation:none}}
  .og-lockup{height:34px;width:auto;filter:invert(1);display:block;margin-bottom:40px}
  .og-eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;
    color:rgba(255,255,255,.5);margin:0 0 14px}
  .og-title{font-weight:700;letter-spacing:-.02em;font-size:clamp(26px,4.2vw,38px);
    line-height:1.12;margin:0 0 8px}
  .og-for{font-size:14px;color:rgba(255,255,255,.55);margin:0 0 28px}
  .og-for strong{color:#fff;font-weight:500}
  .og-rule{height:1px;background:rgba(255,255,255,.14);margin:0 0 24px}
  .og-terms{font-size:14px;line-height:1.7;color:rgba(255,255,255,.66);margin:0 0 26px}
  .og-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;margin:0 0 24px;
    font-size:14px;color:rgba(255,255,255,.9);line-height:1.5}
  .og-check input{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:20px;height:20px;
    margin:1px 0 0;border:1px solid rgba(255,255,255,.45);background:transparent;cursor:pointer;
    display:grid;place-content:center;transition:border-color .15s,background .15s}
  .og-check input:checked{background:#fff;border-color:#fff}
  .og-check input:checked::after{content:"";width:10px;height:6px;border-left:2px solid #0a0a0a;
    border-bottom:2px solid #0a0a0a;transform:rotate(-45deg) translate(1px,-1px)}
  .og-check input:focus-visible{outline:2px solid #fff;outline-offset:3px}
  .og-enter{display:block;width:100%;padding:16px;border:0;cursor:pointer;
    font-family:"Space Grotesk",sans-serif;font-size:14px;font-weight:500;letter-spacing:.14em;
    text-transform:uppercase;background:#fff;color:#0a0a0a;transition:opacity .18s,background .18s}
  .og-enter:disabled{opacity:.28;cursor:not-allowed}
  .og-enter:not(:disabled):hover{background:#e8e8e8}
  .og-enter:focus-visible{outline:2px solid #fff;outline-offset:3px}
  .og-foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
    margin-top:20px;font-size:12px;color:rgba(255,255,255,.42)}
  .og-foot a{color:rgba(255,255,255,.62);text-decoration:underline;text-underline-offset:3px}
  /* generous hit area: 12px type is unhittable on a phone otherwise */
  .og-langs{display:inline-flex;align-items:center;gap:2px;margin:-10px -8px}
  .og-langs button{background:none;border:0;color:rgba(255,255,255,.42);cursor:pointer;
    font-family:inherit;font-size:12px;padding:10px 8px;min-height:40px}
  .og-langs button[aria-pressed="true"]{color:#fff;text-decoration:underline;text-underline-offset:3px}
  html.onka-gated,html.onka-gated body{overflow:hidden!important}
