/* Nexxtool AI shared page chrome (Phase 2): the homepage nav + buttons + footer for every non-homepage page (docs, pricing, sign in/up,
   dashboard auth shell, 404). Prefixed .sx- so it cannot collide with page CSS. Values copied from the homepage (01-base.css / 03-sections.css).
   Built to /assets/site-chrome.v1.css by build.cjs. */
/* G1 floors (same tokens as the homepage; 0 below 1280px). The pages that load this file scale rem with the window on desktop (homepage family), so the floors are needed here too. */
:root{--t-body:0px;--t-small:0px}
@media (min-width:1280px){:root{--t-body:15px;--t-small:13px}}
.sx-skip{position:absolute;left:.75rem;top:-3.75rem;z-index:100;background:#fff;color:#000;padding:.625rem 1rem;border-radius:.4rem;font-weight:600}
.sx-skip:focus{top:.75rem}
.sx-nav{position:sticky;top:0;z-index:50;background:rgba(6,8,12,.9);border-bottom:1px solid rgba(255,255,255,.08);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:16px;line-height:1.6;text-align:left}
.sx-nav *,.sx-nav *::before,.sx-nav *::after{box-sizing:border-box}
.sx-nav-in{display:flex;align-items:center;justify-content:space-between;height:4.8rem;gap:1.5rem;width:87.5vw;margin:0 auto}
.sx-brand{font-family:"Schibsted Grotesk",system-ui,sans-serif;color:#F2F5FA;font-weight:700;font-size:1.4rem;letter-spacing:-.02em;white-space:nowrap;text-decoration:none}
.sx-links{display:flex;gap:2.1rem;font-size:max(.98rem,var(--t-body));white-space:nowrap}
.sx-links a{color:#C9D0DB;text-decoration:none;transition:color .15s}
.sx-links a:hover,.sx-links a[aria-current]{color:#fff}
.sx-right{display:flex;align-items:center;gap:1.3rem}
.sx-signin{font-size:max(.98rem,var(--t-body));color:#E6EAF1;font-weight:500;white-space:nowrap;text-decoration:none}
.sx-signin:hover{color:#fff}
.sx-btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;height:2.7rem;padding:0 1.25rem;border-radius:62.44rem;font-family:"IBM Plex Sans",system-ui,sans-serif;font-weight:600;font-size:max(.98rem,var(--t-body));white-space:nowrap;cursor:pointer;border:1px solid transparent;text-decoration:none;background:#fff;color:#06080C;transition:background-color .15s}
.sx-btn:hover{background:#F2F5FA}
.sx-btn svg{width:1.1rem;height:1.1rem}
.sx-burger{display:none;width:2.75rem;height:2.75rem;border:1px solid rgba(255,255,255,.14);border-radius:.6rem;background:transparent;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:0}
.sx-burger span{display:block;width:1.1rem;height:.125rem;background:#fff;border-radius:.125rem;transition:transform .15s,opacity .15s}
.sx-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(.425rem) rotate(45deg)}
.sx-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.sx-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-.425rem) rotate(-45deg)}
.sx-nav :focus-visible,.foot :focus-visible{outline:.125rem solid #8DB8FF;outline-offset:.1875rem;border-radius:.25rem}
@media (max-width:1279px){
  .sx-nav-in{width:auto;margin:0 1.75rem}
  .sx-links{display:none;position:absolute;left:0;right:0;top:4.8rem;flex-direction:column;gap:0;background:#080B11;border-bottom:1px solid rgba(255,255,255,.08);padding:.5rem 1.75rem 1rem}
  .sx-links.open{display:flex}.sx-links a{padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:max(1.05rem,var(--t-body))}
  .sx-burger{display:flex}.sx-signin{display:none}
}
@media (max-width:520px){.sx-nav-in{margin:0 1.25rem;height:4.25rem}.sx-links{top:4.25rem;padding:.5rem 1.25rem 1rem}.sx-brand{font-size:1.3rem}.sx-btn{height:2.5rem;padding:0 1rem;font-size:max(.92rem,var(--t-body))}.sx-right{gap:.6rem}}

/* shared footer (same rules as the homepage .foot) */
.foot{padding:3rem 0 1.8rem;background:#080B11;border-top:1px solid rgba(255,255,255,.08);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:16px;line-height:1.6;color:#B8C0CC;text-align:left;clear:both}
.foot *,.foot *::before,.foot *::after{box-sizing:border-box}
.foot p,.foot ul{margin:0}.foot ul{padding:0;list-style:none}
.foot .wrap{width:87.5vw;margin:0 auto}
.foot .brand{display:inline-block;font-family:"Schibsted Grotesk",system-ui,sans-serif;color:#F2F5FA;font-weight:700;font-size:1.4rem;letter-spacing:-.02em;text-decoration:none;white-space:nowrap}
.foot a{text-decoration:none}
.foot-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);gap:3rem;align-items:start}
.foot-tag{margin-top:.7rem;font-size:max(.95rem,var(--t-body));color:#9CA7BA;max-width:22em;line-height:1.5}
.foot-copy{margin-top:1.1rem;font-size:max(.9375rem,var(--t-body));color:#7D8796}
.foot-addr{margin-top:.5rem;font-size:max(.9375rem,var(--t-body));color:#7D8796}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.foot-h{font-family:"Schibsted Grotesk",system-ui,sans-serif;font-size:max(.95rem,var(--t-body));color:#F2F5FA;font-weight:600;margin-bottom:.8rem}
.foot-col ul{display:flex;flex-direction:column;gap:.55rem}
.foot-col a{font-size:max(.95rem,var(--t-body));color:#B6BFCC}.foot-col a:hover{color:#fff}
.foot .foot-bar{margin-top:2.2rem}
.foot-bar{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:baseline;margin-top:2.2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.08);font-size:max(.9375rem,var(--t-body));color:#7D8796}
.foot-tm{font-size:max(.8125rem,var(--t-small));color:#7D8796}
.foot-bar a{color:#4C8DFF}.foot-bar a:hover{color:#fff}
.foot .owner{background:rgba(250,204,21,.14);border:1px solid rgba(250,204,21,.5);color:#FDE68A;border-radius:.3rem;padding:0 .35rem;font-weight:600;font-size:.92em}
@media (max-width:1279px){.foot .wrap{width:auto;margin:0 1.75rem}.foot-in{grid-template-columns:1fr;gap:1.8rem}.foot-cols{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:767px){.foot{padding:2rem 0 1.25rem}.foot-cols{grid-template-columns:1fr 1fr}.foot-col a,.foot-bar a{min-width:2.75rem;display:inline-flex;align-items:center;min-height:2.75rem}}
@media (max-width:520px){.foot .wrap{margin:0 1.25rem}}
/* brand logo (owner N monogram) */
.sx-brand,.foot .brand{display:inline-flex;align-items:center;gap:.55rem}
.brand-logo{width:28px;height:28px;border-radius:6px;flex:none;display:block}
@media (max-width:520px){.sx-brand,.foot .brand{gap:.4rem}.brand-logo{width:24px;height:24px;border-radius:5px}}
@media (max-width:400px){.sx-brand{font-size:1.1rem}}
@media (max-width:380px){.sx-brand{font-size:1rem}.brand-logo{width:22px;height:22px}}
@media (max-width:340px){.sx-nav .brand-logo{display:none}}
