/*
* Stylesheet for enabling responsiveness of the theme
*
* @package Livemesh Framework
*/

img, object, embed { max-width: 100%;
    /* fit within the available area instead of overflowing */
    }
audio { max-width: 100%; }
video { width: 100% !important; height: auto !important; }

#responsive-select-menu-wrap { display: none; }

/* -------------------------------- Default widths ------------------------------- */
.layout-2c #content {
    /* The sidebar fixed widths dictate how much space the #content gets */
    max-width: 820px; }
#slider-area, #container { width: 100%; }
.boxed #container { max-width: 1180px; width: 96%; }
#sticky-menu-area, #mobile-menu .inner, #header-area, #custom-before-content-area, #before-content-area, #bottom-area, #footer, #main { padding-left: 20px; padding-right: 20px; max-width: 1140px; margin: 0 auto; }
body.fluid-width-page #main, #custom-before-content-area.wide { max-width: none; padding-left: 0; padding-right: 0; }
body.fluid-width-page #content, body.fluid-width-page #main-wrap, body.fluid-width-page .entry-content { padding: 0 !important; margin: 0; }
body.fluid-width-page #bottom-area-wrap { border-top: none; }
body.fluid-width-page .segment-content, body.fluid-width-page .breadcrumbs { max-width: 1140px; padding-left: 20px; padding-right: 20px; margin: 0 auto; float: none; }
.layout-1c #content { width: 100%; }

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

/* --------------------- Desktops and laptops -------------------------------- */
@media screen and (min-width: 1400px) {
    .boxed #container, .boxed #sticky-menu-area-wrap { max-width: 1220px; }
    }
@media screen and (max-width: 1400px) {
    #nivo-slider.loading { height: 350px; }
    }
@media screen and (min-width: 1200px) {
    }

@media only screen and (max-width: 1100px) {
    /* Fix for iOS devices */
    .segment { background-attachment: scroll !important; }
    }

/* -------------------------- Small screens -------------------------------------- */
@media only screen and (max-width : 1024px) {
    .box-frame, .box-frame2 { max-width: 280px; margin: 0 auto; }
    #thumbnail-slider img { height: auto !important; }
    .portfolio-home .image-grid li { margin-bottom: 16px; }
    #nivo-slider.loading { height: 310px; }
    }

/* -------------------------------------- Smaller than standard 960 (devices and browsers) -------------------------------------- */
@media only screen and (max-width: 959px) {
    /* --------------------- Disable non-responsive sliders for devices with smaller screens -------------------*/
    }

/* --------------------------------------Tablet Portrait size to standard 960 (devices and browsers)-------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 959px) {
    .sidebar-right-nav, .sidebar-left-nav { }
    .layout-3c-r .sidebar-left-nav, .layout-3c-l .sidebar-right-nav { }
    .layout-3c-r #content, .layout-3c-l #content { }
    .layout-3c-c .sidebar-left-nav, .layout-3c-c .sidebar-right-nav, .layout-3c-c #sidebar-primary, .layout-3c-c #sidebar-secondary { }
    .layout-3c-c #content { }
    .layout-3c-c .sidebar-left-nav { }

    .flex-caption, .nivo-caption { left: 70px; bottom: 20%; }
    .flex-caption a, .nivo-caption a { font-size: 26px; line-height: 30px; }

    }

/* --------------------------------------All Mobile Sizes (devices and browser)-------------------------------------- */
@media only screen and (max-width: 767px) {
    body { -webkit-text-size-adjust: none;
        /* do not adjust size of text on iPhone */
        }
    h1, h2, h3 { margin-bottom: 20px; }
    h1, #before-content-area h1 { font-size: 28px; }
    h2, #before-content-area h2 { font-size: 26px; }
    h3, #before-content-area h3 { font-size: 22px; }
    .onecol, .twocol, .threecol, .fourcol, .fivecol, .sixcol, .sevencol, .eightcol, .ninecol, .tencol, .elevencol,
    .sixcol.zero-margin, .fourcol.zero-margin, .threecol.zero-margin { margin: 0 0 25px 0; width: 100%; }
    .threecol.equal-margin, .fourcol.equal-margin, .sixcol.equal-margin { padding: 30px 0; }
    .threecol.dual-margin, .fourcol.dual-margin, .sixcol.dual-margin { padding-right: 0; padding-left: 0; margin: 0; border: none; }
    #header-logo { position: relative; margin: 0 auto; }
    #nivo-slider.loading { height: 230px; }
    .testimonials3-section .fivecol { display: none; }
    .client-info .twocol { width: 33.3%; }
    #our-premium-clients .twocol { width: 30%; margin-right: 3.2%; }
    .sidebar-right-nav, .sidebar-left-nav { background: none; }
    #content, .sidebar-left-nav, .sidebar-right-nav { float: none !important; padding: 20px 0 !important; }
    .layout-3c .sidebar-right-nav, .layout-3c .sidebar-left-nav, .layout-3c #sidebar-primary, .layout-3c #sidebar-secondary { left: 0%; }
    #sidebar-after-singular .widget { float: none; margin: 0 0 25px 0; }
    .layout-3c #sidebar-primary, .layout-3c #sidebar-secondary { float: none; padding: 0; }
    .layout-3c-c #content { right: 0; }
    #content.grid-list .hentry { margin-bottom: 40px; }
    .layout-3c-c .sidebar-left-nav { right: 0; }

    /* Do not disturb the post lists */
    ul.post-list .image-area, #content ul.post-list .image-area { float: left !important; }
    #content .image-area img { width: 100% !important; }

    #primary-menu { display: none; }
    #responsive-select-menu-wrap { display: block; position: relative; bottom: 0; padding: 8px 0; border-bottom: 1px solid #ddd; background: #eee; }
    #responsive-select-menu { display: block; outline: none; width: 300px; border: 1px solid #dddddd; padding: 5px; margin: 0 auto; max-width: 85%;
        font-family: inherit; font-size: inherit; color: inherit; height: 35px; line-height: 20px; border-radius: 3px;
        background-image: url(../images/select.png); background-position: center right; background-repeat: no-repeat; background-color: white;
        -webkit-appearance: none; -moz-appearance: none; appearance: none; }
    #mobile-menu { display: block; position: relative; margin: 0; background: #4E5052; }
    #mobile-menu > ul { padding-top: 10px; padding-bottom: 10px; border-top: 1px solid #5E5F61; margin: 0 auto; max-width: 380px; }
    #mobile-menu ul { display: none; list-style: none; text-transform: none; }
    #mobile-menu ul li { border-top: 1px solid #516063; border-bottom: 1px solid #4C3536; margin: 0; }
    #mobile-menu ul li:first-child { border-top: none; }
    #mobile-menu ul li:last-child { border-bottom: none; }
    #mobile-menu ul li a { color: #ccc; display: block; padding: 10px 5px; }
    #mobile-menu ul li a:hover { color: #eee; }
    #mobile-menu-toggle { display: block; position: absolute; top: 30px; right: 0; height: 22px; width: 24px; padding: 5px; border: 2px solid #bbb; }

    .box-frame, .box-frame2 { margin-bottom: 15px; }
    .heading1 { padding: 15px 25px; }
    #portfolio-template .hfeed .clear, #portfolio-full-width .hfeed .clear { padding: 0; }
    #portfolio-template .sixcol, #portfolio-full-width .sixcol, #portfolio-template .fourcol, #portfolio-full-width .fourcol,
    #portfolio-template .threecol, #portfolio-full-width .threecol { padding: 0; }
    .portfolio-home .image-grid li { margin-bottom: 12px; }
    .carouselslider-container .entry-summary { display: none; }
    .carouselslider-container .flexslider .slides .image-area { padding: 2px; }
    .quote-wrap.alignright, .quote-wrap.alignleft { width: 180px; }
    .pullquote, blockquote { font-size: 14px !important; }
    .quote-wrap.alignright, blockquote.alignright { margin-left: 15px; }
    .quote-wrap.alignleft, blockquote.alignleft { margin-right: 15px; }
    #slider-area { background: none; border: none; }
    #nivo-slider-wrap { padding: 0; }
    .nivo-controlNav { display: none; }
    .nivo-caption { left: 50px; bottom: 20%; width: 50%; }
    .nivo-caption a { font-size: 22px; }
    .flex-caption .flex-summary, .nivo-caption .nivo-summary { padding: 5px 10px; font-size: 14px; line-height: 20px; }
    .nivo-directionNav a { height: 30px; width: 30px; }
    .nivo-directionNav .nivo-prevNav span, .nivo-directionNav .nivo-nextNav span { left: 9px; top: 6px; }
    .flex-caption { left: 0; bottom: 20px; max-width: 60%; padding: 0 10px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; width: 50%; }
    .flex-caption a { font-size: 16px; }
    #slider-area .flex-control-nav, #slider-area .flex-direction-nav { display: none; }
    /* Use touch controls */
    .layout-1c #commentform textarea { width: 80%; }
    #content ul.post-list.medium-size .image-area img { width: 124px !important; }
    .grid-list .entry-meta .published i { display: none; }
    .grid-list .entry-meta .published abbr { font-size: 16px; padding: 0; }
    .heading2 .pitch { max-width: none; }

    #styleswitcher { display: none; }
    /* Do not display the styleswitcher in mobile devices */

    .image-info .terms { display: none; }

    }

/* --------------------------------------Mobile Landscape Size to Tablet Portrait (devices and browsers)-------------------------------------- */
@media only screen and (min-width: 480px) and (max-width: 767px) {
    .onecol, .twocol, .threecol, .fourcol, .fivecol, .sixcol, .sevencol, .eightcol, .ninecol, .tencol, .elevencol { width: 100%; }
    .sixcol.zero-margin, .fourcol.zero-margin, .threecol.zero-margin { width: 50%; }
    .image-grid .sixcol, .image-grid .fourcol, .image-grid .threecol { width: 48%; height: auto; }
    /* Make the grid blog layout two column in smaller tablets but not phones */
    .grid-list .sixcol { width: 48%; margin-right: 4%; }
    .grid-list .sixcol.last { margin-right: 0; }
    .team-info .fourcol, .team-info .threecol, .team-info .fourcol.last, .team-info .threecol.last { width: 46%; margin-right: 4%; }
    blockquote.alignleft, blockquote.alignright { width: 200px; padding: 5px 5px 5px 42px; }
    }

/* --------------------------------------Mobile Portrait Size to Mobile Landscape Size (devices and browsers) --------------------------------------*/
@media only screen and (max-width: 479px) {
    #content .image-area { float: none; margin-bottom: 20px; }
    .thumbnail-list .image-area, .thumbnail-list .thumbnail-slider-container, .thumbnail-list .video-box { width: 100% !important; }
    .thumbnail-list .entry-text-wrap { width: 100%; }
    #header-area { text-align: center; }
    #header-logo, #social-container { position: relative; top: 25px; }
    #site-title a, #social-container { display: inline-block; text-align: center; }
    #nivo-slider.loading { height: 140px; }
    #menu-footer { float: left; padding: 10px 0 20px 0; }
    #mobile-menu-toggle { top: 25px; }
    .image-wrapper.alignleft, .image-wrapper.alignright { float: none; margin: 0; }
    .contact-form textarea { }
    .image-grid .sixcol, .image-grid .fourcol, .image-grid .threecol { width: 100%; height: auto; margin: 0 0 20px 0; }
    .client-list img { margin-right: 55px; }
    .pricing-table .column.popular { margin-top: 0; }
    #content .contact-form fieldset p { display: block; width: 80%; }

    .flex-caption a, .nivo-caption a { font-size: 18px; padding: 5px; }
    .flex-caption .flex-summary, .nivo-caption .nivo-summary { display: none; }

    .portfolio-home .image-grid li { margin-bottom: 20px; }

    #commentform input[type="text"] { width: 70% !important; }
    #commentform textarea { width: 85% !important; }
    }

/* -------------------------------------- prettyPhoto styling for small screens --------------------------------------*/
@media only screen and (max-width: 767px) {
    .pp_pic_holder.pp_default { width: 100% !important; left: 0 !important; overflow: hidden; }
    div.pp_default .pp_content_container .pp_left { padding-left: 0 !important; }
    div.pp_default .pp_content_container .pp_right { padding-right: 0 !important; }
    .pp_content { width: 100% !important; height: auto !important; }
    .pp_fade { width: 100% !important; height: 100% !important; }
    .pp_fade iframe { width: 100% !important; }
    a.pp_expand, a.pp_contract, .pp_hoverContainer, .pp_gallery, .pp_top, .pp_bottom { display: none !important; }
    #pp_full_res img { width: 100% !important; height: auto !important; }
    .pp_details { width: 94% !important; padding-left: 3%; padding-right: 4%; padding-top: 10px; padding-bottom: 20px; background-color: #fff; margin-top: -2px !important; }
    a.pp_close { right: 10px !important; top: 10px !important; }
    }

/* -------------------------------------- Retina displays like iPhone 4+ and iPad 3+ --------------------------------------*/
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
    /* abbr.published, .entry-meta .category, .entry-meta .author, .entry-meta .comments-link,
    ul#recentcomments li.recentcomments { background-image: url('../images/icons/blog-sprite@2x.png'); background-size: 84px 89px; }*/
    .contact-info .street1, .contact-info .email, .contact-info .phone, .contact-info .fax, #reply-title, .team-info .email,
    .team-info .phone { background-image: url('../images/icons/widget-sprite@2x.png'); background-size: 120px 109px; }
    ul.social-list a { background-image: url('../images/social-icons/social-media-sprite@2x.png'); background-size: 40px 800px; }
    #bottom-area ul.social-list a { background-image: url('../images/social-icons/social-media-exp@2x.png'); background-size: 40px 800px; }

    /* TODO: Fix the scaled image for pixel perfect positioning */
    .social-list .facebook { background-position: 0 -161px; height: 39px; }
    .social-list .twitter { background-position: 0 -321px; height: 39px; }
    .social-list .youtube { background-position: 0 -401px; height: 39px; }
    .social-list .flickr { background-position: 0 -641px; height: 39px; }
    .social-list .linkedin { background-position: 0 -481px; height: 39px; }
    .social-list .googleplus { background-position: 0 -81px; height: 39px; }
    .social-list .rss { background-position: 0 -561px; height: 39px; }
    }