/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
# Copyright (C) 2018      Theo van Rijn
# Copyright (C) 2019      Serge Noiraud
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, see <https://www.gnu.org/licenses/>.
#

*************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic Blue Stylesheet
Original Style Author: Jason M. Simanek (2008)
*************************************************
-------------------------------------------------
Color Palette
-------------------------------------------------
DK. Blue	#00029D
Lt. Blue	#BCEAF6
Green		#13A926
Black		#000
White		#FFF
brick red	#903

===== Ancestor Graph Color Scheme =====
Males       #BCEAF6
Females     #FFC0CB
Unknown     #000

===== Web Graphics =====
Males       Web_Gender_Male.png
Females     Web_Gender_Female.png
*************************************************


    NarrativeWeb Styles
================================================= */
div {
    margin: 0;
    padding: 0;
}
table {
    border: none;
    border-collapse: collapse;
}
th {
    font-weight: bold;
    text-align: left;
    padding: 1px 3em 1px 0.5em;
}
td {
    vertical-align: top;
    padding: 0;
}
img {
    border: none;
    margin: 0;
}
.thumbnail a:hover {
    background: none;
}
#outerwrapper {
    margin: 5px auto;
    width: 98%;
}
#outerwrapper > div {
    clear: both;
}
.content {
    background-color: #FFF;
    color: #000;
    overflow: auto;
    width: 100%;
    margin: 0 auto;
}
.content div.snapshot {
    margin: 0;
    padding: 0;
    background: none;
}
.content div.snapshot div.thumbnail {
    margin: 0;
    padding: 2em 0 0 0;
    background: none;
}
.content div.snapshot div.thumbnail a, .content div.snapshot div.thumbnail img {
    display: block;
    width: 96px;
    margin: 0 auto;
}
#ThumbnailPreview div.snapshot {
    float: right;
    margin: 0;
}
.fullclear {
    width: 100%;
    height: 1px;
    margin: 0;
    padding: 0;
    clear: both;
}
/* Less whitespace on smaller real estate. */
@media only screen and (max-width: 1080px) {
    .content {
        padding: 0em 0.5em;
    }
    body#fullyearlinked table.calendar {
        float: none;
        width: 100%;
    }
}
@media only screen and (width > 1080px) {
    body#fullyearlinked table.calendar {
        float: left;
        width: 33.3%;
    }
}

/* General Text
----------------------------------------------------- */
h1 {
    font:normal 2em/1.2em serif;
}
h2 {
    font: bold 1em sans-serif;
    text-align: center;
}
h3 {
    font: bold italic 1.6em serif;
    text-align: center;
    margin: 0 auto;
    padding:.5em 20px .2em 20px;
    border-bottom: double 4px #000;
}
h4 {
    font: bold 1.2em sans-serif;
    background-color: #00029D;
    color: #FFF;
    padding: 0px 0px 0px 20px;
    border-width: 4px 0px 4px 0px;
    border-style: solid;
    border-color: #13A926;
}
h5, h6 {
    font:normal 1em/1.2em serif;
    font-style:italic;
    margin:1.3em 0 .5em 1em;
}
p#description {
    margin: 0;
    padding: 1em 20px;
    text-indent: 30px;
}
p#description:first-letter {
    color: #903;
    font-size: 36px;
    font-weight: bold;
    font-style: italic;
}
p a {
    text-decoration: underline;
}
sup {
    line-height:0;
}
ol {
    font: normal .9em/1.6em sans-serif;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: .5em;
    padding-bottom: 0;
}
ol li a {
    text-decoration: underline;
}
ol li a:hover {
    text-decoration: none;
}
a {
    text-decoration: underline;
}
a:hover {
    background-color: #BCEAF6;
    text-decoration: underline;
}
span.preposition {
    padding-left:1em;
    padding-right:1em;
}
.grampsid {
    font:normal .8em/1.2em monospace;
}

/* Gramps Styled Notes
------------------------------------------------------- */
div#grampsstylednote a {
    background-color: #BCEAF6;
    text-decoration: underline;
}

/* Header
----------------------------------------------------- */
div#header  {
    background-color: #00029D;
    border-bottom: solid 4px #13A926;
    width: 100%;
    overflow: hidden;
    color: #FFF;
}
div#header a {
    text-decoration: underline;
    color: #FFF;
}
#SiteTitle {
    width: 95%;
    margin:0;
    padding:.5em 0 0.5em 10px;
    font-size: 28px;
    font-weight: bold;
    color: #FFF;
    font-style: italic;
}
p#user_header {
    font-size: .8em;
    text-align: right;
    color: #FFF;
    margin: 0 auto;
    padding: .2em 0 .6em 20px;
}
#user_header a {
    text-decoration: underline;
}
#user_header img {
    float: right;
    margin-right: 10px;
}

/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
    border: solid 1px #EEE; /* needed by IE7 */
    background-color: #13A926;
    position: relative;
}
#subnavigation ul {
    overflow: hidden;
}
div#nav ul, #subnavigation ul {
    list-style: none;
    padding-left: 15px;
}
#subnavigation ul {
    border-bottom: solid 1px #999;
}
div#nav.wrappernav.ltr {
    float: left;
}
div#nav.wrappernav.rtl {
    float: right;
}
div#nav ul li a, #subnavigation ul li a {
    display: block;
    font-size: smaller;
    font-weight: bold;
    border-bottom: solid 1px #EEE;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
    text-decoration: none;
    background-color: #CCC;
    border-bottom: solid 1px black;
}
div#ltr.pnav ul.ltr li.CurrentSection, div#rtl.pnav ul.rtl li.CurrentSection,
div#ltr ul.ltr li.CurrentSection, div#rtl ul.rtl li.CurrentSection {
    font-weight: bold;
    font-style: italic;
    background-color: #CCC;
}
div#nav ul li.CurrentSection a {
    position: relative;
    top: 1px;
    border: solid 1px #999;
    border-bottom-style: none;
    background-color: white;
}
#nav ul li.CurrentSection a:hover {
    background-color: #903;
}
div#nav li.lang {
    font-size: smaller;
    font-weight: bold;
}
div#nav li.lang:hover > ul {
    visibility: visible;
    opacity: 1;
    width: 450px;
    background-color: #13A926;
    padding-right: 5px;
}
div#nav ul.lang {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    z-index: 999;
    background-color: #EEE;
    border-bottom: solid 1px #999;
    padding: 2px 1px;
    top: -1em;
}
div#nav ul.lang:hover {
    float: initial;
}
div#nav ul.lang li {
    float: none;
    font-size: larger;
    padding: 0px;
}

/* Webcal
----------------------------------------------------- */
#subnavigation ul li.CurrentSection a {
    background-color: white;
}

/* Footer
----------------------------------------------------- */
div#footer {
    clear: both;
    overflow: hidden;
    width: 100%;
    height: 75px;
    font-size: 12px;
    line-height: 130%;
    color: #FFF;
    background-color: #00029D;
    border-top: solid 8px #13A926;
}
div#footer a {
    text-decoration: underline;
    color: #FFF;
}
div#footer img {
    border: 0;
    margin: 0 auto;
    vertical-align: middle;
}
div#footer p#createdate {
    float: left;
    width: 60%;
    text-align: left;
    margin-left: 10px;
}
div#footer p#copyright {
    float: right;
    text-align: right;
    margin: 10px 10px 0px 0px;
}
div#footer p#copyright img {
    float: right;
    margin-right: 10px;
    margin-bottom: 10px;
}
#user_footer {
    width: 70%;
    float: left;
    margin: 1em;
}
#user_footer p {
    font: normal 1em/1.2em serif;
    margin: 0;
    padding: 0;
}

/* Responsive navigation */
button.navIcon {
    display: none;
}

div#header.rtl h1 {
    margin-right: 40px;
}
div#header.rtl button {
    float: right;
}
div#header.ltr h1 {
    margin-left: 40px;
}
div#header.ltr button {
    float: left;
}
div#header::after {
    content: "";
    clear: both;
    display: table;
}

/* Updates
----------------------------------------------------- */
#Updates table.list td.date {
    width: 20%;
}

.ltr, .ltr li {
    float: left;
    list-style: none;
}
li:not(:first-child) {
    padding-right: 8px;
    padding-left: 8px;
}
.rtl, .rtl li {
    float: right;
    list-style: none;
}

/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
    background-color: #EEE;
}
div#alphanav ul {
    list-style: none;
    border-width: 2px 0px 4px 0px;
    border-style: solid;
    border-color: black;
    margin: 0px;
    padding-left: 15px;
    /* float container stretch, see www.quirksmode.org/css/clearing.html */
    overflow: hidden;
}
div#alphanav ul li {
    float: left;
    font-size: larger;
    font-weight: bold;
}
div#alphanav ul li:after {
    content: " |";
}
div#alphanav ul li a {
    display: block;
    padding: 4px 8px;
    line-height: 100%;
    float: left;

}
div#alphanav ul li a:hover {
    text-decoration: none;
    background-color: black;
    color: white;
}
div#header.rtl h1 {
    margin-right: 40px;
}
div#header.rtl button {
    float: right;
}
div#header.ltr h1 {
    margin-left: 40px;
}
div#header.ltr button {
    float: left;
}


div#nav::after {
    content: "";
    clear: both;
    display: table;
}

@media only screen and (max-width: 1080px) {

    /* Use less & all realestate on mobiles. */
    div#outerwrapper {
        margin: 5px auto;
        width: 100%;
    }

    .nav {
        background: none; /* Works in IE too. */
    }

    /* Undo some of the #nav styles  - to enable the class .nav */
    .nav ul, #subnavigation ul {
        list-style: none;
        min-width: unset;
        font-size: smaller;
        width: 200px;
        margin: 0;
        padding: 0;
    }
    .nav ul li, #subnavigation ul li {
        float: unset;
        display: unset
    }
    li:first-child {
        padding-right: 8px;
        padding-left: 8px;
    }

    /* Start with hidden menu options */
    /* .nav li:not(:first-child) {display: none;} */
    .nav li {display: none;}
    .nav ul {display: none;}

    button.navIcon.rtl {
        text-align:right;
    }
    button.navIcon.ltr {
        text-align:left;
    }

    button.navIcon {
        display: block;
        font-size:4.9em;
        line-height: 60px;
        border: 0px;
        color: #FFF;
        background-color: #00029D;
    }
    h1#SiteTitle.ltr  {
        float: left;
    }
    h1#SiteTitle.rlt  {
        float: right;
    }

    .nav.responsive {
        position: absolute;
        display: block;
        z-index: 100;
        font-size: 36px;
        background-color: #13A926;
    }
    .nav.responsive a.icon {
        right: 0;
        top: 0;
        margin-right: 10px;
    }
    .nav.rtl.responsive li.lang {
        text-align: right;
    }
    .nav.ltr.responsive li.lang {
        text-align: left;
    }
    .nav.responsive li {
        display: block;
        background-color: #13A926;
        /* required by IE */
        clear: both;
        width: 300px;
    }

    div#nav ul, #subnavigation ul {
        padding-left: 0px;
    }

    .content {
        padding: 0em 0.5em;
    }
    .lang {
        position: relative;
    }
    .lang > .lang {
        top: 0;
        margin-top: -6px;
        margin-left: -1px;
        -webkit-border-radius: 0 6px 6px 6px;
        -moz-border-radius: 0 6px 6px 6px;
        border-radius: 0 6px 6px 6px;
    }
    .lang:hover > .lang {
        display: block;
    }
}

/* Main Table
----------------------------------------------------- */
table.infolist {
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: .8em;
}
table.infolist thead tr th {
    color: #00029D;
    margin-left: 10px;
    background-color: #BCEAF6;
    border: solid 1px #000;
    font-size: 1em;
}
table.infolist tr td {
    border-bottom: dashed 1px #000;
    vertical-align: middle;
}
table.infolist tr.BeginLetter td, table.infolist tr.BeginSurname td {
    border-top: solid 1px #000;
}
table.infolist tr td.ColumnLetter {
    width: 3%;
    text-align: center;
}
table.infolist tbody tr td.ColumnDate {
    width: 12%;
}
table.infolist tbody tr td.ColumnBirth,
table.infolist tbody tr td.ColumnDeath {
    width: 12%;
}
table.infolist tbody tr td.ColumnRowLabel {
    width: 2%;
    padding-left: 20px;
}
table.infolist tr td.ColumnRowLabel a {
    background: none;
}
table.infolist tr td.ColumnType {
    width: 6%;
}
table.infolist tr td.ColumnAttribute {
    width: 10%;
}
table.infolist tr td.ColumnValue {
    width: 30%;
}
table.infolist tr td.ColumnName {
    width: 30%;
}
table.infolist tr td.ColumnName:first-letter {
    color: #903;
    font-weight: bold;
}
table.infolist tr td.ColumnPartner {
    width: 30%;
}
table.infolist tr td.ColumnParents {
    width: 30%;
}
table.infolist tbody tr td.ColumnParents span.father,
table.infolist tbody tr td.ColumnParents span.mother {
    display: block;
}
table.infolist tbody tr td.ColumnParents span.mother:before {
    content: "+ ";
}

/* Individuals
================================================= */
div#Individuals {
    margin: 0;
    padding: 0;
}
div#Individuals table.IndividualList {
    border-bottom: solid 1px #000;
}
div#Individuals table.IndividualList tbody tr td.ColumnSurname a:hover,
div#Individuals table.IndividualList tbody tr td.ColumnSurname a:active {
    cursor: default;
    background: none;
}
div#Individuals table.IndividualList tbody tr td.ColumnName a {
    vertical-align: middle;
}
div#Individuals div table.infolist tr td p {
    vertical-align: top;
}
div#Individuals div table.infolist tr td p a {
    display: inline;
}
div#Individuals table.infolist tbody tr td.ColumnSurname a {
    text-decoration: none;
}
div#Individuals table.infolist tbody tr td.ColumnSurname a:hover {
    background: none;
}
div#Individuals table.infolist tbody tr td.ColumnName {
    width: 20%;
}
div#IndividualDetail {
    padding: 0;
    margin: 0;
}
#IndividualDetail div#summaryarea table.infolist tr td {
    vertical-align: top;
    border: none;
}
div#IndividualDetail div#summaryarea table.infolist tr td a {
    text-decoration: underline;
    display: inline;
}
div#IndividualDetail table.infolist tr td a:hover {
    text-decoration: none;
}
div#IndividualDetail table.infolist tbody tr td.ColumnAttribute {
    width: 10%;
}
#familymap a.familymap {
    margin-left:20px;
}
a.family_map {
    margin-left: 20px;
}

/* Surnames
----------------------------------------------------- */
#Surnames {
    margin: 0;
    padding: 0;
}
table.surnamelist thead tr th.ColumnSurname,
#Surnames table.surnamelist tbody tr td.ColumnSurname {
    width: 50%;
}
table#SortByName thead tr th.ColumnSurname,
table#SortByCount thead tr th.ColumnQuantity {
    background-color: #00029D;
    color: #FFF;
}
table.surnamelist thead tr th.ColumnSurname a {
    color: #FFF;
}
table.surnamelist thead tr th.ColumnSurname a:hover {
    color: #000;
}
table#SortByName thead tr th.ColumnSurname a:after,
table#SortByCount thead tr th.ColumnQuantity a:after {
    content: " ↓";
}
table#SortByName tbody tr td.ColumnSurname {
    padding: 0;
}
table.surnamelist tbody tr td.ColumnSurname:hover,
 table#SortByName tbody tr td.ColumnSurname:hover {
    background-color: #BCEAF6;
}
table.surname {
    border-bottom: solid 1px #000;
}
table.surname thead tr th.ColumnName {
    padding-left: 20px;
}
table.surname tbody tr td.ColumnName:hover {
    background-color: #00029D;
    color: #FFF;
}

/*    Relationships
================================================= */
div#RelationshipList, div#RelationshipDetail {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}
div#RelationshipDetail div#FamilyDetail table.infolist tbody tr td {
    border: none;
}
div.content table.tags {
    text-align: left;
    width: auto;
}
table.relationships.ltr tr th, table.infolist.ltr tr th, table.primobjlist.ltr tr th, table.eventlist.ltr tr th {
    text-align: left;
}
table.relationships.rtl tr th, table.infolist.rtl tr th, table.primobjlist.rtl tr th, table.eventlist.rtl tr th {
    text-align: right;
}


/* Places
=================================================----- */
div#Places, div#PlaceDetail {
    margin: 0;
    padding: 0;
}
div#Places table.infolist tbody tr td.ColumnState {
    width: 7%;
}
div#Places table.infolist tbody tr td.ColumnCountry {
    width: 6%;
}
div#Places table.infolist tbody tr td.ColumnLatitude,
div#Places table.infolist tbody tr td.ColumnLongitude {
    width: 8%;
}
div#PlaceDetail h5 {
    font: bold .7cm serif;
    text-align: center;
    border-bottom: double 4px #13A926;
}

/* EventList and EventDetail
------------------------------------------------------ */
div#EventList, div#EventDetail {
    margin: 0;
    padding: 0;
}
table.eventlist tbody tr td.ColumnEvent {
    width: 10%;
}
table.eventlist tbody tr td.ColumnSources {
    vertical-align: top;
    width: 5%;
}
table.eventlist tbody tr td.ColumnPerson {
    width: 35%;
}
table.eventlist th.ColumnDate {
    width: 15%;
}
table.eventlist td.ColumnEvent,
table.eventlist td.ColumnDate,
table.eventlist td.ColumnPlace {
    font-weight: bold;
}
#attributes table.infolist td.ColumnType {
    width: 10%;
    padding-left: 15px;
}
#attributes table.infolist td.ColumnSources {
    width: 5%;
    padding-left: 5px;
}
#WebLinks table.infolist td.ColumnType {
    width: 10%;
    padding-left: 15px;
}
#families table.infolist th.ColumnEvent {
    width: 10%;
    padding-left: 0px;
}
#families table.infolist td.ColumnAttribute {
    padding-left: 0px;
}
div#IndividualDetail div#families table.eventlist tr td {
    border-bottom: dashed 1px #000;
}
div#EventList table.infolist tbody tr td {
    border-bottom: dashed 1px #000;
}
div#EventList table.eventlist tbody tr.BeginName {
    border-top: solid 1px #000;
}
div#EventList table.eventlist tbody tr td {
    padding: 4px 0px 4px 0px;
}
div#EventList table.alphaevent {
    padding: .3em 0 .3em 0;
    margin: 0;
}
div#EventList table.alphaevent tbody tr.BeginEvent {
    border-top: solid 1px #000;
}
div#EventList table.alphaevent tbody tr td.ColumnType {
    width: 15%;
}
div#EventList table.alphaevent tbody tr td.ColumnType a:hover {
    background: none;
}
div#EventList table.alphaevent tbody tr td.ColumnGRAMPSID {
    width: 10%;
}
div#EventList table.alphaevent tbody tr td.ColumnPerson {
    width: 50%;
}
div#EventList table.alphaevent tbody tr td.ColumnPerson span.father,
div#EventList table.alphaevent tbody tr td.ColumnPerson span.mother {
    display:block;
}
div#EventList table.alphaevent tbody tr td.ColumnPerson span.mother:before {
    content:"+ ";
}
div#EventDetail h3 {
    font-size: 28px;
}
div#EventDetail h3:first-letter {
    color: #903;
}
div#EventDetail table.eventlist {
    width: 100%;
}
div#EventDetail table.eventlist tbody tr {
    border-top: dashed 1px #000;
}
div#EventDetail table.eventlist tbody tr td.ColumnAttribute {
    width: 20%;
}
div#EventDetail table.eventlist tbody tr td.ColumnDate {
    border-top: solid 1px #000;
}

/* Events
----------------------------------------------------- */
#EventList table.infolist tr td a,
#EventDetail table.infolist tr td a {
    display: inline;
}
#EventList table.infolist tr td span.father,
#EventList table.infolist tr td span.mother,
#EventDetail table.infolist tr td span.father,
#EventDetail table.infolist tr td span.mother {
    display: block;
}
#EventList table.infolist tr td span.person:after,
#EventList table.infolist tr td span.father:after,
#EventList table.infolist tr td span.mother:after,
#EventDetail table.infolist tr td span.person:after,
#EventDetail table.infolist tr td span.father:after,
#EventDetail table.infolist tr td span.mother:after {
    content: ", ";
}

/* Gallery
----------------------------------------------------- */
#Gallery {
    margin: 0;
    padding: 0;
}
#gallery {
    background-color: green;
}
#indivgallery {
    background-color: white;
}
#gallery .gallerycell.ltr {
    float: left;
}
#gallery .gallerycell.rtl {
    float: right;
}
#gallery .gallerycell {
    width: 130px;
    height: 150px;
    text-align: center;
    margin: 0;
    background-color: white;
    border-top: solid 1px #999;
    border-right: solid 1px #999;
}
#gallery .thumbnail {
    font-size: smaller;
    margin: 3em auto;
}
#Gallery table.infolist tbody tr td {
    border-bottom: dashed 1px #000;
}
#Gallery table.infolist tbody tr td.ColumnName {
    width: 50%;
}
#Gallery table.infolist tbody tr td.ColumnName a {
    display: block;
    padding: .2em 10px .4em 10px;
}
#Gallery table.infolist tbody tr td.ColumnMime {
    width: 20%;
}
#GalleryNav {
    font: normal 1em/1em sans-serif;
    margin: 1em 0 0 0;
    padding: 1.2em 0 1.4em 0;
    text-align: center;
}
#GalleryNav a {
    font-weight: bold;
    text-decoration: none;
    border: solid 1px #000;
}
#GalleryNav a#Previous {
    padding: .5em .7em .3em .7em;
}
#GalleryNav a#Next {
    padding:.5em 1.9em .3em 1.9em;
}
#GalleryPages {
    margin: 0 1em;
}
#GalleryCurrent {
    font: bold 1.2em/1em sans-serif;
}
#GalleryTotal {
    font-weight: normal;
}
#GalleryDisplay {
    margin: 0 auto;
    padding: 0;
    position: relative;
    overflow: hidden;
    text-align: center;
    border: solid 1px #000;
}
#GalleryDisplay img {
    margin: 0 auto;
    height: auto;
}

@media only screen and (max-width: 1600px) {
    #GalleryDisplay img {
        max-width: 100%;
    }
}

#GalleryDetail div#summaryarea{
    margin: 0;
    padding: 2em 0 0 0;
}
#GalleryDetail div#summaryarea h3 {
    font: normal 1.2em/1.2em serif;
    text-align: center;
}
#GalleryDetail div h4 {
    margin-top: 0;
}
#GalleryDetail div#summaryarea table.gallery {
    padding-bottom: 0;
    border-style: solid;
    border-width: 2px 0 1px 0;
    border-color: #000;
}
#GalleryDetail table.exifdata {
    margin: .2em 0 .2em 0;
    width: 100%;
}
#GalleryDetail table.exifdata tbody tr {
    border-top: solid 1px #000;
}
#GalleryDetail table.exifdata tbody tr td.ColumnExifKeys {
    width: 60%;
}
#GalleryDetail table.exifdata tbody tr td.ColumnMetaData {
    width: 40%;
}

/*    Thumbnail Preview Reference Section
------------------------------------------------- */
body#ThumbnailPreview div#references {
    background-color: #FFF;
    color: #00029D;
    margin: 0 auto;
    padding: 0;
    width: 100%;
}
body#ThumbnailPreview div#references table.infolist tbody tr {
    border-bottom: dashed 1px #000;
}
body#ThumbnailPreview div#references table.infolist tbody tr td.ColumnName {
    width: 90%;
}

/* Contact
------------------------------------------------- */
#Contact #summaryarea {
    border: double 4px #000;
    background-color: #BCEAF6;
}
#Contact #summaryarea #GalleryDisplay img {
    float: right;
    margin: 0;
}
@media only screen and (max-width: 1080px) {
    #Contact, #Contact #summaryarea #researcher,
    #Contact #summaryarea #GalleryDisplay img {
        max-width: 100%;
    }
}

#Contact #summaryarea #researcher {
    font: normal 1.5em/1.4em serif;
    margin-top: .3em;
}
#Contact #summaryarea #researcher h3 {
    font: normal 1.2em/1.4em serif;
    padding: 0;
    text-align: left;
}
#Contact #summaryarea #researcher span {
    display: block;
    font: normal .9em/1.4em serif;
    margin-right: .4em;
}
#Contact #summaryarea #streetaddress {
    width: 100%;
}
#Contact #summaryarea #locality, .locality {
    display: block;
    width: 100%;
}
#Contact #summaryarea #city:after {
    content: ",";
}
#Contact #summaryarea #country {
    clear: left;
}
#Contact #summaryarea #email {
    clear: left;
}
#Contact #summaryarea #email a {
    text-decoration: none;
}

/* Download
----------------------------------------------------- */
div#Download {
    margin: 0;
    width: 100%;
}
div#Download table.download {
    padding: 0;
    margin: .5em 0 .5em 2.5%;
    border: solid 1px #000;
    width: 95%;
    text-align: center;
}
div#Download table.download tbody tr#Row02 {
    border-bottom: solid 2px #000;
}
div#Download table.download tbody tr td {
    border: solid 1px #000;
    text-align: left;
}
div#Download table.download td.ColumnFilename {
    width: 30%;
}
div#Download table.download td.ColumnFilename a {
    font-weight: bold;
    font-style: italic;
}
div#Download table.download td.ColumnDescription {
    width: 50%;
}
div#Download table.download td.ColumnModified {
    width: 20%;
}

/* Sources
----------------------------------------------------- */
#Sources {
    margin: 0;
    padding: 0;
}
#Sources table.infolist tr td.ColumnName {
    width: 70%;
}
div#SourceDetail {
    min-height: 900px
}
div#SourceDetail div#references ol li {
    padding-bottom: .5em;
}

/* Repositories
------------------------------------------------------ */
div#RepositoryList {
    margin: 0;
    padding: 0;
}
div#RepositoryList table.repolist tbody tr td {
    border-bottom: dashed 1px #000;
}
div#RepositoryList table.repolist tbody tr td.ColumnType {
    width: 15%;
}
div#RepositoryList table.repolist tbody tr td.ColumnName {
    width: 80%;
}

/* Address Book
------------------------------------------------------ */
div#AddressBookList, AddressBookDetail {
    margin: 0;
    padding: 0;
}
div#AddressBookList table.addressbook tbody tr td {
    border-bottom: dashed 1px #000;
    text-align: center;
}
div#AddressBookList table.addressbook tbody tr td.ColumnName {
    text-align: left;
    width: 65%;
}
div#AddressBookList table.addressbook tbody tr td.ColumnAddress {
    width: 10%;
}
div#AddressBookList table.adressbook tbody tr td.ColumnResidence {
    width: 10%;
}
div#AddressBookList table.addressbook tbody tr td.ColumnWebLinks {
    width: 10%;
}

/* Subsections
----------------------------------------------------- */
#Home #GalleryDisplay, #Introduction #GalleryDisplay,
                       #Contact #GalleryDisplay {
    float: right;
    margin: 0;
    border: 0px;
}
#Home #GalleryDisplay img, #Introduction #GalleryDisplay img,
                       #Contact #GalleryDisplay img {
    display: block;
    max-width: 950px;
    height: auto;
    float: right;
}
@media only screen and (max-width: 1080px) {
    #Home #GalleryDisplay img, #Introduction #GalleryDisplay img,
          #Contact #GalleryDisplay img {
        margin: 0 auto;
        max-width: 100%;
    }
}
#Home p, #Introduction p {
    margin: 0 20px 1em 20px;
}
#Home a, #Introduction a, #Contact a {
    color: #000;
    text-decoration: none;
}
div.subsection {
    padding-bottom: .5em;
}
div.subsection h4 {
    margin-bottom: .5em;
}
div.subsection table, div.subsection ol, div.subsection p, div.subsection > a {
    font-size: .9em;
}
div.subsection a {
    text-decoration: underline;
}
div.subsection a:hover {
    text-decoration: underline;
}
div.subsection table.infolist {
    width: 100%;
    margin: 0;
}

/* Subsections : Events
----------------------------------------------------- */
div#events {
    padding-bottom: 0;
}
div#events h4 {
    margin-bottom: 0;
    border: none;
}
#IndividualDetail div#events table.eventtable {
    width: 100%;
}
#families table.eventlist tbody tr td.ColumnEvent {
    vertical-align: top;
    width: 8%;
}
div#RelationshipDetail table.infolist tbody tr td.ColumnAttribute,
div#IndividualDetail table.infolist tbody tr td.ColumnAttribute {
    vertical-align: top;
    width: 10%;
}
#IndividualDetail div#events table.infolist tbody tr td {
    padding-top: .4em;
    padding-bottom: .8em;
}
#IndividualDetail div#events table.infolist tbody tr td.ColumnAttribute {
    border-bottom: solid 1px #000;
}
#IndividualDetail div#events table.infolist tbody tr td.ColumnValue {
    border-bottom: solid 1px #000;
}
table.infolist tbody tr td.ColumnValue p {
    font-family: sans-serif;
    color: #696969;
    margin: .2em 0 0 2em;
}

/* Subsections : Attributes
----------------------------------------------------- */
div#attributes {
    margin: 0;
    padding: 0;
}
table.attrlist {
    width: 100%;
}
table.attrlist tbody tr td {
    border-bottom: dashed 1px #000;
}
table.attrlist tbody tr td.ColumnType {
    width: 15%;
}
table.attrlist tbody tr td.ColumnValue {
    width: 15%;
}
table.attrlist tbody tr td.ColumnNotes {
    width: 40%;
}
table.attrlist tbody tr td.ColumnSources {
    width: 10%;
}

/* Subsections : Parents
----------------------------------------------------- */
div#parents {
    margin: 0;
    padding: 0;
}
div#parents table.infolist tbody tr td.ColumnValue ol {
    margin: 0;
    padding-top: 0;
}
div#parents table.infolist tbody tr td.ColumnValue ol li a {
    text-decoration: underline;
}
div#IndividualDetail div#parents table.infolist tr td {
    border: none;
}

/* Subsections : Families
----------------------------------------------------- */
div#families {
    margin: 0;
    padding: 0;
}
div#families .infolist h4 {
    font: bold 1.2em sans-serif;
    color: #FFF;
    padding: 0px 0px 0px 20px;
    border-width: 4px 0px 4px 0px;
    border-style: solid;
    border-color: #00029D;
    background-color: #13A926;
}
div#families table.infolist tbody tr.BeginFamily {
    border-top: solid 1px #000;
}
div#families table.infolist tbody tr td {
    border-bottom: none;
}
div#Families table.infolist tbody tr td.ColumnType,
div#Families table.infolist tbody tr td.ColumnAttribute {
    color: #000;
    }
div#families table.infolist tbody tr td.ColumnValue p {
    margin-top: 0;
    margin-left: 0;
}
div#families table.infolist tbody tr td.ColumnValue {
    width: 70%;
}
div#families table.infolist tbody tr td.ColumnValue ol {
    margin: 0;
    padding-top: 0;
}
div#families table.infolist tbody tr td.ColumnValue ol li {
    padding-bottom: .2em;
}
div#families table.infolist tbody tr td.ColumnValue ol li a {
    text-decoration: underline;
}
div#families table.fixed_subtables table.eventlist {
    table-layout:fixed;
}
div#families table.fixed_subtables table.eventlist th.ColumnDate {
    width: 12%;
}
div#families table.fixed_subtables table.eventlist th.ColumnSources {
     width: 5em;
 }
div#families table.fixed_subtables .Child table.eventlist .ColumnName {
    width: 60%;
}
div#families table.fixed_subtables .Child table.eventlist .ColumnDate {
    width: 20%;
}
div#families table.fixed_subtables .BeginFamily .ColumnType {
    width: 7em;
    vertical-align: top;
}

/* Subsection: Families: Attributes
------------------------------------------------- */
div#families able.infolist {
    font: normal .8em sans-serif;
    width: 100%;
}
div#families table.infolist tbody tr.BeginAttribute {
    border-top: solid 1px #000;
}
SourcesType {
    width: 8%;
}
div#families table.infolist tbody tr td.Value {
    width: 15%;
}
div#families table.infolist tbody tr td.Sources {
    width: 5%;
}

/* Subsection: Families: LDS Ordinance
------------------------------------------------------ */
div#families table.infolist {
    font: normal .9em sans;
}
div#families table.infolist tbody tr.BeginOrdinance {
    border-top: solid 1px #000;
}
div#families table.infolist tbody tr td.ColumnLDSType {
    width: 5%;
}
div#families table.infolist tbody tr td.ColumnLDSDate {
    width: 10%;
}
div#families table.infolist tbody tr td.ColumnLDSTemple {
    width: 8%;
}
div#families table.infolist tbody tr td.ColumnLDSPlace {
    width: 15%;
}
div#families table.infolist tbody tr td.ColumnLDSStatus {
    width: 8%;
}
div#families table.infolist tbody tr td.ColumnLDSSealed {
    width: 20%;
}
div#families table.infolist tbody tr td.ColumnLDSSources {
    width: 7%;
}

/* Subsection: LDS Ordinance
------------------------------------------------------ */
div#LDSOrdinance {
    margin: 0 auto;
    padding: 0;
}
table.ldsordlist {
    font: normal .8em sans;
}
table.ldsordlist tbody tr.BeginOrdinance {
    border-top: solid 1px #000;
}
table.ldsordlist tbody tr td.ColumnLDSType {
    width: 8%;
}
table.ldsordlist tbody tr td.ColumnLDSDate {
    width: 15%;
}
table.ldsordlist tbody tr td.ColumnLDSTemple {
    width: 10%;
}
table.ldsordlist tbody tr td.ColumnLDSPlace {
    width: 20%;
}
tableldsordolist tbody tr td.ColumnLDSStatus {
    width: 8%;
}
table.ldsordlist tbody tr td.ColumnLDSSealed {
    width: 25%;
}
table.ldsordlist tbody tr td.ColumnLDSSources {
    width: 7%;
}

/* Subsections : Addresses
----------------------------------------------------- */
div#Addresses {
    margin: 0;
    padding: 0;
}
div#Addresses table.infolist {
    font-size: 10px;
}
div#Addresses table.infolist tbody tr td.ColumnStreetAddress {
    width: 30%;
}
div#Addresses table.infolist tbody tr td.ColumnCity {
    width: 8%;
}
div#Addresses table.infolist tbody tr td.ColumnCounty {
    width: 8%;
}
div#Addresses table.infolist tbody tr td.ColumnState {
    width: 8%;
}
div#Addresses table.infolist tbody tr td.ColumnCntry {
    width: 5%;
}
div#Addresses table.infolist tbody tr td.ColumnPostalcode {
    width: 10%;
}
div#Addresses table.infolist tbody tr td.ColumnPhone {
    width: 12%;
}
div#Addresses table.infolist tr td a, div#Addresses table.infolist tr td p a {
    display: inline;
}

/* SubSection: Residence
----------------------------------------------------- */
div.Residence {
    margin: 0;
    padding: 0;
}
div.Residence table.infolist tr td {
    border-top: dashed 1px #000;
}

/* Subsections : Gallery
----------------------------------------------------- */
#indivgallery h4 {
    margin-bottom: 1em;
}
#indivgallery .thumbnail {
    margin: 0;
    float: left;
    width: 160px;
    height: 220px;
    text-align: center;
    background-color: white;
}
#indivgallery div.thumbnail a {
    display: block;
    margin: 0;
    padding: 0;
    text-decoration: none;
    cursor: pointer;
    word-wrap: break-word;
}
#indivgallery div.thumbnail a img {
    padding: 0;
    border: solid 1px #000;
}

#indivgallery div.thumbnail span {
/* ## remove this line and the comment markers from the line below to hide the description in Individual Gallery
    display: none; */
    font: normal .7em/1.4em sans-serif;
    text-align: center;
    width: 80%;
    margin: 0 auto;
    padding: 0;
}
#gallery div.indexno {
    float: right;
    font-size: large;
    text-align: center;
    background-color: #CCC;
    color: #555;
    margin: 0;
}
#indivgallery div.date {
    float: right;
    width: 1.8em;
    font-size: large;
    text-align: center;
    background-color: #CCC;
    color: #555;
}
#indivgallery .thumbnail ul {
    font-size: smaller;
    list-style: none;
    padding: 0px;
}
#indivgallery .thumbnail ul li:first-child {
    border-style: none;
}
#indivgallery .thumbnail ul li {
    border-top: dashed 1px #CCC;
    border-top-style: dashed;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
#gallery img {
    border: solid 1px #999;
}
div.snapshot div.thumbnail {
    text-align: center;
}

/* Subsections : Narrative
----------------------------------------------------- */
div.narrative {
    padding-bottom: 0;
}
.narrative p {
    font: normal .9em/1.4em sans-serif;
    margin: 0.1em 0 0.2em 0;
}
i.NoteType {
    font-weight: bold;
    font-size: .8em;
}
i + div.grampsstylednote p {
    margin: 0.1em 0 0.2em 0;
}
div.grampsstylednote p {
    padding-bottom: 0.6em;
}

/* Subsection : References
----------------------------------------------------- */
#references ol {
    margin-left: 3em;
}

/* Subsections : References
----------------------------------------------------- */
div#References {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}

/* Subsections : Source References
----------------------------------------------------- */
#sourcerefs ol#srcr {
    counter-reset: itema;
    list-style-type: none;
    display: block;
    margin-top: .1em;
}
#sourcerefs ol#citr {
    counter-reset: itemb;
    list-style-type: none;
}
#sourcerefs ol#srcr > li::before {
    content: counter(itema);
}
#sourcerefs ol#citr > li::before {
    content: counter(itema)counter(itemb, lower-alpha);
}
#sourcerefs ol#srcr > li {
    counter-increment: itema;
    margin-top: .1em;
}
#sourcerefs ol#citr > li {
    counter-increment: itemb;
    margin-top: .1em;
}
#sourcerefs ol#citr ul {
    list-style: none;
    display: inline-block;
    vertical-align: top;
}

/* Subsections : Summary Area
----------------------------------------------------- */
div#summaryarea {
    background-color: #FFF;
}
div#summaryarea table.infolist {
    margin: 0;
    padding: 0;
    background-color: #FFF;
}
div#summaryarea table.infolist tr td, div#summaryarea table.infolist tr td p {
    font: normal .9em/1.2em sans-serif;
    vertical-align: top;
}
div#summaryarea table.infolist tr td.ColumnValue {
    width: 70%;
}
div#summaryarea table.infolist tr td a, div#summaryarea table.infolist tr td p a {
    display:inline;
}
div#summaryarea table.infolist tbody tr td.ColumnAttribute {
    width: 14%;
    color: #696969;
    padding-left: 20px;
}

/* Subsections : We Llinks
----------------------------------------------------- */
div#WebLinks {
    margin : 0 auto;
    padding: 0;
}
table.WebLinks {
   width: 100%;
}
table.WebLinks tbody tr td {
    color: #000;
    border-bottom: dashed 1px #000;
}
table.weblinks tbody tr td.ColumnType {
    width: 15%;
}
table.WebLinks tbody tr td.ColumnPath {
    width: 50%;
}
table.weblinks tbody tr td.ColumnDescription {
    width: 80%;
}

/* Subsections : Pedigree
----------------------------------------------------- */
div#pedigree {
    margin: 0;
    padding: 0;
}
#pedigree a {
    text-decoration:none;
    color: #000;
}
#pedigree a:hover {
    text-decoration:underline;
}
.pedigreegen {
    font:normal .9em/1.2em sans-serif;
    list-style:none;
    margin:.5em 0 0 0;
    padding:0 0 0 20px;
}
.pedigreegen li ol {
    list-style:none;
    margin-left:.5em;
}
.pedigreegen li ol li ol {
    font:normal 1em/1.4em sans-serif;
    list-style:decimal;
    margin-left:1.6em;
}
.pedigreegen li ol li ol li ol.spouselist {
    list-style:none;
    margin-left:0;
}
.spouselist li.spouse ol {
    list-style:decimal;
    margin-left:1.6em;
}
.spouse a {
    font-weight:normal;
    font-style:normal;
    color: #000;
}
.spouse:before {
    content: "+ ";
}
.thisperson {
    font-weight:bold;
}

/* Calendar Styles
-------------------------------------------------------------------------------------------- */
#OneDay, #WebCal, #YearGlance {
    width: 100%
}
/* Calendar : General */
.dropmenu.rtl li {
    text-align: right;
}
.dropmenu.ltr li {
    text-align: left;
}

.calendar {
    empty-cells:show;
    width:100%;
    font-size:1em;
    font-weight:normal;
    margin:0;
    padding:0;
    border:none;
    border-collapse:collapse;
}
.calendar thead tr th {
    width:14%;
    font-weight:normal;
    font-size:18px;
    line-height:18px;
    text-align:center;
    text-transform:uppercase;
    padding:2px 0;
}
.calendar thead tr th.monthName {
    width:100%;
    font-size:2em;
    line-height:100%;
    color: #542;
    padding:.3em 0 .2em 0;
    background-color: #FFF;
    vertical-align: top;
    height: 2em;
}
.calendar thead tr th.weekend,
.calendar thead tr th.weekday {
    font-style:italic;
    color: #000;
    background-color: #BCEAF6;
    border: solid 2px #000;
}
.calendar tfoot tr td {
    padding:.7em 5% 1em 5%;
    border-top:solid 2px #000;
    vertical-align:middle;
    color: #000;
    background-color: #D8F3D6;
}

/* Calendar : Date Numeral */
.calendar tbody tr td div.date {
    float:right;
    display:block;
    width:1.8em;
    font-size:1.2em;
    line-height:100%;
    text-align:center;
    border: 5px solid rgba(0,0,0,.0);
    color: #542;
    padding:.2em 0;
    background-color: #D8F3D6;
}

/* Calendar : Date Container */
.calendar tbody tr td {
    vertical-align:top;
    height:10em;
    padding:0;
    border-width:1px 0 0 1px;
    border-style:solid;
    border-color: #000;
}
.calendar tbody tr td.weekday {
    background-color: #FFF;
}
.calendar tbody tr td.weekend {
    background-color: #D8F3D6;
}
.calendar tbody tr td.saturday {
    border-right: solid 1px #000;
 }
.calendar tbody tr td.sunday {
    border-left: solid 1px #000;
}

/* Calendar : Date Detail */
.calendar tbody tr td ul {
    list-style:none;
    font-family:sans-serif;
    font-size:1em;
    margin:2.3em 0 .3em 0;
    padding:0;
}
.calendar tbody tr td ul li {
    color: #000;
    display:block;
    width:92%;
    margin:0 4%;
    padding:.6em 0 .3em 0;
    border-top: dashed 1px #000;
}
.calendar tbody tr td ul li:first-child {
    border-top: 10px;
}

/* Calendar : Birthday, Anniversary, Highlight */
.calendar tbody tr td ul li em {
    font-style:normal;
    color: #0A65B5;
}
.calendar tbody tr td ul li span.yearsmarried em {
    color: #228A22;
}
.calendar tbody tr td.highlight { }

.calendar tbody tr td.highlight div.date {
    color: #0A65B5;
    background-color: #C2E1FE;
}

/* Calendar : Previous-Next Month */
.calendar tbody tr td.previous,
.calendar tbody tr td.next,
.calendar tbody tr td.previous div.date,
.calendar tbody tr td.next div.date {
    color: #333;
    background-color: #D8F3D6;
}

/* Calendar : Full Year */
body#fullyearlinked {
    background-color: #FFF;
}
body#fullyearlinked div.content {
    margin:0 auto;
    padding:15px 0 2px 2px;
}
body#fullyearlinked table.calendar {
    height:18em;
    border:solid 1px #000;
}
body#fullyearlinked table.calendar thead tr th {
    height:2em;
    border-width: 1px 1px 0px 0px;
    border-color: #000;
    text-align: center;
}
body#fullyearlinked table.calendar thead tr th.monthName {
    font-size:1.2em;
    padding:2px 0;
    border-bottom: solid 1px #000;
}
body#fullyearlinked table.calendar tbody tr td.emptyDays {
    height:52px;
    background-color: #FFF;
}
body#fullyearlinked table.calendar tbody tr td.saturday {
    border-right:solid 2px #000;
}
body#fullyearlinked able.calendar tbody tr td.sunday {
    border:solid 2px #000;
}

/* Calendar: OneDay
--------------------------------------------------------------------------------- */
body#OneDay {
    background-color: #FFF;
    color: #000;
}
body#OneDay h3 {
    color: #228A22;
    font-weight: bold;
    text-align: center;
}
body#OneDay ol li a {
    color: #000;
    text-decoration: underline;
}
table.oneday {
    margin: .3em 0 .3em 0;
    padding: 0;
}
table.oneday tbody tr td {
    border-bottom: dashed 1px #000;
}
table.oneday tbody tr td.ColumnText {
    width: 85%;
}
table.oneday tbody tr td.ColumnEvent {
    width: 10%;
}
#WebCal table.calendar tfoot {
    display: none;
}
#WebCal table.calendar tr td {
    word-wrap: break-word;
    padding: 2px;
}
#WebCal .calendar tr td .empty {
    border: 5px solid rgba(255,255,255,.0);
}
#WebCal .calendar tr td .clickable {
    border: 5px solid rgba(255,255,255,.0);
}
#WebCal .calendar tr td .clickable:hover {
    display: block;
    overflow:auto;
    word-wrap: break-word;
    cursor: text;
    border-radius: 10px 0px 10px 10px;
    border: 5px solid #000290;
    padding: 0px;
}
body#fullyearlinked #YearGlance tbody td {
    height:48px;
    vertical-align: middle;
    text-align: center;
    padding-left: 3px;
}
body#fullyearlinked #YearGlance tbody td .date {
    font-size: 30px;
    vertical-align: middle;
    text-align: center;
    border-radius: 45px;
    float: none;
    border: 5px solid rgba(0,0,0,.0);
}
body#fullyearlinked #YearGlance tbody td:hover .date {
    border-radius: 45px;
    border: 5px solid;
}
h4 button.icon {
    width: 1.9em;
    border: 0px solid;
    padding: 0;
    opacity: 1;
    transform: rotate(90deg);
    transition: transform 200ms ease-out 0s;
    background: transparent;
}
h4 button.icon-close {
    transform: rotate(90deg);
    transition: transform 0.2s linear;
}
h4 button.icon-open {
    transform: rotate(180deg);
    transition: transform 0.2s linear;
}
svg {
  fill: #13A926;
}
/* Go to the top of the page */
#gototop {
  display: none;
  position: fixed;
  bottom: 10px;
  right: 20px;
  z-index: 999;
  border: none;
  background-color: transparent;
  color: black;
  cursor: pointer;
  border-radius: 4px;
  width: 40px;
  height: 40px;
  padding: 0px;
}

#gototop:hover {
  background-color: #BCEAF6;
}
