/* SummitFX shared grouped navigation. Scoped to #site-nav nav. */
#site-nav nav .sfx-menu{display:flex;align-items:center;gap:1.5rem;margin-right:-.5rem}
#site-nav nav .sfx-tabs{display:flex;align-items:center;gap:.25rem}
#site-nav nav .sfx-tab{font:inherit;font-size:.9rem;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.8);background:none;border:0;border-radius:6px;padding:.6rem .9rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}
#site-nav nav .sfx-tab:hover,#site-nav nav .sfx-tab[aria-expanded="true"]{color:#fff}
#site-nav nav .sfx-tab:focus-visible,#site-nav nav .sfx-menu a:focus-visible{outline:2px solid #00b5e0;outline-offset:2px}
#site-nav nav .sfx-lbl-m{display:none}
#site-nav nav .sfx-actions{display:flex;align-items:center;gap:.75rem}
#site-nav nav .sfx-login{background:none;border:1px solid rgba(0,181,224,.5);border-radius:8px;color:#00b5e0;font-weight:600}
#site-nav nav .sfx-panel{position:absolute;top:100%;left:0;right:0;background:#0d213c;border-top:1px solid rgba(0,181,224,.12);border-bottom:1px solid rgba(0,181,224,.2);box-shadow:0 24px 48px rgba(0,0,0,.35);max-height:calc(100dvh - var(--sfx-nav-bottom,120px));overflow-y:auto;overscroll-behavior:contain}
#site-nav nav .sfx-panel[hidden]{display:none}
#site-nav nav .sfx-panel-inner{width:100%;max-width:none;margin:0;padding:2rem 2rem 2.25rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);gap:2rem;position:relative}
#site-nav nav .sfx-panel-inner.sfx-narrow{grid-template-columns:minmax(0,1fr)}
#site-nav nav .sfx-panel-inner.sfx-business{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}
#site-nav nav .sfx-group h3{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#00b5e0;margin:0 0 .75rem}
#site-nav nav .sfx-group ul{list-style:none;margin:0;padding:0}
#site-nav nav .sfx-icon-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
#site-nav nav .sfx-menu-icon{width:18px;height:18px;flex:0 0 18px;align-self:center;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:#00b5e0}
#site-nav nav .sfx-menu .sfx-panel a{display:flex;gap:.75rem;align-items:baseline;padding:.45rem 0;font-size:.9rem;font-weight:400;color:rgba(255,255,255,.85);text-decoration:none;letter-spacing:0}
#site-nav nav .sfx-menu .sfx-panel a:has(.sfx-pair){align-items:baseline}
#site-nav nav .sfx-menu .sfx-panel a:has(.sfx-pair) .sfx-menu-icon{align-self:flex-start;margin-top:.15rem;margin-top:calc((1lh - 18px)/2)}
#site-nav nav .sfx-menu .sfx-panel a:hover,#site-nav nav .sfx-menu a.active{color:#00b5e0}
#site-nav nav .sfx-pair{font-weight:700;color:#fff;min-width:4.6rem;font-size:.82rem}
#site-nav nav .sfx-menu .sfx-panel a.sfx-all{color:#00b5e0;font-weight:600;margin-top:.35rem}
#site-nav nav .sfx-overview{grid-column:1/-1;margin:0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}
#site-nav nav .sfx-overview a{display:inline-flex;font-weight:600}
@media (min-width:961px){
  /* Scale the SVG's left whitespace compensation with its height (166/229),
     keeping the visible mark's left edge fixed throughout the transition. */
  #site-nav nav.scrolled .logo-wrap{margin-left:calc(-128px * 166 / 229)}
  /* Stretch through the header's content box, including while it shrinks.
     The max-height caps preserve the original buttons in the expanded state. */
  #site-nav nav .sfx-menu{height:100%;flex-shrink:0;transition:gap .35s ease}
  #site-nav nav .sfx-tabs{flex-shrink:0;transition:gap .35s ease}
  #site-nav nav .sfx-tab{white-space:nowrap}
  #site-nav nav .sfx-actions{height:100%;flex-shrink:0;transition:gap .35s ease}
  #site-nav nav .sfx-actions .btn-nav{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:100%;max-height:calc(1lh + 1.1rem);white-space:nowrap;transition:max-height .35s ease,padding .35s ease,border-radius .35s ease,opacity .2s}
  #site-nav nav .sfx-actions .sfx-login{max-height:calc(1lh + 1.1rem + 2px)}
  #site-nav nav.scrolled .sfx-menu{gap:2rem}
  #site-nav nav.scrolled .sfx-tabs{gap:.75rem}
  #site-nav nav.scrolled .sfx-actions{gap:0}
  #site-nav nav.scrolled .sfx-actions .btn-nav{max-height:100%;padding:0 2.25rem;border-radius:0}
  /* Keep focus inside the full-height cells rather than clipping it at the
     top of the viewport. White also contrasts with the green signup cell. */
  #site-nav nav.scrolled .sfx-actions .btn-nav:focus-visible{outline-color:#fff;outline-offset:-4px}
  #site-nav nav .sfx-panel{left:var(--sfx-panel-left,auto);right:1rem;width:344px;max-width:calc(100% - 2rem);border:1px solid rgba(0,181,224,.2);border-radius:0 0 12px 12px}
  #site-nav nav .sfx-panel[data-panel="personal"]{width:900px}
  #site-nav nav .sfx-panel[data-panel="business"]{width:616px}
}
@media (min-width:961px) and (max-width:1100px){
  #site-nav nav{padding-left:1.5rem;padding-right:1.5rem}
  #site-nav nav .sfx-menu{gap:.5rem}
  #site-nav nav .sfx-tabs{gap:0}
  #site-nav nav .sfx-tab{font-size:.82rem;padding:.6rem .5rem}
  #site-nav nav .sfx-actions{gap:.5rem}
  #site-nav nav .sfx-actions .btn-nav{padding:.55rem 1rem}
  #site-nav nav.scrolled .sfx-menu{gap:1rem}
  #site-nav nav.scrolled .sfx-tabs{gap:.5rem}
  #site-nav nav.scrolled .sfx-actions .btn-nav{padding:0 1.75rem}
}
@media (max-width:960px){
  #site-nav nav .sfx-menu{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;margin:0;background:#0d213c;border-top:1px solid rgba(255,255,255,.06);box-shadow:0 16px 40px rgba(0,0,0,.35);max-height:calc(100dvh - var(--sfx-nav-bottom,70px));overflow:hidden;transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;transition:transform .25s ease,opacity .25s ease,visibility 0s linear .25s}
  #site-nav nav.menu-open .sfx-menu{transform:none;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
  #site-nav nav .sfx-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.1)}
  #site-nav nav .sfx-tab{justify-content:center;border-radius:0;padding:1rem .5rem;min-height:48px;font-size:.95rem;border-bottom:2px solid transparent}
  #site-nav nav .sfx-tab[aria-selected="true"]{color:#00b5e0;border-bottom-color:#00b5e0}
  #site-nav nav .sfx-lbl-d{display:none}
  #site-nav nav .sfx-lbl-m{display:inline}
  #site-nav nav .sfx-panel{position:static;box-shadow:none;border:0;flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}
  #site-nav nav .sfx-panel-inner,#site-nav nav .sfx-panel-inner.sfx-narrow,#site-nav nav .sfx-panel-inner.sfx-business{width:auto;max-width:none;margin:0;grid-template-columns:1fr;gap:1.5rem;padding:1.25rem 1.5rem}
  #site-nav nav .sfx-menu .sfx-panel a{padding:.7rem 0;min-height:44px;align-items:center}
  #site-nav nav .sfx-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;flex-shrink:0;padding:1rem 1.5rem calc(1.25rem + env(safe-area-inset-bottom,0px));background:#0d213c;border-top:1px solid rgba(255,255,255,.1)}
  #site-nav nav .sfx-actions a{text-align:center;padding:.85rem 1rem;border-radius:8px}
  #site-nav nav .sfx-menu .sfx-actions a.sfx-login{color:#00b5e0}
  #site-nav nav .sfx-menu .sfx-actions a:not(.sfx-login){color:#0d213c;background:#25d366}
}
