Following is a draft schedule for the 2025–26 season. This is currently being developed and will be updated according to the preferences of academy members.
OCTOBER 13–19OCTOBER 20–26OCTOBER 27 – NOVEMBER 2NOVEMBER 3–9NOVEMBER 10–16NOVEMBER 17–23NOVEMBER 24–30DECEMBER 1–7DECEMBER 8–14DECEMBER 15–21DECEMBER 22–28DECEMBER 29 – JANUARY 4JANUARY 5–11JANUARY 12–18JANUARY 19–25JANUARY 26 – FEBRUARY 1FEBRUARY 2–8FEBRUARY 9–15FEBRUARY 16–22FEBRUARY 23 – MARCH 1MARCH 2–8MARCH 9–15MARCH 16–22MARCH 23–29MARCH 30 – APRIL 5APRIL 6–12APRIL 13–19APRIL 20–26APRIL 27–30
Pickle Fit Assessments/Lessons Workshop Training Off Court SCPC events
Mon (13)
Tue (14)
Wed (15)
Thu (16)
Fri (17)
Sat (18)
Sun (19)
Mon (20)
Tue (21)
Wed (22)
Thu (23)
Fri (24)
Sat (25)
Sun (26)
Mon (27)
Tue (28)
Wed (29)
Thu (30)
Fri (31)
Sat (1)
Sun (2)
Mon (3)
Tue (4)
Wed (5)
Thu (6)
Fri (7)
Sat (8)
Sun (9)
Mon (10)
Tue (11)
Wed (12)
Thu (13)
Fri (14)
Sat (15)
Sun (16)
Mon (17)
Tue (18)
Wed (19)
Thu (20)
Fri (21)
Sat (22)
Sun (23)
Mon (24)
Tue (25)
Wed (26)
Thu (27)
Fri (28)
Sat (29)
Sun (30)
Mon (1)
Tue (2)
Wed (3)
Thu (4)
Fri (5)
Sat (6)
Sun (7)
Mon (8)
Tue (9)
Wed (10)
Thu (11)
Fri (12)
Sat (13)
Sun (14)
Mon (15)
Tue (16)
Wed (17)
Thu (18)
Fri (19)
Sat (20)
Sun (21)
Mon (22)
Tue (23)
Wed (24)
Thu (25)
Fri (26)
Sat (27)
Sun (28)
Mon (29)
Tue (30)
Wed (31)
Thu (1)
Fri (2)
Sat (3)
Sun (4)
Mon (5)
Tue (6)
Wed (7)
Thu (8)
Fri (9)
Sat (10)
Sun (11)
Mon (12)
Tue (13)
Wed (14)
Thu (15)
Fri (16)
Sat (17)
Sun (18)
Mon (19)
Tue (20)
Wed (21)
Thu (22)
Fri (23)
Sat (24)
Sun (25)
Mon (26)
Tue (27)
Wed (28)
Thu (29)
Fri (30)
Sat (31)
Sun (1)
Mon (2)
Tue (3)
Wed (4)
Thu (5)
Fri (6)
Sat (7)
Sun (8)
Mon (9)
Tue (10)
Wed (11)
Thu (12)
Fri (13)
Sat (14)
Sun (15)
Mon (16)
Tue (17)
Wed (18)
Thu (19)
Fri (20)
Sat (21)
Sun (22)
Mon (23)
Tue (24)
Wed (25)
Thu (26)
Fri (27)
Sat (28)
Sun (1)
Mon (2)
Tue (3)
Wed (4)
Thu (5)
Fri (6)
Sat (7)
Sun (8)
Mon (9)
Tue (10)
Wed (11)
Thu (12)
Fri (13)
Sat (14)
Sun (15)
Mon (16)
Tue (17)
Wed (18)
Thu (19)
Fri (20)
Sat (21)
Sun (22)
Mon (23)
Tue (24)
Wed (25)
Thu (26)
Fri (27)
Sat (28)
Sun (29)
Mon (30)
Tue (31)
Wed (1)
Thu (2)
Fri (3)
Sat (4)
Sun (5)
Mon (6)
Tue (7)
Wed (8)
Thu (9)
Fri (10)
Sat (11)
Sun (12)
Mon (13)
Tue (14)
Wed (15)
Thu (16)
Fri (17)
Sat (18)
Sun (19)
Mon (20)
Tue (21)
Wed (22)
Thu (23)
Fri (24)
Sat (25)
Sun (26)
Mon (27)
Tue (28)
Wed (29)
Thu (30)
Fri (1)
Sat (2)
Sun (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
WELCOME PARTY
6PM-8PM
WELCOME PARTY
Kick off the season with games and community - meet members, set intentions, and have fun.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
FAREWELL PARTY
6PM-8PM
FAREWELL PARTY
Celebrate the season with games, awards, and good company. A relaxed send-off with lots of play and laughs.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:5 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:6 / span 1; grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:7 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:1 / span 1; grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:2 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:3 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" style="grid-column:4 / span 1; grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 md:m-1.5 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Mon (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (31)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
Fri (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
WELCOME PARTY
6PM-8PM
WELCOME PARTY
Kick off the season with games and community - meet members, set intentions, and have fun.
Fri (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
Fri (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (31)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
Fri (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (31)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
Fri (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
MONTHLY MEETUP
6PM-8PM
MONTHLY MEETUP
Monthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
Fri (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
FAREWELL PARTY
6PM-8PM
FAREWELL PARTY
Celebrate the season with games, awards, and good company. A relaxed send-off with lots of play and laughs.
Fri (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (31)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (1)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (2)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (3)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (4)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (5)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (6)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (7)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (8)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (9)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (10)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (11)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (12)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (13)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (14)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (15)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (16)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (17)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (18)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (19)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (20)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (21)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (22)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (23)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
Fri (24)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(SPEED ENDURANCE)
1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
FIESTA FRIDAY
6PM-8PM
FIESTA FRIDAY
Party at the courts - social vibe, lots of play. Tequila optional.
Sat (25)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:10 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
11AM-1PM
AAA
Skill-based match play for 3.75+ players.
Sun (26)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SORTEO SUNDAY
8AM-10AM
SORTEO SUNDAY
Random partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
6PM-8PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
Mon (27)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(MOBILITY–STRENGTH)
1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:17 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#ff8700] text-black">
CHECK-INS
(PRO)
2:30PM-3:30PM
CHECK-INS - PRO
Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
Tue (28)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(FOUNDATIONS)
1:30PM-3PM
WORKSHOP - FOUNDATIONS
Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
TACTICA TUESDAY
6PM-8PM
TACTICA TUESDAY
Weekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
Wed (29)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:2 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
7AM-8AM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 7;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-11:30AM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:11 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#66d9ef] text-black">
TRAINING SESSION
11:30AM-1PM
TRAINING SESSION
The academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 2;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#a6e22e] text-black">
PICKLE FIT
(AGILITY–POWER)
1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
AAA
6PM-8PM
AAA
Skill-based match play for 3.75+ players.
Thu (30)
7AM
8AM
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM
6PM
7PM
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:4 / span 10;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#f92672] text-black dark:text-white">
ASSESSMENTS
LESSONS
8AM-1PM
ASSESSMENTS / LESSONS
Book a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:15 / span 3;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#af87ff] text-black">
WORKSHOP
(MASTERY)
1:30PM-3PM
WORKSHOP - MASTERY
Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
{
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16; // keep whole popup in view
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @mouseleave="show=false" @touchstart.passive="show=true;
$nextTick(() => {
const r = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 16, marginY = 16;
x = Math.min(Math.max(r.left + r.width/2, marginX), vw - marginX);
y = Math.min(Math.max(r.top + r.height/2, marginY), vh - marginY);
});" @touchend.passive="show=false" @touchcancel.passive="show=false" style="grid-row:24 / span 4;" class="rounded-md shadow-none flex items-center justify-center relative group overflow-visible m-1 bg-[#bdbdbd] text-black">
SKINNY SINGLES
6PM-8PM
SKINNY SINGLES
Skinny singles round robin
OCTOBER 13–19OCTOBER 20–26OCTOBER 27 – NOVEMBER 2NOVEMBER 3–9NOVEMBER 10–16NOVEMBER 17–23NOVEMBER 24–30DECEMBER 1–7DECEMBER 8–14DECEMBER 15–21DECEMBER 22–28DECEMBER 29 – JANUARY 4JANUARY 5–11JANUARY 12–18JANUARY 19–25JANUARY 26 – FEBRUARY 1FEBRUARY 2–8FEBRUARY 9–15FEBRUARY 16–22FEBRUARY 23 – MARCH 1MARCH 2–8MARCH 9–15MARCH 16–22MARCH 23–29MARCH 30 – APRIL 5APRIL 6–12APRIL 13–19APRIL 20–26APRIL 27–30
Pickle Fit Assessments/Lessons Workshop Training Off Court SCPC events
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM MONTHLY MEETUPMonthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM WELCOME PARTYKick off the season with games and community - meet members, set intentions, and have fun.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM MONTHLY MEETUPMonthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM MONTHLY MEETUPMonthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM MONTHLY MEETUPMonthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM MONTHLY MEETUPMonthly themed meetups to build community and level up skills. A mix of presentations, on-court work, and structured play. Specific meetups will be announced soon.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM FAREWELL PARTYCelebrate the season with games, awards, and good company. A relaxed send-off with lots of play and laughs.
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
- 7AM-8AM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Speed endurance)On court intervals that train you to repeat hard efforts with porper footwork. Maximum effort but with long recovery periods so you can give it your all!
- 6PM-8PM FIESTA FRIDAYParty at the courts - social vibe, lots of play. Tequila optional.
- 11AM-1PM AAASkill-based match play for 3.75+ players.
- 8AM-10AM SORTEO SUNDAYRandom partner play for variety and fun. A light-hearted way to meet new players and focus on skills you might not practice in a more competitive setting.
- 6PM-8PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 7AM-8AM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-2:30PM PICKLE FIT (Mobility-Strength)Build joint-friendly mobility and functional strength tailored to pickleball’s demands. Sessions balance dynamic warm-ups with focused strength and flexibility work so you move better and stay resilient on court.
- 2:30PM-3:30PM CHECK-INS (Pro)Weekly accountability check-ins for pro members. Review focus areas, troubleshoot barriers, and update plans to stay on track.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Foundations)Themed sessions that teach core concepts with discussion and drills. Specific workshops will be announced soon.
- 6PM-8PM TACTICA TUESDAYWeekly San Carlos Pickleball Club skill-based round-robin. A great event to refine your mindset and practice your focus areas in a competitive setting.
- 7AM-8AM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 8AM-11:30AM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 11:30AM-1PM TRAINING SESSIONThe academy group training sessions using the 3S approach - shots, scenarios, simulations - for a clean bridge from technique to competitive play.
- 1:30PM-2:30PM PICKLE FIT (Agility-Power)Short, explosive efforts to sharpen first-step quickness and shot-making power. Work periods are short with full recovery so every effort is fast and powerful.
- 6PM-8PM AAASkill-based match play for 3.75+ players.
- 8AM-1PM ASSESSMENTS/LESSONSBook a gameplay or video assessment to get a clearer understanding of how to improve your game. Private, semi-private, and group lessons are available to target exactly what you need. Other times are available on request.
- 1:30PM-3PM WORKSHOP (Mastery)Themed sessions including advanced principles and strategy. Specific workshops will be announced soon.
- 6PM-8PM SKINNY SINGLESSkinny singles round robin
October 2025November 2025December 2025January 2026February 2026March 2026April 2026
Pickle Fit Assessments/Lessons Workshop Training Off Court SCPC events
Mon
Tue
Wed
Thu
Fri
Sat
Sun
1
2
3
4
5
6
7
8
9
10
11
12
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
31
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
MONTHLY MEETUP
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
WELCOME PARTY
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
MONTHLY MEETUP
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
31
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
MONTHLY MEETUP
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
31
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
MONTHLY MEETUP
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
MONTHLY MEETUP
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FAREWELL PARTY
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
31
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
1
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
2
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
3
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
4
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
5
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
6
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
7
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
8
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
9
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
10
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
11
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
12
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
13
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
14
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
15
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
16
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
17
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
18
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
19
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
20
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
21
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
22
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
23
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES
24
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - SPEED ENDURANCE
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
FIESTA FRIDAY
25
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
11AM-1PM
AAA
26
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-10AM
SORTEO SUNDAY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TRAINING SESSION
27
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - MOBILITY STRENGTH
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 2:30PM-3:30PM
CHECK-INS - PRO
28
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - FOUNDATIONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
TACTICA TUESDAY
29
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
7AM-8AM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 8AM-11:30AM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 11:30AM-1PM
TRAINING SESSION
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-2:30PM
PICKLE FIT - AGILITY POWER
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
AAA
30
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false">
8AM-1PM
ASSESSMENTS/LESSONS
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 1:30PM-3PM
WORKSHOP - MASTERY
{
const dot = $el.getBoundingClientRect();
const vw = window.innerWidth, vh = window.innerHeight;
const marginX = 160, marginY = 80;
x = Math.min(Math.max(dot.left + dot.width/2, marginX), vw - marginX);
y = Math.min(Math.max(dot.top + dot.height/2, marginY), vh - marginY);
});" @mouseleave="show=false"> 6PM-8PM
SKINNY SINGLES