diff --git a/www/color.html b/www/color.html
index 71978bf..b936d7d 100644
--- a/www/color.html
+++ b/www/color.html
@@ -1,13 +1,8 @@
 <!DOCTYPE html>
 <html lang="en">
 <head>
-  <meta charset="utf-8">
-  <meta http-equiv="X-UA-Compatible" content="IE=edge">
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-  <title>ImageMagick: Color Names</title>
-  <meta http-equiv="content-language" content="en-US">
+    <title>ImageMagick: Color Names</title>
   <meta http-equiv="content-type" content="text/html; charset=utf-8">
-  <meta http-equiv="reply-to" content="magick-users@imagemagick.org">
   <meta name="application-name" content="ImageMagick">
   <meta name="description" content="ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.">
   <meta name="application-url" content="http://www.imagemagick.org">
@@ -22,26 +17,19 @@
   <meta name="copyright" content="Copyright (c) 1999-2015 ImageMagick Studio LLC">
   <meta name="distribution" content="Global">
   <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1">
-  <link rel="icon" href="../images/wand.png">
-  <link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
-  <link rel="stylesheet" href="css/bootstrap.min.css">
-  <link rel="stylesheet" href="../css/magick.css">
+  <link href="../images/wand.png" rel="icon">
+  <link href="../images/wand.ico" type="images/x-icon" rel="shortcut icon">
+  <link href="../css/magick.html" rel="stylesheet">
 </head>
-
 <body>
 <div class="main">
 <div class="magick-masthead">
   <div class="container">
-    <script type="text/javascript">
-    <!--
-      google_ad_client = "pub-3129977114552745";
-      google_ad_slot = "5439289906";
-      google_ad_width = 728;
-      google_ad_height = 90;
-    //-->
+    <script async src="http://localhost/pagead/js/adsbygoogle.js"></script>
+    <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3129977114552745" data-ad-slot="6345125851" data-ad-format="auto"></ins>
+    <script>
+    (adsbygoogle = window.adsbygoogle || []).push({});
     </script>
-    <center><script type="text/javascript" src="http://localhost/pagead/show_ads.js">
-    </script></center>
     <nav class="magick-nav">
       <a class="magick-nav-item " href="../index.html">Home</a>
       <a class="magick-nav-item " href="binary-releases.html">Download</a>
@@ -4925,13 +4913,10 @@
 
 </div>
   <footer class="magick-footer">
-    <div class="magick-nav-item pull-left">
-      <a href="support.html">Donate</a>
-    </div>
-    <p><a href="sitemap.html">Sitemap</a> •
+    <p><a href="support.html">Donate</a> •
+     <a href="sitemap.html">Sitemap</a> •
     <a href="links.html">Related</a> •
-    <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Image Studio</a> •
-    <a href="http://jqmagick.imagemagick.org/">JqMagick</a>
+    <a href="architecture.html">Architecture</a>
 </p>
     <p><a href="color.html#">Back to top</a> •
     <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
@@ -4941,18 +4926,7 @@
 </div><!-- /.container -->
 
   <script src="https://localhost/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
-  <script src="../js/bootstrap.min.js"></script>
-  <script type="text/javascript">
-    /* <![CDATA[ */
-    (function() {
-        var s = document.createElement('offline-script'), t = document.getElementsByTagName('offline-script')[0];
-        s.type = 'text/javascript';
-        s.async = true;
-        s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
-        t.parentNode.insertBefore(s, t);
-    })();
-    /* ]]> */
-  </script>
+  <script src="http://nextgen.imagemagick.org/js/magick.html"></script>
 </div>
 </body>
 </html>
