Free
Footer
Wayloom Footer
A footer block extracted from the Wayloom template, available in Tailwind CSS and Bootstrap.
0
2
A footer block extracted from the Wayloom template, available in Tailwind CSS and Bootstrap.
<!DOCTYPE html>
<html lang="en">
<head>
<script>
window.FontAwesomeConfig = { autoReplaceSvg: 'nest' };
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/js/all.min.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Wayloom Footer | Tailwind CSS UI Block</title>
<meta name="description" content="A footer block extracted from the Wayloom template, available in Tailwind CSS and Bootstrap.">
<meta name="keywords" content="Wayloom, Tailwind CSS template, HTML website template, startup template, travel tech, experience marketplace, B2B platform, multi-page startup website">
<meta name="author" content="Let's templates">
<link rel="canonical" href="">
<meta property="og:type" content="product">
<meta property="og:site_name" content="Let's templates">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="">
<meta property="og:title" content="Wayloom | Tailwind CSS Startup Template">
<meta property="og:description" content="A calm, editorial Tailwind CSS startup template for travel-tech and marketplace platforms, with an expanding image hero, impact stats, a four-step model and a team page.">
<meta property="og:image" content="">
<meta property="og:image:alt" content="Wayloom template preview">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:url" content="">
<meta name="twitter:title" content="Wayloom | Tailwind CSS Startup Template">
<meta name="twitter:description" content="A calm, editorial Tailwind CSS startup template for travel-tech and marketplace platforms, with an expanding image hero, impact stats, a four-step model and a team page.">
<meta name="twitter:image" content="">
<meta name="twitter:image:alt" content="Wayloom template preview">
<script src="https://cdn.tailwindcss.com/3.4.17"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Schibsted+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600&family=Cormorant+Garamond:wght@500&display=swap" rel="stylesheet">
<script>
tailwind.config = {
theme: {
extend: {
colors: {
cream: '#f5f0e3',
sand: '#e8e4d4',
pine: '#1f5552',
'pine-dark': '#163f3d'
},
fontFamily: {
display: ['"Schibsted Grotesk"', 'ui-sans-serif', 'system-ui', 'sans-serif'],
sans: ['Inter', 'ui-sans-serif', 'system-ui', 'sans-serif'],
serif: ['"Cormorant Garamond"', 'Georgia', 'serif']
}
}
}
};
</script>
<style>
@view-transition { navigation: auto; }
::view-transition-old(root) { animation: 180ms ease-out both page-fade-out; }
::view-transition-new(root) { animation: 220ms ease-in both page-fade-in; }
@keyframes page-fade-out { to { opacity: 0; } }
@keyframes page-fade-in { from { opacity: 0; } }
html { scroll-behavior: smooth; scroll-padding-top: 6rem; }
[hidden] { display: none !important; }
[data-panel] { flex: 1 1 0%; min-width: 0; }
[data-panel][aria-expanded="true"] { flex: 5 1 0%; }
[data-panel] [data-panel-body] { opacity: 0; transition: opacity .4s ease .1s; }
[data-panel][aria-expanded="true"] [data-panel-body] { opacity: 1; }
[data-panel][aria-expanded="true"] [data-panel-tall] { display: none; }
[data-panel][aria-expanded="false"] [data-panel-body] { display: none; }
.reveal-ready [data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; transition-delay: var(--reveal-delay, 0ms); }
.reveal-ready [data-reveal].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
[data-panel] [data-panel-body] { transition: none; }
::view-transition-old(root), ::view-transition-new(root) { animation: none; }
}
</style>
</head>
<body class="bg-cream font-sans text-pine antialiased">
<% active_page = "index" %>
<% { "index" => "Home", "problem" => "Problem", "solution" => "Solution", "model" => "Model", "platform" => "Platform", "about" => "About", "team" => "Team" }.each do |slug, label| %>
<% active = active_page == slug %>
<% end %>
<% { "index" => "Home", "problem" => "Problem", "solution" => "Solution", "model" => "Model", "platform" => "Platform", "about" => "About", "team" => "Team" }.each do |slug, label| %>
<% end %>
<% [
{ image: "1775644672234-cfaadb6919a3", alt: "Two travelers reading a map beside an old stone archway", copy: "Hosts in <strong class=\"font-semibold\">140 cities</strong> list once on Wayloom and reach every major booking channel the same week." },
{ image: "1741272689174-f7f03b09a0ab", alt: "Dancer in traditional costume performing with musicians", copy: "Cultural performances, workshops and festivals get rich storytelling pages that <strong class=\"font-semibold\">convert lookers into guests</strong>." },
{ image: "1768154626896-44290a532fc7", alt: "Heritage palace reflected in a long courtyard pool", copy: "Heritage sites and guided tours sync live availability, so <strong class=\"font-semibold\">no slot is ever double-booked</strong>." }
].each_with_index do |panel, index| %>
<% end %>
<% [["25000", "+", "Experiences gathered"], ["500", "K+", "Bookings unlocked"], ["30", "+", "Enterprise partners"], ["200", "+", "Live API connections"]].each_with_index do |(value, suffix, label), index| %>
<% end %>
<% ["Fragmented inventory across thousands of tiny operators", "No shared format for stories, photos or availability", "Payouts that take weeks and eat into thin margins"].each do |item| %>
<% end %>
<% [
["fa-layer-group", "Unified catalog", "Every experience normalized into one schema, with photos, policies and pricing."],
["fa-feather", "Story studio", "Editors help hosts turn a two-line listing into a page people want to read."],
["fa-share-nodes", "Smart distribution", "Push inventory to booking sites, airlines and hotel apps from one dashboard."],
["fa-wallet", "Fast payouts", "Hosts get paid within days, in local currency, with transparent fees."]
].each_with_index do |(icon, title, copy), index| %>
<% end %>
<% [
["Gather", "We onboard hosts and import their offers, schedules and photos in a single session."],
["Shape", "Our editors write the story, translate it and tag it for the channels that fit."],
["Share", "Listings go live across partner platforms with synced, real-time availability."],
["Earn", "Bookings settle automatically and hosts see every payout in one ledger."]
].each_with_index do |(title, copy), index| %>
<% end %>
<% [["fa-plane-departure", "Airlines"], ["fa-hotel", "Hotel apps"], ["fa-globe", "Online agencies"], ["fa-mobile-screen", "Super apps"], ["fa-credit-card", "Card perks"], ["fa-code", "Open API"]].each do |icon, label| %>
<% end %>
<% [["Anika Rao", "Co-founder, CEO", 5], ["Mateo Silva", "Co-founder, CTO", 2], ["Lena Hartmann", "Head of Supply", 6], ["Kofi Mensah", "Head of Partnerships", 3]].each_with_index do |(name, role, avatar), index| %>
<% end %>
<!-- block:start footer -->
<footer class="border-t border-pine/15 px-6 py-16 lg:px-20">
<div class="mx-auto grid max-w-[90rem] gap-12 md:grid-cols-[1.5fr_1fr_1fr_1fr]">
<div>
<a href="index.html" class="flex items-center gap-2 font-display text-3xl font-bold"><i class="fa-solid fa-cube text-2xl" aria-hidden="true"></i>Wayloom</a>
<p class="mt-4 max-w-sm text-pine/80">The supply layer that takes local experiences worldwide.</p>
</div>
<div>
<p class="font-display font-semibold">Company</p>
<ul class="mt-4 space-y-2 text-pine/80">
<li><a href="about.html" class="hover:text-pine">About</a></li>
<li><a href="team.html" class="hover:text-pine">Team</a></li>
<li><a href="contact.html" class="hover:text-pine">Contact</a></li>
</ul>
</div>
<div>
<p class="font-display font-semibold">Product</p>
<ul class="mt-4 space-y-2 text-pine/80">
<li><a href="solution.html" class="hover:text-pine">Solution</a></li>
<li><a href="model.html" class="hover:text-pine">Model</a></li>
<li><a href="platform.html" class="hover:text-pine">Platform</a></li>
</ul>
</div>
<div>
<p class="font-display font-semibold">Follow</p>
<div class="mt-4 flex gap-3">
<% [["fa-linkedin-in", "https://linkedin.com", "LinkedIn"], ["fa-x-twitter", "https://x.com", "X"], ["fa-instagram", "https://instagram.com", "Instagram"]].each do |icon, href, label| %>
<a href="<%= href %>" class="inline-flex h-11 w-11 items-center justify-center border border-pine/30 hover:bg-pine hover:text-cream" aria-label="<%= label %>"><i class="fa-brands <%= icon %>" aria-hidden="true"></i></a>
<% end %>
</div>
</div>
</div>
<p class="mx-auto mt-14 max-w-[90rem] border-t border-pine/15 pt-6 text-sm text-pine/60">© <span data-current-year>2026</span> Wayloom. All rights reserved.</p>
</footer>
<!-- block:end footer -->
<script>
const menuToggle = document.getElementById('menu-toggle');
const mobileMenu = document.getElementById('mobile-menu');
if (menuToggle && mobileMenu) {
menuToggle.addEventListener('click', () => {
const expanded = menuToggle.getAttribute('aria-expanded') === 'true';
menuToggle.setAttribute('aria-expanded', String(!expanded));
mobileMenu.hidden = expanded;
});
}
const panels = document.querySelectorAll('[data-panel]');
panels.forEach((panel) => {
panel.querySelector('[data-panel-trigger]').addEventListener('click', () => {
panels.forEach((other) => {
const active = other === panel;
other.setAttribute('aria-expanded', String(active));
const trigger = other.querySelector('[data-panel-trigger]');
trigger.setAttribute('aria-selected', String(active));
trigger.classList.toggle('pointer-events-none', active);
const number = other.querySelector('[data-panel-number]');
number.classList.toggle('text-pine', active);
number.classList.toggle('text-white', !active);
});
});
});
document.querySelectorAll('[data-current-year]').forEach((el) => { el.textContent = new Date().getFullYear(); });
const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
if (!reduceMotion && !navigator.webdriver && 'IntersectionObserver' in window) {
document.body.classList.add('reveal-ready');
const revealObserver = new IntersectionObserver((entries) => {
entries.forEach((entry) => {
if (!entry.isIntersecting) return;
entry.target.classList.add('is-visible');
revealObserver.unobserve(entry.target);
});
}, { threshold: 0.15 });
document.querySelectorAll('[data-reveal]').forEach((el) => revealObserver.observe(el));
const countObserver = new IntersectionObserver((entries) => {
entries.forEach((entry) => {
if (!entry.isIntersecting) return;
const el = entry.target;
const target = parseInt(el.dataset.countTo, 10);
const start = performance.now();
const step = (now) => {
const progress = Math.min((now - start) / 700, 1);
el.textContent = Math.round(progress * target).toLocaleString('en-US');
if (progress < 1) requestAnimationFrame(step);
};
requestAnimationFrame(step);
countObserver.unobserve(el);
});
}, { threshold: 0.4 });
document.querySelectorAll('[data-count-to]').forEach((el) => countObserver.observe(el));
}
</script>
</body>
</html>
Startup
Unlock the entire library of premium templates and blocks. Renews automatically, cancel anytime.