/*
Theme Name: Durango Taco Cantina
Theme URI: https://durangotacocantina.com/
Author: 
Author URI: 
Description: A bold, high-contrast custom theme for Durango Taco Cantina - a family-run Mexican kitchen and full bar in Las Vegas. Built for WPBakery Page Builder with custom menu, catering and gallery elements, editable navigation and footer menus, and a fully responsive single-page layout.
Version: 1.0.1
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: durango-taco-cantina
Tags: restaurant, food-and-drink, one-column, two-columns, custom-logo, custom-menu, featured-images, translation-ready, threaded-comments

Durango Taco Cantina WordPress Theme, (C) 2026 Logik Digital
Durango Taco Cantina is distributed under the terms of the GNU GPL v2 or later.
*/


/* ---------- 1. tokens & base ---------- */
*,*::before,*::after{
  box-sizing:border-box


}
:root{
  --ink:#16130f;
  --red:#c8121c;
  --red-bright:#eb1700;
  --yellow:#ffc20e;
  --green:#00913f;
  --green-neon:#4be08a;
  --cream:#fbf7f0;
  --white:#fff;
  --night:#0f0d0b;
  --wrap:1360px;
  --pad:40px;
  
}
html{
  scroll-behavior:smooth


}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:Barlow,system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
  
}
img{
  max-width:100%;
  height:auto


}
figure{
  margin:0


}
h1,h2,h3,h4,h5,h6{
  margin:0;
  font-family:Archivo,system-ui,sans-serif;
  letter-spacing:-.025em


}
p{
  margin:0


}
ul{
  margin:0


}
a{
  color:var(--red);
  text-decoration:none


}
a:hover{
  color:var(--green)


}
.wrap{
  max-width:var(--wrap);
  margin:0 auto;
  padding:0 var(--pad)


}
.eyebrow{
  display:block;
  font:700 13px/1 Archivo,sans-serif;
  letter-spacing:.28em;
  color:var(--green)


}
.visually-hidden,.screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
  border:0;
  padding:0;
  margin:-1px


}
.screen-reader-text:focus{
  position:fixed;
  top:12px;
  left:12px;
  z-index:100000;
  width:auto;
  height:auto;
  clip:auto;
  clip-path:none;
  background:var(--yellow);
  color:var(--ink);
  font:800 15px/1 Archivo,sans-serif;
  padding:16px 24px;
  border-radius:6px;
  text-decoration:none;
  
}
.skip-link:focus{
  outline:3px solid var(--ink);
  outline-offset:2px


}
/* ---------- 2. buttons: one spec, several skins ---------- */
.btn{
  display:inline-block;
  font:800 16px/1 Archivo,sans-serif;
  padding:18px 28px;
  border:2px solid transparent;
  border-radius:6px;
  text-align:center;
  cursor:pointer;
  transition:filter .15s ease, background .15s ease, color .15s ease;
  
}
.btn:hover{
  filter:brightness(1.08)


}
.btn:focus-visible{
  outline:3px solid var(--yellow);
  outline-offset:3px


}
.btn--red{
  background:var(--red);
  border-color:var(--red);
  color:var(--white)


}
.btn--red:hover{
  color:var(--white)


}
.btn--yellow{
  background:var(--yellow);
  border-color:var(--yellow);
  color:var(--ink)


}
.btn--yellow:hover{
  color:var(--ink)


}
.btn--dark{
  background:var(--ink);
  border-color:var(--ink);
  color:var(--white)


}
.btn--dark:hover{
  color:var(--white)


}
.btn--white{
  background:var(--white);
  border-color:var(--white);
  color:var(--red)


}
.btn--white:hover{
  color:var(--red)


}
.btn--ghost{
  background:transparent;
  border-color:rgba(22,19,15,.3);
  color:var(--ink)


}
.btn--ghost:hover{
  background:rgba(22,19,15,.06);
  color:var(--ink)


}
.btn--ghost-light{
  background:transparent;
  border-color:rgba(255,255,255,.45);
  color:var(--white)


}
.btn--ghost-light:hover{
  background:rgba(255,255,255,.1);
  color:var(--white)


}
.btn-row .vc_column-inner .wpb_wrapper, .cantina .button-group .btn-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content: center;
  margin-top: 30px;
    padding-bottom: 76px;
}
.cantina__copy h2, .about h2{
  color: #000 !important;
  margin-bottom: 0 !important;
}
.cantina .button-group .btn-row{
  justify-content: flex-start;
  padding-bottom: 0 !important;
  margin-top: 20px;
}

.hero__copy .btn-row-inner .btn--red{
  margin-right: 12px;
}

.menu-section .dtc-vc-section#drinks{
  padding-bottom: 0!important;
}
.cantina .btn-row .vc_column-inner .wpb_wrapper
{
padding-bottom: 0 !important;
}
.link-arrow{
  font:800 14px/1 Archivo,sans-serif;
  letter-spacing:.08em


}
.gallery{
      padding: 64px 0 0px;
}

.bottom-find.dtc-vc-section{
padding-top: 0 !important;
padding-bottom: 0 !important;
} 

.bottom-find.dtc-vc-section .find__copy h2{
  color: #000;
}

.link-arrow--green{
  color:var(--green)


}
/* ---------- 3. header & navigation ---------- */
.site-header{
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(251,247,240,.94);
  backdrop-filter:blur(10px);
  border-bottom:2px solid var(--ink);
  
}
.site-header__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  padding-top:14px;
  padding-bottom:14px


}
.logo{
  display:block;
  flex:0 0 auto


}
.logo img{
  height:54px;
  width:auto;
  display:block


}
.logo__text{
  font:900 26px/1 Archivo,sans-serif;
  letter-spacing:-.02em;
  color:var(--ink);
  text-transform:uppercase


}
.logo:hover .logo__text{
  color:var(--red)


}
.nav{
  display:flex;
  align-items:center;
  gap:30px


}
.nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:30px


}
.nav li{
  position:relative


}
.nav a:not(.btn){
  display:block;
  font:700 14px/1 Barlow,sans-serif;
  letter-spacing:.08em;
  color:var(--ink)


}
.nav a:not(.btn):hover{
  color:var(--red)


}

/* .nav a:not(.btn):hover,.nav .current-menu-item > a:not(.btn),.nav .current_page_item > a:not(.btn){
  color:var(--red)


} */
.nav .btn{
  font-size:14px;
  padding:12px 20px


}
/* drop downs */
.nav .sub-menu{
  position:absolute;
  left:0;
  top:100%;
  z-index:50;
  display:block;
  min-width:220px;
  margin-top:14px;
  padding:8px 0;
  background:var(--cream);
  border:2px solid var(--ink);
  border-radius:8px;
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s;
  
}
.nav li:hover > .sub-menu,.nav li:focus-within > .sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0)


}
.nav .sub-menu a{
  padding:11px 18px;
  font-size:15px;
  letter-spacing:.02em


}
.nav .sub-menu a:hover{
  background:rgba(22,19,15,.06)


}
.nav .sub-menu .sub-menu{
  left:100%;
  top:-10px;
  margin:0


}
.nav-toggle{
  position:absolute;
  opacity:0;
  pointer-events:none


}
.nav-toggle-label{
  display:none;
  flex-direction:column;
  gap:5px;
  padding:10px;
  cursor:pointer;
  border:2px solid var(--ink);
  border-radius:6px


}
.nav-toggle-label span:not(.visually-hidden){
  display:block;
  width:22px;
  height:2.5px;
  background:var(--ink)


}
.nav-toggle:focus-visible + .nav-toggle-label{
  outline:3px solid var(--yellow);
  outline-offset:3px


}
/* ---------- 4. hero ---------- */
.hero{
  position:relative;
  min-height:600px;
  display:flex;
  align-items:center;
  background:var(--night);
  overflow:hidden


}
.hero__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 44%


}
.hero__scrim{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,8,7,.95) 0%,rgba(9,8,7,.82) 42%,rgba(9,8,7,.3) 100%)


}
.hero .wrap{
  position:relative;
  width:100%;
  padding-top:92px;
  padding-bottom:92px


}
.hero__copy{
  max-width:660px;
  display:flex;
  flex-direction:column;
  gap:22px


}
.hero .eyebrow{
  color:var(--green-neon)


}
.hero h1{
  font:800 68px/1.03 Archivo,sans-serif;
  letter-spacing:-.03em;
  color:var(--white);
  text-wrap:balance


}
.hero__lede{
  font:400 20px/1.6 Barlow,sans-serif;
  color:rgba(255,255,255,.75);
  max-width:520px


}
.hero__note{
  display:block;
  font:600 15px/1.4 Barlow,sans-serif;
  color:rgba(255,255,255,.6)


}
/* ---------- 5. about + steps ---------- */
.about__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:start


}
.about__copy{
  display:flex;
  flex-direction:column;
  gap:20px


}
.steps{
  display:flex;
  flex-direction:column;
  gap:18px


}
.steps__label{
  display:block;
  font:700 13px/1 Archivo,sans-serif;
  letter-spacing:.28em;
  color:rgba(22,19,15,.45)


}
.step{
  display:flex;
  gap:18px;
  align-items:flex-start;
  padding-bottom:18px;
  border-bottom:1px solid rgba(22,19,15,.14)


}
.step:last-child{
  padding-bottom:0;
  border-bottom:0


}
.step__num{
  font:800 30px/1 Archivo,sans-serif;
  color:var(--yellow);
  min-width:44px


}
.step__body{
  display:flex;
  flex-direction:column;
  gap:5px


}
.step__title{
  font:800 20px/1.3 Archivo,sans-serif


}
.step__text{
  font:400 17px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.65)


}
/* ---------- 6. cantina ---------- */
.cantina{
  justify-content: center;
}
.cantina .wpb_column:last-child{
  width: 100% !important;
}

.cantina .wpb_row::before,.cantina .wpb_row::after{
content: unset !important;
}

.cantina__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:56px;
  align-items:center;
  padding-top:72px;
  padding-bottom:72px


}
.cantina__copy{
  display:flex;
  flex-direction:column;
  gap:20px


}
.cantina__lede{
  font:400 19px/1.65 Barlow,sans-serif;
  color:rgba(22,19,15,.66)


}
.chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px


}
.chip{
  font:600 14px/1 Barlow,sans-serif;
  color:var(--ink);
  border:1.5px solid rgba(22,19,15,.2);
  padding:11px 16px;
  border-radius:999px


}
.drinks{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px


}
.drinks figure{
  display:flex;
  flex-direction:column


}
.drinks img{
  width:100%;
  height:280px;
  object-fit:contain


}
figcaption{
  font:600 14px/1.4 Barlow,sans-serif;
  color:rgba(22,19,15,.6)


}

.catering .catering__head.vc_row:after,.catering  .catering__head.vc_row:before{
  content: unset !important;
}
/* ---------- 7. menu sections ---------- */
.menu-sec{
  padding:44px 0 20px


}
.menu-sec--first{
  padding-top:70px;
  scroll-margin-top:96px


}
.menu-sec--last{
  padding-bottom:60px;
  scroll-margin-top:96px


}
.sec-head{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:22px


}
.sec-head h2,.sec-head h3{
  font:800 38px/1 Archivo,sans-serif;
  letter-spacing:-.02em;
  color:var(--red)


}
.sec-head--dark h2,.sec-head--dark h3{
  color:var(--ink)


}
.sec-head--light h2,.sec-head--light h3{
  color:var(--white)


}
.sec-head--spaced{
  margin:52px 0 24px


}
.sec-rule{
  flex:1 0 60px;
  height:6px;
  background:var(--yellow)


}
.sec-note{
  font:700 13px/1 Archivo,sans-serif;
  letter-spacing:.18em;
  color:rgba(22,19,15,.5)


}
.sec-head--light .sec-note{
  color:rgba(255,255,255,.6)


}
.menu-intro{
  font:400 17px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.6);
  max-width:760px;
  margin-bottom:22px


}
.menu-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 56px


}
.menu-grid--one{
  grid-template-columns:1fr


}
.row{
  display:flex;
  align-items:baseline;
  gap:12px


}
.row__name{
  font:700 20px/1.5 Barlow,sans-serif


}
.row__dots{
  flex:1;
  border-bottom:2px dotted rgba(22,19,15,.28)


}
.row__price{
  font:700 19px/1 Archivo,sans-serif;
  color:var(--red);
  white-space:nowrap


}
.addons{
  margin-top:20px;
  font:400 16px/1.7 Barlow,sans-serif;
  color:rgba(22,19,15,.6)


}
.addons strong{
  color:var(--green)


}
.grill{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  padding-bottom:60px


}
.grill figure{
  display:flex;
  flex-direction:column;
  gap:10px


}
.grill img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:8px;
  display:block


}
.grill figcaption{
  font-size:15px;
  color:rgba(22,19,15,.65)


}
/* ---------- 8. catering ---------- */
.catering{
  background:var(--ink);
  scroll-margin-top:96px


}
.catering__head{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:56px;
  align-items:center;
  padding-top:76px;
  padding-bottom:44px


}
.catering__copy{
  display:flex;
  flex-direction:column;
  gap:18px


}
.catering .eyebrow{
  color:var(--yellow)


}
.catering h2{
  font:800 52px/1.02 Archivo,sans-serif;
  color:var(--white)


}
.catering__lede{
  font:400 19px/1.65 Barlow,sans-serif;
  color:rgba(255,255,255,.7)


}
.catering__photo{
  width:100%;
  height:380px;
  object-fit:cover;
  border-radius:12px;
  display:block


}
.notes{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:8px


}
.note{
  display:flex;
  align-items:center;
  gap:16px;
  border-radius:10px;
  padding:18px 22px


}
.note--solid{
  background:var(--yellow)


}
.note--outline{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.18)


}
.note__mark{
  font:800 26px/1 Archivo,sans-serif


}
.note--solid .note__mark{
  color:var(--ink)


}
.note--outline .note__mark{
  color:var(--yellow)


}
.note__body{
  display:flex;
  flex-direction:column;
  gap:3px


}
.note__title{
  font:800 17px/1.2 Archivo,sans-serif


}
.note__sub{
  font:400 15px/1.4 Barlow,sans-serif


}
.note--solid .note__title{
  color:var(--ink)


}
.note--solid .note__sub{
  color:rgba(22,19,15,.7)


}
.note--outline .note__title{
  color:var(--white)


}
.note--outline .note__sub{
  color:rgba(255,255,255,.6)


}
#catering > .wpb_column > .vc_column-inner{
  padding: 0 !important;
}

#catering .wrap.catering__head > .vc_col-md-6{
  width: 100% !important;
}

.wrap.packages .vc_column-inner .wpb_wrapper{
  display:grid !important;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding-bottom:76px;
  scroll-margin-top:96px
}
.pkg{
  background:var(--white);
  border-radius:12px;
  padding:32px 30px !important;
  display:flex;
  flex-direction:column;
  gap:16px


}
.pkg--featured{
  box-shadow:0 0 0 3px var(--yellow)


}
.pkg__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  padding-bottom:14px;
  border-bottom:2px solid var(--yellow)


}
.pkg__name{
  font:800 23px/1.25 Archivo,sans-serif;
  letter-spacing:-.01em


}
.pkg__price{
  font:800 26px/1 Archivo,sans-serif;
  color:var(--red);
  white-space:nowrap


}
.pkg__price--sm{
  font-size:24px


}
.pkg__pill{
  align-self:flex-start;
  background:rgba(0,145,63,.1);
  padding:8px 13px;
  border-radius:999px;
  font:700 12px/1 Archivo,sans-serif;
  letter-spacing:.14em;
  color:var(--green)


}
.pkg ul{
  padding-left:20px;
  display:flex;
  flex-direction:column;
  gap:9px;
  font:400 16px/1.55 Barlow,sans-serif;
  color:rgba(22,19,15,.7)


}
.sides{
  grid-column:1/-1;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  padding:30px;
  display:flex;
  flex-direction:column;
  gap:20px


}
.sides__head{
  display:flex;
  align-items:center;
  gap:18px


}
.sides__head span:first-child{
  font:800 24px/1 Archivo,sans-serif;
  letter-spacing:-.01em;
  color:var(--white)


}
.sides__rule{
  flex:1 0 40px;
  height:5px;
  background:var(--yellow)


}
.sides .menu-grid{
  gap:12px 56px


}
.sides .row__name{
  color:var(--white);
  font-size:18px


}
.sides .row__dots{
  border-bottom-color:rgba(255,255,255,.3)


}
.sides .row__price{
  font:800 18px/1 Archivo,sans-serif;
  color:var(--yellow)


}
.sides__foot{
  font:400 16px/1.6 Barlow,sans-serif;
  color:rgba(255,255,255,.6)


}
.sides__foot a{
  color:var(--yellow)


}
.wrap.packages .vc_column-inner .wpb_wrapper .btn-row .vc_column-inner .wpb_wrapper{
  grid-column:1/-1;
  justify-content:center;
  margin-top:12px


}
/* ---------- 9. three actions ---------- */
.actions{
  background:var(--white);
  border-top:2px solid var(--ink);
  border-bottom:2px solid var(--ink)


}
.actions__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:var(--wrap);
  margin:0 auto


}
.action{
  padding:46px 34px;
  display:flex;
  flex-direction:column;
  gap:10px;
  border-right:2px solid var(--ink)


}
.action:last-child{
  border-right:0


}
.action__num{
  font:800 42px/1 Archivo,sans-serif;
  color:var(--yellow)


}
.action__title{
  font:800 21px/1.3 Archivo,sans-serif


}
.action p{
  flex:1;
  font:400 16px/1.55 Barlow,sans-serif;
  color:rgba(22,19,15,.62)


}
.action .link-arrow{
  margin-top:4px


}
/* ---------- 10. gallery ---------- */
.gallery-sec{
  padding:64px 0 56px;
  scroll-margin-top:96px


}
.gallery__grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px


}
.gallery__grid img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:contain;
  display:block


}
/* ---------- 11. order CTA ---------- */
.cta{
  padding:0 0 64px


}
.cta__inner{
  background:var(--red-bright);
  border-radius:12px;
  padding:52px 46px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:40px;
  align-items:center


}
.cta__copy{
  display:flex;
  flex-direction:column;
  gap:16px


}
.cta .eyebrow{
  color:rgba(255,255,255,.8);
  letter-spacing:.26em


}

.cta .btn{
  align-self:flex-start;
  margin-top:8px


}
.cta__art{
  display:flex;
  align-items:center;
  justify-content:center


}
.cta__art img{
  width:100%;
  max-width:340px;
  height:auto;
  display:block


}
/* ---------- 12. find us ---------- */
.find{
  background:var(--white);
  border-top:2px solid var(--ink);
  scroll-margin-top:96px


}
.find__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  align-items:center;
  padding-top:66px;
  padding-bottom:66px


}
.find__copy{
  display:flex;
  flex-direction:column;
  gap:18px


}
.find h2{
  font:800 42px/1.04 Archivo,sans-serif


}
.find__address{
  display:block;
  font:700 23px/1.4 Barlow,sans-serif


}
.find__hours{
  display:block;
  font:400 18px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.65)


}
.find__photos{
  min-width:0;
  display:flex;
  gap:14px;
  justify-content:flex-end;
  align-items:center;
  height:clamp(180px,22vw,300px)


}
.find__photos img{
  height:100%;
  width:auto;
  max-width:100%;
  min-width:0;
  object-fit:contain;
  display:block


}

.vc_row-fluid.cantina.vc_row:after, .vc_row-fluid.cantina.vc_row:before{
  content: unset !important;
} 
/* ---------- 13. footer ---------- */
.site-footer{
  background:var(--ink)


}
.site-footer__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  flex-wrap:wrap;
  padding-top:44px;
  padding-bottom:44px


}
.site-footer__brand img{
  height:50px;
  width:auto;
  display:block


}
.site-footer__brand .logo__text{
  color:var(--white)


}
.site-footer__brand:hover .logo__text{
  color:var(--yellow)


}
.footer-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:26px


}
.footer-nav a{
  font:600 14px/1 Barlow,sans-serif;
  color:rgba(255,255,255,.65)


}
.footer-nav a:hover{
  color:var(--yellow)


}

/* .footer-nav a:hover,.footer-nav .current-menu-item > a{
  color:var(--yellow)


} */
.footer-nav .sub-menu{
  display:flex;
  gap:26px;
  margin:0;
  padding:0 0 0 26px;
  list-style:none


}
.copyright{
  font:400 13px/1 Barlow,sans-serif;
  color:rgba(255,255,255,.4)


}
.copyright a{
  color:rgba(255,255,255,.6)


}
.copyright a:hover{
  color:var(--yellow)


}
.footer-widgets{
  border-bottom:1px solid rgba(255,255,255,.12);
  padding:56px 0 44px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px


}
.footer-widgets .widget{
  background:transparent;
  border:0;
  border-radius:0;
  padding:0


}
.footer-widgets .widget-title{
  font:800 18px/1.2 Archivo,sans-serif;
  color:var(--white);
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:3px solid var(--yellow)


}
.footer-widgets p,.footer-widgets li{
  font:400 16px/1.7 Barlow,sans-serif;
  color:rgba(255,255,255,.6)


}
.footer-widgets ul{
  list-style:none;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:9px


}
.footer-widgets a{
  color:rgba(255,255,255,.75)


}
.footer-widgets a:hover{
  color:var(--yellow)


}
/* ---------- 14. lightbox ---------- */
.is-zoomable{
  cursor:zoom-in


}
.is-zoomable:focus-visible{
  outline:3px solid var(--yellow);
  outline-offset:3px


}
body.has-lightbox{
  overflow:hidden


}
.lightbox{
  position:fixed;
  inset:0;
  z-index:80;
  display:none;
  align-items:center;
  justify-content:center;
  padding:64px 72px;
  background:rgba(9,8,7,.93);
  backdrop-filter:blur(4px);
  
}
.lightbox.is-open{
  display:flex


}
.lightbox__figure{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  max-width:100%;
  max-height:100%


}
.lightbox__img{
  max-width:min(1100px,100%);
  max-height:calc(100vh - 168px);
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:10px;
  display:block;
  
}
.lightbox__caption{
  font:700 17px/1.4 Archivo,sans-serif;
  letter-spacing:.02em;
  color:var(--white);
  text-align:center


}
.lightbox__close,.lightbox__nav{
  position:absolute;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.1);
  border:2px solid rgba(255,255,255,.35);
  color:var(--white);
  border-radius:999px;
  cursor:pointer;
  font-family:Archivo,sans-serif;
  line-height:1;
  transition:background .15s ease,border-color .15s ease;
  
}
.lightbox__close:hover,.lightbox__nav:hover{
  background:var(--red);
  border-color:var(--red)


}
.lightbox__close:focus-visible,.lightbox__nav:focus-visible{
  outline:3px solid var(--yellow);
  outline-offset:2px


}
.lightbox__close{
  top:22px;
  right:22px;
  width:48px;
  height:48px;
  font-size:30px;
  padding-bottom:4px


}
.lightbox__nav{
  top:50%;
  transform:translateY(-50%);
  width:54px;
  height:54px;
  font-size:36px;
  padding-bottom:5px


}
.lightbox__nav--prev{
  left:20px


}
.lightbox__nav--next{
  right:20px


}
/* ---------- 15. WordPress core classes ---------- */
.alignleft{
  float:left;
  margin:.4em 1.6em 1.2em 0


}
.alignright{
  float:right;
  margin:.4em 0 1.2em 1.6em


}
.aligncenter{
  clear:both;
  display:block;
  margin-left:auto;
  margin-right:auto


}
.alignnone{
  margin:1em 0


}
.alignwide{
  margin-left:-80px;
  margin-right:-80px;
  max-width:calc(100% + 160px)


}
.alignfull{
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  max-width:100vw;
  width:100vw


}
.wp-caption{
  max-width:100%;
  margin-bottom:1.6em


}
.wp-caption img{
  display:block;
  margin:0 auto


}
.wp-caption-text,.wp-block-image figcaption{
  margin-top:10px;
  font:600 14px/1.5 Barlow,sans-serif;
  color:rgba(22,19,15,.6);
  text-align:center


}
.wp-block-image{
  margin:0


}
.entry__content .gallery{
  display:grid;
  gap:12px


}
.gallery-columns-2{
  grid-template-columns:repeat(2,1fr)


}
.gallery-columns-3{
  grid-template-columns:repeat(3,1fr)


}
.gallery-columns-4{
  grid-template-columns:repeat(4,1fr)


}
.gallery-item{
  margin:0


}
.gallery-icon img{
  width:100%;
  display:block;
  border-radius:8px


}
.sticky .entry__title::after{
  content:"\2605";
  color:var(--yellow);
  margin-left:10px


}
.bypostauthor > .comment-body{
  border-left:4px solid var(--yellow)


}
.wp-block-button__link{
  border-radius:6px;
  font-family:Archivo,sans-serif;
  font-weight:800


}
/* ---------- 16. blog, archive, single, comments ---------- */
.page-hero{
  background:var(--ink)


}
.page-hero__inner{
  padding-top:64px;
  padding-bottom:64px;
  display:flex;
  flex-direction:column;
  gap:16px;
  max-width:900px


}
.page-hero h1{
  font:800 52px/1.05 Archivo,sans-serif;
  color:var(--white);
  text-wrap:balance


}
.page-hero .eyebrow{
  color:var(--yellow)


}
.page-hero__meta{
  font:400 16px/1.6 Barlow,sans-serif;
  color:rgba(255,255,255,.6);
  display:flex;
  flex-wrap:wrap;
  gap:18px


}
.page-hero__meta a{
  color:rgba(255,255,255,.85)


}
.page-hero__meta a:hover{
  color:var(--yellow)


}
.content-area{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:60px;
  align-items:start


}
.content-area--full{
  grid-template-columns:minmax(0,1fr)


}
.entry{
  margin-bottom:52px;
  padding-bottom:44px;
  border-bottom:2px solid rgba(22,19,15,.12)


}
.entry:last-of-type{
  border-bottom:0;
  margin-bottom:0;
  padding-bottom:0


}
.entry--single{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:0


}
.entry__thumb{
  display:block;
  margin-bottom:22px


}
.entry__thumb img{
  width:100%;
  border-radius:10px;
  display:block


}
.entry__title{
  font:800 34px/1.15 Archivo,sans-serif;
  margin-bottom:12px


}
.entry__title a{
  color:var(--ink)


}
.entry__title a:hover{
  color:var(--red)


}
.entry__meta{
  font:600 14px/1.5 Barlow,sans-serif;
  letter-spacing:.04em;
  color:rgba(22,19,15,.5);
  margin-bottom:16px;
  display:flex;
  flex-wrap:wrap;
  gap:16px


}
.entry__meta a{
  color:var(--green)


}
.entry__excerpt,.entry__content{
  font:400 18px/1.75 Barlow,sans-serif;
  color:rgba(22,19,15,.75)


}
.entry__content > * + *{
  margin-top:1.3em


}
.entry__content h2{
  font:800 32px/1.2 Archivo,sans-serif;
  margin-top:1.6em


}
.entry__content h3{
  font:800 25px/1.25 Archivo,sans-serif;
  margin-top:1.5em


}
.entry__content h4{
  font:800 20px/1.3 Archivo,sans-serif;
  margin-top:1.4em


}
.entry__content ul,.entry__content ol{
  padding-left:24px;
  display:flex;
  flex-direction:column;
  gap:8px


}
.entry__content blockquote{
  border-left:5px solid var(--yellow);
  padding:6px 0 6px 24px;
  font:500 21px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.8)


}
.entry__content img{
  border-radius:10px


}
.entry__content code,.entry__content pre{
  background:rgba(22,19,15,.06);
  border-radius:6px;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:15px


}
.entry__content code{
  padding:2px 6px


}
.entry__content pre{
  padding:20px;
  overflow-x:auto


}
.entry__content table{
  width:100%;
  border-collapse:collapse


}
.entry__content th,.entry__content td{
  border:1px solid rgba(22,19,15,.15);
  padding:10px 14px;
  text-align:left


}
.entry__footer{
  margin-top:26px;
  font:600 14px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.55);
  display:flex;
  flex-direction:column;
  gap:8px


}
.entry__more{
  margin-top:20px;
  display:inline-block


}
.page-links{
  margin-top:26px;
  font:700 15px/1 Barlow,sans-serif;
  display:flex;
  gap:10px;
  align-items:center


}
.pagination{
  margin-top:44px;
  display:flex;
  flex-wrap:wrap;
  gap:8px


}
.pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  height:48px;
  padding:0 14px;
  border:2px solid rgba(22,19,15,.2);
  border-radius:6px;
  font:800 15px/1 Archivo,sans-serif;
  color:var(--ink);
  
}
.pagination .page-numbers:hover{
  border-color:var(--ink);
  color:var(--ink)


}
.pagination .page-numbers.current{
  background:var(--red);
  border-color:var(--red);
  color:var(--white)


}
.post-nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:52px;
  padding-top:36px;
  border-top:2px solid rgba(22,19,15,.12)


}
.post-nav a{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:22px 24px;
  border:2px solid rgba(22,19,15,.15);
  border-radius:10px;
  color:var(--ink)


}
.post-nav a:hover{
  border-color:var(--ink);
  color:var(--ink)


}
.post-nav span{
  font:700 12px/1 Archivo,sans-serif;
  letter-spacing:.18em;
  color:var(--green)


}
.post-nav strong{
  font:800 18px/1.35 Archivo,sans-serif


}
.post-nav__next a{
  text-align:right;
  align-items:flex-end


}
.sidebar{
  display:flex;
  flex-direction:column;
  gap:34px;
  position:sticky;
  top:110px


}
.widget{
  background:var(--white);
  border:2px solid rgba(22,19,15,.12);
  border-radius:12px;
  padding:26px 24px


}
.widget-title{
  font:800 19px/1.2 Archivo,sans-serif;
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:3px solid var(--yellow)


}
.widget ul{
  list-style:none;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:11px;
  font:400 16px/1.5 Barlow,sans-serif


}
.widget a{
  color:var(--ink)


}
.widget a:hover{
  color:var(--red)


}
.widget select,.widget input[type=text],.widget input[type=search]{
  width:100%;
  max-width:100%


}
.search-form{
  display:flex;
  gap:8px


}
.search-form input[type=search]{
  flex:1;
  min-width:0;
  font:400 16px/1 Barlow,sans-serif;
  padding:15px 16px;
  border:2px solid rgba(22,19,15,.2);
  border-radius:6px;
  background:var(--white);
  color:var(--ink);
  
}
.search-form input[type=search]:focus{
  outline:none;
  border-color:var(--ink)


}
.search-form .btn{
  padding:15px 20px;
  font-size:14px


}
.comments{
  margin-top:60px;
  padding-top:44px;
  border-top:2px solid rgba(22,19,15,.12)


}
.comments__title{
  font:800 28px/1.2 Archivo,sans-serif;
  margin-bottom:28px


}
.comment-list{
  list-style:none;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:26px


}
.comment-list .children{
  list-style:none;
  padding-left:32px;
  margin-top:26px;
  display:flex;
  flex-direction:column;
  gap:26px


}
.comment-body{
  background:var(--white);
  border:2px solid rgba(22,19,15,.12);
  border-radius:12px;
  padding:24px 26px


}
.comment-meta{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px


}
.comment-author{
  display:flex;
  align-items:center;
  gap:12px


}
.comment-author img{
  border-radius:999px;
  display:block


}
.comment-author .fn{
  font:800 17px/1 Archivo,sans-serif;
  font-style:normal


}
.comment-metadata{
  font:600 13px/1 Barlow,sans-serif;
  color:rgba(22,19,15,.5)


}
.comment-metadata a{
  color:rgba(22,19,15,.5)


}
.comment-content{
  font:400 17px/1.7 Barlow,sans-serif;
  color:rgba(22,19,15,.75)


}
.comment-content > * + *{
  margin-top:1em


}
.comment-awaiting-moderation{
  display:block;
  margin-top:10px;
  font:700 14px/1.5 Barlow,sans-serif;
  color:var(--red)


}
.reply{
  margin-top:12px;
  font:800 13px/1 Archivo,sans-serif;
  letter-spacing:.08em


}
.comment-respond{
  margin-top:36px


}
.comment-reply-title{
  font:800 24px/1.2 Archivo,sans-serif;
  margin-bottom:18px


}
.comment-form{
  display:flex;
  flex-direction:column;
  gap:16px


}
.comment-form p{
  display:flex;
  flex-direction:column;
  gap:8px


}
.comment-form label{
  font:700 14px/1 Barlow,sans-serif;
  letter-spacing:.06em


}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{
  font:400 16px/1.5 Barlow,sans-serif;
  padding:14px 16px;
  border:2px solid rgba(22,19,15,.2);
  border-radius:6px;
  background:var(--white);
  color:var(--ink);
  width:100%;
  
}
.comment-form input:focus,.comment-form textarea:focus{
  outline:none;
  border-color:var(--ink)


}
.comment-form .form-submit input[type=submit]{
  align-self:flex-start;
  width:auto;
  background:var(--red);
  border:2px solid var(--red);
  color:var(--white);
  font:800 16px/1 Archivo,sans-serif;
  padding:18px 28px;
  border-radius:6px;
  cursor:pointer;
  
}
.comment-form .form-submit input[type=submit]:hover{
  filter:brightness(1.08)


}
.comment-form .comment-form-cookies-consent{
  flex-direction:row;
  align-items:center;
  gap:10px


}
.comment-form .comment-form-cookies-consent input{
  width:auto


}
.no-comments{
  font:400 17px/1.6 Barlow,sans-serif;
  color:rgba(22,19,15,.6)


}
/* ---------- 17. 404 & search ---------- */
.error404-hero{
  position:relative;
  background:var(--night);
  overflow:hidden


}
.error404-hero__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.45


}
.error404-hero__scrim{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,8,7,.95) 0%,rgba(9,8,7,.8) 48%,rgba(9,8,7,.45) 100%)


}
.error404-hero .wrap{
  position:relative


}
.error404__inner{
  padding:96px 0 92px;
  max-width:720px;
  display:flex;
  flex-direction:column;
  gap:20px


}
.error404__code{
  font:900 clamp(88px,15vw,190px)/.85 Archivo,sans-serif;
  letter-spacing:-.05em;
  color:var(--yellow)


}
.error404__inner h1{
  font:800 clamp(32px,5vw,52px)/1.05 Archivo,sans-serif;
  color:var(--white);
  text-wrap:balance


}
.error404__lede{
  font:400 20px/1.65 Barlow,sans-serif;
  color:rgba(255,255,255,.75)


}
.error404__search{
  margin-top:6px;
  max-width:520px


}
.error404__search input[type=search]{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.35);
  color:var(--white)


}
.error404__search input[type=search]::placeholder{
  color:rgba(255,255,255,.5)


}
.error404__search input[type=search]:focus{
  border-color:var(--yellow)


}
.error404-helpful{
  padding:60px 0 20px


}
.no-results{
  font:400 19px/1.7 Barlow,sans-serif;
  color:rgba(22,19,15,.7);
  display:flex;
  flex-direction:column;
  gap:22px;
  align-items:flex-start


}
/* ---------- 18. WPBakery compatibility ---------- */
.vc_row{
  position:relative


}
.wpb_content_element,.wpb_text_column,.wpb_row{
  margin-bottom:0


}
.wpb_text_column p + p{
  margin-top:1.3em


}
:where(.wpb_text_column) h2{
  font:800 38px/1.15 Archivo,sans-serif


}
:where(.wpb_text_column) h3{
  font:800 28px/1.2 Archivo,sans-serif


}

.dtc-vc-section{
  position:relative


}
.vc_editor .site-header{
  position:relative


}
.compose-mode .lightbox{
  display:none !important


}
.compose-mode .hero,.compose-mode .catering,.compose-mode .cta{
  min-height:auto


}
/* Constrain standard WPBakery rows so they don't blow out to 100vw */
.site-main--builder .wpb-content-wrapper {
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 0 var(--pad);
  
}
/* Durango sections bring their own .wrap, so cancel the builder's column
   gutters around them. Add the class "dtc-row-flush" to a row in the builder's
   Design Options for the same effect in browsers without :has(). */
.dtc-row-flush > .vc_column_container > .vc_column-inner,
.vc_column-inner:has(> .wpb_wrapper > .dtc-vc-section){
  padding-left:0;
  padding-right:0


}
.dtc-row-flush.vc_row,
.vc_row:has(.dtc-vc-section){
  margin-left:0;
  margin-right:0


}
/* A stretched row carrying a section class supplies that section's background
   and rules;
  the theme's own padding then applies to the row itself. */
.vc_row.about,.vc_row.cantina,.vc_row.menu-sec,.vc_row.gallery-sec,.vc_row.catering{
  padding-left:0;
  padding-right:0


}
.vc_row.cantina > .vc_column_container > .vc_column-inner,
.vc_row.about > .vc_column_container > .vc_column-inner{
  padding-top:0;
  padding-bottom:0


}
/* Text blocks inside a themed row inherit that section's type scale. */
.vc_row.about .wpb_text_column p{
  font:400 19px/1.7 Barlow,sans-serif;
  color:rgba(22,19,15,.68)


}
.vc_row.cantina .wpb_text_column p{
  font:400 19px/1.65 Barlow,sans-serif;
  color:rgba(22,19,15,.66)


}
.vc_row.about .wpb_text_column p + p,
.vc_row.cantina .wpb_text_column p + p{
  margin-top:20px


}
.vc_row.about .eyebrow,.vc_row.cantina .eyebrow{
  margin-bottom:20px


}
.vc_row.about .wpb_text_column h2,.vc_row.cantina .wpb_text_column h2{
  margin-bottom:20px


}
/* The catering photo comes through vc_single_image, which puts the class on
   the wrapper rather than the <img>. */
.catering__photo img,.wpb_single_image.catering__photo img{
  width:100%;
  height:380px;
  object-fit:cover;
  border-radius:12px;
  display:block;
  
}
/* The SIDES box is a plain row given el_class="sides", so the few pieces that
   normally come from .sides__head / .sides__foot are mapped here. */
.sides .sec-head{
  margin-bottom:0


}
.sides .sec-head h2{
  font-size:24px;
  color:var(--white)


}
.sides .addons,.sides .addons a{
  color:rgba(255,255,255,.6)


}
.sides .addons a{
  color:var(--yellow)


}
.sides .dtc-vc-section{
  display:flex;
  flex-direction:column;
  gap:20px


}
/* ================= WPBAKERY OVERRIDES ================= */
.dtc-row-flush {
  padding: 0 !important;
  
}
.dtc-row-flush .vc_column-inner {
  padding: 0 !important;
  
}
/* Hero */
.hero.dtc-vc-section {
  min-height: 600px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background: var(--night);
  padding: 0;
  
}
.hero.dtc-vc-section .wrap {
  position: relative;
  width: 100%;
  padding-top: 92px;
  padding-bottom: 92px;
  max-width: var(--wrap);
  margin: 0 auto;
  padding-left: var(--pad);
  padding-right: var(--pad);
  
}
.hero.dtc-vc-section .hero__copy {
  max-width: 660px;
  display: flex;
  flex-direction: column;
  gap: 22px;
  
}
/* About Section */
.about {
  padding: 76px 0 68px;
  max-width: var(--wrap);
  margin: 0 auto;
  padding-left: var(--pad);
  padding-right: var(--pad);
  display: flex !important;
  gap: 64px;
  
}
.about .wpb_column {
  width: 50% !important;
  padding: 0 !important;
  
}
.about h2 {
  font: 800 44px/1.05 Archivo,sans-serif;
  
}
.about p {
  font: 400 19px/1.7 Barlow,sans-serif;
  color: rgba(22,19,15,.68);
  
}
.about .wpb_text_column .wpb_wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
  
}
/* Cantina Section */
.cantina {
  background: var(--white);
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
  padding: 72px var(--pad) !important;
  display: flex !important;
  gap: 56px;
  max-width: var(--wrap);
  margin: 0 auto;
  
}
.cantina .wrap.cantina__grid .drinks_wrapper {
  padding: 0 !important;
  
}
.cantina .button-group .btn-row br{
  display: none;
}

.cantina .wrap.cantina__grid .cantina__copy {
  padding: 0 !important;
  
}
.cantina h2 {
  font: 800 46px/1.04 Archivo,sans-serif;
  
}
.cantina .wpb_text_column .wpb_wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
  
}
/* Menus & General Sections */
.dtc-vc-section:not(.hero) {
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 44px var(--pad) 20px;
  
}
.dtc-vc-section:not(.hero) .sec-head {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 22px;
  
}
.dtc-vc-section:not(.hero) h2 {
  font: 800 38px/1 Archivo,sans-serif;
  letter-spacing: -.02em;
  color: var(--red);
  margin: 0;
  
}
.bottom-find h2{
color: #000;
}
.find__address br:first-of-type, .find__hours br:first-of-type{
display: none;
}
.dtc-vc-section .sec-head--dark h2 {
  color: var(--ink) !important;
  
}
.dtc-vc-section.find h2 {
  color: var(--ink) !important;
}

.dtc-vc-section.cta h2{
  font:800 44px/1.05 Archivo,sans-serif;
  color:var(--white)


}
.cta p{
  font:400 19px/1.6 Barlow,sans-serif;
  color:rgba(255,255,255,.88);
  max-width:460px


}

.wrap.wrap.packages .vc_column-inner .wpb_wrapper .pkg{
  width: 100% !important;
} 

.entry__content #wpb-content-root #catering  .vc_row:not(.sides.vc_row){
padding-left: 0px !important;
padding-right: 0px !important;
}

.sides .sec-head.sec-head--light h2{
margin-top: 0 !important;
}

.sides .dtc-vc-section{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.cta.dtc-vc-section .wrap, .cta.dtc-vc-section{
  padding-left: 0;
  padding-right: 0;
}

.sec-head.sec-head--dark h2{
margin-top: 0;
}

.menu-section .dtc-vc-section{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.about .wpb_wrapper h2, .cantina .wpb_wrapper h2{
  margin-top: 0 !important;
}
 .about.vc_row:after, .about.vc_row:before{
  content: unset !important;
 }

 .drinks figure{
  gap:0 !important;
 }

 #menu, #drinks, #catering, #gallery, #find{
scroll-margin-top: 96px;	
}
.site-main.site-main--builder{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
/* Cantina row: the builder nests .wrap inside its own column gutters, so the
   section content ended up inset 110px while every other section sits at
   var(--pad); and the row carries .wpb-content-wrapper, which js_composer sets
   to display:block from a stylesheet loaded after this one, killing
   .cantina__grid's grid. Drop the duplicated gutters (the .wrap inside supplies
   them) and give the grid a selector strong enough to win. */
.cantina{padding:72px 0 !important}
.cantina > .wpb_column,
.cantina > .wpb_column > .vc_column-inner{padding-left:0;padding-right:0}
.cantina .wrap.cantina__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.cantina .wrap.cantina__grid > .wpb_column{width:auto !important;float:none}
.cantina .wrap.cantina__grid > .wpb_column > .vc_column-inner{padding-left:0;padding-right:0}

/* ---------- 19. responsive ----------
   One block per breakpoint, in descending order, placed after the WPBakery
   override block above so that block's unconditional desktop declarations do
   not outrank them. Rules that exist only to reach builder-generated markup
   (.dtc-vc-section, .wpb_column, vc_single_image wrappers) are commented. */

@media (max-width:1080px){
  :root{
  --pad:32px


}
.hero h1{
  font-size:56px


}
.about h2,.cantina h2{
  font-size:38px


}
.cta h2{
  font-size:36px


}
.page-hero h1{
  font-size:42px


}
.wrap.packages .vc_column-inner .wpb_wrapper,.grill{
  grid-template-columns:repeat(2,1fr)


}
.gallery__grid{
  grid-template-columns:repeat(4,1fr)


}
.about__grid{
  gap:44px


}
.cantina__grid{
  grid-template-columns:1fr;
  gap:36px


}
.catering__head{
  grid-template-columns:1fr;
  gap:32px


}
.catering__photo{
  height:320px


}
.content-area{
  grid-template-columns:minmax(0,1fr) 300px;
  gap:40px


}
.alignwide{
  margin-left:0;
  margin-right:0;
  max-width:100%


}
.catering__photo .wpb_wrapper.vc_figure,.catering__photo .wpb_wrapper.vc_figure .vc_single_image-wrapper{
  width: 100% !important;
}
.catering__photo{
  margin-bottom: 0 !important;
}

  /* about: the reference gap for this step */
  .about{gap:44px}

  /* The cantina stacks from here down. The builder renders the grid as a float
     row (it carries .wpb-content-wrapper, which forces display:block), and the
     row's clearfix pseudo-elements count as flex items of .cantina, so the
     phantom gaps and the duplicated gutters are cancelled here as well. */
  .cantina{gap:0;padding:72px 0 !important}
  .cantina > .wpb_column,
  .cantina > .wpb_column > .vc_column-inner{padding-left:0;padding-right:0}
  .cantina .wrap.cantina__grid{display:flex;flex-direction:column;gap:36px}
  .cantina .wrap.cantina__grid > .wpb_column{width:100% !important;float:none}
  .cantina .wrap.cantina__grid > .wpb_column > .vc_column-inner{padding-left:0;padding-right:0}

  /* headline sizes pinned by the override block */
  .cta.dtc-vc-section h2{font-size:36px}
  .catering h2{font-size:32px}

  /* keep the two-up package grid from blowing past its track at the narrow
     end of this step */
  .wrap.packages .vc_column-inner .wpb_wrapper{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* the catering photo comes through vc_single_image, so the class is on the
     wrapper and the shrink-to-fit figure has to be opened up once stacked */
  .catering__photo,
  .catering__photo .vc_figure,
  .catering__photo .vc_single_image-wrapper{display:block;width:100%}
  .catering__photo img,.wpb_single_image.catering__photo img{height:320px}
}

@media (max-width:820px){
  .nav-toggle-label{
  display:flex


}
.nav{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  background:var(--cream);
  border-bottom:2px solid var(--ink);
  max-height:0;
  overflow:hidden;
  transition:max-height .25s ease;
  
}
.nav ul{
  flex-direction:column;
  align-items:stretch;
  gap:0


}
.nav a:not(.btn){
  padding:18px var(--pad);
  border-top:1px solid rgba(22,19,15,.12);
  font-size:16px


}
.nav .btn{
  margin:16px var(--pad) 22px;
  font-size:16px;
  padding:18px 28px


}
.nav-toggle:checked ~ .nav{
  max-height:80vh;
  overflow-y:auto


}
.site-header__inner{
  position:relative


}
.nav .sub-menu{
  position:static;
  opacity:1;
  visibility:visible;
  transform:none;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:rgba(22,19,15,.04);
  
}
.nav .sub-menu a{
  padding-left:calc(var(--pad) + 18px)


}
.hero{
  min-height:0


}
.hero .wrap{
  padding-top:64px;
  padding-bottom:64px


}
.hero__scrim{
  background:linear-gradient(180deg,rgba(9,8,7,.72) 0%,rgba(9,8,7,.92) 70%)


}
.hero h1{
  font-size:44px


}
.hero__lede{
  font-size:18px


}
.about__grid,.find__grid{
  grid-template-columns:1fr;
  gap:36px


}
.cantina__grid{
  padding-top:52px;
  padding-bottom:52px


}
.drinks img{
  height:210px


}
.menu-sec--first{
  padding-top:52px


}
.menu-grid{
  grid-template-columns:1fr;
  gap:10px


}
.sec-head{
  flex-wrap:wrap;
  gap:12px


}
.sec-head h2,.sec-head h3{
  font-size:30px


}
.sec-note{
  order:3;
  flex-basis:100%


}
.sec-rule{
  min-width:40px


}
.actions__grid{
  grid-template-columns:1fr


}
.action{
  border-right:0;
  border-bottom:2px solid var(--ink);
  padding:34px var(--pad)


}
.action:last-child{
  border-bottom:0


}
.gallery__grid{
  grid-template-columns:repeat(3,1fr)


}
.cta__inner{
  grid-template-columns:1fr;
  padding:36px 28px;
  gap:28px


}
.cta__art{
  order:-1


}
.cta__art img{
  max-width:260px


}
.find__photos{
  justify-content:flex-start;
  height:auto;
  height: 100%;

}
.find__photos img{
  height:auto;
  width:calc(50% - 7px);
object-fit: unset;
height: 100%;

}
.site-footer__inner{
  gap:22px


}
.footer-widgets{
  grid-template-columns:1fr;
  gap:32px;
  padding:44px 0 36px


}
.site-main{
  padding:48px 0 56px


}
.content-area{
  grid-template-columns:minmax(0,1fr);
  gap:52px


}
.sidebar{
  position:static


}
.page-hero__inner{
  padding-top:48px;
  padding-bottom:48px


}
.entry__title{
  font-size:28px


}
.post-nav{
  grid-template-columns:1fr


}
.post-nav__next a{
  text-align:left;
  align-items:flex-start


}
.lightbox{
  padding:76px 16px 92px


}
.lightbox__img{
  max-height:calc(100vh - 200px)


}
.lightbox__nav{
  top:auto;
  bottom:20px;
  transform:none;
  width:48px;
  height:48px;
  font-size:32px


}
.lightbox__nav--prev{
  left:calc(50% - 58px)


}
.lightbox__nav--next{
  right:calc(50% - 58px)


}
.lightbox__caption{
  font-size:15px


}

  .hero.dtc-vc-section{min-height:0}
  .hero.dtc-vc-section .wrap{padding-top:64px;padding-bottom:64px}

  .about{flex-direction:column;gap:36px;padding:56px 0 48px}
  .about .wpb_column{width:100% !important}

  .cantina{padding:52px 0 !important}

  .dtc-vc-section:not(.hero) .sec-head{flex-wrap:wrap;gap:12px}
  .dtc-vc-section:not(.hero) .sec-head h2,
  .dtc-vc-section:not(.hero) .sec-head h3{font-size:30px}
}

@media (max-width:660px){
  .pkg__head{flex-wrap:wrap}
}

@media (max-width:560px){
  :root{
  --pad:20px


}

figcaption{
  text-align: center;
}
.logo img{
  height:44px


}
.logo__text{
  font-size:20px


}
.hero h1{
  font-size:34px


}
.hero__lede{
  font-size:17px


}
.btn{
  width:100%;
  padding:17px 22px


}
.nav .btn{
  width:auto


}
.btn-row .vc_column-inner .wpb_wrapper{
  gap:10px


}
.about h2,.cantina h2{
  font-size:30px


}
.about p{
  font-size:17px


}
.catering h2{
  font-size:32px


}
.cta h2{
  font-size:28px


}
.find h2{
  font-size:30px


}
.page-hero h1{
  font-size:30px


}
.sec-head h2,.sec-head h3{
  font-size:25px


}
.row__name{
  font-size:17px


}
.row__price{
  font-size:17px


}
.grill,.wrap.packages .vc_column-inner .wpb_wrapper{
  grid-template-columns:1fr


}
.drinks{
  grid-template-columns:1fr 1fr


}
.drinks figure:last-child{
  grid-column:1/-1


}
.gallery__grid{
  grid-template-columns:repeat(2,1fr)


}
.pkg{
  padding:26px 22px !important;


}
.pkg__name{
  font-size:20px


}
.sides{
  padding:24px 20px


}
.catering__photo{
  height:230px


}
.step__num{
  font-size:24px;
  min-width:34px


}
.footer-nav ul{
  gap:16px


}
.comment-list .children{
  padding-left:16px


}
.entry__title{
  font-size:24px


}
.search-form{
  flex-direction:column


}
.search-form .btn{
  width:100%


}
.comment-form .form-submit input[type=submit]{
  width:100%


}

  .vc_row.about .wpb_text_column p{font-size:17px}
  .cta.dtc-vc-section h2{font-size:28px}
  .bottom-find.dtc-vc-section .find__copy h2{font-size:30px}
  .dtc-vc-section:not(.hero) .sec-head h2,
  .dtc-vc-section:not(.hero) .sec-head h3{font-size:25px}
  .catering__photo img,.wpb_single_image.catering__photo img{height:230px}

  /* button rows written as plain markup rather than builder columns */
  .hero__copy .btn-row-inner,
  .find__copy .btn-row{display:flex;flex-wrap:wrap;gap:10px}
  .hero__copy .btn-row-inner .btn--red{margin-right:0}
}

@media (prefers-reduced-motion:reduce){
  html{
  scroll-behavior:auto


}
*,*::before,*::after{
  animation-duration:.01ms !important;
  transition-duration:.01ms !important


}
}

@media print{
  .site-header,.site-footer,.lightbox,.btn-row .vc_column-inner .wpb_wrapper,.actions,.cta{
  display:none !important


}
body{
  background:#fff


}
}
