/*
 * HELVETI TEMPLATE CONTROLLER — AUTHORITATIVE RUNTIME
 * This file loads after site.css. Edit only the numbered paragraph that owns
 * the component. Do not add new overrides to site.css.
 */

/* CSS-01 — PAGE / GLOBAL BACKGROUND AND TEXT */
.hwb-live-site .hwb-site{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  background:var(--paper)!important;
  color:var(--hwb-text)!important;
}
.hwb-live-site .hwb-site>main,
.hwb-live-site .hwb-site>main>section{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* CSS-02 — HEADER BACKGROUND, LOGO, NAVIGATION TEXT */
.hwb-live-site .hwb-site>.hwb-nav{
  min-height:var(--hwb-header-height)!important;
  background:var(--hwb-header)!important;
  color:var(--hwb-header-text)!important;
}
.hwb-live-site .hwb-site>.hwb-nav a,
.hwb-live-site .hwb-site>.hwb-nav button,
.hwb-live-site .hwb-site>.hwb-nav .hwb-logo,
.hwb-live-site .hwb-site>.hwb-nav .hwb-logo span{
  color:var(--hwb-header-text)!important;
}

/* CSS-03 — HERO BACKGROUND, IMAGE, TITLE, PARAGRAPH */
.hwb-live-site .hwb-site .hwb-hero{
  background:var(--hwb-hero-bg)!important;
}
.hwb-live-site .hwb-site .hwb-hero h1{
  color:var(--hwb-hero-title)!important;
  overflow:visible!important;
}
.hwb-live-site .hwb-site .hwb-hero p{
  color:var(--hwb-hero-text)!important;
}
.hwb-live-site .hwb-site .hwb-hero-image,
.hwb-live-site .hwb-site .hwb-hero-image img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
.hwb-live-site .hwb-site .hwb-hero-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* CSS-04 — STORY BACKGROUND, SMALL TITLE, TITLE, PARAGRAPH */
.hwb-live-site .hwb-site .hwb-story{
  background:var(--hwb-story-bg)!important;
  color:var(--hwb-story-text)!important;
}
.hwb-live-site .hwb-site .hwb-story .hwb-story-heading>span{
  color:var(--hwb-story-accent)!important;
}
.hwb-live-site .hwb-site .hwb-story h2,
.hwb-live-site .hwb-site .hwb-story h3{
  color:var(--hwb-story-title)!important;
}
.hwb-live-site .hwb-site .hwb-story p,
.hwb-live-site .hwb-site .hwb-story .hwb-story-intro,
.hwb-live-site .hwb-site .hwb-story .hwb-story-body p{
  color:var(--hwb-story-text)!important;
  opacity:1!important;
}

/* CSS-05 — PRIMARY AND SECONDARY BUTTONS */
.hwb-live-site .hwb-site .hwb-primary,
.hwb-live-site .hwb-site .hwb-book,
.hwb-live-site .hwb-site button.hwb-primary{
  background:var(--hwb-button-bg)!important;
  color:var(--hwb-button-text)!important;
  border-color:var(--hwb-button-border)!important;
}
.hwb-live-site .hwb-site .hwb-primary:hover,
.hwb-live-site .hwb-site .hwb-book:hover{
  background:var(--hwb-button-hover)!important;
  color:var(--hwb-button-hover-text)!important;
}
.hwb-live-site .hwb-site .hwb-secondary{
  background:var(--hwb-secondary-button-bg)!important;
  color:var(--hwb-secondary-button-text)!important;
  border-color:var(--hwb-secondary-button-border)!important;
}
.hwb-live-site .hwb-site .hwb-secondary:hover{
  background:var(--hwb-secondary-button-hover)!important;
  color:var(--hwb-secondary-button-hover-text)!important;
}

/* CSS-06 — MENU, GALLERY, HOURS, CONTACT BACKGROUND / TEXT */
.hwb-live-site .hwb-site .hwb-menu,
.hwb-live-site .hwb-site .hwb-gallery,
.hwb-live-site .hwb-site .hwb-hours,
.hwb-live-site .hwb-site .hwb-contact{
  background:var(--paper)!important;
  color:var(--hwb-text)!important;
}
.hwb-live-site .hwb-site .hwb-section-head h2,
.hwb-live-site .hwb-site .hwb-hours h2,
.hwb-live-site .hwb-site .hwb-contact h2{
  color:var(--hwb-title)!important;
}
.hwb-live-site .hwb-site .hwb-section-head p,
.hwb-live-site .hwb-site .hwb-hours p,
.hwb-live-site .hwb-site .hwb-contact p,
.hwb-live-site .hwb-site .hwb-contact a{
  color:var(--hwb-content)!important;
}

/* CSS-07 — MENU / RESERVATION / HOURS CARDS */
.hwb-live-site .hwb-site .hwb-dishes article,
.hwb-live-site .hwb-site .hwb-reservation-card,
.hwb-live-site .hwb-site .hwb-hours-panel,
.hwb-live-site .hwb-site .hwb-status-card{
  background:var(--hwb-card)!important;
  border-color:var(--hwb-border)!important;
}
.hwb-live-site .hwb-site .hwb-dishes article h3,
.hwb-live-site .hwb-site .hwb-reservation-card strong,
.hwb-live-site .hwb-site .hwb-hours-panel strong,
.hwb-live-site .hwb-site .hwb-status-card h3{
  color:var(--hwb-card-title)!important;
}
.hwb-live-site .hwb-site .hwb-dishes article p,
.hwb-live-site .hwb-site .hwb-reservation-card small,
.hwb-live-site .hwb-site .hwb-hours-panel small,
.hwb-live-site .hwb-site .hwb-status-card p{
  color:var(--hwb-card-content)!important;
}

/* CSS-08 — CHEF AND RESERVATION DARK SECTIONS */
.hwb-live-site .hwb-site .hwb-chef,
.hwb-live-site .hwb-site .hwb-reserve{
  background:var(--dark)!important;
}
.hwb-live-site .hwb-site .hwb-chef h2,
.hwb-live-site .hwb-site .hwb-chef h3,
.hwb-live-site .hwb-site .hwb-reserve h2{
  color:var(--hwb-dark-title)!important;
}
.hwb-live-site .hwb-site .hwb-chef p,
.hwb-live-site .hwb-site .hwb-reserve p,
.hwb-live-site .hwb-site .hwb-reserve li{
  color:var(--hwb-dark-content)!important;
}

/* CSS-09 — FOOTER BACKGROUND AND TEXT */
.hwb-live-site .hwb-site .hwb-full-footer,
.hwb-live-site .hwb-site footer{
  background:var(--hwb-footer)!important;
  color:var(--hwb-footer-text)!important;
}
.hwb-live-site .hwb-site .hwb-full-footer *,
.hwb-live-site .hwb-site footer *{
  color:var(--hwb-footer-text)!important;
}

/* CSS-10 — LAPTOP / DESKTOP FULL-WIDTH HERO CONTRACT */
@media(min-width:901px){
  .hwb-live-site .hwb-site .hwb-hero{
    display:grid!important;
    grid-template-columns:minmax(0,46fr) minmax(0,54fr)!important;
    min-height:clamp(680px,82vh,920px)!important;
    overflow:hidden!important;
  }
  .hwb-live-site .hwb-site .hwb-hero-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    padding:clamp(76px,8vw,145px) clamp(38px,6.5vw,124px)!important;
    text-align:left!important;
  }
  .hwb-live-site .hwb-site .hwb-hero-image{
    position:relative!important;
    min-height:680px!important;
  }
}

/* CSS-11 — TABLET / MOBILE STACKING */
@media(max-width:900px){
  .hwb-live-site .hwb-site .hwb-hero{
    display:flex!important;
    flex-direction:column!important;
    min-height:auto!important;
  }
  .hwb-live-site .hwb-site .hwb-hero-copy{
    order:1!important;
    width:100%!important;
    padding:72px 24px 56px!important;
  }
  .hwb-live-site .hwb-site .hwb-hero-image{
    position:relative!important;
    order:2!important;
    width:100%!important;
    min-height:0!important;
    height:clamp(360px,68vw,540px)!important;
  }
  .hwb-live-site .hwb-site .hwb-hero h1{
    max-width:13ch!important;
    font-size:clamp(42px,12vw,68px)!important;
  }
}
