/* contact page styles and form overrides go here */

.contact-form {
    width: 100%;
    height: 100%;
    border: 0px solid #000;
    text-align: left;
    padding: 15px;
    min-height: 300px;
    display: block;
}
.contact-form-container .row>div {
    padding: 30px 15px;
}
.contact-form h3 {
    margin-top: -15px;
    margin-bottom: 30px;
}

.contact-page-form {
    background: #E9EEEF;
}

section.contact-map-bottom {
    background: #FFF;
    padding-top: 30px;
}
.contact-map-bottom-image {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 15px;
}

label {
    font-size: 16px;
    line-height: normal;
    color: #000000;
    margin: 0 0 5px;
    padding: 0;
    font-weight: 600;
    display: block;
}
label.checkbox,
label.radio,
.inline-fields label {
    font-weight: 400;
}
label.checkbox,
label.radio {
    margin-bottom: 5px;
}
label.disabled {
    color: #bebfc1;
}
input, textarea, select {
    font-family: 'IBM Plex Mono';
    display: block;
    width: 100%;
    border: solid 2px #282B33;
    margin: 0 0 10px;
    -webkit-transition: all 150ms linear;
    -moz-transition: all 150ms linear;
    -ms-transition: all 150ms linear;
    -o-transition: all 150ms linear;
    transition: all 150ms linear;
    background-color: rgba(222, 222, 222, 0.25);
    padding: 5px 10px;
    line-height: 20px;
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
    outline: solid 4px rgba(255,255,255,0);
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    
    outline-offset: 0px;
    background: #FFF;
}
.radio-row {
    margin: 0 0 30px;
}
.checkbox-row {
    margin: 0 0 30px;
    position: relative;
}
.checkbox-row label.checkbox {
    padding-left: 55px;
}
.checkbox-row label.checkbox span {
    line-height: 1.4em;
}
.checkbox-row label.checkbox>input {
    position: absolute;
    left: 0;
}

select {
    padding: 7px 10px 6px;
    position: relative;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 404.3 404.3" width="15px" height="15pc"><path d="M0 101h404.3l-202 202.2L0 101.2z"/></svg>');
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDQuMyA0MDQuMyIgd2lkdGg9IjE1cHgiIGhlaWdodD0iMTVwYyI+PHBhdGggZD0iTTAgMTAxaDQwNC4zbC0yMDIgMjAyLjJMMCAxMDEuMnoiLz48L3N2Zz4=');
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: 95% 50%;
}
select[multiple] {
    background-image: none;
}
select::-ms-expand {
    display:none;
}
input:disabled, 
textarea:disabled, 
select:disabled {
    border-color: #bebfc1;
    color: #bebfc1;
}
fieldset {
    border: 0;
}
fieldset.inline-fields {
    margin: 0 0 30px;
    padding: 0;
    overflow: visible;
}
fieldset.block-fields {
    margin: 0 0 25px;
    padding: 0;
    overflow: visible;
}
fieldset.inline-fields label {
    float: left;
    overflow: visible;
    width: 50%;
}
fieldset.disabled label {
    color: #bebfc1;
}
div.form-buttons {
    padding-top: 45px;
}
input[type="checkbox"],
input[type="radio"] {
    width: auto;
    display: inline-block;
    margin: 0 15px 0 0;
    padding: 0;
}

label.checkbox,
label.radio {
    margin-bottom: 5px;
    line-height: 40px;
}

label.checkbox input,
label.radio input {
    opacity: 0;
    width: 40px;
    height: 40px;
}

.form-result a {
    font-weight: 600;
    color: #01D7FF;
}

label.checkbox span,
label.radio span {
    display: inline-block;
    position: relative;
}
label.checkbox>input {
    z-index: 2;
    position: relative;
}
label.checkbox span {
    transform: translateY(-12px);
    z-index: 1;
}

label.checkbox span:before,
label.radio span:before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    border: 2px solid #282B33;
    position: absolute;
    top: 50%;
    left: -55px;
    transform: translateY(-50%);
    -webkit-transition: all 150ms linear;
    -moz-transition: all 150ms linear;
    -ms-transition: all 150ms linear;
    -o-transition: all 150ms linear;
    transition: all 150ms linear;
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}

.disabled label.checkbox span:before,
.disabled label.radio span:before,
.disabled label.checkbox span:after,
.disabled label.radio span:after {
    border-color: #bebfc1;
}
.disabled label.checkbox span:after,
.disabled label.radio span:after {
    background-color: #bebfc1;
}

label.checkbox span:after,
label.radio span:after {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-color: #1EB300;
    position: absolute;
    top: 50%;
    left: -47px;
    transform: translateY(-50%);
    opacity: 0;
    -webkit-transition: all 150ms linear;
    -moz-transition: all 150ms linear;
    -ms-transition: all 150ms linear;
    -o-transition: all 150ms linear;
    transition: all 150ms linear;
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}

label.checkbox input:focus ~ span:before,
label.checkbox input:focus ~ span:before,
label.radio input:focus ~ span:before{
    box-shadow: 0 0 0 4px #01D7FF;
}

label.checkbox input:invalid ~ span:before,
label.radio input:invalid ~ span:before{
    box-shadow: 0 0 0 4px #ff0000;
}

label.checkbox input:checked ~ span:after,
label.radio input:checked ~ span:after{
    opacity: 1;
}

label.radio span:before,
label.radio span:after {
    border-radius: 50%;
}

label.checkbox span:after {
    height: 15px;
    width: 25px;
    margin-top: -12px;
    background: transparent;
    border-left: 5px solid #00205b;
    border-bottom: 5px solid #00205b;
    transform: rotate(-45deg);
}



input:valid,
textarea:valid, 
select:valid {
    
}
.validation input:invalid,
.validation textarea:invalid, 
.validation select:invalid {
    /* box-shadow: 0 0 0 4px #ff0000; */
    outline: solid 4px #ff0000;
}
input:focus,
textarea:focus, 
select:focus {
    /* box-shadow: 0 0 0 4px #01D7FF; */
    outline: solid 4px #01D7FF;
}

input[type="submit"] {
    border-radius: 30px;
    border-color: #FFF;
    background: #1EB300;
    color: #FFFFFF;
    font-family: 'IBM Plex Sans';
    font-weight: 600;
    outline: 0 !important;
    box-shadow: 0 0 0 4px #FFF;

    font-size: 18px;
    letter-spacing: 0;
    line-height: 30px;
}
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="submit"]:active {
    box-shadow: 0 0 0 4px #01D7FF;
}

.contact-form input[type="submit"] {
    box-shadow: 0 0 0 4px #E9EEEF;
    border-color: #1EB300;
    display: inline-block;
    width: 250px;
}
.contact-form input[type="submit"]:hover, .contact-form input[type="submit"]:focus, .contact-form input[type="submit"]:active {
    box-shadow: 0 0 0 4px #01D7FF;
}

.event-request input, .event-request textarea, .event-request select {
    background-color: rgba(223,223,223,0.25);
    border: 2px solid #333333;
    margin: 0 0 15px;
}

.event-request label.checkbox span:before, .event-request label.radio span:before {
    background-color: rgba(223,223,223,0.25);
}
.event-request {
    padding-top: 10px;
}
.event-request h2 {
    margin: 0 0 20px;
}
.event-request .notify {
    padding-bottom: 15px;
}

.event-request,
.event-request label,
.event-request input,
.event-request select,
.event-request textarea {
    font-size: 18px;
}
.event-request input,
.event-request select,
.event-request textarea {
    padding: 8px 10px;
}

.contact-form-container,
.contact-form-container label,
.contact-form-container input,
.contact-form-container select,
.contact-form-container textarea {
    font-size: 16px;
}

.download-request input, .download-request textarea, .download-request select {
    background-color: rgba(223,223,223,0.25);
    border: 2px solid #333333;
    margin: 0 0 15px;
}

.download-request label.checkbox span:before, .download-request label.radio span:before {
    background-color: rgba(223,223,223,0.25);
}
.download-request {
    padding-top: 30px;
}
.download-request h2 {
    margin: 0 0 20px;
}
.download-request .notify {
    padding-bottom: 15px;
}

.download-request,
.download-request label,
.download-request input,
.download-request select,
.download-request textarea {
    font-size: 18px;
}
.download-request input,
.download-request select,
.download-request textarea {
    padding: 8px 10px;
}

.radio-form-group.date-pref>label {
    margin-bottom: 0;
}

label.empty-label {
    font-size: 6px;
}


.date-label {
    font-size: 14px;
    line-height: 22px;
    padding-top: 5px;
}

.date-row {
    overflow: auto;
}

.date-label {
    width: 50%;
    float: left;
    position: relative;
    padding-right: 1px;
    font-size: 24px;
    line-height: 24px;
}

.date-label input {
    opacity: 0;
    z-index: 5;
    position: absolute;
}

.date-label strong {}

.date-label .date-wrapper {
    z-index: 6;
    position: relative;
    text-align: center;
    color: #000;
    transition: 300ms all linear;
    padding: 36px 30px;
    background: rgba(223,223,223,0.25);
    font-weight: 300;
    font-family: 'IBM Plex Mono';
    font-size: 18px;
    color: #000000;
    text-align: center;
}

.date-label:hover .date-wrapper {
    color: #000;
}

.date-label input:checked~.date-wrapper {
    background: #1EB300;
    color: #FFF;
}

.date-label input:focus~.date-wrapper {
    /* color: #000; */
}

@media (min-width: 992px) {
    .date-label {
        width: 25%;
    }
}
select._has_error {
    box-shadow: 0 0 0 4px #ff0000;
}


form.unvalidated label.checkbox input:invalid ~ span:before,
form.unvalidated label.radio input:invalid ~ span:before {
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}

.download-request form label.checkbox input:invalid ~ span:before {
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}
.download-request form label.checkbox input:invalid._has_error ~ span:before {
    box-shadow: 0 0 0 4px #ff0000;
}

.contact-page-form form label.checkbox input:invalid ~ span:before {
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}
.contact-page-form form label.checkbox input:invalid._has_error ~ span:before {
    box-shadow: 0 0 0 4px #ff0000;
}
.contact-page-form label.checkbox span:before,
.contact-page-form label.radio span:before {
    background: #FFF;
}

.event-request form label.checkbox input:invalid ~ span:before {
    box-shadow: 0 0 0 4px rgba(255,255,255,0);
}
.event-request form label.checkbox input:invalid._has_error ~ span:before {
    box-shadow: 0 0 0 4px #ff0000;
}

form .date-label .date-wrapper {
    -webkit-transition: box-shadow 150ms linear;
    -moz-transition: box-shadow 150ms linear;
    -ms-transition: box-shadow 150ms linear;
    -o-transition: box-shadow 150ms linear;
    transition: box-shadow 150ms linear;
    box-shadow: inset 0 0 0 4px rgba(255,255,255,0);
}
form .date-label ._error-inner ~ .date-wrapper {
    box-shadow: inset 0 0 0 4px #ff0000;
}



/*ACTIVECAMPAIGN STYLES START*/

/* ._form { font-size:16px; line-height:1.6; font-family:arial, helvetica, sans-serif; margin:0; }
._form * {outline:0;} */
._form_hide { display:none; visibility:hidden; }
._form_show { display:block; visibility:visible; }
._form._form-top {top:0;}
._form._form-bottom {bottom:0;}
._form._form-left {left:0;}
._form._form-right {right:0;}
/* ._form select,
._form input[type="text"],._form input[type="date"],._form textarea { padding:6px; height:auto; border:#979797 1px solid; border-radius:4px; color:#000 !important; font-size:13px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; } */
._form textarea {resize:none;}

/*changed*/
._form .download-btn { margin: -10px 0 0; }

._form ._close-icon { cursor:pointer; background-image:url('https://d226aj4ao1t61q.cloudfront.net/esfkyjh1u_forms-close-dark.png'); background-repeat:no-repeat; background-size:14.2px 14.2px; position:absolute; display:block; top:11px; right:9px; overflow:hidden; width:16.2px; height:16.2px; }
._form ._close-icon:before {position:relative;}
._form ._form-body {margin-bottom:30px;}
._form ._form-image-left { width:150px; float:left; }
._form ._form-content-right {margin-left:164px;}
/* ._form ._form-branding { color:#fff; font-size:10px; clear:both; text-align:left; margin-top:30px; font-weight:100; }
._form ._form-branding ._logo { display:block; width:130px; height:14px; margin-top:6px; background-image:url('https://d226aj4ao1t61q.cloudfront.net/hh9ujqgv5_aclogo_li.png'); background-size:130px auto; background-repeat:no-repeat; }
._form ._form-label,._form ._form_element ._form-label { font-weight:bold; margin-bottom:5px; display:block; }
._form._dark ._form-branding {color:#333;}
._form._dark ._form-branding ._logo {background-image:url('https://d226aj4ao1t61q.cloudfront.net/jftq2c8s_aclogo_dk.png');} */
._form ._form_element { position:relative; margin-bottom:10px; font-size:0; max-width:100%; }
/* ._form ._form_element * {font-size:14px;} */
._form ._form_element._clear { clear:both; width:100%; float:none; }
._form ._form_element._clear:after {clear:left;}
/* ._form ._form_element input[type="text"],._form ._form_element input[type="date"],._form ._form_element select,._form ._form_element textarea:not(.g-recaptcha-response) { display:block; width:100%; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; } */
._form ._field-wrapper {position:relative;}
._form ._inline-style {float:left;}
/* ._form ._inline-style input[type="text"] {width:150px;} */
._form ._inline-style:not(._clear) + ._inline-style:not(._clear) {margin-left:20px;}
._form ._form_element img._form-image {max-width:100%;}
._form ._clear-element {clear:left;}
._form ._full_width {width:100%;}
._form ._form_full_field { display:block; width:100%; margin-bottom:10px; }

/*changed*/
._form input[type="text"]._has_error,._form textarea._has_error { box-shadow: 0 0 0 4px #ff0000; }
._form input[type="checkbox"]._has_error { box-shadow: 0 0 0 4px #ff0000; }

._form ._error { display:none; position:absolute; font-size:13px; z-index:10000001; }
._form ._error._above { padding-bottom:4px; top:-41px; right:0; }
._form ._error._below { padding-top:4px; top:100%; right:0; }
._form ._error._above ._error-arrow { bottom:0; right:15px; border-left:5px solid transparent; border-right:5px solid transparent; border-top:5px solid #f37c7b; }
._form ._error._below ._error-arrow { top:0; right:15px; border-left:5px solid transparent; border-right:5px solid transparent; border-bottom:5px solid #f37c7b; }
._form ._error-inner { display: none; padding:8px 12px; background-color:#f37c7b; font-size:13px; font-family:arial, sans-serif; color:#fff; text-align:center; text-decoration:none; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
._form ._error-inner._form_error { margin-bottom:5px; text-align:left; }
._form ._button-wrapper ._error-inner._form_error {position:static;}
._form ._error-inner._no_arrow {margin-bottom:10px;}
._form ._error-arrow { position:absolute; width:0; height:0; }
._form ._error-html {margin-bottom:10px;}
.pika-single { z-index:10000001 !important; }
@media all and (min-width:320px) and (max-width:667px) { ::-webkit-scrollbar {display:none;}
/* ._form { margin:0; width:100%; min-width:100%; max-width:100%; box-sizing:border-box; }
._form * { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; font-size:1em; } */
._form ._form-content { margin:0; width:100%; }
._form ._form-inner { display:block; min-width:100%; }
._form ._form-title,._form ._inline-style { margin-top:0; margin-right:0; margin-left:0; }
/* ._form ._form-title {font-size:1.2em;}
._form ._form_element { margin:0 0 20px; padding:0; width:100%; }
._form ._form-element,._form ._inline-style,._form input[type="text"],._form label,._form p,._form textarea:not(.g-recaptcha-response) { float:none; display:block; width:100%; }
._form ._row._checkbox-radio label {display:inline;}
._form ._row,._form p,._form label { margin-bottom:0.7em; width:100%; }
._form ._row input[type="checkbox"],._form ._row input[type="radio"] { margin:0 !important; vertical-align:middle !important; }
._form ._row input[type="checkbox"] + span label {display:inline;}
._form ._form-image { max-width:100%; height:auto !important; }
/* ._form input[type="text"] { padding-left:10px; padding-right:10px; font-size:16px; line-height:1.3em; -webkit-appearance:none; }
._form input[type="radio"],._form input[type="checkbox"] { display:inline-block; width:1.3em; height:1.3em; font-size:1em; margin:0 0.3em 0 0; vertical-align:baseline; } */
/* ._form button[type="submit"] { padding:20px; font-size:1.5em; } */
._form ._inline-style { margin:20px 0 0 !important; }
}
._form { position:relative; text-align:left;  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; *zoom:1; border:0px solid #b0b0b0 !important; -moz-border-radius:0px !important; -webkit-border-radius:0px !important; border-radius:0px !important;  }
._form ._form-title { font-size:22px; line-height:22px; font-weight:600; margin-bottom:0; }
._form:before,._form:after { content:" "; display:table; }
._form:after {clear:both;}
._form._inline-style { width:auto; display:inline-block; }
._form._inline-style input[type="text"],._form._inline-style input[type="date"] { padding:10px 12px; }
._form._inline-style button._inline-style { position:relative; top:27px; }
._form._inline-style p {margin:0;}
._form._inline-style ._button-wrapper { position:relative; margin:27px 12.5px 0 20px; }
._form ._form-thank-you { position:relative; left:0; right:0; text-align:center; font-size:18px; }
@media all and (min-width:320px) and (max-width:667px) { ._form._inline-form._inline-style ._inline-style._button-wrapper { margin-top:20px !important; margin-left:0 !important; }
}
/*ACTIVECAMPAIGN STYLES END*/