/*
Theme Name: Ruby's Diner
Theme URI: http://underscores.me/
Author: 454 Creative
Author URI: http://www.454creative.com
Description: This is a custom built theme for Ruby's Diner
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: capata
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Start 454 is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1 Normalize


2 Elements
    # Typography
    # Forms

3 Custom

    # Clearings
    # Infinite scroll

4 Structure
    # Navigation
	    ## Links
	    ## Menus

5 Wordpress Structure
    # Accessibility
    # Alignments
    # Widgets
    # Content
        ## Posts and pages
        ## Comments
    # Media
	    ## Captions
	    ## Galleries

6 Media Queries

--------------------------------------------------------------*/

/******************************************************************************/
/* 1 Normalize
/******************************************************************************/

    html {
        font-family: sans-serif;
        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust:     100%;
    }

    body {
        margin: 0;
    }

    article,
    aside,
    details,
    figcaption,
    figure,
    footer,
    header,
    main,
    menu,
    nav,
    section,
    summary {
        display: block;
    }

    audio,
    canvas,
    progress,
    video {
        display: inline-block;
        vertical-align: baseline;
    }

    audio:not([controls]) {
        display: none;
        height: 0;
    }

    [hidden],
    template {
        display: none;
    }

    a {
        background-color: transparent;
    }

    a:active,
    a:hover {
        outline: 0;
    }

    abbr[title] {
        border-bottom: 1px dotted;
    }

    b,
    strong {
        font-weight: bold;
    }

    dfn {
        font-style: italic;
    }

    h1 {
        font-size: 2em;
        margin: 0.67em 0;
    }

    mark {
        background: #ff0;
        color: #000;
    }

    small {
        font-size: 80%;
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
    }

    sup {
        top: -0.5em;
    }

    sub {
        bottom: -0.25em;
    }

    img {
        border: 0;
    }

    svg:not(:root) {
        overflow: hidden;
    }

    figure {
        margin: 1em 40px;
    }

    hr {
        box-sizing: content-box;
        height: 0;
    }

    pre {
        overflow: auto;
    }

    code,
    kbd,
    pre,
    samp {
        font-family: monospace, monospace;
        font-size: 1em;
    }

    button,
    input,
    optgroup,
    select,
    textarea {
        color: inherit;
        font: inherit;
        margin: 0;
    }

    button {
        overflow: visible;
    }

    button,
    select {
        text-transform: none;
    }

    button,
    html input[type="button"],
    input[type="reset"],
    input[type="submit"] {
        -webkit-appearance: button;
        cursor: pointer;
    }

    button[disabled],
    html input[disabled] {
        cursor: default;
    }

    button::-moz-focus-inner,
    input::-moz-focus-inner {
        border: 0;
        padding: 0;
    }

    input {
        line-height: normal;
    }

    input[type="checkbox"],
    input[type="radio"] {
        box-sizing: border-box;
        padding: 0;
    }

    input[type="number"]::-webkit-inner-spin-button,
    input[type="number"]::-webkit-outer-spin-button {
        height: auto;
    }

    input[type="search"]::-webkit-search-cancel-button,
    input[type="search"]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

    fieldset {
        border: 1px solid #c0c0c0;
        margin: 0 2px;
        padding: 0.35em 0.625em 0.75em;
    }

    legend {
        border: 0;
        padding: 0;
    }

    textarea {
        overflow: auto;
    }

    optgroup {
        font-weight: bold;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0;
    }

    td,
    th {
        padding: 0;
    }


/******************************************************************************/
/* 2 Elements
/******************************************************************************/


    /******************************************************************************/
    /* Typography
    /******************************************************************************/

    body,
    button,
    input,
    select,
    textarea {
        color: #404040;
        font-family: "freight-sans-pro", sans-serif;
        font-size: 18px;
        /* font-size: 1rem; */
        line-height: 1.5;
    }

    h1, h2, h3, h4, h5, h6 { margin: 0 0 10px 0; clear: both; font-family: "rift-soft",sans-serif; color: rgba(214, 0, 0, 1); }
    h1 { font-size: 60px; line-height: 70px; font-weight: 600; }
    h2 { font-size: 50px; color: rgba(214, 0, 0, 1); line-height: 60px; font-weight: 600; }
    h3 { font-size: 34px; color: rgba(102,102,102,1.00); line-height: 40px; font-weight: 500; text-transform: uppercase; }
    h4 { font-size: 24px; line-height: 30px; font-weight: 500; }
    h5 {  }
    h6 {  }

    p {
        margin: 10px 0 30px 0;
    }

    dfn,
    cite,
    em,
    i {
        font-style: italic;
    }

    blockquote {
        margin: 0 1.5em;
    }

    address {
        margin: 0 0 1.5em;
    }

    pre {
        background: #eee;
        font-family: "Courier 10 Pitch", Courier, monospace;
        font-size: 15px;
        font-size: 0.9375rem;
        line-height: 1.6;
        margin-bottom: 1.6em;
        max-width: 100%;
        overflow: auto;
        padding: 1.6em;
    }

    code,
    kbd,
    tt,
    var {
        font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
        font-size: 15px;
        font-size: 0.9375rem;
    }

    abbr,
    acronym {
        border-bottom: 1px dotted #666;
        cursor: help;
    }

    mark,
    ins {
        background: #fff9c0;
        text-decoration: none;
    }

    big {
        font-size: 125%;
    }


    html {
        box-sizing: border-box;
    }

    *,
    *:before,
    *:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
        box-sizing: inherit;
    }

    body {
        background: #fff; /* Fallback for when there is no custom background color defined. */
    }

    blockquote:before,
    blockquote:after,
    q:before,
    q:after {
        content: "";
    }

    blockquote,
    q {
        quotes: "" "";
    }

    hr {
        background: rgba(214,0,0,1.0);
        width: 100%;
        height: 3px;
        border: 0;
        margin-bottom: 1.5em;
    }

    ul,
    ol {
        margin: 0 0;
    }

    ul {
        /*list-style: disc; */
    }

    ol {
        /*list-style: decimal;*/
    }

    li > ul,
    li > ol {
        /*margin-bottom: 0;
        margin-left: 1.5em; */
    }

    dt {
        font-weight: bold;
    }

    dd {
        margin: 0 1.5em 1.5em;
    }

    img {
        height: auto; /* Make sure images are scaled correctly. */
        max-width: 100%; /* Adhere to container width. */
    }

    table {
        margin: 0 0 1.5em;
        width: 100%;
    }

    hr { height: 3px; background: rgba(214,0,0,1); }

    /******************************************************************************/
    /* Links
    /******************************************************************************/
    a {
        color: rgba(214,0,0,1);
        -webkit-transition: all .4s ease; transition: all .4s ease;
    }

    a:visited {
        color: rgba(214,0,0,1);
    }

    a:hover,
    a:focus,
    a:active {
        color: rgba(214,0,0,1);
    }

    a:focus {
        outline: 0;
    }

    a:hover,
    a:active {
        outline: 0;
    }

    /******************************************************************************/
    /* Forms
    /******************************************************************************/

    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"] {
        background: rgba(214,0,0,1);

        display: inline-block;
        /* min-width: 170px; */
        margin-top: 10px;
        margin-right: 15px;
        padding: 5px 20px;

        border-radius: 0px;
        border: none;

        font-size: 20px;
        color: rgba(255,255,255,.80);
        font-weight: bold;
        letter-spacing: 1px;
        text-transform: uppercase;
        text-decoration: none;
        line-height: 32px;
        text-align: center;
    }


    button:hover,
    input[type="button"]:hover,
    input[type="reset"]:hover,
    input[type="submit"]:hover {
        color: rgba(255,255,255,1);
        /* border-color: #ccc #bbb #aaa; */
    }

    button:focus,
    input[type="button"]:focus,
    input[type="reset"]:focus,
    input[type="submit"]:focus,
    button:active,
    input[type="button"]:active,
    input[type="reset"]:active,
    input[type="submit"]:active {
        border-color: #aaa #bbb #bbb;
        box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15);
    }

    input[type="text"],
    input[type="email"],
    input[type="url"],
    input[type="password"],
    input[type="search"],
    input[type="number"],
    input[type="tel"],
    input[type="range"],
    input[type="date"],
    input[type="month"],
    input[type="week"],
    input[type="time"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="color"],
    textarea {
		width: 90%;
        margin: 0 0 10px 0;
		padding: 15px 5%;
        color: #666;
        border: 1px solid #ccc;
        border-radius: 3px;
    }

    select {
        border: 1px solid #ccc;
    }

    input[type="text"]:focus,
    input[type="email"]:focus,
    input[type="url"]:focus,
    input[type="password"]:focus,
    input[type="search"]:focus,
    input[type="number"]:focus,
    input[type="tel"]:focus,
    input[type="range"]:focus,
    input[type="date"]:focus,
    input[type="month"]:focus,
    input[type="week"]:focus,
    input[type="time"]:focus,
    input[type="datetime"]:focus,
    input[type="datetime-local"]:focus,
    input[type="color"]:focus,
    textarea:focus {
        color: #111;
    }

    textarea {
        width: 100%;
    }

/******************************************************************************/
/* 3. Custom
/******************************************************************************/

    /******************************************************************************/
    /* Clearings
    /******************************************************************************/
    .clear:before,
    .clear:after,
    .entry-content:before,
    .entry-content:after,
    .comment-content:before,
    .comment-content:after,
    .site-header:before,
    .site-header:after,
    .site-content:before,
    .site-content:after,
    .site-footer:before,
    .site-footer:after {
        content: "";
        display: table;
        table-layout: fixed;
    }

    .clear:after,
    .entry-content:after,
    .comment-content:after,
    .site-header:after,
    .site-content:after,
    .site-footer:after {
        clear: both;
    }

    /******************************************************************************/
    /* Infinite scroll
    /******************************************************************************/
    /* Globally hidden elements when Infinite Scroll is supported and in use. */
    .infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
    .infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
        display: none;
    }

    /* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
    .infinity-end.neverending .site-footer {
        display: block;
    }

    /*------------------------ Buttons! ------------------------*/

    a.button, a.button-border, a.white-button, a.red-button {
        display: inline-block; min-width: 170px; margin-top: 10px; margin-right: 15px; padding: 14px 40px;
        font-size: 24px; letter-spacing: 3px; font-weight: 700; text-transform: uppercase; text-decoration: none;
        line-height: 32px; text-align: center;
    }

        a.button   { border: 5px solid rgba(214,0,0,1); background: rgba(214,0,0,1); color: rgba(255,255,255,.90); }
        a.button:hover   { background: rgba(214,0,0,1); color: rgba(255,255,255,1); }

        a.button-border   { border: 5px solid rgba(214,0,0,1); color: rgba(214,0,0,.90); }
        a.button-border:hover   { background: rgba(214,0,0,1); color: rgba(255,255,255,1); }

        a.white-button   { background: rgba(255,255,255,1.00); border: 5px solid rgba(255,255,255,1); color: rgba(214,0,0,.90); }
        a.white-button:hover   { rgba(214,0,0,1); }

        a.red-button   { background: rgba(141,0,0,1.00); border: 5px solid rgba(141,0,0,1); color: rgba(255,255,255,.90); }
        a.red-button:hover   { rgba(255,255,255,1); }



    /*------------------------ Table Display for Vertical Alignment ------------------------*/

    .display-table  { display: table; }
    .valign-middle  { display: table-cell; vertical-align: middle; }
    .valign-bottom  { display: table-cell; vertical-align: bottom; }


    /*------------------------ Type Kit Loading fonts ------------------------*/

    .wf-loading { visibility: hidden; }
    .wf-active { visibility: visible; }



@media screen {

/******************************************************************************/
/* 4. Structure
/******************************************************************************/


    /*------------------------ Responsive Column Structure ------------------------*/

	.columns	{ margin: 0 1.5%; float: left; }
	.first		{ margin-left: 0; }
	.last		{ margin-right: 0; }

	.one		{ width: 97%; }			/* 100.000 - (left margin + right margin) */
	.two		{ width: 47%; }			/* 50.0000 - (left margin + right margin) */
	.three		{ width: 30.3333%; }	/* 33.3333 - (left margin + right margin) */
	.four		{ width: 22%; }			/* 25.0000 - (left margin + right margin) */
	.five		{ width: 17%; }			/* 20.0000 - (left margin + right margin) */
	.six		{ width: 13.6666%; }	/* 16.6666 - (left margin + right margin) */
	.seven		{ width: 11.2857%; }	/* 14.2857 - (left margin + right margin) */
	.eight		{ width: 9.5%; }		/* 12.5000 - (left margin + right margin) */
	.nine		{ width: 8.1111%; }		/* 11.1111 - (left margin + right margin) */
	.ten		{ width: 7%; }			/* 10.0000 - (left margin + right margin) */
	.eleven		{ width: 6.0909%; }		/* 9.0909 - (left margin + right margin) */
	.twelve		{ width: 5.3333%; }		/* 8.3333 - (left margin + right margin) */
	.thirteen	{ width: 4.6923%; }		/* 7.6923 - (left margin + right margin) */
	.fourteen	{ width: 4.1428%; }		/* 7.1428 - (left margin + right margin) */
	.fifteen	{ width: 3.6666%; }		/* 6.6666 - (left margin + right margin) */
	.sixteen	{ width: 3.25%; }		/* 6.2500 - (left margin + right margin) */

	.two-thirds		{ width: 63.6666%; }	/* 30.3333 + 1.5 + 1.5 + 30.3333 */
	.two-fourths	{ width: 47%; }			/* 22 + 1.5 + 1.5 + 22 */
	.three-fourths	{ width: 72%; }			/* 22 + 1.5 + 1.5 + 22 + 1.5 + 1.5 + 22 */


    /*------------------------ Masonry Box Grid ------------------------*/
    /* Handy tutorial on CSS aspect ratio trick
    /* http://www.w3schools.com/howto/howto_css_aspect_ratio.asp
    */

    .masonry-box-wrap-100-50, .masonry-box-wrap-50-50, .masonry-box-wrap-25-25
        { margin: 0 0; float: left; position: relative; /* If you want to allow absolute position inside */ }

    .masonry-box-wrap-100-50    { width: 100%; padding-top: 50%; /* 2:1 Aspect Ratio */ }
    .masonry-box-wrap-50-50     { width: 50%; padding-top: 50%; /* 1:1 Aspect Ratio */ }
    .masonry-box-wrap-25-25     { width: 25%; padding-top: 25%; /* 1:1 Aspect Ratio */ }

        .masonry-box    { width: 100%; height: 100%; position: absolute; top: 0; overflow: hidden; }


/*------------------------ The Whole Page Wrap ------------------------*/

#the-whole-page-wrap    { width: 100%; position: relative; overflow: hidden; }



/*------------------------ Pop Up ------------------------*/

    #pop-up-wrap    { width: 100%; height: 100%; position: fixed; display: none; background-color: rgba(0,0,0,0.6); z-index: 100; }

        #pop-up    {
            max-width: 700px;
            background: url('images/bg-pattern-vertical-bars.gif') center top repeat;
            margin: 200px auto;
            padding: 20px;
            box-shadow: 0px 0px 30px 5px rgb(0,0,0,0.6);
        }

            #pop-up #pop-up-inner    { position: relative; padding: 60px 40px; background: rgba(255,255,255,1.00); }

                #pop-up #close-x { position: absolute; top: 15px; right: 15px; }

                #pop-up #pop-up-content { text-align: center; }

                    #pop-up #pop-up-content .title { margin-bottom: 15px; color: rgba(214,0,0,1.00); font-family: "rift-soft",sans-serif; font-size: 60px; line-height: 70px; letter-spacing: 2px; font-weight: 600; }
                    #pop-up #pop-up-content .text { width: 80%; margin: 0 auto 25px auto; }

                    #pop-up #pop-up-content .button { margin: 0; }


/*------------------------ Header ------------------------*/

    #header-wrap    { width: 100%; position: relative; }

        #header { width: 100%; height: 125px; background: rgba(255, 255, 255, .95); font-family: "rift-soft",sans-serif; font-weight: 500; }

        /*------------------------ Mobile Menu Trigger ------------------------*/

            #menu-trigger-wrap    { position: absolute; left: 5%; display: none; }

                #menu-trigger-wrap div[class="valign-middle"]  { width: 30px; height: 125px; }

                    #menu-trigger    { width: 30px;  }

                        .menu-trigger          { display: block; cursor: pointer; }
                        .menu-trigger:hover .hamburger-menu { background: rgba(214, 0, 0, 1); }

                            .hamburger-menu { width: 100%; height: 6px; margin: 3px 0; background: rgba(0, 0, 0, 1); border-radius: 3px; cursor: pointer; -webkit-transition: all .4s ease; transition: all .4s ease; }


        /*------------------------ Left & Right Menus ------------------------*/

            #header #left-menu-wrap, #header #right-menu-wrap   { width: 42%; }

                #header #left-menu, #header #right-menu   {
                    position: relative;
                    -webkit-transition: all .4s ease; transition: all .4s ease;
                }

        /*------------------------ Left Menu ------------------------*/

            #header #left-menu-wrap  { margin: 0 6.5% 0 1.5%;  }

                #header #left-menu   { text-align: right; }

            /*------------------------ Priority Menu ------------------------*/

                #header #priority-menu { display: none; margin-left: 20%; }


            /*------------------------ General Menu ------------------------*/

                #header .menu > ul	{ padding: 0; font-size: 0px; }
                #header .menu > ul > li { position: relative; display: inline-block; }

                #header .menu > ul > li > a { display: block; padding: 0 15px; font-size: 18px; color: rgba(0, 0, 0, 1); text-transform: uppercase; font-weight: 500; letter-spacing: 1px; line-height: 125px; text-decoration: none; }
                #header .menu > ul > li > a:hover { color: rgba(214, 0, 0, 1); text-decoration: none; }
                /*
                #header #left-menu.menu > ul > li:last-child a { padding-right: 0; }
                #header #right-menu.menu > ul > li:first-child a { padding-left: 0; }
                */
                #header .menu > ul > li.current-menu-item > a	{ color: rgba(214, 0, 0, 1); }

                #header .menu .drop-down-menu    { display: none; }

                    #header .menu ul li > ul {
                        position: absolute; top: 100px;
                        margin: 0 0; padding: 0 0;
                        background: rgba(214, 0, 0, 1);
                        border-top: rgba(150,0,1,1) solid 7px;
                        font-family: "freight-sans-pro", sans-serif;
                        box-shadow: 2px 2px 5px 1px rgba(23, 53, 89, .35);
                        z-index: 30;
                    }

                        #header .menu ul li > ul > li	{ width: 220px; margin: 0 0; padding: 0 0; list-style: none; text-align: left; }

                        #header .menu ul li > ul > li > a	{ display: block; padding: 0 10px; color: rgba(255, 255, 255, .80); font-size: 16px; text-transform: none; letter-spacing: 0px; text-decoration: none; font-weight: 500; line-height: 50px; text-align: center; }
                        #header .menu ul li > ul > li > a:hover		{  background: rgba(255,255,255, 1.0); color: rgba(214,0,0,1.00); }



        /*------------------------ Logo ------------------------*/

            #header #logo-wrap   { width: 160px; position: absolute; left: 0; right: 0; margin: 0 auto; }

                #header #logo   {  margin: 0 auto; }

                    #header #logo .valign-middle  { height: 125px; font-size: 0; }

                        #header #logo .valign-middle a  {  }

                        #header #logo .valign-middle img  { width: 100%; height: 100px; }


        /*------------------------ Right Menu ------------------------*/

            #header #right-menu-wrap   { margin: 0 1.5% 0 6.5%; }

                #header #right-menu    { text-align: left; }


        /*------------------------ Location Menu ------------------------*/

            #header #location    { position: absolute; right: 0; max-width: 165px; background: rgba(214, 0, 0, 1) url('images/menu/map-flag.svg') 15px center no-repeat; background-size: 41px 63px; }

                #header #location .valign-middle { width: 90%; padding: 0 15px 0 71px; height: 125px; }

                #header #location a    { color: #fff; text-decoration: none; }
                #header #location a:hover   {  }

                #header #location .city { text-transform: uppercase; line-height: 18px; }
                #header #location .address { font-size: 10px; }



        /*------------------------ Mobile Menu! ------------------------*/

            #menu-mobile-wrap    { width: 380px; position: absolute; top: 0px; left: -390px; background: rgba(255,255,255,1.00); box-shadow: 2px 2px 5px 1px rgba(23, 53, 89, .35); z-index: 30; }

            .menu-open  { -webkit-transform: translate(390px, 0px); transform: translate(390px, 0px); -webkit-transition: -webkit-transform .4s ease-in-out; transition: transform .4s ease-in-out; }

            .menu-close { -webkit-transform: translate(0px, 0px); transform: translate(0px, 0px); -webkit-transition: -webkit-transform .4s ease-in-out; transition: transform .4s ease-in-out; }


                #menu-mobile-wrap #menu-close  { position: absolute; width: 30px; top: 20px; right: 40px; }

                    #menu-close a    { color: rgba(0, 0, 0, 1); font-size: 50px; font-family: "rift-soft",sans-serif; font-weight: 300; }
                    #menu-close a:hover  { color: rgba(214, 0, 0, 1); }

                #menu-mobile { padding-top: 100px; -webkit-transition: all .4s ease; transition: all .4s ease; }

                    #menu-mobile a	{ display: block; color: rgba(0, 0, 0, 1); font-size: 18px; font-family: "rift-soft",sans-serif; font-weight: 500; text-transform: uppercase; text-decoration: none; letter-spacing: 1px; line-height: 70px; }
                    #menu-mobile a:hover		{  background: rgba(245,240,235, 1.0); color: rgba(214, 0, 0, 1); }


                    #menu-mobile li:last-child a	{  }


                    #menu-mobile #sub-menu-wrap	{ display: none; }

                    #menu-mobile ul 	{ width: 100%; margin: 0; padding: 0; list-style-type: none; }

                    #menu-mobile > ul > li:first-child 	{  } /* Add styling to just the first li */
                    #menu-mobile ul li				{ position: relative; }
                    #menu-mobile ul li a			{ padding-left: 40px;  }

                    #menu-mobile li li a		{ padding-left: 60px; background: rgba(214,0,0,1.00); font-family: "freight-sans-pro", sans-serif; text-transform: none; color: rgba(255,255,255,1.00); }
                    #menu-mobile li li li a		{ padding-left: 80px; }
                    #menu-mobile li li li li a	{ padding-left: 100px; }

                    #menu-mobile ul li span			{ position: absolute; right: 0; top: 0; display: block; width: 70px; padding: 0; background: url('images/menu/menu-mobile-plus.png') center center no-repeat; cursor: pointer; text-indent: -9999px; line-height: 70px; }
                    #menu-mobile ul li span:hover	{ background: rgba(245,240,235, 1.0) url('images/menu/menu-mobile-plus-over.png') center center no-repeat; }

                    #menu-mobile .menu-opener-closed	{ background: url('images/menu/menu-mobile-plus.png') center center no-repeat; }
                    #menu-mobile .menu-opener-closed:hover	{ background: rgba(245,240,235, 1.0)  url('images/menu/menu-mobile-plus-over.png') center center no-repeat; }

                    #menu-mobile .menu-opener-active	{ background: url('images/menu/menu-mobile-minus.png') center center no-repeat; }
                    #menu-mobile .menu-opener-active:hover	{ background: rgba(245,240,235, 1.0)  url('images/menu/menu-mobile-minus-over.png') center center no-repeat; }

                    #menu-mobile .current-menu-item > a	{ background: rgba(245,240,235, 1.0); color: rgba(214,0,0,1); }



/*------------------------ Header Sticky ------------------------*/

    #header-wrap.header-wrap-stuck    { padding-bottom: 125px; }

        #header-wrap.header-wrap-stuck #header { position: fixed; z-index: 20; }


/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}

        /*------------------------ Slider ------------------------*/

            #fp #slider { /* Slider css can be found on /css/flexslider.css */ }


        /*------------------------ Rewards Sign Up ------------------------*/

            #fp #rewards-wrap { background: url('images/bg-pattern-vertical-bars.gif') left top repeat; font-size: 0; text-align: center; }

                #fp #rewards { display: inline-block; padding: 20px 0; }

                    #fp #rewards div { margin: 0; }

                    #fp #rewards .title { padding: 0 40px 0 0; color: rgba(255,255,255,1.00); font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 60px; text-align: center; line-height: 70px; letter-spacing: 1px; }

                    #fp #rewards .join-button .display-table { width: 100%; }
                    #fp #rewards .join-button .valign-middle { height: 70px; }

                        #fp #rewards .join-button .white-button { margin: 0 0; padding: 5px 40px; }


        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap {}

                #fp #left-wrap #left-box { background: rgba(0, 0, 0, .2); font-size: 22px; color: rgba(255,255,255,1.00); text-transform: uppercase; }

                    #fp #left-wrap #left-box .display-table { width: 100%; }
                    #fp #left-wrap #left-box .valign-middle { width: 80%; padding: 0 10%; text-align: center; }

                    #fp  #left-wrap #left-box .title { padding: 20px 0; font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 60px; line-height: 70px; }


            #fp #right-wrap {}

                #fp #right-wrap #right-inner-wrap {}

            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { background: url('images/front-page/Star-Large.png') left top no-repeat, url('images/front-page/Star-Small.png') center bottom no-repeat; }

                    #fp #right-wrap #top .display-table { width: 100%; }
                    #fp #right-wrap #top .valign-middle { width: 53%; padding: 0 41% 0 6%; }

                    #fp #right-wrap #top .text {  }
                    #fp #right-wrap #top .ruby { width: 40%; position: absolute; bottom: 0px; right: 0; font-size: 0; text-align: center; }
                        #fp #right-wrap #top .ruby img { width: 90%; }

                    #fp #right-wrap #top .ruby-full { width: 25%; position: absolute; bottom: 25px; right: 0; font-size: 0; text-align: center; display: none; }
                        #fp #right-wrap #top .ruby-full img { width: 95%; }

                    #fp #right-wrap #top .title { font-family: "funkydori", sans-serif; font-size: 40px; color: rgba(214, 0, 0, 1); }

            /*------------------------ Right Bottom Left ------------------------*/

                #fp #right-wrap #bottom-left { float: left; background: url('images/front-page/Pattern-Retro.gif') center center repeat; color: rgba(255,255,255,1.00); }

                    #fp #right-wrap #bottom-left .display-table { width: 100%; }
                    #fp #right-wrap #bottom-left .valign-middle { width: 80%; padding: 0 10%; text-align: center; }

                    #fp #right-wrap #bottom-left .pre-text { font-size: 26px; text-transform: uppercase; font-weight: 700; }
                    #fp #right-wrap #bottom-left .title { padding: 5px 0 20px 0; font-size: 50px; font-family: "rift-soft",sans-serif; font-weight: 500; line-height: 60px; }
                    #fp #right-wrap #bottom-left .sub-text { font-size: 36px; font-family: "funkydori", sans-serif; line-height: 40px; }

            /*------------------------ Right Bottom Right ------------------------*/

                #fp #right-wrap #bottom-right { float: left; }


        /*------------------------ Featured Menu ------------------------*/

            #fp #featured-menu-wrap {  }

                #fp #featured-menu    { max-width: 1160px; margin: 0 auto; padding: 60px 0; text-align: center; }

                    #fp #featured-menu .pre-text    { color: rgba(214,0,0,1.00); font-size: 30px; font-weight: 700; text-transform: uppercase; }
                    #fp #featured-menu .title    { padding-top: 10px; font-size: 50px; font-family: "rift-soft",sans-serif; font-weight: 500; text-transform: uppercase; }

                    #fp #featured-menu #items-wrap    { padding: 40px 0; }

                        #fp #featured-menu #items-wrap .four    { height: 380px; position: relative; }

                        #fp #featured-menu #items-wrap .overlay    { width: 100%; height: 100%; position: absolute; top: 0; display: none; background: rgba(0,0,0,.6); color: rgba(255,255,255,1.00); }

                            #fp #featured-menu #items-wrap .overlay a   { color: rgba(255,255,255,1.00); text-decoration: none; }

                            #fp #featured-menu #items-wrap .overlay .valign-middle   { width: 90%; height: 380px; padding: 0 5%; }

                            #fp #featured-menu #items-wrap .overlay .title   { padding: 0 0 5px 0; font-size: 30px; font-family: "rift-soft",sans-serif; font-weight: 500; line-height: 40px; }

                            #fp #featured-menu #items-wrap .overlay hr   { width: 30%; height: 3px; background: rgba(214,0,0,1.0); }


        /*------------------------ Instagram Feed ------------------------*/

            #fp #instagram-wrap {  }

                #fp #instagram    {  }

                    #fp #instagram #left-title    { width: 33%; background: url('images/bg-pattern-vertical-bars.gif') left top repeat; float: left; overflow: hidden; }

                        #fp #instagram #left-title #shooby-dooby { padding: 20px 5%; background: rgba(214, 0, 0, 1.00); text-align: center; }

                            #fp #instagram #left-title #shooby-dooby img { width: 90%; }

                        #fp #instagram #left-title #text { width: 100%; text-align: center; color: rgba(255,255,255, 1.00); font-size: 22px; text-transform: uppercase; letter-spacing: 1px; }

                            #fp #instagram #left-title #text .valign-middle { height: 180px; background: url('images/front-page/Instagram-Star-White.png') center center no-repeat; }

                            #fp #instagram #left-title #text .valign-middle { padding: 20px 0; text-align: center; }

                    #fp #instagram #feed   { width: 67%; float: left; }

                        #fp #instagram #feed #loading  { width: 100%; padding: 40px 0 0 0; font-size: 22px; text-transform: uppercase; letter-spacing: 1px; line-height: 33px; text-align: center; }


        /*------------------------ Location ------------------------*/

            #fp #location-wrap {  }

                #fp #location-wrap #overlay { width: 100%; background: rgba(255,255,255,.90); }

                #fp #location    { max-width: 1160px; margin: 0 auto; padding: 60px 0; text-align: center; }

                    #fp #location .pre-text    { padding: 20px 0 0 0; color: rgba(214,0,0,1.00); font-size: 76px; font-family: "funkydori", sans-serif; line-height: 70px; }
                    #fp #location .title    { padding: 0 0 20px 0; font-size: 60px; font-family: "rift-soft",sans-serif; font-weight: 500; text-transform: uppercase; }

                    #fp #location a.button-border, #fp #location a.button    { width: 30%; }



/*------------------------ Single: Locations ------------------------*/

    #ls {}


    /*------------------------ Page Header ------------------------*/

        #ls #header-page { font-size: 0; }


    /*------------------------ Map Listings ------------------------*/

        #ls #map-listing-wrap, #ls #right-wrap { width: 50%; margin: 0; }

        #ls #map-listing-wrap {  }

            #ls #map-listing-wrap .display-table { width: 100%; }
            #ls #map-listing-wrap .valign-middle { height: 800px; padding: 30px 0; }

            #ls .map-listing { width: 80%; margin: 0px auto; padding: 0 0; }

                #ls .map-listing h1 { margin: 0; }

                    #ls .map-listing h1 a { text-decoration: none; }


                #ls .map-listing .content-left { width: 50%; margin: 0; }

                    #ls .map-listing .content-left .address  {  }
                    #ls .map-listing .content-left .phone a   { text-decoration: none; font-weight: 600; }
                    #ls .map-listing .content-left .email a   { color: rgba(0,0,0,1.0); text-decoration: none; font-weight: 600; font-style: italic; }

                    #ls .map-listing .content-left .hours   { margin-top: 30px; }


                #ls .map-listing .content-right { width: 50%; margin: 0; text-align: right; }

                    #ls .map-listing .content-right .button { width: 100%; margin-bottom: 15px; }
                    #ls .map-listing .content-right .button-border { width: 100%; }


                #ls .map-listing .did-you-know { margin: 40px 0 0 0; background: url('images/locations/Did-You-Know.png') left 4px no-repeat; padding-left: 50px; color: rgba(102,102,102,1.00); }


    /*------------------------ Google Map ( more rules under archive template ) ------------------------*/

        #ls #right-wrap {}

            #ls #map-wrap { width: 100%; }

                #ls #map-wrap #map-canvas { width: 100%; height: 430px; }

            #ls #image-wrap { height: 430px; }


/*------------------------ Archive: Locations ------------------------*/

    #la {}

    /*------------------------ Location Search Header ------------------------*/

        #la #search-header-wrap { width: 100%; padding: 20px 0; background: url('images/bg-pattern-vertical-bars.gif') center top repeat;
            -webkit-box-shadow: inset 0px 0px 30px 5px rgba(0,0,0,0.1);
            -moz-box-shadow: inset 0px 0px 30px 5px rgba(0,0,0,0.1);
            box-shadow: inset 0px 0px 30px 5px rgba(0,0,0,0.1);
        }

            #la #search-header { max-width: 1160px; margin: 0 auto; }

                #la #search-header .two { color: rgba(255,255,255,1.00); font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 60px; line-height: 70px; letter-spacing: 1px; text-align: right; }

                    #la #search-header .two input[type="text"] { width: 60%; margin: 0; padding: 7px 2%; float: left; font-weight: 500; border-radius: 0px; }
                    #la #search-header .two input[type="submit"] { width: 25%; margin: 0; float: left; }

                    #la #search-header .two .display-table { width: 100%; }

                        #la #search-header .two .valign-middle { height: 70px; }


    /*------------------------ Google Map ------------------------*/

        #la #map-wrap, #la #map-listings-wrap { width: 50%; margin: 0; float: right; }

        #la #map-wrap { }

            #la #map-wrap #map-canvas { width: 100%; height: 700px; }

                #la #map-wrap #map-canvas #map-details, #ls #map-wrap #map-canvas #map-details { min-width: 300px; }
                    #la #map-wrap #map-canvas #map-details-content, #ls #map-wrap #map-canvas #map-details-content {  }

                #la #map-wrap #map-canvas p, #ls #map-wrap #map-canvas p { color: #404040; font-family: "freight-sans-pro", sans-serif; font-size: 18px; }

                #la #map-wrap #map-canvas .button, #ls #map-wrap #map-canvas .button  { width: 92%; margin-bottom: 7px; padding: 14px 15px;  }
                #la #map-wrap #map-canvas .button-border, #ls #map-wrap #map-canvas .button-border { width: 92%; padding: 14px 15px;  }

                #la #map-wrap #map-canvas img, #ls #map-wrap #map-canvas img { max-width: none; }

    /*------------------------ Map Listings------------------------*/

        #la #map-listings-wrap { height: 700px; background: rgba(244, 244, 244, 1); overflow-y: scroll; }

            #la .map-listing { width: 88%; margin: 40px auto; padding: 20px 3%; background: rgba(255,255,255, 1); }


                #la .map-listing .header-left { width: 80%; margin: 0; }

                    #la .map-listing h2 { margin: 0; font-family: "rift-soft",sans-serif; line-height: 40px; }

                        #la .map-listing h2 a { font-size: 32px; color: rgba(214,0,0,1.0); font-weight: 600; text-decoration: none; line-height: 40px; }

                #la .map-listing .header-right { width: 20%; margin: 0; text-align: right; color: rgba(153,153,153,1.00); line-height: 40px; }

                #la .map-listing .content-left { width: 50%; margin: 0; }

                    #la .map-listing .content-left .address  {  }
                    #la .map-listing .content-left .phone a   { text-decoration: none; font-weight: 600; }
                    #la .map-listing .content-left .email a   { color: rgba(0,0,0,1.0); text-decoration: none; font-weight: 600; font-style: italic; }

                    #la .map-listing .content-left .hours   { margin-top: 30px; }


                #la .map-listing .content-right { width: 50%; margin: 0; text-align: right; }

                    #la .map-listing .content-right .button { width: 100%; margin-bottom: 15px; }
                    #la .map-listing .content-right .button-border { width: 100%; }


/*------------------------ Template: Franchising ------------------------*/

    #ft { background: rgba(0, 0, 0, .3); }

        #ft #banner { background: url(images/bg-pattern-vertical-bars.gif) left top repeat; height: 130px; }

            #ft #banner h1 { color: rgba(255,255,255,1.00);font-family: "rift-soft",sans-serif;font-weight: 600;font-size: 60px; text-align: center;padding-top: 35px;letter-spacing: 1px; }

        #ft #left-wrap #left-box, #ft #right-wrap #right-box { background: rgba(0, 0, 0, .3); font-size: 30px; font-weight: 500; color: rgba(255,255,255,1.00); text-transform: uppercase; }

            #ft #left-wrap #left-box .display-table, #ft #right-wrap #right-box .display-table { width: 100%; }

            #ft #left-wrap #left-box .valign-middle, #ft #right-wrap #right-box .valign-middle { width: 80%;padding: 0 10%;text-align: center; }

            #ft #left-wrap #left-box .title, #ft #right-wrap #right-box .title { padding: 20px 0;font-family: "rift-soft",sans-serif;font-weight: 600;font-size: 80px;line-height: 90px;letter-spacing:3px; }

            #ft #left-wrap #left-box a.button, #ft #right-wrap #right-box a.button { margin: 0 0; padding: 10px 50px; }



/*------------------------ Template: Flexible Footprints ------------------------*/

    .ff    {}

    /*------------------------ Slider! ------------------------*/

        .ff #slider-wrap    { max-width: 80%; margin: 0 10%; padding: 0 0 150px 0; }

            .ff #slider-wrap .the-title { margin: 0 auto 50px auto; font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 40px; color: rgba(0,0,0,1.00); text-align: center; }

            .ff #slider { /* Slider css can be found on /css/flexslider.css */ }

    /*------------------------ Masonry Left ------------------------*/

        .ff #left-wrap {}
            .ff #left-inner-wrap {}

                .ff #left-top { font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 70px; color: rgba(255,255,255,1.00); line-height: 85px; }

                    .ff #left-top .display-table { width: 100%; background: rgba(0, 0, 0, .3); }
                    .ff #left-top .valign-middle { width: 80%; padding: 0 10%; text-align: center; }

                .ff #left-bottom-left {  }

                .ff #left-bottom-right { background: url('images/template-flexible-footprints/bg-pattern-retro.gif') center center repeat; color: rgba(255,255,255,1.00); }

                    .ff #left-bottom-right .display-table { width: 100%; }
                    .ff #left-bottom-right .valign-middle { width: 70%; padding: 0 15%; text-align: center; }

                    .ff #left-bottom-right .title { font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 40px; }
                    .ff #left-bottom-right .sub-title { margin-bottom: 15px; font-size: 30px; }
                    .ff #left-bottom-right .sub-text { font-size: 20px; }

    /*------------------------ Masonry Right ------------------------*/

        .ff #right-wrap {}
            .ff #right-inner-wrap {}

                .ff #right-top { background: rgba(244,244,244,1); font-size: 24px; font-weight: 500; }

                    .ff #right-top .display-table { width: 100%; }
                    .ff #right-top .valign-middle { width: 70%; padding: 0 15%; }

                .ff #right-bottom-left {  }

                .ff #right-bottom-right { background: url('images/template-flexible-footprints/bg-pattern-retro.gif') center center repeat; color: rgba(255,255,255,1.00); }

                    .ff #right-bottom-right .display-table { width: 100%; }
                    .ff #right-bottom-right .valign-middle { width: 70%; padding: 0 15%; text-align: center; }

                    .ff #right-bottom-right .title { font-family: "rift-soft",sans-serif; font-weight: 600; font-size: 40px; }
                    .ff #right-bottom-right .sub-title { margin-bottom: 15px; font-size: 30px; }
                    .ff #right-bottom-right .sub-text { font-size: 20px; }


/*------------------------ Blog ------------------------*/

    #blog-wrap    { width: 100%; }

        #blog-wrap #content    {  }

        #blog-wrap .blog-roll    {}

            #blog-wrap .blog-roll .entry-wrap    { padding: 25px 0 50px 0; }

                #blog-wrap .blog-roll .four    { width: 23.5%; margin: 0 1.5% 0 0; }

                #blog-wrap .blog-roll .three-fourths    { width: 73.5%; margin: 0 0 0 1.5%; }

                #blog-wrap .blog-roll .entry-wrap .title a   { font-size: 25px; font-family: "rift-soft",sans-serif; color: rgba(0,0,0,1.0); font-weight: 600; text-decoration: none; line-height: 23px; }

                #blog-wrap .blog-roll .entry-wrap p { margin: 5px 0; line-height: 1.3em; }



/*------------------------ Footer Header ------------------------*/

    #footer-header-wrap    { width: 100%; }

        #footer-header {  }

            #footer-header #quote-slider-wrap { width: 50%; margin: 0 0; padding: 60px 1.5%; background: rgba(245,240,235, 1.0); }

                #footer-header #quote-slider { /* Slider css can be found on /css/flexslider.css */ }

            #footer-header #connect { width: 50%; margin: 0 0; padding: 60px 1.5%; background: rgba(29,161,185,1); text-align: center; }

                #footer-header #connect .display-table { width: 100%; }

                #footer-header #connect .valign-middle {  }

                #footer-header #connect .text { font-size: 60px; font-family: "kepler-std"; line-height: 65px; color: rgba(255,255,255,1); }

                #footer-header #connect .button { margin-top: 30px; }


/*------------------------ Footer ------------------------*/

    #footer-wrap    { width: 100%; background: rgba(214, 0, 0, 1); }

        #footer { max-width: 1400px; margin: 0 auto; padding: 60px 0; color: rgba(255,255,255,.3); text-transform: uppercase; }

        /*------------------------ Menu ------------------------*/

            #footer #menu { padding-bottom: 40px; }

                #footer #menu > ul	{ width: 80%; margin: 0 0 0 5%; padding: 0; list-style: none; }
                #footer #menu > ul > li { padding: 12px 0 0 0; border-bottom: 2px solid rgba(185, 0, 0, 1); }

                #footer #menu > ul > li > a { display: block; padding-right: 30px; color: rgba(255,255,255,.80); font-size: 18px; letter-spacing: 1px; font-weight: 700; text-transform: uppercase; line-height: 30px; text-decoration: none; }
                #footer #menu > ul > li > a:hover { color: rgba(255,255,255,1.00); text-decoration: none; }


                #footer #menu > ul > li.current-menu-item a	{ color: rgba(255,255,255,1.00); }


        /*------------------------ Social Media ------------------------*/

            #social-media { padding-bottom: 40px; text-align: center; }

                #social-media > ul	{ width: 100%; font-size: 0px; padding: 0 0; }
                #social-media > ul > li { width: 25%; display: inline-block; }

                #social-media > ul > li > a { display: block; padding: 0 10px; }
                #social-media > ul > li:first-child a { padding-left: 0; }
                #social-media > ul > li:last-child a { padding-right: 0; }


        /*------------------------ Subscription ------------------------*/

            #subscription { padding-bottom: 40px; text-align: center; }

                #subscription .title { font-size: 34px; font-family: "rift-soft",sans-serif; color: rgba(255,255,255,1.0); font-weight: 600; line-height: 40px; }

                #subscription .red-button { margin: 10px 0 0 0; padding: 5px 40px; }



        /*------------------------ Copyright ------------------------*/

            #copyright { text-align: right; color: rgba(148, 0, 0, 1); }



/*------------------------ Footer Freaking Footer ------------------------*/

    #footer-footer { padding: 20px 0; background: url('images/bg-pattern-vertical-bars.gif') left top repeat; }





/*------------------------ Print Settings ------------------------*/


    /*------------------------ Print Header ------------------------*/

        #print-header   { width: 100%; display: none; margin-bottom: 70px; }


    /*------------------------ Print Footer ------------------------*/

        #print-footer   { width: 100%; display: none; margin-top: 70px; }



/******************************************************************************/
/* 5 Wordpress Structure
/******************************************************************************/

    /*------------------------ Blog Roll ------------------------*/

        .entry-wrap {  }

            .entry-wrap .title a {  }
            .entry-wrap .details { display: none; }
            .entry-wrap .entry {}
            .entry-wrap .read-more {}





    /*------------------------ Pagination ------------------------*/
        #pagination-wrapper { width: 100%; margin-top: 30px; }
		#pagination			{ text-align: center; }

            #pagination .page-numbers		{ display: inline-block; zoom: 1; *display: inline; background: rgba(244,244,244, 1.0); margin-right: 10px; padding: 14px 25px;
        font-size: 24px; letter-spacing: 3px; font-weight: 700; text-transform: uppercase; text-decoration: none;
        line-height: 32px; text-align: center;  }
            #pagination .page-numbers:hover	{ background: rgba(214,0,0,1); color: rgba(255,255,255,1); }
            #pagination .current	{ background: rgba(214,0,0,1); color: rgba(255,255,255,1); }
            #pagination .prev, #pagination .next	{ color: rgba(214,0,0,1); }
            #pagination .prev:hover, #pagination .next:hover	{ color: #fff; }


    /******************************************************************************/
    /* Accessibility
    /******************************************************************************/
    /* Text meant only for screen readers. */
    .screen-reader-text {
        clip: rect(1px, 1px, 1px, 1px);
        position: absolute !important;
        height: 1px;
        width: 1px;
        overflow: hidden;
    }

    .screen-reader-text:focus {
        background-color: #f1f1f1;
        border-radius: 3px;
        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
        clip: auto !important;
        color: #21759b;
        display: block;
        font-size: 14px;
        font-size: 0.875rem;
        font-weight: bold;
        height: auto;
        left: 5px;
        line-height: normal;
        padding: 15px 23px 14px;
        text-decoration: none;
        top: 5px;
        width: auto;
        z-index: 100000; /* Above WP toolbar. */
    }

    /* Do not show the outline on the skip link target. */
    #content[tabindex="-1"]:focus {
        outline: 0;
    }

    /******************************************************************************/
    /* Alignments
    /******************************************************************************/
    .alignleft {
        display: inline;
        float: left;
        margin-right: 1.5em;
    }

    .alignright {
        display: inline;
        float: right;
        margin-left: 1.5em;
    }

    .aligncenter {
        clear: both;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }


    /******************************************************************************/
    /* Widgets
    /******************************************************************************/
    .widget {
        margin: 0 0 1.5em;
    }

    /* Make sure select elements fit in widgets. */
    .widget select {
        max-width: 100%;
    }

    /******************************************************************************/
    /* Content
    /******************************************************************************/

        /******************************************************************************/
        /* Posts and pages
        /******************************************************************************/
        .sticky {
            display: block;
        }

        .hentry {
            margin: 0 0 1.5em;
        }

        .byline,
        .updated:not(.published) {
            display: none;
        }

        .single .byline,
        .group-blog .byline {
            display: inline;
        }

        .page-content,
        .entry-content,
        .entry-summary {
            margin: 1.5em 0 0;
        }

        .page-links {
            clear: both;
            margin: 0 0 1.5em;
        }

        /******************************************************************************/
        /* Comments
        /******************************************************************************/
        .comment-content a {
            word-wrap: break-word;
        }

        .bypostauthor {
            display: block;
        }



    /******************************************************************************/
    /* Media
    /******************************************************************************/
    .page-content .wp-smiley,
    .entry-content .wp-smiley,
    .comment-content .wp-smiley {
        border: none;
        margin-bottom: 0;
        margin-top: 0;
        padding: 0;
    }

    /* Make sure embeds and iframes fit their containers. */
    embed,
    iframe,
    object {
        max-width: 100%;
    }

        /******************************************************************************/
        /* Captions
        /******************************************************************************/
        .wp-caption {
            margin-bottom: 1.5em;
            max-width: 100%;
        }

        .wp-caption img[class*="wp-image-"] {
            display: block;
            margin-left: auto;
            margin-right: auto;
        }

        .wp-caption .wp-caption-text {
            margin: 0.8075em 0;
        }

        .wp-caption-text {
            text-align: center;
        }

        /******************************************************************************/
        /* Galleries
        /******************************************************************************/
        .gallery {
            margin-bottom: 1.5em;
        }

        .gallery-item {
            display: inline-block;
            text-align: center;
            vertical-align: top;
            width: 100%;
        }

        .gallery-columns-2 .gallery-item {
            max-width: 50%;
        }

        .gallery-columns-3 .gallery-item {
            max-width: 33.33%;
        }

        .gallery-columns-4 .gallery-item {
            max-width: 25%;
        }

        .gallery-columns-5 .gallery-item {
            max-width: 20%;
        }

        .gallery-columns-6 .gallery-item {
            max-width: 16.66%;
        }

        .gallery-columns-7 .gallery-item {
            max-width: 14.28%;
        }

        .gallery-columns-8 .gallery-item {
            max-width: 12.5%;
        }

        .gallery-columns-9 .gallery-item {
            max-width: 11.11%;
        }

        .gallery-caption {
            display: block;
        }


}

/******************************************************************************/
/* 6 Media Queries
/******************************************************************************/



@media only screen and (max-width : 1400px) {

/*------------------------ Header ------------------------*/

    #header-wrap    {  }

        #header {  }

        /*------------------------ Mobile Menu Trigger ------------------------*/

            #menu-trigger-wrap    { display: block; }

            /*------------------------ Priority Menu ------------------------*/

                #header #priority-menu {}

        /*------------------------ Left & Right Menus ------------------------*/

            #header #left-menu-wrap, #header #right-menu-wrap   {  }

                #header #left-menu, #header #right-menu   { display: none; }

        /*------------------------ Left Menu ------------------------*/

            #header #left-menu-wrap  {   }

            /*------------------------ Priority Menu ------------------------*/

                #header #priority-menu { display: block; }



/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}


        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap {}

            #fp #right-wrap {}

                #fp #right-wrap #right-inner-wrap {}

            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { }

                    #fp #right-wrap #top .valign-middle { width: 70%; padding: 0 25% 0 5%; }

                    #fp #right-wrap #top .text {  }
                    #fp #right-wrap #top .ruby { display: none; }

                    #fp #right-wrap #top .ruby-full { display: block; }

                    #fp #right-wrap #top .title { }



}


@media only screen and (max-width : 1024px) {

/*------------------------ Masonry Box Grid ------------------------*/

    .masonry-box-wrap-50-50, .masonry-box-wrap-100-50 {
        margin: 0 0; float: none; }

    .masonry-box-wrap-100-50    { width: 100%; padding-top: 50%; /* 2:1 Aspect Ratio */ }
    .masonry-box-wrap-50-50    { width: 100%; padding-top: 100%; /* 1:1 Aspect Ratio */ }

        .masonry-box    {  }




/*------------------------ Header ------------------------*/

    #header-wrap    { }

        #header {   }

        /*------------------------ Left Menu ------------------------*/

            #header #left-menu-wrap  {   }

            /*------------------------ Priority Menu ------------------------*/

                #header #priority-menu { display: none; }






/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}


        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap {  }

            #fp #right-wrap {}

                #fp #right-wrap .masonry-box-wrap-50-50    { width: 50%; padding-top: 50%; float: left; }


            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { }

                    #fp #right-wrap #top .valign-middle { width: 65%; padding: 0 30% 0 5%; }

                    #fp #right-wrap #top .text {  }
                    #fp #right-wrap #top .title { }


        /*------------------------ Instagram Feed ------------------------*/

            #fp #instagram-wrap {  }

                #fp #instagram    {  }

                    #fp #instagram #left-title    { width: 100%; float: none; }

                    #fp #instagram #feed   { width: 100%; float: none; }


        /*------------------------ Location ------------------------*/

            #fp #location-wrap {  }

                #fp #location-wrap #overlay { }

                #fp #location    { }

                    #fp #location a.button-border, #fp #location a.button    { width: 40%; }


/*------------------------ Single: Locations ------------------------*/


    #ls {}

    /*------------------------ Map Listings------------------------*/

        #ls #map-listing-wrap, #ls #right-wrap { width: 100%; margin: 0; }

        #ls #map-listing-wrap {  }

            #ls .map-listing { }


                #ls .map-listing .content-left { width: 100%; float: none;  }


                #ls .map-listing .content-right { width: 100%; float: none; text-align: center; }

                    #ls .map-listing .content-right .button { width: 100%; margin-bottom: 15px; }
                    #ls .map-listing .content-right .button-border { width: 100%; }


    /*------------------------ Google Map ( more rules under archive template ) ------------------------*/

        #ls #map-wrap { width: 100%; }

            #ls #map-wrap #map-canvas { width: 100%; height: 500px; }


/*------------------------ Archive: Location ------------------------*/

    #la {}

    /*------------------------ Google Map ------------------------*/

        #la #map-wrap, #la #map-listings-wrap { width: 100%; float: none; }

        #la #map-wrap { }

            #la #map-wrap #map-canvas { height: 400px; }


    /*------------------------ Map Listings------------------------*/

        #la #map-listings-wrap { height: 700px; }

            #la .map-listing { }


                #la .map-listing .header-left { width: 100%; float: none; }

                #la .map-listing .header-right { width: 100%; float: none; text-align: left; }

                #la .map-listing .content-left { width: 100%; }

                #la .map-listing .content-right { width: 100%; text-align: center; }

                    #la .map-listing .content-right .button { width: 88%; }
                    #la .map-listing .content-right .button-border { width: 88%; }


/*------------------------ Template: Flexible Footprints ------------------------*/

    .ff    {}


    /*------------------------ Masonry Left ------------------------*/

        .ff #left-wrap {}

            .ff #left-inner-wrap .masonry-box-wrap-50-50    { width: 50%; padding-top: 50%; float: left; }

    /*------------------------ Masonry Right ------------------------*/

        .ff #right-wrap {}

            .ff #right-inner-wrap .masonry-box-wrap-50-50    { width: 50%; padding-top: 50%; float: left; }


}

@media only screen and (max-width : 768px) {

/*------------------------ Responsive Column Structure ------------------------*/

    .columns	{ float: none; }
	.one, .two, .three, .four		{ width: 97%; }
	.two-thirds, .two-fourths, .three-fourths { width: 97%; }
	.first		{ margin-left: 1.5%; }
	.last		{ margin-right: 1.5%; }

/*------------------------ Masonry Box Grid ------------------------*/

    .masonry-box-wrap-25-25:nth-child(2n +1) { clear: after; }

    .masonry-box-wrap-25-25    { width: 50%; padding-top: 50%; /* 1:1 Aspect Ratio */ }

        .masonry-box    {  }


/*------------------------ Pop Up ------------------------*/

    #pop-up-wrap    {  }

            #pop-up    { margin-top: 20px; }



/*------------------------ Header ------------------------*/

    #header-wrap    { }

        #header { height: 100px; }

        /*------------------------ Mobile Menu Trigger ------------------------*/

            #menu-trigger-wrap    {  }

                #menu-trigger-wrap div[class="valign-middle"]  { height: 100px; -webkit-transition: all .4s ease; transition: all .4s ease; }


        /*------------------------ Logo ------------------------*/

            #header #logo-wrap   { width: 100px; -webkit-transition: all .4s ease; transition: all .4s ease; }

                #header #logo   {  }

                    #header #logo .valign-middle  { height: 100px; -webkit-transition: all .4s ease; transition: all .4s ease; }

        /*------------------------ Location Menu ------------------------*/

            #header #location    { }

                #header #location .valign-middle { height: 100px; -webkit-transition: all .4s ease; transition: all .4s ease; }



/*------------------------ Header Sticky ------------------------*/

    #header-wrap.header-wrap-stuck    { padding-bottom: 100px; }



/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}

        /*------------------------ Rewards Sign Up ------------------------*/

            #fp #rewards-wrap { }

                #fp #rewards {  }

                    #fp #rewards .title { padding: 0 0 0 0; }


        /*------------------------ Featured Menu ------------------------*/

            #fp #featured-menu-wrap {  }

                #fp #featured-menu    {  }

                    #fp #featured-menu #items-wrap    { padding-bottom: 0; }

                        #fp #featured-menu #items-wrap .four    { width: 47%; float: left; margin-bottom: 40px; }
                        #fp #featured-menu #items-wrap .four:nth-child(even)    { clear: after; }

                        #fp #featured-menu #items-wrap .overlay    { }


        /*------------------------ Instagram Feed ------------------------*/

            #fp #instagram-wrap {  }

                #fp #instagram    {  }

                    #fp #instagram #left-title    {  }

                        #fp #instagram #left-title .three { float: left; }


        /*------------------------ Location ------------------------*/

            #fp #location-wrap {  }

                #fp #location-wrap #overlay { }

                #fp #location    { }

                    #fp #location a.button-border, #fp #location a.button    { width: 75%; margin: 10px auto; display: block; }


/*------------------------ Archive: Locations ------------------------*/

    #la {}

    /*------------------------ Location Search Header ------------------------*/

        #la #search-header-wrap {  }

            #la #search-header { }

                #la #search-header .two { text-align: center; }

                    #la #search-header .two input[type="text"] { width: 60%; margin: 0 0 0 5%; padding: 7px 2%; }
                    #la #search-header .two input[type="submit"] { width: 30%; margin: 0 5% 0 0; }

    /*------------------------ Google Map ------------------------*/

        #la #map-wrap, #la #map-listings-wrap {  }

        #la #map-wrap { display: none; }


    /*------------------------ Map Listings------------------------*/

        #la #map-listings-wrap { height: auto; }


/*------------------------ Single: Locations ------------------------*/

    #ls {}

    /*------------------------ Map Listings ------------------------*/

        #ls #map-listing-wrap, #ls #right-wrap {  }

        #ls #map-listing-wrap {  }


    /*------------------------ Google Map ( more rules under archive template ) ------------------------*/

        #ls #right-wrap {}

            #ls #map-wrap { display: none; }


/*------------------------ Blog ------------------------*/

    #blog-wrap    {  }

        #blog-wrap .blog-roll    {}

            #blog-wrap .blog-roll .entry-wrap    {  }

                #blog-wrap .blog-roll .four    { width: 90%; margin: 0 5%; }

                #blog-wrap .blog-roll .three-fourths    { width: 90%; margin: 0 5%; }


/*------------------------ Footer ------------------------*/

    #footer-wrap    {  }

        #footer {  }

        /*------------------------ Menu ------------------------*/

            #footer #menu {  }

                #footer #menu > ul	{ width: 90%; margin: 0 0 0 5%; }


        /*------------------------ Subscription ------------------------*/

            #subscription {  }

        /*------------------------ Copyright ------------------------*/

            #copyright { text-align: center; }

}

@media only screen and (max-width : 640px){

/*------------------------ Masonry Box Grid ------------------------*

    .masonry-box-wrap-25-25
        { float: none; }

    .masonry-box-wrap-25-25     { width: 100%; padding-top: 100%; /* 1:1 Aspect Ratio * }
*/

/*------------------------ Header ------------------------*/

    #header-wrap    { }

        #header { }


        /*------------------------ Location Menu ------------------------*/

            #header #location    { background: rgba(214, 0, 0, 1) url('images/menu/map-flag.svg') center center no-repeat; background-size: 41px 63px; }

                #header #location .city { display: none; }
                #header #location .address { display: none; }


/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}

        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap { }

            #fp #right-wrap { padding-top: 250%; }

                #fp #right-inner-wrap .masonry-box-wrap-50-50    { width: 100%; padding-top: 100%; float: none; }


            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { }

                    #fp #right-wrap #top .valign-middle { width: 70%; padding: 0 25% 0 5%; }

                    #fp #right-wrap #top .text { font-size: 16px; }
                    #fp #right-wrap #top .title { font-size: 26px; }



/*------------------------ Template: Flexible Footprints ------------------------*/

    .ff    {}


    /*------------------------ Masonry Left ------------------------*/

        .ff #left-wrap { padding-top: 250%; }

            .ff #left-inner-wrap .masonry-box-wrap-50-50    { width: 100%; padding-top: 100%; float: none; }

                .ff #left-top { font-size: 50px; line-height: 60px; }

                    .ff #left-top .valign-middle { width: 90%; padding: 0 5%; }


    /*------------------------ Masonry Right ------------------------*/

        .ff #right-wrap { padding-top: 250%; }

            .ff #right-inner-wrap .masonry-box-wrap-50-50    { width: 100%; padding-top: 100%; float: none; }

                .ff #right-top { font-size: 22px; }

}

@media only screen and (max-width: 480px) {


/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}

        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap { }

            #fp #right-wrap {  }

                #fp #right-inner-wrap .masonry-box-wrap-50-50    {  }


            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { }

                    #fp #right-wrap #top .valign-middle { width: 75%; padding: 0 21.5% 0 1.5%; }

                    #fp #right-wrap #top .text { font-size: 14px; }

                    #fp #right-wrap #top .ruby-full { width: 20%; }


        /*------------------------ Featured Menu ------------------------*/

            #fp #featured-menu-wrap {  }

                #fp #featured-menu    {  }

                    #fp #featured-menu #items-wrap    {  }

                        #fp #featured-menu #items-wrap .four    { width: 90%; margin: 0 5% 20px 5%; float: none; }


}


/*------------------------ For Justin's Freaking small Galaxy S6 ------------------------*/
@media only screen and (max-width: 380px) {

/*------------------------ Front Page ------------------------*/

	#fp-wrap {  }

        #fp {}


        /*------------------------ Masonry Boxes ------------------------*/

            #fp #left-wrap {}

                #fp #left-wrap #left-box {  }

                    #fp  #left-wrap #left-box .title { font-size: 50px; line-height: 60px; }


            #fp #right-wrap {}

                #fp #right-wrap #right-inner-wrap {}

            /*------------------------ Right Top ------------------------*/

                #fp #right-wrap #top { }

                    #fp #right-wrap #top .text { font-size: 12px; }


}

.page-header-wrap.archive h1 {
    font-size: 42px;
    padding: 60px 0;
    text-align: center;
}

@media(min-width: 768px) {
    .page-header-wrap.archive h1 {
        font-size: 60px;
        padding: 200px 0;
        text-align: center;
    }
}

@media all and (orientation: portrait) {

}

@media all and (orientation: landscape) {

}
