diff --git a/.gitignore b/.gitignore
index 324450954eba634a8a45a89bbd2647560f52445a..ab0c0598d8a0b8708a1bd77e17ad94454a763d4b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,7 @@
 target
 .settings
 .project
-.classpath
\ No newline at end of file
+.classpath
+.idea/
+*.iml
+node_modules/
diff --git a/README.md b/README.md
index 739a66898f3f6ff5428339f9c47846b875cb0a7c..6bbace5390a3822db4cb0cace1e73580211309f6 100644
--- a/README.md
+++ b/README.md
@@ -2,4 +2,9 @@
 
 [![build status](https://git.doit.wisc.edu/ci/projects/15/status.png?ref=master)](https://git.doit.wisc.edu/ci/projects/15?ref=master)
 
-This is the root context of myuw. It is just here to serve up some static html pages for 500 and 400 level errors.
\ No newline at end of file
+This is the root context of myuw. It is just here to serve up some static html pages for 500 and 400 level errors.
+
+### Development
+
+From the root directory, run `npm start`. The web app will run at [http://localhost:8080](http://localhost:8080) and will 
+show the 404 page by default. 
\ No newline at end of file
diff --git a/myuw-root-webapp/src/main/webapp/403.html b/myuw-root-webapp/src/main/webapp/403.html
index 57a54c262ba7c72677cc106bac532429898713fa..ec829a75ce9afcf34cd88379a1da61fa1f5956d0 100644
--- a/myuw-root-webapp/src/main/webapp/403.html
+++ b/myuw-root-webapp/src/main/webapp/403.html
@@ -2,123 +2,38 @@
 <html>
 <head>
   <title>MyUW Page Not Found</title>
-  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet">
-  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
-  <style>
-    a {
-      color:#b70101;
-    }
-    a:hover {
-      color:#660000;
-    }
-    p.apologize {
-      text-align:center;
-      padding:20px 0px 50px;
-    }
-    .header {
-      background-color:#b70101;
-      text-align:center;
-      padding:10px;
-      height:53px;
-    }
-    .header h1 {
-      font-size:2.3em;
-      font-weight:100;
-      color:#fff;
-      text-align:center;
-      margin-top:0px;
-      white-space:nowrap;
-    }
-    .header h2 {
-      color:#fff;
-      text-align:left;
-      font-size:1.8em;
-      font-weight:200;
-      margin:2px 0px 0px 30px;
-      padding:0;
-      white-space:nowrap;
-    }
-    .header div {
-      display:inline;
-    }
-    .main-content {
-      text-align:center;
-      padding-top:30px;
-    }
-    .main-content p {
-      font-size:1.2em;
-      padding:10px 0px;
-    }
-    .main-content strong {
-      font-size:1.7em;
-      font-weight:200;
-      text-align:center;
-    }
-    .service {
-      width:35%;
-    }
-    .crest {
-      display:block;
-      position:absolute;
-      width:200px;
-      z-index:5;
-      overflow:hidden;
-    }
-    .madison {
-      text-align: center;
-      margin:30px 0px 15px
-    }
-    @media (max-width:768px) {
-      .main-content strong {
-        font-size:1.55em;
-      }
-      .main-content p {
-        font-size:1.1em;
-      }
-      .header h1 {
-        font-size:1.8em;
-        margin:3px -50% 0px;
-        white-space:no-wrap;
-      }
-      .header h2 {
-        font-size:1.3em;
-        margin-top:7px;
-      }
-      .outage-title {
-        padding:0 -50%;
-      }
-    }
-    @media (max-width:500px) {
-      .header h1 {
-        margin:3px 0px 0px;
-      }
-    }
-  </style>
+	<!-- MATERIAL DESIGN LITE STYLES -->
+	<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+	<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.indigo-pink.min.css">
+	<!-- LOCAL STYLES -->
+	<style>
+		@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700);.mr-header,.mr-tabs,.mr-title,p.apologize,p.centered{text-align:center}.mdl-tabs__tab,a,a:hover{text-decoration:none}body,html{font-family:Roboto,sans-serif;margin:0}a{color:#c5050c}a:hover{color:#600}p.apologize{padding:20px 0 50px}.mr-header{min-height:64px}.mr-title{font-size:20px;font-weight:500}.mr-main__content{padding:0 15px}.outage-title{margin:0 auto;font-weight:100;color:#fff;line-height:64px;font-size:20px;letter-spacing:.02em}.photo-div{position:absolute}.crest,.mdl-tabs__tab{position:relative;overflow:hidden}.crest{display:block;width:200px;z-index:5;padding:15px 0}.img__bucky-sad{display:block;margin:0 auto;padding:16px 16px 0}.mdl-layout__header,.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after,.mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple{background:#c5050c}.mdl-layout__fixed-header .mdl-layout__header-row,.mdl-layout__header-row{padding:0 16px}.mdl-data-table__cell--non-numeric{text-align:left}.mdl-tabs__tab-bar{justify-content:flex-start;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:flex-start;-ms-flex-pack:start;-webkit-align-content:space-between;align-content:space-between;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;height:48px;padding:0;margin:0;border-bottom:1px solid #e0e0e0}.mdl-tabs__tab{margin:0;border:none;padding:0 24px;float:left;display:block;height:48px;line-height:48px;text-align:center;font-weight:500;font-size:14px;text-transform:uppercase;color:rgba(0,0,0,.54)}.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after{height:2px;width:100%;display:block;content:" ";bottom:0;left:0;position:absolute;background:#c5050c;-webkit-animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;transition:all 1s cubic-bezier(.4,0,1,1)}.mdl-tabs.is-upgraded .mdl-tabs__panel{padding:12px 0;text-align:center}.mdl-tabs.is-upgraded .mdl-tabs__panel:not(.is-active){display:none}.mdl-data-table{white-space:normal;margin:0 auto}@media (min-width:599px){.mdl-data-table td:first-of-type,.mdl-data-table th:first-of-type{min-width:162px}}
+	</style>
 </head>
 
 <body>
-  <div id="row">
-    <div class="col-xs-12 header">
-      <div class="col-xs-4 col-sm-4 photo-div">
-        <img src="/main_logo_w_all.png" class="crest">
-      </div>
-      <div class="col-xs-4 outage-title">
-        <h1>Access Denied</h1>
-      </div>
-      <div class="col-sm-4">
-      </div>
-    </div>
-  </div>
-  <div class="container-fluid">
-    <div class="row">
-      <div class="col-xs-10 col-xs-offset-1 col-sm-8 col-sm-offset-2 main-content">
-        <p><strong>Sorry, you're not authorized to access this.</p>
-        <br><br>
-        <i class='fa fa-exclamation-triangle fa-5x'></i>
-        <p>If you're here by accident, head back to your My-UW <a href='/web'>homepage</a>.</p>
-        <p>For help with authorization, contact the DoIT <a href="https://kb.wisc.edu/helpdesk/"></a>Help Desk</a>.</p>
-      </div>
-    </div>
-  </div>
+	<div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
+		<header class="mdl-layout__header">
+			<div class="mdl-layout__header-row">
+				<div class="photo-div">
+					<img src="/main_logo_w_all.png" class="crest">
+				</div>
+				<!-- Title -->
+				<span class="mdl-layout-title outage-title">Page Not Found</span>
+			</div>
+		</header>
+		<main class="mdl-layout__content">
+			<div class="mdl-grid">
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+				<div class="mdl-cell mdl-cell--8-col mdl-cell--10-col-phone">
+					<img src="bucky-sad.png" alt="sad bucky" class="img__bucky-sad">
+					<h1 class="mr-title">Sorry, you're not authorized to access this page.</h1>
+					<p class="centered">If you're here by accident, head back to your My-UW <a href='/web'>homepage</a>.</p>
+					<p class="centered">For help with authorization, contact the DoIT <a href="https://kb.wisc.edu/helpdesk/"></a>Help Desk</a>.</p>
+				</div>
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+			</div>
+		</main>
+	</div>
 </body>
 </html>
diff --git a/myuw-root-webapp/src/main/webapp/404.html b/myuw-root-webapp/src/main/webapp/404.html
index 20f666883f75ab0210ab72e19468b04217328306..e096c6dc671160195b59030554436534a506c799 100644
--- a/myuw-root-webapp/src/main/webapp/404.html
+++ b/myuw-root-webapp/src/main/webapp/404.html
@@ -2,121 +2,42 @@
 <html>
 <head>
   <title>MyUW Page Not Found</title>
-  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet">
-  <style>
-    a {
-      color:#b70101;
-    }
-    a:hover {
-      color:#660000;
-    }
-    p.apologize {
-      text-align:center;
-      padding:20px 0px 50px;
-    }
-    .header {
-      background-color:#b70101;
-      text-align:center;
-      padding:10px;
-      height:53px;
-    }
-    .header h1 {
-      font-size:2.3em;
-      font-weight:100;
-      color:#fff;
-      text-align:center;
-      margin-top:0px;
-      white-space:nowrap;
-    }
-    .header h2 {
-      color:#fff;
-      text-align:left;
-      font-size:1.8em;
-      font-weight:200;
-      margin:2px 0px 0px 30px;
-      padding:0;
-      white-space:nowrap;
-    }
-    .header div {
-      display:inline;
-    }
-    .main-content {
-      text-align:center;
-      padding-top:30px;
-    }
-    .main-content p {
-      font-size:1.2em;
-      padding:10px 0px;
-    }
-    .main-content strong {
-      font-size:1.7em;
-      font-weight:200;
-      text-align:center;
-    }
-    .service {
-      width:35%;
-    }
-    .crest {
-      display:block;
-      position:absolute;
-      width:200px;
-      z-index:5;
-      overflow:hidden;
-    }
-    .madison {
-      text-align: center;
-      margin:30px 0px 15px
-    }
-    @media (max-width:768px) {
-      .main-content strong {
-        font-size:1.55em;
-      }
-      .main-content p {
-        font-size:1.1em;
-      }
-      .header h1 {
-        font-size:1.8em;
-        margin:3px -50% 0px;
-        white-space:no-wrap;
-      }
-      .header h2 {
-        font-size:1.3em;
-        margin-top:7px;
-      }
-      .outage-title {
-        padding:0 -50%;
-      }
-    }
-    @media (max-width:500px) {
-      .header h1 {
-        margin:3px 0px 0px;
-      }
-    }
-  </style>
+	<!-- MATERIAL DESIGN LITE STYLES -->
+	<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+	<!-- MATERIAL DESIGN LITE STYLES -->
+	<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+	<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.indigo-pink.min.css">
+	<!-- LOCAL STYLES -->
+	<style>
+		@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700);.mr-header,.mr-tabs,.mr-title,p.apologize,p.centered{text-align:center}.mdl-tabs__tab,a,a:hover{text-decoration:none}body,html{font-family:Roboto,sans-serif;margin:0}a{color:#c5050c}a:hover{color:#600}p.apologize{padding:20px 0 50px}.mr-header{min-height:64px}.mr-title{font-size:20px;font-weight:500}.mr-main__content{padding:0 15px}.outage-title{margin:0 auto;font-weight:100;color:#fff;line-height:64px;font-size:20px;letter-spacing:.02em}.photo-div{position:absolute}.crest,.mdl-tabs__tab{position:relative;overflow:hidden}.crest{display:block;width:200px;z-index:5;padding:15px 0}.img__bucky-sad{display:block;margin:0 auto;padding:16px 16px 0}.mdl-layout__header,.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after,.mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple{background:#c5050c}.mdl-layout__fixed-header .mdl-layout__header-row,.mdl-layout__header-row{padding:0 16px}.mdl-data-table__cell--non-numeric{text-align:left}.mdl-tabs__tab-bar{justify-content:flex-start;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:flex-start;-ms-flex-pack:start;-webkit-align-content:space-between;align-content:space-between;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;height:48px;padding:0;margin:0;border-bottom:1px solid #e0e0e0}.mdl-tabs__tab{margin:0;border:none;padding:0 24px;float:left;display:block;height:48px;line-height:48px;text-align:center;font-weight:500;font-size:14px;text-transform:uppercase;color:rgba(0,0,0,.54)}.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after{height:2px;width:100%;display:block;content:" ";bottom:0;left:0;position:absolute;background:#c5050c;-webkit-animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;transition:all 1s cubic-bezier(.4,0,1,1)}.mdl-tabs.is-upgraded .mdl-tabs__panel{padding:12px 0;text-align:center}.mdl-tabs.is-upgraded .mdl-tabs__panel:not(.is-active){display:none}.mdl-data-table{white-space:normal;margin:0 auto}@media (min-width:599px){.mdl-data-table td:first-of-type,.mdl-data-table th:first-of-type{min-width:162px}}
+	</style>
 </head>
 
 <body>
-  <div id="row">
-    <div class="col-xs-12 header">
-      <div class="col-xs-4 col-sm-4 photo-div">
-        <img src="/main_logo_w_all.png" class="crest">
-      </div>
-      <div class="col-xs-4 outage-title">
-        <h1>Page Not Found</h1>
-      </div>
-      <div class="col-sm-4">
-      </div>
-    </div>
-  </div>
-  <div class="container-fluid">
-    <div class="row">
-      <div class="col-xs-10 col-xs-offset-1 col-sm-8 col-sm-offset-2 main-content">
-        <p><strong>Sorry, the page you are looking for does not exist or you don't have access to it. Please go to the <a href='/'>MyUW home page</a>.</strong></p>
-      </div>
-    </div>
-    <div>
-      <p class="apologize">We apologize for the inconvenience. If you feel as though this URL should exist, please drop us a line on our <a href='https://my.wisc.edu/portal/p/feedback'>feedback form</a>.</p>
-    </div>
-  </div>
+	<div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
+		<header class="mdl-layout__header">
+			<div class="mdl-layout__header-row">
+				<div class="photo-div">
+					<img src="/main_logo_w_all.png" class="crest">
+				</div>
+				<!-- Title -->
+				<span class="mdl-layout-title outage-title">Page Not Found</span>
+			</div>
+		</header>
+		<main class="mdl-layout__content">
+			<div class="mdl-grid">
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+				<div class="mdl-cell mdl-cell--8-col mdl-cell--10-col-phone">
+					<img src="bucky-sad.png" alt="sad bucky" class="img__bucky-sad">
+					<h1 class="mr-title">Sorry, the page you are looking for does not exist or you don't have access to it. Please go
+						to the <a href='/'>MyUW home page</a>.
+					</h1>
+					<p class="apologize">We apologize for the inconvenience. If you feel as though this URL should exist, please drop
+						us a line on our <a href='https://my.wisc.edu/portal/p/feedback'>feedback form</a>.</p>
+				</div>
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+			</div>
+		</main>
+	</div>
 </body>
-</html>
+</html>
\ No newline at end of file
diff --git a/myuw-root-webapp/src/main/webapp/500.html b/myuw-root-webapp/src/main/webapp/500.html
index 1f7d763239ff1aef822441b46d078f260809c8aa..63e25393e5ad1c2a6c78bbf179a9f3d88e346999 100644
--- a/myuw-root-webapp/src/main/webapp/500.html
+++ b/myuw-root-webapp/src/main/webapp/500.html
@@ -2,188 +2,145 @@
 <html>
 <head>
   <title>MyUW Outage</title>
-  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet">
-  <style>
-    a {
-      color:#b70101;
-    }
-    a:hover {
-      color:#660000;
-    }
-    p.apologize {
-      text-align:center;
-      padding:20px 0px 50px;
-    }
-    .header {
-      background-color:#b70101;
-      text-align:center;
-      padding:10px;
-      height:53px;
-    }
-    .header h1 {
-      font-size:2.3em;
-      font-weight:100;
-      color:#fff;
-      text-align:center;
-      margin-top:0px;
-      white-space:nowrap;
-    }
-    .header h2 {
-      color:#fff;
-      text-align:left;
-      font-size:1.8em;
-      font-weight:200;
-      margin:2px 0px 0px 30px;
-      padding:0;
-      white-space:nowrap;
-    }
-    .header div {
-      display:inline;
-    }
-    .main-content {
-      text-align:center;
-      padding-top:30px;
-    }
-    .main-content p {
-      font-size:1.2em;
-      padding:10px 0px;
-    }
-    .main-content strong {
-      font-size:1.7em;
-      font-weight:200;
-      text-align:center;
-    }
-    .service {
-      width:35%;
-    }
-    .crest {
-      display:block;
-      position:absolute;
-      width:200px;
-      z-index:5;
-      overflow:hidden;
-    }
-    .madison {
-      text-align: center;
-      margin:30px 0px 15px
-    }
-    @media (max-width:768px) {
-      .main-content strong {
-        font-size:1.55em;
-      }
-      .main-content p {
-        font-size:1.1em;
-      }
-      .header h1 {
-        font-size:1.8em;
-        margin:3px -50% 0px;
-        white-space:no-wrap;
-      }
-      .header h2 {
-        font-size:1.3em;
-        margin-top:7px;
-      }
-      .outage-title {
-        padding:0 -50%;
-      }
-    }
-    @media (max-width:500px) {
-      .header h1 {
-        margin:3px 0px 0px;
-      }
-    }
-  </style>
+	<!-- MATERIAL DESIGN LITE STYLES -->
+	<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+	<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.indigo-pink.min.css">
+	<!-- LOCAL STYLES -->
+	<style>
+		@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700);.mr-header,.mr-tabs,.mr-title,p.apologize,p.centered{text-align:center}.mdl-tabs__tab,a,a:hover{text-decoration:none}body,html{font-family:Roboto,sans-serif;margin:0}a{color:#c5050c}a:hover{color:#600}p.apologize{padding:20px 0 50px}.mr-header{min-height:64px}.mr-title{font-size:20px;font-weight:500}.mr-main__content{padding:0 15px}.outage-title{margin:0 auto;font-weight:100;color:#fff;line-height:64px;font-size:20px;letter-spacing:.02em}.photo-div{position:absolute}.crest,.mdl-tabs__tab{position:relative;overflow:hidden}.crest{display:block;width:200px;z-index:5;padding:15px 0}.img__bucky-sad{display:block;margin:0 auto;padding:16px 16px 0}.mdl-layout__header,.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after,.mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple{background:#c5050c}.mdl-layout__fixed-header .mdl-layout__header-row,.mdl-layout__header-row{padding:0 16px}.mdl-data-table__cell--non-numeric{text-align:left}.mdl-tabs__tab-bar{justify-content:flex-start;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-justify-content:flex-start;-ms-flex-pack:start;-webkit-align-content:space-between;align-content:space-between;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;height:48px;padding:0;margin:0;border-bottom:1px solid #e0e0e0}.mdl-tabs__tab{margin:0;border:none;padding:0 24px;float:left;display:block;height:48px;line-height:48px;text-align:center;font-weight:500;font-size:14px;text-transform:uppercase;color:rgba(0,0,0,.54)}.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after{height:2px;width:100%;display:block;content:" ";bottom:0;left:0;position:absolute;background:#c5050c;-webkit-animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;transition:all 1s cubic-bezier(.4,0,1,1)}.mdl-tabs.is-upgraded .mdl-tabs__panel{padding:12px 0;text-align:center}.mdl-tabs.is-upgraded .mdl-tabs__panel:not(.is-active){display:none}.mdl-data-table{white-space:normal;margin:0 auto}@media (min-width:599px){.mdl-data-table td:first-of-type,.mdl-data-table th:first-of-type{min-width:162px}}
+	</style>
 </head>
 
 <body>
-  <div id="row">
-    <div class="col-xs-12 header">
-      <div class="col-xs-4 col-sm-4 photo-div">
-        <img src="/main_logo_w_all.png" class="crest">
-      </div>
-      <div class="col-xs-4 outage-title">
-        <h1>Server Error</h1>
-      </div>
-      <div class="col-sm-4">
-      </div>
-    </div>
-  </div>
-  <div class="container-fluid">
-    <div class="row">
-      <div class="col-xs-10 col-xs-offset-1 col-sm-8 col-sm-offset-2 main-content">
-        <p><strong>Sorry, MyUW seems to be experiencing difficulties.</strong></p>
-        <p>More information may be available about this outage at the <a href="http://outages.doit.wisc.edu/">UW-Madison outages page</a> or at the <a href="http://outages.wisconsin.edu/">UW System outages page</a>.</p>
-        <p>If you are trying to access the Local & Emergency Contact admin interface for an emergency situation, please call the <a href="https://kb.wisc.edu/helpdesk/">Help Desk</a> at 608-264-4357 immediately.</p>
-        <p>During this brief outage, some of the services and applications found within MyUW are available via alternate means. Please use the links in the tables below.<br/><br/></p>
-      </div>
-    </div>
+	<div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
+		<header class="mdl-layout__header mr-header">
+			<div class="mdl-layout__header-row">
+				<div class="photo-div">
+					<img src="/main_logo_w_all.png" class="crest">
+				</div>
+				<!-- Title -->
+				<span class="mdl-layout-title outage-title">Server Error</span>
+			</div>
+		</header>
+		<main class="mdl-layout__content mr-main__content">
+			<div class="mdl-grid">
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+				<div class="mdl-cell mdl-cell--8-col mdl-cell--10-col-phone">
+					<h1 class="mr-title">Sorry, MyUW seems to be experiencing difficulties.</h1>
 
-    <div>
-      <div class="row">
-        <div class="col-xs-12 col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3">
-          <table class="table table-responsive">
-            <tr>
-                <th class="service">Alternate Service Link</th>
-                <th>Description</th>
-            </tr>
-            <tr>
-              <td><a href="https://www.hrs.wisconsin.edu">HRS</a></td>
-              <td>Human Resource System - payroll, benefit, time and absence information</td>
-            </tr>
-            <tr>
-              <td><a href="https://www.hrs.wisconsin.edu/psp/hrs-fd/EMPLOYEE/HRMS/c/ROLE_EMPLOYEE.TL_MSS_EE_SRCH_PRD.GBL">Timesheet</a></td>
-              <td>Enter work time</td>
-            </tr>
-            <tr>
-              <td><a href="https://www.hrs.wisconsin.edu/psp/hrs-fd/EMPLOYEE/HRMS/c/ROLE_EMPLOYEE.GP_ABS_EESS_REQ.GBL">Enter Absence</a></td>
-              <td>Enter requests for absences</td>
-            </tr>
-          </table>
-        </div>
-      </div>
-    </div>
-    <div class="row">
-      <div class="col-xs-12 col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3">
-        <h4 class="madison">MyUW-Madison</h4>
-        <table class="table table-responsive">
-          <tr>
-              <th class="service">Alternate Service Link</th>
-              <th>Description</th>
-          </tr>
-          <tr>
-              <td><a href="https://soar.wisc.edu/">SOAR</a></td>
-              <td>SOAR registration</td>
-          </tr>
-          <tr>
-              <td><a href="https://wiscmail.wisc.edu/">Email/Calendar</a></td>
-              <td>University email and calendar system (Office 365)</td>
-          </tr>
-          <tr>
-              <td><a href="https://uwmadison.app.box.com/login">UW Madison Enterprise Box</a></td>
-              <td>Personal web space</td>
-          </tr>
-          <tr>
-              <td><a href="https://myinfo.wisc.edu">Web Enrollment</a></td>
-              <td>Enroll for classes, view grades<br/>You will need your Campus ID and PIN to log in.  Contact the Office of the Registrar - Enrollment Services 262-0920 Monday-Friday 7:45 am to 4:30 pm.</td>
-          </tr>
-          <tr>
-              <td><a href="https://dars.services.wisc.edu/dars/">DARS</a></td>
-              <td>Run and view Degree Audit Reporting System audits</td>
-          </tr>
-          <tr>
-              <td><a href="https://coursedashboard.learnuw.wisc.edu">Learn@UW</a></td>
-              <td>Course web pages<br/>If you have trouble accessing your courses, please call the <a href="https://kb.wisc.edu/helpdesk/">Help Desk</a> at 264-HELP</td>
-          </tr>
-          <tr>
-              <td><a href="https://delta.bussvc.wisc.edu/ReqGen/MainMenu.aspx">Requisition Generator</a></td>
-              <td>External Requisition Generator</td>
-          </tr>
-        </table>
-      </div>
-    </div>
-    <div>
-      <p class="apologize">We apologize for the inconvenience. The <a href="https://kb.wisc.edu/helpdesk/">Help Desk</a> may be able to help you work around this outage.</p>
-    </div>
-  </div>
+					<p>If you are trying to access the Local & Emergency Contact admin interface for an emergency situation, please call the
+						<a href="https://kb.wisc.edu/helpdesk/">Help Desk</a> at 608-264-4357 immediately.</p>
+					<p>During this brief outage, some of the services and applications found within MyUW are available via alternate means.
+						Please use the links in the tables below.</p>
+
+					<!-- SERVICE LINK TABS -->
+					<div class="mdl-tabs mdl-js-tabs is-upgraded mr-tabs">
+						<div class="mdl-tabs__tab-bar">
+							<a href="#uw-system-panel" class="mdl-tabs__tab is-active" onclick="setActiveTab(this)">UW System</a>
+							<a href="#uw-madison-panel" class="mdl-tabs__tab" onclick="setActiveTab(this)">UW Madison</a>
+						</div>
+						<!-- UW SYSTEM ALTERNATE LINKS -->
+						<div class="mdl-tabs__panel is-active" id="uw-system-panel">
+							<p>More information may be available about this outage at the <a href="http://outages.wisconsin.edu/">UW System Outages Page</a></p>
+							<table class="mdl-data-table mdl-js-data-table">
+								<thead>
+									<tr>
+										<th class="mdl-data-table__cell--non-numeric">Alternate Service Link</th>
+										<th class="mdl-data-table__cell--non-numeric">Description</th>
+									</tr>
+								</thead>
+								<tbody>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://www.hrs.wisconsin.edu">HRS</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Human Resource System - payroll, benefit, time and absence information</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric">
+											<a href="https://www.hrs.wisconsin.edu/psp/hrs-fd/EMPLOYEE/HRMS/c/ROLE_EMPLOYEE.TL_MSS_EE_SRCH_PRD.GBL">Timesheet</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Enter work time</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric">
+											<a href="https://www.hrs.wisconsin.edu/psp/hrs-fd/EMPLOYEE/HRMS/c/ROLE_EMPLOYEE.GP_ABS_EESS_REQ.GBL">Enter Absence</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Enter requests for absences</td>
+									</tr>
+								</tbody>
+							</table>
+						</div>
+						<!-- UW-MADISON ALTERNATE LINKS -->
+						<div class="mdl-tabs__panel" id="uw-madison-panel">
+							<p>More information may be available about this outage at the <a href="http://outages.doit.wisc.edu/">UW-Madison Outages Page</a></p>
+							<table class="mdl-data-table mdl-js-data-table">
+								<thead>
+									<tr>
+										<th class="mdl-data-table__cell--non-numeric">Alternate Service Link</th>
+										<th class="mdl-data-table__cell--non-numeric">Description</th>
+									</tr>
+								</thead>
+								<tbody>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://soar.wisc.edu/">SOAR</a></td>
+										<td class="mdl-data-table__cell--non-numeric">SOAR registration</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://wiscmail.wisc.edu/">Email/Calendar</a></td>
+										<td class="mdl-data-table__cell--non-numeric">University email and calendar system (Office 365)</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://uwmadison.app.box.com/login">UW Madison Enterprise Box</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Personal web space</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://myinfo.wisc.edu">Web Enrollment</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Enroll for classes, view grades.<br/>You will need your Campus ID and PIN to log in.
+											Contact the Office of the Registrar - Enrollment Services 262-0920 Monday-Friday 7:45 am to 4:30 pm.</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://dars.services.wisc.edu/dars/">DARS</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Run and view Degree Audit Reporting System audits</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric"><a href="https://coursedashboard.learnuw.wisc.edu">Learn@UW</a></td>
+										<td class="mdl-data-table__cell--non-numeric">Course web pages<br/>If you have trouble accessing your courses,
+											please call the <a href="https://kb.wisc.edu/helpdesk/">Help Desk</a> at 264-HELP</td>
+									</tr>
+									<tr>
+										<td class="mdl-data-table__cell--non-numeric">
+											<a href="https://delta.bussvc.wisc.edu/ReqGen/MainMenu.aspx">Requisition Generator</a></td>
+										<td class="mdl-data-table__cell--non-numeric">External Requisition Generator</td>
+									</tr>
+								</tbody>
+							</table>
+						</div>
+					</div>
+
+					<!-- APOLOGY -->
+					<div>
+						<p class="apologize">We apologize for the inconvenience. The <a href="https://kb.wisc.edu/helpdesk/">Help Desk</a>
+							may be able to help you work around this outage.</p>
+					</div>
+				</div>
+				<div class="mdl-cell mdl-cell--2-col mdl-cell--1-col-phone"></div>
+			</div>
+    </main>
+	</div>
+	<script>
+		function setActiveTab(tab) {
+			var tabs = document.getElementsByClassName('mdl-tabs__tab');
+			var panels = document.getElementsByClassName('mdl-tabs__panel');
+			for (var tabIndex = 0; tabIndex < tabs.length; tabIndex++) {
+				if (tabs[tabIndex].classList.contains('is-active')) {
+					tabs[tabIndex].classList.remove('is-active');
+				}
+			}
+			for (var panelIndex = 0; panelIndex < panels.length; panelIndex++) {
+				if (panels[panelIndex].classList.contains('is-active')) {
+					panels[panelIndex].classList.remove('is-active');
+				}
+			}
+			tab.classList.add('is-active');
+			document.getElementById(tab.hash.replace('#', '')).classList.add('is-active');
+		}
+	</script>
 </body>
 </html>
diff --git a/myuw-root-webapp/src/main/webapp/bucky-sad.png b/myuw-root-webapp/src/main/webapp/bucky-sad.png
new file mode 100644
index 0000000000000000000000000000000000000000..1c548132b88caa0b86af4378431488720334f2db
Binary files /dev/null and b/myuw-root-webapp/src/main/webapp/bucky-sad.png differ
diff --git a/myuw-root-webapp/src/main/webapp/webapp.css b/myuw-root-webapp/src/main/webapp/webapp.css
new file mode 100644
index 0000000000000000000000000000000000000000..3e6057f788867938181a31b92474da1e7d333c2e
--- /dev/null
+++ b/myuw-root-webapp/src/main/webapp/webapp.css
@@ -0,0 +1,164 @@
+@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700);
+a,
+a:hover {
+	text-decoration: none;
+}
+
+.mr-title,
+p.apologize,
+p.centered {
+	text-align: center;
+}
+
+body,
+html {
+	font-family: Roboto, sans-serif;
+	margin: 0;
+}
+
+a {
+	color: #c5050c;
+}
+
+a:hover {
+	color: #600;
+}
+
+p.apologize {
+	padding: 20px 0 50px;
+}
+
+.mr-header {
+	min-height: 64px;
+	text-align: center;
+}
+
+.mr-title {
+	font-size: 20px;
+	font-weight: 500;
+}
+
+.mr-main__content {
+	padding: 0 15px;
+}
+
+.mr-tabs {
+	text-align: center;
+}
+
+.outage-title {
+	margin: 0 auto;
+	font-weight: 100;
+	color: #fff;
+	line-height: 64px;
+	font-size: 20px;
+	letter-spacing: .02em;
+}
+
+.photo-div {
+	position: absolute;
+}
+
+.crest {
+	display: block;
+	position: relative;
+	width: 200px;
+	z-index: 5;
+	overflow: hidden;
+	padding: 15px 0;
+}
+
+.img__bucky-sad {
+	display: block;
+	margin: 0 auto;
+	padding: 16px 16px 0;
+}
+
+.mdl-layout__header,
+.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after,
+.mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple {
+	background: #c5050c;
+}
+
+.mdl-layout__fixed-header .mdl-layout__header-row,
+.mdl-layout__header-row {
+	padding: 0 16px;
+}
+
+.mdl-data-table__cell--non-numeric {
+	text-align: left;
+}
+
+.mdl-tabs__tab-bar {
+	justify-content: flex-start;
+	display: -webkit-flex;
+	display: -ms-flexbox;
+	display: flex;
+	-webkit-flex-direction: row;
+	-ms-flex-direction: row;
+	flex-direction: row;
+	-webkit-justify-content: flex-start;
+	-ms-flex-pack: start;
+	-webkit-align-content: space-between;
+	align-content: space-between;
+	-webkit-align-items: flex-start;
+	-ms-flex-align: start;
+	align-items: flex-start;
+	height: 48px;
+	padding: 0;
+	margin: 0;
+	border-bottom: 1px solid #e0e0e0;
+}
+
+.mdl-tabs__tab {
+	margin: 0;
+	border: none;
+	padding: 0 24px;
+	float: left;
+	position: relative;
+	display: block;
+	text-decoration: none;
+	height: 48px;
+	line-height: 48px;
+	text-align: center;
+	font-weight: 500;
+	font-size: 14px;
+	text-transform: uppercase;
+	color: rgba(0,0,0,.54);
+	overflow: hidden;
+}
+
+.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after {
+	height: 2px;
+	width: 100%;
+	display: block;
+	content: " ";
+	bottom: 0;
+	left: 0;
+	position: absolute;
+	background: #c5050c;
+	-webkit-animation: border-expand .2s cubic-bezier(.4,0,.4,1).01s alternate forwards;
+	animation: border-expand .2s cubic-bezier(.4,0,.4,1).01s alternate forwards;
+	transition: all 1s cubic-bezier(.4,0,1,1);
+}
+
+.mdl-tabs.is-upgraded .mdl-tabs__panel {
+	padding: 12px 0;
+	text-align: center;
+}
+
+.mdl-tabs.is-upgraded .mdl-tabs__panel:not(.is-active) {
+	display: none;
+}
+
+.mdl-data-table {
+	white-space: normal;
+	margin: 0 auto;
+}
+
+@media (min-width:599px) {
+	.mdl-data-table td:first-of-type,
+	.mdl-data-table th:first-of-type {
+		min-width: 162px;
+	}
+}
\ No newline at end of file
diff --git a/package.json b/package.json
new file mode 100644
index 0000000000000000000000000000000000000000..91f2a56c074c1cd7bc4386238f47903ce2989492
--- /dev/null
+++ b/package.json
@@ -0,0 +1,20 @@
+{
+  "name": "my-root",
+  "version": "1.1.7",
+  "description": "Root context of MyUW. Serves static HTML pages for 500 and 400 level errors.",
+  "main": "index.js",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1",
+	"prestart": "npm install",
+	"start": "http-server ./myuw-root-webapp/src/main/webapp/ -p 8080 -c-1"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git@git.doit.wisc.edu:myuw/my-root.git"
+  },
+  "author": "Tim Levett, Zeke Witter",
+  "license": "ISC",
+  "devDependencies": {
+    "http-server": "^0.9.0"
+  }
+}