/*
Theme Name: TESSERACT Child
Theme URI: http://tesseracttheme.com/
Author: Tesseract Theme
Author URI: http://tesseracttheme.com/theme-details/
Description: Tesseract child is a beautiful theme from the fourth dimension. Tesseract makes it easy to create a website that you are proud to show off to the world. It is responsive, has simple and useful navigation, an amazing featured image with buttons and is simple to use.
Version: 3.9.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tesseract-child
Template:     tesseract-free-theme
Tags: custom-background, custom-header, custom-menu, editor-style, one-column, two-columns, featured-images, full-width-template, left-sidebar, threaded-comments, translation-ready, microformats
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
Tesseract is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.
*/
/* =Table of Contents
-------------------------------------------------------------- */
/*
    01. CSS Reset (Normalize)
    02. Theme Base
    03. Clearfix
    04. Global margins and paddings
    05. Text-level semantics
    06. Headings
    07. Forms
    08. Buttons
    09. Tables
    10. Links
    11. Header area
    12. Layout
    13. Menus
    14. Icons (separate folder)
    15. Accessibility
    16. Embedded content
    17. WordPress core styles
    18. Widgets
    19. Content
    20. Asides
    21. Comments
    22. Infinite scroll (Jetpack plugin)
    23. Footer
    24. Plugins
    25. Responsive design
    26. Print styles
*/

/* =01. normalize.css v3.0.1
-------------------------------------------------------------- */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
@import url("../tesseract-free-theme/style.css");

/* NAV */
#masthead {
    box-shadow: 0px 1px 5px rgba(200, 200, 200, 0.5);
}

#masthead .site-logo {
    margin-right: 0px;
    /* no margin on low rz screens */
}

#site-banner .site-logo img {
    padding-right: 7px;
    /* new logo has no whitespace, pad manual */
}

#masthead .social-icons {
    display: none;
}

.sidr-class-social-icons {
    display: none;
}

/* hide social icons from mobile menu */
#sidr-id-header-button-container-inner > a.sidr-class-cboxElement {
    padding-top: 0px;
}

@media(min-width:1200px) {
    #masthead .social-icons {
        display: inline-block;
        float: left;
        position: absolute;
        top: 0;
        right: 0;
        margin-right: -6.5rem;
        line-height: 3rem;
        padding: 5px;
    }

    #masthead .social-icons .fa-stack {
        font-size: 1rem;
    }
}

@media(min-width:769px) {

    /* fix nav on desktop */
    #masthead {
        position: fixed;
    }
}

.admin-bar #masthead {
    top: 46px;
}

/* adjust for wpadminbar */
@media(min-width:783px) {
    .admin-bar #masthead {
        top: 32px;
    }
}

.top-navigation ul li a {
    /* decrease nav spacing */
    padding: 0 7px;
}

@media(min-width:769px) {
    p.ServAboutBodyCopy{margin: 6% 0 0 !important;}
    p.ServAboutcta{margin: 8% 0 0 !important;}
    .ServicesAboutTitles{margin: 12% 0 0 !important;}
    .top-navigation ul li.menu-item-1031 {
        display: none;
        /* dont display home on small rz screens */
    }

    .top-navigation ul li.menu-item-1011 {
        display: none;
        /* dont display home on small rz screens */
    }

    #site-banner-right {
        width: 33%;
        min-width: 340px;
        padding-right: 15px;
    }
}

@media(min-width:870px) {
    .top-navigation ul li.menu-item-1011 {
        display: table-cell;
    }
}

@media(min-width:940px) {
    .top-navigation ul li.menu-item-1031 {
        display: inline-block;
        /* dont display home on small rz screens */
    }
}

@media(min-width:981px) {
    #masthead .site-logo {
        margin-right: 5px;
        /* lower for all rz */
    }
}

.site-header {
    background-color: rgba(255, 255, 255, 0.8);
}

/* assign transparency to nav on all pages */
.site-header #header-button-container a.button:active {
    background-color: #fff;
    color: #870000;
}

button:focus,
.button:focus {
    color: #626262 !important;
}

/* LIGHTBOX */
div#colorbox {
    outline: 0px;
}

button#cboxClose {
    line-height: 1;
}

/* PANELS */
.sub-svc-top {
    /* shrink spacer on mobile at top of Expertise and Decorative Surfaces pages */
}

.sub-svc-top h1 {
    font-size: 36px;
}

@media(max-width:768px) {

    .sub-svc-top p:first-child span {
        /* spacers use less room on mobile */
        padding-top: 25px !important;
        /* override element's style attr */
    }

    p img.aligncenter {
        margin: 10px auto;
    }
}

.page-top-row.siteorigin-panels-stretch {
    height: auto !important;
}

.home-top-row.siteorigin-panels-stretch {
    height: 100%;
}

.home-top-row .sub-resize {
    font-size: 16px;
    /* simulate FitText for subheading */
}

.home-top-row .home-headline,
.home-top-row .home-sub {
    text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.6);
}

@media(min-width:360px) {
    .home-top-row .sub-resize {
        font-size: 17px;
    }
}

@media(min-width:420px) {
    .home-top-row .sub-resize {
        font-size: 18px;
    }
}

@media(min-width:500px) {
    .home-top-row .sub-resize {
        font-size: 19px;
    }
}

@media(min-width:600px) {
    .home-top-row .sub-resize {
        font-size: 20px;
    }
}

@media(min-width:769px) {
    .home-top-row .sub-resize {
        font-size: 24px;
    }
}

@media(min-width: 900px) {
    .home-top-row .sub-resize {
        font-size: 25px;
    }
}

.home-custom {
    line-height: 1.1;
}

@media(max-width:768px) {
    .home-undercenterbx {
        margin-top: 18px;
    }
}

.siteorigin-panels-stretch.stretch-background-row,
.panel-grid {
    position: relative;
}

.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell {
    height: 100%;
}

@media(max-width: 780px) {

    .home .siteorigin-panels-stretch.stretch-background-row .panel-grid-cell:first-child,
    .home .siteorigin-panels-stretch.stretch-background-row .panel-grid-cell:last-child {
        display: none;
        /* our work on mobile should hide the first and third cells */
    }

    .siteorigin-panels-stretch.home-top-row .panel-grid-cell {
        display: block;
        /* home-top-row shows all cells */
    }
}

.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget {
    height: 100%;
    position: relative;
}

.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget .panel-button,
.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget .panel-description,
.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget .panel-label {
    position: absolute;
    bottom: 0px;
    width: 100%;
}

.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget .panel-label {
    text-align: right;
    font-weight: bold;
    color: #fff;
    letter-spacing: 1px;
    text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.6);
    padding-right: 5%;
    padding: 20px 5% 20px 0;
}

.siteorigin-panels-stretch.stretch-background-row .panel-grid-cell .widget .panel-description {
    padding-bottom: 20px !important;
    /* override inline style */
}

.page-id-926 #pl-926 .panel-grid {
    margin-bottom: 0px;
    /* no whitespace between team photos */
}

.page-id-926 #pl-926 .panel-grid .panel-grid-cell {
    border-top: 10px solid #000;
}

.page-id-926 #pl-926 .panel-grid:first-child .panel-grid-cell {
    border-top: 0px;
}

/* PANEL CONTENT */
.button.vf-button {
    text-transform: none;
}

/* override style.css */
#client-grid {
    max-width: 90%;
    margin: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#client-grid .client {
    padding: 0px;
    border: 1px solid #000;
    border-right: 0px;
    /* nth selectors will appropriately reapply borders to right side at end of row */
    border-bottom: 0px;
    width: 50%;
}

h1.entry-title {
    margin: 80px 0 30px;
}

@media(max-width:479px) {
    #client-grid .client:nth-child(2n) {
        border-right: 1px solid #000;
    }

    #client-grid .client:nth-last-child(-n+2) {
        border-bottom: 1px solid #000;
    }
}

@media(min-width:480px) {
    #client-grid .client:nth-child(2n) {
        border-right: 0px;
        /* override previous breakpoint's rule */
    }

    #client-grid .client {
        width: 33%;
    }

    #client-grid .client:nth-child(3n) {
        border-right: 1px solid #000;
    }

    #client-grid .client:nth-last-child(-n+3) {
        border-bottom: 1px solid #000;
    }
}

@media(min-width:769px) {
    #client-grid .client:nth-child(3n) {
        border-right: 0px;
        /* override previous breakpoint's rule */
    }

    #client-grid .client {
        width: 25%;
    }

    #client-grid .client:nth-child(4n) {
        border-right: 1px solid #000
    }

    #client-grid .client:nth-last-child(-n+4) {
        border-bottom: 1px solid #000;
    }
}

@media(min-width:1024px) {
    #client-grid .client:nth-child(4n) {
        border-right: 0px;
        /* override previous breakpoint's rule */
    }

    #client-grid .client {
        width: 16.6666666667%;
    }

    #client-grid .client:nth-child(6n) {
        border-right: 1px solid #000
    }

    #client-grid .client:nth-last-child(-n+6) {
        border-bottom: 1px solid #000;
    }
}

@media (max-height: 1366px) and (max-width: 1024px) {
    #client-grid .client {
        width: 33%
    }

    #client-grid .client:nth-child(2n) {
        border-right: 0;
    }

    #client-grid .client:nth-child(3n) {
        border-right: 1px solid #000;
    }

    #client-grid .client:nth-last-child(-n+6) {
        border-bottom: 1px solid;
    }
}

@media (max-height: 768px) and (max-width: 1024px) {
    #client-grid .client {
        width: 16.6666666667%;
    }

    #client-grid .client:nth-child(2n) {
        border-right: 0;
    }

    #client-grid .client:nth-child(3n) {
        border-right: 0;
    }

    #client-grid .client:nth-child(6n) {
        border-right: 1px solid #000;
    }
}

@media(min-width:1600px) {
    #client-grid .client:nth-child(6n) {
        border-right: 0px;
        /* override previous breakpoint's rule */
    }

    #client-grid .client {
        width: 12.5%;
    }

    #client-grid .client:nth-child(8n) {
        border-right: 1px solid #000;
    }

    #client-grid .client:nth-last-child(-n+8) {
        border-bottom: 1px solid #000;
    }
}

.widget-checkerboard {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media(max-width:768px) {
    .widget-checkerboard {
        margin-bottom: 40px;
    }
}

.widget-checkerboard,
.widget-checkerboard .panel-grid-cell {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    position: relative;
}

.widget-checkerboard .widget_sow-image {
    width: 100%;
    /* default override */
}

.widget-checkerboard .widget_black-studio-tinymce {
    padding: 3% 20% 3%;
    max-height: 100%;
    position: relative;
}

.widget_black-studio-tinymce,
.widget_black-studio-tinymce p {
    -webkit-hyphens: none;
    -ms-hyphens: none;
    -moz-hyphens: none;
    hyphens: none;
}

#main-desc-row {
    margin-bottom: 5px;
}

#main-desc-row .widget-textrow .widget_black-studio-tinymce {
    padding-top: 0%;
}

#main-desc-row .widget-textrow .widget_black-studio-tinymce img.aligncenter {
    margin: 0 auto;
}

#main-desc-row .textwidget p {
    margin: 0px;
}

.widget-textrow .textwidget h2,
.widget-textrow .textwidget p,
.widget-checkerboard .textwidget h2,
.widget-checkerboard .textwidget p {
    margin: 5% 0;
}

.widget-textrow .textwidget h2 {
    /* single row texts size up quicker than checkerboard texts */
    font-size: 1.5em;
}

.widget-textrow .textwidget p {
    font-size: 1.1em;
}

.page-top-row .vfinish-top {}

.page-top-row .services-top {
    padding: 60% 0% 0;
}

.page-top-row .about-top {
    padding: 30% 0% 0;
    width: 75%;
    margin: 0 auto;
}

.page-top-row .about-top h1 {
    /* weight handled by google font control */
    font-size: 1.5em;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);
    margin-bottom: 5%;
}

@media(min-width: 600px) {
    .page-top-row .about-top h1 {
        font-size: 1.8em;
    }
}

@media(min-width: 765px) {
    .page-top-row .about-top {
        padding: 30% 5% 0;
    }

    .page-top-row .about-top h1 {
        font-size: 2.2em;
    }
}

@media(max-width: 780px) {
    .widget-checkerboard.widget-bg-grey .panel-grid-cell {
        background: transparent;
    }

    .widget-checkerboard .panel-grid-cell {
        margin-bottom: 0px !important;
    }

    /* override inline style */
    .widget-checkerboard .panel-grid-cell:first-child {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    /* order of white rows is revered */
    .widget-checkerboard .panel-grid-cell {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .widget-checkerboard.widget-bg-grey .panel-grid-cell:first-child {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    /* default order of grey rows */
    .widget-checkerboard.widget-bg-grey .panel-grid-cell {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    .widget-checkerboard .widget_sow-image {
        width: 55%;
        margin: 0 auto;
    }
}

@media(min-width: 781px) {
    .widget-checkerboard {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .widget-checkerboard.widget-bg-grey .panel-grid-cell {
        background: #eaeaea;
    }

    .widget-checkerboard .widget_black-studio-tinymce {
        padding: 8% 10% 0%;
    }

    .widget-textrow .textwidget h2,
    .widget-textrow .textwidget p {
        margin: 5% 0 5%;
    }

    .widget-textrow .textwidget h2 {
        /* single row texts size up quicker than checkerboard texts */
        font-size: 1.7em;
        font-weight: 600;
    }

    .widget-textrow .textwidget p {
        font-size: 1.2em;
        font-weight: 300;
    }

}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
    .siteorigin-widget-tinymce.textwidget .team-items .item {
        width: 44.6% !important;
        margin: 23px 20px !important
    }

    h1.entry-title {
        margin: 30px 0 30px;
    }

    .widget-checkerboard .textwidget h2,
    .widget-checkerboard .textwidget p {
        margin: 8% 0 0 !important;
    }

    /*        .widget-checkerboard.siteorigin-panels-stretch .textwidget h2,.widget-checkerboard.siteorigin-panels-stretch .textwidget p{
        margin: 12% 0 0 !important; 
    }*/
    .widget-checkerboard .widget_black-studio-tinymce {
        padding: 1% 17% 0% !important;
    }
}

@media(min-width: 900px) {
    .widget_sow-google-map {
        padding-top: 50px;
    }

    .widget-checkerboard .widget_black-studio-tinymce {
        padding: 8% 17% 0%;
    }

    .page-top-row .about-top {
        padding: 30% 8% 0;
    }

    .page-top-row .about-top h1 {
        font-size: 2.5em;
    }
}

@media(min-width: 1024px) {
    .widget-textrow .textwidget h2 {
        font-size: 2.2em;
    }

    /*  // reset fullwidth settings to default font styles
    .widget-checkerboard .textwidget h2 {
        font-size: 1.7em;
        font-weight: 600;
    }
    .widget-checkerboard .textwidget p {
        font-size: 1.2em;
        font-weight: 300;
    }
*/
    .widget-textrow .textwidget p {
        font-size: 1.4em;
    }

    .page-top-row .about-top h1 {
        text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);
        margin-bottom: 5%;
        font-size: 2.7em;
    }

    .siteorigin-widget-tinymce.textwidget .team-items .item {
        width: 28.5% !important;
    }
}

.page-id-42 .site-header {
    background-color: rgba(255, 255, 255, 1);
}

/* contact page to use white BG nav */
.panel-grid-cell form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.contact-content {
    padding-bottom: 20px;
}

.contact-content p {
    font-size: .9em;
}

.panel-grid-cell form .form-column.form-input {
    float: left;
}

.panel-grid-cell form .form-column.form-text {
    float: left;
}

.panel-grid-cell form .form-column.form-send {
    float: right;
    min-width: 100px
}

.panel-grid-cell form p,
.panel-grid-cell form input[type=text],
.panel-grid-cell form input[type=email],
.panel-grid-cell form input[type=tel],
.panel-grid-cell form textarea {
    width: 100%;
    /* override form style in style.css */
    padding: 5px;
}

.panel-grid-cell form textarea {
    height: 11em;
}

.panel-grid-cell a.button.black-outline {
    /* panel button style */
    background-color: rgba(255, 255, 255, 0.5);
}

.panel-grid-cell a.button.black-outline:hover {
    background-color: rgba(255, 255, 255, 1);
}

.location-aerial {
    padding: 10px 20px 0 0;
}

.location-aerial img {
    border: 1px solid #000;
}
.contact-content .wpcf7-form{
    margin-bottom: 60px; 
}
/*.wpcf7-response-output.wpcf7-validation-errors {*/
.wpcf7-response-output {
    position: absolute;
    left: 50%;
    margin: 0px !important;
    width: 50%;
    /*background-color: rgba(177, 64, 64, 0.9);*/
    padding: 1% 1%;
    line-height: 1.6em;
    /*border-color: #600;*/
    /*color: white;*/
    bottom: 10px;
    top: auto;
    font-size: 14px;
}

/* VIRTUALFINISH */
#vf_container {
    margin-left: -15px;
    margin-right: -15px;
}

#vf_container .vf-item {
    padding-left: 15px;
    padding-right: 15px;
    float: left;
    width: 25%;
    padding-bottom: 20px;
    line-height: 1.2;
}

#vf_container .vf-item p {
    text-align: center;
    padding: 5px 0;
    font-weight: 100;
    font-size: 1.1em;
}

#vf_container .vf-item p.entry-title {
    margin-top: 0px;
    margin-bottom: 0px;
}

#vf_container .vf-item .toggle-reflect {
    font-size: 10px;
    line-height: 1.5;
    padding: 8px 10px;
}

.filter-settings {
    margin-bottom: 20px;
    border-bottom: 1px solid #666;
    border-top: 1px solid #666;
    padding: 20px 0;
}

.filter-settings select {
    font-size: 1.1em;
}

.vf-reflect {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.vf-reflect img {
    -webkit-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
}

.vf-reflect img.vf-base {
    position: absolute;
    left: 0;
    top: 0;
}

.vf-reflect img.transparent {
    opacity: 0;
}

/* FOOTER */
#footer-banner {
    max-width: 980px;
}

#horizontal-menu-wrap {
    padding-left: 0px;
    /* override footer-banner.css */
}

#horizontal-menu-before {
    vertical-align: top;
}

#footer-banner-right,
#colophon .footer-fullwidth .banner-right {
    padding-right: 0px;
}

.team-meamber-single{padding-bottom: 30px;}

#footer-horizontal-menu #menu-footer {
    display: block;
}

#footer-horizontal-menu #menu-footer li {
    font-size: 16px;
    font-size: 1rem;
    margin-left: 0px;
    margin-right: 2%;
    vertical-align: top;
    min-width: 10%;
}

#footer-horizontal-menu #menu-footer li:last-child {
    margin-right: 0px;
}

#footer-horizontal-menu #menu-footer li.menu-item-1059 .sub-menu a {
    color: #fff;
    /* address shouldnt look like a regular link */
    cursor: default;
}

#footer-horizontal-menu #menu-footer li a {
    padding: 0 0 10px 0;
    font-family: 'Roboto';
    font-weight: 100;
}

#footer-horizontal-menu #menu-footer li li {
    display: block;
    font-size: 12px;
    font-size: 0.8rem;
    margin-right: 0px;
    min-width: auto;
    padding: 0px;
}

#footer-horizontal-menu #menu-footer .menu-item-1032 {
    /* home link */
    display: none;
    /* hide on lower rez screens */
}

#footer-horizontal-menu #menu-footer li li a {
    padding: 0px;
}

#footer-button-container .social-icons {
    float: none;
    display: block;
    margin-bottom: 5px;
}

#footer-button-container .copyright {
    float: none;
}

@media(max-width:350px) {
    #footer-horizontal-menu #menu-footer li {
        padding: 0 6px;
    }
}

@media(max-width:500px) {
    li.menu-item-1059 {
        width: 100%;
        margin-top: 15px;
        border-top: rgba(255, 255, 255, 0.1) solid 1px;
    }

    #footer-horizontal-menu #menu-footer li.menu-item-1059 > a {
        padding-top: 15px;
        /* override custom.css */
    }
}

@media(min-width:575px) {
    #footer-horizontal-menu #menu-footer .menu-item-1032 {
        /* home link */
        display: inline-block;
    }
}

@media(max-width:768px) {
    #footer-horizontal-menu #menu-footer {
        margin-top: 15px;
    }

    #footer-button-container .social-icons {
        text-align: center;
    }

    .panel-widget-style {
        padding: 0 !important;
        bottom: 0px !important;
    }

    .textwidget p {
        margin: 0 !important;
    }

    .siteorigin-widget-tinymce.textwidget .team-container .team-items {
        margin: 0 auto;
        text-align: center;
    }

    .siteorigin-widget-tinymce.textwidget .team-items .item {
        margin: 5% !important
    }

    body #site-banner {
        height: 57px !important;
    }

    .widget-checkerboard .widget_black-studio-tinymce {
        padding: 3% 6% 3%;
    }

    ul.job_listings li.job_listing a img.company_logo {
        visibility: visible;
        top: 48%;
    }

    .job_filters {
        margin-top: 20px;
    }

    .sidr-class-current-menu-item: {
        color: #fff;
    }

    .widget_black-studio-tinymce p {
        margin: 0px 10% !important;
    }

    #panel-33-4-1-0 > .panel-widget-style,
    #panel-33-5-1-0 > .panel-widget-style,
    #panel-33-6-1-0 > .panel-widget-style {
        padding-bottom: 5px !important;
    }
}

@media only screen and (min-width:321px) and (max-width:640px) and (orientation: landscape) {
    ul.job_listings li.job_listing a div.position .company .tagline {
        margin: 0;
        padding: 0;
    }

    ul.job_listings li.job_listing a div.position {
        padding-left: 10%
    }

    ul.job_listings li.job_listing a img.company_logo {
        top: 5%;
    }

    .siteorigin-widget-tinymce.textwidget .team-items .item {
        width: 42.6% !important;
        margin: 23px 20px !important
    }

    .widget_black-studio-tinymce p {
        margin: 0px 18% !important;
    }
}

@media only screen and (min-device-width: 375px) and (max-device-height: 667px) and (orientation : landscape) and (-webkit-device-pixel-ratio: 2) {
    .siteorigin-widget-tinymce.textwidget .team-items .item {
        width: 43.7% !important;
        margin: 23px 20px !important
    }
}

@media only screen and (min-device-width: 320px) and (max-device-height: 568px) and (orientation : landscape) and (-webkit-device-pixel-ratio: 2) {
    .siteorigin-widget-tinymce.textwidget .team-items .item {
        width: 42.6% !important;
        margin: 23px 20px !important
    }
}

@media(min-width:769px) {
    #horizontal-menu-wrap {
        width: 75% !important;
        /* override inline theme css */
    }

    #footer-banner-right {
        width: 25% !important;
        /* override inline theme css */
    }

    #footer-horizontal-menu #menu-footer .menu-item-1032 {
        /* home link */
        display: none;
        /* hide on lower rez screens */
    }

    #footer-button-container .social-icons {
        text-align: right;
    }

    #footer-button-container .copyright {
        float: right;
    }
}

@media(min-width:940px) {
    #horizontal-menu-wrap {
        width: 70% !important;
        /* override inline theme css */
    }

    #footer-banner-right {
        width: 30% !important;
        /* override inline theme css */
    }

    #footer-horizontal-menu #menu-footer .menu-item-1032 {
        /* home link */
        display: inline-block;
    }

    #footer-button-container .social-icons {
        display: inline-block;
        font-size: .8em;
        float: left;
    }

    #footer-button-container .copyright {
        padding-left: 10px;
    }
}

#footer-banner-right {
    vertical-align: bottom;
}

#footer-button-container {
    line-height: 2em;
}

/* SOCIAL ICONS */
.social-icons a.social i {
    -webkit-transition: all .1s ease-in;
    transition: all .1s ease-in;
}

/* social icon colors edited in Appearance -> Custom CSS, which outputs inline on the page */

/* 20-4 */
.top-navigation ul li > a {
    font-weight: 300 !important;
}

body #site-banner {
    max-width: 980px !important;
}

body #footer-banner {
    max-width: 980px !important;
}


body #footer-banner #horizontal-menu-wrap {
    width: 70% !important;
}

body #footer-banner #footer-banner-right {
    width: 30% !important;
}



#horizontal-menu-wrap > * {
    display: table-cell;
    vertical-align: middle;
    width: 1px;
    white-space: nowrap;
}

#footer-horizontal-menu.is-before {
    padding-left: 12px;
}

#horizontal-menu-wrap > * {
    display: table-cell !important;
    vertical-align: top !important;
    width: 1px;
    white-space: nowrap;
    float: none;
}

#menu-footer .sub-menu {
    margin: 0 !important;
    padding: 0 !important;
}

#footer-banner {
    display: flex !important;
    align-items: flex-end !important;
}

#menu-footer,
#footer-horizontal-menu {
    width: 100% !important;
}

.site-footer {
    padding: 25px 0;
}

.site-footer a {
    color: #fff !important;
    font-weight: 300 !important;
}

#footer-banner-right {
    font-family: 'Open Sans', sans-serif !important;
}

#footer-button-container-inner {
    display: flex;
    align-items: center;
}

#footer-button-container .social-icons {
    margin-bottom: 0 !important;
}

#footer-banner .site-logo a {
    width: 60px;
    display: block !important;
}

#footer-banner .site-logo img {
    width: 100%;
    height: auto !important;
}

#menu-footer {
    padding: 0 0 0 15px !important;
}

/*body .top-navigation ul li > a , body p{
   font-family: Arial, Helvetica, sans-serif !important;
}*/
.button {
    text-transform: uppercase !important;
}


.job_application button:focus,
.job_application .button:focus {
    color: #fff !important;
}

body .site-content {
    max-width: 980px !important;
}

.tagline,
.single_job_listing .company .name {
    margin: 0 0 0 3.5em !important;
    padding: 0 0 0 1em;
    line-height: 1.5em;
}

#page {
    background: #fff;
}

@media (max-width: 1023px) {
    body #mobile-menu-trigger-wrap {
        display: block !important;
    }

    #masthead .site-logo {
        margin: 0 !important;
    }

    body #site-banner {
        height: 60px;
    }

    body #footer-banner #horizontal-menu-wrap {
        width: 100% !important;
    }

    #horizontal-menu-before {
        margin: 0 auto !important;
        text-align: center !important;
        width: 80px !important;
        display: block !important;
    }

    body #footer-banner #footer-banner-right {
        width: 100% !important;
        padding: 20px 0 !important;
    }

    #footer-horizontal-menu {
        margin-bottom: 20px;
    }

    #footer-horizontal-menu #menu-footer {
        padding: 0 !important;
    }

    #footer-button-container-inner {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    body #footer-banner #footer-banner-right {
        border-top: rgba(255, 255, 255, 0.1) solid 1px !important;
    }
    
    body .custom-panel{ padding-bottom: 5px !important; }
    .custom-panel p{ font-size: 12px !important;}
    .custom-panel a.button{ padding: 0 10px !important; line-height: 30px !important; }
    
}

@media (min-width: 1024px) and (max-width: 1199px) {
    .widget-checkerboard .widget_black-studio-tinymce {
        padding: 8% 5% 0%;
    }
}
.top-navigation li.current-menu-item a {
    color: #000 !important;
}

.top-navigation li.current-page-ancestor a {
    color: #000 !important;
}

.sidr-class-nav-menu li.sidr-class-current-menu-item  a {
    color: #fff !important;
}

.sidr-class-nav-menu li.sidr-class-current-page-ancestor  a {
    color: #fff !important;
}
/*.wpcf7-response-output.wpcf7-validation-errors{    */
.wpcf7-response-output{    
    padding: 4px 1%;
}
@media (max-width: 1023px) {
.wpcf7-response-output{ left:0; }
}
@media (max-width: 767px) {
    .contact-content .wpcf7-form{ flex-wrap: wrap; }
    .wpcf7-response-output{width: 100%;}
}
.popup.button.red-outline:focus{background:none;}

/* 04-03-2021 */
@media (max-width: 1023px) {
    body #site-navigation{
        display: none;
    }
    body #site-banner-main {
        display: flex;
        align-items: center;
    }
    body #site-banner {
        height: auto;
    }
    body #mobile-menu-trigger-wrap {
        display: flex !important;
        align-items: center;
        width: 30px;
    }
    body #site-banner {
        height: auto !important;
    }
    #page .entry-content p br {
        display: none;
    }
    .contact-content .panel-grid-cell .so-panel .textwidget p br{
        display: block !important;
    }   
    #pg-40-0> .panel-row-style {
        min-height: 250px;
    }
    .contact-content .wpcf7-form {
        flex-wrap: wrap;
        width: 100%;
    }
    .contact-content .wpcf7-form .form-column {
        width: 100%;
    }
    .contact-content .wpcf7-form .form-column.form-send {
        float: none;
    }
    .contact-content .wpcf7-form .form-column p {
        margin: 0 !important;
    }
    .wpcf7-form input.wpcf7-form-control.wpcf7-submit {
        width: 100% !important;
    }
    .contact-content .panel-grid-cell .textwidget p {
        margin: 0 !important;
    }
    #footer-banner {
        flex-wrap: wrap;
    }
    #footer-horizontal-menu ul {
        text-align: center !important;
        margin-top: 15px !important;
    }
    #pg-33-0 .textwidget .n2-ss-item-content p {margin: 7px 0 !important;}
}

@media (max-width: 768px) {
    
}

.services-zig {
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    overflow: hidden;
    align-items: stretch !important;
}

.services-zig .panel-grid-cell {
    flex: 1;
}

.services-zig .so-widget-sow-image, .services-zig .so-widget-sow-image * {
height: 100% !important;
}

.services-zig .so-widget-sow-image img {
object-fit: cover;
}
@media only screen and (max-width: 1200px) and (min-width: 768px)  {
.about-block-match  .textwidget p:nth-child(4) {
    min-height: 120px;
}
}


#post-2335 .entry-title{
    margin-top: 80px;
}
#thjmf-job-listings-box .button{
    color:#fff;
}

.thjmf-field-input-wrapper {
    display: block;
}

.thjmf-popup-title{
    margin: 0px 5px 0px 5px  !important
}