We use cookies to improve your experience on our website. By clicking “Accept all’, you agree to the use of all cookies. More information

Typography

Fonts and sizes used through the entire website

Heading 1

H1 Headings

Element

h1
3xl

Class

h1
2xl

Class

h1
xl

Class

h1
large

Class

h1

Class

Heading 2

H2 Headings

Element

h2
large

Class

h2
medium

Class

h2
small

Class

h2

Class

Heading 3

H3 Headings

Element

h3

Class

Heading 4

H4 Headings

Element

h4

Class

Heading 5

H5 Headings
Element
h5
Class

Heading 6

H6 Headings
Element
h6
Class

Paragraph

Paragraphs

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

PS

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

PL

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

PXL

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

Lists

Unordered List
  • List A
  • List B
  • List C
Unordered List
  • List A
    • Nested List 1
      • Nested List 2
  • List B
  • List C
Ordered List
  1. List A
  2. List B
  3. List C
Ordered List
  1. List A
    1. Nested List 1
      1. Nested List 3
  2. List B
  3. List C

Misc

Block Quotes
Block Quote

Colours

Brand colours exported from the a Figma Library.

Figma

Loading color tokens...

Note: Colours load from two JSON token files hosted on GitHub. Please make sure they are linked correctly.
Important: Brand colour modes are no longer supported. If your project requires them, they must be added in from scratch. You can reference Net Temps to see how this is done or replicate the default 'Colour Theme' collection.

Text Color

u-color-green-600

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

u-color-grey-500

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

u-color-grey-500

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique.

Buttons & UI

Various links and buttons used throughout.

Button components are pending and will be moved to the Components page when ready.

Buttons

Primary
Button
Button Text
master-button
master-button
cc-white-btn
master-button
cc-black-btn
Sizes
master-button
master-button
cc-medium
master-button
cc-small
Support & Secondary
master-button
cc-error
master-button
cc-copied
master-button
cc-secondary
Outlined
master-button
cc-outlined-1
master-button
cc-outlined-1
Finsweet Cookie Consent
Legacy: All buttons here are part of Finsweet's Cookie Consen v1 prior to the launch of Consent Pro. These are set to be removed for standard .master-button naming instead.
fs-cc-prefs_button
fs-cc-prefs_button
fs-cc-button-alt
fs-cc-prefs_button
fs-cc-button-transparent
Experimental
SwoooshSSSwwwooooooooossshhh
Glide-Over
Important: The CSS for this has been hidden due to conflicts and CSS bleed.
Note: These are experimental and may never be truly implemented.

Forms

Contact forms and other interactive user input fields.

Option 1

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Option 2

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Tracking

Hidden fields for UTM parameter capture and page URL

<!-- Requires fcd-utm-hidden-fields.js -->
<input type="hidden" class="utm_source" name="utm_source" value="">
<input type="hidden" class="utm_medium" name="utm_medium" value="">
<input type="hidden" class="utm_campaign" name="utm_campaign" value="">
<input type="hidden" class="utm_term" name="utm_term" value="">
<input type="hidden" class="utm_content" name="utm_content" value="">

<!-- Requires fcd-capture-page-url.js -->
<input type="hidden" id="pageurl" name="PageURL" value="">

<!-- CF7 fields 
  [hidden utm_source default:get]
  [hidden utm_medium default:get]
  [hidden utm_campaign default:get]
  [hidden utm_term default:get]
  [hidden utm_content default:get]
-->
These hidden form fields are pre-applied to the sample forms above. WordPress CF7 must be added manually.
Page URL: insert here

Cloudflare Turnstile

Hidden fields for UTM parameter capture and page URL

<head>
  <!-- Cloudflare Turnstile -->
  <script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
</head>
<!-- Cloudflare Turnstile -->
<div class="cf-turnstile" data-sitekey="YOUR_SITE_KEY" data-callback="javascriptCallback"></div>
Cloudflare Turnstile requires DNS to be with Cloudflare and the site to be published on the correct domain. HTML visibility is hidden within Webflow by default and the <script> is commented out.

HTML Elements

A collection of global UI elements & HTML components. This section is used to reference anything from badges to global HTML elements.

Modal

This uses an HTML <dialog> to get all of the accessibility benefits for free. The modal should always come before the button that opens it. To update the modal contents, select it in the navigator, and add any value to open attribute in the element settings.

Requires fcd-open-modal.js on GitHub (Release v1.0.7 or higher)
Modal

Theme Switcher

Controls the dark / light / system colour preferences and stores the value inside the local browser storage.

Requires fcd-theme-switcher/logic-part1.js and fcd-theme-swtcher/logic-part2.js on GitHub (Release v1.1.3). A configuration script must be placed in the <head> - a sample is found in GitHub.
Potential Privacy Violation: This script adds a value to the local storage. It is a third-party script (loaded from an external source) and therefore, must be disclossed in the privacy policy.

Generic Notices

A collection of notices used to indicate errors, success, and warnings

General
Tip: You can use the contact details above and this yellow notice throughout the project.
Warning
Tip: You can use the contact details above and this yellow notice throughout the project.
Success
Awesome! We've sent your message.
Error
Oops! Something has gone wrong...

System Notices

These are used by scripts (i.e. click to copy URL)

Success
Page URL Copied!
Error
Error copying URL. Please try again or refresh

Site Notices

Used within the navbar primarily but can be place anywhere.

Dismssable
Fixed
Preview: You're viewing example pages on START:Sites, please return to the getting started page.

Custom CSS Cursor

This contains an elements for a custom cursor. Code that operates it is also shown (GSAP already integrated)

Javascript
document.addEventListener("DOMContentLoaded", ()=>{
  
  gsap.set(".cursor", {xPercent:-50, yPercent: -50});

  let xTo = gsap.quickTo(".cursor", "x", {duration: 0.6, ease: "power3"});
  let yTo = gsap.quickTo(".cursor", "y", {duration: 0.6, ease: "power3"});

  window.addEventListener("mousemove", e => {
    xTo(e.clientX);
    yTo(e.clientY);
  });
  
})
Note: This code has already been added to the site settings in </body>. It is only required to enable the .cursor HTML element (a dot that follows the users mouse). Otherwise, pure CSS can be used with the HTML.
Cusor HTML
Important: This element simples adds a dot that follows the cursor. The HTML is within global-code component.
CSS
body:has( a:hover) .cursor,
body:has( button:hover) .cursor,
body:has( [data-cursor]:hover) .cursor{
  width: 3em;
  height: 3em;
  background-color: rgba(255, 76, 36, 0.3);
}

@media (hover: none) and (pointer: coarse) {
  .cursor {
    display: none;
  }
}

/* ------------------------- Big Pixel Cursor ------------------------- */

/* Default cursor */
body.is--cursor,
body.is--cursor * {
  cursor: url("https://cdn.prod.website-files.com/6708f85ff3d3cba6aff436fb/671251b239d7aeb290a31ac5_cursor-default%402x.svg") 2 0, auto;
}

/* Text cursor */
body.is--cursor p,
body.is--cursor p span,
body.is--cursor h1,
body.is--cursor h2,
body.is--cursor h3,
body.is--cursor h4,
body.is--cursor h5,
body.is--cursor h6,
body.is--cursor input[type="text"],
body.is--cursor input[type="email"],
body.is--cursor textarea,
body.is--cursor [data-text] {
  cursor: url("https://cdn.prod.website-files.com/6708f85ff3d3cba6aff436fb/6714e4e1f367de40becf9029_cursor-text%402x.svg") 9 19, text;
}

/* Hover cursor */
body.is--cursor a,
body.is--cursor a *,
body.is--cursor a p,
body.is--cursor button,
body.is--cursor button *,
body.is--cursor input[type="submit"],
body.is--cursor input[type="submit"] *,
body.is--cursor input[type="button"],
body.is--cursor input[type="button"] *,
body.is--cursor [data-submit],
body.is--cursor [data-submit] *,
body.is--cursor [data-hover],
body.is--cursor [data-hover] *,
body.is--cursor [data-anchor-target],
body.is--cursor [data-vimeo-player-init],
body.is--cursor [data-vimeo-player-init] *,
body.is--cursor .vimeo-bg__btn,
body.is--cursor .vimeo-bg__btn *,
body.is--cursor input[type="radio"],
body.is--cursor input[type="checkbox"],
body.is--cursor select,
body.is--cursor .radiocheck-label{
  cursor: url("https://cdn.prod.website-files.com/6708f85ff3d3cba6aff436fb/671251b212e6b71494aa67ff_cursor-pointer%402x.svg") 12 0, pointer;
}
Issues: Current cursor CSS does not support hover effects for buttons and various v2.0 changes. This is simply how every cursor: pointer; property has to be overriden manually - there's no simple way to check (as of July 2026)
Note: Already added to global-code and requires .is--cursor on the <body> to work.

Global HTML elements

A collection of notices used to indicate errors, success, and warnings

section_global
container_global
btn-hold
NOTE: These HTML elements have a combo class to display here.
Swiper Pagniation
Swiper Scrollbar
Toastify
TippyJS Tooltip
Hover mouse here
Note: Requires .u-tippy to initialise. Tippy theme is currently set to light - can be changed in project settings.
ChartJS Instance
Bokeh Chart Instance (Experimental)

NOTE: A Python library which converts Python data into a HTML chart. Guide can be found here.

Style Guide - System Dialogue

NOTE: A Python library which converts Python data into a HTML chart. Guide can be found here.

Utility CSS

These are often used throughout a project for space, padding and margin changes.

Spacers

u-card-shadow

Utility CSS

These are often used throughout a project for space, padding and margin changes.

Spacers

05em-spacer
1em-spacer
2em-spacer
3em-spacer
4em-spacer
5em-spacer
6em-spacer

Margin

Top
u-mt-auto
margin-top: auto;
u-mt-0
margin-top: 0;
u-mt-xxs
margin-top: 0.25rem;
u-mt-xs
margin-top: 0.5rem;
u-mt-small
margin-top: 1rem;
u-mt-medium
margin-top: 1.5rem;
u-mt-normal
margin-top: 2.5rem;
u-mt-large
margin-top: 3.5rem;
u-mt-xl
margin-top: 4.5rem;
u-mt-xxl
margin-top: 6rem;
u-mt-ultra
margin-top: 7rem;
Bottom
u-mb-0
margin-bottom: 0;
u-mb-xxs
margin-bottom: 0.25rem;
u-mb-xs
margin-bottom: 0.5rem;
u-mb-small
margin-bottom: 1rem;
u-mb-medium
margin-bottom: 1.5rem;
u-mb-normal
margin-bottom: 2.5rem;
u-mb-large
margin-bottom: 3.5rem;
u-mb-xl
margin-bottom: 4.5rem;
u-mb-xxl
margin-bottom: 6rem;
u-mb-ultra
margin-bottom: 7rem;

Padding

Top
u-pt-0
padding-top: 0;
u-pt-xxs
padding-top: 0.25rem;
u-pt-xs
padding-top: 0.5rem;
u-pt-small
padding-top: 1rem;
u-pt-medium
padding-top: 1.5rem;
u-pt-normal
padding-top: 2.5rem;
u-pt-large
padding-top: 3.5rem;
u-pt-xl
padding-top: 4.5rem;
u-pt-xxl
padding-top: 6rem;
u-pt-ultra
padding-top: 7rem;
Bottom
u-pb-0
padding-bottom: 0;
u-pb-xxs
padding-bottom: 0.25rem;
u-pb-xs
padding-bottom: 0.5rem;
u-pb-small
padding-bottom: 1rem;
u-pb-medium
padding-bottom: 1.5rem;
u-pb-normal
padding-bottom: 2.5rem;
u-pb-large
padding-bottom: 3.5rem;
u-pb-xl
padding-bottom: 4.5rem;
u-pb-xxl
padding-bottom: 6rem;
u-pb-ultra
padding-bottom: 7rem;