Battersea (Harris Academy)
Tuesday nights | Harris Academy Battersea, SW11 5AP
Floodlit 3G Turf. 45 mins of competitive football with none of the aggro. Your midweek reset.
Our Battersea league is one of the longest running in London,with teams coming back season after season – as much for the post-match debrief as the football. No semi-pro types, no nasty tackles, just good competitive games in a league that’s properly run.
LEAGUE OPTIONS
Tuesday 5-a-side
7pm, 740pm or 820pm kick-offs
Teams: ~£8.50 pp /week with a 7-man squad ( full season 10 games, £595 )
Individuals : £95 per 10 game season, we will place you into a squad for the season
What you get
-
- FA qualified refs every game
- Decent match balls, Mitre and Adidas
- Dedicated league manager
- Online team management (so you can organise your team without a 53-message whatsapp thread)
- Prizes for the league winners and player of the season, obviously
What our players say
.rc-wrap {
max-width: 900px;
margin: 3rem auto;
padding: 0 1rem;
font-family: -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, Helvetica, Arial, sans-serif;
text-align: center;
box-sizing: border-box;
}
.rc-wrap *, .rc-wrap *::before, .rc-wrap *::after { box-sizing: border-box; }.rc-heading {
font-size: 1.44rem;
font-weight: 700;
margin: 0 0 1.5rem;
color: #111;
}.rc-carousel {
position: relative;
display: flex;
align-items: center;
gap: 0.5rem;
}.rc-track-viewport {
overflow: hidden;
width: 100%;
}.rc-track {
display: flex;
list-style: none;
margin: 0;
padding: 0;
transition: transform 0.45s ease;
touch-action: pan-y;
}.rc-slide {
flex: 0 0 100%;
padding: 0 0.5rem;
}/* Show more than one card at wider widths */
@media (min-width: 700px) {
.rc-slide { flex: 0 0 50%; }
}
@media (min-width: 1000px) {
.rc-slide { flex: 0 0 33.3333%; }
}.rc-card {
background: #fff;
border: 1px solid #eee;
border-radius: 14px;
padding: 1.575rem 1.35rem;
height: 100%;
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
display: flex;
flex-direction: column;
gap: 0.675rem;
min-height: 198px;
}.rc-stars {
color: #f5a623;
font-size: 0.9rem;
letter-spacing: 2px;
}.rc-quote {
font-size: 0.882rem;
line-height: 1.5;
color: #333;
margin: 0;
flex-grow: 1;
}.rc-author {
display: flex;
flex-direction: column;
text-align: left;
margin-top: auto;
}.rc-name {
font-weight: 700;
font-size: 0.828rem;
color: #111;
}.rc-meta {
font-size: 0.738rem;
color: #888;
}.rc-arrow {
flex: 0 0 auto;
background: #fff;
border: 1px solid #ddd;
border-radius: 50%;
width: 36px;
height: 36px;
cursor: pointer;
font-size: 0.81rem;
color: #333;
display: flex;
align-items: center;
justify-content: center;
transition: background 0.2s ease, transform 0.15s ease;
}
.rc-arrow:hover {
background: #f5f5f5;
transform: scale(1.05);
}.rc-dots {
display: flex;
justify-content: center;
gap: 8px;
margin-top: 1.25rem;
}.rc-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #ddd;
cursor: pointer;
border: none;
padding: 0;
transition: background 0.2s ease, transform 0.2s ease;
}
.rc-dot.active {
background: #333;
transform: scale(1.3);
}@media (max-width: 480px) {
.rc-arrow { width: 34px; height: 34px; }
.rc-heading { font-size: 1.3rem; }
}
(function () {
const track = document.getElementById(‘rc-track’);
const slides = Array.from(track.children);
const prevBtn = document.getElementById(‘rc-prev’);
const nextBtn = document.getElementById(‘rc-next’);
const dotsWrap = document.getElementById(‘rc-dots’);
const viewport = track.parentElement;let slidesPerView = getSlidesPerView();
let index = 0;
let autoplayTimer = null;
const AUTOPLAY_MS = 5000;function getSlidesPerView() {
const w = window.innerWidth;
if (w >= 1000) return 3;
if (w >= 700) return 2;
return 1;
}function maxIndex() {
return Math.max(0, slides.length – slidesPerView);
}function buildDots() {
dotsWrap.innerHTML = ”;
const dotCount = maxIndex() + 1;
for (let i = 0; i goTo(i));
dotsWrap.appendChild(dot);
}
}function updateDots() {
Array.from(dotsWrap.children).forEach((d, i) => {
d.classList.toggle(‘active’, i === index);
});
}function goTo(i) {
index = Math.max(0, Math.min(i, maxIndex()));
const slideWidth = slides[0].getBoundingClientRect().width;
track.style.transform = `translateX(-${index * slideWidth}px)`;
updateDots();
resetAutoplay();
}function next() {
goTo(index >= maxIndex() ? 0 : index + 1);
}function prev() {
goTo(index {
startX = e.touches[0].clientX;
isDragging = true;
clearInterval(autoplayTimer);
}, { passive: true });track.addEventListener(‘touchend’, (e) => {
if (!isDragging) return;
isDragging = false;
const endX = e.changedTouches[0].clientX;
const diff = startX – endX;
if (Math.abs(diff) > 40) {
diff > 0 ? next() : prev();
} else {
resetAutoplay();
}
});// Pause on hover (desktop)
viewport.addEventListener(‘mouseenter’, () => clearInterval(autoplayTimer));
viewport.addEventListener(‘mouseleave’, resetAutoplay);// Recalculate on resize
window.addEventListener(‘resize’, () => {
const newSlidesPerView = getSlidesPerView();
if (newSlidesPerView !== slidesPerView) {
slidesPerView = newSlidesPerView;
buildDots();
}
goTo(Math.min(index, maxIndex()));
});buildDots();
goTo(0);
resetAutoplay();
})();
The last game before Christmas will be played on Tuesday 8th December 2026. The league will resume on 5th January 2027.
Tuesday, 5-a-side
- 19:00 - 20:20 kick offs
- 40 mins per Game
- £595 per 10 game Season
- £95 per individual
Why join?
- FA qualified referees
- All equipment provided
- Prizes for league winners
- Dedicated league manager
- Online team management for captains
Watch Video
