/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: 'FuturaBT-Bold';
  letter-spacing: 0.050em;
  text-transform: uppercase;
  -moz-osx-font-smoothing: greyscale;
  -webkit-font-smoothing: antialiased;
  font-smooth: always;
  background: #2f312e; }

/* ==========================================================================
   @TYPOGRAPHY
   ========================================================================== */
h1, h2, h3, h4, h5, h6, p {
  margin: 0; }

.type-nav-option {
  font-family: 'FuturaBT-Bold';
  text-transform: uppercase;
  font-size: 12px;
  line-height: 60px;
  color: #c0bdbf; }

.type-section-subhead {
  font-family: 'FuturaBT-Bold';
  text-transform: uppercase;
  font-size: 12px;
  line-height: 16px; }

.type-section-head {
  font-family: 'FuturaBT-Bold';
  text-transform: uppercase;
  font-size: 28px;
  line-height: 34px; }

.type-subsection-head {
  font-family: 'FuturaBT-Bold';
  text-transform: uppercase;
  font-size: 15px;
  line-height: 22px; }

.type-body {
  letter-spacing: 0em;
  font-family: 'Courier', 'Courier New', monospace;
  font-size: 14px;
  line-height: 22px;
  text-transform: none; }

.type-details {
  font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 400; }

.type-calendar-date {
  font-size: 12px;
  line-height: 16px; }

.type-calendar-title {
  font-size: 13px;
  line-height: 16px; }

.type-calendar-time {
  font-family: 'Helvetica', 'HelveticaNeue', 'Helvetica Neue', Arial, sans-serif;
  font-size: 9px;
  line-height: 12px; }

.type-tout-title {
  font-size: 15px;
  line-height: 20px;
  text-align: left; }

.type-cta-link {
  font-size: 10px;
  line-height: 14px;
  text-decoration: none;
  text-transform: none; }

.type-cta-button {
  font-size: 18px;
  line-height: 26px; }

.arrow {
  font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Lucida Sans', Geneva, Verdana, sans-serif;
  font-weight: bold;
  font-size: 16px;
  line-height: 10px;
  padding-left: 4px;
  vertical-align: sub; }

/* ==========================================================================
   @CONTAINERS
   ========================================================================== */
.wrap {
  width: 100%;
  min-height: 100%;
  position: relative; }

/* ==========================================================================
   @NAV
   ========================================================================== */
.site-nav {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2f312e; }
  .site-nav.collapsed {
    height: 48px;
    width: 48px;
    background-color: #444444; }
  .site-nav .toggle-button {
    width: 48px;
    height: 48px;
    background: transparent url("../img/nav-close.svg") no-repeat scroll 50% 50%;
    cursor: pointer;
    border-right: 1px solid #444643; }
  .site-nav.collapsed .toggle-button {
    background: transparent url("../img/nav-hamburger.svg") no-repeat scroll 50% 50%; }
  .site-nav.collapsed .site-sections, .site-nav.collapsed .social-links {
    display: none; }
  .site-nav .site-sections, .site-nav .social-links {
    padding: 0 0 0 0;
    margin: 0;
    list-style: outside none; }
  .site-nav .site-option, .site-nav .site-sub-option, .site-nav .social-option {
    border-top: 1px solid #444643;
    padding: 0; }
  .site-nav a:link,
  .site-nav a:visited,
  .site-nav a:hover,
  .site-nav a:active {
    text-decoration: none;
    color: #c0bdbf;
    display: block;
    height: 60px;
    padding: 0 0 0 24px; }
  .site-nav .site-sub-option a {
    padding: 0 0 0 36px; }
  .site-nav .site-option.active a {
    color: white; }

@media only screen and (min-width: 640px) {
  .site-nav {
    box-sizing: border-box;
    position: relative;
    height: 60px;
    padding: 0 32px;
    overflow: hidden; }
    .site-nav.collapsed {
      height: 60px;
      width: 100%;
      background-color: #2f312e; }
    .site-nav .site-sections,
    .site-nav .social-links {
      vertical-align: top; }
    .site-nav .site-sections {
      float: left; }
    .site-nav .social-links {
      float: right; }
    .site-nav.collapsed .site-sections, .site-nav.collapsed .social-links {
      display: inline-block; }
    .site-nav .toggle-button {
      display: none;
      visibility: hidden; }
    .site-nav a:link,
    .site-nav a:visited,
    .site-nav a:hover,
    .site-nav a:active {
      box-sizing: border-box;
      height: 60px;
      line-height: 60px;
      padding: 0;
      font-size: 12px; }
    .site-nav .site-option, .site-nav .site-sub-option, .site-nav .social-option {
      display: inline-block;
      border-top: 0 none;
      padding: 0 42px 0 0; }
    .site-nav .site-option:last-of-type {
      padding: 0; }
    .site-nav .site-sub-option {
      display: none; }
    .site-nav .social-option {
      display: inline-block;
      width: 17px;
      height: 17px;
      padding: 22px 0 21px 10px; }
      .site-nav .social-option .social-icon {
        display: block;
        width: 100%;
        height: 100%;
        text-indent: -9999px;
        background-size: contain;
        background-position: 50% 50%;
        background-repeat: no-repeat;
        background-attachment: scroll; }
        .site-nav .social-option .social-icon.facebook {
          background-image: url("../img/social-facebook.svg"); }
        .site-nav .social-option .social-icon.instagram {
          background-image: url("../img/social-instagram.svg"); } }
/*
@media only screen and (min-width: 960px) {
  .site-nav {
    height: 80px;
    padding: 0 72px;

    &.collapsed {
      height: 80px;
    }

    a:link,
    a:visited,
    a:hover,
    a:active {
      height: 80px;
      line-height: 80px;
      font-size: 15px;
    }

    .social-option {
      width: 22px;
      height: 22px;
      padding: 29px 0 29px 10px;
    }

    .site-option {
      padding: 0 40px 0 0;
    }
  }
}

@media only screen and (min-width: 1100px) {
  .site-nav .site-option {
    padding: 0 72px 0 0;
  }
}
*/
/* ==========================================================================
   @MASTHEAD
   ========================================================================== */
.masthead {
  width: 100%;
  height: 127.2vw;
  background-color: #cbcbcb;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 50% 50%;
  background-size: cover; }
  .masthead .logo {
    display: none;
    visibility: hidden; }

@media only screen and (min-width: 640px) {
  .masthead {
    height: 51.3888889vw;
    max-height: 740px;
    background-position: 50% 50%; }
    .masthead .logo {
      position: absolute;
      top: 32px;
      left: 32px;
      width: 128px;
      height: 128px;
      display: block;
      visibility: visible;
      background: url("../img/logo-dark.png") no-repeat scroll 50% 50%;
      background-size: contain; } }
@media only screen and (min-width: 1024px) {
  .masthead .logo {
    top: 55px;
    left: 47px;
    width: 160px;
    height: 160px; } }
/* ==========================================================================
   @HOME
   ========================================================================== */
.home .wrap {
  background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
.home .main {
  padding: 0 16px 0 16px; }
.home .main h2 {
  color: #444444;
  font-size: 11px;
  margin-bottom: 6px; }
.home .calendar-preview {
  background-color: #2f312e;
  padding: 13px 12px 20px 12px; }
.home .announcement {
  padding: 45px 26px 75px 26px;
  color: #E8E8E2; }
  .home .announcement h3 {
    font-size: 29px;
    line-height: 32px;
    letter-spacing: 0.1em;
    margin-bottom: 18px; }
  .home .announcement .announcement-body {
    text-transform: none;
    font-size: 18px; }
    .home .announcement .announcement-body p {
      margin-bottom: 12px; }
    .home .announcement .announcement-body a {
      color: #4b7574;
      text-decoration: none; }
    .home .announcement .announcement-body a:hover {
      text-decoration: underline; }
.home .no-calendar-link .event:last-child {
  margin-bottom: 0; }
.home .event {
  border-top: 1px solid #424242;
  padding: 16px 0;
  font-size: 0;
  line-height: 0; }
  .home .event:last-child {
    border-bottom: 1px solid #424242;
    margin-bottom: 20px; }
.home .event-date {
  display: inline-block;
  width: 63px;
  color: #4b7574;
  vertical-align: top; }
.home .event-details {
  color: #dcd6c4;
  display: inline-block;
  width: calc(100% - 64px); }
.home h4 {
  color: #E3DDCF; }
.home .event-time {
  font-size: 9px;
  line-height: 12px;
  font-family: 'HelveticaNeue', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
  color: #DCD6C4;
  margin-bottom: 20px; }
.home .event-desc.type-body {
  font-size: 12px;
  line-height: 16px;
  opacity: 0.70; }
  .home .event-desc.type-body p {
    margin-bottom: 16px; }
  .home .event-desc.type-body p:last-of-type {
    margin-bottom: 0; }
.home .calendar-footer {
  text-align: right; }
.home .calendar-footer a {
  color: #4b7574;
  font-size: 10px;
  letter-spacing: -0.025em; }

@media screen and (min-width: 768px) {
  .home .calendar-preview {
    padding: 13px 35px 50px 35px; }
  .home .main h2 {
    letter-spacing: 0.10em;
    font-size: 16px;
    margin-bottom: 12px; }
  .home .announcement {
    padding: 80px 24px 120px 24px; }
    .home .announcement h3 {
      font-size: 48px;
      line-height: 54px;
      letter-spacing: 0.05em;
      margin-bottom: 26px;
      padding-right: 40px; }
    .home .announcement .announcement-body {
      font-size: 24px; }
      .home .announcement .announcement-body p {
        margin-bottom: 18px; }
  .home .event {
    padding: 24px 0; }
    .home .event:last-child {
      border-bottom: 1px solid #424242;
      margin-bottom: 50px; }
  .home .event-date {
    width: 135px;
    font-size: 25px;
    line-height: 36px; }
  .home h4 {
    font-size: 25px;
    line-height: 36px;
    color: #E8E8E2; }
  .home .event-details {
    width: calc(100% - 136px); }
  .home .event-time {
    font-size: 14px;
    line-height: 18px;
    font-family: 'HelveticaNeue', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
    color: #E8E8E2; }
  .home .event-desc.type-body {
    font-size: 14px;
    line-height: 18px; }
  .home .calendar-footer a {
    font-size: 13px;
    letter-spacing: -0.025em;
    line-height: 15px; }
  .home .arrow {
    font-size: 24px; } }
@media screen and (min-width: 1024px) {
  .home .main h2 {
    letter-spacing: 0.10em;
    font-size: 16px;
    margin-bottom: 12px; }
  .home .calendar-preview {
    padding-top: 21px;
    padding-right: 24px;
    padding-left: 28px;
    padding-bottom: 37px; }
  .home .announcement {
    padding: 71px 37px 130px 34px; }
    .home .announcement h3 {
      font-size: 48px;
      line-height: 56px;
      letter-spacing: 0.05em;
      margin-bottom: 35px;
      padding-right: 40px; }
    .home .announcement .announcement-body {
      font-size: 24px; }
      .home .announcement .announcement-body p {
        margin-bottom: 24px; }
  .home .event {
    padding: 30px 0;
    border-top: 2px solid #424242; }
    .home .event:last-child {
      border-bottom: 2px solid #424242;
      margin-bottom: 41px; }
  .home .calendar-footer a {
    font-size: 13px;
    letter-spacing: -0.025em;
    line-height: 15px; }
  .home .event-date {
    width: 102px;
    font-size: 18px;
    line-height: 20px; }
  .home h4 {
    font-size: 18px;
    line-height: 20px;
    color: #E8E8E2; }
  .home .event-details {
    width: calc(100% - 136px); }
  .home .event-time {
    font-size: 13px;
    line-height: 15px;
    font-family: 'HelveticaNeue', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
    color: #E8E8E2; }
  .home .arrow {
    font-size: 18px; }
  .home h4 {
    margin-bottom: 4px; } }
/* ==========================================================================
   @SIDEBAR
   ========================================================================== */
.sidebar .map {
  display: none; }

.sidebar {
  padding-top: 33px;
  padding-bottom: 33px; }
  .sidebar .logo {
    display: inline-block;
    width: 32.1333333vw;
    height: 32.1333333vw;
    background: url("../img/logo-dark@2x.png") no-repeat scroll 50% 50%;
    background-size: contain;
    float: left;
    margin-right: 20px; }
  .sidebar .hours {
    font-size: 10px;
    line-height: 13px;
    color: #4A4A4A;
    padding-top: 8px;
    margin-bottom: 18px; }
  .sidebar .address, .sidebar .email {
    line-height: 13px; }
    .sidebar .address a, .sidebar .email a {
      font-size: 10px;
      color: #444444;
      text-decoration: none;
      text-transform: none; }
  .sidebar .email a {
    text-decoration: underline; }

@media screen and (min-width: 375px) {
  .sidebar .logo {
    width: 37.1333333vw;
    height: 37.1333333vw;
    margin-right: 20px; }
  .sidebar .hours {
    font-size: 12px;
    line-height: 16px;
    padding-top: 12px;
    margin-bottom: 18px; }
  .sidebar .address, .sidebar .email {
    line-height: 16px; }
    .sidebar .address a, .sidebar .email a {
      font-size: 12px; } }
@media screen and (min-width: 640px) {
  .sidebar {
    position: relative;
    padding-top: 32px;
    padding-bottom: 32px;
    padding-left: 16px;
    padding-right: 16px;
    overflow: hidden; }
    .sidebar .map {
      display: block;
      width: 234px;
      height: 139px;
      background: url("../img/map.jpg");
      float: left;
      background-size: contain; }
      .sidebar .map a {
        display: block;
        width: 100%;
        height: 100%; }
    .sidebar .logo {
      display: none; }
    .sidebar .hours, .sidebar .address, .sidebar .email {
      position: relative;
      left: 32px; }
    .sidebar .touts {
      display: none; } }
@media screen and (min-width: 768px) {
  .sidebar {
    margin-bottom: 40px; }
    .sidebar .map {
      width: 312px;
      height: 185px;
      margin-bottom: 17px; }
    .sidebar .hours {
      font-size: 13px;
      line-height: 18px;
      letter-spacing: 0.10em;
      margin-bottom: 20px; }
    .sidebar .address a, .sidebar .email a {
      font-size: 13px;
      line-height: 18px; }
    .sidebar .touts {
      margin-top: 63px;
      display: none; } }
@media screen and (min-width: 1024px) {
  .sidebar .hours {
    font-size: 13px;
    line-height: 18px; }
  .sidebar .address a,
  .sidebar .email a {
    font-size: 13px;
    line-height: 18px; } }
/* ==========================================================================
   @FAQ
   ========================================================================== */
.faq {
  color: #444444; }
  .faq .sidebar {
    display: none;
    visibility: hidden; }
  .faq h3 {
    margin-bottom: 32px; }
  .faq .wrap {
    background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
  .faq .main {
    padding: 96px 22px 90px 32px; }
  .faq .faqs-wrapper {
    max-width: 768px; }
  .faq .faq-item {
    font-family: Courier, "Courier New", monospace;
    text-transform: none;
    color: #555555;
    margin-bottom: 60px; }
  .faq .faq-question {
    font-weight: 700;
    color: #333333;
    margin-bottom: 9px; }

@media screen and (min-width: 1024px) {
  .faq .faqs-wrapper {
    max-width: 1080px;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 90px;
    -moz-column-gap: 90px;
    column-gap: 90px; }
  .faq .faq-item {
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 70px; }
  .faq .faq-question {
    margin-bottom: 10px; } }
/* ==========================================================================
   @MENU
   ========================================================================== */
.menu {
  color: #444444; }
  .menu .sidebar {
    display: none;
    visibility: hidden; }
  .menu h3 {
    margin-bottom: 32px; }
  .menu .wrap {
    background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
  .menu .main {
    padding: 96px 22px 90px 32px; }
  .menu .menu-holder h2 {
    font-size: 24px;
    margin-bottom: 33px; }
  .menu .menu-holder h3 {
    font-size: 14px; }
  .menu .menu-holder .section, .menu .menu-holder .subsection {
    padding-bottom: 33px; }
  .menu .menu-holder .subsection:last-of-type {
    padding-bottom: 0; }
  .menu .menu-holder .section.wine .price {
    display: inline; }
  .menu .menu-holder .menuitem {
    font-family: Courier, "Courier New", monospace;
    text-transform: none;
    font-size: 14px;
    line-height: 19px;
    color: #555555;
    margin-bottom: 30px; }
    .menu .menu-holder .menuitem .name {
      font-weight: 700;
      color: #333333;
      margin-bottom: 9px; }
  .menu .menu-holder .section.sweets .menuitem,
  .menu .menu-holder .section.wine .menuitem,
  .menu .menu-holder .section.happyhour .menuitem,
  .menu .menu-holder .section.beer .menuitem {
    margin-bottom: 12px; }
    .menu .menu-holder .section.sweets .menuitem .name,
    .menu .menu-holder .section.wine .menuitem .name,
    .menu .menu-holder .section.happyhour .menuitem .name,
    .menu .menu-holder .section.beer .menuitem .name {
      margin-bottom: 0; }
  .menu .menu-holder .footer, .menu .menu-holder .intro {
    font-family: Courier, "Courier New", monospace;
    text-transform: none;
    font-size: 14px;
    line-height: 19px;
    color: #555555;
    font-style: italic;
    margin-bottom: 33px; }

@media screen and (min-width: 768px) {
  .menu .menu-holder .column {
    width: calc((100% - (22px + 32px + 64px)) / 2);
    float: left;
    vertical-align: top; }
  .menu .menu-holder .col1 {
    margin-right: 64px; }
  .menu .menu-holder .col3 {
    float: none; } }
@media screen and (min-width: 1280px) {
  .menu .menu-holder .column {
    width: calc((100% - (22px + 32px + 64px + 64px)) / 3);
    float: left;
    vertical-align: top; }
  .menu .menu-holder .col2 {
    margin-right: 64px; } }
/* ==========================================================================
   @ABOUT
   ========================================================================== */
.about {
  color: #444444; }
  .about h3 {
    margin-bottom: 32px; }
  .about .wrap {
    background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
  .about .main {
    padding: 96px 22px 90px 32px; }
  .about .about-body {
    text-transform: none;
    opacity: 0.8;
    margin-bottom: 66px; }
    .about .about-body p {
      line-height: 22px;
      margin-bottom: 22px; }
  .about .press-items {
    list-style: outside none;
    padding: 0;
    text-transform: none;
    font-size: 11px;
    line-height: 22px; }
    .about .press-items a {
      color: #444444; }
  .about .sidebar {
    padding-bottom: 0; }
  .about .sidebar .logo {
    display: none; }
  .about .touts {
    display: none; }

@media only screen and (min-width: 640px) {
  .about .venue-photos {
    border-top: 10px solid #2f312e; }
  .about .sidebar {
    display: none; } }
@media only screen and (min-width: 768px) {
  .about .press-items {
    font-size: 14px;
    line-height: 26px; } }
@media only screen and (min-width: 980px) {
  .about .about-body {
    margin-bottom: 80px; } }
/* ==========================================================================
   @CALENDAR
   ========================================================================== */
.calendar {
  color: #444444; }
  .calendar h3 {
    margin-bottom: 16px; }
  .calendar .wrap {
    background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
  .calendar .intro {
    padding: 96px 22px 55px 32px; }
  .calendar h4 {
    opacity: 0.70;
    margin-bottom: 8px; }
  .calendar .filter-dropdown {
    width: 200px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    overflow: hidden;
    background: white url("../img/dropdown-arrow@2x.png") no-repeat scroll 175px 50%;
    background-size: 11px 7px; }
  .calendar .filter-dropdown select {
    background: transparent;
    box-sizing: border-box;
    padding: 0 17px;
    height: 42px;
    line-height: 42px;
    width: 100%;
    border: 1px solid #CCCCCC;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    -webkit-appearance: none;
    font-size: 16px; }
  .calendar .events-holder {
    background-color: #2f312e; }
    .calendar .events-holder .event-item {
      position: relative;
      padding: 30px 24px;
      border-bottom: 1px solid rgba(216, 216, 216, 0.3); }
    .calendar .events-holder .thumbnail {
      width: 80px;
      height: 80px;
      position: absolute;
      left: 24px;
      top: 30px;
      background-color: #D8D8D8;
      opacity: 0.60;
      display: none; }
    .calendar .events-holder .event-date {
      color: #4b7574;
      font-size: 16px;
      padding-top: 10px;
      line-height: 20px; }
    .calendar .events-holder .event-details {
      color: #dcd6c4;
      padding-left: 0px; }
    .calendar .events-holder .event-title {
      font-size: 16px;
      opacity: 1;
      line-height: 20px;
      margin-bottom: 0; }
    .calendar .events-holder .event-time {
      font-size: 12px;
      line-height: 20px;
      margin-bottom: 12px; }
    .calendar .events-holder .event-desc {
      font-size: 12px;
      line-height: 16px;
      opacity: 0.70; }
      .calendar .events-holder .event-desc p {
        margin-bottom: 16px; }
      .calendar .events-holder .event-desc p:last-of-type {
        margin-bottom: 0; }
  .calendar .no-results {
    background-color: #2f312e;
    padding: 60px 24px;
    border-bottom: 1px solid rgba(216, 216, 216, 0.3);
    color: #dcd6c4; }
    .calendar .no-results h4 {
      margin-bottom: 18px; }
    .calendar .no-results p {
      opacity: 0.7; }

@media screen and (min-width: 768px) {
  .calendar .main {
    width: calc(100vw - (80px));
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 280px; }
  .calendar .intro {
    padding-top: 96px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 55px; }
  .calendar .events-holder {
    padding: 0 32px; }
    .calendar .events-holder .event-item {
      padding: 48px 24px 0 24px;
      border-bottom: 0 none; }
    .calendar .events-holder .event-details {
      margin-left: 0px;
      padding-top: 0px;
      padding-left: 8px;
      padding-bottom: 48px;
      padding-right: 8px;
      border-bottom: 1px solid rgba(216, 216, 216, 0.3);
      box-sizing: border-box;
      min-height: 100px; }
    .calendar .events-holder .event-date {
      float: left;
      padding-top: 0px;
      width: 64px; }
    .calendar .events-holder .event-title, .calendar .events-holder .event-time, .calendar .events-holder .event-desc {
      padding-left: 64px; }
  .calendar .no-results {
    padding: 60px 48px;
    border-bottom: 0 none; }
    .calendar .no-results h4 {
      font-size: 24px; } }
@media screen and (min-width: 1024px) {
  .calendar .events-holder .thumbnail {
    width: 120px;
    height: 120px; }
  .calendar .events-holder .event-details {
    margin-left: 0px;
    padding-top: 0px;
    min-height: 135px; }
  .calendar .events-holder .event-date {
    width: 80px;
    font-size: 20px;
    line-height: 24px; }
  .calendar .events-holder .event-title, .calendar .events-holder .event-time, .calendar .events-holder .event-desc {
    padding-left: 80px; }
  .calendar .events-holder .event-title {
    font-size: 20px;
    line-height: 24px; }
  .calendar .events-holder .event-time {
    font-size: 14px;
    margin-bottom: 20px; }
  .calendar .events-holder .event-desc {
    font-size: 14px;
    line-height: 20px; } }
/*
@media screen and (min-width: 1210px) {
  .calendar {

    .events-holder {
      padding-top: 32px;

      .thumbnail {
        width: 160px;
        height: 160px;
        left: 56px;
        top: 25px;
      }

      .event-item {
        padding-top: 48px;
        padding-left:  100px;
        padding-right: 100px;
      }

      .event-details {
        margin-left: 172px;
        padding-top: 0px;
        padding-bottom: 72px;
        min-height: 124px;
      }

      .event-date {
        width: 120px;
        font-size: 25px;
        line-height: 30px;
      }

      .event-title, .event-time, .event-desc {
        padding-left: 120px;
      }

      .event-title {
        font-size: 25px;
        line-height: 30px;
      }

      .event-time {
        font-size: 14px;
        margin-bottom: 20px;
      }

      .event-desc {
        font-size: 14px;
        line-height: 20px;
      }
    }

    .no-results {
      padding: 60px 48px 92px 48px;
    }
  }
}
*/
/* ==========================================================================
   @VENUE + DETAIL
   ========================================================================== */
.venue .wrap {
  background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
.venue .main {
  padding: 96px 22px 32px 32px;
  color: #444444; }
.venue h3 {
  margin-bottom: 32px; }
.venue p {
  margin-bottom: 32px; }
.venue .sidebar {
  display: none; }

.venue.detail .main {
  padding: 96px 0px 200px 0px;
  color: #444444; }
.venue.detail .sidebar {
  display: none; }
.venue.detail .pattern-grey {
  background: url("../img/bg-pattern-grey.png") repeat scroll 15px -30px; }
.venue.detail .pattern-tan {
  background: url("../img/bg-pattern-tan.png") repeat scroll 15px -30px; }
.venue.detail .pattern-goldenrod {
  background: url("../img/bg-pattern-goldenrod.png") repeat scroll 15px -30px; }
.venue.detail .pattern-blue {
  background: url("../img/bg-pattern-blue.png") repeat scroll 15px -30px; }
.venue.detail h3 {
  margin-bottom: 32px; }
.venue.detail .intro {
  margin-bottom: 66px;
  padding: 0 30px; }
.venue.detail .venue-desc {
  margin-bottom: 48px; }
.venue.detail .venue-features .heading {
  width: 100%;
  height: 14px;
  margin-bottom: 28px;
  text-indent: -9999px;
  background: url("../img/heading-features@2x.png") no-repeat scroll 0 0;
  background-size: contain; }
.venue.detail .venue-features ul {
  padding: 0 0 0 16px; }
.venue.detail .venue-features li {
  list-style: url("../img/features-list-bullet.png") outside;
  font-size: 13px;
  line-height: 27px;
  padding-left: 12px; }
.venue.detail .floorplans.slideshow {
  display: none; }
.venue.detail .contact {
  padding: 60px 30px 0 30px;
  box-sizing: border-box;
  max-width: 400px; }
  .venue.detail .contact h2 {
    margin-bottom: 25px; }
  .venue.detail .contact p {
    font-size: 13px;
    line-height: 18px;
    margin-bottom: 20px; }
.venue.detail .required {
  color: #B80E0E;
  padding-left: 2px;
  padding-right: 2px; }
.venue.detail .contact-form label {
  font-weight: bold;
  font-size: 13px;
  margin-bottom: 11px;
  display: block;
  padding-top: 20px; }
.venue.detail .contact-form .eventtype-holder {
  width: 200px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  overflow: hidden;
  background: white url("../img/dropdown-arrow@2x.png") no-repeat scroll 175px 50%;
  background-size: 11px 7px; }
.venue.detail .contact-form select {
  background: transparent;
  box-sizing: border-box;
  padding: 0 17px;
  height: 40px;
  line-height: 40px;
  width: 100%;
  border: 1px solid #CCCCCC;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  -webkit-appearance: none;
  font-size: 12px; }
.venue.detail .contact-form input {
  height: 40px;
  padding: 0 17px;
  box-sizing: border-box;
  border: 1px solid #CCCCCC;
  line-height: 40px;
  font-size: 12px;
  display: block;
  width: 100%; }
.venue.detail .contact-form textarea {
  box-sizing: border-box;
  border: 1px solid #CCCCCC;
  padding: 17px 17px;
  width: 100%;
  display: block;
  line-height: 20px;
  font-size: 12px; }
.venue.detail .contact-form input[type="submit"] {
  background-color: #2F312E;
  border: 0 none;
  color: #dcd6c4;
  margin-top: 40px;
  height: 50px;
  font-size: 13px;
  line-height: 52px; }

@media only screen and (min-width: 640px) {
  .venue.detail .contact-form input[type="submit"] {
    display: inline-block;
    width: auto;
    padding: 0 33px; } }
@media only screen and (min-width: 800px) {
  .venue.detail .venue-desc {
    width: calc(100% - (240px + 60px + 60px));
    max-width: 760px;
    padding-right: 60px;
    vertical-align: top;
    display: inline-block; }
  .venue.detail .venue-features {
    vertical-align: top;
    display: inline-block;
    width: 240px;
    margin-top: -52px; }
  .venue.detail .venue-features .heading {
    margin-bottom: 36px; } }
@media only screen and (min-width: 1024px) {
  .venue.detail .main .contact .type-body,
  .venue.detail .contact-form label {
    font-size: 14px;
    line-height: 20px; }
  .venue.detail .contact-form select,
  .venue.detail .contact-form input {
    height: 50px;
    font-size: 14px; }
  .venue.detail .contact-form input {
    line-height: 50px; }
  .venue.detail .venue-features {
    margin-top: -66px; }
  .venue.detail .venue-features .heading {
    margin-bottom: 36px;
    height: 24px; }
  .venue.detail .venue-features li {
    font-size: 20px;
    line-height: 40px; }
  .venue.detail .contact {
    max-width: 580px; }
  .venue.detail .intro {
    padding-left: calc((100vw - (564px + 80px + 312px + 20px))/2);
    padding-right: 0; }
  .venue.detail .venue-desc {
    padding-right: 80px;
    width: 564px; }
  .venue.detail .venue-features {
    width: 312px; }
  .venue.detail .contact {
    box-sizing: content-box;
    max-width: 560px;
    padding-right: 0;
    padding-left: calc((100vw - (564px + 80px + 312px + 20px))/2); } }
/*
@media only screen and (min-width: 1210px) {
  .venue.detail {

    .main .contact .type-body,
    .contact-form label {
      font-size: 18px;
      line-height: 24px;
    }

    .intro {
      padding-left:  calc((100vw - (760px + 101px + 240px + 20px))/2);
      padding-right: calc((100vw - (760px + 101px + 240px + 20px))/2);
    }

    .venue-desc {
      padding-right: 100px;
      width: 760px;
    }

    .contact {
      box-sizing: content-box;
      max-width: 560px;
      padding-right: 0;
      padding-left: calc((100vw - (760px + 101px + 240px + 20px))/2);
    }
  }
}
*/
/* ==========================================================================
   @VENUE TOUTS
   ========================================================================== */
.venue-touts {
  padding: 0 16px 32px 16px; }
  .venue-touts .venue-tout {
    position: relative;
    width: 100%;
    padding-bottom: 66.66667%;
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    margin-bottom: 16px; }
  .venue-touts .venue-tout-content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0; }
  .venue-touts .venue-tout-title,
  .venue-touts .venue-tout-desc,
  .venue-touts .venue-tout-cta {
    display: block;
    text-align: center;
    position: relative; }
  .venue-touts .venue-tout-title {
    margin-top: 20%;
    color: #4b7574;
    text-decoration: none;
    font-size: 26px;
    line-height: 40px;
    margin-bottom: 10px; }
  .venue-touts .venue-tout-desc {
    font-size: 10px;
    line-height: 14px;
    color: #E8E8E2;
    text-transform: none;
    padding: 0 10%;
    display: none; }
  .venue-touts .venue-tout-cta {
    display: inline-block;
    width: 100px;
    height: 26px;
    left: 50%;
    margin-left: -50px;
    font-size: 7px;
    line-height: 28px;
    color: #E8E8E2;
    text-decoration: none;
    border: 1px solid #E8E8E2; }

@media screen and (min-width: 375px) {
  .venue-touts .venue-tout-title {
    font-size: 30px;
    margin-top: 22%; } }
@media screen and (min-width: 640px) {
  .venue-touts {
    padding: 0 16px; }
    .venue-touts .venue-tout {
      padding-bottom: 54.8387097%;
      margin-bottom: 20px; }
    .venue-touts .venue-tout-title {
      font-size: 36px;
      margin-bottom: 20px;
      margin-top: 20vw; }
    .venue-touts .venue-tout-cta {
      font-size: 10px;
      line-height: 36px;
      width: 120px;
      margin-left: -60px;
      height: 36px;
      border: 2px solid #E8E8E2; } }
@media screen and (min-width: 768px) {
  .venue-touts {
    margin-bottom: 80px; }
    .venue-touts .venue-tout-title {
      font-size: 48px;
      margin-bottom: 30px;
      margin-top: 20vw; }
    .venue-touts .venue-tout-cta {
      width: 180px;
      margin-left: -90px;
      height: 42px;
      line-height: 42px;
      font-size: 11px; } }
@media screen and (min-width: 1024px) {
  .venue-touts {
    width: 930px;
    padding-left: calc((100vw - (564px + 54px + 20px + 312px)) / 2);
    padding-right: 0; }
    .venue-touts .venue-tout-title {
      margin-top: 190px;
      margin-bottom: 30px;
      line-height: 80px;
      font-size: 60px; } }
@media only screen and (min-width: 800px) {
  .venue.detail .floorplans.slideshow {
    display: block; } }
/* ==========================================================================
   @SIDEBAR TOUTS
   ========================================================================== */
.touts {
  margin-top: 32px;
  margin-bottom: 32px;
  /*
  .tout-wrap {
    padding: 50px 16px;
    text-decoration: none;
    display: block;
  }

  .tout-title {
    color: $color-text-tan;
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 16px;
    width: 70%;
  }

  .tout-cta {
    color: $color-text-teal;
    font-size: 10px;
    letter-spacing: -0.025em;
  }

  */ }
  .touts .tout {
    margin-bottom: 20px;
    background: #2f312e;
    display: block;
    font-size: 0;
    line-height: 0;
    width: 288px; }
  .touts .tout {
    width: 312px;
    height: 405px;
    margin: 0;
    position: relative;
    left: 50%;
    margin-left: -156px;
    background: none;
    /*
    .tout-wrap {
      padding: 0;
      text-indent: -9999px;
      text-decoration: none;
      display: block;
      width: 100%;
      height: 100%;  
      background: url('../img/default-tout.png') no-repeat scroll 0 0;
    }
    */ }

@media screen and (min-width: 320px) {
  .touts .tout {
    width: 288px;
    height: 374px;
    margin-left: -144px; } }
@media screen and (min-width: 768px) {
  .touts {
    margin-bottom: 0;
    /*
    .tout-wrap {
      padding: 39px 16px 32px 24px;
      text-decoration: none;
      display: block;
    }

    .tout-title {
      font-size: 20px;
      line-height: 26px;
      width: 95%;
      margin-bottom: 24px;
    }
    .tout-cta {
      font-size: 14px;

      .arrow {
        font-size: 20px;
      }
    }
    */ }
    .touts .tout {
      position: relative;
      left: auto;
      margin-left: 0; } }
/* ==========================================================================
   @FOOTER
   ========================================================================== */
footer {
  box-sizing: border-box;
  background: #2f312e;
  text-align: center; }

.sister-bars {
  padding: 70px 30px;
  border-bottom: 1px solid #1a1a1a; }

.bar-logo {
  display: inline-block;
  text-indent: -9999px;
  width: 60px;
  height: 60px;
  margin-right: 25px;
  margin-bottom: 40px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: scroll; }

.bar-logo:nth-child(3n),
.bar-logo:nth-child(8n) {
  margin-right: 0px; }

.bar-logo:nth-child(5n),
.bar-logo:nth-child(6n),
.bar-logo:nth-child(7n),
.bar-logo:nth-child(8n) {
  margin-bottom: 0; }

.bar-logo.byeandbye {
  background-size: 95%;
  background-image: url("../img/footer-logo-byeandbye.svg"); }

.bar-logo.digapony {
  background-size: contain;
  background-image: url("../img/footer-logo-digapony.png"); }

.bar-logo.century {
  background-size: 95%;
  background-image: url("../img/footer-logo-century.svg"); }

.bar-logo.jackknife {
  background-size: 75%;
  background-image: url("../img/footer-logo-jackknife.svg"); }

.bar-logo.hereafter {
  background-size: contain;
  background-image: url("../img/footer-logo-hereafter.png"); }

.bar-logo.victoria {
  background-size: contain;
  background-image: url("../img/footer-logo-victoria.svg"); }

.bar-logo.associated {
  background-size: contain;
  background-image: url("../img/footer-logo-associated.png"); }

.bar-logo.capitol {
  background-size: contain;
  background-image: url("../img/footer-logo-capitol.png"); }

/* ==========================================================================
   Media Queries
   ========================================================================== */
@media only screen and (min-width: 375px) {
  .sister-bars {
    padding: 70px calc((100% - 375px)/2); }

  .bar-logo:nth-child(3n) {
    margin-right: 25px; }

  .bar-logo:nth-child(4n) {
    margin-right: 0; } }
@media only screen and (min-width: 768px) {
  .sister-bars {
    padding: 110px calc((100% - 628px)/2); }

  .bar-logo {
    width: 120px;
    height: 120px;
    margin-right: 40px;
    margin-bottom: 75px; }

  .bar-logo.digapony {
    background-size: contain;
    background-image: url("../img/footer-logo-digapony@2x.png"); }

  .bar-logo.hereafter {
    background-size: contain;
    background-image: url("../img/footer-logo-hereafter@2x.png"); }

  .bar-logo.associated {
    background-size: contain;
    background-image: url("../img/footer-logo-associated@2x.png"); }

  .bar-logo.capitol {
    background-size: contain;
    background-image: url("../img/footer-logo-capitol@2x.png"); }

  .bar-logo:nth-child(4n),
  .bar-logo:nth-child(8n) {
    margin-right: 0; }

  .bar-logo:nth-child(3n) {
    margin-right: 40px; } }
@media only screen and (min-width: 1440px) {
  .sister-bars {
    padding: 110px 0; }

  .bar-logo {
    width: 120px;
    height: 120px;
    margin-right: 50px;
    margin-bottom: 0; }

  .bar-logo:nth-child(3n),
  .bar-logo:nth-child(4n) {
    margin-right: 50px; }

  .bar-logo:nth-child(8n) {
    margin-right: 0; } }
/* ==========================================================================
   @SLIDESHOW
   ========================================================================== */
.slideshow .arrow.next {
  background-image: url("../img/arrow-right.svg"); }

.slideshow .arrow.prev {
  background-image: url("../img/arrow-left.svg"); }

.slideshow {
  width: 100%;
  height: 80vw;
  overflow: hidden;
  position: relative;
  font-size: 0;
  line-height: 0; }
  .slideshow .arrows {
    position: absolute;
    z-index: 50;
    height: 60px;
    width: 100%;
    left: 0;
    top: 50%;
    margin-top: -30px; }
  .slideshow .arrow {
    width: 60px;
    height: 60px;
    position: absolute;
    background-position: 50% 50%;
    background-size: contain;
    background-repeat: no-repeat;
    background-attachment: scroll;
    cursor: pointer; }
  .slideshow .arrow.next {
    right: 28px; }
  .slideshow .arrow.prev {
    left: 28px; }
  .slideshow .dots {
    position: absolute;
    bottom: 25px;
    width: 100%;
    z-index: 50;
    height: 11px;
    text-align: center; }
    .slideshow .dots .dot {
      display: inline-block;
      width: 11px;
      height: 11px;
      margin: 0 5px;
      cursor: pointer;
      position: relative; }
    .slideshow .dots .dot.active {
      cursor: auto; }
    .slideshow .dots .dot-inner {
      position: absolute;
      border-radius: 50%;
      left: 2px;
      top: 2px;
      width: 7px;
      height: 7px;
      background-color: #dcd6c4;
      opacity: 0.6; }
    .slideshow .dots .dot.active .dot-inner {
      left: 0px;
      top: 0px;
      width: 100%;
      height: 100%;
      background-color: transparent;
      box-sizing: border-box;
      border: 2px solid #dcd6c4;
      opacity: 1; }
  .slideshow .images-holder {
    height: 100%;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0; }
  .slideshow .image {
    width: 100vw;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%; }

@media only screen and (min-width: 480px) {
  .slideshow {
    height: 56.25vw; } }
@media only screen and (max-width: 768px) {
  .slideshow.unraveled {
    height: auto;
    width: auto !important;
    overflow: visible; }
    .slideshow.unraveled .dots {
      display: none; }
    .slideshow.unraveled .images-holder {
      position: relative;
      width: auto !important;
      height: auto;
      overflow: visible;
      left: 0 !important; }
    .slideshow.unraveled .image {
      left: 0 !important;
      width: auto !important;
      height: 104vw;
      position: relative;
      border-bottom: 10px solid #2f312e; }
    .slideshow.unraveled .image:last-of-type {
      border-bottom: 0 none; } }
/* ==========================================================================
   Major overrides
   ========================================================================== */
@media only screen and (min-width: 640px) {
  .home .main {
    padding-top: 60px; } }
/* ==========================================================================
   @SIDEBAR AND MAIN DESKTOP
   ========================================================================== */
@media only screen and (min-width: 1024px) {
  h2.type-section-subhead,
  h2.type-subsection-head {
    font-size: 18px; }

  h3.type-section-head {
    font-size: 48px;
    line-height: 56px;
    letter-spacing: 0.05em; }

  .main .type-body,
  .about .main .type-body p {
    font-size: 16px;
    line-height: 24px; }

  .venue .sidebar p {
    margin-bottom: 0; }

  .home .main,
  .about .main,
  .venue .main,
  .menu .main,
  .faq .main,
  .home .sidebar,
  .about .sidebar,
  .venue .sidebar,
  .venue.detail .sidebar,
  .menu .sidebar {
    margin-top: 80px; }

  .home .main,
  .about .main,
  .venue .main,
  .venue.detail .main {
    display: inline-block;
    position: relative;
    width: 564px;
    padding-top: 0;
    padding-right: 54px;
    padding-bottom: 100px;
    padding-left: calc((100vw - (564px + 54px + 20px + 312px)) / 2); }

  .menu .main {
    width: 930px;
    padding-top: 0;
    padding-right: 0;
    padding-left: calc((100vw - (930px + 20px)) / 2);
    padding-bottom: 100px; }

  .faq .main {
    width: 930px;
    padding-top: 0;
    padding-right: 0;
    padding-left: calc((100vw - (930px + 20px)) / 2);
    padding-bottom: 100px; }

  .venue.detail .main {
    display: block;
    width: auto;
    margin-top: 0;
    padding-top: 100px;
    padding-left: 0;
    padding-right: 0; }

  .home .sidebar,
  .about .sidebar,
  .venue .sidebar {
    display: inline-block;
    vertical-align: top;
    width: 312px;
    padding-top: 22px;
    padding-bottom: 32px;
    padding-left: 0;
    padding-right: 0;
    overflow: hidden; }
    .home .sidebar .map,
    .about .sidebar .map,
    .venue .sidebar .map {
      float: none; }
    .home .sidebar .hours, .home .sidebar .address, .home .sidebar .email,
    .about .sidebar .hours,
    .about .sidebar .address,
    .about .sidebar .email,
    .venue .sidebar .hours,
    .venue .sidebar .address,
    .venue .sidebar .email {
      left: 0px; }
    .home .sidebar .touts,
    .about .sidebar .touts,
    .venue .sidebar .touts {
      display: block; }

  .home .sidebar {
    padding-top: 28px; }

  .venue .sidebar {
    padding-top: 12px; }

  .venue .sidebar .touts {
    display: none; }

  .calendar .main {
    width: 930px;
    padding-left: calc((100vw - (930px + 20px)) / 2);
    padding-bottom: 280px; } }
@media screen and (min-width: 1280px) {
  .menu .main {
    width: 1220px;
    padding-top: 0;
    padding-right: 0;
    padding-left: calc((100% - (1220px)) / 2);
    padding-bottom: 100px; }

  .faq .main {
    width: 1220px;
    padding-top: 0;
    padding-right: 0;
    padding-left: calc((100% - (1220px)) / 2);
    padding-bottom: 100px; } }
/*
@media screen and (min-width: 1210px) {
  h2.type-section-subhead,
  h2.type-subsection-head {
    font-size: 22px;
    line-height: 22px;
  }

  h2.type-subsection-head {
    margin-bottom: 32px;
  }

  h3.type-section-head {
    font-size: 60px;
    line-height: 68px;
    letter-spacing: 0.05em;
  }
  
  .type-body,
  .about .about-body p {
    font-size: 20px;
    line-height: 28px;
  }

  .about .about-body p {
    margin-bottom: 48px;
  }

  .home     .main,
  .about    .main,
  .venue    .main,
  .menu     .main,
  .sidebar
  {
    margin-top: 100px;
  }

  .venue.detail .main {
    padding-top: 180px;
  }

  .home     .main,
  .about    .main,
  .menu     .main,
  .venue    .main
  {
    width: 760px;
    padding-left: calc((100vw - 1180px) / 2);
  }

  .home     .main {
    margin-top: 110px;
  }

  .home     .sidebar,
  .about    .sidebar
  {
    padding-top: 90px;
  }

  .venue    .sidebar {
    padding-top: 70px;
  }

  .calendar .main {
    width: 1150px;
    padding-left:  calc((100vw - 1170px) / 2);
    padding-right: calc((100vw - 1170px) / 2);
  }
}
*/
/* ==========================================================================
   Helper classes
   ========================================================================== */
.hidden {
  display: none !important;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.clearfix {
  *zoom: 1; }
