/*--- General ---*/

.clearfix:after, div.mj_accordion_item > div:after {
    display: block;
    clear: both;
    content: "";
}

.recaptchatable, #recaptcha_area tr, #recaptcha_area td, #recaptcha_area th {
    line-height: 0 !important;
}

#recaptcha_area input {
    height: auto;
    display: inline;
}

.logo:before, .logo:after {
    background: none;
}

.widgets .widget-pages ul {
    padding-bottom: 0;
}

.section-secondary .article h1, .section-secondary .article h2,
.section-secondary .article h3, .section-secondary .article h4,
.section-secondary .article h5, .section-secondary .article h6 {
    color: #2e2e2e;
}

.section-development .section-content-entry .list-topic {
    left: 4px;
}

.section-development .section-image img {
    box-shadow: 0 2px 6px rgba(0, 0, 1, 0.08);
}

.search .search-btn a {
    text-decoration: none;
}

.paddingtop30px {
    padding-top: 30px;
}

body.compliancetrackerSection #activityForm img {
    width: auto;
}

ul.knowledgeList li.listItem {
    padding-bottom: 30px;
    list-style: none;
}

p.tags, p.tags > a {
    font-size: 0.9em;
}

p.tags > a {
    display: inline-block;
    margin-right: 5px;
}

#branch-partners a {
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 15px;
}

#branch-partners a img {
    max-width: 235px !important;
}

.cpd_title {
    margin-bottom: 20px !important;
}

.image-text-overlay h2 {
    position: absolute;
    bottom: 2%;
    left: 0;
    font-size: 20px;
}

.image-text-overlay h2 span {
    color: white;
    background: rgba(0, 0, 0, 0.7);
    padding: 10px;
}

.image-text-overlay a {
    text-decoration: none;
}

#myMembershipTabs a:after {
    background: none;
}

#myMembershipTabs fieldset ul.resetAll, #myMembershipTabs li.infoFormFieldLi p {
    margin-bottom: 0;
}

/*--- Membership ---*/

body.membershipSection .section-secondary .article ul li:before {
    background: none;
}

body.membershipSection .section-secondary .article ul li,
body.membershipSection #signupForm ol,
body.compliancetrackerSection #activityForm ol,
.section-secondary .article #login-form ol {
    padding-left: 0;
}

body.membershipSection .section-secondary .article ol li:before,
body.compliancetrackerSection #activityForm ol li:before,
#login-form ol li:before {
    content: none;
}

body.membershipSection #signupForm li {
    margin-bottom: 10px;
}

.membershipList li, .membershipSignUpFormErrorMessage {
    padding-bottom: 30px;
}

.membershipSignUpFormErrorMessage {
    color: #ff0000;
}

body.membershipinformationSection .article-secondary a:before {
    background: none;
}

body.membershipinformationSection .article-secondary a {
    color: inherit;
}

body.membershipinformationSection .article-secondary:hover a {
    webkit-transform: scale(1);
    -ms-transform: scale(1);
        transform: scale(1);
}

/*--- Files List ---*/

.file_size {
    color: #8e9599;
    font-size: 15px;
    margin-left: 5px;
}

.section-secondary .article ul.files_list a:after {
    background: none;
}

ul.files_list a {
    border: 4px solid #ffe500;
    border-radius: 1px;
    background: #fff;
    font-size: 14px;
    color: #2e2e2e;
    height: 56px;
    padding-left: 20px;
    padding-right: 20px;
    transition: all .2s;
    text-decoration: none;
    line-height: 48px;
    font-weight: 500;
    letter-spacing: 0.02em;
}

ul.files_list a:hover {
    background: #ffe500;
}

.section-secondary .article ul.files_list img {
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 5px;
}

.article-secondary a.btn:before {
    background: none !important;
}

.section-aside a.btn {
    color: #fff !important;
}

.section-aside a.btn:hover {
    color: #2e2e2e !important;
}

/*--- MJ Accordion ---*/

.section-secondary .article ul.mj_accordion li:before,
.section-secondary .article ul.files_list li:before {
    left: 0;
    background: none;
}

.section-secondary .article ul.mj_accordion li,
.section-secondary .article ul.files_list li {
    padding-left: 0;
}

.mj_accordion .mj_accordion_item {
    padding: 25px !important;
    color: #009bdf !important;
    font-size: 15px !important;
    font-weight: 500;
    letter-spacing: -0.03em;
    background: #fcfcfc !important;
    border: 4px solid #f2f2f2 !important;
}

.mj_accordion .mj_accordion_content {
    border: none !important;
    padding: 40px 25px !important;
}

a.mj_accordion_trigger_close {
    position: absolute !important;
    text-decoration: none !important;
    left: auto !important;
    right: 1.6em !important;
}

a.mj_accordion_trigger_close:before, a.mj_accordion_trigger_close:after {
    background: none !important;
}

.mj_accordion_item p {
    margin-bottom: 0 !important;
    float: left;
}

.mj_accordion_item img {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-right: 20px !important;
}

.mj_accordion_item p:last-child {
    padding-top: 1.25em;
}

/*--- Forms (including Search Directory) ---*/

fieldset {
    border: none;
}

.pagination {
    padding-top: 1.67em;
    max-width: 1000px;
}

.pagination ul#alphabetRibbonList {
    display: block;
}

ul#alphabetRibbonList {
    padding-left: 40px;
}

ul#alphabetRibbonList li {
    list-style: none;
    float: left;
    padding: 0;
    background: none;
    text-align: center;
    width: 3.5%;
}

@media (max-width: 479px) {
    ul#alphabetRibbonList li {
        width: 10.5%;
    }
}

ul#alphabetRibbonList li a {
    display: block;
    padding: 5px 0;
    text-decoration: none;
}

ul#alphabetRibbonList li a:hover, ul#alphabetRibbonList li.on a {
    background: #2e2e2e;
    color: #fff;
}

#info_form fieldset.receive_email legend, .parent_category, #passwordForm legend,
#alphabetRibbonList, #li_c_EmailType legend,
#li_c_EmailType label.formFieldLabel, table.cart_table tr:first-child {
    display: none;
}

/*
#searchDirectory ol li {
    list-style: none;
}

#searchDirectory li {
    margin-bottom: 10px;
    padding-bottom: 10px;
}

#searchDirectory label {
    display: block;
    width: 80px;
    float: left;
    margin-right: 30px;
}
*/

.form-controls .input_medium_off, .form-controls .input_medium_on {
    border: 1px solid #f7f7f7;
    background: #f7f7f7;
    border-radius: 0;
    color: #aab1b3;
    font-size: 14px;
    padding: 20px 22px;
    width: 100%;
    margin-right: 20px;
    height: 56px;
}

.custom-selectbox > select {
    text-decoration: none;
    border: 1px solid #f7f7f7;
    display: block;
    padding: 10px 15px;
    width: 95%;
    height: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 479px) {
    .custom-selectbox > select {
        margin-left: 15px;
        width: 90%;
    }
}

.form-search-items .form-row {
    padding: 0 40px 10px 40px;
}

#search-errors {
    padding-left: 50px;
}

#search-errors li, .eventsList li {
    list-style: none;
}

.form-search-items .form-col-1of5 {
    width: 21.5%;
}

.form-search-items .form-text-fields {
    width: 13.5%;
}

.form-search-items label {
    color: #8e9599;
    display: inline-block;
    margin-bottom: 10px;
}

.sbFormButtonsLeft .sbButton {
    float: left;
    margin-right: 15px !important;
}

.sbFormButtonsRight button[type="submit"] {
    margin-right: 10px !important;
}

div.search_form legend {
    padding-bottom: 20px;
}

div.search_form #search_terms, div.search_form #search_order {
    margin-top: 10px;
    margin-bottom: 10px;
}

#login-form label {
    display: inline-block;
    width: 80px;
}

#login-form ol li, #passwordForm ol li, #info_form label, #activityForm li,
#my_form li, #signupForm li, #loginFormOl li {
    padding-top: 10px;
    padding-bottom: 5px;
    list-style: none;
}

#login-form ol li:last-child {
    padding-bottom: 0;
}

#passwordForm label {
    display: inline-block;
    width: 120px;
}

#passwordForm ol li {
    list-style: none;
}

#info_form table {
    margin-bottom: 0;
    border: 0;
}

#info_form table tr, #info_form table td {
    padding-left: 0;
    background: none;
}

#info_form table h3 {
    margin-bottom: 0;
}

#info_form input[type="text"], #info_form textarea {
    width: 96%;
    background-color: #fff;
    border: 1px solid #cccccc;
    border-radius: 2px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
    transition: all linear 0.2s;
    padding: 10px;
}

#form_info_buttons td {
    padding: 0px;
}

fieldset.receive_email {
    margin-bottom: 20px;
}

fieldset.receive_email label {
    width: 240px !important;
}

fieldset.receive_email label span {
    display: inline-block;
    padding-left: 5px;
}

.popup-avatar img {
    display: inline;
    height: 100%;
    width: auto;
}

.image-crop {
    width: 100px;
    height: 100px;
    position: relative;
    overflow: hidden;
    border-radius: 50%;
}

.col-fullwidth {
    width: 100%;
}

#loginFormOl {
    padding-left: 0;
}

#infoFormFieldLi169 > fieldset > ul {
    margin-bottom: 0;
}

.section-secondary .article ol.form img {
    width: inherit;
}

/* --- Partners ---*/

.list-partners li {
    margin-top: 30px;
    margin-right: 60px;
}

/*
#tab1 > ul.list-partners > li > a > img {
    width: 148px;
    height: 91px;
}
*/

/*--- Branches ---*/

body.branchesSection section.section-search.section-secondary div.section-content {
    float: none;
}

/* --- Site Map ---*/

ul.sitemap_level1 li a {
    font-weight: bold;
}

ul.sitemap_level2 li a, ul.sitemap_level3 li {
    font-weight: normal;
}

ul.sitemap_level2 li, ul.sitemap_level3 li {
    margin-left: 15px;
}

/*--- Event ---*/

.article .eventsCalendarMonthSelectorTable {
    border: 0;
}

.article .eventsCalendarMonthSelectorTable tr {
    background: none;
}

.article .eventsCalendarMonthSelectorTable td {
    padding: 0;
}

.article .eventsCalenderHeaderMonthLabel {
    font-size: 1.2em;
    line-height: 1.2em;
    font-weight: bold;
    text-align: center;
}

.article .eventsCalenderHeaderCell {
    padding-left: 0;
    text-align: center;
}

.article .eventsCalenderDayCell {
    height: 60px;
    width: 14.2857%;
    border: 1px solid #ccc;
    vertical-align: top;
    text-align: center;
    padding: 0;
}

.article .eventsCalenderDayNumber {
    text-align: right;
    padding: 5px;
    font-size: 12px;
}

.article .eventsCalendarNextMonthCell {
    text-align: right;
}

.article .eventsCalenderDayOutsideMonth {
    color: #bbb;
}

.article .eventsCalenderCurrentDay {
    background: #ffe500;
}

.article .eventsCalenderDayHasEvents {
    text-align: center;
    margin: 0;
    padding: 0;
}

.article .eventsCalenderDayHasEvents a.eventIcon {
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url(../event-icon.gif) 0 0 no-repeat;
    text-indent: -999em;
    text-align: center;
    margin: 0 auto;
}

#event-category-filters {
    padding-bottom: 30px;
}

#event-category-filters a {
    margin-right: 15px;
}

ul.categoryList li.listItem {
    list-style: none;
}

article table.event-details-table {
    width: auto !important;
    margin-bottom: 20px;
}

article table.event-details-table td {
    font-size: 18px;
}

article table.event-details-table tr:nth-child(odd) {
    background: #fff;
}

.grey-table-cell-background {
    background: #f7f7f7;
}

div.event-speakers {
    margin-top: 2.67em;
    margin-bottom: 2.67em;
}

.event-registration-form {
    margin-top: 2.67em;
    padding-bottom: 2.67em;
    background-color: #c2cacc;
}

.booking-options {
    padding-left: 30px;
}

#regForm label {
    display: inline-block;
    margin-bottom: 20px;
}

#regForm input[type="radio"] {
    margin-right: 10px;
}

#li_c_PositionTitle {
    padding-top: 0 !important;
}

div.timeRemaining {
    margin-bottom: 30px;
}

td.cartButtonsRight {
    text-align: right;
}

/*--- Search ---*/

p.search_returned {
    margin-top: 30px;
}

/* ------------------------------------------------------------ *\
    Button
\* ------------------------------------------------------------ */

.btn, input[type="button"], input[type="submit"],
button.eventsCalendarPreviousMonthButton, button.eventsCalendarNextMonthButton,
#searchButton, .button, div.sbFormButtons button, #cancelButton, #signupButton,
#updateSignupDetailsButton, div.search_form button, #submitBtn,
#addRegistrationButton, #continueBtn, #cancelBtn, button.BackToHome,
#loginSubmitButton {
    display: inline-block;
    vertical-align: middle;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.btn, input[type="button"], input[type="submit"],
button.eventsCalendarPreviousMonthButton, button.eventsCalendarNextMonthButton,
#searchButton, .button, div.sbFormButtons button, #cancelButton, #signupButton,
#updateSignupDetailsButton, div.search_form button, #submitBtn,
#addRegistrationButton, #continueBtn, #cancelBtn, button.BackToHome,
#loginSubmitButton {
    border: 4px solid #ffe500;
    border-radius: 1px;
    background: #fff;
    font-size: 14px;
    color: #2e2e2e !important;
    padding-left: 20px;
    padding-right: 20px;
    transition: all .2s;
    text-decoration: none;
    line-height: 48px;
    font-weight: 500;
    letter-spacing: 0.02em;
}

.btn:hover, input[type="button"]:hover, input[type="submit"]:hover,
button.eventsCalendarPreviousMonthButton:hover,
button.eventsCalendarNextMonthButton:hover, #searchButton:hover, .button:hover,
div.sbFormButtons button:hover, #cancelButton:hover, #signupButton:hover,
#updateSignupDetailsButton:hover, div.search_form button:hover, #submitBtn:hover,
#addRegistrationButton:hover, #continueBtn:hover, #cancelBtn:hover,
button.BackToHome:hover, #loginSubmitButton:hover {
    background: #ffe500;
    color: #2e2e2e !important;
}

.section-secondary .article a.button:after {
    background: none;
}

/* ------------------------------------------------------------ *\
    Tables
\* ------------------------------------------------------------ */

div.recordDetail table#form_info_buttons {
    border: 0;
}

div.recordDetail table#form_info_buttons tr:nth-child(odd) {
    background: none;
}

div.recordDetail table#form_info_buttons tr td:first-child {
    padding: 0;
}

.article-secondary table tr td a:before {
    background: none;
}

.article-secondary table tr td a {
    color: #8e9599;
    font-size: 13px;
}

/* Generic tables */

div.recordDetail table, article table, table#paymentGatewaySampleSchedule,
#scheduledPaymentInvoice table, .membershipSection form[name="my_form"] table {
    border: 4px solid #f2f2f2;
    margin-bottom: 55px;
}

table.cart_table {
    border: 4px solid #f2f2f2;
    margin-bottom: 20px;
}

div.recordDetail table tr th, article table tr th, table.cart_table tr th,
table#paymentGatewaySampleSchedule tr th, #scheduledPaymentInvoice table tr th,
.membershipSection form[name="my_form"] table tr th {
    color: #2e2e2e;
    text-transform: uppercase;
    text-align: left;
    font-weight: 600;
    font-size: 13px;
    padding: 22px 0;
}

div.recordDetail table tr:first-child th, article table tr:first-child th,
table.cart_table tr:first-child,
table#paymentGatewaySampleSchedule tr:first-child th,
#scheduledPaymentInvoice table tr:first-child th,
.membershipSection form[name="my_form"] table tr:first-child th {
    padding: 20px 10px;
}

div.recordDetail table tr td:first-child, article table tr td:first-child,
table.cart_table tr td:first-child,
table#paymentGatewaySampleSchedule td:first-child,
#scheduledPaymentInvoice table td:first-child,
.membershipSection form[name="my_form"] table td:first-child {
    padding-left: 20px;
}

div.recordDetail table tr th:first-child, article table tr th:first-child,
table.cart_table tr th:first-child,
table#paymentGatewaySampleSchedule tr th:first-child,
#scheduledPaymentInvoice table tr th:first-child,
.membershipSection form[name="my_form"] table tr th:first-child {
    padding-left: 20px;
}

div.recordDetail table td, article table td, table.cart_table td,
table#paymentGatewaySampleSchedule td, #scheduledPaymentInvoice table td,
.membershipSection form[name="my_form"] table td {
    font-size: 13px;
    padding: 20px 10px;
    color: #8e9599;
    vertical-align: middle;
}

div.recordDetail table tr:nth-child(odd), article table tr:nth-child(odd),
table.cart_table tr:nth-child(odd),
table#paymentGatewaySampleSchedule tr:nth-child(odd),
#scheduledPaymentInvoice table tr:nth-child(odd),
.membershipSection form[name="my_form"] table tr:nth-child(odd) {
    background: #fcfcfc;
}

div.recordDetail table tr, article table tr, table.cart_table tr,
table#paymentGatewaySampleSchedule tr, #scheduledPaymentInvoice table tr,
.membershipSection form[name="my_form"] table tr {
    border-bottom: 4px solid #f2f2f2;
    padding: 0 20px;
}

div.recordDetail table tr:last-child, article table tr:last-child,
table.cart_table  tr:last-child,
table#paymentGatewaySampleSchedule tr:last-child,
#scheduledPaymentInvoice table tr:last-child,
.membershipSection form[name="my_form"] table tr:last-child {
    border-bottom: 0;
}

.section-secondary .article table td img, article table td img,
table.cart_table td img {
    margin-top: 0;
    margin-bottom: 0;
}

/* Installment Payments */

#MethodSelectionTabs {
    margin-bottom: 30px;
}

#MethodSelectionTabs #CreditCard li {
    margin-bottom: 10px;
}

#MethodSelectionTabs #CreditCard ol {
    list-style: none;
}

#MethodSelectionTabs #CreditCard input[name="CreditCardNumberFull"] {
    width: auto;
}

#MethodSelectionTabs #CreditCard input[name="CreditCardNumberCVV"] {
    width: 34px;
}

#MethodSelectionTabs #CreditCard select[name="CreditCardExpiryMonth"],
#MethodSelectionTabs #CreditCard select[name="CreditCardExpiryYear"] {
    display: inline-block;
    width: auto;
}

#MethodSelectionTabs #CreditCard li:last-child table {
    width: 267px;
}

select#PaymentFrequency, select#PreferredPaymentDay {
    margin-bottom: 10px;
    width: auto;
}

#scheduledPaymentSampleSchedule {
    margin-top: 30px;
}

#addressdetails_div > table {
    border: none;
}

#addressdetails_div > table tr:nth-child(odd) {
    background: #fff;
}

#addressdetails_div > table td, #addressdetails_div > table td:first-child {
    padding: 0;
}

#cart_order_title, #cart_step1_title, #cart_step2_title, #cart_step3_title,
#cart_step4_page_title {
    font-size: 26px;
    padding: 0px 0 5px;
}

.membershipSection form[name="my_form"] div[align='right'] {
    margin-top: 30px;
}

#submit_button_div {
    height: 56px!important;
}

input[name="pay_credit_card1"], input[name="pay_credit_card2"],
input[name="pay_credit_card3"], input[name="pay_credit_card4"] {
    display: inline-block!important;
    text-align: center;
    width: auto!important;
}

input[name="pay_cvvno"], select[name="pay_month"], select[name="pay_year"] {
    width: auto!important;
}

@media (max-width: 767px) {
    div.recordDetail table, div.recordDetail table thead,
    div.recordDetail table tbody, div.recordDetail table th,
    div.recordDetail table td, div.recordDetail table tr, article table,
    article table thead, article table tbody, article table th, article table td,
    article table tr, table.cart_table, table.cart_table thead,
    table.cart_table tbody, table.cart_table th, table.cart_table td,
    table.cart_table tr {
        display: block;
    }

    div.recordDetail table thead tr, article table thead tr,
    table.cart_table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    div.recordDetail table td, article table td, table.cart_table td {
        border: none;
        position: relative;
        padding: 20px 0 0;
        width: 100%;
    }

    div.recordDetail table tr td:last-child, article table tr td:last-child,
    table.cart_table tr td:last-child {
        padding-bottom: 20px;
    }

    div.recordDetail table tr:nth-child(-n+3), article table tr:nth-child(-n+3),
    table.cart_table tr:nth-child(-n+3) {/* display: none; */
    }

    div.recordDetail table td:before, article table td:before,
    table.cart_table td:before {
        display: block;
        text-transform: uppercase;
        color: #2e2e2e;
        font-size: 13px;
        margin-bottom: 10px;
        font-weight: 600;
    }

    div.recordDetail table td:before, article table td:before,
    table.cart_table td:before {
        content: attr(data-title);
    }

    div.recordDetail table tr td:first-child, article table tr td:first-child,
    table.cart_table tr td:first-child {
        padding-left: 0;
    }

    div.recordDetail table tr th:first-child, .table tr td:first-child,
    article table tr th:first-child, table.cart_table tr th:first-child {
        width: 100%;
    }

    div.recordDetail table tr th:nth-child(2), .table tr td:nth-child(2),
    article table tr td:nth-child(2), table.cart_table tr td:nth-child(2) {
        width: 100%;
    }

    div.recordDetail table tr:first-child, article table tr:first-child,
    table.cart_table tr:first-child {/* display: none; */
    }

    .grey-table-cell-background {
        background: #fff;
    }

    .form-search-items .form-col {
        width: 100%;
        padding-top: 3%;
    }
}

div.recordDetail table.clear-table {
    border: none;
}

div.recordDetail table.clear-table tr {
    border: none;
}

div.recordDetail table.clear-table tr:nth-child(odd) {
    background: none;
}

div.recordDetail table.clear-table tr:nth-child(even) {
    border-bottom: 1px dotted #ccc;
}
