

a {
  font-family: sans-serif;
  text-decoration: none;
}

a:link {
  color: #0000FF;
}

a:visited {
  color: #0000FF;
}

a:hover
{
  color: #FF6600;
}

a:active {
  color: #FF6600;
}

h1, h2, h3, h4, h5, h6 {
  color: #303030;
  font-family: sans-serif;
  clear: both;
}

h2
{
  font-style: italic;
}

p
{
  text-align:justify;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

body
{
        margin: 0px auto;
        max-width: 70em;
        font-family: sans-serif;
        color: #303030;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-areas: "head head " "nav  nav" "main main" "news news" "foot foot";
        box-shadow: 10pt 0px 20px silver,
                    -10pt 0px 20px silver;
}

@media (min-width: 30em)
{
        body
        {
                grid-template-columns: repeat(3, 1fr);
                grid-template-areas: "head head head " "nav  news news" "main main main" "foot foot foot";
        }
        nav
        {
          border-right: 1px solid #999999;
          border-bottom: 1px solid #999999;
        }
        aside
        {
          border-bottom: 1px solid #999999;
        }
}

@media (min-width: 50em)
{
        body
        {
                grid-template-columns: repeat(4, 1fr);
                grid-template-areas: "head head head head" "nav  main main news" "nav  main main news" "foot foot foot foot";
        }
        nav
        {
          border: 0px;
        }
        aside
        {
          border-bottom: 0px;
        }
}

header,
nav,
main,
article,
section,
aside,
footer {
        padding: 0px;
        margin: 0px;
}

header {
        border-color: #0000FF;
        grid-area: head;
}

nav {
        grid-area: nav;
        padding: 5pt 0 0 0;

}

article {
        background: #F0F0F0;
        border-color: #df6c20;
        grid-area: main;
        padding: 5pt;
        margin: 0 2vw;
}

article p
{
        margin: 0;
        padding: 0;
}

article h2
{
        border-top: 1px solid #999999;
        margin-top: 3vh;
        padding-top: 2vh
}

aside {
        background: #F0F0F0;
        grid-area: aside;
        padding: 5pt;
}

#news {
        grid-area: news;
        padding: 5pt 0 0 0;
}



footer {
        background: #e0e0e0;
        grid-area: foot;
        margin-top: 10pt;
        padding: 5pt;
}