/*
* 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; }

/* -------------------------------- Default widths ------------------------------- */
/* The sidebar fixed widths dictate how much space the #content gets */

.layout-1c #content { width: 100%; }
.layout-2c #content { max-width: 820px; }

.inner, body.fluid-width-page #breadcrumbs, body.fluid-width-page .segment-content {
    padding-left: 20px; padding-right: 20px; max-width: 1140px; margin: 0 auto; }

body.fluid-width-page #main .inner, #custom-title-area .wide { max-width: none; padding: 0 !important; margin: 0; }
body.fluid-width-page #content, body.fluid-width-page .entry-content { padding: 0; margin: 0; }
body.fluid-width-page #footer { border: none; }
body.fluid-width-page #breadcrumbs { display: none; }
/* Disable the distracting breadcrumbs on full width pages */

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

/* --------------------- Desktops and laptops -------------------------------- */
@media screen and (min-width: 1400px) {
    .boxed #container, .boxed #sticky-menu-container { 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; }
    .type-portfolio .image-info h3.post-title { font-size: 16px; line-height: 24px; }
    .image-grid .sixcol, .image-grid .fourcol, .image-grid .threecol { margin-bottom: 18px; }

    #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 { }
    .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, #title-area h1 { font-size: 28px; }
    h2, #title-area h2 { font-size: 26px; }
    h3, #title-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 .inner { min-height: 120px; text-align: center; }
    #site-logo { position: relative; margin: 0 auto; top: 0; margin-top: 30px; }
    .social-container { position: relative; display: inline-block; text-align: center; top: 0; margin-top: 20px; }
    #nivo-slider.loading { height: 230px; }

    .sidebar-right-nav, .sidebar-left-nav { background: none; }
    #content, .sidebar-left-nav, .sidebar-right-nav { float: none !important; }
    .sidebar-left-nav, .sidebar-right-nav { padding: 20px 0 !important; }
    #sidebar-after-singular .widget { float: none; margin: 0 0 25px 0; }

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

    #primary-menu { display: 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 #5E5F61; border-bottom: 1px solid #3D3F41; 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: 10px; 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; }
    .carousel-container .entry-summary { display: none; }
    .carousel-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; }
    #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; }
    .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; margin-bottom: 12px; }
    /* Make the grid blog layout two column in smaller tablets but not phones */
    .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) {

    body { font-size: 13px; line-height: 22px; }

    .social-container { margin-top: 0; }

    #content .image-area { float: none; }
    #site-logo a, .social-container { display: inline-block; text-align: center; }
    #nivo-slider.loading { height: 140px; }
    .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 !important; }
    .pricing-table .column.popular { margin-top: 0; }
    .pricing-table .pricing-plan { border: 1px solid #D9DEE1; }
    .pricing-table .pricing-plan.best-selling { 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; }

    #content.default-list .hentry { margin-bottom: 60px; padding-left: 0; }
    .image-info h3.post-title { font-size: 16px; line-height: 24px; }

    #sitemap-template h2, #archives-template h2, .archive h2 { font-size: 24px; line-height: 32px; }

    .entry-snippet, .entry-header { width: auto; display: block; height: auto; }
    .entry-header { position: relative; border: 1px solid #5B9AA9; margin-bottom: 15px; }
    .entry-header .published { font-size: 16px; line-height: 24px; padding: 2px 10px; border-radius: 0; display: inline-block; }
    .entry-header .published abbr span { display: block; text-align: center; }
    .entry-header .published abbr span.month { font-size: 16px; line-height: 24px; font-weight: 300; display: inline; padding-right: 5px; letter-spacing: 1px; }
    .entry-header .published abbr span.date { font-size: 16px; line-height: 24px; display: inline; }
    .entry-header .comments-link { display: inline; padding: 10px; margin: 0; }

    #content .hentry .entry-meta { padding-top: 10px; margin-top: 15px; margin-bottom: 20px; }
    .entry-meta span { font-size: 14px; line-height: 22px; }

    #footer .contact-form .text-input, #footer .contact-form textarea {
        width: 100% !important;
        }
    .carousel-container .type-portfolio .image-info .image-info-buttons { display: none; }
    .carousel-container .type-portfolio .image-info h3.post-title { top: 25%; }
    }

/* -------------------------------------- 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) {
    .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; }
    #footer 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; }

    ul.social-list a { background-image: url('../images/social-icons/social-media-sprite@2x.png'); background-size: 40px 800px; }
    #footer ul.social-list a { background-image: url('../images/social-icons/social-media-exp@2x.png'); background-size: 40px 800px; }

    .social-container a { background-image: url("../images/social-icons/social-sprite@2x.png"); background-size: 972px 33px; }
    #footer-bottom .social-container a { background-image: url("../images/social-icons/social-sprite-footer@2x.png"); background-size: 972px 33px; }

    }
