body, html { background-color: #f0f0f0; font-family: 'Poppins', sans-serif; margin: 0px; min-height: 100%; overflow-x: hidden; padding: 0px; }
a:hover, a:focus { transition: .2s; text-decoration: none; }
.container { padding: 0; width: 91%; }
.row { margin: 0; }
.row > div { padding: 0 1.5% 12px; }

.sr-only {  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0;}

h1,h2,h3,h4,h5,h6 { margin: 0; }
h2 { color: #2d595b; font-size: 40px; font-weight: 300; margin-bottom: 15px; }
h3 { color: #137c7d; font-size: 16px; font-weight: 600; padding-bottom: 10px; }
h4 { background-color: #e4f1f0; color: #2d595b; font-size: 18px; font-weight: 600; margin-bottom: 10px; padding: 8px 8px 8px 10px; }
h4 { background-color: #137c7d; color: #fff; font-size: 18px; font-weight: 600; margin-bottom: 10px; padding: 8px 8px 8px 10px; }
h4.survey { background-color: #8d432d; color: #fff; font-size: 17px; font-weight: 400; margin-bottom: 10px; padding: 8px 8px 8px 10px; }
h5 { border-bottom: 1px solid #8d432d; font-size: 17px; font-weight: 600; line-height: 120%; margin-bottom: 0.5em; }
p { margin-bottom: 1.6rem; }
ul { padding-left: 15px; }
ul li {margin-bottom: 0.5rem; color: #333;}
hr { border-bottom: 1px solid #e5e5e5; margin: 10px 0 12px 0; }
a { color:#2d595b; text-decoration: underline;}
.button { background-color: #2d595b; border-radius: 14px; border: 0; color: #fff; display: inline-block; letter-spacing: .05em; margin-top: 12px; padding: 4px 16px; transition: background-color .2s; }
.button:hover { background-color: #002949; color: #fff; }
.button:focus { color: #fff; }
.sub { font-size: 82.5%; font-weight: 300; text-transform: uppercase; letter-spacing: .75pt; }
.intro { color: #002949; font-size: 110%; font-weight: 400; font-style: italic; margin-bottom: 1rem; }

.brclear { clear: both; }
.border { border: 1px solid #e5e5e5; }

#constructionareas img { border: 0; width: 100%; }
#constructionareas table { background-color: #aeb1a8; border-collapse: collapse; }

/* Forms */
form { margin: 18px 0; }
label { display: block; margin: 10px 0 8px; width: 100%; }
input[type="text"] { margin-bottom: 8px; padding-left: 3px; width: 100%; }
textarea { height: 80px; margin-bottom: 8px; padding: 3px 5px; resize: none; width: 100%; }
input[type="checkbox"],
input[type="radio"] { margin: 0 4px 0 2px; }
input[type="checkbox"] + label,
input[type="radio"] + label { display: inline-block; margin-right: 14px; position: relative; top: -1px; width: auto; }
input[type="submit"],
input[type="reset"] { background-color: #2d595b; border-radius: 14px; border: 0; color: #fff; letter-spacing: .05em; margin-top: 14px; padding: 4px 16px; transition: background-color .2s; }
.button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover { background-color: #002949; }

/* INTERACTIVE MAP 1*/
#interactive-map1 { border: 1px solid #ccc; box-shadow: 0 0 14px -3px #bbb; overflow: hidden; }
#interactive-map1 > div { cursor: grab; left: 0; position: relative; width: 4733px; }
#interactive-map1 > div.grabbing { cursor: grabbing; }
#interactive-map1 > div > img { opacity: 1; width: 100%; }

.rusty { color: #6a3222; }

/* MAIN SCREEN */
div#screen { height: 100%; left: 0%; position: absolute; width: 100%; }
img.logo { display: block; width: 100%; padding: 25px; }

.benefit { background-color: #e4f1f0; border-top: 2px solid #649a98; font-size: 115%; margin: 1em auto 0.5em; padding: 1em; text-align: center; }
.benefiticon { display: block; width: 100%; max-width: 100px; padding-bottom: 0.5em; }

/* LEFT MENU */
#menu { background-color: #595248; float: left; height: 100%; overflow: hidden; padding-bottom: 8px; width: 15%; }
#menu div { background-color: #4f483e; border: 1px solid #595248; border-left: 0; border-right: 0; height: 56%; padding-top:10px; overflow-y: scroll; margin-right: -18px; position: relative; }
#menu ul { list-style-type: none; margin: 0; margin-right:0px; padding-left: 0; position: absolute; width: 100%; }
#menu ul > li { margin-bottom: 5px; width: 100%; }
#menu ul > li > a { color: #fff; display: block; height: 45px; line-height: 43px; padding: 0 7% 0 0; position: relative; width: 100%; }
#menu ul > li > a > i { background-color: #6a3222; color: #fff; font-size: 1.3em; height: 42px; line-height: 42px; margin-top: 4px; margin-right: 4%; padding-left:.5%; position: absolute; text-indent: 6px; transition: background-color .2s, width .15s; width: 32px; }
#menu ul > li > a > i.showing { background-color: #b95a3a; }
#menu ul > li > a > span { display: inline-block; font-size: 0.9em; font-weight: 600; left: 40px; line-height: 17px; padding-top: 5px; position: relative; vertical-align: middle; width: 75%; }
#menu ul > li > a:hover > i { background-color: #b95a3a; width: 85%; }
#menu ul > li > a:hover > i:after { border: 21px solid transparent; border-width: 21px 6px; border-top-color: #4f483e; border-left-color: #4f483e; content: ""; height: 0; position: absolute; left: 100%; transition: border-color .2s; width: 0; }
#menu ul > li > a:hover > i.showing:after { border-top-color: #b95a3a; border-left-color: #b95a3a; }
#menu ul > li > a:hover > span { color: #fff; }
.menuArrow { border: 40px solid transparent; border-top-width: 18px; border-bottom: 18px solid #6a3222; display: block; height: 0; margin: 0 auto; margin-bottom: 15px; transition: border-color .3s; width: 0; }
.menuArrow:hover { border-bottom-color: #b95a3a; }
.menuArrow.bottom-arrow { border-top-color: #6a3222; border-bottom-color: transparent; margin: 0 auto; margin-top: 15px;}
.menuArrow.bottom-arrow:hover { border-top-color: #b95a3a; }
.menuArrow.disabled { border-bottom-color: #ddd; }
.menuArrow.bottom-arrow.disabled { border-bottom-color: transparent; border-top-color: #ddd; }

/* MAIN AREA - RIGHT SIDE */
#mainArea { float: left; height: 100%; overflow: hidden; position: relative; width: 85%; }
#mainArea > img { height: 100%; left: -2%; margin-left: -12%; position: absolute; transition: left .6s, margin-left 1.1s ease-out .5s; width: auto; }
#topArea { position: relative; text-align: center; top: 14px; }
#topArea h1 { color: #2d595b; font-weight: 600; font-size: 1.15em; line-height: 1em; margin-bottom: 10px; margin-top: 5px; }
#topArea ul { line-height: 14px; margin: 0 auto; width: 80%; }
#topArea li { background-color: #2d595b; border-radius: 8px; cursor: pointer; display: inline-block; height: 16px; margin: 0 3px; transition: background-color .2s, height .45s; vertical-align: middle; width: 16px; }
#topArea li:hover { background-color: #b95a3a; transform: scale(1.3); }
#topArea li.showing { background-color: #137f81; height: 22px; }

/* MAIN AREA - NAV ARROWS */
a.arrow { background-color: rgba(89,83,72,.4); color: #fff; font-size: 4em; height: 100%; left: -12px; position: absolute; text-align: center; top: 0; transition: left .275s, right .275s, box-shadow .275s, background-color .275s; width: 7%; z-index: 1; }
a.arrow:after { content: ""; display: inline-block; height: 98%; vertical-align: middle; }
a.arrow:hover { background-color: #2d595b; background-color: rgba(89,83,72,.6); left: 0; }
a.right-arrow { left: auto; right: -12px; }
a.right-arrow:hover { left: auto; right: 0; }
a.arrow:hover ~ img { left: 0; transition: left 1.1s, margin-left 1.1s; }
a.right-arrow:hover ~ img { left: -4%; }

/* SLIDE AREA */
#slides { height: 94%; position: relative; top: 32px; transition: transform .65s; width: 100%; }
#slides > div { height: 90%; left: 0; position: absolute; transition: left 0.8s, transform 0.5s; }
.slide { color: #aaa; float: left; height: 100%; }
.slide > div { box-shadow: 0px 5px 20px 0px rgba(221,223,225,0.75); -webkit-box-shadow: 0px 5px 20px 0px rgba(221,223,225,0.75); -moz-box-shadow: 0px 5px 20px 0px rgba(221,223,225,0.75); background-color: rgba(255,255,255,.94); color: #333; height: 100%; margin: 0 auto; overflow-x: hidden; overflow-y: auto; padding: 36px 3%; width: 80%; } 
.slide img { width: 100%; }
.slide img.icon { width: 100%; max-width: 75px; float: left; margin: 0 10px 10px 0; border: 0; }
.slide img.large { box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); max-width: 85px; float: left; margin: 0 15px 15px 0; }
.slide img.smallicon { width: 100%; max-width: 35px; border: 0; }
table.icontable td { padding: 1em 0 1em 1em; }
.slide img { margin: 0 auto; display: block; width: 100%; transition: box-shadow .3s; }
.slide li { margin-left: 15px; line-height: 1.5; }
.listwrap { margin-left: 75px; }

/* MOBILE MENU */
a#menu-toggle { background-color: #2d595b; color: #fff; display: none; font-size: .75em; height: 60px; left: 20px; overflow: hidden; position: absolute; text-align: center; top: 14px; transition: background-color .25s; width: 60px; }
a#menu-toggle:hover { background-color: #137f81; }
a#menu-toggle span { background-color: #fff; display: block; height: 4px; margin: 7px auto; transition: margin .2s, transform .2s; width: 70%; }
a#menu-toggle.opened span:nth-of-type(1) { margin-top: 28px; transform: rotate(-45deg); }
a#menu-toggle.opened span:nth-of-type(2) { margin-left: 100px; }
a#menu-toggle.opened span:nth-of-type(3) { margin-top: -22px; margin-bottom: 40px; transform: rotate(45deg); }
#menuOffScreen { background-color: rgba(89,83,72,.4); cursor: pointer; display: none; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 2; }

/* COMMENT BUTTON AND AREA*/
#contact { background-color: white; height: 100%; left: 100%; overflow-y: auto; padding: 12px; position: fixed; top: 0; width: 390px; }
.wrapper { width: 85%; margin: 0 auto;}
.wrapper h1 { font-weight: 300; font-family: 'Roboto', sans-serif;}
a#menuOffScreen { background-color: rgba(89,83,72,.4); cursor: pointer; display: none; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 2; }
.closebtn { position: absolute; top: 0; right: 10px; font-size: 40px; margin-left: 50px; color: #137f81;}

button { background: white; border: 0; box-sizing: border-box; top: 15px; right: 85px; overflow: hidden; box-shadow: inset 0 0 0 2px #2d595b; color: #2d595b; font-size: .8em; text-align: center; position: absolute; vertical-align: middle; padding: 5px; }
button::before, button::after { box-sizing: inherit; content: ''; position: absolute; width: 60px; height: 60px;}
button .far {font-size: 3em; padding: 5px 0 2px; }
.draw { transition: color 0.25s;  }
.draw::before, .draw::after { border: 2px solid transparent; width: 0; height: 0;}
.draw::before { top: 0; left: 0;  }
.draw::after { bottom: 0; right: 0;  }
.draw:hover::before, .draw:hover::after { width: 100%; height: 100%;}
.draw:hover::before { transition: width 0.25s ease-out, height 0.25s ease-out 0.25s;}
.meet:hover { color: #137f81; background-color: #fff; }
.meet::after { top: 0; left: 0;}
.meet:hover::before { border-top-color: #137f81; border-right-color: #137f81;}
.meet:hover::after { border-bottom-color: #137f81; border-left-color: #137f81; transition: height 0.25s ease-out, width 0.25s ease-out 0.25s;}

/* LIGHTBOX */
#lightbox { height: 100%; position: fixed; top: -100%; transition: top .85s; width: 100%; z-index: 3; }
#lightbox > span { background-color: rgba(89,83,72,.6); cursor: pointer; height: 100%; position: absolute; top: 0; width: 100%; }
#lightbox > span span { color: #fff; font-size: 3.6em; line-height: .4em; padding: 15px; position: absolute; right: 0; top: 0; z-index: 5; }
#lightbox div { height: 40%; margin: -120px auto 0; height: 80%; overflow-y: auto; position: relative; transform: rotateX(90deg) translateY(-160px); transition: .24s; width: 88%; }
#lightbox img { display: block; width: 100%; }
#lightbox.on { top: 0; }
#lightbox.on div { box-shadow: none; margin-top: 50px; transition: .8s ease-out .32s; transform: rotateX(0deg) translateY(0px); }
.slide img.lightbox { cursor: pointer; margin-bottom: 18px; }

#share-links a { background-color: #e4f1f0; border: 1px solid #137f81; border-radius: 50%; color: #2d595b; display: inline-block; font-size: 1.3em; height: 40px; line-height: 40px; margin-right: 10px; text-align: center; text-decoration: none; width: 40px; }
#share-links a:hover { background-color: #cfe1e0; }
#share-links a span { position: absolute; right: -9999px; top: -9999px; }

/* MEDIA QUERIES */
@media screen and (max-width: 1310px) {
     #menu { width: 20%; }
     #mainArea { width: 80%; }
     #slides > div {height: 148%;} 
     .slide > div { width: 86%; margin: 0 auto; }
     a.arrow { font-size: 3em; left: -8px;}
     a.right-arrow { left: auto; right: -8px; }
     #contact-toggle { right: 80px; }
     
     #interactive-map1 > div { width: 3733px; }
}

@media screen and (max-width: 1030px) {
     #menu { margin-left: -240px; width: 240px; }
     #menu div { height: 64%; }
     #mainArea { width: 100%; }
     img.logo { display: none; }
     #topArea { margin-left: 80px; margin-right: 80px; }
     #topArea h1 { font-size: 1.3em; }
     a#menu-toggle { display: block; }
     #contact-toggle { right: 20px; }
     button { right: 22px; }

     #slides { height: 86%; top: 36px; }
     .slide > div { width: 96%; }
     .slide p { line-height: 20px; }

     a.arrow { background-color: rgba(89,83,72,.5); bottom: 0; height: 8%; top: auto; width: 46%; }
     a.arrow:after { height: 108%; }
}

@media screen and (max-width: 960px) {
     #lightbox img { max-width: 8000%; width: 160%; }
}

@media screen and (max-width: 640px) {
     #slides { height: 80%; top: 85px; }
     .slide img { display:block; margin: 0 auto; }
     #topArea { margin-left: 0; margin-right: 0;  top: 60px; }
     #topArea h1 { font-size: 1.2em; line-height: 1em; margin: 8px auto; width: 94%; }
     #topArea ul { margin-top: 10px; }
     #topArea ul li { height: 14px; width: 14px;}
     #topArea ul li.showing { height: 18px; }

     img.logo { display: block; width: 50%; margin: 0 auto; padding-top: 15px;}
     a#menu-toggle { height: 32px; left: 16px; top: 16px; width: 32px; }
     a#menu-toggle span { margin: 5px auto; }
     a#menu-toggle.opened span:nth-of-type(1) { margin-top: 14px; }
     a#menu-toggle.opened span:nth-of-type(3) { margin-top: -18px; }
     #contact-toggle { font-size: .55em; height: 45px; right: 10px; top: 10px; width: 46px; }
     #contact-toggle .far { font-size: 2.3em; }
     #contact { width: 280px; }

     button { font-size: .7em; padding: 1px 6px 3px; right: 12px; top: 12px; }
     button .far { font-size: 2em; padding: 1px 0 0; }

     li { font-size: 14px; }
     .slide > div { padding: 12px 3%; }
     h2 { font-size: 1.75em; }
     
     #interactive-map1 > div { width: 3033px; }
}

@media screen and (max-width: 530px) {
     a.arrow { height: 44px; line-height: 0px; }
     a.arrow span { font-size: .6em; }
     #slides { height: 82.5%; } 
     #lightbox img { width: 250%; }
}

@media screen and (max-height: 715px) {
     #slides { height: 86%; }
}

@media screen and (max-height: 640px) {
     #share-links a { font-size: 1.1em; height: 32px; line-height: 32px; margin-right: 6px; width: 32px; }
}

@media screen and (max-height: 595px) {
     #topArea h1, div#topArea ul { display: inline-block; margin: 0 14px; vertical-align: middle; }
     #topArea h1 { margin-bottom: 4px; }
     
     a#menu-toggle { height: 32px; left: 16px; top: 16px; width: 32px; }
     a#menu-toggle span { margin: 5px auto; }
     a#menu-toggle.opened span:nth-of-type(1) { margin-top: 14px; }
     a#menu-toggle.opened span:nth-of-type(3) { margin-top: -18px; }
     #contact-toggle { font-size: .55em; height: 45px; top: 10px; width: 46px; }
     #contact-toggle i { font-size: 2.5em; }
     a.arrow { font-size: 2.5em; }
}

@media screen and (max-height: 560px) {
     #topArea h1 { font-size: 1.1em !important; font-weight: 600; margin-bottom: 6px; }
     #slides { height: 55%; }
     .slide img.icon {float: none; display: block;}
}
