
:root{
  --nf-bg:#07111e;--nf-panel:#0c1a2c;--nf-panel2:#10233b;--nf-line:rgba(122,199,225,.25);
  --nf-text:#edf7ff;--nf-muted:#b9ccdb;--nf-cyan:#8bd7ed;--nf-gold:#e7bf68;--nf-green:#9fe0b0;
}
html{scroll-behavior:smooth} body{background:var(--nf-bg);color:var(--nf-text)}
.nf-page{font-family:Arial,Helvetica,sans-serif;background:radial-gradient(circle at 74% 5%,rgba(53,143,168,.13),transparent 28%),linear-gradient(180deg,#07111e 0%,#081322 45%,#050c15 100%);min-height:100vh}
.nf-shell{width:1320px;max-width:calc(100% - 72px);margin:0 auto}.nf-kicker{text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--nf-gold);font-size:13px}.nf-muted{color:var(--nf-muted)}
.nf-hero{padding:56px 0 40px;border-bottom:1px solid var(--nf-line)}.nf-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}.nf-hero h1{font-family:Georgia,serif;font-size:76px;line-height:.94;margin:12px 0 14px;color:#fff;letter-spacing:-.035em}.nf-hero h2{font-family:Georgia,serif;font-size:31px;line-height:1.15;margin:0 0 18px;color:#dff5ff;font-weight:500}.nf-lede{font-size:19px;line-height:1.65;color:#c7d8e6;max-width:840px}.nf-hero-art{margin:0;position:relative}.nf-hero-art img{display:block;width:100%;height:500px;object-fit:cover;border-radius:28px;border:1px solid rgba(139,215,237,.38);box-shadow:0 28px 80px rgba(0,0,0,.42)}.nf-hero-art figcaption{margin-top:10px;color:#8ea7ba;font-size:12px;line-height:1.4}
.nf-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.nf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(139,215,237,.4);background:rgba(31,83,108,.25);color:#effbff;text-decoration:none;font-weight:800}.nf-btn:hover{border-color:var(--nf-cyan);background:rgba(55,130,157,.28)}.nf-btn.gold{color:#ffe7a8;border-color:rgba(231,191,104,.55);background:rgba(112,78,25,.24)}
.nf-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.nf-stat{border:1px solid var(--nf-line);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.025)}.nf-stat b{display:block;color:#fff;font-size:15px;margin-bottom:3px}.nf-stat span{font-size:12px;color:#99b4c8;line-height:1.35}
.nf-section{padding:48px 0}.nf-section+.nf-section{border-top:1px solid rgba(122,199,225,.12)}.nf-section-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:end;margin-bottom:24px}.nf-section h2{font-family:Georgia,serif;font-size:43px;line-height:1.05;margin:7px 0;color:#fff}.nf-section-intro{font-size:16px;line-height:1.65;color:#bcd0df;margin:0;max-width:780px}
.nf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.nf-grid.two{grid-template-columns:repeat(2,1fr)}.nf-grid.four{grid-template-columns:repeat(4,1fr)}
.nf-card{display:block;background:linear-gradient(145deg,rgba(17,39,65,.94),rgba(7,16,29,.98));border:1px solid var(--nf-line);border-radius:20px;padding:20px;text-decoration:none;color:inherit;box-shadow:0 15px 45px rgba(0,0,0,.18)}a.nf-card:hover{border-color:rgba(139,215,237,.65);transform:translateY(-2px)}.nf-card h3{font-family:Georgia,serif;font-size:24px;line-height:1.15;margin:4px 0 10px;color:#fff}.nf-card p{margin:0;color:#b8cddd;line-height:1.55;font-size:14px}.nf-card .nf-small{display:block;color:var(--nf-gold);text-transform:uppercase;letter-spacing:.10em;font-size:11px;font-weight:900;margin-bottom:7px}
.nf-book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.nf-book-grid.companions{grid-template-columns:repeat(3,1fr);max-width:1020px}.nf-book-card{display:flex;flex-direction:column;border-radius:22px;overflow:hidden;border:1px solid rgba(139,215,237,.26);background:linear-gradient(155deg,rgba(17,37,61,.97),rgba(7,15,26,.99));text-decoration:none;color:inherit;box-shadow:0 18px 50px rgba(0,0,0,.25)}.nf-book-card:hover{border-color:rgba(231,191,104,.55);transform:translateY(-2px)}.nf-cover{aspect-ratio:2/3;background:#08101c;overflow:hidden;border-bottom:1px solid rgba(139,215,237,.18)}.nf-cover img{display:block;width:100%;height:100%;object-fit:cover}.nf-book-copy{padding:17px 17px 20px}.nf-book-copy .nf-small{color:var(--nf-gold);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.nf-book-copy h3{font-family:Georgia,serif;font-size:23px;line-height:1.1;margin:6px 0 5px;color:#fff}.nf-book-copy h4{font-family:Arial,sans-serif;font-size:13px;line-height:1.35;margin:0 0 10px;color:#9bdcee;text-transform:uppercase;letter-spacing:.05em}.nf-book-copy p{font-size:13px;line-height:1.5;color:#b9cddd;margin:0}
.nf-banner{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;padding:25px;border:1px solid rgba(231,191,104,.26);border-radius:24px;background:linear-gradient(135deg,rgba(17,36,58,.94),rgba(7,15,26,.98))}.nf-banner img{display:block;width:100%;height:370px;object-fit:cover;border-radius:16px;border:1px solid var(--nf-line)}.nf-banner h3{font-family:Georgia,serif;font-size:32px;margin:4px 0 12px}.nf-banner p{color:#bfd0dd;line-height:1.6}.nf-pills{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.nf-pill{border:1px solid rgba(139,215,237,.26);border-radius:999px;padding:7px 11px;color:#bfe7f2;background:rgba(139,215,237,.05);font-size:11px;font-weight:800}
.nf-breadcrumbs{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#9fb7ca;padding-top:22px}.nf-breadcrumbs a{color:#a9ddeb;text-decoration:none}.nf-breadcrumbs a:hover{text-decoration:underline}.nf-subhero{padding:34px 0 36px;border-bottom:1px solid var(--nf-line)}.nf-subhero-grid{display:grid;grid-template-columns:350px 1fr;gap:40px;align-items:center}.nf-subcover{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:21px;border:1px solid rgba(139,215,237,.35);box-shadow:0 22px 60px rgba(0,0,0,.35)}.nf-subhero h1{font-family:Georgia,serif;font-size:56px;line-height:.98;margin:8px 0 10px;color:#fff}.nf-subhero h2{font-family:Georgia,serif;font-weight:500;font-size:26px;color:#ccebf4;margin:0 0 15px}.nf-subhero p{font-size:17px;line-height:1.65;color:#bfd1df;max-width:820px}.nf-label{display:inline-block;border:1px solid rgba(231,191,104,.45);border-radius:999px;padding:6px 10px;color:#f1d78e;background:rgba(231,191,104,.08);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.10em}
.nf-prose{max-width:930px}.nf-prose h2{font-size:39px}.nf-prose h3{font-family:Georgia,serif;font-size:25px;margin:27px 0 8px}.nf-prose p,.nf-prose li{font-size:16px;line-height:1.72;color:#c0d1de}.nf-prose ul{padding-left:22px}.nf-callout{border-left:3px solid var(--nf-gold);padding:15px 18px;background:rgba(231,191,104,.05);border-radius:0 14px 14px 0;margin:22px 0;color:#d9e5eb;line-height:1.6}.nf-note-box{border:1px solid rgba(139,215,237,.24);border-radius:16px;padding:16px 18px;background:rgba(139,215,237,.045);color:#bfd0dc;line-height:1.55}.nf-note-box strong{color:#fff}
.nf-device-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.nf-device-card{border:1px solid var(--nf-line);border-radius:17px;padding:12px;background:linear-gradient(145deg,rgba(15,34,57,.95),rgba(6,14,25,.99))}.nf-device-card img{display:block;width:100%;height:220px;object-fit:contain;background:#07101b;border-radius:12px}.nf-device-card b{display:block;font-family:Georgia,serif;font-size:20px;margin-top:10px;color:#fff}.nf-device-card span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#e7c973;font-weight:900;margin-top:2px}.nf-device-card p{font-size:12px;line-height:1.45;color:#acc3d3}
.nf-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.nf-gallery figure{margin:0;border:1px solid var(--nf-line);border-radius:18px;overflow:hidden;background:#081321}.nf-gallery img{display:block;width:100%;height:260px;object-fit:cover}.nf-gallery figcaption{padding:11px 13px;color:#afc4d3;font-size:12px;line-height:1.45}
.nf-next{display:flex;justify-content:space-between;gap:16px;margin-top:30px}.nf-next a{flex:1;border:1px solid var(--nf-line);border-radius:14px;padding:14px 16px;color:#d9f1f7;text-decoration:none;background:rgba(139,215,237,.04)}.nf-next a:last-child{text-align:right}.nf-next a:hover{border-color:var(--nf-cyan)}
.nf-footer{border-top:1px solid var(--nf-line);margin-top:28px;padding:28px 0 36px;color:#8fa6b7;font-size:12px}.nf-footer-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.nf-footer a{color:#b9dce7;text-decoration:none}.nf-footer a:hover{text-decoration:underline}
.nf-redirect{display:grid;place-items:center;min-height:600px;text-align:center}.nf-redirect .nf-card{max-width:700px}.nf-redirect h1{font-family:Georgia,serif;font-size:44px;margin:6px 0 12px}.nf-redirect p{font-size:16px}.nf-table{width:100%;border-collapse:collapse;margin:20px 0}.nf-table th,.nf-table td{padding:13px 14px;border-bottom:1px solid var(--nf-line);text-align:left;vertical-align:top}.nf-table th{color:#f2d789;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.nf-table td{color:#bdceda;line-height:1.5}.nf-table td strong{color:#fff}
@media(max-width:1100px){.nf-hero-grid,.nf-section-head,.nf-banner,.nf-subhero-grid{grid-template-columns:1fr}.nf-hero-art img{height:420px}.nf-book-grid{grid-template-columns:repeat(2,1fr)}.nf-book-grid.companions{grid-template-columns:repeat(2,1fr)}.nf-grid.four{grid-template-columns:repeat(2,1fr)}.nf-device-grid{grid-template-columns:repeat(2,1fr)}.nf-subhero-grid{grid-template-columns:280px 1fr}.nf-stat-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.nf-shell{max-width:calc(100% - 34px)}.nf-hero h1{font-size:52px}.nf-hero h2{font-size:25px}.nf-book-grid,.nf-book-grid.companions,.nf-grid,.nf-grid.two,.nf-grid.four,.nf-gallery{grid-template-columns:1fr}.nf-subhero-grid{grid-template-columns:1fr}.nf-subcover{max-width:360px}.nf-device-grid{grid-template-columns:1fr}.nf-stat-row{grid-template-columns:1fr 1fr}.nf-footer-row{display:block}.nf-next{display:block}.nf-next a{display:block;margin:8px 0;text-align:left!important}}


/* Final Studios pass — real-world context and no-cliche visual hierarchy */
.nf-reality{background:linear-gradient(180deg,rgba(13,38,58,.42),rgba(4,13,23,.05))}
.nf-reality-art{margin:4px 0 22px;border:1px solid var(--nf-line);border-radius:22px;overflow:hidden;background:#07111e}
.nf-reality-art img{display:block;width:100%;height:390px;object-fit:cover}
.nf-reality-art figcaption{display:flex;justify-content:space-between;gap:24px;padding:13px 16px;color:#a9c1d1;font-size:12px;line-height:1.45}.nf-reality-art figcaption strong{color:#fff}.nf-reality-art figcaption span{max-width:760px}
.nf-reality-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0 26px}.nf-reality-stat{padding:20px 18px;border:1px solid rgba(139,215,237,.26);border-radius:18px;background:linear-gradient(145deg,rgba(13,38,61,.88),rgba(5,14,25,.96))}.nf-reality-stat b{display:block;color:#fff;font-family:Georgia,serif;font-size:31px;line-height:1;margin-bottom:8px}.nf-reality-stat span{display:block;color:#b8cddd;font-size:13px;line-height:1.5}
.nf-solution-head{margin-top:30px}.nf-solution-grid{grid-template-columns:repeat(3,1fr)!important}.nf-source-note{font-size:12px}.nf-source-note a{color:#aee8f5;text-decoration:underline}
.nf-hero-art img{object-position:center;filter:saturate(.98) contrast(1.03)}
@media(max-width:1100px){.nf-reality-stats{grid-template-columns:repeat(2,1fr)}.nf-reality-art img{height:330px}}
@media(max-width:720px){.nf-reality-stats,.nf-solution-grid{grid-template-columns:1fr!important}.nf-reality-art img{height:250px}.nf-reality-art figcaption{display:block}.nf-reality-art figcaption span{display:block;margin-top:5px}}


/* R4 — locked-cover series architecture */
.nf-prequel-feature{display:grid;grid-template-columns:330px 1fr;gap:28px;align-items:center;margin:8px 0 34px;padding:18px;border:1px solid rgba(231,191,104,.38);border-radius:22px;background:linear-gradient(135deg,rgba(32,42,54,.96),rgba(8,18,31,.98));text-decoration:none;color:inherit;box-shadow:0 18px 48px rgba(0,0,0,.24)}
.nf-prequel-feature:hover{border-color:rgba(231,191,104,.72);transform:translateY(-2px)}
.nf-prequel-feature img{display:block;width:100%;height:230px;object-fit:cover;object-position:center;border-radius:14px;border:1px solid rgba(139,215,237,.25)}
.nf-prequel-feature .nf-small{display:block;color:var(--nf-gold);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900;margin-bottom:6px}
.nf-prequel-feature h3{font-family:Georgia,serif;font-size:33px;line-height:1.05;margin:0 0 7px;color:#fff}
.nf-prequel-feature h4{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:#9bdcee;margin:0 0 10px}
.nf-prequel-feature p{color:#bfd0dd;font-size:15px;line-height:1.58;margin:0 0 12px}
.nf-inline-link{color:#f2d78d;font-weight:900;font-size:13px}
.nf-sequence-kicker{margin:3px 0 14px}
.nf-cover img{object-fit:cover!important;object-position:center!important}
.nf-origin-visual{object-fit:cover!important;object-position:center!important;background:#07111e}
@media(max-width:900px){.nf-prequel-feature{grid-template-columns:1fr}.nf-prequel-feature img{height:300px}}


/* R5 FINAL — core shelf first; no public Origins lane */
.nf-books-priority{padding-top:42px!important;padding-bottom:34px!important;border-top:1px solid rgba(139,215,237,.18)}
.nf-companion-priority{padding-top:26px!important;padding-bottom:44px!important}
.nf-books-priority .nf-section-head,.nf-companion-priority .nf-section-head{margin-bottom:20px}
.nf-books-priority .nf-book-grid{margin-top:8px}
.nf-companion-priority .nf-book-grid{margin-top:8px}
.nf-reality{border-top:1px solid rgba(139,215,237,.18)}
.nf-solution-grid .nf-card p{margin-bottom:0}
@media(max-width:900px){.nf-books-priority{padding-top:30px!important}.nf-companion-priority{padding-top:18px!important}}
