html, body {
    height: 100%;
}

body {
    margin: 0px;
    padding: 0px;
    background: white; /* #2D2D2D */
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #707070;
}

h1, h2, h3, h4 {
    margin: 0px;
    padding: 0px;
    font-family: 'Maven Pro', sans-serif;
    font-weight: 400;
    color: #414141;
}

h2 {
    margin-left: -3px;
}

h3 {
    font-size: 1.4em;
    color: #2e3192; /* 59805d  */
}

h4 {
    font-weight: bold;
    font-size: 1.1em;
}

p, ol, ul {
    margin-top: 0px;
}

p, ol {
    line-height: 120%;
}

li
{
    list-style-type: square;
    list-style-position: outside;
}

strong, em {
    color: #454545;
}

a {
    color: #59805d; /*  95C79A  */
}

a:hover {
    text-decoration: none;
}

a img {
    border: none;
}

img.border {
}

img.alignleft {
    float: left;
    margin-top: 5px;
    margin-right: 30px;
}

img.alignright {
    float: right;
    margin-top: 5px;
    margin-left: 30px;
}

img.aligncenter {
    margin: 0px auto;
}

hr {
    display: none;
}

/** WRAPPER */

#wrapper
{
    overflow: hidden;
    background-color: #ffffff;
    background-image: url(/images/wrapper-bg.jpg);
    background-repeat: repeat-x;
    background-position: left top;
}

.container {
    width: 1000px;
    margin: 0px auto;
}

.clearfix {
    clear: both;
}

/** HEADER */

#header {
    overflow: hidden;
    height: 152px;
    position: relative;
}

/** LOGO */

#logo {
    float: left;
    height: 98px;
    padding-top: 74px;
    margin: 0 10px 0 0;
}

#logo h1, #logo p {
    margin: 0px;
    line-height: normal;
}

#logo h1 {
    height: 73px;
}

#logo h1 span {
    display: block;
    height: 58px;
    background: #95C79A;
    line-height: 58px;
    letter-spacing: -3px;
    text-align: center;
    text-decoration: none;
    font-size: 35px;
    color: #FFFFFF;
    padding: 0 25px 0 22px;
}

#logo h1 a {
    display: block;
    height: 73px;
    background: url(/images/lower-triangle-bg.png) no-repeat left bottom;
    text-decoration: none;
}

/** MENU */

#menu-wrapper {
    float: right;
    padding-top: 84px;
}

#menu {
    margin: 0px;
    padding: 0px;
    list-style: none;
    height: 37px;
    letter-spacing: -1px;
    line-height: 37px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #404142;
}

#menu li {
    display: inline-block;
}

#menu a {
    display: block;
    height: 37px;
    text-decoration: none;
    color: #404142;
}

#menu a:hover {
    background: #393939;
    text-decoration: none;
    color: #FFFFFF;
}

#menu .arrow {
}

#menu span {
    display: inline-block;
    height: 37px;
    padding: 0px 15px 0px 15px;
}

#menu li.active
{
    border: 1px #393939 solid;
}

#menu .arrow {
}

/** DROPOTRON */

.dropotron li.opener {
}

.dropotron {
    width: 214px;
    padding: 20px 0px 20px 0px;
    background: url(/images/menu-dropotron-bg.png) repeat left bottom;
    list-style: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 15px;
    color: #D6D7D7;
}

.dropotron a, .dropotron span {
    display: block;
    line-height: 34px;
    border-top: 1px solid #4D4D4D;
    text-decoration: none;
    color: #D2D3D3;
}

.dropotron li {
    height: 34px;
    padding: 0px 24px 0px 24px;
    color: #D2D3D3;
}

.dropotron li:hover {
}

.dropotron li:hover > a, .dropotron li:hover > span {
}

.dropotron li .arrow {
}

.dropotron .first a {
    border-top: none;
}

.dropotron li:hover > span {
}

/** SEARCH */

#search {
    width: 280px;
    position: absolute;
    top: 0;
    right: 0;
}

#search form {
    float: right;
    margin: 0px;
    padding: 84px 0px 0px 10px;
    height: 52px;
    background: url(/images/search-bottom-bg.png) no-repeat right bottom;
}

#search fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

#search input.blank {
    color: #A7A7A7;
}

#search-text {
    outline: none;
    float: left;
    width: 223px;
    height: 37px;
    padding: 0px 0px 0px 10px;
    background: #FFFFFF;
    border: none;
    letter-spacing: -1px;
    line-height: 37px;
    font-family: 'Maven Pro', sans-serif;
    font-size: 16px;
    font-weight: normal;
    color: #696969;
}

#search-submit {
    float: right;
    width: 37px;
    height: 37px;
    background: url(/images/search-icon-bg.jpg) no-repeat left top;
    border: none;
    text-indent: -999999em;
}

/** PAGE */

#page-wrapper {
    overflow: hidden;
    padding: 10px 0 75px 0;
    background: url(/images/page-wrapper-bg.jpg) no-repeat center top;
}

.homepage #page {
    width: 1000px;
    margin: 0px auto;
    padding: 0px 0px 50px 0px;
}

#page {
    overflow: hidden;
    width: 950px;
    padding: 0px 25px;
}

/** CONTENT */

#content {
    float: left;
    width: 610px;
    padding: 0px 35px 0px 0px;
    border-right: 1px solid #CCCCCC;
}

.two-column2 #content {
    float: right;
    padding: 25px 0px 0px 35px;
    border-left: 1px solid #CCCCCC;
    border-right: none;
}

#content h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -3px;
    font-size: 35px;
}

/** CONTENT */

#wide-content {
    padding: 0px 35px 0px 0px;
}

#wide-content h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -3px;
    font-size: 35px;
}

/** SIDEBAR */

#sidebar {
    float: right;
    width: 270px;
    padding-top: 25px;
}

.two-column2 #sidebar {
    float: left;
}

#sidebar h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -2px;
    font-size: 25px;
}

/** FOOTER */

#footer {
    overflow: hidden;
    height: 150px;
    border-top: 1px solid #393939;
}

#footer p {
    margin: 0px;
    padding: 50px 0px 0px 0px;
    text-align: center;
    color: #444444;
}

#footer a {
    color: #444444;
}

/** FOOTER CONTENT */

#footer-content {
    overflow: hidden;
    width: 950px;
    margin: 0px auto;
    padding: 50px 0px;
    color: #707070;
}

#footer-content h2 {
    padding: 0px 0px 30px 0px;
    letter-spacing: -1px;
    color: #C5C5C5;
}

#footer-content ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

#footer-content li {
    padding: 10px 0px 14px 0px;
    border-top: 1px solid #383838;
}

#footer-content li a {
    color: #707070;
}

#footer-content .first {
    padding-top: 0px;
    border-top: none;
}

#footer-content #column1 {
    float: left;
    width: 185px;
    padding: 20px 34px 20px 0px;
    border-right: 1px solid #393939;
}

#footer-content #column2 {
    float: left;
    width: 185px;
    padding: 20px 34px 20px 35px;
    border-right: 1px solid #393939;
}

#footer-content #column3 {
    float: left;
    width: 440px;
    padding: 20px 0px 20px 35px;
}

/** CONTENT */

#contact-wrapper {
    overflow: hidden;
    height: 50px;
    background: #353535;
    color: #969696;
    bottom: 0px;
    width: 100%;
    position: fixed;
    z-index: 1000;
}

#contact {
    width: 1000px;
    padding: 10px 0px 0px 0px;
    text-align: center;
}

#contact a {
    color: #969696;
}

#contact .link1 {
    display: inline-block;
    height: 32px;
    margin-left: 20px;
    padding-left: 45px;
    line-height: 32px;
    background: url(/images/contact-icon-01.png) no-repeat left top;
}

#contact .link2 {
    display: inline-block;
    height: 32px;
    margin-left: 20px;
    padding-left: 45px;
    line-height: 32px;
    background: url(/images/contact-icon-02.png) no-repeat left top;
}

#contact .link3 {
    display: inline-block;
    height: 32px;
    margin-left: 20px;
    padding-left: 45px;
    line-height: 32px;
    background: url(/images/contact-icon-03.png) no-repeat left top;
}

#contact .link4 {
    display: inline-block;
    height: 32px;
    margin-left: 20px;
    padding-left: 45px;
    line-height: 32px;
    background: url(/images/contact-icon-04.png) no-repeat left top;
}

/** BANNER */

#banner-wrapper {
    overflow: visible;
    height: 355px;
    background: url(/images/banner-wrapper-bg.jpg) no-repeat center top;
}

#banner {
    overflow: visible;
    height: 355px;
}

/** TWO COLUMN 1 */

#two-column1 {
    overflow: hidden;
    width: 950px;
    padding: 25px;
    border-bottom: 1px solid #CCCCCC;
    background: url(/images/page-shadow-bg.jpg) no-repeat left top;
}

#two-column1 #colA {
    float: left;
    width: 610px;
    padding: 20px 34px 0px 0px;
    border-right: 1px solid #CCCCCC;
}

#two-column1 #colA h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -3px;
    font-size: 35px;
}

#two-column1 #colB {
    float: right;
    width: 270px;
    padding: 20px 0px 0px 0px;
}

#two-column1 #colB h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -2px;
    font-size: 25px;
}

/** TWO COLUMN 2 */

#two-column2 {
    overflow: hidden;
    width: 950px;
    padding: 25px 25px;
    border-bottom: 1px solid #CCCCCC;
}

#two-column2 #colC {
    float: left;
    width: 440px;
    padding: 20px 34px 0px 0px;
    border-right: 1px solid #CCCCCC;
}

#two-column2 #colD {
    float: right;
    width: 440px;
    padding: 20px 0px 0px 0px;
}

/** FOUR COLUMNS */

#four-column-content {
    overflow: hidden;
    width: 950px;
    padding: 25px 25px;
}

#four-column-content h2 {
    padding: 0px 0px 20px 0px;
    letter-spacing: -3px;
    font-size: 25px;
    color: #414141;
}

#four-column-content #fbox1 {
    float: left;
    width: 185px;
    padding: 20px 34px 0px 0px;
}

#four-column-content #fbox2 {
    float: left;
    width: 185px;
    padding: 20px 34px 0px 34px;
    border-left: 1px solid #CCCCCC;
}

#four-column-content #fbox3 {
    float: left;
    width: 185px;
    padding: 20px 34px 0px 34px;
    border-left: 1px solid #CCCCCC;
}

#four-column-content #fbox4 {
    float: right;
    width: 185px;
    padding: 20px 0px 0px 35px;
    border-left: 1px solid #CCCCCC;
}

/** LINK STYLE 1 */

.link-style1
{
    display: block;
    height: 48px;
    margin: 0px;
}

.link-style1 a, .link-style1 span
{
    display: block;
    height: 48px;
    margin-right: -1px;
    padding: 0px 0px 0px 20px;
    background: #434343;
    line-height: 48px;
    letter-spacing: -1px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #FFFFFF;
    white-space: nowrap;
    overflow: visible;
    background-image: url(/images/link-style-pointer-mask.png);
    background-repeat: no-repeat;
    background-position: right center;
}

.link-style1 a:hover {
    text-decoration: underline;
}

/** LINK STYLE 2 */

.link-style2 {
    display: block;
    height: 63px;
    margin: 0px;
}

.link-style2 span {
    display: block;
    height: 48px;
    margin-right: -1px;
    padding: 0px 0px 0px 20px;
    background: #95C79A;
    line-height: 48px;
    letter-spacing: -1px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #FFFFFF;
    background-image: url(/images/link-style-pointer-mask.png);
    background-repeat: no-repeat;
    background-position: right center;
}

.link-style2 a {
    display: block;
    height: 63px;
    background: url(/images/link-style2-bottom-bg.png) no-repeat left bottom;
}

.link-style2 a:hover {
    text-decoration: underline;
}

/** LINK STYLE 3 */

.link-style3 {
    display: block;
    height: 63px;
    margin: 30px 0px 0px 0px;

}

.link-style3 a {
    display: block;
    height: 63px;
    background: url(/images/link-style2-bottom-bg.png) no-repeat left bottom;
}

.link-style3 span {
    display: block;
    height: 48px;
    margin-right: -1px;
    padding: 0px 0px 0px 20px;
    background: #59805d; /* 95C79A  */
    line-height: 48px;
    letter-spacing: -1px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #FFFFFF;
    background-image: url(/images/link-style-pointer-mask.png);
    background-repeat: no-repeat;
    background-position: right top;
}

/** LINK STYLE 4 */

.link-style4 {
    display: inline-block;
    height: 63px;
    margin: 10px 15px 0px 0px;
}

.link-style4 a {
    display: inline-block;
    height: 63px;
    background: url(/images/link-style4-bottom-bg.png) no-repeat left bottom;
}

.link-style4 span {
    display: inline-block;
    height: 48px;
    margin-right: -1px;
    line-height: 48px;
    padding: 0px 30px 0px 20px;
    background: #59805d;
    letter-spacing: -1px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #FFFFFF;
    background-image: url(/images/link-style-pointer-mask.png);
    background-repeat: no-repeat;
    background-position: right center;
}

.link-style4 span:hover {
    text-decoration: underline;
}

/** LINK STYLE 5 */

.link-style5 {
    display: block;
    height: 63px;
    margin: 10px 0px 0px 0px;
}

.link-style5 a {
    display: block;
    height: 63px;
    background: url(/images/link-style5-bottom-bg.png) no-repeat left bottom;
    letter-spacing: -1px;
    text-decoration: none;
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    color: #FFFFFF;
}

.link-style5 a:hover {
    text-decoration: underline;
}

.link-style5 span {
    display: block;
    height: 48px;
    margin-right: -1px;
    padding: 0px 20px 0px 20px;
    background: #808080;
    line-height: 48px;
    background-image: url(/images/link-style-pointer-mask.png);
    background-repeat: no-repeat;
    background-position: right center;
}

/** LINK ALIGNMENT STYLE */

.link-alignleft {
    float: left;
}

.link-alignright {
}

/** LIST STYLE 1 */

ul.style1 {
    margin: 0px;
    padding: 10px 0px 0px 0px;
    list-style: none;
}

ul.style1 li {
    padding: 0px 0px 15px 0px;
}

/** SLIDESHOW */

#slider {
    margin: 0 auto;
    width: 1000px;
    height: 355px;
    position: relative;
}

#slider .caption {
    background: rgba(51, 51, 51, 0.7);
    display: block;
    font-family: 'Maven Pro', sans-serif;
    font-weight: 300;
    height: 9%;
    width: 100%;
    padding-left: 10px;
    position: absolute;
    bottom: 0;
}

#slider .caption h2 {
    color: white;
    letter-spacing: -1px;
    font-size: 1.8em;
    vertical-align: bottom;
    margin: 0;
}

/** BOX 1 */

#box1 {
    overflow: hidden;
    padding-bottom: 40px;
    border-bottom: 1px solid #CCCCCC;
}

#box1 .link-style3 {
    display: inline-block;
    margin: 20px 0px 0px 0px;
}

#box1 .link-style3 span {
    padding-right: 20px;
}

/** BOX 2 */

#box2 {
    overflow: hidden;
    padding: 40px 0px;
    border-bottom: 1px solid #CCCCCC;
}

/** BOX 3 */

#box3 {
    overflow: hidden;
    padding-top: 40px;
}

.hvlog {
    display: inline-block;
    *display:inline; *zoom:1; *padding-bottom: 28px;
}

.hvlog .playContainer {
    position: absolute;
    top: 50%;
    left: 0; right: 0;
    text-align: center;
    z-index: 1;
}

.hvlog .playButton {
    background-color: rgb(20,20,20);
    cursor: pointer;
    font-weight: bold;
    font-size: 1.25em;
    opacity: .8;
    filter: alpha(opacity=80);
    -moz-border-radius: 1em;
    -webkit-border-radius: 1em;
/*  zoom: 100%; */
    padding: .5em 1em;
    color: white;
    margin-left: auto;
    margin-right: auto;
}

iframe[src*="youtube"] { width: 100%; max-width: 100%; height: auto; aspect-ratio: 16 / 9; }

#wide-content iframe[src*="youtube"] {
    width: 48%;
    max-width: 48%;
    height: auto;
    aspect-ratio: 16 / 9;
    margin: .25% 1%;
}

/* ===== RESPONSIVE OVERRIDES (append at end) ===== */

img { max-width: 100%; }

/* Tablet and small laptop: make the fixed 1000px boxes fluid */
@media (max-width: 1040px) {
    .container, #page, .homepage #page, #two-column1, #two-column2,
    #four-column-content, #footer-content, #contact, #slider {
        width: auto;
        max-width: 1000px;
    }
    .homepage #page { padding-left: 15px; padding-right: 15px; }
    #page, #two-column1, #two-column2, #four-column-content, #footer-content {
        padding-left: 15px;
        padding-right: 15px;
    }
}

/* Phone and small tablet: stack everything */
@media (max-width: 800px) {
    body { font-size: 16px; }
    
    /* Header and menu */
    #header { height: auto; overflow: visible; padding-bottom: 10px; }
    #wrapper { background-image: none; }
    #logo { float: none; height: auto; margin: 0; padding-top: 27px; text-align: center;}
    #logo h1 { height: auto; }
    #logo h1 a { height: auto; }
    #menu-wrapper { float: none; padding-top: 0; }
    #menu { height: auto; line-height: 1.2; letter-spacing: 0; text-align: center; font-size: .8em; }
    #menu a { height: auto; }
    #menu span { height: auto; padding: 10px 12px; }

    /* Columns: stack, drop the divider borders */
    #content, .two-column2 #content, #wide-content,
    #sidebar, .two-column2 #sidebar,
    #two-column1 #colA, #two-column1 #colB,
    #two-column2 #colC, #two-column2 #colD,
    #four-column-content #fbox1, #four-column-content #fbox2,
    #four-column-content #fbox3, #four-column-content #fbox4,
    #footer-content #column1, #footer-content #column2, #footer-content #column3 {
        float: none;
        width: auto;
        padding-left: 0;
        padding-right: 0;
        border-left: none;
        border-right: none;
        margin-bottom: 20px;
    }
    
    #two-column1 {
        background: none;
    }

    /* Headings: smaller, less cramped */
    #content h2, #wide-content h2, #two-column1 #colA h2,
    #sidebar h2, #two-column1 #colB h2, #four-column-content h2 {
        font-size: 26px;
        letter-spacing: -1px;
    }

    /* Images and video */
    #page-wrapper img { height: auto; }
    img.alignleft, img.alignright { float: none; display: block; margin: 10px auto; }
    iframe[src*="youtube"] { width: 100%; max-width: 100%; height: auto; aspect-ratio: 16 / 9; }
    #wide-content iframe[src*="youtube"] {
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        margin: 1% 0;
    }
    
    #sidebar {
        padding-top: 0;
    }
    
    #sidebar .image-block {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 2%;
    }
    
    #sidebar .image-block img {
        width: 30%;
    }
    
    /* Slideshow: see the note below */
    #banner-wrapper, #banner { height: auto; }
    #slider { width: 100%; height: auto; }
    
    /* Fixed contact bar */
    #contact-wrapper { height: auto; min-height: 50px; }
    #contact { width: auto; padding: 4px 5px 2px 5px; }
    
    #contact .link3, #contact .link4 {
        display: none;
    }
    
    #slider .caption h2 {
        font-size: .6em;
        letter-spacing: 0px;
    }
    
    /* Footer */
    #footer { height: auto; }
    #footer p { padding: 20px 15px; }
}
