/*GENERAL*/
*,
*:before,
*:after {
  box-sizing: inherit;
}
html{
box-sizing: border-box;
height:100%;
}
body{
position: relative;
min-height:100%;
 margin: 0;
}

h1,h2,h3,h4{
 line-height: 1.3em;
}

@media screen and (max-width:600px){
 #wpadminbar {
    position: fixed;
}
}

 

 body a:focus, .button:focus, .button.alt:focus, button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus {
    outline: none;
}

#page{

}

#content{
background: white;
position: relative;
}

@media screen and (max-width:767px){
 #content{
/*padding-bottom:100px;*/
}
}

#page_content.content_full{
 max-width: 1200px;
}

img{
 max-width: 100%;
}

@media screen and (min-width:768px){

.img_wrap_right{
 padding: 10px 0px 5px 25px;
 float:right;
}
.img_wrap_left{
  padding: 10px 25px 5px 0px;
  float:left;
}
}

a.button, span.button{
 background: transparent;
display:inline-block;
padding:0.35em 1.2em;
border:0.01em solid #6d6d6d;
margin:1em;
border-radius:0.12em;
box-sizing: border-box;
text-decoration:none;
font-weight:300;
color:#6d6d6d;
text-align:center;
transition: all 0.2s;

}

@media screen and (max-width:30em){
 a.button, span.button{

    display: block;
    margin: 0.4em auto;

}
}


a.button:hover, span.button:hover, a:hover > .button{
color:#000000;
background-color:#FFFFFF;
}
@media all and (max-width:30em){
 a.button, span.button:hover{
  display:block;
 margin:0.4em auto;
 }
}

.hide-div{
 display: none;
}

/*LAYOUT*/

@media screen and (max-width:991px){
             .grid .item_25_md{
      width:100%;
     }
             .grid .item_75_md{
      width:100%;
     }
}
@media screen and (min-width:768px){
 
.grid{
 box-sizing: border-box;
display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
}

.grid_row{
 display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
}

.grid:not(:first-child){
 margin-top:25px;
}
   .grid:after {
      content: "";
      -webkit-box-flex: 1;
      -webkit-flex: auto;
          -ms-flex: auto;
              flex: auto;
      margin-left: -1%;
    }
    
       .grid .item, .grid_row .item {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
 
    }
    
    .grid.item_flip{
     flex-direction: row-reverse;
    }
    
         .grid .item_100{

      width: 100%;
     }
    
    .grid .item_25 {
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 25%;
          -ms-flex: 1 0 25%;
              flex: 1 0 25%;
      max-width: 25%;
    }
    
       @media screen and (min-width:992px){
     .grid .item_25_md{
       -webkit-box-flex: 1;
       -webkit-flex: 1 0 25%;
          -ms-flex: 1 0 25%;
              flex: 1 0 25%;
      max-width: 25%;
     }
     

     
   }
    
     .grid .item_50 {
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 50%;
          -ms-flex: 1 0 50%;
              flex: 1 0 50%;
      max-width: 50%;
    }
    

    
            .grid .item_75 {
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 75%;
          -ms-flex: 1 0 75%;
              flex: 1 0 75%;
      max-width: 75%;
    }
    
           @media screen and (min-width:992px){
     .grid .item_75_md{
       -webkit-box-flex: 1;
      -webkit-flex: 1 0 75%;
          -ms-flex: 1 0 75%;
              flex: 1 0 75%;
      max-width: 75%;
     }

   }
    
     .grid.item_flip .item_50:first-child{
     padding-left: 10px;
    }
    
        .grid.item_flip .item_50:nth-child(2){
     padding-right: 10px;
    }
    
    .grid:not(.item_flip) .item_50:first-child{
     padding-right: 10px;
    }
    
        .grid:not(.item_flip)  .item_50:nth-child(2){
     padding-left: 10px;
    }
    


}




/*
body:not(.home) #page_content, #primary{

 float:none;
}
*/

/*
.home #content .col-full{
 width:100%;
 max-width: none;
 margin: 0;
}
*/


#page_title{
 margin-top: 25px;
}
/*x-LAYOUT*/


/*Background*/

.banner_image{
 width: 100%;
}

@media screen and (min-width:1199px){

}


#bg_images.contained{
 position: relative;

}

.bg_image{
display: flex;
align-items: center;
  width: 100%;
  height: 100%;
  max-width: 100%;
  background-position: center top;
 background-size: cover;
 background-repeat: no-repeat;
 /*background-attachment: fixed;*/
 position: absolute;
  scroll-behavior: smooth;
 margin:auto;
}
/*
@media screen and (min-width:768px){
 .bg_image{

    background-position: center;
 }
}
*/
#bg_images{
 min-height: 500px;
}

#bg_images.full .bg_image{
  position: absolute;
 top:0;
 bottom:0;
 left:0;
 right:0;
}

@media screen and (max-width:767px){
 div.bg_image.text_bg{
 height: auto !important;
 background-size: cover;
}
}


.bg_image.text_bg:before {

    content: "";
    background: black;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: ;
    opacity: .3;

}
   


#fullsizeBG{
 width: 100%;
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
}

#ff_action_text {
 position:relative;
 width:100%;
 text-align:center
}
#ff_action_text h1{
 color:white;
}

@media screen and (max-width:767px) {
 #ff_action_text {
  padding-top: 25px;
 }
}

@media screen and (min-width:768px) {
 #ff_action_text {
  position:absolute;
  bottom:20%
 }
}
#ff_action_text #ff_action_text .action_logo {
 margin:auto
}
#ff_action_text #ff_action_text .bigger {
 margin-top:10px;
 display:inline-block;
 line-height:.7em
}
@media screen and (min-width:768px) {
 #ff_action_text #page_action .bigger {
  font-size:5em
 }
}
@media screen and (max-width:767px) {
 #ff_action_text #page_action .bigger {
  line-height:1em
 }
}
#ff_action_text #page_action .button_container {
 margin-top:15px
}
#ff_action_text #page_action .button {
 display:inline;
 color:white;
 background:red;
 border:none;
 border-radius:5px
}
#ff_action_text #page_action {
 font-weight:bold;
 text-transform:uppercase
}
#ff_action_text #page_action h1 {
 color:white
}
#ff_action_text #page_action a.button {
 text-decoration:none
}
#ff_action_text #page_action a.button:hover {
 text-decoration:none
}
@media screen and (max-width:767px) {
 #ff_action_text #page_action {
  background:black;
  font-size:.8em;
  padding:20px 10px
 }
}
/*x=Background*/


/*POSTS*/
.ff_post{
 display:inline-block;
 width: 100%;
}

@media screen and (min-width:768px){
.post_excerpt_wrapper{
 max-width: 400px;
padding: 25px;
}


}


#temp_banner{
 width:100%;
display: inline-block;
background: black;
margin-bottom: -4px;
}

#temp_text{
 display: none;
 background: black;
 color:white;
 padding:8px 16px;
 font-size: 1.1em;
 text-align: center;
 width: auto;
 overflow: hidden;
 line-height: 1.3em;
}

#close_banner{
 float:right;
 display: block;
 cursor: pointer;
 background:black;
height: 100%;
color:white;
padding: 5px;

}

#close_banner.fa-chevron-down{

}

#open_banner{
 float:right;
 display: inline-block;
 cursor: pointer;
 display:none;
}

.ff_post_wrapper{

}

.ff_post a{
 color:#444;
}

.ff_post a:hover > * {
 opacity: .8;
}
.ff_post .button:hover {
border-color:black;
}


.ff_post_thumb{
}

.ff_post_img{
height:100%;
background-repeat: no-repeat;
background-position: center;
background-size:cover;
}

.ff_post_text{
 padding:15px 25px;
 max-width: 500px;
}

.ff_post_text .button, .post_excerpt_wrapper .button{
color:black;
border-color:black;
border-width:.05em;
}

.post_excerpt_wrapper .button{
margin-top: 25px;
}

.post-image{
 margin-bottom: 25px;
}

.category_title{
 text-transform: uppercase;
 display: inline-block;
 margin-bottom:25px;
}
.category_title:after{
 /*
 content: "";
 display: block;
 width: inherit;
 height: 1px;
 background: #333;
 */
}

/*FOOTER*/

footer{

}


#footer_secondary{
height: 25px;
text-align: center;
background: black;
position: absolute;
left:0;
bottom:0;
width:100%;
z-index: 0;
}

#footer_secondary .footer_links, #footer_secondary .footer_links a{
color:white;
}

footer.site-footer{

}

.site-footer .footer_item a:not(.button){
 text-decoration: none;
}

.site-footer .footer_item a:hover{
 color: #ed1b2e;
}

 #footer_restaurant_info{
  float:right;
 }
@media screen and (max-width:1063px){
 #footer_restaurant_info{
margin-top:10px;
}

}

@media screen and (min-width:1064px){


#footer_restaurant_info .footer_item:last-child{
border-left: 1px solid white;
padding-left: 10px;
}




#footer_social{
 float:left;
}



.footer_items {
height: 40px;
line-height: 40px;
}
}


 #footer_social, .footer_item{
  display: none;
 }


@media screen and (min-width:768px){
  #footer_social{
   display: inline;
  }
 
 .footer_item{
 display:inline;
 float:left;
 margin-right: 25px;
}
}

.footer_links{
 margin-right: 15px;
}
.footer_links.small{
 font-size: .7em;
}

.footer_links:last-child{
 margin-right: 0;
}

@media screen and (min-width:992px){
 #footer_restaurant_info{

}
}


@media screen and (min-width:768px){
/*
.footer_items{
  position: absolute;
 top: 50%;
transform: translateY(-50%);
}
*/
}




.social{
 margin-right: 5px;
}

.social_text{
 text-indent: -9999px;
 display:inline-block;
}

.social i:hover{
 color:#ed1b2e;
}



@media screen and (max-width:767px){
 #footer_content_wrapper{
  display: none;
 }
 
}

 #footer_content_wrapper{
width: 100%;
background: white;
bottom: 0;
left:0;
position: fixed;
text-transform: uppercase;
transition: bottom .1s ease;
z-index: 1;
}




@media screen and (min-width:768px){
 #footer_content_wrapper{
 /*position: relative;*/

}


}


.footer_items{
 padding:5px 15px;
}

.footer_items::after {

    content: "";
    display: block;
    width: 100%;
    clear: both;

}

/*Restaurant Info*/


.page_contact .info_wrapper{
 margin-bottom: 20px;
}

.page_contact .adr_street{
 display: block;
}
.contact_item{
 margin-bottom:15px;
}

.contact_item .contact_position{
 text-transform: uppercase;
font-style: italic;
}


#page_content h2{
 margin-bottom: .25em;
}
#page_content h2:not(:first-child){
 margin-top: 1em;
}
.contact_item{
 line-height: 1.3em;
}


.hours_name:after{
 content:": ";
}

.contact_item .info_email{
 font-style: italic;
}

.contact_item p{
 margin:0;
}



.info_wrapper.info_address .address_component {
margin-right: 5px;
display: inline;
}

.info_wrapper.info_address {
font-size: 1.2em;
}
/*
.info_wrapper.info_address {
    border-right: 1px solid white;
    padding-right: 15px;
}
*/

.info_wrapper a{
    text-decoration: underline;
}


.footer_item .info_address a{
text-decoration: none;
}

.home .info_wrapper .hours_block:not(:last-child):after {
content:"\00b7";
padding-left: 15px;
}


.info_wrapper .hours_block {
margin-right: 15px;
    display: inline;
}

.page_contact{
 padding: 0 15px;
}

.page_contact h3{
 margin-bottom: 0;
}

.page_contact .info_wrapper .hours_block {
margin-right: 15px;
    display: inline-block;
}

.clear_fix{
 clear:both;
}

/*BIOS*/


#bio_wrapper a{
 color:#262626;
}

#bio_wrapper a{
text-decoration: none;
width: 100%;
}

.bio_name_wrapper{
 font-size: 1.3em;
}

.bio_name{

}

.bio_restaurant{
font-size: .8em;
}

.bio_name_item.bio_position:after{
 content: "\2022";
 margin:0 5px;
}



.img_full_bio{
 width:100%;
 max-width: 600px;
}

#bio_wrapper{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

 .tile.bio_tile {
padding: 0 20px;
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
  align-items: center;
}




#bio_wrapper .link_wrapper:hover{
 opacity: .8
}

.tile_image{
 width:100%;
 height:300px;
 background-repeat: no-repeat;
 background-size:cover;
 background-position: center;
}

.tile_text .title{
 padding: 10px;
}

.bio_description{
 white-space: pre-line;
}