/*
Theme Name: Albert Ellis Institute
Theme URI: https://www.social-ink.net
Description: Architecture, custom code and templating created by Social Ink
Version: 1
Author: Social Ink
Author URI: https://www.social-ink.net
*/


/*****************
LAYOUT
***********************************************/

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.onepage {
    clear: both;

}

.content {
    min-height: 300px;
    width: 100%;
}

.content .text a {
    color: #cf2e2e;
}

.content .text {}

.content.nosidebar {
    float: none;
    width: 100%;
}

.pageinfo {
    border-bottom: 2px solid #D6D6D6;
    text-transform: uppercase;
    margin-top: 2em;
    margin-bottom: 1em;
}

.archive-description {
    font-style: italic;
    font-size: 1.2em;
    margin-bottom: 1em;
}

.archive-promoted {
    background: #000;
    padding: 2em;
    color: #fffaee;
}

.tax-therapist_specialty .archive-promoted,
.tax-therapist_languages .archive-promoted,
.tax-therapist_insurance .archive-promoted,
.tax-therapist_telehealth .archive-promoted,
.tax-therapist_rebt_supervisor .archive-promoted {
    background: inherit;
    color:  inherit;
    padding: inherit;
}

.tax-therapist_specialty .sidebar,
.tax-therapist_languages .sidebar,
.tax-therapist_insurance .sidebar,
.tax-therapist_telehealth .sidebar,
.tax-therapist_rebt_supervisor .sidebar {
    display: none;
}

.archive-promoted .archive_post {
    margin-bottom: 0;
    padding-bottom: 0;
}

.archive-promoted h2 {
    color: inherit;
}

/*****************
EXPANDERS
***********************************************/

.expander_section {}


.expander_section h3 {
    font-size: 1.3em;
    margin-bottom: .5em;
}

.results-container h2.expander_header {
    font-size: 2em;
    font-style: normal;
    padding-bottom: .5em;
}

.expander_section h2 a,
.expander_section h3 a {
    display: flex;
}

.expander_section h2 a:hover,
.expander_section h3 a:hover {
    text-decoration: none;
    color: #cf2e2e;
}

.expander_section h2 a:after,
.expander_section h3 a:after {
    content: ' +';
    margin-left: auto;
}

.expander_section.opened h2 a:after,
.expander_section.opened h3 a:after,
.expander_section h3 a.activated:after {
    content: ' -';
}

.expander_section .module_wys {
    display: none;
}
.expander_section.opened .module_wys {
    display: block;
}

.textholder.onequestion {
    border-bottom: 1px solid #ccc;
    padding-bottom: 0;
    margin-bottom: 1em;
}

    .onequestion p:last-child {
        padding-bottom: 1em;
    }

/*****************
TYPE
***********************************************/

h1,
h2,
h3,
h4,
h5 {
    margin-top: 0;
}


p {
    font-size: 1em;
    margin-bottom: 1.1em;
    margin-top: 0;
    line-height: 1.5em;
    margin-top: 0;
}

.fancyfont {}

.pageinfo h1 {
    margin: 0;
}

.text {}

.text p {}

.text p:last-child {
    margin-bottom: 0;
}

.text h1 {}

.text h2 {}

.text h3 {}

.text ul {
    margin-bottom: 1em;
    margin-left: 0;
}

.text ul li {
    list-style-type: disc;
    margin-left: 1em;
    line-height: 1.4em;
}


/*****************
IMAGECOVERS
***********************************************/

.backgrounded_image {
    background-position: center center;
    background-size: cover;
    min-height: 400px;
    position: relative;
    width: 100%;
}

.backgrounded_image:before {
    background: rgba(0, 0, 0, 0.7) none repeat scroll 0 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.backgrounded_image>div {
    position: relative;
}


/*****************
BASIC INPUT AND FORMS
***********************************************/

input[type=text] {
    padding: .5em;
}

.topmenu li.buttonized a,
.wpcf7 input[type=submit],
input[type=submit],
.button {
    border-radius: 100em;
    background: none repeat scroll 0 0 #cf2e2e;
    border: 0 none;
    color: #fff;
    display: inline-block;
    padding: 0.5em 1.75em;
}

.topmenu li.buttonized a:hover,
input[type=submit]:hover,
.button:hover {
    box-shadow: 0 0 1px #111;
    text-decoration: none;

    font-weight: normal;
}

.topmenu li.new {

}

.topmenu li.new:after {
    content: 'new!';
    color: #fff;
    background: #000;
    font-size: 9px;
    text-transform: uppercase;
    margin-top: -5px;
    display: inline-block;
    border-radius: 100em;
    padding: 2px 10px;
    position: absolute;
    letter-spacing: .05em;
}

a.new::after {

    content: 'new!';
    color: #fff;
    background: #000;
    font-size: 9px;
    text-transform: uppercase;
    margin-top: 3px;
    display: inline-block;
    border-radius: 100em;
    padding: 2px 8px;
    position: absolute;
    letter-spacing: .05em;
    margin-left: 5px;

}

.topmenu li.new:hover:after {
    background: #cf2e2e;
}

input[type=submit]:active,
.button:active {
    box-shadow: inset 0 0 1px #222;
    outline: 0;
}

input[type=submit]:focus,
.button:focus {
    outline: 0;
}


/*****************
MOBILE HEADER (used for search bar in mobile)
***********************************************/

.mobile_expansion {
    visibility: hidden;
}


.mobile_expansion+label.mobile_expand_search {
    border: none;
}

.mobile_expansion:checked+label {
    border: .2em solid;
    height: .78em;
    width: .78em;
    border-radius: 100%;
}

.mobile_expansion+label.icon-search {
    border: 0 !important;
    margin-top: -5px;
}


/*****************
NAV MENU MARKUP
***********************************************/

.menu_horizontal li {
    display: inline-block;
    list-style: none;
}


/*****************
HEADER
***********************************************/

.site-banner {
    padding: 2em;
    color: #fff;
    display: none;
}

body.alert-show .site-banner {
    display: flex;
}

p:last-child {
    margin-bottom: 0;
}

.close-banner {
    text-transform: uppercase;
    font-size: .7em;
    margin-top: -1em;
    font-weight: 100;
    letter-spacing: .05em;
}

.close-banner .sink_icon {
    margin-right: .25em;
}

.close-banner svg {
    fill: #fff;
}

.close-banner a {
    display: flex;
    align-items: center;
}

.top-pin-menu {
    background: #000;
    color: #fff;
    padding: 1em;
    text-transform: uppercase;
    text-align: right;
   
   
}

.socialink-scrolling .top-pin-menu {
    top: 0;
    position: fixed;
     width: 100%;
    z-index: 9000;
    transition: all 0.2s ease;
}

.socialink-scrolling  #header {
    margin-top: 57px;
}

.top-pin-menu a:hover,
.close-banner a:hover {
    text-decoration: none;
    color:  #fff;
}

.logged-in .top-pin-menu {
top: 30px;
}

#menu-top-bar a:hover {
   border-bottom: 10px solid #fff;
   padding-bottom: 8px;
   transition: all 0.5s ease;
}
.top-pin-menu svg {
    fill: #fff;
}

.top-pin-menu .sink_icon a.psychwire {}

.search_indicator {
    margin-left: 1em;
}

.search aside.metadatum {
    display: none;
}

.search article.archive_post {
    flex-wrap: nowrap;
}

.search .relatedposts li {
    font-size: .7em;
}

.top-pin-menu .centering_box {
    justify-content: flex-end;
    align-items: center;
    font-size: 1.05em;
    max-width: 98%;
}

#header {
    width: 100%;
    margin-top: 0;
    z-index: 9999;

    background: #fffaee;
}


.socialink-scrolling .logo {

    position: fixed;
    top: 0;
    z-index: 9999;
    background: #fff;
    width: 161px;
    left: 0;
}

.tagline {

}

.tagline h4 {
    font-size: .8em;
    font-weight: 100;
    text-transform: none;
    color: #000;
    text-align: center;
}

.socialink-scrolling .tagline {
     font-size: .6em;
}

.logged-in.socialink-scrolling .logo {
    top: 33px;
}

.header_inner.desktop_only {
    align-items: center;
    padding: 2em;
    max-width: 100%;
}

.logo {
    width: 100%;
    max-width: 300px;
}

.logo img {
    width: 100%;
    /* for ie */
}

.topmenu {}

.topmenu ul {
    align-items: center;
    font-weight: 600;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.topmenu li {
    margin-right: 2em;
}

.topmenu li:after {}

.topmenu li.last_item {
    margin-right: 0;
}

.topmenu li a {
    font-weight: 100;
}

.topmenu li[class*="current"] a,
.topmenu li:hover a {
    text-decoration: none;
    font-weight: 600;
}

.socialmedia {
    margin-left: 1em;
}

.socialmedia ul {
    display: flex;
}

.socialmedia ul li.media-link-psychwire {
    order: 10;
    margin-left: 6px;
}

.socialmedia a {}


/*****************
SIDEBAR
***********************************************/

.onepage.flexible {
    flex-wrap: nowrap;
}

.onepage  > .metadatum,
.sidebar {
    width: 30%;
    margin-left: 5%;
    min-width: 300px;
}

.single-therapists .onepage > .metadatum {
    margin-left: 0;
}

.page-template-page-templated-find-therapist .plugin-filterserver .filtering_results.searching:before {
    background: rgba(191, 209, 134, .8);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 110%;
    height: 110%;
    color: #333;
    margin-left:-50px;
    margin-top:-50px;
    margin-bottom:100px;
    margin-right:-50px;
}

.page-template-page-templated-find-therapist .pageinfo {
    margin-top: 0;
}

span.results-header-basic:before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    margin-top: 5px;
    float: left;
    background-image: url(assets/icons/icon-arrow-left.svg);
    margin-right: 7px;
    margin-left: -15px;
}

.column.offering,
.sidebar .column {
    background: #fff;
    border-left: 2px solid #cf2e2e;
    box-shadow: 5px 5px 0 #000;
    padding: 1em;
    margin-top: 1em;
    border-top: 2px solid #cf2e2e;
}

.sidebar .column {
    width: 100%;
}

.column.offering h3,
.sidebar .column h3 {
    font-size: 1.4em;
    text-align: center;
    text-align: left;
    border-bottom: 1px solid #000;
    padding-bottom: .75em;
}

.column.offering li,
.sidebar .column li {
    margin-left: 18px;
    margin-bottom: 1em;
    list-style: none;
}

.column.offering li li {
    margin-top: 1em;
}

.column.offering li li,
.sidebar .column li li {
    margin-left: 1em;
}

.column.offering li a,
.column.offering  a {
    text-decoration: underline;
}

.column.offering li:before,
.sidebar .column li:before {
    content: '';
    background-image: url(assets/icons/icon-arrow-right.svg);
    width: 10px;
    height: 10px;
    float: left;
    margin-top: 5px;
    margin-right: 10px;
    margin-left: -20px;
    background-repeat: no-repeat;
}

.onepage  > .metadatum h1,
.sidebar h1 {
    margin-bottom: .5em;
    font-size: 2em;
}

.quicklinks {
    margin-bottom: 3em;
}

.quicklinks li {
    list-style: none;
    margin-left: 0;
    margin-bottom: 1em;
    text-transform: uppercase;
    color: #cf2e2e;
    font-weight: 600;
    font-size: 1.1em;
}

.quicklinks li svg {
    fill: #cf2e2e;
}

.quicklinks li a {

}


/*****************
BACKGROUNDS
***********************************************/

.herospot {
    background-position: center center;
    background-size: cover;
    height: 400px;
    height: calc(100vw / 2);
    overflow: hidden;
    position: relative;
    width: 90%;
    margin: auto;

    }

    .home .herospot {
        height: calc(100vw / 2.5);
    }

.hero_actions.cta_buttons {
    position: absolute;
    bottom: 5%;
    display: flex;
    justify-content: center;
    width: 100%;
    height: 10%;
}

.cta_buttons a {
    background: transparent;
    border: 1px solid #fff;
    font-size: 1.2em;
    text-transform: uppercase;
}

.hero_actions.caption_container {
    position: absolute;
    width: 100%;
    bottom: 15%;
    text-align: center;
    color: #fff;
}

.hero_actions.caption_container h1 {
    font-size: 2em;
    max-width: 90%;
    margin: auto;
        margin-bottom: auto;
    margin-bottom: .5em;
    text-shadow: 1px 1px #000;
}

.herospot.contained {
    /* use this instead of height if the image is not full bleed; where the first number is the image height and the second number is the image width */
    /* padding-top: calc((460 / 1040) * 100%);*/
}

.herospot.semantic:before {
    background: rgba(0, 0, 0, 0.7) none repeat scroll 0 0;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.herospot.semantic>div,
.herospot.semantic>article,
.herospot.semantic>section {
    position: relative;
}


.slides li {
    margin: 0;
    list-style: none
}

.slideshow_area {
    max-height: 400px;
    height: calc(100vw / 3);
}

.slideshow_area div.slide {
    background-position: center center;
    background-size: cover;
    height: calc(100vw / 3);
    width: 100%;
    position: relative;
}

#header .slideshow_area {
    position: absolute;
    top: 0;
    height: 600px;
    left: 0;
    max-height: 600px;
}

#header .slideshow_area div.slide {
    max-height: 600px;
    height: 600px;
}


.slide_nav {
    color: #fff;
    font-size: 2em;
    left: 2%;
    position: absolute;
    z-index: 300;
    /* top: calc(100vw/5);*/
    top: 250px;
}

.slide_nav a:before {
    text-shadow: 1px 1px 3px #111;
}

.home .slide_nav {}

.slide_nav a {
    color: #fff;
}

.slide_nav a:hover,
.slide_nav a:active,
.slide_nav a:focus {
    text-decoration: none;
    color: #2D2C28;
}

.slide_nav.left {}

.slide_nav.right {
    left: auto;
    right: 2%;
}



/*****************
HOME
***********************************************/

.sink_cfields.field_wysiwyg.mission_snippet {
    font-size: 1.25em;
    margin-bottom: 3em;
    text-align: center;
}

.homepage section {
    margin: 2em 0;
}

    .homepage section.core-offerings {
        margin-bottom: 4em;
    }

.homepage section h2 {
    border-top: 2.5px solid #cf2e2e;
    text-align: center;
    position: relative;
    margin-bottom: 1em;
    display: flex;
    justify-content: center;
    align-items: center;
}

.underliner {
    background: #fffaee;
    display: inline-block;
    position: absolute;
    padding: 1em;
}

.homepage .column.offering {
    width: 32%;
}

.link-follows header {
border-top: 1px solid #eaeaea;
border-bottom: 1px solid #eaeaea;
    padding: .75em 2em;
}

.link-follows h2 {
    font-weight: inherit;
    font-size: 2em;
    margin: 0;
}

.links-display {
    border-bottom: 1px solid #eaeaea;
}

.links-display > .flexible {
    max-width: none;
}
.link-follows .col {
    width: 50%;
}

.link-follows > header > .flexible {
    max-width: none;
}

.link-follows .links-display .col {
    padding: 2em 2em;
}

.link-follows .col.newslinks {
    padding-left: 2em;
}

.link-follows .links-display .col.newslinks {
    border-left: 1px solid #eaeaea;
    padding: 0;
}


.link-follows .col ul  {

}

.link-follows .col ul li {
    list-style: none inside;
    margin-left: 0;
    margin-bottom: 1em;
    font-size: 1.1em;
    font-weight: 600;
}

.link-follows .links-display .col.newslinks li {
    padding: 1em 0 1em 2em;
    margin-bottom: 0;
    border-bottom: 1px solid #eaeaea;
}
.link-follows .column-more {
    margin-top: 1em;
        width: 90%;
}

.shoplinks .column-more {
    border-top: 1px solid #000;
    padding-top: 1em;
}

.shoplinks .column-more svg {
    fill:#cf2e2e;
}
.newslinks .column-more {
    padding-left: 2em;
}

.link-follows .column-more a {
    text-transform: uppercase;
    color: #cf2e2e;
    font-weight: 600;
}

.donation_appeal_text_container {
    padding: 2em 0;
}

.donation_appeal_text {
    font-size: 1.3em;
    text-align: center;
    margin-bottom: 2em;
}

.donation_appeal_text_container > .flexible {
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.donation_appeal_text_container a.button {
    font-size: 1.5em;
}

.donation_appeal_text_container a.button:hover {
    color: #fff;
    text-decoration: none;
    opacity: 1;
}


/*****************
FOOTER
***********************************************/

#footer {
    clear: both;
    clear: both;
    background: #fff;
    border-top: 1px solid #000;
    margin-top: 3em;
}

.footertext .media-link-psychwire svg, .footertext .media-link-psychwire svg path {
    fill: #000;
    stroke: #000;
}

.footertext .media-link-psychwire svg rect {
    stroke: #000;
}

li.media-link-twitter {
    margin-left: .2em;
}
.topfooter {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding-bottom: 3em;
}

.topfooter .footermenu {
    background: #000;
    color: #fff;
    padding: 1em 2em;
}

.footer-pin-bottom {
    background: #000;
    color: #fff;
    display: flex;
    padding: .5em;
    font-size: .9em;
    align-items: center;
}

.topfooter .footermenu  li a:hover {
    text-decoration: none;
    color: #fff;
}

.topfooter .footermenu  li:first-child {
    margin-left: 0;
}

.footer_inner {}

.footertext.flexible {
    width: 100%;
    margin-top: 3em;
}

.footertext .col.right {
    text-align: right;
}

.footertext .socialmedia {
    margin-top: 2em;
}

.footertext strong {
    color: #cf2e2e
}

.footertext>.div {
    width: 45%;
}

.footermenu {}

.footercredits {}

.footercredits a {}

.sitecredits {}

.sitecredits p {}

.sitecredits a {}

.sinkcredits {
    margin-left: auto;
}

.sinkcredits p {
    margin-bottom: 0;
}

.sinkcredits a {}


/*****************
RELATED
***********************************************/

.related_content {
    text-align: center;
    margin: 2em 0;
}

.related_content .field_divlist {
    display: -ms-flexbox;
    display: flex;
    margin: 2em 0;
}

.related_content .field_divlist>div {
    background: #ccc none repeat scroll 0 0;
    border-right: 1px solid #fff;
    height: 250px;
    min-width: 25%;
    padding: 1em 2%;
}

.metadatum {
    margin-bottom: 2em;
}

.archive-promoted .metadatum h1,
.results-container .metadatum h1 {
    display: none;
}

.metadatum .meta_item {
    margin-bottom: 1em;
}

    .metadatum .meta_item.obj-product_type {
        display: none;
    }

.metadatum .meta_item .lbl {
    font-weight: 600;
    display: block;
    margin-bottom: .2em;
}
.metadatum .meta_item .lbl:after {
    content:':';
}

.metadatum .meta_item .val a {
    background: #000;
    color: #fff;
    display: inline-block;
    font-size: .9em;
    padding: .25em .5em;
    margin-right: .5em;
    margin-bottom: .5em;
}


/*****************
ARCHIVE
***********************************************/

article.archive_post {
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin-bottom: 1em;
    padding-bottom: 1em;
}

aside.readmore {
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 1em 0 0;
    color: #cf2e2e;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.socialink-module {
    margin: 2em 0;
    padding: 1em 0 0;
    border-top: 3px solid #000;
}

.content article.archive_post:last-child,
article.archive_post.archivepost_last {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.archive_post .featimg {
    margin-right: 1em;
    width: 200px;
}

.archive_post.thumb_exists .mainpost {}

article.archive_post h2 {
   margin-bottom: 0;
    font-size: 1.3em;
}

article.archive_post p.post_header_meta {
    font-size: 90%;
}

article.archive_post .post_meta {
    border-top: 1px solid #eaeaea;
    padding-top: 5px;
    font-size: 90%;
}

article.archive_post a.readmore {
    font-size: 90%;
    text-transform: uppercase;
}

article.archive_post a.readmore:after {
    content: '>';
    padding-left: 2px;
}

p.excerpt,
.text p:last-child {
    margin-bottom: 0;
}



.relatedposts {
    clear: both;
    border-top: 5px solid #D2D2D2;
    padding-top: 1em;
    font-size: 1.5em;
    text-transform: uppercase;
}

.relatedposts ul {
    display: flex;
    margin: 0;
    flex-wrap: nowrap;
    justify-content: flex-start;
}

.relatedposts li {
    list-style: none outside none !important;
}

.relatedposts .prev {
    margin-right: auto;
}

.relatedposts .next {
    margin-left: auto;
}

.single_relatedposts {}

.archive_relatedposts {}

p.readmore {
    margin-bottom: 0;
}

div.product .woocommerce-tabs {
    display: none;
}

.product .text {
    margin-bottom: 1em;
}

.product .posted_in {
    display: block;
}

.socialink-paymaster-render-wrap .optdesc {
    display: block;
    
}

section.socialink-paymaster-render-wrap form.mainform .amounts-display-desc,
section.socialink-paymaster-render-wrap form.mainform .amounts-display-main {
    width: 50%;
}

section.socialink-paymaster-render-wrap form.mainform .amounts-display-desc {
    padding: 0;
    background: none;
}

section.socialink-paymaster-render-wrap form.mainform .form-item.item-tx {
    max-height: 300px;
    overflow: auto;
    background: #f2f2f2;
    padding: 1em;
    border-radius: 15px;
}

section.socialink-paymaster-render-wrap form.mainform .form-item:not(.noflex) {
    margin-right: 0;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .form-item {
    max-width: 100%;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item {
    max-width: 50%;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.short,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-honorific_suffix,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_zipcode,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_state {
    max-width: 120px;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.long,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-social_network_url,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-biography,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_address,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-website {
    max-width: 100%;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-biography textarea {
    min-height: 200px;
}

section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-first_name,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-middle_name,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-last_name,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_city,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_state,
section.socialink-paymaster-render-wrap form.mainform .formgroup-extra-data .extra-data-open-fields .form-item.item-work_zipcode {
    display: inline-block;
}

.product .related {
    clear: both;
    margin-top: 3em;
    border-top: 1px solid #000;
}

.product .product_title.entry-title {
    display: none;
}

 .woocommerce-page div.product div.images {
   
 }

 .woocommerce-page div.product div.summary {

 }

 .woocommerce #respond input#submit.alt, 
 .woocommerce a.button.alt, 
 .woocommerce button.button.alt, 
 .woocommerce input.button.alt {
    background: #cf2e2e;
 }

 .woocommerce div.product p.price, 
 .woocommerce div.product span.price {
   color: #000;
   font-size: 1.25em;
   font-weight: 900;
 }

 .woocommerce-message .button.wc-forward {
    margin-left: 1em;
margin-top: -8px;
 }

 .woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder {
    
 }

 .alg-product-input-fields-table label {
    display: inline !important;
 }

  .alg-product-input-fields-table {
    margin-bottom: 1em;
  }

    .alg-product-input-fields-table tr {
        display: flex;
        flex-direction: column;
        margin-bottom: .75em;
    } 

    .single-product.woocommerce div.product div.images.woocommerce-product-gallery {
        width: 200px;
    }

    .single-product.woocommerce-page div.product div.summary {
        width: calc(95% - 200px);
    }

 .woocommerce div.product form.cart table td {
    vertical-align: top;
 }

@media (min-width: 768px) and (max-width: 1040px) {
    .onepage, 
    .pageinfo,
    .archive-promoted,
    .tax-therapist_specialty .archive-promoted, 
    .tax-therapist_languages .archive-promoted, 
    .tax-therapist_insurance .archive-promoted, 
    .tax-therapist_telehealth .archive-promoted, 
    .tax-therapist_rebt_supervisor .archive-promoted,
    .donation_appeal_text_container,
    .footer_inner {
        padding-left: 1em;
        padding-right: 1em;
    }
}