/* #Media Queries
================================================== */

/*CSS for serving the retina image to devices with a high "device-pixel-ratio":*/
@media only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-devicepixel-ratio: 1.5), only screen and (min-resolution: 1.5dppx) {
}
@media only screen and (min-width: 1200px) {
    #mainNav li a {
        padding    : 13px 30px 13px;
    }
}

@media only screen and (max-width: 1200px) {
    #homeBanner h2 {
        font-size: 22px;
    }
    #homeBanner .flex-button {
        margin-top: 20px;
    }
    #homeBanner .flex-button:active {
        margin-top: 23px;
    }
    .banner_text_wrapper {
        top: 5%;
    }
}


@media only screen and (min-width: 1009px) and (max-width: 1023px) {

    .logo-img-one img {
        width: 50%;
    }
    #mainNav li a {
        padding: 13px 12px;
        font-size: 12px;
    }
    .our_services_panel {
        width: 100%;
        margin-bottom: 30px;
        margin-top: 20px;
    }
}

@media only screen and (max-width: 1024px) {
    .staff_image {
        width: 200px;
        height: 200px;
        margin-bottom: 20px;
    }
    .people_hp {
        border-right: 0px;
    }
    .hp_testimonials {
        padding-left: 0px;
        padding-top: 0px;
    }
    #homeSections .hp_block {
        margin-bottom: 50px;
    }
    #mainNav li a {
        padding: 13px 8px 13px;
        font-size: 11px;
    }
    .banner_text_wrapper h2 {
        font-size: 20px;
    }
    .banner_text_wrapper p {
        font-size: 13px;
    }
}

/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 1008px) {
    .phone_numbers {
        margin-right: 0px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #footer .social_facebook a, #footer .social_google a, #footer .social_linkedIn a {
        line-height: 18px;
        padding: 10px 0px;
        padding-left: 44px;
    }
}



/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 1008px) {

    /* HOME PAGE TEMPLATE & NAVIGATION & FOOTER */

    #homeBanner .flex-button {
        margin-top: 10px;
    }
    #homeBanner .flex-button:active {
        margin-top: 13px;
    }
    .lrg_ph_no_border {
        width: 56%;
    }
    .lrg_ph_no {
        margin-top: 20px;
        margin-right: -23px;
    }
    #mainNav  li.first a {
        background-position: 10px 14px;;
    }
    #mainNav  li.first a:hover {
        background-position: 5px 14px;;
    }

    .second_main_menu {
        padding: 0px 0px 10px 0px;
    }
    .bottom-shadow {
        background: url("/images/backgrounds/bottom-banner-shadow.png") no-repeat left bottom;
        background-size: 771px 28px;
        padding-bottom: 27px;
    }
    .right-banner-shadow-wrapper {
        background: url("/images/backgrounds/right-side-banner-shadow.png") no-repeat right top;
        background-size: 16px 233px;
    }
    .left-banner-shadow-wrapper {
        background: url("/images/backgrounds/left-side-banner-shadow.png") no-repeat left top;
        background-size: 16px 233px;
    }

    .subscribe_form input[type="email"] {
        width: 35%;
        margin-left: 2%;
    }
    .logo-img-one, .logo-img-two {
        width: 40%;
    }
     /* banner */
    #homeBanner .banner_text h2 {
        line-height: 32px;
        font-size: 26px;
    }
    .banner_text {
        top: 30px;
        left: 30px;
    }
    #homeBanner .banner_text .button {
        margin-top: 5px;
    }
    .flex-control-nav {
        bottom: 27px;
        left: 30px;
    }

     /* people featured */

    .people_featured_thumb {
        display: none;
    }

    .people_featured_desc {
        width: 100%;
    }

    .people_panel .Allpadding {
        padding: 20px 5px 20px 5px;
    }

    .home_boxfooter {
        margin-top: 28px;
    }

    .home_boxfooter .smallbutton {
        margin: 5px 5px 5px 3px;
    }
    .our_services_panel {
        width: 100%;
        margin-bottom: 30px;
    }

    #footer .middle_footer {
        background: url("/images/backgrounds/footer_bg_left.jpg") no-repeat -43px 0px;
        padding-bottom: 40px;
        border-bottom: solid 1px #5B6B7F;
    }

      /* END HOMEPAGE TEMP */

    /* DEFAULT TEMPLATE */

    /* side bar */
    #sidebar .consult_form_label {
        width: 25%;
        text-align: left;
    }
    #sidebar .consultation_form .Allpadding {
        padding: 10px 10px;
    }
    #sidebar .consult_form_input {
        width: 65%;
        padding: 4px 0px 4px 14px;
    }
    #sidebar .consult_form_button {
        padding-left: 34%;
    }
    #sidebar .people_featured_desc {
        width: 100%;
        font-size: 11px;
        margin-left: 5px;
    }
    #sidebar .home_boxfooter {
        margin-top: 15px;
        padding: 0px;
    }
    #sidebar .home_boxheading h2 a {
        padding: 7px 0px 0px 0px;
        font-size: 19px;

    }
    .flex-control-nav {
        display: none;
    }
}

@media only screen and (max-width: 900px) {

}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
	html, body {
		font-size: 14px;
		line-height: 20px;
        background-image: none!important;
	}

    #homeSections {
        padding-bottom:20px;
    }

    .banner_text_wrapper {
        top: 24%;
    }

    #homeBanner h2 {
        font-size: 18px;
    }
    #homeBanner .flex-button {
        margin-top: 10px;
        padding: 5px;
    }

    #homeBanner .flex-button:active {
        margin-top: 3px;
    }

    .banner_text_wrapper p {
        display: none;
    }

    .header_fill {
        display: none !important;
    }

    /* HOME PAGE & FOOTER & BANNER & NAVI */
    #homePage #menu_mobile {
        display : none;
    }

    #mainNav  li.first a {
        margin-left : 0;
        padding: 15px 30px 15px 30px;
        background: none;
        text-indent: 0px;
    }

    .form_label {
        width   : auto;
        padding : 0;
    }

    .form_required {
        width   : 5%;
        padding : 5px 0 0 10px;
    }

    .form_field {
        width      : 100%;
        float      : none;
        margin-top : 0;
    }

    #header {
        height  : 50px;
        padding : 0;
		margin-bottom : 0px;
        z-index: 10;
        width: auto;
        left: 20px;
    }
    #header .topmenu .second_main_menu {
        display: none;
    }
    #header a.logo {
        height          : 30px;
        margin: 10px 0px!important;
        width           : 200px;
        background-size : 100% auto;
        float           : left;
        background-size: contain;
        border: none;
    }
    .mobile_header_border {

    }

    .lrg_ph_no {
        display: none;
    }
    #header .topmenu .second_main_menu {
        background: none;
        text-align: left;
        padding: 15px 0px 0px 0px;
        font-size: 11px;
        z-index: 99999999999!important;
        position: relative;
        width: 100%;
    }

    .topmenu {
        width: 70% !important;
        float: left!important;
    }

    /* banner */
    .bottom-shadow {
        background: url("/images/backgrounds/bottom-banner-shadow.png") no-repeat left bottom;
        background-size: 100% 28px;
        padding-bottom: 20px;
    }

    .right-banner-shadow-wrapper {
        background: url("/images/backgrounds/right-side-banner-shadow.png") no-repeat right top;
        background-size: 16px 100%;
    }
    .left-banner-shadow-wrapper {
        background: url("/images/backgrounds/left-side-banner-shadow.png") no-repeat left top;
        background-size: 16px 100%;
    }
    #homeBanner {
        overflow: visible;
        background: #cccccc;
    }
    .banner_overlay {
        text-align: center;
        position: static;
    }
    .banner_text {
        color: #fff;
        padding: 15px;
        background: #2F76A2;
        position: static;
        top: 17px;
        left: 24px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    #homeBanner .banner_text h2 {
        text-align: center;
        color: #fff;
        width: 100%;
    }
    .banner_text p{
        text-align: center;
        margin-bottom: 20px;
    }
    .flex-control-nav {
        display: none;
        bottom: 11px;
        left: 11px;
    }
    #homeBanner .banner_text .button {
        margin-top: 0px;
    }
    a .featured_circle:before {
        content: '';
        padding-top: 100%;
        display: block;
    }
    a .featured_circle {
        width: 48%;
        margin-right: 2%;
        height: 100%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        border-radius: 50%;
        position: relative;
        display: block;
        vertical-align: middle;
    }
    .featured_circle .title {
        width: 80%;
        display: inline-table;
        padding: 0;
        text-align: center;
        position: absolute;
        margin: auto;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 4;
    }
    .people_person {
        width: 50%;
    }

    .people_person:nth-child(2n+1) {
      clear: left;
    }

    .our_services_panel {
        width: 100%;
        margin-bottom: 30px;
        text-align: center;
    }

    /* people featured */

    .people_panel {
        margin-bottom: 25px;
    }
    .people_featured_desc {
        width: 70%;
    }
    .people_featured_thumb{
        width: 15%;
    }
    /* latest news panel */
    .latest_news {
        margin-bottom: 25px;
    }
    /* footer */
    #footer .middle_footer {
        background: none;
    }
    #footer .grid_9.left_footer_panel {
        width: 45%;
        float: left;
    }
    #footer .grid_15.right_footer_panel {
        width: 45%;
    }
    .logo-img-one {
        padding: 5px 0px;
        border-right: none;
        float: right;
    }
    .social_footer_bar {
        text-align: right;
        height: 43px;
        padding-top: 4px;
    }
    .social_linkedIn {
        text-align: right;
        float: none;
        margin-right: 0px;
        display: inline-block;
    }
    .social_facebook, .social_google {
        text-align: right;
        float: none;
        display: inline-block;
    }
    #footer .social_google a {
        background-position: left 4px;
    }
    #footer .social_facebook a, #footer .social_google a {
        margin-right: 0px;
        font-size: 12px;
        width: 35px;
    }
    #footer .social_linkedIn a {
        font-size: 12px;
        width: 35px;
    }

     /* DEFAULT TEMPLATE */
    #copy {
        background-color: #FFF;
        margin-top: 0px;
    }
    #footer .bottom-footer .left {
        text-align: center;
        height: 30px;
    }
    #footer .bottom-footer .left .Allpadding{
        padding-bottom: 0;
    }
    #footer .bottom-footer .right {
        text-align: center;
    }
    #footer .social_footer_bar {
        height: auto;
    }
    .subscribe_form .newsletter_label {
        margin-right: 5%;
        margin-top: 18px;
    }
    #footer .social_facebook, #footer .social_google, #footer .social_linkedIn {
        margin: 15px 0;
    }
    #footer .social_facebook a, #footer .social_google a, #footer .social_linkedIn a{
        background-position: center center!important;
        width: 100%;
    }
    .subscribe_form input[type="email"] {
        width: 31%;
    }
    #footer .bottom-footer {
        padding: 30px 0;
    }
    /* IFRAME */

    .pageimageright iframe {
        width: 100%;
    }
    #mobile_nav {
        right: 0px;
        top: 0;
        left: auto;
        width: 100%;
        float: right;
        border-bottom: solid 2px #007cba;

    }
    .social_footer_bar .hide-txt {
        display: none;
    }
    .homeCopy {
        -webkit-column-count: 1; /* Chrome, Safari, Opera */
        -moz-column-count: 1; /* Firefox */
        column-count: 1;
    }

    .main_article {
        margin-bottom: 20px;
    }
    .secondary_articles h2 {
        margin-bottom: 9px;
        line-height: 20px;
    }

    .logo-img-one {
        margin-top: 0px;
    }

}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
}

@media only screen and (max-width: 650px) {
    .banner_text_wrapper {
        position: static;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .flex_images {
        display: none;
    }
    .banner_text_wrapper p {
        display: block;
    }
}

@media only screen and (max-width: 578px) {
    .subscribe_form .newsletter_label {
        margin-top: 12px;
    }
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {

    .hidden_mobile {
        display: none;
    }

    .text_align_left_xs {
        text-align: left !important;
    }

    #homeBanner .flex-button:active {
        margin-top: 3px;
    }

    .hide-txt {
        display: none;
    }
    #header a.logo {
        margin: 10px 0px;

    }
    .topmenu .second_main_menu {
        padding-top: 15px;
        width: 100%;
    }
    .topmenu {
        width: 80% !important;
        float: left!important;
    }
    #mobile_nav #mobile_nav_launch {
        border: none;
    }
    #homeBanner ol.flex-control-nav {
        display: none;
    }
    #homeBanner .banner_text {
       top: 5px;
       left: 15px;
    }

    #footer .bottom-footer .left .Allpadding {
        padding-bottom: 30px;
    }
    #footer .bottom-footer .right {
        margin-top: 20px;
    }
    #footer .middle_footer {
        padding-bottom: 10px;
    }
    #copy img.pageimageright, #copy img.pageimageleft {
        width: 97%;
        padding:0;
        margin: 10px 0px;
    }

    h1 {
        font-size: 29px;
    }
    #homeBanner .banner_text .button {
        font-size: 12px;
        padding: 5px!important;
    }
    /* OUR TEAM PAGE */

    #copy p.mobile-our-team {
        margin-bottom: 4px;
    }
    a .featured_circle {
        width: 100%;
        margin-right: 0%;
    }
    .logo-img-one {
        margin-top: 30px;
    }
    .office_alignment {
        text-align: left !important;
    }
}
