body {
  width: 100%;
  zoom: 1; }
  body:before, body:after {
    content: "";
    display: table; }
  body:after {
    clear: both; }

/* grid */
/* breakpoints */
/* other stuff */
/* ---variables--- */
/* grey */
/* blue */
/* dark blue */
/* cream */
/* ---background color/texture--- */
body, #header, #scroll, div.lbox {
  background: #F1ECE7 url("/images/bg_texture.png") top center repeat; }

#navbar {
  background: url("/images/bg_texture_nav.png") top center repeat; }

@media screen and (min-width: 668px) {
  body.index #navbar {
    background: url("/images/bg_texture_nav_index.png") top center repeat; } }
@media screen and (max-width: 667px) {
  #footer {
    background: #F1ECE7 url("/images/bg_texture.png") top center repeat; } }
@media screen and (max-width: 667px) {
  #scroll {
    padding-bottom: 200px; } }
/* ---typography defaults--- */
body, p {
  font-family: "chaparral-pro", serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.5em;
  word-spacing: -0.05em;
  margin: 0 0 0.75em 0;
  color: #333333; }

.strong {
  font-weight: 700; }

h1, h2, h3, h4, h5 {
  font-family: "chaparral-pro", serif;
  font-size: 1.9em;
  font-weight: 400;
  line-height: 1.2em;
  text-transform: none;
  color: #0d3d6f;
  letter-spacing: -0.01em;
  word-spacing: -0.05em;
  padding: 0;
  margin-bottom: 10px;
  text-align: left; }

.blurb {
  text-align: left; }
  .blurb h1 {
    margin-bottom: 0.35em; }

/* smaller text on tablet */
@media screen and (max-width: 1120px) {
  body, p {
    font-size: 20px; } }
@media screen and (max-width: 1024px) {
  body, p {
    font-size: 18px; } }
@media screen and (max-width: 667px) {
  h1 {
    font-size: 1.7em; } }
.fine-print {
  font-size: 0.9em;
  line-height: 1.2em;
  color: #0d3d6f;
  margin-top: 0.5em; }

.employee .title, form label, h3, .dresscode-title {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 0.7em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #0d3d6f;
  padding-right: 0.5em; }

@media screen and (max-width: 667px) {
  .employee .title, form label, h3, .dresscode-title {
    font-size: 0.8em; } }
h3, .dresscode-title {
  margin-top: 2.5em;
  margin-bottom: 0.5em; }

a {
  color: #212E4C;
  border-bottom: 1px dotted #0d3d6f; }

a:hover, a:focus {
  color: #0d3d6f;
  border-bottom: 1px dotted #212E4C; }

div.hours {
  margin-top: 0; }

.employees {
  margin-bottom: 1.5em; }
  .employees .employee {
    margin-bottom: 0; }

/* ---navigation (desktop)--- */
/* type styles */
#navbar .nav ul li a, #navbar .nav ul li a:hover, #navbar .nav ul li a:focus, #navbar #locations ul li a, #navbar #locations ul li a:hover, #navbar #locations ul li a:focus {
  font-family: "chaparral-pro", serif;
  font-size: 1em;
  font-weight: 500;
  text-transform: capitalize;
  letter-spacing: 0;
  color: #F1ECE7; }
#navbar .nav ul li a:hover, #navbar .nav ul li a:focus, #navbar #locations ul li a:hover, #navbar #locations ul li a:focus {
  opacity: 0.9; }
#navbar .nav ul li a.selected, #navbar #locations ul li a.selected {
  font-weight: 600;
  font-style: italic;
  color: #F1ECE7; }

/* right border on nav */
@media screen and (min-width: 668px) {
  #navbar {
    border-right: 2px solid #ccccc4; } }
/* center logo */
@media screen and (min-width: 668px) {
  #logo {
    text-align: center; } }
/* line between nav sections */
#navbar #locations::before {
  border-top: solid 2px #F1ECE7; }

/* logo size */
@media screen and (max-width: 667px) {
  #logo img {
    max-height: 30%; } }
@media screen and (min-width: 668px) {
  #logo {
    padding-left: 10%;
    max-width: 80%; }
    #logo img {
      display: inline;
      float: left;
      width: 96.2264150943%;
      margin: 0 1.8867924528%;
      max-width: 100%;
      text-align: left; }

  #navbar .nav, #navbar #locations {
    padding-left: 10%; }
    #navbar .nav ul, #navbar #locations ul {
      text-align: left; }
      #navbar .nav ul li, #navbar #locations ul li {
        padding-left: 0; }

  #navbar .grid {
    margin-top: 35%; }

  #navbar #locations:before {
    margin: 0;
    border: none;
    height: 2em; } }
/* ---buttons--- */
/* typography for buttons (a.button and li containing nav a) */
a.button, a.button:hover, a.button:focus, ul.buttons li,
form input.button[type="submit"], form input.button[type="submit"]:hover,
form input.button[type="submit"]:focus,
button, button:hover, button:focus {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 0.7em;
  line-height: 1.8em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  /*background: $bg_image_nav top center repeat;*/
  background: #0d3d6f;
  border: none;
  /*background: none;
  border: 2px solid $text_color_secondary;*/
  border-radius: 0;
  margin-right: 0.5em; }

/* set color and padding for buttons */
a.button, ul.buttons li a, form input.button[type="submit"], button {
  color: #F1ECE7;
  padding: 0.5em 1.7em 0.6em 1.7em; }

/* taller buttons on mobile */
@media screen and (max-width: 667px) {
  a.button, ul.buttons li a {
    padding: 1.2em 2em; } }
/* hover state */
a.button:hover, a.button:focus,
ul.buttons li a:hover, ul.buttons li a:focus,
form input.button[type="submit"]:hover, form input.button[type="submit"]:focus,
button:hover, button:focus {
  color: #F1ECE7;
  background: #212E4C;
  border: none;
  border-radius: 0; }

/* remove top border, since not using button list */
ul.buttons {
  border: none; }

ul.menus {
  margin-top: 1.25em;
  margin-bottom: 1em; }

/* add padding after buttons in a list */
@media screen and (max-width: 667px) {
  ul.buttons li {
    margin-bottom: 0.5em; } }
/* priority nav */
#priority-nav {
  font-family: "chaparral-pro", serif;
  font-size: 1.2em;
  font-weight: 400;
  font-style: italic;
  text-transform: none;
  letter-spacing: 0;
  border-radius: 0;
  color: #F1ECE7;
  background: #A9261B;
  /* red */
  border: none;
  padding: 0.5em; }

#navbar .nav ul li.welcome {
  display: none; }

/* extra space between paragraph and buttons */
p + a.button {
  margin-top: 1.3em; }

/* ---site wide adjustments--- */
/* footer */
#footer p {
  font-size: 0.9em; }

/*custom back arrow */
@media screen and (max-width: 667px) {
  #back img {
    display: none; }

  #back {
    background-image: url("/images/back_cream.png"); } }
/* ---page specific changes--- */
/* index page */
@media screen and (min-width: 668px) {
  /* changes to footer on index page */
  body.index #footer, body.index #footer a, body.index #footer p {
    text-shadow: none;
    color: #F1ECE7; }
  body.index #footer a {
    border-bottom: 1px dotted #F1ECE7; }
  body.index #footer a:hover, body.index #footer a:focus {
    color: #0d3d6f;
    border-bottom: 1px dotted #0d3d6f; } }
@media screen and (max-width: 667px) {
  body.index #billboard {
    top: 0; } }
body.index #about {
  padding-bottom: 0; }

@media screen and (min-width: 668px) {
  body.index #scroll > #container > #about {
    display: none; } }
/* gift card page */
.blurb {
  padding-top: 2em;
  padding-bottom: 1em; }

/* mobile changes for both pages */
@media screen and (max-width: 667px) {
  .blurb {
    padding-top: 1em; } }
/* gallery page */
@media screen and (max-width: 1024px) and (min-width: 668px) {
  .gallery {
    padding-top: 1em; }
    .gallery a {
      margin-bottom: 1em; } }
@media screen and (max-width: 667px) {
  .gallery {
    padding-top: 5em; } }
#lightbox #imageData #numberDisplay #of {
  font-size: 1em;
  text-transform: none;
  opacity: 0.8; }

/* location pages */
/* top margin for .location container, remove split line, add to sidebar */
.location {
  margin-top: 1em; }
  .location .info.left {
    border-right: none; }

/* span only 10 columns at wide page sizes */
@media screen and (min-width: 1275px) {
  .location {
    display: inline;
    float: left;
    width: 79.5597484277%;
    margin: 0 1.8867924528%;
    margin-left: 10.2201257862%;
    margin-right: 10.2201257862%;
    margin-top: 2em; } }
@media screen and (min-width: 668px) {
  .location .sidebar {
    border-left: 1px solid #0d3d6f; } }
/* spacing fixes */
.about {
  margin-bottom: 0; }

/* pushes right column over */
@media screen and (min-width: 668px) {
  .location .info.left {
    padding-right: 0; }

  .location .sidebar {
    padding-left: 2em; } }
/* pushes right column over and switches managers to single line at wider screen sizes */
@media screen and (min-width: 1275px) {
  .location .sidebar {
    padding-left: 4em; }

  .employee .title {
    display: inline; } }
/* social */
.instagram a {
  background-image: url("/images/instagram-icon.png"); }

.yelp a {
  background-image: url("/images/yelp-icon.png"); }

.facebook a {
  background-image: url("/images/facebook-icon.png"); }

.tripadvisor a {
  background-image: url("/images/tripadvisor-icon.png"); }

ul.social {
  margin-top: 1.5em;
  margin-bottom: 1.5em; }
  ul.social li a {
    opacity: 0.85;
    width: 30px;
    height: 30px; }
