/* NHIS Fees Policy page. Everything is scoped to .nfp so the school header and footer are untouched. */
body.nfp-body #main-content{background:#fff}
.nfp{--brand:#8F3D63;--brand-d:#6f2b4b;--ink:#231F20;--txt:#3b3739;--mute:#6b6468;--soft:#FDF3F8;--tint:#F6E0EB;--line:#eee4e9;--serif:Fraunces,Georgia,serif;--sans:Rubik,"Segoe UI",Arial,sans-serif;font-family:var(--sans);color:var(--txt);background:#fff;line-height:1.75;-webkit-font-smoothing:antialiased}
.nfp *,.nfp *:before,.nfp *:after{box-sizing:border-box}
.nfp h1,.nfp h2,.nfp h3{font-family:var(--serif);font-weight:600;color:var(--ink);margin:0;padding:0;letter-spacing:-.015em;text-transform:none}
.nfp p{padding-bottom:0}
.nfp a{color:var(--brand);text-decoration:none}
.nfp a:hover{color:var(--brand-d);text-decoration:underline}
.nfp-w{width:min(100% - 48px,1200px);margin-inline:auto}
.nfp .nfp-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* buttons */
.nfp .nfp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;border:1.5px solid transparent;font:700 .92rem/1.2 var(--sans);cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .2s ease,background-color .2s ease,color .2s ease}
.nfp .nfp-btn:hover{transform:translateY(-1px);text-decoration:none}
.nfp .nfp-btn--solid{background:#fff;border-color:#fff;color:#0a0a0b}
.nfp .nfp-btn--line{background:transparent;border-color:rgba(255,255,255,.65);color:#fff}
.nfp .nfp-btn--line:hover{background:rgba(255,255,255,.12);color:#fff}
.nfp .nfp-btn--brand{background:var(--brand);border-color:var(--brand);color:#fff}
.nfp .nfp-btn--brand:hover{background:var(--brand-d);color:#fff}
.nfp .nfp-btn--ghost{background:#fff;border-color:#cfc6cb;color:var(--ink)}
.nfp .nfp-btn--ghost:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.nfp a:focus-visible,.nfp button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.nfp-hero a:focus-visible,.nfp-hero button:focus-visible{outline-color:#fff}

/* hero: premium black, the same family as the Contact page */
.nfp-hero{position:relative;overflow:hidden;color:#fff;background:#0a0a0b radial-gradient(110% 95% at 72% 42%,#17171c 0%,#0c0c0e 52%,#050506 100%);padding:clamp(98px,11vw,132px) 0 clamp(96px,9vw,124px)}
.nfp-ribbons{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;z-index:0}
.nfp-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:32px;align-items:center}
.nfp-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.88rem;color:#bdb8be}
.nfp .nfp-crumbs a{color:#d6d1d6}
.nfp .nfp-crumbs a:hover{color:#fff}
.nfp-crumbs span[aria-current]{color:#fff}
.nfp-crumbs span[aria-hidden]{color:#777}
.nfp .nfp-hero h1{margin:22px 0 18px;font-size:clamp(2.6rem,5.6vw,4.6rem);line-height:1.04;color:#fff}
.nfp .nfp-hero h1 em{font-style:italic;font-weight:500;color:#F6E0EB}
.nfp-hero__lead{margin:0;max-width:34em;font-size:1.1rem;line-height:1.65;color:#d6d1d6}
.nfp-meta{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.nfp-meta li{padding:10px 18px;border-radius:16px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);font-size:.92rem;line-height:1.35;color:#fff}
.nfp-meta b{display:block;font:700 .68rem var(--sans);letter-spacing:.09em;text-transform:uppercase;color:#a9a3aa;margin-bottom:2px}
.nfp-hero__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.nfp-hero__art{justify-self:end;width:min(100%,430px)}
.nfp-hero__art svg{display:block;width:100%;height:auto}

/* at a glance */
.nfp-glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:-46px;position:relative;z-index:2;background:#fff;border:1px solid #e9dfe4;border-radius:24px;box-shadow:0 24px 50px -34px rgba(35,31,32,.5)}
.nfp-glance>div{display:flex;gap:16px;align-items:flex-start;padding:26px 28px}
.nfp-glance>div+div{border-left:1px solid var(--line)}
.nfp-ico{flex:none;width:48px;height:48px;border-radius:50%;background:var(--tint);color:var(--brand);display:grid;place-items:center}
.nfp-glance b{display:block;font:600 1.5rem/1.2 var(--serif);color:var(--ink)}
.nfp-glance small{font-size:.9rem;color:#5d575a;line-height:1.5}

/* contents and document */
.nfp-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:72px;margin-top:72px;padding-bottom:88px;align-items:start}
.nfp-toc{position:sticky;top:104px;display:flex;flex-direction:column;gap:28px}
.nfp-toc h2{font:700 .72rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.nfp-toc ul{margin:0;padding:0;list-style:none;border-left:2px solid var(--line)}
.nfp-toc li{margin:0;padding:0}
.nfp .nfp-toc li a{display:block;padding:8px 0 8px 18px;margin-left:-2px;border-left:2px solid transparent;color:#4a4547;font-size:.95rem;line-height:1.4}
.nfp .nfp-toc li a:hover{color:var(--brand);text-decoration:none}
.nfp .nfp-toc li a.on{border-left-color:var(--brand);color:var(--brand);font-weight:700}
.nfp-help{border:1px solid var(--line);border-radius:20px;padding:20px;background:var(--soft);font-size:.9rem;line-height:1.55}
.nfp-help b{display:block;font:600 1.05rem var(--serif);color:var(--ink);margin-bottom:6px}
.nfp-doc{max-width:800px;min-width:0}
.nfp-doc section{padding-bottom:56px;margin-bottom:56px;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.nfp-doc section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.nfp .nfp-doc h2{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.2;margin-bottom:24px}
.nfp-cl{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0 8px;margin:0 0 20px}
.nfp-cl>b{font:700 .95rem/1.9 var(--sans);color:var(--brand)}
.nfp-cl p{margin:0;font-size:1.06rem}
.nfp-note{display:flex;gap:16px;align-items:flex-start;border-radius:18px;padding:20px 22px;margin:28px 0 0}
.nfp-note--info{background:var(--soft);border:1px solid #f1dde7}
.nfp-note--warn{background:var(--tint);border:1px solid #e2b6cb;border-left:5px solid var(--brand)}
.nfp-note .nfp-ic{color:var(--brand);width:26px;height:26px;margin-top:2px}
.nfp-note p{margin:0}
.nfp-note strong{color:var(--ink)}
.nfp-fig{margin:28px 0 0;border:1px solid var(--line);border-radius:20px;padding:24px 24px 20px;background:#fff}
.nfp-fig figcaption{margin-top:12px;font-size:.85rem;color:var(--mute)}
.nfp-bar{display:flex;border-radius:999px;overflow:hidden;height:54px;font:700 .95rem var(--sans);color:#fff}
.nfp-bar__due{flex:0 0 72%;background:var(--brand);display:flex;align-items:center;padding:0 24px}
.nfp-bar__late{flex:1;background:var(--ink);display:flex;align-items:center;padding:0 20px}
.nfp-ticks{position:relative;height:56px;margin-top:6px;font-size:.82rem;line-height:1.35;color:#4a4547}
.nfp-ticks span{position:absolute;top:0;padding-top:8px}
.nfp-ticks .t1{left:0;border-left:2px solid #BD648B;padding-left:8px}
.nfp-ticks .t2{left:40%;border-left:2px solid #BD648B;padding-left:8px}
.nfp-ticks .t3{right:28%;border-right:2px solid #BD648B;padding-right:8px;text-align:right}
.nfp-ticks .t4{left:72%;border-left:2px solid var(--ink);padding-left:8px}
.nfp-steps{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.nfp-steps li{display:flex;gap:14px;align-items:flex-start;margin:0;padding:0}
.nfp-steps .nfp-ic{color:var(--brand);margin-top:3px}
.nfp-acct{margin-top:8px;border:1px solid #e9dfe4;border-radius:20px;overflow:hidden}
.nfp-acct div{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 20px}
.nfp-acct div+div{border-top:1px solid var(--line)}
.nfp-acct small{font-size:.85rem;color:var(--mute)}
.nfp-acct b{font:600 1.02rem var(--sans);color:var(--ink);overflow-wrap:anywhere}
.nfp .nfp-cp{min-height:40px;padding:0 16px;border-radius:999px;border:1.5px solid #cfc6cb;background:#fff;color:var(--ink);font:500 .85rem var(--sans);cursor:pointer}
.nfp .nfp-cp:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.nfp-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;margin-bottom:88px;border:1px solid #e9dfe4;border-radius:28px;padding:34px 38px;background:var(--soft)}
.nfp-contact__txt{max-width:30em}
.nfp .nfp-contact h2{font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.nfp-contact p{margin:0}
.nfp-contact__btns{display:flex;flex-wrap:wrap;gap:12px}

/* tablets and phones */
@media (max-width:960px){
 .nfp-hero__grid{grid-template-columns:minmax(0,1fr)}
 .nfp-hero__art{display:none}
 .nfp-glance{grid-template-columns:minmax(0,1fr);margin-top:-34px}
 .nfp-glance>div+div{border-left:0;border-top:1px solid var(--line)}
 .nfp-layout{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:48px}
 .nfp-toc{position:static}
 .nfp-acct div{grid-template-columns:1fr auto}
 .nfp-acct small{grid-column:1 / -1}
}
@media (max-width:560px){
 .nfp-w{width:min(100% - 32px,1200px)}
 .nfp-hero{padding:92px 0 84px}
 .nfp .nfp-hero h1{font-size:clamp(2.3rem,12vw,3rem);margin:18px 0 14px}
 .nfp-hero__lead{font-size:1rem}
 .nfp-meta li{flex:1 1 calc(50% - 10px);padding:10px 14px}
 .nfp-hero__btns{flex-wrap:nowrap;gap:10px}
 .nfp .nfp-hero__btns .nfp-btn{flex:1 1 0;min-width:0;padding:0 10px;font-size:.88rem}
 .nfp-glance>div{padding:20px}
 .nfp-cl{grid-template-columns:44px minmax(0,1fr)}
 .nfp-cl p{font-size:1rem}
 .nfp-note{padding:16px;gap:12px}
 .nfp-fig{padding:18px 14px 14px}
 .nfp-bar{height:46px;font-size:.85rem}
 .nfp-bar__due{padding:0 14px}.nfp-bar__late{padding:0 12px}
 .nfp-ticks{font-size:.74rem;height:60px}
 .nfp-contact{padding:26px 22px;border-radius:24px;margin-bottom:56px}
 .nfp-contact__btns{width:100%}
 .nfp .nfp-contact__btns .nfp-btn{flex:1 1 100%;white-space:normal;text-align:center}
}

/* printing: a clean A4 document (the page margin is 0 so the browser adds no date or web address lines) */
@page{size:A4;margin:0}
@media print{
 html,body{background:#fff!important;margin:0!important;padding:0!important;height:auto!important;overflow:visible!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 header.et-l,footer.et-l,.et-l--header,.et-l--footer,#wpadminbar,.nhibot,[class^="nhibot"],[class*=" nhibot"],[id^="nhibot"],
 .nfp-ribbons,.nfp-hero__art,.nfp-hero__btns,.nfp-toc,.nfp-contact,.nfp-cp,.nfp-crumbs{display:none!important}
 body.nfp-body #main-content{background:#fff!important}
 .nfp{padding:14mm 16mm;font-size:10.5pt;line-height:1.55;color:#000}
 .nfp-hero{background:#fff!important;color:#000;padding:0 0 6mm;overflow:visible}
 .nfp .nfp-hero h1{color:#000;font-size:26pt;margin:0 0 3mm}
 .nfp .nfp-hero h1 em{color:#8F3D63}
 .nfp-hero__lead{color:#333;font-size:10.5pt}
 .nfp-meta{margin-top:4mm}
 .nfp-meta li{background:#fff;border-color:#bbb;color:#000}
 .nfp-meta b{color:#555}
 .nfp-w{width:auto}
 .nfp-glance{margin-top:2mm;box-shadow:none;break-inside:avoid}
 .nfp-layout{display:block;margin-top:6mm;padding-bottom:0}
 .nfp-doc{max-width:none}
 .nfp-doc section{padding-bottom:5mm;margin-bottom:5mm;break-inside:avoid}
 .nfp-note,.nfp-fig,.nfp-acct,.nfp-cl{break-inside:avoid}
}
