body
{
  margin: 0;
}

div#main
{
  width: 100%;
}

div#main div.logo
{
  width: 100%;
  text-align: center;
  display: block;
  position: -webkit-sticky;
  position: sticky;
  top: 0px;
  z-index: 100;
  color: #DDD;
  background-color: #333;
}

div#main div.logo div.home_container
{
	position: relative;
	height: 30px;
	max-width: 1000px;
	min-width: 700px;
	margin: 0px auto;
	line-height: 30px;
	font-size: 10pt;
	font-weight: bold;
	text-align: left;
	padding: 0px 20px;
	text-align: center;
}
div#main div.logo div.home_container div.home_info
{
  position: relative;
  float: left;
  display: inline;
  width: 340px;
  text-align: left;
}


div#main div.logo div.home_container div.subscribe
{
  position: relative;
  float: right;
  display: inline;
  width: 290px;
  text-align: right;
}

div#main div.logo div.home_container a
{
  color: white;
}

div#main div.portrait_info
{
  height: 0px;
  float: left;
  position: sticky;
  top: -380px;
  width: 100%;
  z-index: 20;
}

div#main div.solid_parent
{
  position: sticky;
  height: 0px;
  top: 40px;
  z-index: 3;
}
div#main div.solid
{
  display: block;
  width: 100%;
  height: 160px;
  position: absolute;
  top: 0px;
  background-color: #555;
  z-index: 10;
}

div#main div.portrait_info div.name:before
{
  font-style:italic;
  font-size: 24pt;
  content: "In Loving Memory Of\A";
  white-space: pre;
}

div#main div.portrait_info div.name
{
  height: 110px;
  display: block;
  text-align: center;
  font-size: 36pt;
  width: 100%;
  position: relative;
  top: 420px;
  z-index: 20;
}

div#main div.portrait_info div.dates
{
  height: 50px;
  text-align: center;
  font-size: 24pt;
  width: 100%;
  position: absolute;
  top: 530px;
}

div#main div.portrait_info div.name,
div#main div.portrait_info div.dates
{
  background-color: rgba(20,20,20,0.6);
  text-shadow: 2px 2px 5px black;
  color: white;
}

div#main div.portrait_container
{
  position: relative;
  z-index: 4;
  width: 100%;
  height: 580px;
  background-image: url('../images/backgrounds/Sailboat.jpg');
  background-size: cover;
  color: #DDD;
/*  text-shadow: 1px 1px 1px white, 0px 0px 5px white; */
  padding: 20px 0px;
/*  margin-bottom: 220px; */
}

div#main div.portrait_container.top
{
	background-position: top center;
}

div#main div.portrait_container.center
{
	background-position: center center;
}

div#main div.portrait_container.bottom
{
	background-position: bottom center;
}


div#main div.portrait
{
  vertical-align: top;
  width: 1000px;
  margin: auto;
  height: 0px;
  z-index: 30;
}

div#main div.portrait.oval img
{
  display: inline-block;
  border-radius: 250px / 347px;
  border-top: 6px groove;
  border-right: 6px ridge;
  border-bottom: 6px ridge;
  border-left: 6px groove;
  box-shadow: 5px 5px 35px black;
}

div#main div.portrait.square img
{
  display: inline-block;
  border-top: 6px groove;
  border-right: 6px ridge;
  border-bottom: 6px ridge;
  border-left: 6px groove;
  box-shadow: 5px 5px 35px black;
}

div#main div.portrait.center
{
  position: relative;
  top: -595px;
  text-align: center;
}

div#main div.portrait.left
{
  position: relative;
  top: -520px;
  text-align: left;
}

div#main div.portrait.right
{
  position: relative;
  top: -520px;
  text-align: right;
}

div#main div.information
{
	display: block;
	background-color: rgb(250,250,250);
	border: thin solid #CCC;
	width: 980px;
	padding: 20px 0px 0px 20px;
	margin: 0px auto 0px;
	text-align: center;
	font-family: sans-serif;
	font-size: 10pt;
}

div#main div.information_header
{
  width: 1000px;
  line-height: 24px;
  margin: 20px auto 0px;
  padding-left: 100px; 
  font-size: 24pt;
  font-style: italic;
}

div#main div.information > div
{
  display: inline-block;
  vertical-align: top;
  width: 303px;
  margin-right: 20px;
  margin-bottom: 20px;
} 

div#main div.information > div div.title
{
  text-align: center;
  font-weight: bold;
  display: none;
}

div#main div.information > div.charity div.title
{
  display: block;
  margin-bottom: 8px;
  font-size: 12pt;
}

div#main div.information > div div.section_title
{
  text-align: center;
  font-weight: bold;
  font-size: 12pt;
  margin-bottom: 8px;
}
div#main div.buttons_tabs_container
{
  width: 1000px;
  margin: 20px auto 0px;
  padding-bottom: 20px;
  position: relative;
}

div#main div.buttons_tabs_container div.button a>img, div#main div.button>img
{
  display: none;
}

div#main div.buttons_tabs_container div.buttons div.button
{
  line-height: 40px;
  width: 130px;
  padding: 0px 10px;
  text-align: center;
  border: thin solid;
  border-radius: 5px;
/*  background: linear-gradient(to bottom, rgba(67,72,104,1) 0%,rgba(110,115,145,1) 50%,rgba(67,72,104,1) 100%); */
  background: linear-gradient(to bottom, rgba(150,150,150,1) 0%,rgba(120, 120, 120, 1) 50%,rgba(100, 100, 100, 1) 100%);
  color: white;
  font-size: 10pt;
  font-weight: bold;
  font-family: sans-serif;
  text-decoration: none;
}

div#main div.buttons_tabs_container div.buttons div.button a
{
  text-decoration: none;
  color: white;
}
div#main div.buttons_tabs_container div.buttons
{
  width: 1000px;
  display: inline-block;
  width: 150px;
  margin-top: 42px;
  position: sticky;
  top: 210px;
}

div#main div.buttons_tabs_container div.tabs
{
  vertical-align: top;
  display: inline-flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-items: space-evenly;
  width: 815px;
  padding: 0px 15px 0px 0px;
  margin-left: 14px;
  border-left: 1px solid #AAA;
  border-right: 1px solid #AAA;
  border-radius: 15px 15px 0 0;
}

/* tab css */

div.tabs input
{
  display: none;
}

/*
div.tabs label
{
  display: inline-block;
  font-size: 10pt;
  font-family: sans-serif;
  font-weight: bold;
  color: rgb(200,200,200);
  text-align: center;
  margin: 0 5px 0 0;
  padding: 0px 10px;
  line-height: 40px;
  background-color: white;
  background: linear-gradient(to bottom, rgba(160,140,160,1),rgba(110,90,110,1));
  border-top: thin solid;
  border-right: thin solid;
  border-left: thin solid;
  border-radius: 15px 15px 0 0;
  cursor: pointer;
}
*/

div.tabs label
{
  color: #AAA;
  text-align: center;
  flex:  1 1 auto;
  font-size: 10pt;
  line-height: 40px;
  font-family: sans-serif;
  font-weight: bold;
  margin: 0 -15px 0 0px;
  border-top: 1px solid #AAA;
  border-left: 1px solid #AAA;
  border-right: 1px solid #AAA;
  border-bottom: 1px solid #AAA;
  background-color: #F9F9F9;
  border-radius: 15px 15px 0 0;
  cursor: pointer;
  z-index: 1;
}

/*
div.tabs label[for=obituary]
{
  background: linear-gradient(to bottom, rgba(140,120,140,1),rgba(90,70,90,1));
} 
*/

div.tabs input:checked + label
{
  color: black;
  background-color: white;
  border-bottom: 1px solid white;
  z-index: 2;
}

div.obituary,
div.images,
div.guestbooks
{
  position: relative;
  display: none;
  padding: 15px;
  width: 798px;
  min-width: 798px;
  height: 100%;
  background-color: white;
  border-left: 1px solid #CCC;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  overflow: auto;
}

div.obituary div.epitaph
{
  text-align: center;
}
div.guestbooks iframe
{
  margin: 0;
  padding: 0;
  border: none;
  width: 100%;
/*  height: 600px; */
  min-height: 800px;
}

input#obituary:checked ~ div.obituary,
input#images:checked ~ div.images,
input#guestbooks:checked ~ div.guestbooks
{
  display: block;
}

div.footer
{
  line-height: 30px;
  color: #DDD;
  background-color: #333;
  text-align: center;
}

div.footer a
{
  color: #DDD;
}
