[Gallery] Fix text contrast ratio on homepage and contacts demo (#48752)

diff --git a/examples/flutter_gallery/lib/demo/contacts_demo.dart b/examples/flutter_gallery/lib/demo/contacts_demo.dart
index a30889e..e3552e1 100644
--- a/examples/flutter_gallery/lib/demo/contacts_demo.dart
+++ b/examples/flutter_gallery/lib/demo/contacts_demo.dart
@@ -169,9 +169,9 @@
                     const DecoratedBox(
                       decoration: BoxDecoration(
                         gradient: LinearGradient(
-                          begin: Alignment(0.0, -1.0),
-                          end: Alignment(0.0, -0.4),
-                          colors: <Color>[Color(0x60000000), Color(0x00000000)],
+                          begin: Alignment.topCenter,
+                          end: Alignment(0, .35),
+                          colors: <Color>[Color(0xC0000000), Color(0x00000000)],
                         ),
                       ),
                     ),
diff --git a/examples/flutter_gallery/lib/gallery/options.dart b/examples/flutter_gallery/lib/gallery/options.dart
index c939fca..c6dfac6 100644
--- a/examples/flutter_gallery/lib/gallery/options.dart
+++ b/examples/flutter_gallery/lib/gallery/options.dart
@@ -194,9 +194,10 @@
     final ThemeData theme = Theme.of(context);
     return _OptionsItem(
       child: DefaultTextStyle(
-        style: theme.textTheme.body1.copyWith(
+        style: theme.textTheme.title.copyWith(
           fontFamily: 'GoogleSans',
-          color: theme.accentColor,
+          color: theme.colorScheme.onPrimary,
+          fontWeight: FontWeight.w700,
         ),
         child: Semantics(
           child: Text(text),
@@ -525,7 +526,7 @@
           _TextDirectionItem(options, onOptionsChanged),
           _TimeDilationItem(options, onOptionsChanged),
           const Divider(),
-          const _Heading('Platform mechanics'),
+          const ExcludeSemantics(child: _Heading('Platform mechanics')),
           _PlatformItem(options, onOptionsChanged),
           ..._enabledDiagnosticItems(),
           const Divider(),
diff --git a/examples/flutter_gallery/test/accessibility_test.dart b/examples/flutter_gallery/test/accessibility_test.dart
index c0a7e01..83e8d4f 100644
--- a/examples/flutter_gallery/test/accessibility_test.dart
+++ b/examples/flutter_gallery/test/accessibility_test.dart
@@ -3,6 +3,7 @@
 // found in the LICENSE file.
 
 import 'package:flutter/material.dart';
+import 'package:flutter_gallery/gallery/app.dart';
 import 'package:flutter_test/flutter_test.dart';
 import 'package:flutter_gallery/demo/all.dart';
 import 'package:flutter_gallery/gallery/themes.dart';
@@ -756,4 +757,35 @@
       });
     }
   });
+
+  group('Gallery home page meets text contrast guidelines', () {
+    testWidgets('options menu', (WidgetTester tester) async {
+      await tester.pumpWidget(const GalleryApp(testMode: true));
+      await tester.tap(find.byTooltip('Toggle options page'));
+      await tester.pumpAndSettle();
+      await expectLater(tester, meetsGuideline(textContrastGuideline));
+    });
+
+    testWidgets('options menu - dark theme', (WidgetTester tester) async {
+      await tester.pumpWidget(const GalleryApp(testMode: true));
+      await tester.tap(find.byTooltip('Toggle options page'));
+      await tester.pumpAndSettle();
+
+      // Toggle dark mode.
+      final Finder themeToggleContainer = find.ancestor(
+        of: find.text('Theme'),
+        matching: find.byType(Container),
+      );
+      final Finder themeMenuButton = find.descendant(
+        of: themeToggleContainer,
+        matching: find.byIcon(Icons.arrow_drop_down),
+      );
+      await tester.tap(themeMenuButton);
+      await tester.pumpAndSettle();
+      await tester.tap(find.text('Dark'));
+      await tester.pumpAndSettle();
+
+      await expectLater(tester, meetsGuideline(textContrastGuideline));
+    });
+  });
 }