Where performance meets comfort
Built to move
Move free, stay cool
Pool to Beach
The perfect finish
Dive Ready
{
spaceBetween: 30,
centeredSlides: true,
loop: true,
effect: 'fade',
fadeEffect: {
crossFade: true
},
autoplay: {
delay: 5000,
disableOnInteraction: false,
waitForTransition: false
},
on: {
init: (s) => {
// Toggle .active on prev/next bar only (title opacity). No fill here.
const updateProgressBars = (idx) => {
if (idx === undefined || idx === null) return;
component.querySelectorAll('.progress-bar-item').forEach((el) => {
el.classList.toggle('active', Number(el.dataset.progressIndex) === idx);
});
component._activeProgressIndex = idx;
};
// Toggle .is-filling and restart fill animation via CSS class only.
const setProgressFill = (idx) => {
if (idx === undefined || idx === null) return;
const prevFillingIndex = component._fillingProgressIndex;
const nextFillEl = component.querySelector(`.progress-bar-item[data-progress-index="${idx}"]`);
if (!nextFillEl) return;
if (prevFillingIndex !== undefined && prevFillingIndex !== null && prevFillingIndex !== idx) {
const prevFillEl = component.querySelector(`.progress-bar-item[data-progress-index="${prevFillingIndex}"]`);
prevFillEl?.classList.remove('is-filling');
}
nextFillEl.classList.remove('is-filling');
requestAnimationFrame(() => {
nextFillEl.classList.add('is-filling');
});
component._fillingProgressIndex = idx;
};
// Sync banner copy and clickable slide URL.
const updateInfoItems = (idx) => {
if (idx === undefined || idx === null) return;
component.querySelectorAll('.banner-info-item').forEach((item, i) => {
item.classList.toggle('active', i === idx);
});
const activeInfoItem = component.querySelector(`.banner-info-item[data-slide-index="${idx}"]`);
const activeButton = activeInfoItem ? activeInfoItem.querySelector('.link-button-wrapper') : null;
const activeUrl = activeButton ? activeButton.getAttribute('onclick') : '';
const matchedUrl = activeUrl ? activeUrl.match(/window\.location\.href='([^']+)'/) : null;
component._activeSlideUrl = matchedUrl ? matchedUrl[1] : '';
component.classList.toggle('is-clickable-banner', !!component._activeSlideUrl);
};
updateProgressBars(s.realIndex);
updateInfoItems(s.realIndex);
setProgressFill(s.realIndex);
component._updateInfoItems = updateInfoItems;
component._updateProgressBars = updateProgressBars;
component._setProgressFill = setProgressFill;
component
.querySelectorAll('.progress-bar-item')
.forEach((item) => {
item.addEventListener('click', () => {
const idx = Number(item.dataset.progressIndex);
const prevIndex = component._activeProgressIndex;
item.classList.add('active');
setTimeout(() => {
component._activeProgressIndex = idx;
updateInfoItems(idx);
if (prevIndex !== undefined && prevIndex !== null && prevIndex !== idx) {
component.querySelector(`.progress-bar-item[data-progress-index="${prevIndex}"]`)?.classList.remove('active');
}
s.slideToLoop(idx);
}, 0);
});
});
},
slideChange: (s) => {
component._updateInfoItems?.(s.realIndex);
},
slideChangeTransitionEnd: (s) => {
component._updateProgressBars?.(s.realIndex);
component._setProgressFill?.(s.realIndex);
}
}
}
Find your swim.
Own your lane.
From splash to podium, we’ve got you covered.
Featured Products
{ slidesPerView: 1.1, initialSlide: 1, spaceBetween: 10, grabCursor: true, centeredSlides: true, pagination: {
el: ".swiper-pagination-template--26024526217516__featured_products_tab_kKKNYj", clickable: true, }, navigation: { nextEl: ".swiper-button-next-template--26024526217516__featured_products_tab_kKKNYj", prevEl: ".swiper-button-prev-template--26024526217516__featured_products_tab_kKKNYj", }, breakpoints: { 650: { effect: 'creative',
creativeEffect: { next: { translate: [ 250, 0, -250 ], scale: 0.8 }, prev: { translate: [ -250, 0, -250 ],
scale: 0.8 }, }, slidesPerView: 2, spaceBetween: 0, } } }
Innovation at every step
Designed to last longer
Endurabrite
A high-performance fabric designed for "superb colour performance," allowing for vibrant fluorescent and bright colours that last longer.
Explore Endurabrite Collection
Endurance+
Most durable fabric, made of 100% chlorine-resistant polyester/PBT that is 20 times more fade-resistant than traditional swimwear.
Explore Endurance+ Collection
Endurance 10
A soft, high-stretch fabric featuring CREORA HighClo for shape retention and better chlorine resistance than standard suits.
Explore Endurance 10 Collection
New arrivals
An iconic curation that brings together innovation, design, and enduring appeal.
{ slidesPerView: 1.1, spaceBetween: 10, centeredSlides: true, navigation: { nextEl: ".swiper-button-next-template--26024526217516__new_arrivals_Ve88Gx", prevEl: ".swiper-button-prev-template--26024526217516__new_arrivals_Ve88Gx", }, breakpoints: { 650: { slidesPerView: 2.3,
spaceBetween: 14, centeredSlides: false, }, 1024: { slidesPerView: 2.3, spaceBetween: 14, centeredSlides:
true, spaceBetween: 14, centeredSlides: false } } }
SHOP YOUR PATH
Designed for every swimmer, across sports and goals.
Beginner Collection
{ slidesPerView: 1, spaceBetween: 0, loop: true, passiveListeners: false, allowTouchMove: true, simulateTouch: true, touchEventsTarget: 'container' }
Our Bestsellers
India’s most‑loved styles
{ slidesPerView: 1.1, spaceBetween: 5, centeredSlides: true,
pagination: { el: ".swiper-pagination-template--26024526217516__homepage_our_bestseller_rRJPDV", clickable: true },
navigation: { nextEl: ".swiper-button-next-template--26024526217516__homepage_our_bestseller_rRJPDV", prevEl: ".swiper-button-prev-template--26024526217516__homepage_our_bestseller_rRJPDV", }, breakpoints: { 600: { slidesPerView: 1.4,
spaceBetween:10, centeredSlides: true, }, 1100: { slidesPerView: 4, spaceBetween:10, centeredSlides: true,
initialSlide: 2,} } }
Clear vision. Faster turns. Maximum speed
Biofuse Goggles
Super Soft Seals | Interchangeable Nose Bridges | Anti Fog Coated
Explore Collection
Little Swimmers. Big Confidence.
From their first lesson to their first race, Speedo kids' swimwear is built to grow with your child's love of the water.
The Product is in your bag.