/* ==================================================================================================
    RESPONSIVE    
   ================================================================================================== */

/* ---------- All non mobile devices (everything over 1121px) ---------- */

@media only screen and (min-width: 1121px) { 

    .no-padding-top-desktop {    padding-top: 0 }

    .no-padding-bottom-desktop {    padding-bottom: 0 }

    .no-margin-top-desktop {    margin-top: 0 }

    .no-margin-bottom-desktop {    margin-bottom: 0 }
	
}

/* ---------- Devices up to 1280px ---------- */

@media only screen and (max-width: 1280px) {

    .page-links-box .cont {    padding: 40px }

    /* ---- Home ---- */

    .page-links-box h2 {
        font-size: 46px;
        letter-spacing: 0;
        line-height: 46px;
    }

     .page-links-box h2 small {
         font-size: 0.5em;
         letter-spacing: 0;
         line-height: 1em;
     }
	 
}

/* ---------- All non desktop devices up to 1120px (when a form of the mobile navigation is showing) ---------- */

@media only screen and (max-width: 1120px) { 

    /* ---------- Typography ---------- */

    body,
    textarea,
    input,
    label { }

    body,
    textarea,
    label { }

    /* ---------- Styling ---------- */

    .no-padding-top-mobile {    padding-top: 0 }

    .no-padding-bottom-mobile {    padding-bottom: 0 }

    .no-marign-top-mobile {    margin-top: 0 }

    .no-margin-bottom-mobile {    margin-bottom: 0 }

    /* ---------- Gallery Shortcode ---------- */

    .gallery-columns-2 .gallery-item,
    .gallery-columns-3 .gallery-item,
    .gallery-columns-4 .gallery-item,
    .gallery-columns-5 .gallery-item,
    .gallery-columns-6 .gallery-item,
    .gallery-columns-7 .gallery-item,
    .gallery-columns-8 .gallery-item,
    .gallery-columns-9 .gallery-item {
        height: auto;
        width: 50%;
    }

    img.alignnone,
    div.alignnone,
    .wp-caption.none {
        max-width: 100%;
        margin: 40px auto;
    }

    /* ---------- Layout ---------- */

    .wrapper,
	.site-footer .site-width {
		border: none;
		padding: 0;
	}
	
	[data-stellar-background-ratio] { background-size: auto; }
	

    /* ---------- Navigation ---------- */

    .admin-bar .site-header {    top: auto }

    .site-header,
    .site-header .site-width {
        height: auto;
        position: relative;
    }

    .wrapper .site-header {    padding: 0; }

    .header-logo,
    .header-contact-info {
        border-bottom-width: 1px;
        width: 50%;
    }

    .header-logo:after {    right: 1px }

    .map-link {    padding: 87px 0 }

    .header-navigation {    width: 100% }

    #primary-nav {    text-align: left }

    .navigation-rows-1 #primary-nav > li > a {    padding: 43px 0 42px }

    #primary-nav > li > a {
        border-left: none;
        border-right-width: 1px;
    }

    /* Disable Small Header */

    .header-small .site-header,
    .header-small .site-header .site-width {    height: auto }

    .header-small .toggle {    display: none }

    .header-small .header-logo,
    .header-small .header-contact-info,
    .header-small .header-navigation {    height: 200px }
	
	.header-small .header-logo {
		margin-left: 0;
		text-align: center;
	}
	
    .header-small .header-logo:after {    display: block }

    .header-small .header-contact-info {    display: block }

    .header-small .header-navigation {    display: block }
	
    /* ---------- Footer ---------- */
	
	.site-footer-wrapper .site-footer .site-width { padding: 0; }
	
	.copyright-content { margin-left: 0; }
	
    /* ---------- Sidebars ---------- */
	
	.sidebar-links .current_page_item:after {
		border-width: 27px 27px 27px 0;
	}
	
    .sidebar-links a,
    .map-link {
        font-size: 18px;
        letter-spacing: 0;
        line-height: 22px;
    }

    /* ---------- Templates ---------- */

    /* ---- Home ---- */

    .sequence {    padding-bottom: 65% }

    .sequence-frame .funky-button {    margin-top: 20px }

}

/* ---------- Tablet Landscape up to 1024px ---------- */

@media only screen and (max-width: 1024px) { 

    body {    overflow-x: hidden }

    /* ----- Touch Navigation ----- */

    .site-header {    overflow: hidden }

    .header-logo,
    .header-contact-info {
        border-bottom-width: 0;
        width: 40%;
    }

    .header-contact-info:after {    display: block }

    .site-header .toggle-menu {
        display: block;
        font-size: 40px;
        position: absolute;
        right: 0;
        width: 20%;
        height: auto;
        border-left-width: 0;
    }

    .toggle span {
        height: 200px;
        line-height: 200px;
    }

    .header-navigation {
        display: none;
        clear: both;
        float: none;
        height: auto;
    }

    .header-small .header-navigation,
    .no-js .header-navigation {
        display: block;
        height: auto;
    }

    #primary-nav {    border-right-width: 0 }

     #primary-nav li {
         border-bottom-width: 1px;
         display: block;
         width: auto;
     }

    .navigation-rows-1 #primary-nav > li:nth-of-type(1),
    .navigation-rows-1 #primary-nav > li:nth-of-type(2),
    .navigation-rows-1 #primary-nav > li:nth-of-type(3),
    .navigation-rows-1 #primary-nav > li:nth-of-type(4),
    .navigation-rows-2 #primary-nav > li:nth-of-type(1),
    .navigation-rows-2 #primary-nav > li:nth-of-type(2),
    .navigation-rows-2 #primary-nav > li:nth-of-type(3),
    .navigation-rows-2 #primary-nav > li:nth-of-type(4),
    .navigation-rows-2 #primary-nav > li:nth-of-type(5),
    .navigation-rows-2 #primary-nav > li:nth-of-type(6),
    .navigation-rows-2 #primary-nav > li:nth-of-type(7),
    .navigation-rows-2 #primary-nav > li:nth-of-type(8) {    display: block }

    #primary-nav ul {
        background: transparent;
        display: block;
        margin: -35px 0 40px;
        padding: 0;
        position: relative;
        top: auto;
        width: auto;
    }

    #primary-nav li a {    border-width: 0 }

    #primary-nav > li:first-child > a {    border-top-width: 1px }

    #primary-nav ul li {    margin: 20px 40px }

    #primary-nav ul li:first-child {    margin-top: 20px }

    .fixed-background {
        background-attachment: scroll;
        background-position: center center;
    }

    .content-padding {
        max-width: none;
        padding: 60px 40px;
    }

    .entry-body {
        float: none;
        margin-right: 0;
        width: auto;
    }

    [data-stellar-background-ratio] {   
		background-position: center !important;
		background-size: cover;
	}

    /* ----- Footer ----- */

    .site-footer-wrapper {    height: auto !important }

    .site-footer {
		position: relative;
	}
	
	.footer-content {
		padding: 60px 40px 40px;
		text-align: center;
	}
		
		.footer-logo {
			float: none;
			margin: 0 auto 40px;
			width: auto;
		}
	
			.footer-contact-info,
			.footer-navigation {
				float: none;
				margin: 0;
				overflow: hidden;
				width: 100%;
			}
			
			.footer-contact-info .half { 
				float: none;
				margin-right: 0;
				width: auto;
			}
			
			.footer-contact-info .half + .half {    margin-top: 20px }

			.footer-navigation h4 {    margin-top: 40px }		
			
    .copyright {
		padding: 0 40px 60px;
		text-align: center;
	}

    /* Sidebar -- */

    section.page-content {    background: #c9c4b7 }

     section.page-content > .content-padding,
     section.page-content > .contact-section-1 {    background: #d4d1c9 }

    .content-padding .sidebar-widgets {
        background: #c9c4b7;
        margin: 40px -40px -60px -40px;
        padding: 1px 40px 20px;
        clear: both;
        float: none;
        left: auto;
        right: auto;
        width: 100%;
    }

    .sidebar .post-meta {
        background: none;
        padding: 0;
    }

    .sidebar-widgets input[type="text"],
    .sidebar-widgets input[type="email"],
    .sidebar-widgets input[type="search"],
    .sidebar-widgets input[type="password"],
    .sidebar-widgets textarea,
    .sidebar-widgets select {    background: #E6E6E6 }

    /* ---------- Templates ---------- */

    /* ---- Home ---- */

    .page-links-box h2 {
        font-size: 36px;
        letter-spacing: 0;
        line-height: 36px;
    }

     .page-links-box h2 small {
         font-size: 0.5em;
         letter-spacing: 0;
         line-height: 1em;
     }

    /* ---- Single ---- */

    .sidebar .post-meta > span {    display: inline-block }

     .sidebar .post-meta > span + span:before {    content: " | " }

    /* ---- Contact ---- */

    .contact-info {
        font-size: 16px;
        line-height: 26px;
    }

    .page-links-box .cont {    padding: 20px }

    .contact-info span:before {
        font-size: 20px;
        line-height: 28px;
    }
	
	
	/* ---------- Shortcodes ---------- */
	
	/* Menu Item */
	.fourth .funky-menu-item .funky-menu-item-image,
	.third .funky-menu-item .funky-menu-item-image,
	.half .funky-menu-item .funky-menu-item-image,
	.two-thirds .funky-menu-item .funky-menu-item-image {
		float: none;
		max-width: 100%;
		margin: 0 auto 20px;
	}
	
	.fourth .has-image .funky-menu-item-title,
	.third .has-image .funky-menu-item-title,
	.half .has-image .funky-menu-item-title,
	.two-thirds .has-image .funky-menu-item-title { width: 76%; }
	
	.fourth .has-image .funky-menu-item-title + .funky-menu-item-price + .funky-menu-item-description,
	.third .has-image .funky-menu-item-title + .funky-menu-item-price + .funky-menu-item-description,
	.half .has-image .funky-menu-item-title + .funky-menu-item-price + .funky-menu-item-description,
	.two-thirds .has-image .funky-menu-item-title + .funky-menu-item-price + .funky-menu-item-description { width: auto; }

}

/* ---------- Tablet Portrait up to 1000px ---------- */

@media only screen and (max-width: 1000px) { 

    /* ---- Sidebars ---- */

    .sidebar-background.widgets {    display: none }

    .sidebar-widgets {
        clear: both;
        float: none;
        left: auto;
        padding: 1px 0 20px;
        right: auto;
        width: auto;
    }

     .sidebar-widgets .widget {    margin: 40px }

    .sidebar-links,
    .sidebar-background.links {    width: 30% }

    .sidebar-50,
    .sidebar + .sidebar-25,
    .sidebar + .content-padding + .sidebar-background + .sidebar {    width: 70% }

    .sidebar + .content-padding + .sidebar-background + .sidebar {    margin-left: 30% }

    .sidebar-25 {    width: 100% }

    /* ---------- Templates ---------- */

    /* ---- Contact ---- */

    .contact-section-1 .content-padding {
        clear: both;
        float: none;
        margin: 0;
        width: 100%;
    }

    .google-map,
    .google-map.half {
        bottom: auto;
        clear: both;
        float: none;
        height: 0;
        left: auto;
        position: relative;
        padding-bottom: 75%;
        right: auto;
        top: auto;
        width: auto;
    }

    .contact-info.page-links-col-3 .page-links-box {
        padding-bottom: 75%;
        width: 100%;
    }
	
}

/* ---------- All non-mobile (AKA one column) greater than 768px ---------- */

@media only screen and (min-width: 768px) { 

    /* Hide mobile only content */

    .show-mobile {    display: none !important }

    /**
         * Adjust top margin of first item in columns
         * if row of columns is first content in section
         **/

    /* Fourth */

    .content-padding > .fourth:first-child > *:first-child,
    .content-padding > .fourth:first-child + .fourth > *:first-child,
    .content-padding > .fourth:first-child + .fourth  + .fourth > *:first-child,
    .content-padding > .fourth:first-child + .fourth  + .fourth + .fourth > *:first-child,
    .content-padding > .fourth:first-child + .half > *:first-child,
    .content-padding > .fourth:first-child + .fourth  + .half > *:first-child,
    .content-padding > .fourth:first-child + .half + .fourth  > *:first-child,
    .content-padding > .fourth:first-child + .three-fourths > *:first-child,
    .entry-body > .fourth:first-child > *:first-child,
    .entry-body > .fourth:first-child + .fourth > *:first-child,
    .entry-body > .fourth:first-child + .fourth  + .fourth > *:first-child,
    .entry-body > .fourth:first-child + .fourth  + .fourth + .fourth > *:first-child,
    .entry-body > .fourth:first-child + .half > *:first-child,
    .entry-body > .fourth:first-child + .fourth  + .half > *:first-child,
    .entry-body > .fourth:first-child + .half + .fourth  > *:first-child,
    .entry-body > .fourth:first-child + .three-fourths > *:first-child,
    /* Third */
        .content-padding > .third:first-child > *:first-child,
    .content-padding > .third:first-child + .third > *:first-child,
    .content-padding > .third:first-child + .third + .third > *:first-child,
    .content-padding > .third:first-child + .two-thirds > *:first-child,
    .entry-body > .third:first-child > *:first-child,
    .entry-body > .third:first-child + .third > *:first-child,
    .entry-body > .third:first-child + .third + .third > *:first-child,
    .entry-body > .third:first-child + .two-thirds > *:first-child,
    /* Half */
        .content-padding > .half:first-child > *:first-child,
    .content-padding > .half:first-child + .half > *:first-child,
    .content-padding > .half:first-child + .fourth > *:first-child,
    .content-padding > .half:first-child + .fourth + .fourth > *:first-child,
    .entry-body > .half:first-child > *:first-child,
    .entry-body > .half:first-child + .half > *:first-child,
    .entry-body > .half:first-child + .fourth > *:first-child,
    .entry-body > .half:first-child + .fourth + .fourth > *:first-child,
    /* Two Thirds */
        .content-padding > .two-thirds:first-child > *:first-child,
    .content-padding > .two-thirds:first-child + .third > *:first-child,
    .entry-body > .two-thirds:first-child > *:first-child,
    .entry-body > .two-thirds:first-child + .third > *:first-child,
    /* Three Fourths */
        .content-padding > .three-fourths:first-child > *:first-child,
    .content-padding > .three-fourths:first-child + .fourth > *:first-child,
    .entry-body > .three-fourths:first-child > *:first-child,
    .entry-body > .three-fourths:first-child + .fourth > *:first-child {    margin-top: 0 }
	
}

/* ---------- Mobile Layout (AKA One Column) up to 767px ---------- */

@media only screen and (max-width: 767px) { 

    /* Hide all desktop only content */

    .show-desktop {    display: none !important }

    /* ----- Typography ----- */

    h1 {
        font-size: 26px;
        letter-spacing: 0;
        line-height: 36px;
    }

    h2,
	.text-logo {
        font-size: 24px;
        line-height: 34px;
    }

    h3 {
        font-size: 20px;
        line-height: 30px;
    }

    h4 {
        font-size: 18px;
        line-height: 28px;
    }

    h5 {
        font-size: 16px;
        line-height: 26px;
    }

    h6 {
        font-size: 14px;
        line-height: 24px;
    }
	
	.page-header h1,
    .parallax-section h1 {
        font-size: 26px;
        letter-spacing: 0;
        line-height: 36px;
    }

     h1.post-title  small,
     .page-header h1 small,
     .parallax-section h1 small {
         font-size: 0.55em;
         letter-spacing: 0;
         line-height: 1em;
     }
	
	.page-header,
    .parallax-section {
		font-size: 15px;
		line-height: 27px;
	}
	
	
    /* ----- Columns ----- */

    .fourth,
    .third,
    .half,
    .two-thirds,
    .three-fourths {
        clear: both;
        float: none;
        margin: 0;
        width: auto;
    }

     .fourth:before,
     .fourth:after,
     .third:before,
     .third:after,
     .half:before,
     .half:after,
     .two-thirds :before,
     .two-thirds :afte,
     .three-fourths:before,
     .three-fourths:after {
         content: " ";
         display: table;
     }

     .fourth:after,
     .third:after,
     .half:after,
     .two-thirds :after,
     .three-fourths:after {    clear: both }

    /* ---------- Layout ---------- */

    /* ---- Header ---- */

    .header-logo:after {    display: none }

    .header-logo,
    .header-contact-info,
    .site-header .toggle-menu {
        border-left-width: 0;
        border-right-width: 0;
        float: none;
        width: 100%;
    }

    .header-small .header-logo {    text-align: center }

    .site-header .toggle-menu {    position: relative }

    .header-small .toggle {    height: auto }

    .header-contact-info,
    .site-header .toggle-menu {    border-top-width: 1px }

    .site-header .toggle-menu {    border-bottom-width: 1px }

    /* ---- Navigation ---- */

    #primary-nav > li:first-child > a {    border-top-width: 0 }

    /* ---- Content ---- */

    .page-header {
        height: auto;
        min-height: 0;
        padding: 150px 0;
    }

    .small-page-header {    padding: 100px 0 }

    .page-header > .element-height {    position: relative }

     .page-header > .element-height .holder,
     .page-header > .element-height .cont {
         display: block;
         padding: 0 20px;
         position: relative;
         width: auto;
     }

     .page-header > .element-height .cont {    padding: 0 }

    .sidebar +.sidebar-25,
    .sidebar-50 {
        float: none;
        width: 100%;
    }

    .content-padding {    padding: 40px 10px }

    .entry-body {
        float: none;
        margin-right: 0;
        width: auto;
    }

     .entry-body .sticky {    padding: 10px }

    /* ---- Sidebar ---- */

    .sidebar-background {    display: none }

    .sidebar-links {
        float: none;
        width: 100%;
    }

     .sidebar-links > ul {
         display: none;
         overflow: hidden;
     }

    .no-js .sidebar-links > ul {    display: block }

    .sidebar-links .current_page_item:after {    display: none }

    .sidebar-links .current_page_item a {
        background: #373737;
        color: #FFF;
    }

    .content-padding .sidebar-widgets {
        margin: 40px -20px -60px -20px;
        padding: 1px 10px 20px 20px;
    }

    .sidebar-widgets,
    .sidebar + .content-padding + .sidebar-background + .sidebar {
        margin: 0;
        padding-bottom: 60px;
        width: auto;
    }

     .sidebar-widgets > .widget {    margin: 40px 10px 0 }

     .sidebar-widgets > .widget:first-child {    margin-top: 40px }

    /* ---- Footer ---- */

    .footer-content {    padding: 60px 10px 40px; }  

    .copyright {    padding: 0 10px 40px; }
	

    /* ---------- Templates ---------- */

    /* ---- Home ---- */

    .sequence {    padding: 0 0 175% }

    .sequence-frame .funky-button {    margin-top: 20px }

    .page-links-col-1 .page-links-box,
    .page-links-col-2 .page-links-box,
    .page-links-col-3 .page-links-box,
    .page-links-col-3 .page-links-box:nth-of-type(3n),
    .page-links-col-4 .page-links-box {
        padding-bottom: 75%;
        width: 100%;
    }

    /* ---- Contact ---- */

    .google-map,
    .google-map.half {    padding-bottom: 125% }

    /* ---- Parallax ---- */

    .page-header .element-height,
    .parallax-section .element-height {
        margin: 0;
        width: 100%;
    }

    .parallax-section .cont {    padding: 40px 20px }
	
		.fill-background-content {    padding: 20px; }
		

    /* ---------- Comments ---------- */

    #comments-wrapper { }

    #comments-holder {
        max-width: 9999px;
        padding: 20px 0;
    }

    .comment-navigation {
        left: auto;
        margin-bottom: 40px;
        position: relative;
        right: auto;
        top: auto;
    }

    #comments-title {
        margin: 0;
        word-break: break-all;
    }
	
	.comment-holder,
	.children .comment-holder { padding: 0; }
	
	.comment > .comment-holder {
		margin-left: 0;
		padding: 0; 
	}
	
	.comment-author,
	.comment-date { margin-left: 60px; }	
	
	
    /* ----- Tables ----- */

    .wrapper table,
    .wrapper thead,
    .wrapper tbody,
    .wrapper th,
    .wrapper td,
    .wrapper tr {
        display: block;
        text-align: center;
    }

    .wrapper tr { }

    .wrapper td {
        border-top: none;
        min-height: 19px;
        position: relative;
    }

    .wrapper td:before {
        position: absolute;
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
    }

    /* ---------- Shortcodes ---------- */

    /* ---- Funky Restaurant ---- */

    .funky-menu-item-price strong {    text-align: left }

    #OT_form .OT_day,
    #OT_form .OT_time,
    #OT_form .OT_party {
        display: block;
        margin: 10px 0 0;
        width: 100%;
    }

    /* ----- Buttons ----- */

    .funky-button,
    .funky-button:visited,
    input[type="button"],
    input[type="submit"],
    button,
    button[type="submit"],
    input[type="reset"],
    input[type="file"],
    .tagcloud a,
    .post-navigation a {    padding: 20px }

    /* Images */

    img.alignleft,
    img.alignright,
    .wp-caption.alignleft,
    .wp-caption.alignright {
        float: none;
        margin: 40px auto;
    }

    /* Quotes */

    blockquote,
    blockquote.alignleft,
    blockquote.alignright {
        float: none;
        margin: 40px 0;
        text-align: center;
        width: auto;
    }
	
	/* Menu Item */
	
	.funky-menu-item .funky-menu-item-image {
		float: none;
		max-width: 100%;
		margin: 0 auto 20px;
	}
	
	.has-image .funky-menu-item-title { width: 76%; }
	
	.has-image .funky-menu-item-title + .funky-menu-item-price + .funky-menu-item-description { width: auto; }
	
	.third + .third > .funky-menu-item:first-child .funky-menu-item-content,
	.third + .two-thirds > .funky-menu-item:first-child .funky-menu-item-content,
	.two-thirds + .third  > .funky-menu-item:first-child .funky-menu-item-content,
	.fourth + .fourth > .funky-menu-item:first-child .funky-menu-item-content,
	.half + .fourth > .funky-menu-item:first-child .funky-menu-item-content,
	.fourth + .half > .funky-menu-item:first-child  .funky-menu-item-content,
	.half + .half > .funky-menu-item:first-child .funky-menu-item-content,
	.three-fourths + .fourth > .funky-menu-item:first-child  .funky-menu-item-content,
	.fourth + .three-fourths > .funky-menu-item:first-child  .funky-menu-item-content {
		border-top-width: 1px;
		padding-top: 40px;
	}
}

/* ---------- Small Mobile up to 480px ---------- */

@media only screen and (max-width: 480px) { 

    /* ---------- Gallery Shortcode ---------- */

    .gallery-columns-2 .gallery-item,
    .gallery-columns-3 .gallery-item,
    .gallery-columns-4 .gallery-item,
    .gallery-columns-5 .gallery-item,
    .gallery-columns-6 .gallery-item,
    .gallery-columns-7 .gallery-item,
    .gallery-columns-8 .gallery-item,
    .gallery-columns-9 .gallery-item {
        height: auto;
        width: 100%;
    }
	
}