LearnGlazing

LearnGlazing brand & interface guide

Design with clarity. Build with confidence.

The shared source of truth for the LearnGlazing brand, digital experiences, content patterns, and front-end implementation.

Version 1.0 Web-first WCAG 2.2 AA target

Start here

Design principles

Every LearnGlazing experience should help people understand technical information, take the next step, and feel capable while doing it.

01

Make expertise approachable

Use plain language, visible structure, and familiar controls. Technical does not have to mean intimidating.

02

Teach through the interface

Labels, examples, helper text, and feedback should remove uncertainty before it becomes friction.

03

Use green with purpose

Brand green identifies action, progress, and positive emphasis. Avoid turning every surface into a competing accent.

04

Build for real conditions

Support keyboards, small screens, slow connections, zoom, long names, errors, and interrupted tasks.

Identity

LearnGlazing logos

Use the complete LearnGlazing logo wherever space allows. The symbol is reserved for compact or clearly branded contexts. SVG is preferred for interfaces and print; PNG is available for software that cannot use vector artwork.

LearnGlazing logo in black
LearnGlazing logo in white

Do

Keep clear space around the mark, preserve its proportions, and choose the version with strongest contrast.

Don’t

Stretch, rotate, outline, recolor, add effects, or place the logo over visually busy photography.

Logo downloads

Preview of the dark LearnGlazing wordmark

Dark wordmark

Light backgrounds · PDF, SVG & EPS

Preview of the white LearnGlazing wordmark

White wordmark

Dark backgrounds · PDF, SVG & EPS

Preview of the color LearnGlazing symbol

Color symbol

Compact use · SVG & EPS

Preview of the white LearnGlazing symbol

White symbol

Dark backgrounds · PDF, SVG & EPS

Preview of the dark LearnGlazing circle logo

Dark circle

Light backgrounds · PDF, SVG & EPS

Preview of the white LearnGlazing circle logo

White circle

Dark backgrounds · PDF, SVG & EPS

Preview of the AIA Continuing Education approved logo

AIA CES logo

Course pages & materials · PDF, SVG & EPS

Favicon & touch icons

Use the transparent PNG favicon for modern browsers and the 180×180 touch icon for Apple home-screen and progressive-web-app contexts.

LearnGlazing favicon preview

Favicon PNG

favicon.png · 32×32 · Transparent

Download PNG
LearnGlazing JPEG favicon preview

Favicon fallback

favicon.jpg · 32×32 · JPEG

Download JPG
LearnGlazing Apple touch icon preview

Apple touch icon

splash/touch.png · 180×180

Download PNG
LearnGlazing legacy touch icon preview

Legacy touch icon

icons/touch.png · 180×180

Download PNG

Foundations

Color

The greens create recognition and momentum; charcoal and neutral tones carry most content and interface structure.

#D1ED64
#8CC63F
#39B54A
#2C2E3D
#252525
#F1F1F1

Usage rules

  • Use charcoal or very dark gray for body copy.
  • Reserve green for actions, progress, and emphasis.
  • Check text and UI contrast before shipping.
  • Never communicate status through color alone.

Brand assets

LearnGlazing icon library

Download the original SVG assets used throughout the WordPress and Thinkific experiences. Keep their proportions and internal colors intact; resize the SVG rather than editing its paths.

Audience & training icons

Learning

learning.svg

General education, courses, and learning paths.

Download SVG

Drafting

icon-drafting.svg

Drafting, design, and technical-document content.

Download SVG

Project manager

icon-pm-1.svg

Project-management audience and responsibility content.

Download SVG

Project manager alternate

icon-pm-2.svg

Alternate PM illustration for campaign compositions.

Download SVG

Glass contractor

icon-contractor.svg

Contractor and company-growth audience content.

Download SVG

Contractor alternate

icon-contractor-2.svg

Alternate contractor illustration for campaign compositions.

Download SVG

Tools

icon-tools.svg

Resources, practical skills, and additional training.

Download SVG

Architectural icons

Architectural education

architectural-icon-01.svg

Architect-focused education and learning resources.

Download SVG

Technical planning

architectural-icon-02.svg

Measurement, planning, and technical design.

Download SVG

Specification tools

architectural-icon-03.svg

Tools, specifications, and architectural workflow.

Download SVG

Interface icons

Search

search.svg

Search fields and search-opening controls.

Download SVG

Check

check.svg

Completed or confirmed states with supporting text.

Download SVG

Chevron right

chevronRight.svg

Forward navigation and compact directional affordances.

Download SVG

Close

close.svg

Dismissal controls on light surfaces.

Download SVG

Close inverse

icon-close-white.svg

Dismissal controls on charcoal or image surfaces.

Download SVG

Resource link

link.svg

Thinkific resource-library link treatment.

Download SVG

Do

Use the supplied SVG, provide an accessible label when it carries meaning, and keep a consistent optical size within each icon group.

Don’t

Mix these custom illustrations with unrelated icon styles, distort their aspect ratio, or use an icon as the only status indicator.

Foundations

Typography

Montserrat establishes hierarchy and brand character. Open Sans carries instructional and interface content. The same base hierarchy is shared by WordPress and Thinkific, with contextual variants for banners, articles, cards, and learning surfaces.

Heading hierarchy

Use headings semantically and in order. Their visual size may change by context, but an H3 must not replace an H2 merely because it looks smaller.

H1

Build better glazing teams

3rem / 48px
Montserrat 300
Page title only
H2

Training that meets the field

2rem / 32px
Montserrat 300
Major page section
H3

Course collections

1.75rem / 28px
Montserrat 300
Section subsection
H4

What you’ll learn

1.5rem / 24px
Montserrat 300
Grouped content
H5

Course requirements

1.25rem / 20px
Montserrat 300
Compact subsection
H6

Additional resources

1.125rem / 18px
Montserrat 300
Smallest heading

Body and interface styles

Lead · Open Sans 19px / 1.6

LearnGlazing makes technical education easier to discover, understand, and apply.

Body · Open Sans 16px / 1.5

Keep paragraphs focused, front-load useful information, and use descriptive headings so readers can scan before committing to detail.

Small · Open Sans 14px / 1.5

Use for metadata, helper text, course duration, file details, and secondary supporting information.

Label · Montserrat 12px / 700

Course progress · 8 of 12 complete

Emphasis

Bold identifies important facts. Italic is reserved for titles, terms, and occasional conversational emphasis.

Lists and quotations

Unordered and ordered lists
  • Keep list items grammatically parallel.
  • Use bullets when order does not matter.
  • Use numbers for steps and sequences.
Testimonial quotation
LearnGlazing gives our team a shared technical language. Training manager, glazing contractor

Production variants

These variants intentionally override the base heading scale. Use the named production selector rather than recreating the treatment locally.

Training best practices

.banner h1 · 3rem / 300–400 · 2rem mobile

Featured training

Homepage section-title treatment.

h2.main-heading · 2rem / 500 / uppercase
Glazing systems

Introduction to curtain wall

Card titles are denser and more assertive than long-form headings.

.lg-course-card h3 · 1.25rem / 600 / uppercase

Platform usage

ContextSelectorTreatmentGuidance
Default page titleh13rem, weight 300One H1 per page; describe the page’s unique purpose.
Interior banner.banner h1Centered, weight 400; 2rem below 800pxKeep concise enough to remain readable over imagery.
LG Files articlearticle.single h1clamp(2.25rem, 5vw, 2.5rem)Balanced title; article H2 uses weight 600 and body uses 1.75 line-height.
Homepage sectionh2.main-heading2rem, weight 500, uppercaseUse only for major homepage or campaign sections.
FAQ tile.lg-faq-item h31.125rem, weight 600, uppercaseKeep the question short; answer copy remains sentence case.
WordPress article card.lg-files-item h31.25rem, weight 600Use natural title case and avoid truncating critical meaning.
Thinkific collection title.lg-collection-title1.5rem, weight 500, uppercaseNames the active catalog category.
Thinkific course card.lg-course-card h3 a1.25rem, weight 600, uppercaseCourse title remains a real link with visible hover/focus treatment.
Thinkific banner.lg-banner h22.5rem, weight 500; 1.75rem mobileUse for catalog and course-overview context.
Buttons.button0.875rem, weight 600, uppercaseUse short verb-led labels; do not use button typography for headings.

Hierarchy rules

  • Use one descriptive H1 for each page or learning view.
  • Do not skip heading levels to achieve a visual size.
  • Keep heading text in sentence case unless a production component specifies uppercase.
  • Keep long-form body copy near 65–75 characters per line.
  • Use a minimum 1.5 line-height for paragraphs and list content.
  • Never place essential information in all caps or low-contrast helper text.
  • Links must remain identifiable without relying on color alone.
  • Test headings with long course names and at 200% browser zoom.
Typography tokens · CSS
:root {
  --font-heading: "Montserrat", sans-serif;
  --font-body: "Open Sans", sans-serif;
  --type-h1: 3rem;
  --type-h2: 2rem;
  --type-h3: 1.75rem;
  --type-h4: 1.5rem;
  --type-h5: 1.25rem;
  --type-h6: 1.125rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-heading);
  font-weight: 300;
  line-height: 1.15;
}

body {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.5;
}

h1 { font-size: var(--type-h1); }
h2 { font-size: var(--type-h2); }
h3 { font-size: var(--type-h3); }
h4 { font-size: var(--type-h4); }
h5 { font-size: var(--type-h5); }
h6 { font-size: var(--type-h6); }

article.single p {
  line-height: 1.75;
}

Foundations

Spacing & layout

Use a 4px base and favor the established 8, 16, 24, 32, 48, 64, and 96px rhythm. Consistent spacing should do more work than decorative borders.

2xs 8px
xs 16px
sm 24px
md 32px
lg 48px
xl 64px
2xl 96px

Layout rules

Content width

Keep long-form reading near 65–75 characters per line. Full-width containers may reach 1500px.

Grid

Use the theme’s 12-column flex grid and collapse deliberately rather than simply shrinking desktop layouts.

Section rhythm

Use 48–96px between major topics and 16–32px between related elements.

Radius

Use 8px for controls, 15px for cards, and full pills for buttons, tags, and compact filters.

Foundations

Imagery

Choose images that feel specific to the glazing industry: real systems, materials, professionals, and finished environments.

Component backgrounds

The default green images are shared production assets, not generic placeholders. They create continuity across WordPress and Thinkific components and should be paired with an overlay whenever text sits above them.

Blurred LearnGlazing default green architectural component background

Default green blur

default-green-blur.jpg · 1280×800

Download JPG

Default green

Use where architectural detail should remain visible: pricing, USGlass, and course-player surfaces.

Default green blur

Use behind text-heavy components: FAQ tiles, banners, Emerge, services, sponsorship, Best Practices, and Thinkific resource views.

Photography guidance

Preferred

Useful and grounded

Show the work, the people doing it, or the buildings that make the outcome tangible.

Image checklist

  • Use meaningful alt text when the image adds information.
  • Use an empty alt attribute for purely decorative imagery.
  • Avoid generic office stock photography.
  • Keep text out of images whenever possible.
  • Export WebP or AVIF with a sensible JPEG fallback.

Hero image library

The theme includes 54 architectural hero images. Select imagery for relevance and composition, then use a dark overlay to protect text contrast. Select any image to open the original.

Live course catalog

Course thumbnails & information

A live visual reference pulled from Thinkific. Use this gallery to review current course names, destination URLs, and thumbnail consistency without opening the Thinkific administrator.

Thinkific API Published courses 15-minute cache

Loading course thumbnails…

Thumbnail standards

Source images should be 1440×840 pixels with a 12:7 aspect ratio. Keep course names and status labels in HTML rather than embedding new text in the artwork.

Do

Upload at 1440×840, retain the 12:7 crop, and use the course name as meaningful alternative text.

Don’t

Stretch, vertically crop, add unapproved labels, or mix unrelated thumbnail dimensions in the catalog.

Components

Buttons

These specimens use the theme’s production .button component and color modifiers directly. Use a button for an action and a link for navigation; keep labels concise, specific, and led by a verb.

Production theme buttons

Browse courses Learn more
UseProduction classesTreatment
Primary action.button.button-secondary-light-greenFilled light green with the production shine interaction.
Secondary action.button.button-primary-light-greenLight-green outline that fills on hover.
Dark action.button.button-primary-grey-very-darkDark treatment for light cards and download callouts.
Inverse action.button.button-primary-whiteWhite treatment for charcoal, image, and green surfaces.
Button · HTML
<a class="button button-secondary-light-green" href="/courses/">
  Browse courses
</a>

<button class="button button-primary-grey-very-dark" type="submit">
  Save progress
</button>

Do

“Download training guide” tells people exactly what happens.

Don’t

“Click here” hides the destination and gives screen-reader users no context.

Components

Input fields & forms

Ask only for information that is necessary. Keep labels visible, explain formatting before submission, and place errors beside the field that needs attention.

Form example

We’ll use this only for account and course updates.

Enter the full six-digit certification number.

Accessible input · HTML
<div class="form-field">
  <label for="email">Work email</label>
  <input
    id="email"
    name="email"
    type="email"
    autocomplete="email"
    aria-describedby="email-hint"
  >
  <p id="email-hint" class="form-field__hint">
    We’ll use this only for account and course updates.
  </p>
</div>

Components

Cards

The flexible WordPress card is .lg-card. It provides the production white surface, padding, radius, shadow, and transition; add only journey-specific inner structure when the content requires it.

Course collection

Glazing systems

Build fluency in storefront, curtain wall, entrances, and architectural glass.

View collection
Resource

Training implementation guide

A practical framework for launching and maintaining a learning program with your team.

Download guide
General content card · HTML
<article class="lg-card">
  <h3>Training implementation guide</h3>
  <p>A practical framework for launching a learning program.</p>
  <a class="button button-primary-grey-very-dark" href="/training-guide/">
    View training guide
  </a>
</article>

Components

Status & feedback

Feedback should be timely, specific, and paired with the next useful action. Icons and labels must support—not replace—the message.

Message examples

Progress saved

You can safely return to this lesson later.

Certificate expires soon

Complete the renewal course by August 30.

Components

Expanders & accordions

LearnGlazing’s production accordion is the .exp expander: a black rounded trigger with a green chevron and a sliding content panel. Use .multi-toggle when several panels may remain open and .single-toggle when opening one closes the others.

Production expander example

Access depends on the selected plan and assigned seats. Team administrators can manage enrollment for their organization.

Eligible courses provide a completion certificate after all required lessons and assessments are finished.

Production expander · HTML
<div class="exp multi-toggle">
  <div class="exp-item">
    <button class="exp-btn" type="button" aria-expanded="false">
      Do courses include certificates?
    </button>
    <div class="exp-content">
      <p>Eligible courses provide a completion certificate.</p>
    </div>
  </div>
</div>

Production library

Existing WordPress components

These are the established patterns currently used by LearnGlazing templates and partials. Reuse them before introducing a new component, and preserve their production class names when extending existing pages.

WordPress Theme templates PHP partials

Core visual patterns

h2.main-heading · partials/home-*.php

Section heading

Uppercase Montserrat with a centered yellow-green rule. Use once at the start of major home-page sections.

.lg-card · library/scss/components/_home.scss

Flexible content card

The general white surface used for training benefits, evaluations, support panels, and Mailchimp signup content.

Card action
.lg-faq-item · partials/lg-faq-item.php

How is training organized?

Use the tile pattern for short, featured FAQ answers. Alternate light-green and green overlays across the grid.

.exp.multi-toggle · components/lg-faqs.php
Expandable long-form answer

Use the expander when answers are longer or when several related sections need to share a compact page.

Additional information

Keep the entire trigger keyboard operable and expose expanded state.

.tab · partials/home-training.php
  • New hires
  • Teams
  • Evaluations

Training the new hire

Horizontal tabs organize equivalent views within one subject. Keep labels short and retain a meaningful reading order without JavaScript.

.lg-pricing-card · components/lg-pricing-card.php
Team training
Course-library access, progress tracking, and flexible team seats.
$49per month
.lg-reserve / .sponsorship-cta

Ready to bring training to your team?

Use a strong, contained callout near the end of a journey.

Request information
.lg-training-guide · partials/home-training-guide.php
Download callout

Training implementation guide

Pair a document preview, concise description, file type, and descriptive download action.

View training guide

Homepage sections

These larger production patterns establish rhythm and proof across the homepage. Preserve their existing selectors and partial boundaries when updating content or layout.

.sponsorship / .sponsorship-grid-logos · partials/home-sponsorship.php

A Big Thank You To Our Sponsors!

section.tools · partials/home-tools.php

Aspiring Glazing PM

Audience-focused tools pair a recognizable icon, concise benefit, and collection action.

Learn more
.lg-email-signup · partials/home-email-signup.php

Component reference

The status describes how each pattern should be treated in new work. “Core” components are preferred, “specialized” patterns belong to a specific journey, and “legacy” patterns should be maintained but not duplicated without review.

Component Production selector Source Purpose and usage Status
Site header header[role="banner"] header.php Persistent brand, primary navigation, and mobile-menu trigger. Core
Mobile navigation .slide-menu partials/slide-menu.php Off-canvas small-screen navigation and social links. Core
Page banner .banner components/banner.php Interior page title, featured/random imagery, overlay, and optional site search. Core
Hero section.hero partials/home-hero.php Campaign-level opening message with image, overlay, and primary actions. Core
Breadcrumbs .lg-breadcrumbs functions/theme-setup.php Location context for interior pages and articles. Core
Section heading h2.main-heading _home.scss Primary heading treatment for full-width homepage sections. Core
Buttons .button with .button-primary-* or .button-secondary-* library/scss/base/_button.scss Shared action and navigation treatment used by WordPress and the compiled Thinkific theme. Core
General content card .lg-card _home.scss Flexible white panel for benefits, pricing links, support, and embedded forms. Core
FAQ tile grid .lg-faq-grid / .lg-faq-item partials/lg-faq-item.php Featured, fully visible FAQ summaries in responsive cards. Core
Expander .exp / .exp-item components/lg-faqs.php Disclosure pattern for FAQ, Emerge, sponsorship, and USGlass content. Legacy
Article card .lg-files-item components/lg-files.php Responsive article preview with image, excerpt, and full-card keyboard interaction. Core
Pagination .lg-files-pagination page-lg-files.php Rounded result pagination for LG Files archives. Core
Horizontal tabs .tab / .tab-nav partials/home-training.php Switches between new-hire, team, and evaluation training views. Specialized
Vertical tabs .lg-vert-tab page-lg-services.php Service navigation with paired detail panels. Specialized
Pricing toggle .lg-pricing-toggle-switch page-pricing-training.php Monthly and annual price-state control. Specialized
Pricing card .lg-pricing-card components/lg-pricing-card.php Plan, features, regular/Tubelite pricing, and signup action. Specialized
Client logo bar .lg-client-scroller partials/client-logo-bar.php Scrollable client, category-expert, or sponsor logo proof. Core
Homepage sponsor bar .sponsorship / .sponsorship-grid-logos partials/home-sponsorship.php Primary sponsor-recognition band with linked production logos. Core
Audience tools section.tools partials/home-tools.php Three audience entry points for project managers, contractors, and additional training. Core
Homepage articles .the-lg-files / .lg-files-item partials/home-lg-files.php Latest LG Files article previews and archive action. Core
Email signup .lg-email-signup partials/home-email-signup.php Progressively disclosed Mailchimp signup surface. Specialized
Testimonials .lg-testimonials components/lg-testimonials.php Client identity and quotation carousel/list. Core
Sponsorship tiers .lg-sponsorship-chart partials/lg-sponsorship-chart.php Three-tier benefit and pricing comparison. Specialized
Course highlight media .lg-course-highlights / .yt-wrap partials/home-course-highlights.php Responsive video paired with learning outcomes and signup action. Specialized
Training guide callout .lg-training-guide partials/home-training-guide.php High-emphasis downloadable resource panel. Core
Search field .lg-search-box-form components/banner.php Pill search used for main-site and FAQ discovery. Core
Modal dialog dialog.modal partials/modal.php Focused notification or enrollment content requiring dismissal. Core
Reserve CTA .lg-reserve partials/lg-sponsorship-reserve.php Closing action band reused by sponsorship and Communities. Core
Community feature tiles .lg-communities-squares page-communities.php Icon-led benefits unique to the Communities landing page. Specialized
Step flow .step-grid page-usgm-test.php Numbered instructional journey for external signup/enrollment. Legacy

Composition rules

  • Use row and column for the established 12-column page grid.
  • Use .overlay only with a positioned parent and readable foreground contrast.
  • Pair .main-heading with one section topic, not every nested heading.
  • Choose FAQ tiles for featured answers and disclosure rows for long answer sets.
  • Use .lg-card as a neutral container; use named cards for domain-specific data.
  • Preserve real links inside clickable LG Files cards for keyboard and assistive technology support.
  • Do not combine pricing, signup, and promotional actions into the same card hierarchy.
  • Mark specialized campaign components before copying them into a general-purpose page.

Patterns

Page styling guidelines

Pages should establish context quickly, present one primary path, and keep supporting material in a predictable reading order.

Landing page

Outcome-led hero → proof or benefits → core offerings → supporting detail → single closing action.

Article or guide

Clear title and summary → optional contents → scannable sections → related resources and next step.

Catalog or archive

Purpose and count → search/filter → consistent result cards → empty and loading states → pagination.

Form flow

Expectation setting → grouped fields → review where needed → confirmation with a clear next action.

Responsive behavior

  • Design the small-screen reading order first.
  • Keep touch targets at least 44×44 CSS pixels.
  • Avoid horizontal scrolling at 320px width.
  • Do not hide important content only to simplify mobile.

Platform patterns

Thinkific experience

LearnGlazing should feel like one product across WordPress and Thinkific. The platforms share the same foundations, while Thinkific adds learning-specific states for discovery, enrollment, progress, curriculum, and account management.

Thinkific Course catalog Student dashboard Checkout

Theme package

LearnGlazing Thinkific theme

Version 2.6.0 · Theme export · 307.0 KB

Download theme ZIP

Before importing

Keep the exported directory structure and filenames intact. Import the ZIP through Thinkific’s theme library, then verify catalog, dashboard, course, sign-in, account, and checkout states.

Liquid template quick reference

Start with these files when changing LearnGlazing-specific Thinkific markup. The .lg-* classes are the stable bridge between the Liquid templates and the compiled Thinkific stylesheet.

Template filePurposePrimary .lg- hooks
pages/collections_landing_page.liquid Course catalog hero and search .lg-banner, .lg-banner-content, .lg-search-box, .lg-search-input
snippets/products_search.liquid Sticky catalog category filters .lg-collection-sticky, .lg-collection-nav, .lg-collection-list-item
snippets/course_card.liquid Public catalog course cards .lg-course-card, .lg-course-card-img, .lg-course-card-body, .lg-course-card-details
sections/student_dashboard.liquid Student welcome, filters, and enrolled-course grid .lg-banner, .lg-collection-title, .lg-course-card-container
sections/course_curriculum.liquid Curriculum and optional course sidebar resources .lg-course-overview, .lg-resource-library, .lg-aia-ceu, .lg-ss-grid
sections/lg_resource_library.liquid Reusable resource-library panel .lg-resource-library, .lg-resource-library-content
sections/lg_footer.liquid LearnGlazing footer shell .lg-footer
snippets/lg_header_links.liquid Custom utility and account navigation links .lg-files, .lg-team, .lg-demo
Course card structure · snippets/course_card.liquid
<div class="lg-course-card {{ course.status }}">
  <div class="lg-course-card-inner">
    <a href="{{ course.links.landing_page_url }}" class="lg-course-card-img">
      <img src="{{ product_image }}" alt="" class="lg-course-img" loading="lazy">
    </a>

    <div class="lg-course-card-body">
      <ul class="lg-course-card-cat-container">
        {% for collection in course.collections %}
          <li class="lg-course-card-cat" data-id="{{ collection.slug }}">
            {{ collection.name }}
          </li>
        {% endfor %}
      </ul>
      <h3><a href="{{ course.links.landing_page_url }}">{{ course.name }}</a></h3>
    </div>
  </div>
</div>

Cross-platform rules

Preserve the brand shell

Use the charcoal LearnGlazing header, white logo, Montserrat/Open Sans typography, shared footer, and green action hierarchy on both platforms.

Respect platform behavior

Style Thinkific’s native sections and snippets without breaking enrollment, authentication, progress, checkout, or platform-generated accessibility attributes.

Use one vocabulary

Keep labels such as “Browse the training,” “My dashboard,” “Start course,” and “Continue course” consistent between marketing and learning surfaces.

Make state visible

Course availability, enrollment, completion, certificates, and account status must always have a text label in addition to visual treatment.

Collection filters

The Thinkific collection navigation is sticky below the 80px platform header. Filters use compact green-outlined pills on charcoal, with a filled gradient for the active category.

Thinkific collection navigation

Thinkific collection filter · Liquid/HTML
<div class="lg-collection-sticky">
  <nav class="lg-collection-nav" aria-label="Course categories">
    <ul class="lg-collection-list">
      <li class="lg-collection-list-item active" data-id="courses">
        <span>All courses</span>
      </li>
      {% for collection in site.collections %}
        <li class="lg-collection-list-item" data-id="{{ collection.slug }}">
          <span>{{ collection.name }}</span>
        </li>
      {% endfor %}
    </ul>
  </nav>
</div>

Course cards and progress

Glazing systems

Introduction to curtain wall

Learn the terminology, components, and installation sequence used in common curtain wall systems.

View course
AIA Continuing Education approved

Approved for 1 LU/HSW through AIA CES.

In progress

Storefront installation

Continue from Unit 4: Perimeter conditions.

68% complete

Continue course
Student progress · Liquid/HTML
<article class="lg-course-card student-card">
  <div class="course-card__body">
    <h3 class="course-card__header-title">{{ card.name }}</h3>

    <div
      class="course-card__progress--bar"
      role="progressbar"
      aria-label="Course progress"
      aria-valuenow="{{ card.progress_percentage }}"
      aria-valuemin="0"
      aria-valuemax="100"
    >
      <span
        class="progress__bar"
        style="width: {{ card.progress_percentage }}%"
      ></span>
    </div>

    <p>{{ card.progress_percentage }}% complete</p>
  </div>

  {% if card.collection_slugs contains "aia-credit-for-architects" %}
    <div class="lg-course-card-aia">
      <div>
        <span class="icon-aia-cont-education" aria-hidden="true"></span>
        <p>Approved for 1 LU/HSW through AIA CES.</p>
      </div>
    </div>
  {% endif %}
</article>

Course overview and curriculum

Course banner

Lead with the course title, short value statement, enrollment state, and one primary action. Keep background imagery subordinate to the content.

Curriculum

Group lessons by chapter, show lesson type and duration, and clearly distinguish previews, completed lessons, and locked content.

Enrollment

Explain prerequisites, access duration, price, and what happens after enrollment before asking the learner to commit.

Completion

Confirm completion, surface the certificate when available, and recommend a relevant next course without obscuring the achievement.

Dashboard, account, and checkout

SurfaceRequired patternAvoid
Student dashboardCourse title, explicit progress, next action, and useful filteringImage-only cards or progress shown only through color
Sign in / sign upPersistent labels, password guidance, recovery path, and clear error summaryPlaceholder-only labels or vague authentication errors
My accountStable side navigation, readable billing tables, and explicit destructive actionsHiding account state inside unlabeled icons
CheckoutOrder summary, total, secure payment context, and one primary purchase actionCompeting promotional actions during payment

Thinkific front-end boundaries

  • Author structural changes in Thinkific sections and snippets, not generated browser markup.
  • Keep Thinkific selectors scoped to stable platform or lg- classes.
  • Do not remove Liquid attributes or data hooks required by platform scripts.
  • Test signed-out, enrolled, partially complete, complete, and administrator states.
  • Compile thinkific.scss independently from the WordPress stylesheet.
  • Verify catalog filters and course cards with long titles and zero-result states.
  • Check checkout and account pages after every platform theme update.
  • Keep platform-specific JavaScript progressive and guard every selector.
Thinkific course progress · SCSS
.lg-course-card {
  .course-card__progress--bar {
    width: 100%;
    overflow: hidden;
    border-radius: 15px;
    background: $grey-light;
  }

  .progress__bar {
    display: block;
    height: 15px;
    background: linear-gradient(
      144deg,
      $light-green 0%,
      $green 100%
    );
  }
}

Standards

Content & voice

LearnGlazing sounds experienced, direct, encouraging, and specific. We explain the work without talking down to the people doing it.

PrincipleUseAvoid
Plain language“Start the course”“Initiate learning experience”
Specific actions“Download certificate”“Click here”
Sentence case“Course progress”“Course Progress”
Helpful errors“Enter a valid email address.”“Invalid input.”
Respectful confidence“Here’s how to fix it.”“You did this incorrectly.”

Standards

AIA CES guidelines

LearnGlazing is a registered provider in the AIA Continuing Education Services (CES) program. These rules govern how every approved course and LearnGlazing itself may be described, marketed, and badged. Follow them precisely — the AIA can revoke provider status for non-compliance.

AIA CES Registered provider Marketing copy Course pages

Approved and prohibited language

Use

  • Describe approved courses as "AIA CES approved."
  • Describe LearnGlazing itself as "AIA CES registered."
  • While a course is under review: "Submitted for AIA CES approval" or similar — but do not state the number or type of credit under review (e.g. "Submitted for AIA CES credit" is fine; "Submitted for 1.5 LU|HSW AIA CES credit" is not).

Never use

  • "AIA endorsed," "AIA accredited," or "AIA certified" — for courses or for LearnGlazing.
  • The main AIA logo (the Member logo), or any language that implies the AIA endorses LearnGlazing or its products.
  • Descriptions suggesting LearnGlazing is an AIA member — AIA CES Providers are not AIA members; membership is for individuals, not organizations.

Credit terminology

AIA CES credits must always be written in one of these two formats. Do not substitute "CEU," "PDH," or any other designation. If a course also carries GBCI, RIBA, or other credit, list those separately rather than combining them with LU notation.

Credit typeCorrect notationIncorrect
Health, safety, and welfareLU|HSWCEU, PDH, CE, HSW credit
Elective (non-HSW)LU|ElectiveCEU, PDH, CE, LU only

Required disclosures on approved courses

Every AIA CES-approved course must prominently display all of the following.

  • The AIA CES logo (sourced from the Brandfolder — see Logo below).
  • LearnGlazing's assigned AIA CES Provider number.
  • The Learning Units and type awarded (e.g. "1 LU|HSW").
  • LearnGlazing's contact information as the CES Provider.

For any course sold or offered externally, also disclose in advance:

  • Learning objectives
  • Delivery method
  • Approved LUs and type
  • CES approval expiration date
  • Prerequisites
  • Program level and description
  • Registration, refund, cancellation, and complaint policies

Official provider statement

Use this statement verbatim on every approved course page. Fill in LearnGlazing's assigned AIA CES Provider number where indicated.

AIA CES provider statement · copy verbatim
LearnGlazing is a registered provider of AIA-approved continuing
education under Provider Number [AIA CES PROVIDER NUMBER]. All
registered AIA CES Providers must comply with the AIA Standards for
Continuing Education Programs. Any questions or concerns about this
provider or this learning program may be sent to AIA CES
(cessupport@aia.org or (800) AIA 3837, Option 3).

This learning program is registered with AIA CES for continuing
professional education. As such, it does not include content that
may be deemed or construed to be an approval or endorsement by the
AIA of any material of construction or any method or manner of
handling, using, distributing, or dealing in any material or product.

AIA continuing education credit has been reviewed and approved by
AIA CES. Learners must complete the entire learning program to
receive continuing education credit.

AIA CES logo

Approved source

Download logo files exclusively from the AIA CES Brandfolder. That is the only sanctioned source — do not recreate, recolor, or export the mark from another file.

License terms

The AIA grants providers a limited, revocable, non-exclusive license. Use the mark only in connection with AIA CES-approved courses and strictly per the AIA brand guidelines.

Do

Display the AIA CES logo alongside the Provider number, approved LUs, and contact information on every approved course page.

Don't

Use the AIA Member logo, alter the AIA CES mark in any way, or display it on courses that are not yet approved.

AIA Continuing Education approved logo

AIA CES logo

Course pages & materials · PDF, SVG & EPS

AIA CES approved

Introduction to curtain wall

Learn the components and installation sequence used in common curtain wall systems.

View course
AIA Continuing Education approved

Approved for 1 LU|HSW through AIA CES.

Standards

Accessibility

Accessibility is a design and engineering requirement, not a final review step. Target WCAG 2.2 Level AA.

  • Use semantic HTML before adding ARIA.
  • Provide a visible keyboard focus indicator.
  • Maintain 4.5:1 contrast for normal text.
  • Associate every input with a persistent label.
  • Give images appropriate alternative text.
  • Respect reduced-motion preferences.
  • Provide captions and transcripts for media.
  • Test at 200% zoom and with keyboard only.
Landmarks and heading order · HTML
<a class="skip-link" href="#main-content">Skip to content</a>

<header>...</header>
<nav aria-label="Primary">...</nav>
<main id="main-content">
  <h1>One page-level heading</h1>
  <section aria-labelledby="courses-heading">
    <h2 id="courses-heading">Featured courses</h2>
  </section>
</main>
<footer>...</footer>

Standards

Front-end standards

Prefer durable, progressive HTML and small, focused enhancements. Match existing theme conventions unless a deliberate migration is underway.

CSS tokens

TokenValuePurpose
--light-green#8CC63FPrimary interaction and positive emphasis
--charcoal#2C2E3DDark surfaces and strong structure
$border-radius15pxDefault card and panel radius
$page-max-width1500pxMaximum full-page content width
$font-headingMontserratHeadings, labels, and controls
$font-bodyOpen SansLong-form and interface copy

Component structure

WordPress component · PHP
<?php
$title = get_the_title();
$url   = get_permalink();
?>

<article class="course-card">
  <h3 class="course-card__title">
    <a href="<?php echo esc_url( $url ); ?>">
      <?php echo esc_html( $title ); ?>
    </a>
  </h3>
</article>
Component styles · SCSS
.course-card {
  padding: size(medium);
  border: 1px solid color(grey-light);
  border-radius: $border-radius;
  background: color(white);

  &__title {
    margin-bottom: size(small);
    font-family: $font-heading;
  }
}
Progressive enhancement · JavaScript
const disclosure = document.querySelector("[data-disclosure]");

if (disclosure) {
  disclosure.addEventListener("click", () => {
    const expanded = disclosure.getAttribute("aria-expanded") === "true";
    disclosure.setAttribute("aria-expanded", String(!expanded));
  });
}

Implementation rules

  • Escape dynamic output with the appropriate WordPress function.
  • Use BEM-style component classes for new isolated UI.
  • Keep selectors shallow and avoid IDs for styling.
  • Load page-specific assets conditionally.
  • Use native controls and elements wherever possible.
  • Test without JavaScript before adding enhancement.
  • Optimize and size images to prevent layout shift.
  • Do not place secrets or personal data in client code.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptates, nihil doloremque placeat ut. Aliquam corporis incidunt fugiat error tempora quis facilis, labore provident ipsa laborum eveniet odit! Nihil unde, blanditiis.