/* RESET */
*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html { height: 100%; }

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, textarea,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;

    vertical-align: baseline;
    line-height: 24px;
}

a { line-height: inherit; }

a img {
    border: 0 none;
    line-height: inherit;
}

span { line-height: inherit; }

ul{ list-style: none; }
ul li{list-style-type: none;}

/* eo RESET */



/* Basic Typography */

body {
    color: #595959;
    font-family: "Helvetica Neue", Arial, Helvetica, Verdana, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    vertical-align: baseline;
    font-size: 16px;
    line-height: 24px;
}

/* HEADINGS */
h1,
h2,
h3,
h4,{
    font-weight: bold;
    color: #595959;
    font-family: "Helvetica Neue", Arial, Helvetica, Verdana, sans-serif;
    outline: 0;
}

a,
a:visited {
    color: #2c9ab7;
}

a:hover {
    color: #0c7a97;
}


h1{
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 6px;
}

h2{
    font-size: 26px;
    line-height: 30px;
    margin-bottom: 24px;
}

h3{
    font-size: 26px;
    line-height: 30px;
    margin-bottom: 24px;
}

h4{
    font-size: 18px;
    line-height: 30;
    margin-bottom: 18px;
    font-weight: 500;
}

p{

    font-size: 15px;
    line-height: 24px;
    margin-bottom: 12px;
}

em {font-style:italic;}

p > a,
.button ~ a:not(.button),
.link-underline a:not(.button)
{
    line-height: normal;
    border-bottom: 1px solid #2c9ab7;
}

/** FORMS **/

/* Turn off webkit default styling */
input:not([type="radio"]):not([type="checkbox"]) { -webkit-appearance: none; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }


input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

label,
input,
select,
textarea {
    font-family: "Helvetica Neue", Arial, Helvetica, Verdana, sans-serif;
    font-size: 15px;
    line-height: 18px;
    font-weight: normal;
    width:100%;width:auto; /* reset width for IE */
}

select,
ul.radioCheckboxContainer {
    margin-bottom: 24px;
}

label {
    color: #404040;
    font-weight: bold;
    display: block;
    padding-bottom: 6px;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;

}

label * { line-height: inherit; }

textarea {
    height: auto;
    line-height: 24px;
}

ul.radioCheckboxContainer li label{display:inline-block;}

/* Placeholder styling */
input::-webkit-input-placeholder { opacity: 1; }
input:-moz-placeholder { opacity: 1; }
input::-moz-placeholder { opacity: 1; }
input:-ms-input-placeholder { opacity: 1; }

/* Input default styles */
textarea,
input[type="text"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"]
{
    background-color: #fff;
    border: 2px solid #c9c9c9;
    border-radius: 3px;
    display: inline-block;
    margin: 0 0 24px;
    min-height: 36px;
    min-width: 50px;
    padding: 0 0.4em;
    vertical-align: middle;
    width: 100%;
}
textarea:hover,
input[type="text"]:hover,
input[type="datetime"]:hover,
input[type="datetime-local"]:hover,
input[type="date"]:hover,
input[type="month"]:hover,
input[type="time"]:hover,
input[type="week"]:hover,
input[type="number"]:hover,
input[type="email"]:hover
{
    border-color:#838383;
}

input[type="radio"],
input[type="checkbox"] {
    float: left;
    margin-right: 10px;
}

/* Modal Button default styles */
.button{
    background-color: #5a5a5a;
    border: 0 none;
    border-radius: 3px;
    color: #FFFFFF;
    cursor: pointer;
    display: inline-block;
    font-family: "Helvetica Neue",Arial,Helvetica,Verdana,sans-serif;
    font-size: 13px;
    font-weight: 700;
    height: 36px;
    letter-spacing: 0.01em;
    line-height: 36px;
    margin-right: 0;
    overflow: hidden;
    padding: 0 18px;
    text-align: center;
    vertical-align: middle;
    white-space: normal;
}
.button:hover{
    background-color: #535353;
    color: #FFFFFF;
}

/* Validation Styles */

.field-wrapper .invalid-error {
    top: -1.15384615em;
    max-height: 200px;
}

.field-help {
    color: #959595;
}

.invalid-error {
    display: block;
    color: #db3a1b;
    max-height: 200px;
}

.valid-success {
    color: #72c1b0;
}

.field-help, 
.invalid-error {
    white-space: normal;
    word-wrap: break-word;
    width: 100%;
    letter-spacing: .01em;
    max-width: 550px;
    font-size: .8125em;
    line-height: 1.38461538em;
    font-weight: 700;
    position: relative;
}

textarea.invalid, 
input.invalid {
    border: 2px solid #e85c41;
}

textarea.valid, 
input.valid {
    border: 2px solid #72c1b0;
}


/* Custom Styles for signup fields in popup editor */

/* Date */
.date .date-month {
    width: 45px;
}
.date .date-day {
    width: 45px;
}
.date .date-year {
    width: 60px;
}

/* Birthday */
.birthday .birthday-month {
    width: 45px;
}
.birthday .birthday-day {
    width: 45px;
}
/* Phone */
.phone .phone-area {
    width: 45px;
}
.phone .phone-detail1 {
    width: 45px;
}
.phone .phone-detail2 {
    width: 60px;
}

/* Content styles */
.content__titleDescription, .content__footer {
    /* Break any lines longer than content containers */
    word-wrap: break-word;
}

/* Flash block */
.flash-block {
    display:block;
    clear: both;
}
.flash-block a {
    display:inline-block;
    white-space: nowrap;
}
.flash-info,
.flash-errors,
.flash-success {
    padding:24px 15px 24px 15px;
    margin:15px 15px 24px 15px;
    border-radius: 6px;
    background-color: #ccebf3;
}
.flash-errors {
    background-color: #f8d0c8;
}
.flash-success {
    background-color:#d4ece6;
}

/* Util classes */
.clearfix{
    content: "";
    display: table;
    clear: both;
}

/* Pop-up form success block */
.popup-signup-success {padding: 60px;}
.popup-signup-success h1 {font-weight: bold;}
