diff --git a/assets/js/application.js b/assets/js/application.js
index ed83e31d31..259973fb11 100644
--- a/assets/js/application.js
+++ b/assets/js/application.js
@@ -36,6 +36,7 @@ $(document).ready(function() {
   Forms.init();
   Downloads.init();
   DownloadBox.init();
+  InstallPageLink.init();
   PostelizeAnchor.init();
   Print.init();
 });
@@ -60,27 +61,27 @@ var DownloadBox = {
     var os = window.session.browser.os; // Mac, Win, Linux
     if(os == "Mac") {
       $(".monitor").addClass("mac");
-      $("#download-link").text("Download for Mac").attr("href", `${baseURLPrefix}downloads/mac`);
+      $("#download-link").text("Download for Mac").attr("href", `${baseURLPrefix}install/mac`);
       $("#gui-link").removeClass('mac').addClass('gui');
       $("#gui-link").text("Mac GUIs").attr("href", `${baseURLPrefix}downloads/guis?os=mac`);
       $("#gui-os-filter").attr('data-os', 'mac');
       $("#gui-os-filter").text("Only show GUIs for my OS (Mac)")
     } else if (os == "Windows") {
       $(".monitor").addClass("windows");
-      $("#download-link").text("Download for Windows").attr("href", `${baseURLPrefix}downloads/win`);
+      $("#download-link").text("Download for Windows").attr("href", `${baseURLPrefix}install/windows`);
       $("#gui-link").removeClass('mac').addClass('gui');
       $("#gui-link").text("Windows GUIs").attr("href", `${baseURLPrefix}downloads/guis?os=windows`);
       $("#alt-link").removeClass("windows").addClass("mac");
-      $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}downloads/mac`);
+      $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}install/mac`);
       $("#gui-os-filter").attr('data-os', 'windows');
       $("#gui-os-filter").text("Only show GUIs for my OS (Windows)")
     } else if (os == "Linux") {
       $(".monitor").addClass("linux");
-      $("#download-link").text("Download for Linux").attr("href", `${baseURLPrefix}downloads/linux`);
+      $("#download-link").text("Download for Linux").attr("href", `${baseURLPrefix}install/linux`);
       $("#gui-link").removeClass('mac').addClass('gui');
       $("#gui-link").text("Linux GUIs").attr("href", `${baseURLPrefix}downloads/guis?os=linux`);
       $("#alt-link").removeClass("windows").addClass("mac");
-      $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}downloads/mac`);
+      $("#alt-link").text("Mac Build").attr("href", `${baseURLPrefix}install/mac`);
       $("#gui-os-filter").attr('data-os', 'linux');
       $("#gui-os-filter").text("Only show GUIs for my OS (Linux)")
     } else {
@@ -809,6 +810,22 @@ var Graphviz = {
   }
 }
 
+var InstallPageLink = {
+  init: function() {
+    const installLink = document.querySelector('.install-link');
+    if (!installLink) return;
+
+    const os = window.session?.browser?.os;
+    if (os === "Mac") {
+      installLink.href = installLink.href.replace('/install', '/install/mac');
+    } else if (os === "Windows") {
+      installLink.href = installLink.href.replace('/install', '/install/win');
+    } else if (os === "Linux") {
+      installLink.href = installLink.href.replace('/install', '/install/linux');
+    }
+  }
+}
+
 var Print = {
   init: function() {
     Print.tagline = $("#tagline");
diff --git a/assets/sass/application.scss b/assets/sass/application.scss
index a1d8d2481e..470a4d7ad0 100644
--- a/assets/sass/application.scss
+++ b/assets/sass/application.scss
@@ -16,7 +16,7 @@ $baseurl: "{{ .Site.BaseURL }}{{ if (and (ne .Site.BaseURL "/") (ne .Site.BaseUR
 @import 'variables';
 @import 'layout';
 @import 'typography';
-@import 'downloads';
+@import 'install';
 @import 'search';
 @import 'front-page';
 @import 'sidebar';
diff --git a/assets/sass/downloads.scss b/assets/sass/downloads.scss
deleted file mode 100644
index 14ddc6784e..0000000000
--- a/assets/sass/downloads.scss
+++ /dev/null
@@ -1,107 +0,0 @@
-@import "variables";
-@import "mixins";
-
-#logo-license {
-  @extend .callout;
-  padding: 20px !important;
-  margin-top: 2em;
-
-  p {
-    font-size: 12px;
-    line-height: 1.4;
-    color: var(--light-font-color);
-  }
-
-  p + p {
-    margin-top: 14px;
-  }
-
-  img {
-    float: left;
-    margin-right: 20px;
-  }
-}
-
-.callout#more-downloads {
-  .column-left {
-    width: 47%;
-  }
-
-  .column-right {
-    width: 45%;
-  }
-
-  p {
-    padding-bottom: 1em;
-    line-height: 1.4;
-  }
-}
-
-#download-next-steps {
-  @include clearfix;
-  @extend .unstyled !optional;
-  padding-top: 24px;
-
-  li {
-    display: block;
-    float: left;
-    width: 200px;
-    margin-bottom: 20px;
-  }
-
-  li + li {
-    margin-left: 20px;
-  }
-
-  a {
-    display: block;
-    color: var(--font-color);
-    text-align: center;
-    background-repeat: no-repeat;
-    background-position: 0 0;
-    transition-duration: 0.3s;
-    transition-property: color;
-
-    img {
-      display: block;
-      margin: 0 auto 10px;
-      opacity: 0.9;
-      transition-duration: 0.3s;
-      transition-property: opacity;
-      image-rendering: -webkit-optimize-contrast;
-    }
-
-    h3 {
-      font-size: 18px;
-      font-weight: bold;
-      color: var(--orange);
-    }
-
-    p {
-      font-size: 13px;
-      line-height: $base-line-height * 0.8;
-    }
-  }
-
-  a:hover {
-    img {
-      opacity: 1;
-    }
-
-    h3 {
-      color: var(--orange-darker-5);
-    }
-  }
-}
-
-#os-filter-count {
-  position: relative;
-  top: 8px;
-  left: 12px;
-  display: none;
-  color: var(--orange);
-}
-
-.downloading .hide {
-  display: none;
-}
diff --git a/assets/sass/install.scss b/assets/sass/install.scss
new file mode 100644
index 0000000000..51cb15f65e
--- /dev/null
+++ b/assets/sass/install.scss
@@ -0,0 +1,184 @@
+@import "variables";
+@import "mixins";
+
+.install-tabs {
+  display: flex;
+  border-bottom: 2px solid var(--callout-color);
+  role: tablist;
+
+  a[role="tab"] {
+    padding: 0.75rem 1rem;
+
+    background: var(--callout-color);
+    border: 2px solid var(--callout-color);
+    border-bottom: none;
+    margin-right: -2px;
+    font-weight: 600;
+    text-decoration: none;
+    color: var(--font-color);
+    text-align: center;
+
+    &:hover {
+      color: var(--link-color);
+    }
+
+    &[aria-selected="true"] {
+      color: var(--font-color);
+      background: var(--main-bg);
+      border-bottom: 2px solid var(--main-bg);
+      margin-bottom: -2px;
+    }
+
+    // Border radius for first and last tabs
+    &:first-of-type {
+      border-top-left-radius: 8px;
+    }
+
+    &:last-of-type {
+      border-top-right-radius: 8px;
+      margin-right: 0;
+    }
+  }
+
+  @media (max-width: $mobile-m) {
+    a[role="tab"] {
+      padding: .5rem;
+      line-height: 1.2em;
+      display: flex;
+
+      span {
+        margin: auto;
+      }
+    }
+  }
+}
+
+.install-content {
+  padding: 1rem;
+  border: 2px solid var(--callout-color);
+  border-top: none;
+  border-bottom-left-radius: 8px;
+  border-bottom-right-radius: 8px;
+}
+
+.install-overview {
+  margin: 2rem;
+  color: var(--light-font-color);
+  font-size: 1.1rem;
+  line-height: 1.8rem;
+}
+
+.install-header {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  margin-bottom: 1.5rem;
+
+  h1 {
+    margin: 0;
+  }
+}
+
+.version-badge {
+  display: inline-block;
+  padding: 0.25rem 0.75rem;
+  background: var(--sidebar-toc-bg-color);
+  border-radius: 6px;
+  font-size: 0.75rem;
+  font-weight: bold;
+  @media (max-width: $mobile-m) {
+    max-width: 150px;
+  }
+
+  a {
+    color: var(--link-color);
+    text-decoration: none;
+
+    &:hover {
+      color: var(--link-hover-color);
+      text-decoration: underline;
+    }
+  }
+}
+
+#logo-license {
+  @extend .callout;
+  padding: 20px !important;
+  margin-top: 2em;
+
+  p {
+    font-size: 12px;
+    line-height: 1.4;
+    color: var(--light-font-color);
+  }
+
+  p+p {
+    margin-top: 14px;
+  }
+
+  img {
+    float: left;
+    margin-right: 20px;
+  }
+}
+
+#download-next-steps {
+  @include clearfix;
+  @extend .unstyled !optional;
+  padding-top: 24px;
+
+  li {
+    display: block;
+    float: left;
+    width: 200px;
+    margin-bottom: 20px;
+  }
+
+  li+li {
+    margin-left: 20px;
+  }
+
+  a {
+    display: block;
+    color: var(--font-color);
+    text-align: center;
+    background-repeat: no-repeat;
+    background-position: 0 0;
+    transition-duration: 0.3s;
+    transition-property: color;
+
+    img {
+      display: block;
+      margin: 0 auto 10px;
+      opacity: 0.9;
+      transition-duration: 0.3s;
+      transition-property: opacity;
+      image-rendering: -webkit-optimize-contrast;
+    }
+
+    h3 {
+      font-size: 18px;
+      font-weight: bold;
+      color: var(--orange);
+    }
+
+    p {
+      font-size: 13px;
+      line-height: $base-line-height * 0.8;
+    }
+  }
+
+  a:hover {
+    img {
+      opacity: 1;
+    }
+
+    h3 {
+      color: var(--orange-darker-5);
+    }
+  }
+}
+
+.downloading .hide {
+  display: none;
+}
diff --git a/content/about/free-and-open-source.html b/content/about/free-and-open-source.html
index d9b8d31bc7..a9037ab47c 100644
--- a/content/about/free-and-open-source.html
+++ b/content/about/free-and-open-source.html
@@ -17,7 +17,7 @@ 
Free and Open Source 
 	free for all its users.
 
     However, we do restrict the use of the term "Git" and the
-       }}">logos  to avoid confusion. Please
+       }}">logos  to avoid confusion. Please
        see our }}">trademark  policy for
        details.
 
diff --git a/content/about/trademark.html b/content/about/trademark.html
index 589c968513..30c807ee1f 100644
--- a/content/about/trademark.html
+++ b/content/about/trademark.html
@@ -38,7 +38,7 @@ 1 Purpose 
   
 
diff --git a/content/community/_index.html b/content/community/_index.html
index f52134243b..9ce7909a97 100644
--- a/content/community/_index.html
+++ b/content/community/_index.html
@@ -92,6 +92,12 @@   Discord Server  
     The Git Community Discord Server  also has many knowledgeable and helpful people. Additionally, it provides a space to be able to voice chat about patches, designs, or anything else Git related.
   
 
+    Logos  
+
+  
+    Various }}">Git logos  in PNG (bitmap) and EPS (vector) formats are available for use in online and print projects.
+  
+
     Newsletter  
 
   
diff --git a/content/downloads/logos/_index.html b/content/community/logos.html
similarity index 98%
rename from content/downloads/logos/_index.html
rename to content/community/logos.html
index db2ab7d1d5..d93ca0cc7e 100644
--- a/content/downloads/logos/_index.html
+++ b/content/community/logos.html
@@ -1,10 +1,12 @@
 ---
-section: "downloads"
+section: "community"
 subsection: "logos"
 title: "Git - Logo Downloads"
-url: /downloads/logos.html
+url: /community/logos.html
 aliases:
+- /community/logos/index.html
 - /downloads/logos/index.html
+- /downloads/logos.html
 ---
 
 
diff --git a/content/download/_index.html b/content/download/_index.html
deleted file mode 100644
index 1d4b056bf4..0000000000
--- a/content/download/_index.html
+++ /dev/null
@@ -1,3 +0,0 @@
----
-redirect_to: downloads
----
diff --git a/content/downloads/_index.html b/content/downloads/_index.html
deleted file mode 100644
index 33c02ccae9..0000000000
--- a/content/downloads/_index.html
+++ /dev/null
@@ -1,59 +0,0 @@
----
-section: "downloads"
-title: "Git - Downloads"
-url: /downloads.html
-aliases:
-- /downloads/index.html
-- /download/index.html
-- /download.html
----
-
-
-  
-    
-    
-      {{< monitor >}}
-    
-  
-  
-    
Logos 
-    
Various Git logos in PNG (bitmap) and EPS (vector) formats are available for use in online and print projects.
-    
-      
-        }}">View Logos → 
-       
-      
-  
-  
Git via Git 
-  
-    If you already have Git installed, you can get the latest development version via Git itself:
-  
-  
-    git clone https://github.com/git/git
-  
-  
-    You can also always browse the current contents of the git repository using the web interface .
-  
-
diff --git a/content/install/_index.html b/content/install/_index.html
new file mode 100644
index 0000000000..dd11c49be6
--- /dev/null
+++ b/content/install/_index.html
@@ -0,0 +1,21 @@
+---
+section: "install"
+title: "Git - Install"
+url: /install
+aliases:
+- /downloads/index.html
+- /download/index.html
+- /download.html
+- /install.html
+---
+
+
+  {{< install-header >}}
+
+    
+      
+      Choose your operating system above.
+      
+    
+  
+
 
diff --git a/content/downloads/linux.html b/content/install/linux.html
similarity index 77%
rename from content/downloads/linux.html
rename to content/install/linux.html
index d40347b0c9..b7d5914402 100644
--- a/content/downloads/linux.html
+++ b/content/install/linux.html
@@ -1,18 +1,19 @@
 ---
-section: "downloads"
+section: "install"
+title: "Git - Install for Linux"
 aliases:
 - /download/linux
+- /downloads/linux
 ---
 
 
-  
Download for Linux and Unix 
-  
It is easiest to install Git on Linux using the preferred package
-  manager of your Linux distribution. If you prefer to build from
-  source, you can find tarballs
-  on kernel.org .
-  The latest version is
-  {{< site-param latest_version >}} 
+  {{< install-header "linux" >}}
 
+    
+  
+      It is easiest to install Git on Linux with your distribution's package
+      manager.
+  
   Debian/Ubuntu 
   For the latest stable version for your release of Debian/Ubuntu
   # apt-get install git
@@ -60,4 +61,6 @@ 
Red Hat Enterprise Linux, Oracle Linux, CentOS, Scientific Linux, et al. Slitaz
   
$ tazpkg get-install git
 
+    
+  
 
 
diff --git a/content/downloads/mac.html b/content/install/mac.html
similarity index 67%
rename from content/downloads/mac.html
rename to content/install/mac.html
index ac3354ddda..c026fe5f2b 100644
--- a/content/downloads/mac.html
+++ b/content/install/mac.html
@@ -1,14 +1,16 @@
 ---
-section: "downloads"
-title: "Git - Downloading Package"
+section: "install"
+title: "Git - Install for macOS"
 aliases:
 - /download/mac
+- /downloads/mac
 ---
 
 
-  
Download for macOS 
+  {{< install-header "mac" >}}
 
-  
There are several options for installing Git on macOS. Note that
+    
+      
There are several options for installing Git on macOS. Note that
   any non-source distributions are provided by third parties, and may
   not be up to date with the latest source release.
 
@@ -24,12 +26,6 @@ 
MacPorts 
 
   Xcode 
   Apple ships a binary package of Git with Xcode .
-  
-  
Building from Source 
-  
If you prefer to build from source, you can find tarballs
-  on kernel.org .
-  The latest version is
-  {{< site-param latest_version >}} .
 
   
Installing git-gui 
   If you would like to install git-gui  and gitk ,
@@ -37,4 +33,6 @@ 
Installing git-gui 
 
   $ brew install git-gui
 
+    
+  
 
 
diff --git a/content/install/source.html b/content/install/source.html
new file mode 100644
index 0000000000..42c31f83b2
--- /dev/null
+++ b/content/install/source.html
@@ -0,0 +1,20 @@
+---
+section: "install"
+title: "Git - Build from Source"
+---
+
+
+  {{< install-header "source" >}}
+
+    
+
+
If you prefer to build from source, you can find tarballs
+  on kernel.org .
+  The latest version is
+  }}.tar.gz">{{< site-param "latest_version" >}} .
+
+
There's also an official GitHub mirror .
+
+
+
 
+
diff --git a/content/downloads/win.html b/content/install/windows.html
similarity index 94%
rename from content/downloads/win.html
rename to content/install/windows.html
index 46fd4c98b2..d8b070a98b 100644
--- a/content/downloads/win.html
+++ b/content/install/windows.html
@@ -1,12 +1,15 @@
 ---
-section: "downloads"
-title: "Git - Downloading Package"
+section: "install"
+title: "Git - Install for Windows"
 aliases:
 - /download/win
+- /downloads/win
 ---
 
 
-  
Download for Windows 
+  {{< install-header "windows" >}}
+
+    
   
   Click here to download   
     the latest ({{< site-param windows_installer.installer_x64.version >}} )
@@ -66,4 +69,7 @@ 
Get Involved 
       
     
   
+
+    
 
+  
 
 
diff --git a/layouts/partials/sidebar.html b/layouts/partials/sidebar.html
index 90c3783752..512839a656 100644
--- a/layouts/partials/sidebar.html
+++ b/layouts/partials/sidebar.html
@@ -54,15 +54,17 @@
         Reference 
       
       
-        Downloads 
-        
+        Install 
        
       
         Community 
+        
+          {{ if (eq $section "community") }}
+          
+            Logos 
+           
+          {{ end }}
+         
        
     
 
diff --git a/layouts/partials/site-root.html b/layouts/partials/site-root.html
index b853cbe0b8..a6390cd241 100644
--- a/layouts/partials/site-root.html
+++ b/layouts/partials/site-root.html
@@ -31,9 +31,9 @@ Reference 
           
         
         
-          
+           
              
-            Downloads 
+            Install 
             Binary releases for all major platforms.
            
          
@@ -64,7 +64,7 @@ Community 
         Tarballs  
       
       
-        Windows Build  
+        Windows Build  
         Source Code  
        
     
diff --git a/layouts/shortcodes/install-header.html b/layouts/shortcodes/install-header.html
new file mode 100644
index 0000000000..1b9d3f62fb
--- /dev/null
+++ b/layouts/shortcodes/install-header.html
@@ -0,0 +1,32 @@
+{{- $active := .Get 0 -}}
+
+  
+
+  
+    
+      Windows 
+     
+    
+      macOS 
+     
+    
+      Linux 
+     
+    
+      Build from Source 
+     
+   
diff --git a/tests/git-scm.spec.js b/tests/git-scm.spec.js
index aad3cbec0e..b8de0ebf2a 100644
--- a/tests/git-scm.spec.js
+++ b/tests/git-scm.spec.js
@@ -64,7 +64,7 @@ test.describe('Windows', () => {
     await expect(windowsButton).toBeVisible()
     await expect(windowsButton).toHaveClass(/selected/)
 
-    const allButton = page.getByRole('link', { name: 'All' })
+    const allButton = page.getByRole('link', { name: 'All', exact: true })
     await expect(allButton).not.toHaveClass(/selected/)
 
     const thumbnails = page.locator('.gui-thumbnails li:visible')