.tfs-gal-page { font-family: « Space Grotesk », sans-serif; color: #141414; background: #FAFAF7; }
.tfs-gal-page * { box-sizing: border-box; }
/* HERO */
.tfs-gal-hero {
background: linear-gradient(180deg, #141414 0%, #1f1f22 100%);
color: white;
padding: 110px 24px 90px;
position: relative;
overflow: hidden;
}
.tfs-gal-hero::before {
content: « »; position: absolute; top: -150px; right: -150px;
width: 600px; height: 600px;
background: radial-gradient(circle, rgba(201,169,97,0.16), transparent 65%);
pointer-events: none;
}
.tfs-gal-hero .wrap { max-width: 920px; margin: 0 auto; position: relative; z-index: 1; }
.tfs-gal-hero .eyebrow {
display: block; font-family: « JetBrains Mono », monospace;
font-size: 0.78rem; letter-spacing: 0.22em; text-transform: uppercase;
color: #C9A961; font-weight: 600; margin-bottom: 24px;
}
.tfs-gal-hero h1 {
font-family: « Bricolage Grotesque », sans-serif;
font-weight: 700; font-size: clamp(40px, 6vw, 68px);
line-height: 1.05; letter-spacing: -0.035em;
margin: 0 0 26px; color: white;
}
.tfs-gal-hero h1 em {
font-family: « Instrument Serif », serif;
font-style: italic; font-weight: 400; color: #C9A961;
}
.tfs-gal-hero p {
font-size: 1.18rem; line-height: 1.6;
color: rgba(255,255,255,0.78);
margin: 0; max-width: 680px;
}
/* SECTION */
.tfs-gal-section {
padding: 80px 24px;
background: #FAFAF7;
}
.tfs-gal-section:nth-child(odd of .tfs-gal-section) { background: white; }
.tfs-gal-section .wrap { max-width: 1280px; margin: 0 auto; }
.tfs-gal-section .head {
margin-bottom: 40px;
display: grid;
grid-template-columns: 1fr;
gap: 14px;
}
@media (min-width: 720px) {
.tfs-gal-section .head { grid-template-columns: 2fr 3fr; align-items: end; gap: 32px; }
}
.tfs-gal-section .head .meta {
display: flex; flex-direction: column; gap: 8px;
}
.tfs-gal-section .head .num {
font-family: « JetBrains Mono », monospace;
font-size: 0.78rem; letter-spacing: 0.2em;
color: #C9A961; font-weight: 600;
}
.tfs-gal-section .head h2 {
font-family: « Bricolage Grotesque », sans-serif;
font-size: clamp(28px, 3.8vw, 40px);
letter-spacing: -0.025em; line-height: 1.1;
margin: 0; color: #141414;
}
.tfs-gal-section .head h2 em {
font-family: « Instrument Serif », serif;
font-style: italic; color: #C9A961; font-weight: 400;
}
.tfs-gal-section .head .lead {
font-size: 1.05rem; line-height: 1.55;
color: rgba(20,20,20,0.7);
margin: 0;
}
/* MASONRY GRID */
.tfs-gal-grid {
columns: 3 280px;
column-gap: 16px;
}
@media (max-width: 700px) {
.tfs-gal-grid { columns: 2 140px; column-gap: 10px; }
}
.tfs-gal-item {
break-inside: avoid;
margin-bottom: 16px;
display: block;
overflow: hidden;
border-radius: 6px;
background: #ECE6D8;
cursor: pointer;
position: relative;
}
.tfs-gal-item img {
width: 100%;
height: auto;
display: block;
transition: transform 0.4s cubic-bezier(0.16,1,0.3,1);
}
.tfs-gal-item::after {
content: « »;
position: absolute;
inset: 0;
background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,0.4) 100%);
opacity: 0;
transition: opacity 0.3s;
}
.tfs-gal-item:hover img { transform: scale(1.04); }
.tfs-gal-item:hover::after { opacity: 1; }
@media (max-width: 700px) { .tfs-gal-grid { column-gap: 10px; } .tfs-gal-item { margin-bottom: 10px; } }
/* LIGHTBOX */
.tfs-gal-lightbox {
position: fixed; inset: 0;
background: rgba(10,10,10,0.92);
z-index: 99999;
display: none;
align-items: center; justify-content: center;
padding: 24px;
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
}
.tfs-gal-lightbox.open { display: flex; }
.tfs-gal-lightbox .stage {
max-width: 90vw; max-height: 86vh;
display: flex; align-items: center; justify-content: center;
position: relative;
}
.tfs-gal-lightbox img {
max-width: 100%; max-height: 86vh;
display: block;
object-fit: contain;
border-radius: 4px;
}
.tfs-gal-lightbox .close {
position: absolute; top: 24px; right: 24px;
width: 44px; height: 44px;
background: rgba(255,255,255,0.1);
border: 1px solid rgba(255,255,255,0.2);
border-radius: 50%;
color: white;
font-size: 1.4rem; line-height: 1;
cursor: pointer;
display: flex; align-items: center; justify-content: center;
transition: background 0.2s;
}
.tfs-gal-lightbox .close:hover { background: rgba(255,255,255,0.2); }
.tfs-gal-lightbox .nav {
position: absolute;
top: 50%; transform: translateY(-50%);
width: 56px; height: 56px;
background: rgba(255,255,255,0.1);
border: 1px solid rgba(255,255,255,0.2);
border-radius: 50%;
color: white;
font-family: « Instrument Serif », serif;
font-style: italic;
font-size: 1.8rem;
cursor: pointer;
display: flex; align-items: center; justify-content: center;
transition: background 0.2s;
z-index: 1;
}
.tfs-gal-lightbox .nav:hover { background: rgba(255,255,255,0.2); }
.tfs-gal-lightbox .nav.prev { left: 24px; }
.tfs-gal-lightbox .nav.next { right: 24px; }
.tfs-gal-lightbox .caption {
position: absolute; bottom: 24px; left: 50%;
transform: translateX(-50%);
padding: 10px 18px;
background: rgba(0,0,0,0.5);
color: white;
font-size: 0.88rem;
border-radius: 4px;
max-width: 80vw;
}
@media (max-width: 640px) {
.tfs-gal-lightbox .nav { width: 44px; height: 44px; font-size: 1.4rem; }
.tfs-gal-lightbox .nav.prev { left: 12px; }
.tfs-gal-lightbox .nav.next { right: 12px; }
.tfs-gal-lightbox .close { top: 16px; right: 16px; }
}
body.tfs-gal-locked { overflow: hidden !important; }
/* CTA */
.tfs-gal-cta {
background: #141414;
color: white;
padding: 90px 24px 100px;
position: relative; overflow: hidden;
}
.tfs-gal-cta::after {
content: « »; position: absolute; bottom: -150px; left: -100px;
width: 500px; height: 500px;
background: radial-gradient(circle, rgba(229,20,26,0.13), transparent 60%);
pointer-events: none;
}
.tfs-gal-cta .wrap {
max-width: 880px; margin: 0 auto; position: relative; z-index: 1;
display: grid; grid-template-columns: 1fr; gap: 36px;
}
@media (min-width: 720px) { .tfs-gal-cta .wrap { grid-template-columns: 1.3fr 1fr; align-items: center; } }
.tfs-gal-cta .eyebrow {
display: block; font-size: 0.78rem; letter-spacing: 0.22em;
text-transform: uppercase; color: #C9A961;
font-weight: 600; margin-bottom: 18px;
}
.tfs-gal-cta h2 {
font-family: « Bricolage Grotesque », sans-serif;
font-size: clamp(32px, 4.5vw, 50px);
line-height: 1.1; letter-spacing: -0.03em;
margin: 0 0 18px; color: white;
}
.tfs-gal-cta h2 em {
font-family: « Instrument Serif », serif;
font-style: italic; color: #C9A961; font-weight: 400;
}
.tfs-gal-cta p { color: rgba(255,255,255,0.7); font-size: 1.05rem; line-height: 1.6; margin: 0; }
.tfs-gal-cta .actions { display: flex; flex-direction: column; gap: 14px; }
.tfs-gal-cta .actions a {
display: inline-flex; align-items: center; justify-content: center; gap: 10px;
padding: 17px 26px;
font-family: « Space Grotesk », sans-serif;
font-weight: 700; font-size: 0.92rem;
letter-spacing: 0.04em; text-transform: uppercase;
text-decoration: none !important; border-radius: 4px;
transition: transform 0.2s;
}
.tfs-gal-cta .actions .primary {
background: #E5141A; color: white !important;
box-shadow: 0 10px 28px -8px rgba(229,20,26,0.6);
}
.tfs-gal-cta .actions .secondary {
background: rgba(255,255,255,0.06);
border: 1px solid rgba(255,255,255,0.18);
color: white !important;
}
.tfs-gal-cta .actions a:hover { transform: translateY(-2px); }
.tfs-gal-cta .actions .tel-num {
font-family: « Bricolage Grotesque », sans-serif;
font-size: 1.05rem;
}
@media (max-width: 640px) {
.tfs-gal-hero { padding: 70px 20px 60px; }
.tfs-gal-section { padding: 60px 20px; }
.tfs-gal-cta { padding: 60px 20px 70px; }
}
L’équipe Five Star, en action.
Le camion, les déménageurs, les chantiers, les cas spéciaux. Une sélection de moments réels capturés sur le terrain à Trois-Rivières et en Mauricie depuis 2018.
Le camion, l'équipe, le quotidien. On déménage avec sérieux.





Du 3½ aux maisons unifamiliales — la base de notre métier.
















Quand le volume monte ou que l'objet est hors-norme.







Pour les transports qui exigent une expertise pointue.




On déménage aussi pour vous.
Vous avez aimé ce que vous avez vu ? Demandez votre soumission gratuite — réponse en moins de 24 h ouvrables, sans engagement.
(function(){
var lb = document.getElementById(« tfsGalLightbox »);
if (!lb) return;
var img = lb.querySelector(« .stage img »);
var cap = lb.querySelector(« .caption »);
var closeBtn = lb.querySelector(« .close »);
var prevBtn = lb.querySelector(« .nav.prev »);
var nextBtn = lb.querySelector(« .nav.next »);
var items = Array.prototype.slice.call(document.querySelectorAll(« .tfs-gal-item »));
var current = 0;
function show(i) {
if (i = items.length) i = 0;
current = i;
var it = items[i];
img.src = it.getAttribute(« data-src ») || it.querySelector(« img »).src;
img.alt = it.getAttribute(« data-alt ») || « »;
cap.textContent = img.alt;
}
function open(i) {
show(i);
lb.classList.add(« open »);
lb.setAttribute(« aria-hidden », « false »);
document.body.classList.add(« tfs-gal-locked »);
}
function close() {
lb.classList.remove(« open »);
lb.setAttribute(« aria-hidden », « true »);
document.body.classList.remove(« tfs-gal-locked »);
img.src = « »;
}
items.forEach(function(it, idx) {
it.addEventListener(« click », function(e) {
e.preventDefault();
open(idx);
});
});
closeBtn.addEventListener(« click », close);
prevBtn.addEventListener(« click », function(){ show(current – 1); });
nextBtn.addEventListener(« click », function(){ show(current + 1); });
lb.addEventListener(« click », function(e) {
if (e.target === lb) close();
});
document.addEventListener(« keydown », function(e) {
if (!lb.classList.contains(« open »)) return;
if (e.key === « Escape ») close();
if (e.key === « ArrowLeft ») show(current – 1);
if (e.key === « ArrowRight ») show(current + 1);
});
})();