/* HomeLynx V8.1.20 — responsive hamburger + unified trust/legal center.
   Presentation/navigation only. No map, inventory, PSET, Worth, media, ledger, dedup, or ingestion changes. */
:root{
  --hlx820-paper:#F7F8F7;
  --hlx820-ink:#0B0D0C;
  --hlx820-muted:#737B78;
  --hlx820-line:rgba(11,13,12,.10);
  --hlx820-soft:#EEF1EF;
  --hlx820-lynx:#0D9B86;
}

/* Global menu trigger: quiet at rest, proper touch target, no portal-style chrome. */
.hlx-menu-trigger{
  position:fixed;z-index:9200;
  top:calc(env(safe-area-inset-top,0px) + 10px);right:18px;
  width:44px;height:44px;padding:0;border:0;border-radius:14px;
  display:grid;place-items:center;background:rgba(247,248,247,.82);
  color:var(--hlx820-ink);box-shadow:0 1px 0 rgba(255,255,255,.7) inset;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  cursor:pointer;transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.hlx-menu-trigger:hover{background:#fff;box-shadow:0 8px 26px rgba(11,13,12,.08)}
.hlx-menu-trigger:active{transform:scale(.96)}
.hlx-menu-trigger__glyph{position:relative;width:20px;height:14px;display:block}
.hlx-menu-trigger__glyph::before,.hlx-menu-trigger__glyph::after,.hlx-menu-trigger__glyph span{
  content:"";position:absolute;left:0;width:20px;height:1.7px;border-radius:999px;background:currentColor;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),top .22s cubic-bezier(.2,.8,.2,1),opacity .16s ease;
}
.hlx-menu-trigger__glyph::before{top:0}.hlx-menu-trigger__glyph span{top:6px}.hlx-menu-trigger__glyph::after{top:12px}
.hlx-menu-trigger[aria-expanded="true"] .hlx-menu-trigger__glyph::before{top:6px;transform:rotate(45deg)}
.hlx-menu-trigger[aria-expanded="true"] .hlx-menu-trigger__glyph span{opacity:0;transform:scaleX(.2)}
.hlx-menu-trigger[aria-expanded="true"] .hlx-menu-trigger__glyph::after{top:6px;transform:rotate(-45deg)}
body.onboarding .hlx-menu-trigger,body.hlx-relay .hlx-menu-trigger{display:none!important}

.hlx-menu-layer[hidden],.hlx-trust-modal[hidden]{display:none!important}
.hlx-menu-layer{position:fixed;inset:0;z-index:9400;pointer-events:none}
.hlx-menu-layer.is-open{pointer-events:auto}
.hlx-menu-backdrop{position:absolute;inset:0;background:rgba(8,11,10,.28);opacity:0;transition:opacity .24s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.hlx-menu-layer.is-open .hlx-menu-backdrop{opacity:1}
.hlx-menu-panel{
  position:absolute;right:0;top:0;bottom:0;width:min(88vw,380px);
  display:flex;flex-direction:column;background:rgba(249,250,249,.985);color:var(--hlx820-ink);
  border-left:1px solid rgba(11,13,12,.07);box-shadow:-22px 0 70px rgba(7,16,13,.16);
  transform:translateX(calc(100% + 28px));transition:transform .34s cubic-bezier(.2,.8,.2,1);
  padding:calc(env(safe-area-inset-top,0px) + 15px) 20px calc(env(safe-area-inset-bottom,0px) + 18px);
  box-sizing:border-box;overflow:auto;overscroll-behavior:contain;
}
.hlx-menu-layer.is-open .hlx-menu-panel{transform:translateX(0)}
.hlx-menu-head{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-bottom:18px}
.hlx-menu-brand{display:inline-flex;align-items:center;gap:6px;color:#000;font:600 21px/1 'IBM Plex Sans',sans-serif;letter-spacing:-.04em}
.hlx-menu-brand svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.hlx-menu-close{width:38px;height:38px;border:0;border-radius:12px;background:transparent;color:#2A302E;font:300 27px/1 'IBM Plex Sans',sans-serif;cursor:pointer}
.hlx-menu-close:hover{background:var(--hlx820-soft)}
.hlx-menu-group{padding:16px 0 8px;border-top:1px solid var(--hlx820-line)}
.hlx-menu-group:first-of-type{border-top:0}
.hlx-menu-label{margin:0 0 7px;font:600 9px/1.3 'IBM Plex Mono',monospace;letter-spacing:.13em;color:#89918E}
.hlx-menu-row{
  width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:10px 8px;border:0;border-radius:13px;background:transparent;color:var(--hlx820-ink);text-align:left;
  text-decoration:none;font-family:'IBM Plex Sans',sans-serif;cursor:pointer;box-sizing:border-box;
  transition:background .15s ease,transform .15s ease;
}
.hlx-menu-row:hover,.hlx-menu-row:focus-visible{background:#F0F2F1;outline:none}
.hlx-menu-row:active{transform:scale(.992)}
.hlx-menu-row__copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.hlx-menu-row__title{font-size:15px;font-weight:560;letter-spacing:-.012em}
.hlx-menu-row__sub{font-size:11px;line-height:1.35;color:var(--hlx820-muted);white-space:normal}
.hlx-menu-row__mark{width:6px;height:6px;border-radius:50%;background:#C7CECB;flex:0 0 6px}
.hlx-menu-row:hover .hlx-menu-row__mark{background:var(--hlx820-lynx)}
.hlx-menu-foot{margin-top:auto;padding:22px 8px 2px;color:#909895;font-size:10.5px;line-height:1.55}
.hlx-menu-foot strong{display:block;color:#505956;font-weight:550;margin-bottom:2px}
.hlx-menu-open{overflow:hidden}

/* One trust surface. Menu, Settings, footer all route here; content is not duplicated. */
.hlx-trust-modal{position:fixed;inset:0;z-index:99999}
.hlx-trust-backdrop{position:absolute;inset:0;background:rgba(8,12,10,.32);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.hlx-trust-sheet{
  position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(820px,100%);max-height:min(91dvh,940px);
  display:flex;flex-direction:column;background:#FAFBFA;color:#182321;border-radius:26px 26px 0 0;
  box-shadow:0 -24px 70px rgba(8,20,16,.20);overflow:hidden;
}
.hlx-trust-head{flex:0 0 auto;background:rgba(250,251,250,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--hlx820-line)}
.hlx-trust-headtop{display:flex;align-items:center;justify-content:space-between;padding:17px 20px 10px}
.hlx-trust-kicker{font:600 9px/1.2 'IBM Plex Mono',monospace;letter-spacing:.12em;color:var(--hlx820-lynx)}
.hlx-trust-title{margin:3px 0 0;font:600 23px/1.08 'IBM Plex Sans',sans-serif;letter-spacing:-.03em;color:var(--hlx820-ink)}
.hlx-trust-close{width:38px;height:38px;border:0;border-radius:12px;background:var(--hlx820-soft);color:#26332F;font:300 26px/1 'IBM Plex Sans',sans-serif;cursor:pointer}
.hlx-trust-tabs{display:flex;gap:2px;padding:0 16px 10px;overflow:auto;scrollbar-width:none}
.hlx-trust-tabs::-webkit-scrollbar{display:none}
.hlx-trust-tab{position:relative;min-height:38px;padding:8px 10px;border:0;background:transparent;color:#7B8481;font:560 12px/1.2 'IBM Plex Sans',sans-serif;white-space:nowrap;cursor:pointer}
.hlx-trust-tab[aria-selected="true"]{color:var(--hlx820-ink)}
.hlx-trust-tab[aria-selected="true"]::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px;background:var(--hlx820-ink)}
.hlx-trust-scroll{overflow:auto;overscroll-behavior:contain;padding:5px 22px calc(28px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
.hlx-trust-panel[hidden]{display:none!important}
.hlx-trust-section{padding:20px 0;border-bottom:1px solid var(--hlx820-line)}
.hlx-trust-section:last-child{border-bottom:0}
.hlx-trust-section h2{margin:0 0 8px;font:600 15px/1.25 'IBM Plex Sans',sans-serif;letter-spacing:-.01em;color:#17201E}
.hlx-trust-section h3{margin:16px 0 6px;font:600 12px/1.3 'IBM Plex Sans',sans-serif;color:#27322F}
.hlx-trust-section p,.hlx-trust-section li,.hlx-trust-section address{font:400 12.5px/1.62 'IBM Plex Sans',sans-serif;color:#53605C}
.hlx-trust-section p{margin:7px 0}.hlx-trust-section ol,.hlx-trust-section ul{padding-left:21px;margin:8px 0}.hlx-trust-section address{font-style:normal}
.hlx-trust-section a,.hlx-trust-link{color:#087F70;text-decoration:none;font-weight:560}.hlx-trust-section a:hover,.hlx-trust-link:hover{text-decoration:underline}
.hlx-trust-callout{margin:14px 0 2px;padding:13px 14px;border-radius:14px;background:#F0F5F3;color:#34413D;font-size:12px;line-height:1.55}
.hlx-trust-path{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:10px;padding:12px 14px;border:1px solid var(--hlx820-line);border-radius:13px;background:#fff;color:#17201E;font:560 12px/1.3 'IBM Plex Sans',sans-serif;text-align:left;cursor:pointer}
.hlx-trust-path:hover{background:#F5F7F6}

/* Privacy policy typography + responsive matrix. */
.hlx-privacy-policy .hlx-trust-section{padding:18px 0}
.hlx-privacy-policy .hlx-policy-effective{font-size:11px;color:#7D8783;margin-top:0}
.hlx-privacy-policy .hlx-policy-operator{padding:12px 14px;border-radius:14px;background:#F1F4F2;color:#3F4B47}
.hlx-privacy-table{width:100%;border-collapse:collapse;margin:10px 0 2px;font-size:11px;line-height:1.45}
.hlx-privacy-table th,.hlx-privacy-table td{padding:10px 9px;border-bottom:1px solid var(--hlx820-line);vertical-align:top;text-align:left}
.hlx-privacy-table th{font:600 9px/1.3 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#7B8581;background:#F5F7F6}
.hlx-privacy-table td{color:#52605B}
.hlx-privacy-policy code{font-family:'IBM Plex Mono',monospace;font-size:.92em;color:#37423F}

@media(max-width:620px){
  .hlx-menu-trigger{right:14px;top:calc(env(safe-area-inset-top,0px) + 8px);width:42px;height:42px;background:rgba(247,248,247,.76)}
  .hlx-menu-panel{width:min(91vw,370px);padding-left:17px;padding-right:17px}
  .hlx-trust-sheet{max-height:94dvh;border-radius:22px 22px 0 0}
  .hlx-trust-headtop{padding:15px 17px 9px}.hlx-trust-title{font-size:21px}
  .hlx-trust-tabs{padding-left:9px;padding-right:9px}
  .hlx-trust-scroll{padding-left:17px;padding-right:17px}
  .hlx-privacy-table,.hlx-privacy-table tbody,.hlx-privacy-table tr,.hlx-privacy-table td{display:block;width:100%;box-sizing:border-box}
  .hlx-privacy-table thead{display:none}
  .hlx-privacy-table tr{padding:12px 0;border-bottom:1px solid var(--hlx820-line)}
  .hlx-privacy-table td{border:0;padding:3px 0 3px 112px;position:relative;min-height:22px}
  .hlx-privacy-table td::before{content:attr(data-label);position:absolute;left:0;top:3px;width:102px;font:600 8.5px/1.35 'IBM Plex Mono',monospace;letter-spacing:.04em;color:#8A9390;text-transform:uppercase}
}

@media(min-width:900px){
  .hlx-menu-panel{top:14px;right:14px;bottom:14px;width:390px;border:1px solid rgba(11,13,12,.07);border-radius:24px;box-shadow:0 24px 84px rgba(7,16,13,.18);transform:translateX(calc(100% + 42px))}
  .hlx-trust-sheet{bottom:50%;transform:translate(-50%,50%);border-radius:26px;max-height:min(86vh,900px)}
}

@media(prefers-reduced-motion:reduce){
  .hlx-menu-panel,.hlx-menu-backdrop,.hlx-menu-trigger__glyph::before,.hlx-menu-trigger__glyph::after,.hlx-menu-trigger__glyph span{transition:none!important}
}
