/*
* 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 #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 #header.sticky { 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 to disable parrallax scroll and fixed positioning */
    .segment { background-attachment: scroll !important; background-position: center center !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; }
    .pricing-table .threecol { width: 48%; margin-right: 2%; margin-bottom: 20px; }

    #site-logo, #primary-menu { display: block; float: none; }
    #site-logo, #header .button.get-app, #header .social-container { top: 10px; }
    #header > .inner > .warp { min-height: 80px; }
    #primary-menu { margin-right: 0; padding-top: 15px; }
    #primary-menu > ul.menu > li > a { font-size: 16px; line-height: 60px; }
    #primary-menu > ul.menu > li:hover > ul.sub-menu { top: 56px; }
    #nivo-slider.loading { height: 310px; }

    }

/* -------------------------------------- Smaller than standard 960 (devices and browsers) -------------------------------------- */
@media only screen and (max-width: 959px) {
    #title-area p { width: 100%; }
    /* --------------------- 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; }

    #title-area h1, #title-area h2 { font-size: 32px; line-height: 38px; }
    .heading2 .title { font-size: 28px; line-height: 36px; }

    .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.sticky { display: none !important; }
    #header > .inner { text-align: center; }
    #header > .inner > .wrap { min-height: 40px; }
    /*No need to worry about sticky menu in mobile */
    .sticky-wrapper { height: auto !important; }
    #site-logo { position: relative; margin: 10px auto; top: 0; }
    .social-container { position: relative; display: inline-block; text-align: center; top: 0 !important; }
    #header .button.get-app { position: relative; display: inline-block; text-align: center; top: 0; margin: 10px auto; display: none; }
    #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 !important; }
    #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: 5px; right: 10px; 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; line-height: 24px !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; }

    .comment-wrap .comment-arrow { top: 80px; left: 30px;
        border-bottom-color: #FFF; border-left-color: rgba(0, 0, 0, 0); border-right-color: rgba(0, 0, 0, 0); border-top-color: rgba(0, 0, 0, 0); }

    .comment-box-wrap, .comment-list .avatar-wrap { float: none; display: block; }
    .comment-box-wrap { max-width: 100%; width: 100%; top: 20px; }
    .comment ol.children { margin-left: 10px; }

    .gallery-columns-1 .gallery-item { margin-right: 0; width: 100%; }

    .gallery-caption { 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; }
    ul.image-grid.rounded li.fourcol.portfolio-item { width: 40%; margin-right: 0 !important; }
    ul.image-grid.rounded li.fourcol.portfolio-item:nth-child(odd) { margin-right: 19% !important; }
    /* 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; }

    #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% !important; height: auto; margin: 0 0 20px 0 !important; }
    .pricing-table .threecol { width: 100%; margin: 0 0 20px 0 !important; }
    #content .contact-form fieldset p { display: block; width: 80%; }

    #commentform p { margin-bottom: 10px; }
    #commentform input[type="text"] { float: none; width: 90%; margin: 0; }
    #commentform textarea { width: 90%; clear: both; }

    .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%; }

    }

@media (max-width: 359px) {
    .gallery { margin-left: 0; }
    .gallery .gallery-item, .gallery-columns-2.gallery-size-thumbnail .gallery-item { max-width: none; width: 49%;
        width: -webkit-calc(50% -4px); width: calc(50% -4px); }
    .gallery-columns-1.gallery-size-medium, .gallery-columns-1.gallery-size-thumbnail,
    .gallery-columns-2.gallery-size-thumbnail, .gallery-columns-3.gallery-size-thumbnail { display: block; }
    .gallery-columns-1 .gallery-item, .gallery-columns-1.gallery-size-medium .gallery-item,
    .gallery-columns-1.gallery-size-thumbnail .gallery-item { text-align: center; width: 98%;
        width: -webkit-calc(100% -4px); width: calc(100% -4px); }
    .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-5 .gallery-item:nth-of-type(5n),
    .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-9 .gallery-item:nth-of-type(9n) { margin-right: 4px; }
    .gallery br { display: none; }
    .gallery .gallery-item:nth-of-type(even) { margin-right: 0; }
    }
/* -------------------------------------- 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) {

    #site-logo a img.retina-logo { display: block; }
    #site-logo a img.standard-logo { display: none; }

    .contact-info .street1, .contact-info .email, .contact-info .phone, .contact-info .fax, .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-widget@2x.png'); background-size: 972px 33px; }
    #footer ul.social-list a { background-image: url('../images/social-icons/social-widget@2x.png'); background-size: 972px 33px; }

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

    #featured-sources .heading2 .title { background: url(../images/icons/featured-icon@2x.png) no-repeat 0 2px transparent; background-size: 28px 28px; }
    .button.get-app i { background-image: url(../images/icons/btn-iphone-icon@2x.png); background-size: 18px 31px; }
    .search-form .submit { background-image: url(../images/icons/search-icon@2x.png); background-size: 34px 37px; }
    .contact-form .button i.send { background-image: url(../images/icons/send-icon@2x.png); background-size: 17px 17px; }
    .image-info a.lightbox-link span { background-image: url(../images/icons/zoom-icon@2x.png); background-size: 23px 25px; }

    .pricing-table .plan-details li i.tick { background: url(../images/icons/tick@2x.png) no-repeat 0 7px transparent; background-size: 14px 10px; }
    .pricing-table .plan-details li i.cross { background: url(../images/icons/cross@2x.png) no-repeat 0 7px transparent; background-size: 10px 9px; }

    .widget li { background-image: url('../images/icons/bullet@2x.png'); background-size: 6px 8px; }
    #footer .widget li { background-image: url('../images/icons/bullet-footer@2x.png'); }
    #content .taglist { background: url(../images/icons/tag-icon@2x.png) 0 4px no-repeat; background-size: 24px 24px; }
    }
