DOC Update website to `pydata-sphinx-theme`

This issue is a continuation of [#26809](https://github.com/scikit-learn/scikit-learn/pull/26809) and aims to migrate the scikit-learn website towards [`pydata-sphinx-theme`](https://pydata-sphinx-theme.readthedocs.io/en/stable/). As this is an ambitious goal, this issue is to track the steps of the migration. cc @lucyleeow who guided me to open this issue.

#### Quick links

- [The `new_web_theme` branch](https://github.com/scikit-learn/scikit-learn/tree/new_web_theme)
- [Tracker for upstream issues](https://github.com/scikit-learn/scikit-learn/issues/28084#issuecomment-1893103722)
- Live preview: https://scikit-learn.org/_pst_preview

#### TODO before merging into `main`

- `doc-min-dependencies` is bypassed in CI for now and we need to reactivate it before merging into `main`. Also, we need to make sure all dependencies are documented, in particular `sphinx-design` which was not added in the very first setup PR. See also [#28379](https://github.com/scikit-learn/scikit-learn/pull/28379).
- Remove the `new_web_theme` part in `.circleci/config.yml`.
- In `conf.py`, change the version switcher link to `https://scikit-learn.org/dev/_static/versions.json`.
- Remove `themes/` and update `exclude_patterns` in `conf.py`: these are only useful for the old theme.
- Pin higher versions of `sphinx`, `pydata-sphinx-theme`, and `sphinx-gallery`. See also [tracker for upstream issues](https://github.com/scikit-learn/scikit-learn/issues/28084#issuecomment-1893103722).

#### Tracking work towards the `new_web_theme` branch

- [x] https://github.com/scikit-learn/scikit-learn/pull/28132 
- [x] https://github.com/scikit-learn/scikit-learn/pull/28331
- [x] https://github.com/scikit-learn/scikit-learn/pull/28336
- [x] https://github.com/scikit-learn/scikit-learn/pull/28347
- [x] https://github.com/scikit-learn/scikit-learn/pull/28353
- [x] https://github.com/scikit-learn/scikit-learn/pull/28379
- [x] https://github.com/scikit-learn/scikit-learn/pull/28401
- [x] https://github.com/scikit-learn/scikit-learn/pull/28409
- [x] https://github.com/scikit-learn/scikit-learn/pull/28408
- [x] https://github.com/scikit-learn/scikit-learn/pull/28415
- [x] https://github.com/scikit-learn/scikit-learn/pull/28428
- [x] https://github.com/scikit-learn/scikit-learn/pull/28448
- [ ] https://github.com/scikit-learn/scikit-learn/pull/28478
- [x] https://github.com/scikit-learn/scikit-learn/pull/28511
- [x] https://github.com/scikit-learn/scikit-learn/pull/28512
- [x] https://github.com/scikit-learn/scikit-learn/pull/28623
- [x] https://github.com/scikit-learn/scikit-learn/pull/28630
- [ ] Fix admonitions (**Todo:** make e.g. `.. note:: something` into `.. admonition:: something` with `:class: note`)

#### Tracking work related by towards the `main` branch

- [x] https://github.com/scikit-learn/scikit-learn/pull/28387
- [x] https://github.com/scikit-learn/scikit-learn/pull/28376
- [x] https://github.com/scikit-learn/scikit-learn/pull/28315
- [x] https://github.com/scikit-learn/scikit-learn/pull/28272
- [x] https://github.com/scikit-learn/scikit-learn/pull/28271
- [x] https://github.com/scikit-learn/scikit-learn/pull/28255
- [x] https://github.com/scikit-learn/scikit-learn/pull/28134
- [x] https://github.com/scikit-learn/scikit-learn/pull/28107

COMMENT:
#### Tracking the list of upstream issues in `pydata-sphinx-theme`, `bootstrap`, `sphinx`, etc.

Latest stable release of `pydata-sphinx-theme`: 0.15.2
Latest stable release of `sphinx-design`: 0.15.0
Latest stable release of `sphinx`: 7.2.6

- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1630
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1620
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1651 (`pydata-sphinx-theme>0.15.2`)
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1659 (`pydata-sphinx-theme>0.15.2`)
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1690 (`pydata-sphinx-theme>0.15.2`)
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1693 (`pydata-sphinx-theme>0.15.2`)
- [x] https://github.com/pydata/pydata-sphinx-theme/pull/1688 (`pydata-sphinx-theme>0.15.2`)
- [x] https://github.com/sphinx-doc/sphinx/pull/11885 (`sphinx>7.2.6`)
- [x] https://github.com/sphinx-gallery/sphinx-gallery/pull/1226 (`sphinx-gallery>0.15.0`)

---

- [ ] https://github.com/pydata/pydata-sphinx-theme/issues/1662
      https://github.com/pydata/pydata-sphinx-theme/pull/1682
  Shows empty navigation. This is an pretty large problem such that if unsolved upstream we would need to pin 0.14.x.
- [ ] https://github.com/sphinx-gallery/sphinx-gallery/issues/1258
  Integrate the badges and download links with the secondary sidebar.
- [ ] https://github.com/sphinx-gallery/sphinx-gallery/issues/1259
  `minigallery` with multiple files should not start a new row for each file, and should remove duplicated examples.
- [ ] https://github.com/pydata/pydata-sphinx-theme/issues/1435
      https://github.com/twbs/bootstrap/issues/39248
  Scrollspy (i.e., secondary sidebar highlight following the scrolling of the page) does not work with IDs that contain dots, and `autodoc` generates a lot of those IDs. This needs to be fixed in bootstrap (the reason is that currently it selects `#xxx.xxx.xxx` where `.xxx` would be interpreted as a class instead).
- [ ] https://github.com/pydata/pydata-sphinx-theme/issues/1624
  The breadcrumbs component is broken when having numbered sections. If not fixed upstream we need to vendor the component and make modifications on our side.

Labels: Documentation