@media only screen and (max-width: 1300px) {
    
    body {
        overflow-x: hidden;
        overflow-y: auto;
    }
    
    .container {
        position: relative;
        float: left;
        width: 100%;
        height: auto;
        overflow: auto;
    }
    
    .header {
        display: none;        
    }
    
    .site_header {
        font-size: 24px;
        padding: 12px 0px 0px 15px;
    }
    
    .mini_ray {
        display: block;
        float: left;
        padding: 10px 0px 10px 20px;
        position: relative;
    }
    
    .mini_ray img {
        width: 32px;
        height: auto;
    }
    
    
    
    /* MAIN MENU */
    
    #main_menu {
        display: none;
    }
    
    #main_menu_mobile {
        position: fixed;
        z-index: 100000;
        top: 0px;
        bottom: 0px;
        left: 0px;
        width: 100%;
        padding: 10px 0px 10px 0px;
        background-color: #222222;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
    
    #main_menu_mobile .menu {
        list-style: none;
        background-color: #222222;
    }
    
    #main_menu_mobile .menu-item {
        position: relative;
        display: block;
        background-color: #222222;
    }
    
    #main_menu_mobile .menu-item a {
        color: #FFFFFF;
        font-weight: bold;
        text-decoration: none;
        display: block;
        padding: 15px 15px 15px 15px;
        background-color: #222222;
        border-bottom: 1px solid #444444;
    }
    
    #main_menu_mobile .menu-item a:hover {
        color: #FFFFFF;
        background-color: #333333; /* for non-css3 browsers */
    	filter: progid:DXImageTransform.Microsoft.Gradient(StartColorStr='#333333', EndColorStr='#222222'); /* for IE */
    	background: -webkit-gradient(linear, left top, left bottom, from(#333333), to(#222222)); /* for webkit browsers */
    	background: -moz-linear-gradient(top, #333333,  #222222); /* for firefox */
    	background-image: -o-linear-gradient(top, #333333, #222222); /* for opera */
    }
    
    #main_menu_mobile .current-menu-item a {
        color: #BB202A;
        font-weight: bold;
        text-decoration: none;
    }
    
    /* sub menus */
    #main_menu_mobile .menu-item .sub-menu {
        padding-left: 20px;
    }
    
    /* sub sub menus */
    #main_menu_mobile .menu-item .sub-menu .menu-item .sub-menu {
        padding-left: 20px;
    }
    
    #show_main_menu_mobile_div {
        position: fixed;
        top: 0;
        width: 100%;
        background-color: #202020;
        border-bottom: 1px solid #FFFFFF;
        display: block;
        z-index: 99999;
    }
    
    .show_main_menu_mobile_div_inner_wrapper {
        position: relative;
        float: right;
    }
    
    .show_main_menu_mobile:link,
    .show_main_menu_mobile:active,
    .show_main_menu_mobile:hover,
    .show_main_menu_mobile:visited {
        color: #999999;
        text-decoration: none;
        display: block;
        padding: 15px 20px 15px 20px;
    }
    
    #close_main_menu_mobile_div {
        display: none;
        position: fixed;
        top: 0px;
        right: 0px;
        background-color: #333333;
        border-radius: 0px 0px 0px 5px;
        z-index: 100001;
    }
    
    #close_main_menu_mobile {
        display: block;
        padding: 5px 20px 10px 20px;
        color: #888888;
        text-decoration: none;
        font-size: 16px;
    }
    
    /* ENDOF MAIN MENU */
    
    
    
    .main_content {
        float: left;
        margin-bottom: 60px;
        max-height: none;
        -ms-overflow-style: auto;
        overflow: auto;
        position: relative;
        top: 70px;
        width: 100%;
    }
    
    .main_content_inner_wrapper {
        width: auto;
        padding: 30px 20px 20px 20px;
    }
    
    .page_post_content {
        width: calc(100% - 360px); /* full width minus width of sidebar + margins */     
    }
    
    .footer {
        bottom: 0px;
        float: left;
        height: auto;
        position: relative;
        width: 100%;
    }
    
    .footer_inner_wrapper {
        height: auto;
        padding-bottom: 30px;
        width: 100%;        
    }
    
}



/********** 1000px **********/

@media only screen and (max-width: 1000px) {
    
    .blog_main_page_post_date {
        margin-bottom: 15px;
        width: 100%;
    }
    
    .blog_main_page_post_link {
        float: left;
    }
    
}




/********** 960px **********/

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



/********** 900px **********/

@media only screen and (max-width: 900px) {
    
    /* BLOG PAGINATION */
    .blog_pagination {
        margin: 0px 0px 0px 0px;
        padding: 5px 0px 0px 0px;
    }
    
    .blog_pagination_previous_link a {
        display: block;
        margin: 0px 0px 20px 0px;
    }
    
    .blog_pagination_next_link a {
        display: block;
        margin: 20px 0px 0px 0px;
    }
    
    /* ENDOF BLOG PAGINATION */
    
}



/********** 800px **********/

@media only screen and (max-width: 800px) {
    
    .hide_800 {
        display: none;
    }
    
    .display_block_800 {
        display: block;
        margin-bottom: 5px;
    }
    
}



/********** 700px **********/

@media only screen and (max-width: 700px) {
    
    body {
        line-height: 175%;
    }
    
    .hide_700 {
        display: none;
    }
    
    h2 {
        font-size: 24px;
    }
    
    #show_main_menu_mobile_div .site_header {
        font-size: 16px;
        padding-top: 15px;
    }
    
    .main_content {
        margin-bottom: 10px;
    }
    
    .main_content_inner_wrapper {
        padding-top: 20px;
    }
    
    .main_content h1 {
        font-size: 30px;
    }
    
    .page_post_content {
        width: 100%;
    }
    
    .page_post_content img {
        height: auto;
        width: 100%;
    }
    
    .blog_main_page_post:last-of-type {
        margin-bottom: 0px;
    }
            
    .sidebar {
        width: 100%;
        margin-right: 0px;
        padding-bottom: 40px;
    }
    
    
    /* CONTACT FORM */
    
    
    /* ENDOF CONTACT FORM */
    
    
    
    /* GOOGLE MAPS */

    #map_canvas {
        display: none;
    }
    
    /* ENDOF GOOGLE MAPS */
    
    
    /* FOOTER */
    
    .footer_contact_link {
        background-color: #333333;
        border-radius: 5px;
        display: none; /* only show this on home and portfolio page */
        font-size: 20px;
        margin-top: 20px;
        padding: 15px 20px 15px 20px;
        text-align: center;
    }
    
    a.footer_contact_link:hover {
        background-color: #2A2A2A;
        color: #999999;
    }
    
    /* ENDOF FOOTER */
    
}




/********** 360px **********/

@media only screen and (max-width: 360px) {
    
    .site_header {
        font-size: 20px;
    }
    
}




@media only screen and (min-width: 1300px) and (max-height: 900px) {
    
    .header {
        height: 135px;
    }
    
    .raymond img {
        width: 50px;
    }
    
    .site_header {
        font-size: 24px;
        padding: 12px 0px 0px 15px;
    }
    
    .main_content {
        max-height: calc(100vh - 195px); /* window height minus (header height + footer height) */
        top: 135px;
    }
    
    .footer {
        height: 60px;
    }
    
    .footer_inner_wrapper {
        padding: 20px 20px 0px 20px;
        font-size: 14px;
    }
    
}