diff --git a/assets/p_pull_f.png b/assets/p_pull_f.png
index 8d34b2a..e410363 100644
Binary files a/assets/p_pull_f.png and b/assets/p_pull_f.png differ
diff --git a/assets/p_smash_f.png b/assets/p_smash_f.png
index 0d80c7b..5f4478d 100644
Binary files a/assets/p_smash_f.png and b/assets/p_smash_f.png differ
diff --git a/assets/p_toss_f.png b/assets/p_toss_f.png
index 6f205db..85aa007 100644
Binary files a/assets/p_toss_f.png and b/assets/p_toss_f.png differ
diff --git a/config.js b/config.js
index 4740748..0683bdb 100644
--- a/config.js
+++ b/config.js
@@ -412,9 +412,12 @@ export const COURTS = [
// (the racket zombie — a zombified opponent) have a second drawing; the horde, the officials and
// the ball boys are shared, because they are staff, not the draw. `sfx` is the sprite-name suffix
// render.js appends: null means "the frames as drawn", which is the men's set.
+// dx/apex are optional and override BOUNCE_IDLE's pair: she reaches further out and higher than he
+// does, so the pre-serve ball has to meet a different palm. Same rule as BOUNCE_IDLE — measured off
+// the drawn hand by eye, not calculated.
export const TOURS = [
{ id: 'men', name: "MEN'S SINGLES", tile: 'tour_m', sfx: null },
- { id: 'women', name: "WOMEN'S SINGLES", tile: 'tour_w', sfx: '_f' },
+ { id: 'women', name: "WOMEN'S SINGLES", tile: 'tour_w', sfx: '_f', dx: 0.46, apex: 0.78 },
];
// netW was the singles-stick width (10.06) while the court is drawn to the DOUBLES lines, so the
diff --git a/index.html b/index.html
index f6b9b4f..b4dd4e5 100644
--- a/index.html
+++ b/index.html
@@ -86,9 +86,11 @@
/* the overlay is HIDDEN during play, not removed: a restart puts it straight back, and the
display:grid above would otherwise win over the hidden attribute */
#intro[hidden] { display: none; }
- /* headline: taller than the body text, so a screen reads as a screen and not as a list */
- #intro h2 { margin: 0 0 20px; font: 400 15px Silkscreen, monospace; color: #e0cc72;
- letter-spacing: 3px; line-height: 1.5; }
+ /* headline: the ANNOUNCEMENT face, the same register the canvas uses for SET and CHAPTER — a
+ screen title is a thing that shouts, not a line of HUD. Bangers carries its own weight, so it
+ wants size and air rather than Silkscreen's letter-spacing. */
+ #intro h2 { margin: 0 0 26px; font: 400 30px Bangers, cursive; color: #e0cc72;
+ letter-spacing: 2px; line-height: 1.2; padding-bottom: 6px; }
/* one button look for every menu screen */
.btn { display: block; width: min(340px, 84vw); margin: 0 auto 10px; padding: 12px 10px;
background: rgba(255,255,255,0.04); border: 2px solid #3b4354; color: #dfe6f2;
@@ -198,6 +200,6 @@
-
+