@import url("./footer-social.css");

:root{
  --nn-bg:#f8fafc;
  --nn-surface:#ffffff;
  --nn-line:#e2e8f0;
  --nn-line-strong:#cbd5e1;
  --nn-text:#0f172a;
  --nn-muted:#64748b;
  --nn-subtle:#94a3b8;
  --nn-purple:#6d28d9;
  --nn-purple-dark:#5b21b6;
  --nn-purple-soft:#f5f3ff;
  --nn-max:1440px;
  --nn-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --nn-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
}
.nn-inner-page{
  min-width:320px;
  background:
    linear-gradient(rgba(226,232,240,.32) 1px,transparent 1px),
    linear-gradient(90deg,rgba(226,232,240,.32) 1px,transparent 1px),
    var(--nn-bg)!important;
  color:var(--nn-text);
}
.nn-inner-page,.nn-inner-page button,.nn-inner-page input,.nn-inner-page textarea,.nn-inner-page select{font-family:var(--nn-sans)}
.nn-inner-page *,.nn-inner-page *::before,.nn-inner-page *::after{box-sizing:border-box}
.nn-inner-page a{color:inherit}
.nn-shell,.nn-inner-page .container{width:min(var(--nn-max),calc(100% - 32px));margin-inline:auto}
.nn-header{
  position:sticky;top:0;z-index:200;
  border-bottom:1px solid rgba(226,232,240,.94);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
}
.nn-header-row{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.nn-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;text-decoration:none}
.nn-brand-logo-img{height:40px;width:auto;display:block;object-fit:contain}
.nn-brand-copy{display:grid;gap:2px;min-width:0}
.nn-brand-copy strong{font-size:12px;font-weight:850;letter-spacing:.04em;line-height:1.1;white-space:nowrap}
.nn-brand-copy small{color:var(--nn-muted);font-family:var(--nn-mono);font-size:9px;font-weight:700;letter-spacing:.07em;line-height:1.2;white-space:nowrap}
.nn-nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap;justify-content:flex-end}
.nn-nav a{padding:9px 11px;border:1px solid transparent;border-radius:10px;color:#475569;font-size:12px;font-weight:800;text-decoration:none}
.nn-nav a:hover,.nn-nav a[aria-current=page]{border-color:var(--nn-line);background:#fff;color:var(--nn-purple)}
.nn-menu{display:none;width:42px;height:42px;border:1px solid var(--nn-line);border-radius:11px;background:#fff;color:var(--nn-text);font-size:19px;line-height:1;cursor:pointer}
.nn-inner-page main{display:block}
.nn-inner-page .page-hero{
  padding:34px 0 28px!important;
  border:0!important;
  background:transparent!important;
}
.nn-inner-page .page-hero .container{max-width:var(--nn-max)}
.nn-inner-page .breadcrumbs,.nn-inner-page .breadcrumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:7px;
  margin:0 0 10px;color:var(--nn-subtle);
  font-family:var(--nn-mono);font-size:9px;font-weight:800;
  letter-spacing:.045em;text-transform:uppercase;text-decoration:none;
}
.nn-inner-page .breadcrumbs a,.nn-inner-page .breadcrumb{color:var(--nn-purple);text-decoration:none}
.nn-inner-page .kicker{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--nn-purple);font-family:var(--nn-mono);font-size:9px;
  font-weight:900;letter-spacing:.1em;text-transform:uppercase;
}
.nn-inner-page .page-hero h1{
  margin:7px 0 0!important;max-width:840px;color:var(--nn-text)!important;
  font-size:32px!important;line-height:1.12!important;letter-spacing:-.025em;
  font-weight:850!important;
}
.nn-inner-page .page-hero p{max-width:820px;margin:10px 0 0;color:var(--nn-muted);font-size:14px;line-height:1.65}
.nn-inner-page .section{padding:0 0 34px!important;border:0!important;background:transparent!important}
.nn-inner-page .article{
  color:var(--nn-text);
  font-size:15px;line-height:1.78;
}
.nn-inner-page .article h2,.nn-inner-page .article h3,.nn-inner-page .article h4{
  color:var(--nn-text)!important;font-weight:850!important;
}
.nn-inner-page .article h2{margin:28px 0 9px;font-size:21px;line-height:1.25}
.nn-inner-page .article h3{margin:22px 0 8px;font-size:14px;line-height:1.3}
.nn-inner-page .article p{margin:0 0 16px;color:#334155}
.nn-inner-page .article ul,.nn-inner-page .article ol{margin:0 0 18px;padding-left:22px;color:#334155}
.nn-inner-page .article li{margin:6px 0}
.nn-inner-page .article strong{color:var(--nn-text)}
.nn-inner-page .article a{color:var(--nn-purple);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.nn-inner-page .article-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  color:var(--nn-subtle)!important;
  font-family:var(--nn-mono);font-size:9px!important;font-weight:800;
  letter-spacing:.035em;text-transform:uppercase;
}
.nn-inner-page .article-shell{
  display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px;align-items:start;
}
.nn-inner-page .article-main{min-width:0}
.nn-inner-page .article-lead{
  margin:14px 0 22px!important;color:#475569!important;font-size:16px!important;line-height:1.72!important;
}
.nn-inner-page .side-panel{
  position:sticky;top:84px;
  padding:20px;border:1px solid var(--nn-line);border-radius:18px;
  background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.05);
}
.nn-inner-page .side-panel h3{margin:8px 0;font-size:17px!important}
.nn-inner-page .side-panel p{margin:0 0 14px;color:var(--nn-muted)}
.nn-inner-page .notice{
  margin:16px 0;padding:14px 16px;border:1px solid #ddd6fe;border-radius:12px;
  background:var(--nn-purple-soft);color:#4c1d95;
}
.nn-inner-page .related-box{
  margin-top:26px;padding:18px;border:1px solid var(--nn-line);border-radius:16px;background:#fff;
}
.nn-inner-page .related-box h3{margin-top:0}
.nn-inner-page .related-links{display:flex;flex-wrap:wrap;gap:7px}
.nn-inner-page .related-links a{
  display:inline-flex;padding:8px 10px;border:1px solid var(--nn-line);border-radius:9px;
  color:var(--nn-purple);font-size:11px;font-weight:800;text-decoration:none;
}
.nn-inner-page .related-links a:hover{border-color:#ddd6fe;background:#faf7ff}
.nn-inner-page .btn{
  display:inline-flex!important;align-items:center;justify-content:center;gap:7px;
  min-height:40px;padding:9px 12px;border:1px solid var(--nn-line);
  border-radius:10px;background:#fff;color:#334155!important;
  font-size:11px;font-weight:850;text-decoration:none!important;
}
.nn-inner-page .btn.btn-primary,.nn-inner-page .btn-primary{
  border-color:var(--nn-purple)!important;background:var(--nn-purple)!important;color:#fff!important;
}
.nn-inner-page .btn.btn-primary:hover,.nn-inner-page .btn-primary:hover{background:var(--nn-purple-dark)!important}
.nn-inner-page .article-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
}
.nn-inner-page .article-card{
  min-width:0;min-height:172px;display:flex;flex-direction:column;
  padding:16px;border:1px solid var(--nn-line);border-radius:14px;
  background:#fff;color:var(--nn-text)!important;text-decoration:none;
}
.nn-inner-page .article-card:hover{background:#fdfcff;border-color:#ddd6fe}
.nn-inner-page .article-card .tag,.nn-inner-page .article-card .nn-article-tag{
  color:var(--nn-subtle);font-family:var(--nn-mono);font-size:8px;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase;
}
.nn-inner-page .article-card h3{
  margin:8px 0 6px!important;color:var(--nn-text)!important;
  font-size:15px!important;line-height:1.3!important;
}
.nn-inner-page .article-card p{margin:0!important;color:var(--nn-muted)!important;font-size:11px!important;line-height:1.55!important}
.nn-inner-page .article-card .article-link{margin-top:auto;padding-top:12px;color:var(--nn-purple)}
.nn-inner-page .nn-audit-section-heading{color:var(--nn-text)!important}
.nn-footer{
  margin-top:26px;border-top:1px solid var(--nn-line);
  background:#fff!important;color:var(--nn-text)!important;
}
.nn-footer-main{
  display:grid;grid-template-columns:minmax(230px,.9fr) minmax(0,1.6fr);
  gap:36px;padding:28px 0 22px;
}
.nn-footer-brand p{margin:10px 0 0;max-width:360px;color:var(--nn-muted);font-size:11px;line-height:1.55}
.nn-footer-logo{height:30px!important}
.nn-footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nn-footer-links>div{display:grid;align-content:start;gap:7px}
.nn-footer-links a{color:#475569!important;font-size:10px;font-weight:750;text-decoration:none}
.nn-footer-links a:hover{color:var(--nn-purple)!important}
.nn-footer-title{color:var(--nn-text);font-family:var(--nn-mono);font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.nn-footer-trust-pair{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}
.nn-footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:11px 0 16px;border-top:1px solid var(--nn-line);
  color:var(--nn-subtle);font-family:var(--nn-mono);font-size:8px;font-weight:800;letter-spacing:.05em;
}
.nn-footer-domain{color:#64748b}
@media (max-width:820px){
  .nn-nav{display:none;position:absolute;left:16px;right:16px;top:66px;padding:8px;flex-direction:column;align-items:stretch;border:1px solid var(--nn-line);background:#fff;border-radius:14px;box-shadow:0 14px 34px rgba(15,23,42,.1)}
  .nn-nav.is-open{display:flex}
  .nn-nav a{padding:11px 12px}
  .nn-menu{display:grid;place-items:center}
  .nn-inner-page .page-hero{padding:26px 0 22px!important}
  .nn-inner-page .page-hero h1{font-size:28px!important}
  .nn-inner-page .article-shell{grid-template-columns:1fr}
  .nn-inner-page .side-panel{position:static}
  .nn-inner-page .article-grid{grid-template-columns:1fr 1fr}
  .nn-footer-main{grid-template-columns:1fr;gap:22px}
}
@media (max-width:560px){
  .nn-shell,.nn-inner-page .container{width:min(var(--nn-max),calc(100% - 24px))}
  .nn-brand-copy small{display:none}
  .nn-inner-page .page-hero h1{font-size:24px!important}
  .nn-inner-page .article{font-size:14px}
  .nn-inner-page .article-grid{grid-template-columns:1fr}
  .nn-footer-links{grid-template-columns:1fr 1fr}
  .nn-footer-bottom{align-items:flex-start;flex-direction:column}
}


/* Footer fallback asset safety for temporary/static preview hosts. */
.nn-global-footer .nn-footer-brand-logo{
  content:url('../logo.png')!important;
  width:auto!important;
  height:34px!important;
  max-width:180px!important;
  max-height:34px!important;
  display:block!important;
  object-fit:contain!important;
}
.nn-global-footer .nn-footer-social .nn-social-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  flex:0 0 24px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
.nn-global-footer .nn-footer-social .nn-social-icon svg{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  flex:0 0 18px!important;
  display:block!important;
}
