You need Hugo 0.158 or newer; the standard edition is enough. Run hugo server in exampleSite for a local server on port 1313 that reloads as you edit, and hugo --gc to build the site into exampleSite/public. Node.js is only needed to rebuild the stylesheet after you change tailwind/: npm install once, then npm run build:css.
Open hugo.toml first. It holds the site title and the title template, the description, the base URL used for canonical links and the sitemap, the social sharing image, the footer credit line, and the phone number, email and offices shown on the four contact pages. Set baseURL to your real domain before the first deploy, or the sitemap and canonical tags will point at the preview.
The menus in hugo.toml define the header row, the three mega menu panels and their cards, the five footer link columns, the footer contact columns and the policy links. Each entry is a name, a URL and, for a mega menu link, an icon and a line under it. Remove an entry from these menus and it disappears everywhere it appeared.
The theme ships four complete versions of the site — all solutions in one at the root, and energy, ESG and environmental variants under their own prefixes. They are different designs rather than translations. Keep the one that fits your business and delete the other three folders under content, along with their entries in the menus.
Everything the site lists lives in content as Markdown: posts, projects, solutions, team members, open roles, testimonials, pricing plans, FAQs, awards and more. Each file is front matter plus a body, each row carries a weight that decides where it appears, and an image named in front matter that does not exist fails the build. Add a file to add a row.
Every design token the theme uses is declared in tailwind/theme.css. Change a value there, run npm run build:css, and it propagates through the whole site — the templates ask for a token rather than naming a color.
1. Swapping the fonts
2. Changing the colors
Spacing and radii are variables in the same file. Prefer editing them over adding one-off utilities, so the rhythm stays consistent across pages.
The scroll reveals, the split-text headings and the smooth scrolling are GSAP and Lenis, driven from assets/js rather than from anything in the markup. Nothing is hidden until a script runs, so removing the motion leaves a working site rather than a blank one.
1. Tuning the animations
2. Removing it entirely
The photography in assets/images is placeholder stock that is not licensed to you — replace it before launch. Files are named from front matter and the templates, so dropping a replacement into your site’s own assets/images with the same name keeps every layout intact. Hugo encodes and sizes them at build time; supply the largest version you have.
hugo --gc writes a static site to exampleSite/public, and hugo server shows it as it will be served. Any static host works — Netlify, Vercel, Cloudflare Pages, GitHub Pages or your own bucket. Set the build command to hugo --gc and the publish directory to public, and make sure baseURL in hugo.toml matches the domain you deploy to.