body {
    padding: 0;
    margin: 0 auto;
    background-color: #8f0707;
    color: #009;
    text-align: center;
}

#container {
    position: relative;
    margin: 2rem auto;
    padding: 0;
    width: 945px;
    text-align: center;
    background-color: #FFF;
    box-shadow: 0 -1px 33px 2px #560404;
}

/*#header {*/
/*margin: 0 auto;*/
/*padding: 8px 0 0;*/
/*text-align: left;*/
/*}*/

#navlist {
    color: #344DA1;
    font-family: Georgia, serif;
    font-size: 0.9em;
    margin: 0;
    padding: 0;
}

#navlist ul {
    list-style-type: none;
    padding: 0;
    margin: -8px auto 0;
    width: 800px;
    text-align: center;
    border-top: 1px solid #344DA1;
}

#navlist li {
    margin: 7px auto 0;
    padding: 0;
    float: left;
    width: 100px;
}

#navlist li a {
    padding: 7px auto;
    margin: 0;
    width: 100px;
    height: 1.2em;
    line-height: 1.2em;
    color: #344DA1;
    text-decoration: none;
}

#navlist li a:link, a:visited {
    background-color: transparent;
    outline: none;
}

#navlist li a:hover, a:active {
    text-decoration: underline;
    outline: none;
}

#navlist ul ul.sublist {
    position: absolute;
    top: 211px;
    visibility: hidden;
    width: 100px;
    z-index: 1;
    background: white;
}

#navlist ul li:hover ul.sublist {
    visibility: visible;
}

#navlist ul ul.sublist li {
    width: 100px;
    height: 1.4em;
    line-height: 1.4em;
    float: none;
    margin: 0;
    padding: 0;
    border-left: none;
    border-right: none;
    border-top: none;
}

#navlist ul ul.sublist li:last-of-type {
    border-bottom: none;
}

#navlist ul li:hover ul.sublist li a:link, a:visited {
    display: block;
    width: 100px;
    height: 1.4em;
    line-height: 1.4em;
    font-size: 0.9em;
    padding: 0;
    margin: 0 auto;
    text-align: center;
    background-color: transparent;
    color: #344DA1;
    text-decoration: none;
    outline: none;
}

#navlist ul li:hover ul.sublist li a:hover, a:active {
    text-decoration: underline;
    outline: none;
}

#navlist ul li ul.sublist {
    width: 100px;
    margin: 0;
    padding: 0;
    border-top: none;
}

hr.break {
    clear: both;
    color: transparent;
    background-color: transparent;
    padding: 0;
    margin: 0;
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: transparent;
    border-image: none;
    border-style: solid;
    border-width: 2px 0 0;
    height: 0;
}


#content {
    position: relative;
    clear: left;
    margin: 80px auto 0;
    padding: 20px 0 0;
    width: 945px;
    height: 2775px;
    text-align: left;
}

#content h1 {
    padding: 0 93px;
    margin: 5px 0;
    font-weight: lighter;
    color: #009;
}

#content h2 {
    font-weight: lighter;
    color: #344DA1;
    padding: 0.7em 1.41em 0.1em 0;
    margin: 0;
}

#content h2.date {
    float: right;
    font-weight: lighter;
    color: #009;
    padding: 0.2em 93px;
    margin: 0;
    /*text-align: left;*/
}

#content p.desc {
    color: #000;
    padding: 0 2.2em;
    font-size: 16px;
}

.full_span {
    clear: left;
    float: left;
    height: auto;
    margin: 0.12em 0.65em 0 93px;
    padding: 0;
    display: block;
    width: 758px;
}

#content h3 {
    margin: 0;
    padding: 0.5em 0 1em;
    font-weight: lighter;
    color: #344DA1;
}

#content h3.linebreak {
    clear: left;
}

#left_col {
    float: left;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0 0;
}

#right_col {
    float: left;
    width: auto;
    height: auto;
}

/*Gallery rules start here*/


div.galleryB, div.galleryA, div.galleryB3 {
    display: block;
    float: left;
    height: auto;
    margin: 1em 0.65em 0;
    padding: 0;
    width: auto;
}

/* Two-or-more photos stacked in one column, floated as a single unit
   beside a wider/taller neighbor (e.g. two landscape photos matching
   one portrait photo's height). Forces its own row like gallery6 does,
   since it's meant to start a new photo group, not continue one. */
div.photo-stack {
    clear: left;
    display: block;
    float: left;
    height: auto;
    /* Top margin matches div.galleryB (its row partner here, the
       single wide/tall image), not div.gallery6 (0.12em) -- they need
       the same top margin to align flush at the top; any leftover
       height difference should only show up as slack at the bottom. */
    margin: 1em 0.65em 0 93px;
    padding: 0;
    width: auto;
}

div.photo-stack p {
    margin: 0 auto 0.5em;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.photo-stack p:last-child {
    margin-bottom: 0;
}

div.photo-stack p img {
    display: block;
    margin-bottom: 3px;
}

/* A single standalone photo (the only item in the photos array),
   centered rather than left-floated with gallery6's 93px indent --
   that indent exists to leave room for other photos continuing the
   same row, which doesn't apply when there's nothing else to align
   against. Not floated at all, so it doesn't need clear either. */
div.photo-solo {
    display: block;
    float: none;
    width: 900px;
    margin: 1em auto 0;
    padding: 0;
    text-align: center;
}

div.photo-solo p {
    margin: 0 auto 0.5em;
    font-size: 0.9em;
    color: #000;
}


div.galleryB p {
    margin: 0 auto;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.galleryB p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery {
    float: left;
    width: auto;
    height: auto;
    margin: 0.3em 0.65em 0;
    padding: 0;
    display: block;
}


div.gallery2 {
    clear: left;
    float: left;
    width: auto;
    height: auto;
    margin: 0.12em 0.65em 0 2.2em;
    padding: 10px 0 0;
    display: block;
}

div.gallery2 p {
    margin: 1em auto 0;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery2 p img {
    display: block;
    margin: 0;
}

div.gallery3 {
    float: left;
    width: auto;
    height: auto;
    margin: 1em 0.65em 0;
    padding: 165px 0 0;
    display: block;
}

div.gallery3 p {
    margin: 0 auto;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery3 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery4 {
    float: left;
    width: auto;
    height: auto;
    margin: 1em 0.65em 0;
    padding: 210px 0 0;
    display: block;
}

div.gallery4 p {
    margin: 0 auto;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery4 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery5 {
    float: left;
    width: auto;
    height: auto;
    margin: 1em 0.65em 0;
    padding: 0 0 0 290px;
    display: block;
}

div.gallery5 p {
    margin: 0 auto;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery5 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery6 {
    clear: left;
    float: left;
    width: auto;
    height: auto;
    margin: 0.12em 0.65em 0 93px;
    padding: 0;
    display: block;
}

div.gallery6 p {
    margin: 1em auto 0;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery6 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery7 {
    clear: right;
    float: right;
    width: auto;
    height: auto;
    margin: 0.12em 58px 0 0;
    padding: 0;
    display: block;
}

div.gallery7 p {
    margin: 1em auto 0;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery7 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery8 {
    clear: right;
    float: right;
    width: auto;
    height: auto;
    margin: 0.12em 241px 0 0;
    padding: 0;
    display: block;
}

div.gallery8 p {
    margin: 1em auto 0;
    font-size: 0.9em;
    text-align: center;
    color: #000;
}

div.gallery8 p img {
    display: block;
    margin-bottom: 3px;
}

div.gallery3 img, div.galleryB img, div.gallery2 img, div.gallery4 img, div.gallery5 img, div.gallery6 img, div.gallery7 img, div.gallery8 img {
    padding: 0;
    margin: 0;
    background-color: #E6E6E6;
    border: 1px solid #344DA1;
    box-shadow: 3px 5px 5px #B8B8B8;
}


/*Gallery rules end here*/


#basic_info {
    background: #FDE83C;
    width: 759px;
    /* Was 100px 0 -- calibrated for when this box always sat right
       before the footer (the only place it appeared for years). Now
       that it can also sit between the heading and the photo (the
       "ad" layout), that much margin on both sides left a big gap on
       both ends; tightened for this new context. */
    margin: 1.5em auto 2em;
    padding: 53px 93px;
    clear: both;
    font-family: arial, helvetica, sans-serif;
}

.bottom_divider {
    background: transparent;
    width: 759px;
    margin: 100px 0;
    padding: 1px 0 0;
    clear: both;
    display: block;
}


#basic_info h1 {
    color: #de792b;
    font-style: italic;
    font-size: 3em;
    font-weight: bold;
    padding: 0;
    margin: 0;
}

p.address {
    color: #8f0707;
    font-weight: bold;
    font-size: 1.4em;
    padding: 12px 0 18px;
    margin: 0;
}

p.reception {
    color: #de792b;
    font-style: italic;
    font-weight: bold;
    font-size: 1.7em;
    padding: 0;
    margin: 0;
}

p.info {
    font-size: 1.2em;
    font-style: italic;
    padding: 0;
}

.date {
    font-weight: bold;
}


#submenu {
    clear: both;
    margin: 0;
    padding: 55px 93px 0;
    text-align: right;
}

#submenu p, p.top {
    display: inline;
    padding: 5px 15px 5px 100px;
    margin: 0.5em 0;
}

#submenu p.top {
    margin-left: -3px;
    padding: 5px 0 5px 16px;
}

#submenu h3.next {
    margin: 0 0 1em;
    border-bottom: 1px solid #344DA1;
    /*width: 709px;*/
    width: auto;
    padding-bottom: 0.5em;
}

#submenu h3.prev {
    float: left;
    margin: 10px 0 0;
    padding: 0;
}

#submenu p a:link, p.top a:visited {
    text-decoration: none;
    outline: none;
    color: #344DA1;
}

#submenu p a:hover, p.top a:active {
    text-decoration: underline;
    outline: none;
    color: #344DA1;
}

#submenu h3 a:link, a:visited {
    text-decoration: none;
    outline: none;
    color: #344DA1;
}

#submenu h3 a:hover, a:active {
    text-decoration: underline;
    outline: none;
    color: #344DA1;
}

#footer {
    position: absolute;
    bottom: 0;
    clear: left;
    text-align: center;
    margin: 0 auto;
    padding: auto 5px;
    width: 945px;
    height: 32px;
    line-height: 32px;
    font-size: 12px;
    color: #344DA1;
    background-color: #F2F3F8;
}

#footer p {
    padding: auto 0;
    margin: 0 auto;
}