html, body { color: #333; font-family: "Roboto", sans-serif; -webkit-font-smoothing: antialiased; height: 100%; width: 100%; }
.container { height: 100%; padding: 0; width: 100%; }

/* Links */
a { transition: background-color .2s, color .2s; }
a:hover,
a:focus { text-decoration: none; }

/* Headers */
h1 { font-size: 3.3em; margin: 30px 0 22px; }
h2 { font-size: 2.2em; margin: 12px 0 0; }
h3 { font-size: 1.8em; margin: 28px 0 0; }
h4 { font-size: 1.6em; margin: 28px 0 0; }
h5 { font-size: 1.4em; margin: 26px 0 0; }
h6 { font-size: 1.3em; margin: 26px 0 0; }

/* Paragraphs & Lists */
p { line-height: 1.5em; margin: 16px 0 6px; }
ul, ol { margin: 16px 0 10px; }
li {  line-height: 1.4em; margin-bottom: 8px; }

/* 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: #DA1020; border-radius: 2px; border: 0; color: #fff; letter-spacing: .05em; margin-top: 14px; padding: 4px 16px; transition: background-color .2s; margin-bottom: 25px;}
.button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover { background-color: #690101; color: #fff;}

#form-area { background-color: rgba(0,0,0,.8); height: 100%; padding: 12px 30px; position: absolute; right: 0; top: -100%; transition: top .8s; width: 100%; }
#form-area.showing { top: 0; transition: top 1.1s; }
#form-area form { background-color: #eee; box-shadow: 2px 68px 84px 0 #000; height: 80%; margin: -66px auto 0; overflow: auto; padding: 18px 38px 24px; transition: 1.3s ease-in-out .3s; width: 60%; }
#form-area.showing form { box-shadow: 2px 18px 44px 0 #000; margin-top: 36px; }
#form-area form input[type="submit"] { float: left; font-size: 1.2em; margin-bottom: 18px; }

#thank-you { background-color: #fff; border: 2px solid #23255B; border-radius: 8px; box-shadow: 3px 8px 24px 0 #444; padding: 6px 34px 6px 26px; position: absolute; top: -264px; transition: top .8s; left: 28px; z-index: 10;}
#thank-you span { cursor: pointer; font-size: 1.4em; line-height: .6em; padding: 8px; position: absolute; right: 0; top: 0; }
#thank-you p { margin-top: 8px; }
#thank-you.showing { top: 250px; }

#buttons { top: 24px; height: 80px; padding: 28px; position: absolute; z-index: 100; }
#buttons button { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: #23255B; border: 0; box-shadow: 0 0 11px -1px #333; color: #fff; cursor: pointer; float: left; font-size: 1em; font-weight: 700; height: 100px; letter-spacing: .07em; line-height: 1.2em; position: absolute; text-align: center; top: 90px; transition: background-color .2s, top .6s ease-in-out 0s; width: 104px;  }
#buttons button:hover { background-color: #00BDE3; }
#buttons button img { display: block; height: 30px; margin: 14px auto 11px; }
#buttons #view-comment-button { left: 125px; transition: background-color .2s, top .6s ease-in-out .15s; }
#buttons #cancel-add-button,
#buttons #cancel-view-button { background-color: #D2451E; left: 28px; top: -150px; transition: background-color .2s, top .6s; }
#buttons #cancel-add-button:hover,
#buttons #cancel-view-button:hover { background-color: #A8353A; }
#buttons #cancel-form-button { background-color: #087482; left: 146px; top: -150px; }
#buttons #cancel-form-button:hover { background-color: #085E69; }
.gm-style-iw-d div { padding: 5px; font-size: 16px; font-weight: 700; text-align: center;}
.gm-style-iw-d div a { background-color: #DA1020; border-radius: 6px; color: #fff; display: block; font-weight: 700; margin: 0 auto; padding: 4px 0; text-align: center; width: 150px; }
.gm-style-iw-d div a:hover { background-color: #690101; color: #333; }
.poi-info-window a:link {color: #333;}

#buttons.adding #add-comment-button,
#buttons.viewing #add-comment-button { top: -150px; transition: background-color .2s, top .6s ease-in-out .15s; }
#buttons.adding #view-comment-button,
#buttons.viewing #view-comment-button { top: -150px; transition: background-color .2s, top .6s ease-in-out 0s; }
#buttons.adding #cancel-add-button { top: 0; transition: background-color .2s, top .8s ease-in-out .4s; }
#buttons.viewing #cancel-view-button { top: 90px; transition: background-color .2s, top .8s ease-in-out .4s; }

/* #crmWebToEntityForm { background: transparent !important; margin-top: 0px!important; max-width: 100% !important; }
#crmWebToEntityForm form { margin: 0; position: relative; }
.zcwf_lblTopBottom .zcwf_title { display: none; }
#crmWebToEntityForm.zcwf_lblTopBottom .zcwf_col_fld input[type=text] { background: #fff !important; border: 1px solid #333 !important; color: #333; display: inline-block; padding: 3px 98px 3px 8px !important; width: 100% !important; }
#crmWebToEntityForm.zcwf_lblTopBottom * { color: #fff; font-family: "Roboto", sans-serif; font-size: 18px; }
#crmWebToEntityForm.zcwf_lblTopBottom .zcwf_col_fld input[type=text], .zcwf_lblTopBottom .zcwf_col_fld textarea {width: 100%!important; padding: 3px 98px 3px 8px!important; ;}

#crmWebToEntityForm input[type="submit"] { background: #DA1020; border: 0; color: #fff; font-weight: 700; font-size: 1.2em; margin: 4px; padding: 6px 14px; transition: 0.2s; }
#crmWebToEntityForm input[type="submit"]:hover { background: #ae0c19; }
#crmWebToEntityForm input[type="reset"] { display: none; }

#crmWebToEntityForm.contact-form.zcwf_lblTopBottom { margin-top: 33px !important; }
#crmWebToEntityForm.zcwf_lblTopBottom * { color: #000; }
#crmWebToEntityForm.contact-form label { color: #000; }
#crmWebToEntityForm.zcwf_lblTopBottom .zcwf_row:nth-of-type(12) { display: none!important; } */


/* Map Specific */
#map-area { height: 100%; overflow: hidden; position: relative; width: 100%; }
#map { height: 100%; width: 100%; }
#flash { background-color: transparent; border-radius: 50%; height: 350px; left: 50%; margin: -195px 0 0 -175px; position: absolute; top: -100%; transition: background-color .3s, height .3s, width .3s, margin .3s, top 0s ease-in-out .3s; width: 350px; }
#flash.go { background-color: rgba(125,0,0,.6); height: 250px; margin: -145px 0 0 -125px; top: 50%; transition: 0s; width: 250px; }

#form-area { background-color: rgba(0,0,0,.8); height: 100%; padding: 12px 30px; position: absolute; right: 0; top: -100%; transition: top .8s; width: 100%; }
#form-area.showing { top: 0; transition: top 1.1s; }
#form-area > div { background-color: #eee; box-shadow: 2px 68px 84px 0 #000; height: 80%; margin: -66px auto 0; overflow: auto; padding: 18px 38px 84px; transition: 1.3s ease-in-out .3s; width: 60%; }
#form-area.showing > div { box-shadow: 2px 18px 44px 0 #000; margin-top: 36px; }

#intro { background: #000; height: 100%; left: 0; min-width: 380px; overflow: auto; padding: 14px 36px 28px 30px; position: absolute; top: 0; transition: left .8s; width: 30%; z-index: 1000; }
#intro.acknowledged { left: -100%; }
#intro h2 { color: #fff; font-size: 2.5em; font-weight: 700; margin-bottom: 18px; }
#intro h2 strong { display: block; }
#intro > div { background: #fff; padding: 6px 24px 14px; }
#intro h3 { font-size: 1.4em; font-weight: 700; }
#intro h3 span { background: #82C341; border-radius: 50%; display: inline-block; height: 18px; margin: -3px 3px 0 0; vertical-align: middle; width: 18px; }
#intro h3:nth-of-type(2) span { background: #F58021; }
#intro > button { background: transparent; border: 0; position: absolute; right: 3px; top: 47%; }
#intro > button img { width: 16px;  }
.ada-element { left: -9999px; position: absolute; }

#legend { position: absolute; right: 210px; text-align: right; top: 10px; }
#legend > button { background: #000; border: 0; color: #fff; font-size: 1.2em; font-weight: 700; padding: 8px 16px; }
#legend ul { background: #fff; box-shadow: 0 3px 8px -3px #aaa; list-style-type: none; margin: 0; opacity: 0; padding: 12px 16px 4px; right: 29999px; text-align: left; transition: 0s; position: absolute;}
#legend ul.showing { opacity: 1; right: 0; transition: right 0s, opacity .3s; width: 200px; }
#legend li { padding-left: 24px; position: relative;  }
#legend li span { background: #F58021; height: 5px; left: 0; position: absolute; top: 7px; width: 16px; }

#legend li:nth-of-type(2) span { background: #C500FF; }
#legend li:nth-of-type(3) span { background: #82C341; }
#legend li:nth-of-type(4) span { background: #00A2C5; }
#legend li:nth-of-type(4) { border-bottom: 1px solid #000; padding-bottom: 5px; }
#legend li:nth-of-type(5) span { background: #00A2C5; height: 10px; left: 4px; top: 4px; width: 10px; }
#legend li:nth-of-type(6) span { background: #000; height: 10px; left: 4px; top: 4px; width: 10px; }

.panel { background: #fff; border: 0; box-shadow: 0 3px 8px -3px #aaa; height: 100%; min-width: 380px; position: absolute; right: -110%; top: 0; transition: right .9s; width: 30%; z-index: 8000;}
.panel.showing { right: 0; }
.panel h2 { background: #F58021; color: #fff; font-size: 1.4em; margin: 0; padding: 12px; text-align: center; }
.panel > div { padding: 2px 26px 18px; }
.panel h3 { border-bottom: 3px solid #F58021; display: inline-block; font-size: 1.3em;}
.panel > button { background: #232425; border: 0; border-radius: 0 14px 14px 0; padding: 8px 12px 8px 8px; position: absolute; right: 100%; top: 47%; transform: rotate(180deg); }
.panel > button img { width: 16px; }

#panel-segment2 h2 { background: #C500FF; }
#panel-segment2 h3 { border-bottom-color: #C500FF; }
#panel-segment3 h2 { background: #82C341; }
#panel-segment3 h3 { border-bottom-color: #82C341; }
#panel-segment4 h2 { background: #00A2C5; }
#panel-segment4 h3 { border-bottom-color: #00A2C5; }

#thank-you { background-color: #fff; border: 2px solid #DA1020; border-radius: 8px; box-shadow: 3px 8px 24px 0 #444; padding: 6px 34px 6px 26px; position: absolute; top: -264px; transition: top .8s; left: 28px; }
#thank-you span { cursor: pointer; font-size: 1.4em; line-height: .6em; padding: 8px; position: absolute; right: 0; top: 0; }
#thank-you p { margin-top: 8px; }
#thank-you.showing { top: 138px; }

#search input { background-color: #fff; border: #DA1020 solid 2px; color: #333; margin: 0; padding: 6px 4px; width: 220px; }
::placeholder { color: #333; }
:-ms-input-placeholder { color: #333; }
::-ms-input-placeholder { color: #333; }
#buttons { top: 14px; height: 80px; padding: 14px; position: absolute; transition: left .8s; z-index: 100; }
#buttons button { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; 
                 background-color: #DA1020; border: 0; box-shadow: 0 0 11px -1px #333; color: #fff; 
                 cursor: pointer; float: left; font-size: 1em; font-weight: 700; height: 80px; 
                 letter-spacing: .07em; line-height: 1.2em; position: absolute; text-align: center; top: 60px; 
                 transition: background-color .2s, top .6s ease-in-out 0s; width: 94px;  }
#buttons button:hover { background-color: #99040f; }
#buttons button img { display: block; height: 24px; margin: 4px auto 4px; }

#buttons #cancel-add-button { background-color: #a00; left: 14px; top: -150px; transition: background-color .2s, top .6s; }
#buttons #cancel-add-button:hover { background-color: #690101; }
#buttons #cancel-form-button { background-color: #6999a9; left: 116px; top: -150px; }
#buttons #cancel-form-button:hover { background-color: #567985; }
.gm-style-iw-d div { padding: 5px; min-width: 300px; font-size: 18px;}
.gm-style-iw-d div a { background-color: #DA1020; border-radius: 6px; color: #fff; display: block; font-weight: 700; margin: 0 auto; padding: 4px 8px; text-align: center;}
.gm-style-iw-d div a:hover { background-color: #a00310; }

#buttons.adding #add-comment-button { top: -150px; transition: background-color .2s, top .6s ease-in-out .15s; }
#buttons.adding #cancel-add-button { top: 60px; transition: background-color .2s, top .8s ease-in-out .4s; }
#buttons.commenting #cancel-form-button { top: 60px; }

/*********************************************/
/****** Media Queries ************************/
/*********************************************/
@media screen and (max-width: 1270px) {
     #form-area > div { margin: -66px 0 0 34%; width: 56%; }   
 }
 
 @media screen and (max-width: 790px) {
  #form-area { padding: 0; }
  #form-area > div { height: 78%; margin: -66px auto 0; padding: 6px 12px 54px; width: 90%; }
  #form-area.showing > div { margin-top: 180px; }
  label { font-size: .8em; margin: 4px 0 1px; }
  input[type="text"],
  textarea { font-size: .9em; }
  #form-area form input[type="submit"] { font-size: .8em; }
  #thank-you { left: 14px; padding: 2px 14px 5px; width: 210px; }
  #thank-you p { font-size: .85em; line-height: 1.2em; }
  #thank-you.showing { top: 74px; }

  #intro { min-width: auto; padding: 12px 36px 22px 20px; width: 86%; }
  #intro h2 { font-size: 1.9em; }
  #intro > div { padding: 2px 18px; }
  #intro h3 { font-size: 1.2em; }

  #legend { right: 58px; top: 71px; }

  .panel { min-width: auto; width: 80%; }

  #search input {width: 165px;}

  #buttons { padding: 0; top: 70px; }
  #buttons button { box-shadow: 0; font-size: .8em; height: 60px; left: 0; line-height: 1.1em; top: 50px; width: 90px; }
  #buttons button img { display: block; height: 16px; margin: 2px auto 5px; }

  #buttons #cancel-form-button { left: 96px; }
  #buttons.adding #cancel-add-button { left: 0; top:50px;}
  #buttons.commenting #cancel-form-button { top:50px;}
  .gm-style-iw-d div { font-size: .85em; padding: 1px; min-width: 0; }
  .gm-style-iw-d div a { font-size: .95em; line-height: 1em; margin-top: 10px; padding: 6px 6px; width: 90%; }
}