*,*::before,*::after{box-sizing:border-box}
html{background:#fff;scroll-behavior:smooth}
body{margin:0;min-width:320px;background:#fff;color:var(--nf-ink);font:400 13px/1.35 var(--nf-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.is-menu-open,body.is-search-open{overflow:hidden}

::selection{background:var(--nf-oat);color:var(--nf-ink)}
:where(a,button,input,select,textarea):focus-visible{outline:1px solid var(--nf-gold);outline-offset:3px}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}img{display:block;width:100%;max-width:100%;height:auto}ul,ol{margin:0;padding:0}li{list-style:none}h1,h2,h3,h4,p,blockquote{margin:0}
.nf-main{width:100%;overflow:hidden;background:#fff}
.nf-ui-label,.nf-kicker{text-transform:uppercase;font-size:10px;line-height:1;letter-spacing:.02em;font-weight:500}
.nf-section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.nf-section-title-row h2,.nf-section-title-row h3{font:500 22px/1 var(--nf-display);letter-spacing:-.045em}
.nf-source-underline{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;width:max-content;font-size:11px;line-height:1.15}
 .nf-source-underline__line{position:relative;display:block;height:1px;width:100%;overflow:hidden}
.nf-source-underline__line::after{content:"";position:absolute;left:-3px;top:0;width:1%;height:1px;background:currentColor;will-change:left,right,width}
.nf-source-underline.is-line-in .nf-source-underline__line::after{left:0;right:0;width:auto;transition:left .3s var(--nf-ease-line),right .3s var(--nf-ease-line),width .3s var(--nf-ease-line)}
.nf-source-underline.is-line-out .nf-source-underline__line::after{left:auto;right:-3px;width:1%;transition:left .3s var(--nf-ease-line),right .3s var(--nf-ease-line),width .3s var(--nf-ease-line)}
.nf-primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:10px 36px;border:1px solid var(--nf-btn-primary-border);border-radius:8px;font-size:11px;line-height:1}
.nf-primary-button--light{--nf-button-bg:var(--nf-btn-primary-bg);--nf-button-text:var(--nf-btn-primary-text);--nf-button-border:var(--nf-btn-primary-border)}
.nf-skip-link{position:fixed;z-index:9999;left:12px;top:12px;transform:translateY(-180%);padding:10px 14px;background:#fff;color:#000;border:1px solid #000}.nf-skip-link:focus{transform:none}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Generic WordPress pages */
.nf-page-shell{padding:150px 40px 120px;background:#fff}.nf-page,.nf-article,.nf-page-shell>*{max-width:1200px;margin-inline:auto}.nf-page__header{max-width:760px;margin-bottom:80px}.nf-page__header h1,.nf-error-page h1{font:500 46px/1 var(--nf-display);letter-spacing:-.05em}.nf-page__intro{margin-top:20px;color:var(--nf-muted)}.nf-page__content{max-width:760px;font-size:15px;line-height:1.65}.nf-page__content>*+*{margin-top:1.2em}.nf-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 20px}.nf-error-page{min-height:75vh;display:grid;place-items:center;text-align:center;padding:120px 20px}

/* Noble Factory palette pass — white remains the canvas; brand colours live in contained surfaces and interaction states. */
.nf-source-underline{transition:color .25s ease}
.nf-source-underline:hover,.nf-source-underline:focus-visible{color:var(--nf-gold)}
.nf-source-underline__line::after{background:var(--nf-gold)}
