/* Frame and common layouts */
body { margin: 0px; }
div#frame { position: relative; width: 100%; margin: auto; }
div.center-wide { position: relative; max-width: 900px; margin: auto; }

div.clear { clear: both; }

/* Header */
div#background-top { position: absolute; width: 100%; top: 0px; height: 20px; }
div#background-header { position: absolute; width: 100%; top: 10px; height: 264px; }
div#background-header-home { position: absolute; width: 100%; top: 10px; height: 468px; }

div#header { position: relative; z-index: 200; border-top: 1pt solid white; }
div#header-logo { position: absolute; left: 20px; top: 3px; width: 400px; height: 70px; overflow: hidden; }

div#header-menu { position: relative; margin-top: 70px; height: 36px; z-index: 200; padding-top: 0px; border-top: solid #858585 3px; }
div#header-menu.footer { margin-top: 0px; }
div#header-menu ul { position: relative; z-index: 200; list-style: none; margin: 0px; width: 100%; padding-left: 0px; margin-top: -3px; }
div#header-menu li { position: relative; z-index: 200; float: left; margin-top: -3px;  }
div#header-menu li:FIRST-CHILD { padding-left: 6px; }
div#header-menu li div { position: relative; display: inline-block; }
div#header-menu li a { display: inline-block; padding-bottom: 12px; padding-top: 7px; padding-bottom: 5px; padding-left: 15px; padding-right: 15px; }
div#header-menu p { margin: 0px; }

div#header-menu li ul { display: none; position: absolute; z-index: 200; }
div#header-menu li:hover ul { display: block; }
div#header-menu li div.cms-focus ul { display: block; }
div#header-menu li div.mce-edit-focus ul { display: block; }
div#header-menu li div.cms-focus ul br { display: none; }
div#header-menu li div.mce-edit-focus ul br { display: none; }


div#header-menu li ul li { display: block; float: none; padding: 0px !important; }
div#header-menu li ul li a { display: block; }

div#mobile-menu { display: none; }
div#mobile-gallery-header { display: none; }

img.header-image { display: block; width: 100%; }

/* Styles */
div.product-block a { color: black; text-decoration: none; }
div.product-block a:hover { text-decoration: underline; }

/* Home Page */
div#home-carousel { height: 372px; }
div#home-carousel-pager { position: absolute; right: 20px; top: 445px; z-index: 501; margin-left: 20px; font-size: 30pt; line-height: 20px; }
div#home-carousel-pager span { margin-left: 5px; }
div#home-carousel div.carousel-item { position: relative; display: none; width: 100%; }
div#home-carousel img { display: block; width: 100%; }
div#home-carousel div.home-carousel-message { position: absolute; left: 40px; bottom: 40px; }
div#home-carousel div.home-carousel-message-background { position: absolute; width: 100%; height: 100%; }
div#home-carousel div.home-carousel-message-content { padding: 20px; position: relative; }

div.column-66 { display: inline-block; width: 63%; vertical-align: top; }
div.column-33 { display: inline-block; vertical-align: top; margin-left: 20px; }
div.address p { line-height: 180%; margin: 0px; }

div.product-blocks {  }
div.product-block { width: 25%; display: inline-block; vertical-align: top; }
div.product-block-img-wrapper { padding-top: 50%; position: relative; overflow: hidden; }
div.product-block-img-wrapper img { width: 100%; height: auto; position: absolute; top: 0px; }
div.product-block-text { padding: 10px; }

div.team-blocks { width: 100%; display: flex; flex-flow: row wrap; }
div.team-block { width: 25%; overflow: hidden; position: relative;}
div.team-block img { object-fit: cover; width: 100%; height: 100%; }
div.team-block-text { padding: 50px; }

div.team-block-stretch { display: none; }

div.team-block div.video-block-text { border-left: solid #14A1D8 3px; background: black; opacity: 0.9;
    position: absolute; bottom: 30px; left: 30px; max-width: 90%; }

div.video-block-text p {
    color: white; z-index: 130; margin: 15px 40px; font-size: 12pt; font-family: "source_sans_proregular", sans-serif; font-weight: normal;
}

div.column-stay-connected { display: inline-block; width: 200px; vertical-align: top; margin-left: 35px; }
div.column-stay-connected p { margin: 0px; }
div.column-stay-connected input[type="text"] { width: 170px; margin-top: 10px; }
div.column-stay-connected textarea { width: 168px; margin-top: 10px; height: 60px; }
div.column-stay-connected input[type="image"] { margin-top: 10px; }

div.contact-form { display: inline-block; min-width: 312px; width: 47%; vertical-align: top; height: 540px; }
div.contact-form input[type="text"] { amin-width: 402px; width: 96%; margin-top: 10px; }
div.contact-form textarea {  amin-width: 402px; width: 96%; margin-top: 10px; height: 70px; }
div.contact-form input[type="image"] { display: inline-block; float: right; }
div.contact-form label { display: block; }

div.contact-map { display: inline-block; min-width: 400px; width: 45%; margin-left: 10px !important; vertical-align: top; height: 470px; }
div.contact-map p { margin: 0px; }

/* Body */

div#body { padding: 20px 30px 30px 30px; }
div.content-block { padding: 20px 20px 20px 20px; margin: 0px 0px 0px 0px; position: relative;  }
div.inner-block { padding: 10px 10px 10px 10px; margin: 0px 0px 0px 0px;  }

div.section-heading { margin-top: 20px; margin-bottom: 20px; }
div.section-heading-left { display: inline-block; padding: 6px 25px 7px 15px; margin-left: -30px; }
div.section-heading-left-home { padding-left: 15px; margin-left: 0px; }
div.section-heading-right { float: right; padding-top: 8px; padding-right: 15px; }
div.section-heading-right p { margin: 0px; }
div.section-heading-breadcrumb { float: right; padding-top: 8px; }
div.section-heading-breadcrumb p { margin: 0px; }

/* Gallery Section */
ul.gallery-sections { display: inline-block; vertical-align: top; width: 290px; margin: 0px 0px 0px 5px; padding: 0px; list-style: none; background: #bcbdbf;  }

ul.gallery-sections li { margin: 0px; padding: 0px; }
ul.gallery-sections li.selected { background: #14a1d9; }
ul.gallery-sections p { margin: 0px; padding: 6px 0px 3px 5px;; }
ul.gallery-sections a { color: #FFFFFF; text-decoration: none; font-weight: bold; font-size: 12pt; }
ul.gallery-categories { display: inline-block; width: 290px; margin: 0px; padding: 0px; list-style: none; background: #FAFAFA; }
ul.gallery-categories li { border-top: 1pt solid gray;  }
ul.gallery-categories li:FIRST-CHILD { border-top: 0pt solid #bcbdbf; }
ul.gallery-categories p { margin: 0px; padding: 0px; }
ul.gallery-categories a { display: block; padding: 3px 0px 2px 25px; color: #80848d; text-decoration: none; font-weight: normal; }
ul.gallery-categories a:hover { background: #e0e0e0; }
ul.gallery-categories li.selected a { background: #e0e0e0;  }

div#gallery-images { position: absolute; left: 310px; right: 10px; bottom: 0px; height: 98%; overflow: scroll; }
div.gallery-category { display: none; position: absolute; width: 100%; height: 100%;
    display: flex;  flex-direction: column; flex-wrap: wrap;

}
div.gallery-image-wrapper { position: relative; width: 258px; aheight: 195px; overflow: hidden; display: inline-block;
    aborder: 4pt solid #f1eff0; abackground: #f1eff0; margin-left: 25px; vertical-align: top;
    margin-bottom: 5px;
}
div#gallery-images img { width: 258px; }
div.gallery-image-wrapper p { margin: 0px !important; font-style: italic; line-height: 120%; text-align: center; }



/* Footer */
div#footer { padding: 2px 25px 2px 25px; height: 150px; }
div#footer-copyright {  }
div#footer-menu { float: right;  }
div#footer-menu p { margin: 0px; }
div#footer-menu img { vertical-align: middle; }

div#header-menu.footer { border-bottom: solid #858585 3px; }
div#header-menu.footer ul { border: none !important; }
div#header-menu.footer div.center-wide { margin-bottom: 6px; }
div#header-menu.footer { height: auto; }