This document defines how page-specific CSS classes must be handled across the entire site — public and hidden pages included. Follow these instructions precisely — no shortcuts, no assumptions, no creative interpretation.
Each page must have its own dedicated set of CSS class names, clearly prefixed based on the page name, to ensure:
Only the following components are allowed to use unprefixed global styles:
Classes related to navigation and footer must remain globally named (example: nav-container, footer-block).
All other styles — without exception — must be page-prefixed.
The navigation and footer are implemented as modular components:
nav.html
contains the navigation markup (<nav> element with links).footer.html
contains the footer markup (a <div> with class footer-block and its sections).Each page includes the following placeholder elements:
<div id="navbar"></div>
<div id="footer"></div>
A small JavaScript snippet at the bottom of each page dynamically loads the components using the fetch() API.
The loaded HTML is inserted into the placeholder elements via innerHTML.
Important notes:
Prefix rules are as follows:
index.html
= prefix "index-"about.html
= prefix "about-"ebooks.html
= prefix "ebooks-"ventures.html
= prefix "ventures-"Hidden and internal pages must also use the correct prefix — no exceptions.
Important notes:
Class used in HTML: "hero-section"
Class used in CSS: ".hero-section"
This is wrong because it is not prefixed.
Class used in HTML: "index-hero-section"
Class used in CSS: ".index-hero-section"
This is correct because it is scoped specifically to index.html.
Failure to properly prefix will cause:
Important: Follow the instructions carefully. Move methodically. Verify each page before moving forward.