/* Site header. Markup comes from scripts/nav/nav.py; behavior from nav.js.
   Each group owns a color: Services yellow, Results purple, Resources green. */
.smn{
  --smn-ink:#0A0A0A;--smn-white:#FFFFFF;--smn-mist:#C8C8C8;--smn-slate:#4A4A4A;
  --smn-bg:rgba(245,239,228,.94);--smn-fg:var(--smn-ink);--smn-line:var(--smn-ink);
  position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;gap:24px;
  padding:16px 32px;background:var(--smn-bg);color:var(--smn-fg);border-bottom:2px solid var(--smn-line);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:"Inter","Helvetica Neue",system-ui,sans-serif}
.smn--dark{--smn-bg:#0A0A0A;--smn-fg:#FFFFFF;--smn-line:#DFFF05}
.smn *{box-sizing:border-box}
.smn a{text-decoration:none;color:inherit}
.smn__logo{display:block;flex:0 0 auto;margin-right:auto}
.smn__logo img{height:34px;display:block}
.smn__links{display:flex;align-items:center;gap:6px;margin-right:16px}
.smn__group{position:relative}
.smn__group--services{--c:#DFFF05;--c-ink:#0A0A0A;--c-soft:#F0FFB0;--c-text:#DFFF05}
.smn__group--results{--c:#6B4EFF;--c-ink:#FFFFFF;--c-soft:#E8E1FF;--c-text:#A795FF}
.smn__group--resources{--c:#0E8A4A;--c-ink:#FFFFFF;--c-soft:#E2F2E7;--c-text:#34C759}
.smn__top{display:flex;align-items:center;gap:7px;padding:9px 13px;border:2px solid transparent;
  font-family:"JetBrains Mono",ui-monospace,Menlo,monospace;font-size:12px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.smn__group>.smn__top::after{content:"▾";font-size:10px;opacity:.6}
.smn__top[aria-current="true"]{box-shadow:inset 0 -3px 0 var(--c,currentColor)}
/* hover / open: dark header tints the label, light header fills it */
.smn--dark .smn__group:hover>.smn__top,.smn--dark .smn__group.is-open>.smn__top{color:var(--c-text);border-color:var(--c-text)}
.smn:not(.smn--dark) .smn__group:hover>.smn__top,.smn:not(.smn--dark) .smn__group.is-open>.smn__top{background:var(--c);color:var(--c-ink);border-color:var(--smn-ink)}
.smn__plain:hover{border-color:currentColor}
.smn__top:focus-visible,.smn__cta:focus-visible,.smn__menu a:focus-visible,.smn__toggle:focus-visible{outline:3px solid #6B4EFF;outline-offset:2px}

/* one menu at a time: hovering any group hides the others, even one opened by focus */
.smn__menu{display:none;position:absolute;top:100%;left:0;padding-top:12px;z-index:5}
.smn__group:hover>.smn__menu,.smn__group.is-open>.smn__menu{display:block}
.smn__links:hover .smn__group:not(:hover)>.smn__menu{display:none}
.smn__panel{display:grid;grid-template-columns:minmax(0,1fr) 230px;width:560px;background:#FFFFFF;color:var(--smn-ink);
  border:2.5px solid var(--smn-ink);border-top:8px solid var(--c);box-shadow:6px 6px 0 var(--smn-ink)}
.smn__list{padding:8px;display:flex;flex-direction:column}
.smn__row{display:block;padding:11px 14px;font-size:15px;font-weight:700;line-height:1.25;color:var(--smn-ink)}
.smn__row span{display:block;margin-top:2px;font-size:13px;font-weight:500;color:var(--smn-slate)}
.smn__row:hover{background:var(--c-soft)}
.smn__new{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  background:var(--smn-ink);color:#DFFF05;padding:2px 6px;margin-left:8px;vertical-align:2px}
.smn__feature{display:flex;flex-direction:column;gap:10px;padding:20px 18px;background:var(--smn-ink);color:#FFFFFF}
.smn__big{font-family:"Archivo Black","Helvetica Neue",system-ui,sans-serif;font-size:50px;line-height:1;color:var(--c-text);font-variant-numeric:tabular-nums}
.smn__text{font-size:14px;line-height:1.4;color:var(--smn-mist)}
.smn__go{margin-top:auto;padding-top:12px;border-top:1px solid #333;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text)}
.smn__feature:hover .smn__go{text-decoration:underline;text-underline-offset:4px}
.smn__cta{flex:0 0 auto;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:12px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;padding:12px 18px;border:2px solid var(--smn-ink);background:#DFFF05;color:var(--smn-ink)!important;
  box-shadow:5px 5px 0 #6B4EFF;white-space:nowrap;transition:transform .15s,box-shadow .15s}
.smn__cta:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 #6B4EFF}
.smn__cta--menu,.smn__toggle{display:none}

@media (min-width:901px) and (max-width:1180px){
  .smn{padding:14px 24px;gap:16px}
  .smn__logo img{height:30px}
  .smn__top{padding:8px 10px;font-size:11px;letter-spacing:.1em}
  .smn__links{margin-right:8px}
}

/* phones and small tablets: a Menu button opens a full-height sheet of groups */
@media (max-width:900px){
  /* backdrop-filter would make the fixed sheet size itself to the header */
  .smn{padding:12px 18px;gap:12px;-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--smn-bg)}
  .smn:not(.smn--dark){--smn-bg:#F5EFE4}
  .smn__logo img{height:26px}
  .smn__toggle{display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:11px;font-weight:700;letter-spacing:.12em;
    text-transform:uppercase;padding:9px 12px;border:2px solid currentColor;background:none;color:inherit;cursor:pointer}
  .smn>.smn__cta{display:none}
  .smn__links{display:none;position:fixed;left:0;right:0;top:var(--smn-h,60px);bottom:0;margin:0;overflow-y:auto;
    flex-direction:column;align-items:stretch;gap:0;padding:8px 18px 32px;background:#0A0A0A;color:#FFFFFF}
  .smn.is-open .smn__links{display:flex}
  .smn__top{padding:16px 2px;border:0;border-bottom:1px solid #333;font-family:"Archivo Black","Helvetica Neue",sans-serif;
    font-size:22px;letter-spacing:-.01em;text-transform:none;justify-content:space-between}
  .smn__group>.smn__top::after{content:"+";font-family:"JetBrains Mono",monospace;font-size:20px}
  .smn__group.is-open>.smn__top::after{content:"–"}
  .smn--dark .smn__group:hover>.smn__top,.smn:not(.smn--dark) .smn__group:hover>.smn__top{background:none;color:inherit}
  .smn .smn__group.is-open>.smn__top{background:none;color:var(--c-text);border-color:#333}
  .smn__top[aria-current="true"]{box-shadow:none;color:var(--c-text,#FFFFFF)}
  .smn__menu,.smn__links:hover .smn__group:not(:hover)>.smn__menu{display:none;position:static;padding:0 0 14px}
  .smn__group:hover>.smn__menu{display:none}
  .smn__group.is-open>.smn__menu{display:block}
  .smn__panel{grid-template-columns:1fr;width:auto;box-shadow:none;border-width:2px;border-top-width:6px}
  .smn__feature{padding:16px}
  .smn__big{font-size:36px}
  .smn__cta--menu{display:block;margin-top:22px;text-align:center;box-shadow:none}
}
@media (prefers-reduced-motion:reduce){.smn__top,.smn__cta{transition:none}}
