/* Shared public site shell. Assessment/private applications keep their own UI. */
body.nfsh-editorial :is(a,button):focus-visible{outline:3px solid #987137;outline-offset:4px}
body.nfsh-editorial .article-content{overflow-wrap:anywhere;text-align:start}
body.nfsh-editorial .article-content :is(p,li){line-height:1.85}
body.nfsh-editorial a[href^="tel:"]{direction:ltr;unicode-bidi:isolate;display:inline-block}
body.nfsh-editorial .site-header .nav-wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding-block:18px;min-height:94px}
body.nfsh-editorial .site-header .brand{display:flex;align-items:center;gap:12px;min-width:0;max-width:100%;text-decoration:none}
body.nfsh-editorial :is(.site-header,.site-footer) .brand-mark{display:grid;place-items:center;box-sizing:border-box;flex:0 0 58px;width:58px;height:54px;padding:0;font:700 15px/1 Georgia,serif;letter-spacing:.03em;direction:ltr;overflow:hidden}
body.nfsh-editorial :is(.site-header,.site-footer) .brand-copy{min-width:0;display:grid;gap:3px;text-align:start}
body.nfsh-editorial :is(.site-header,.site-footer) .brand-copy strong{max-width:none;font:700 clamp(15px,1.4vw,20px)/1.45 Arial,Tahoma,sans-serif;overflow-wrap:normal}
body.nfsh-editorial :is(.site-header,.site-footer) .brand-copy small{max-width:none;margin:0;font:400 13px/1.5 Arial,Tahoma,sans-serif}
body.nfsh-editorial .site-header .main-nav{align-items:center;gap:14px}
body.nfsh-editorial .site-header .nav-articles{gap:6px}
body.nfsh-editorial .site-header .nav-articles svg{flex-shrink:0}
body.nfsh-editorial .site-header .nav-toggle{width:44px;height:44px;flex-shrink:0;margin:0;padding:10px}
body.nfsh-editorial .site-footer{padding:34px 0}
body.nfsh-editorial .site-footer .footer-grid{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:18px;text-align:center}
body.nfsh-editorial .site-footer .footer-brand{display:flex;align-items:center;justify-content:center;gap:14px;max-width:100%;text-decoration:none;margin:0}
body.nfsh-editorial .site-footer .footer-notice{max-width:62ch;margin:0;font-size:14px;line-height:1.7;text-align:center}
body.nfsh-editorial .site-footer .footer-copyright{margin:0;padding-top:16px;width:100%;border-top:1px solid #526b82;font-size:13px;line-height:1.5;text-align:center}
@media(min-width:1101px){body.nfsh-editorial .site-header .nav-toggle{display:none}body.nfsh-editorial .site-header .main-nav{display:flex;flex:1;justify-content:flex-end}}
@media(max-width:1100px){
 body.nfsh-editorial .site-header .nav-wrap{gap:12px;min-height:90px;padding-block:14px}
 body.nfsh-editorial .site-header .brand{flex:1;max-width:calc(100% - 56px)}
 body.nfsh-editorial .site-header .nav-toggle{display:block}
 body.nfsh-editorial .site-header .main-nav{display:none;position:static;flex-basis:100%;width:100%;padding:12px 0;margin:0;background:#fff;border-top:1px solid #ccd5dd}
 body.nfsh-editorial .site-header .main-nav.is-open{display:flex;flex-wrap:wrap}
}
@media(max-width:480px){
 body.nfsh-editorial .site-header .shell{width:calc(100% - 28px)}
 body.nfsh-editorial :is(.site-header,.site-footer) .brand-mark{flex-basis:46px;width:46px;height:46px;font-size:12px}
 body.nfsh-editorial :is(.site-header,.site-footer) .brand-copy strong{font-size:14px;line-height:1.45}
 body.nfsh-editorial :is(.site-header,.site-footer) .brand-copy small{font-size:11px;line-height:1.5}
 body.nfsh-editorial .site-footer{padding:28px 0}
 body.nfsh-editorial .site-footer .footer-brand{gap:10px}
 body.nfsh-editorial .site-footer .footer-notice{font-size:13px}
}
