.clearfix:before, .clearfix:after {
   content: " ";
   display: table;
}

.clearfix:after {
   clear: both;
}

body {
   font-family: Cambria, Palatino, "Palatino Linotype", "Palatino LT STD", Georgia, serif;
   background: url(https://html5book.ru/wp-content/uploads/2015/07/background46.png) repeat top left;
   font-weight: 400;
   font-size: 15px;
   color: #333;
   margin: 0;
}

a {
   color: #555;
   text-decoration: none;
}

.container {
   width: 100%;
   position: relative;
   min-height: 750px;
}

section {
   margin-bottom: 50px
}

.clr {
   clear: both;
   padding: 0;
   height: 0;
   margin: 0;
}

.container>header {
   margin: 10px;
   padding: 20px 10px 10px 10px;
   position: relative;
   display: block;
   text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
   text-align: center;
}

.container>header>span {
   font-family: 'Alegreya SC', Georgia, serif;
   font-size: 20px;
   line-height: 20px;
   display: block;
   font-weight: 400;
   font-style: italic;
   color: #547DCC;
   text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

.container>header h1 {
   font-size: 40px;
   line-height: 40px;
   margin: 0;
   position: relative;
   font-weight: 300;
   color: #547DCC;
   padding: 5px 0px;
   text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.7);
}

.container>header h1 span {
   font-weight: 700;
}

.container>header h2 {
   font-size: 14px;
   font-weight: 300;
   letter-spacing: 2px;
   text-transform: uppercase;
   margin: 0;
   padding: 15px 0 5px 0;
   color: #547DCC;
   text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.7);
}

.container>header p {
   font-style: italic;
   color: #aaa;
   text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.7);
}

.top {
   font-size: 13px;
   padding: 10px 0;
   background: rgba(255, 255, 255, 0.7);
   text-transform: uppercase;
   text-align: center;
   position: relative;
   font-family: Cambria, Georgia, serif;
   box-shadow: 1px 0 2px rgba(0, 0, 0, 0.3);
}

.top a {
   padding: 0 10px;
   letter-spacing: 1px;
   color: #333;
   display: inline-block;
   font-weight: bold;
}

.demo {
   text-align: center;
   display: block;
   line-height: 30px;
   padding: 5px 0px;
}

.demo a {
   display: inline-block;
   margin: 0px 4px;
   padding: 0px 6px;
   color: #aaa;
   line-height: 20px;
   font-size: 13px;
   text-shadow: 1px 1px 1px #fff;
   border: 1px solid #ddd;
   background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
   /* FF3.6+ */
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(47%, #f6f6f6), color-stop(100%, #ededed));
   /* Chrome,Safari4+ */
   background: -webkit-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
   /* Chrome10+,Safari5.1+ */
   background: -o-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
   /* Opera 11.10+ */
   background: -ms-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
   /* IE10+ */
   background: linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
   /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed', GradientType=0);
   /* IE6-9 */
   box-shadow: 0px 1px 1px rgba(255, 255, 255, 0.5);
}

.demo a:hover {
   color: #333;
   box-shadow: 0px 1px 1px rgba(255, 255, 255, 0.5);
}

.demo a:active {
   background: #fff;
}

.demo a.current-demo, .demo a.current-demo:hover {
   background: #f6f6f6;
}