Overview

Platera template home pages

Platera is an elegant, animated HTML5 template for caterers, event dining studios and private chefs. Cormorant Garamond headlines and Montserrat text give it the calm of a table set for a wedding. Underneath, it runs real catering logic. One quote engine prices every page that quotes, from the guests and the service style to the crew. A currency switch repaints every price, and public dinners carry their seats left. It ships with light and dark mode, right-to-left support and WebGL layers - linen folds under the heroes and a brass crest turning in the footer.

What’s included

  • 31 HTML pages, 3 unique home page designs
  • Light and dark mode on one switch, remembered between visits, with no flash on load
  • Right-to-left stylesheets and a language picker that turns any page around
  • WebGL layers tinted by the theme colours: linen folds and a brass crest
  • Real catering logic from one data block: quote engine, packages, venues, event dates and seats
  • A currency switch that repaints every price, remembered across pages
  • Three scroll moments that never pin the page
  • prefers-reduced-motion support for accessibility
  • CSS-variable design tokens for both themes
  • Working PHP form handler with optional invisible reCAPTCHA v3
  • Fully responsive, zero console errors
  • Well-commented code with a numbered JS index
  • Documentation included
📄 31 HTML files

Getting Started

Thank you for choosing Platera. Follow the steps below to get your site live.

1. Open locally

Unzip the package and open platera/index.html in any modern browser (Chrome, Firefox, Edge, Safari). No build tools or server are required — every engine on the site works straight from the files.

2. Deploy to a server

Upload the contents of the platera/ folder to your hosting with an FTP client (such as FileZilla) or your hosting control panel. Open your domain and the template loads at once.

3. Customise

Custom styles live in assets/css/style.css and assets/css/responsive.css. Colours and fonts are CSS variables — see Colors & Fonts. Prices, hours and items live in one data block in assets/js/main.js (module 10, Platera Data) — see JavaScript Guide.

File Structure

404.html404 Error
about.htmlAbout Us
blog-details.htmlJournal Details
blog.htmlJournal
cart.htmlCart
checkout.htmlCheckout
coming-soon.htmlComing Soon
contact.htmlContact
event-details.htmlEvent Details
event-request.htmlEvent Request
events.htmlTastings & Dinners
faq.htmlFAQ
forgot-password.htmlForgot Password
gallery.htmlGallery
homepage-2.htmlHome 02
homepage-3.htmlHome 03
index.htmlHome 01
login.htmlLogin
menus.htmlMenus
press-awards.htmlPress & Awards
pricing.htmlPricing & Packages
product-single.htmlProduct Details
quote.htmlQuote Builder
register.htmlRegister
service-details.htmlService Details
services.htmlOur Services
shop.htmlShop
team-details.htmlTeam Profile
team.htmlOur Team
venues.htmlPartner Venues
wishlist.htmlWishlist

Folder Structure

platera/
├── *.html  (the pages)
├── sendmail.php
├── documentation/
└── assets/
    ├── css/  fontawesome-all.css, plugins, responsive.css, responsive.rtl.css, style.css, style.rtl.css
    ├── fonts/  theme-icons
    ├── img/  banner, blog, decor, events, faces, flags, home, icons, logo, menu, partners, shop, table, team
    ├── js/  main.js, plugins
    └── webfonts/  fa-brands-400.ttf, fa-brands-400.woff2, fa-regular-400.ttf, fa-regular-400.woff2, fa-solid-900.ttf, fa-solid-9

Colors & Fonts

The design is driven by CSS variables declared at the top of style.css. Change a token once and every section, button and card updates.

#3E3930--pl-espresso
#BDB5AA--pl-taupe
#CEC2AB--pl-sand
#B08D5B--pl-brass
#E8D19E--pl-brass-light
#F7F4EE--pl-ivory
#FFFFFF--pl-bg
#FFFFFF--pl-surface
#F4F4F1--pl-linen
#EAEAE5--pl-stone
#3E3930--pl-heading
#776F60--pl-text
#E6E2DA--pl-line
#D5CEC3--pl-line-2
#8A6A3C--pl-gold-text
#3E3930--pl-btn

Fonts

Cormorant Garamond and Montserrat are loaded from Google Fonts in the <head> of every page. To change a font, replace the Google Fonts link and the font variables in style.css.

Light & Dark Mode

Every header (and the mobile menu) has a theme switch. The choice is saved in the browser under the key platera-theme and applied by a one-line script in the <head> before the page paints, so a visitor never sees a flash. The switch sets data-theme on the <html> tag.

  • Tokens — the other theme’s colours sit in their own [data-theme] block right after :root in style.css. Change a colour there.
  • WebGL layers — the layers read their colours from CSS custom properties (--gl-1 to --gl-3, --gl-alpha), so a theme change repaints them.
  • Start in the other theme — add data-theme="dark" to a page’s <html> tag; the switch still works and is still remembered.

RTL (Right To Left)

Platera is RTL-ready: the layout, the sliders and the animations mirror. The language picker beside the theme switch lists left-to-right and right-to-left languages. Choosing a right-to-left one stores the language and the direction (keys platera-lang and platera-dir) and reloads; the script in <head> then sets dir="rtl" and swaps three stylesheets for the files in their data-rtl attribute. Nothing is translated — you bring your own copy. To make a page right to left for good:

1. Set The Direction

<html lang="en" class="no-js" dir="rtl">

2. Swap Three Stylesheets

assets/css/plugins/bootstrap.min.css→ assets/css/plugins/bootstrap.rtl.min.css
assets/css/style.css→ assets/css/style.rtl.css
assets/css/responsive.css→ assets/css/responsive.rtl.css
Editing the styles: style.rtl.css and responsive.rtl.css are mirrored twins of the LTR files, made with RTLCSS. If you change style.css, regenerate the twin with npx rtlcss style.css style.rtl.css.

JavaScript Guide

All custom behaviour lives in assets/js/main.js, split into numbered modules listed in the index at the top of the file. Plugins are in assets/js/plugins/ and load before it. Module 10 (Platera Data) is the one data block the pages and engines read: change a price, an hour or an item there and every page that shows it follows.

01Preloader
02Sticky Header
03Offcanvas Menu
04Scroll Reveals
05Media Cursor
06Back To Top
07Anchor Scroll
08Light & Dark Mode, Direction
09WebGL Layers
10Platera Data
11Currency Switch
12Studio Clock & Event Dates
13Custom Select
14Hero Sliders
15Card Sliders
16Accordion
17Filter Tabs
18Grid Search
19Newsletter
20Hero Zoom-Out
21The Table Sets Itself
22Course Stack
23Quote Engine
24Quote Builder & Request Wizard
25Menus & Menu Builder
26Package Totals
27Venue Finder, Agenda & Reservations
28Date Availability
29Contact Form
30Table Shop
31Account Forms
32Article Tools
33Demo Forms
34Launch Countdown
35FAQ Search
Reduced motion: visitors who ask their system for reduced motion get every page in its finished state, without the scroll animations.

Images

The package ships with placeholder images at their real dimensions. Replace them with your own photos using the same file names, or update the src attributes. Images are grouped inside assets/img/:

img/banner/5 files: 1920×1100, 2680×1330, 1400×862, 1400×800, 2818×1610
img/blog/14 files: 1300×770, 2688×1592, 1300×745, 2817×1614, 1000×1028
img/decor/2 files: 457×300, 520×62
img/events/11 files: 1000×639, 1000×1360, 1000×1243, 1000×1111, 1408×1915
img/faces/6 files: 240×240
img/flags/6 files: SVG
img/home/13 files: 1300×1123, 1100×1496, 2684×2067, 1000×770, 1000×1343, 2816×1377
img/icons/30 files: 128×128
img/logo/3 files: 64×64, 634×168
img/menu/3 files: 640×400
img/partners/10 files: 537×90, 391×100, 390×100, 317×100, 316×100, 664×85
img/shop/22 files: 1000×1322, 911×1085, 600×715, 800×978, 2684×3281
img/table/12 files: 650×649, 417×71, 91×495, 49×528, 270×437, 447×199
img/team/4 files: 1000×1332, 795×1110

Contact Form

The contact form posts to sendmail.php, a lightweight AJAX mail handler; the success or error message appears under the button without a reload. The other forms on the site are demo forms: they confirm on screen and are ready to connect to your own systems.

1. Set your email address

$email = 'example@example.com';

2. Upload to a PHP host

The form needs a server with PHP mail() support (virtually every shared host). It will not send from your own computer.

3. Optional: enable Google reCAPTCHA v3

Invisible reCAPTCHA v3 is built into the handler and stays dormant until the form sends a token. Create v3 keys in the reCAPTCHA admin console, replace YOUR_RECAPTCHA_V3_SECRET_KEY in sendmail.php, and load the reCAPTCHA script with your site key on the contact page.

Credits

This template is built with the following open-source libraries and resources.

  • Bootstrap 5.3.3
  • jQuery 3.7.1
  • Swiper 11
  • GSAP 3 + ScrollTrigger
  • Fancybox 3.5
  • Font Awesome Free
  • RTLCSS
  • Google Fonts: Cormorant Garamond, Montserrat

All plugin files and icon fonts are loaded locally. The only external requests are the Google Fonts stylesheet, map embeds and video popups.

Support

Questions or help with the template? Contact us at metropolitanhost.com. We answer the same business day, 9am–6pm ET.