/* ============================================================
   OneSigner — shared design tokens (SOURCE OF TRUTH)
   Included by: marketing *.html, portal layout.php, kb.php, blog.php
   Canonical palette = landing page system (flat / paper / navy).
   Pages may still declare the same values inline for legacy reasons —
   when changing a token, change it HERE first, then sync inline copies.
   ============================================================ */
:root{
  /* canonical (marketing) names */
  --ink:#0e1130;          /* main text */
  --navy:#000080;         /* brand primary */
  --indigo:#3b3bd6;       /* accent / links / eyebrow */
  --paper:#ffffff;        /* page background */
  --mist:#f6f7fb;         /* alt background / page-head */
  --hair:#e7e9f2;         /* hairline borders */
  --muted:#5a627c;        /* secondary text */
  --ok:#16a34a;
  --danger:#dc2626;
  /* aliases used by portal / kb / blog stylesheets */
  --primary:#000080;
  --dark:#00005c;         /* hover/darker navy */
  --light:#3b3bd6;
  --text:#0e1130;
  --border:#e7e9f2;
  --bg:#f6f7fb;
  /* type */
  --display:'Roboto',system-ui,sans-serif;
  --body:'Roboto',system-ui,sans-serif;
  --font:'Roboto',system-ui,sans-serif;
  --script:'Caveat',cursive;
}
.eyebrow{font-family:var(--display);font-weight:600;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo)}
.sig{font-family:var(--script);font-weight:700}

/* ---- Nav dropdowns (Product / Resources) — keeps the top menu short ---- */
.nav-dd{position:relative}
.nav-dd::before{content:"";position:absolute;left:-10px;right:-10px;top:100%;height:18px}
.nav-dd-btn{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:500;font-size:.92rem;color:var(--ink);display:inline-flex;align-items:center;gap:7px}
.nav-dd-btn::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.nav-dd-btn:hover,.nav-dd:focus-within .nav-dd-btn{color:var(--navy)}
.nav-dd-menu{position:absolute;top:calc(100% + 16px);left:-14px;min-width:210px;background:#fff;border:1px solid var(--hair);border-radius:12px;box-shadow:0 18px 40px -14px rgba(10,12,45,.28);padding:8px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;z-index:120}
.nav-dd-menu a{display:block;padding:8px 12px;border-radius:8px;white-space:nowrap}
.nav-dd-menu a:hover{background:var(--mist)}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:none;transition:opacity .16s ease,transform .16s ease}
@media(max-width:860px){
  .nav-dd{width:100%}
  .nav-dd::before{display:none}
  .nav-dd-btn{pointer-events:none;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
  .nav-dd-btn::after{display:none}
  .nav-dd-menu{position:static;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;padding:6px 0 0;min-width:0;gap:10px}
  .nav-dd-menu a{padding:0;border-radius:0}
  .nav-dd-menu a:hover{background:none}
}
