diff --git a/landing/header.css b/landing/header.css
--- a/landing/header.css
+++ b/landing/header.css
@@ -9,6 +9,15 @@
   justify-content: space-between;
   padding: 18px 32px;
   width: 1850px;
+  z-index: 999;
+  background-color: transparent;
+  transition: 650ms;
+  transition-property: background-color;
+}
+
+div.headerContainerMobileNavActive {
+  background-color: var(--comparison-cards);
+  transition: 250ms;
 }
 
 .logo {
diff --git a/landing/header.react.js b/landing/header.react.js
--- a/landing/header.react.js
+++ b/landing/header.react.js
@@ -7,20 +7,44 @@
 import * as React from 'react';
 import { NavLink } from 'react-router-dom';
 
+import type { SetState } from 'lib/types/hook-types.js';
+
 import css from './header.css';
 import typography from './typography.css';
 
-function Header(): React.Node {
+type Props = {
+  +showMobileNav: boolean,
+  +setShowMobileNav: SetState<boolean>,
+};
+
+function Header(props: Props): React.Node {
+  const { showMobileNav, setShowMobileNav } = props;
+
+  const headerContentContainerClassName = classNames({
+    [css.headerNavContentContainer]: true,
+    [css.headerContainerMobileNavActive]: showMobileNav,
+  });
+
   const logoTextClassName = classNames([typography.heading2, css.logoText]);
   const badgeClassName = classNames([typography.paragraph2, css.betaBadge]);
   const navLinkClassName = classNames([typography.subheading2, css.tab]);
 
+  const onClickLogo = React.useCallback(() => {
+    setShowMobileNav(false);
+  }, [setShowMobileNav]);
+
+  const onClickMobileNavIcon = React.useCallback(() => {
+    setShowMobileNav(!showMobileNav);
+  }, [setShowMobileNav, showMobileNav]);
+
   return (
     <nav className={css.headerContainer}>
-      <div className={css.headerNavContentContainer}>
+      <div className={headerContentContainerClassName}>
         <div className={css.logo}>
           <NavLink to="/">
-            <h1 className={logoTextClassName}>Comm</h1>
+            <h1 onClick={onClickLogo} className={logoTextClassName}>
+              Comm
+            </h1>
           </NavLink>
           <div className={badgeClassName}>Beta</div>
         </div>
@@ -74,7 +98,7 @@
               <FontAwesomeIcon icon={faGithub} className={css.icon} size="sm" />
             </div>
           </a>
-          <div className={css.menuIcon}>
+          <div className={css.menuIcon} onClick={onClickMobileNavIcon}>
             <FontAwesomeIcon icon={faBars} className={css.icon} size="sm" />
           </div>
         </div>
diff --git a/landing/landing.react.js b/landing/landing.react.js
--- a/landing/landing.react.js
+++ b/landing/landing.react.js
@@ -85,7 +85,9 @@
     }
   }, [onKeyservers, onPrivacy, onSupport, onTerms, onTeam, onInvestors, onQR]);
 
-  let header = <Header />;
+  let header = (
+    <Header showMobileNav={showMobileNav} setShowMobileNav={setShowMobileNav} />
+  );
   if (onQR) {
     header = null;
   }