/* 
  CSS for GCP egghosts map only
  by Marjorie Simmons
  2014-9-9
*/
html,body,div,span,h1,h2,p,a,ol,ul,li,table,caption,tbody,thead,tr,th,td,img,q,article,footer,header,section {
  margin: 0; 
  padding: 0; 
  border: 0; 
  font-size: 100%; 
  font: inherit; 
  vertical-align: baseline; 
}
header,article,section,footer,noscript { 
  display: block;
}
html { 
  font-size: 100%; 
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; 
  -webkit-tap-highlight-color: rgba(0,0,255,0); 
  -webkit-text-size-adjust: 100%; 
  -ms-text-size-adjust: 100%; 
}
:root {
  font-size: calc(100vw / 60); 
}
body { 
  font-size: 1em; 
  font-family: "Helvetica Neue","Helvetica","Arial","Dejavu Sans","Verdana","Lucida Sans Unicode",sans-serif; 
  background-color: #fff; 
}
*:not(html) {
  -webkit-transform: translate3d(0, 0, 0);
}
/* ====== basic element styles ====== */

p {
  font-family: "Georgia","Baskerville","Garamond","Palatino","Palatino Linotype","Hoefler Text","Times New Roman",serif;
  -moz-hyphens: manual; 
  -webkit-hyphens: manual; 
  -ms-hyphens: manual; 
  hyphens: manual;
}
caption, thead, thead th {
  font-weight: bold; 
}
noscript {
  margin-top: 2rem;
}
h1, h2 {
  clear: both; 
  margin: 0 auto 1rem auto;
  padding: 0 9%;
  font-weight: normal; 
  color: #000; 
  text-align: center; 
  text-shadow: 1px 1px 1px #ccc;
  page-break-after: avoid;
}
h1 { 
  margin-top: 2rem; 
  font-size: 1.7rem; 
}
h2 { 
  margin-top: 3rem; 
  font-size: 1.35rem; 
}
div {
  background-color: transparent;
}
a:link { 
  text-decoration: none; 
  color: rgb(60,60,255);
}
a:hover { 
  color: #c00; 
  text-decoration: underline; 
}
q:lang(en) {
  quotes: &#8220; &#8221; &#8216; &#8217;; 
}
table {
  clear: both; 
  margin: 1rem auto; 
  max-width: 82%;
  font-size: 0.8rem; 
  border-collapse: separate; 
  border-spacing: 0.06rem;    /* space between table cells, looks like a border */
  background-color: #ccc;     /* background showing through space between cells */
  max-width: calc(100%-10rem);
}
table caption {
  margin-bottom: 1rem; 
  line-height: 1.3em;
  font-weight: normal;
}
thead th {
  background: #fff;
}
th, td { 
  padding: 0.24rem; 
  font-size: 0.9em; 
  font-family: "Verdana","Helvetica Neue","Helvetica","Arial","Dejavu Sans","Lucida Sans Unicode",sans-serif; 
  vertical-align: top; 
  line-height: 1em;
}
.striped tr:nth-child(even) { 
  background-color: #fff; 
}
.striped tr:nth-child(odd) { 
  background-color: rgb(245,245,245); 
}
.hilite tr:hover, .hilite tr:focus, .hilite li:hover, .hilite li:focus { 
  background-color: rgb(255,250,210); 
}
/* ========= header styles ========= */

header {
  clear: both; 
  position: relative; 
  width: 100%; 
  max-width: 100%; 
  min-height: 2rem; 
  overflow: hidden;

  /*  page header box style  */
  background-color: #004; 
  border-bottom: 1px solid #777; 

  /* webkit uses gradient start point, others use finish point */
  background: -moz-linear-gradient(right, #006, #000); 
  background: -o-linear-gradient(right, #006, #000); 
  background: -webkit-linear-gradient(left, #006, #000); 
  background: linear-gradient(to right, #006, #000); 
}
header:after { 
  content: " "; 
  display: table;
}
header h1, header h1 a, header h2 {
  margin: 0;
  padding: 0;
  font-weight: normal; 
  text-align: left; 
}
header h1, header h1 a { 
  font-size: 1.13rem; 
  padding: 0.1rem 0.09rem 0.1em 0.2em; 
  text-decoration: none !important; 
  color: rgb(174,174,220) !important; 
  text-shadow: 0.028rem 0 #bbb;
}
header h1 a:hover {
  color: #fff !important;
}
header h2  { 
  font-size: 0.74em; 
  font-weight: bold; 
  padding: 0.1em 0 0.3rem 1.4rem; 
  color: rgb(154,154,160); 
  text-shadow: 0.025rem 0 #000;
  letter-spacing: 0.04rem;
}
.tagline {
  clear: both; 
  width: 100%;
  max-width: 100%;
  height: auto;
  padding: 0.03em 0 0.1em 0; 
  text-indent: 2rem;
  font-family: "OCR A Extended","Courier New","DejaVu Sans Mono","Bitstream Vera Sans Mono","Lucida Console","Andale Mono", monospace;
  font-size: 0.9rem; 
  letter-spacing: 0.02rem; 
  color: #bfc;
  background-color: #000; 
  text-shadow: 1px 1px 1px #000;
  border-bottom: 1px solid #999; 
  box-shadow: 1px 1px 3px 2px #ccc; 
}
.gradient {
  clear: both;
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 100%;
  height: 0.9em; 
  background-color: #006;

  background: -moz-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,#006, rgba(0,0,0,1));     /* FF3.6+ (Mozilla)  */
  background: -o-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,#006, rgba(0,0,0,1));       /* Opera 12+         */
  background: -webkit-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,#006, rgba(0,0,0,1));  /* Chrome, Safari4+  */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0043ff', endColorstr='#000000',GradientType=1 );                                           /* IE6-9 fallback    */
  background: radial-gradient(ellipse at center,#e5f4ff,cyan,royalblue,blue,darkblue,navy,#006, rgba(0,0,0,0.7));           /* W3C web standard  */

/*
  background: -moz-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,black,black,black,black,black,black, rgba(0,0,0,1));     /* FF3.6+ (Mozilla)  */
  background: -o-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,black,black,black,black,black,black, rgba(0,0,0,1));       /* Opera 12+         */
  background: -webkit-radial-gradient(center,ellipse cover,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,black,black,black,black,black,black, rgba(0,0,0,1));  /* Chrome, Safari4+  */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0043ff', endColorstr='#000000',GradientType=1 );                                           /* IE6-9 fallback    */
  background: radial-gradient(ellipse at center,#e5f4ff,cyan,royalblue,blue,darkblue,navy,black,black,black,black,black,black,black, rgba(0,0,0,1));             /* W3C web standard  */
*/
}
/* ====== message for old browsers ======*/
.msg {
  position:   fixed;
  z-index:    98; 
  top:        2%;
  left:       2%;
  width:      88%; 
  height:     90%; 
  margin:     0;
  padding:    4% 7%; 
  font-weight: bold; 
  font-size:  1.4em; 
  color:      white;
  background: black; 
  text-align: center; 
  opacity:    0.84;
  filter:     alpha(opacity=84);
}
.msg a {
  font-size: 0.75em; 
  color: goldenrod;
  text-decoration: underline;
}
.msg span {
  font-size: 0.7em;
}
.hidden {
  display:none;
}
/* ======== section styles ======== */

section {
/*  max-width: 100%; */
  padding-bottom: 6rem;
}

/* ======== article styles ======== */

article {
  margin: 0; 
  padding-bottom: 3rem;
  line-height: 1.5em;
}
article p {
  margin: 0.2rem 9% 1.5rem 9%; 
  font-size: 1.02rem; 
  line-height: 1.6rem;
  text-shadow: 1px 1px 1px #eee;
  text-align: left; 
}
article a:link { 
  text-decoration: underline; 
}
article p:first-of-type {
  margin-top: -3rem; 
}
/* ========= footer ========= */

footer { 
  clear: both; 
  position: fixed; 
  bottom: 0; 
  left: 0; 
  margin: 0;
  width: 100%; 
  max-width: 100%; 
  font-family: "Verdana","Helvetica Neue","Helvetica","Arial","Dejavu Sans","Lucida Sans Unicode",sans-serif; 
  font-size: 0.7rem; 
  color: #ddd; 
  background-color: #004; 

  /*  footer box styling  */
  background-color: #004; 
  border-top: 1px solid #999; 
  box-shadow: 1px 1px 3px 2px #ccc; 
  background: -moz-linear-gradient(left, #004 40%, #000); 
  background: -o-linear-gradient(left, #004 40%, #000); 
  background: -webkit-linear-gradient(right, #004 40%, #000); 
  background: linear-gradient(to left, #004 40%, #000); 
}
footer a, footer a:hover { 
  color: #fff !important;
}
footer.home,
footer.relative { 
  clear: both; 
  position: relative; 
  float: left;
  padding: 0;
}
footer.home div.small { 
  margin: 0;
  padding: 0.05rem 0 0.2rem 0;
  font-size: 0.56rem; 
}
footer.home div.small span { 
  font-size: 0.78rem; 
  font-weight: bold; 
}
.copyright {
  color: #bbb; 
  margin: 0.5rem;
}
footer:not(.home) .copyright, 
footer.relative .copyright {
  display: inline-block; 
  position: relative; 
  float: left; 
}
footer nav {
  padding: 1.2em 1.5em 0.2em 0; 
  font-size: 1em; 
  text-align: right; 
}
footer nav a {
  color: #ccc;
  text-decoration: underline;
}
footer nav a:hover {
  color: #fff;
}

/* ====== miscellaneous ====== */
.center {
  clear: both; 
  text-align: center;
}
.small {
  font-size: 0.75rem;
}
.right {
  float: right; 
}
.big   { 
  font-size: 1.05em; 
}
.red { 
  color: #d00;
}
.italic {
  font-style:italic;
}
a.iconExternal, cite.iconExternal {
  background: url(images/iconExternal.png) center right no-repeat;
  padding-right: 16px;
}
a.iconMail, cite.iconMail {
  background: url(images/iconMail.png) center right no-repeat;
  padding-right: 4px;
}
a.iconExtNav {
  background: url(images/iconExtNav.png) center right no-repeat !important;
  padding-right: 4px
}

/* ====== site navigation menu ====== */
#sitenav {
  position: fixed;
  top: 0;
  right: 0;
  width: 66%;
  height: auto;
  display: table;
  z-index: 98; 
  font-family: "Helvetica","Arial","Verdana",sans-serif; 
  font-size: 0.75rem; 
  color: #fff;
  background-color: rgba(26,28,36,0.88); 
  border-bottom: 0.03em solid #000;
  border-left: 0.03em solid #000;
  border-radius: 0 0 0.7em 0.7em; 
}
#sitenav a, 
#sitenav a:active, 
#sitenav a:focus, 
#sitenav a:hover {
  color: #fff;
  text-decoration: none;
}
#sitenav div {
  position: fixed;
  top: 0;
  right: 0;
  width: auto;
  display: table-cell;
  padding: 0.25rem 0.1em 0.1em 0.9em;
  font-weight: bold;
  white-space: pre;
  z-index: 99; 
  background: #000;
  vertical-align: middle;
  border-width: 0 0 0.03em 0.03em;
  border-color: transparent transparent #555 #555;
  border-style: solid;
  border-radius: 0 0 0.6em 0.6em; 
  background: -moz-linear-gradient(top right, #ccc, #888, #222, rgba(0,0,0,0.1));
  background: -o-linear-gradient(top right, #ccc, #888, #222, rgba(0,0,0,0.1)); 
  background: -webkit-linear-gradient(left, #ccc, #888, #222, rgba(0,0,0,0.1));
  background: linear-gradient(to top right, #ccc, #888, #222, rgba(0,0,0,0.1));
}
#sitenav #menudot {
  margin: -0.25rem 0 0 0.4em;
  vertical-align: top;
}
#sitenav ul li a,
#sitenav ul,
#sitenav ul li,
#sitenav ul li ul,
#sitenav ul li ul li,
#sitenav ul li ul li ul, 
#sitenav ul li ul li ul li, 
#sitenav ul li ul li ul li ul,
#sitenav ul li ul li ul li ul li,
#sitenav ul li ul li ul li ul li ul {
  background: transparent;
  border-radius: 0; 
  list-style-type: none;
}
a.iconExtNav {
  background: url(../images/iconExtNav.png) center right no-repeat !important;
  width: 90%;
}
a.iconMail {
  background: url(../images/iconMail.png) center right no-repeat !important;
  width: 86%;
}
ul#navpanel {
  display: none; 
}
#sitenav li {
  padding: 0.1em 0; 
}
#sitenav ul li.listhead {
  display: inline; 
  position: relative;
  float: right;
  padding: 0.3em 0 0.5em 0; 
  width: 25%;
}
#sitenav li.listhead span.sub1 {
  padding: 0.4em 0 0.6em 0; 
  border-bottom: 0.06em solid orange;
}
#sitenav li.listhead span.sub1, 
#sitenav li.listhead span.sub2, 
#sitenav li.listhead a.sub2 {
  font-weight: bold;
}
#sitenav li.listhead span.sub1:last-of-type {
  padding-left: 0.3em;
}
#sitenav li a, #sitenav li span {
  display: block;
  width: 99%;
  text-shadow: 0.03em 0.03em 0.03em rgba(0, 0, 0, 1);
  -webkit-font-smoothing: antialiased;
}
#sitenav ul li ul li a:active, 
#sitenav ul li ul li a:focus,
#sitenav ul li ul li a:hover {
  background: url(../images/10_14x14.png) center right no-repeat !important;
  cursor: pointer;
}
#sitenav ul.navsub {
  padding: 0.1em 0.1em 0.3em 0.6em; 
  width: 94%;
}
#sitenav ul.navsub ul.navsub {
  width: 93%;
}
#sitenav ul.navsub ul.navsub li {
  width: 95%;
}
#sitenav li.listhead ul.navsub:first-of-type {
  margin-top: 0.5em;
}
#sitenav ul ul ul {
  margin: 0 -1em 0 0.3em; 
  padding: 0 0 0 0.03em; 
  border: 0.03em #aaa dotted;
}
#sitenav ul.about li {
  padding-left: 0.3rem;
}
#sitenav .aboutCol {
  width: 92%;
}
#sitenav ul.about ul li {
  padding-left: 0.03rem
}
#sitenav li.hassub {
  margin-top: 0.9rem; 
}
#sitenav li.hassub ul ul {
  border: 0;
}

/* ====== mobiles and printing ======*/
/* enlarge menu for smaller viewports */
@media only screen and (min-width: 260px) and (max-width: 900px) {
  #sitenav {
    width: 99.5%;
    position: absolute;
    top: 24px !important;
    right: 0;
  }
}
@media print {
  * {
  background: transparent !important; 
  color: black !important; 
  text-shadow: none !important; 
  filter:none !important; 
  -ms-filter: none !important; 
  } 
  /* black prints faster */
  a, a:visited { 
    color: #444 !important; 
    text-decoration: underline; 
  }
  thead {
    display: table-header-group; 
  } 
  tr, img {
    page-break-inside: avoid; 
  }
  @page {
    margin: 0.5cm; 
  }
  p, h2 {
    orphans: 3; 
    widows: 3; 
  }
}
