/* KVEVRI CHICAGO - scoped project styles (mirrors client css/styles.css) */
.kv-project{--kv-primary:#FB9514;--kv-primary-light:#FDB454;--kv-secondary:#6D9A3A;--kv-accent:#C1523F;--kv-bg:#000000;--kv-surface:#141414;--kv-surface-alt:#1B1712;--kv-ink:#0B0B0B;--kv-heading:#F6EFE1;--kv-body:#D7CDB9;--kv-muted:#A79A82;--kv-border:#2E2A22;--kv-border-on-ink:#38322A;--kv-pad:24px}
body.kv-project{background:#000}

/* shared container: header, body, footer all align */
.kv-project .et_pb_section > .et_pb_row,
.kv-header .et_pb_row,
.kv-footer .et_pb_row{
  width:100%!important;max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;
  padding-left:var(--kv-pad)!important;padding-right:var(--kv-pad)!important;box-sizing:border-box}
.kv-project .kv-w700 > .et_pb_column{max-width:700px;margin-left:auto;margin-right:auto}
.kv-project .kv-w780 > .et_pb_column{max-width:780px;margin-left:auto;margin-right:auto}
.kv-project .kv-w900 > .et_pb_column{max-width:900px;margin-left:auto;margin-right:auto}
.kv-project .kv-w620 > .et_pb_column{max-width:620px;margin-left:auto;margin-right:auto}

/* radius scale: 2/4/10, 20 reserved for pills (already applied inline per-element) */

/* TYPE - Big Shoulders Display uppercase headlines, Work Sans body */
.kv-project h1,.kv-project h2,.kv-project h3,.kv-project h4{font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;letter-spacing:0.002em;line-height:1.02}
.kv-project h1{font-size:clamp(3.2rem,6.4vw,5.6rem)!important;font-weight:800!important}
.kv-project h2{font-size:clamp(2.2rem,4vw,3.3rem)!important;font-weight:700!important}
.kv-project h3{font-size:clamp(1.4rem,2.2vw,1.7rem)!important;font-weight:700!important}

/* BUTTONS */
.kv-project .et_pb_button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 28px!important;font-family:'Work Sans',sans-serif!important;font-size:0.95rem!important;font-weight:600!important;transition:background 150ms ease,color 150ms ease,border-color 150ms ease,transform 150ms ease}
.kv-project .et_pb_button:after,.kv-project .et_pb_button:before{display:none!important}
.kv-project .et_pb_button:active{transform:translateY(1px)}

/* HEADER / NAV */
.kv-header{position:sticky;top:0;z-index:100;background:rgba(0,0,0,0.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--kv-border)}
.kv-logo{text-decoration:none;text-transform:uppercase;letter-spacing:0.01em;color:#F6EFE1!important}
.kv-logo:visited,.kv-logo:hover{color:#F6EFE1!important}
.kv-nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.kv-nav a{font-size:14.5px;font-weight:500;color:var(--kv-body);padding:6px 2px;border-bottom:2px solid transparent;text-decoration:none;transition:border-color 150ms ease,color 150ms ease}
.kv-nav a:hover{border-color:var(--kv-primary);color:var(--kv-primary)}
.kv-nav-mobile-cta{display:none}

.kv-nav-toggle{display:none;background:none;border:1.5px solid var(--kv-heading);border-radius:2px;padding:8px 12px;min-height:44px;min-width:44px;align-items:center;justify-content:center;cursor:pointer;position:relative}
.kv-nav-toggle span{display:block;width:20px;height:2px;background:var(--kv-heading);position:relative}
.kv-nav-toggle span::before,.kv-nav-toggle span::after{content:'';position:absolute;left:0;width:20px;height:2px;background:var(--kv-heading);transition:transform 150ms ease}
.kv-nav-toggle span::before{top:-6px}
.kv-nav-toggle span::after{top:6px}
.kv-nav-toggle[aria-expanded=true] span{background:transparent}
.kv-nav-toggle[aria-expanded=true] span::before{transform:translateY(6px) rotate(45deg)}
.kv-nav-toggle[aria-expanded=true] span::after{transform:translateY(-6px) rotate(-45deg)}

@media (max-width:860px){
  .kv-nav-toggle{display:inline-flex}
  .kv-header .et_pb_row{flex-wrap:wrap}
  .kv-hdr-cta{display:none}
  .kv-nav{display:none!important;flex-direction:column;align-items:flex-start;position:absolute;top:100%;left:0;right:0;background:var(--kv-surface);padding:0;gap:0;border-bottom:1px solid var(--kv-border);max-height:70vh;overflow-y:auto}
  .kv-nav.is-open{display:flex!important}
  .kv-nav a{width:100%;padding:16px 24px;border-bottom:1px solid var(--kv-border);border-left:3px solid transparent}
  .kv-nav a:hover{border-left-color:var(--kv-primary)}
  .kv-nav-mobile-cta{display:block!important;margin:16px 24px;background:var(--kv-primary);color:#171207!important;padding:12px 20px;text-align:center;font-weight:600;text-decoration:none;border-radius:2px}
}

/* FOOTER */
.kv-footer a{color:var(--kv-muted);text-decoration:none}
.kv-footer a:hover{color:#F4ECDD}
.kv-fmenu{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}

/* menu category jump-link scroll offset */
.kv-project [id]{scroll-margin-top:140px}
.kv-menu-nav{position:sticky;top:73px;z-index:50;background:#000}
.kv-menu-nav a:hover{color:var(--kv-primary)!important;border-color:var(--kv-primary)!important}

/* accordion (native Divi) styling */
.kv-project .et_pb_accordion_item .et_pb_toggle_title{font-weight:700!important}

/* ===== RESPONSIVE (breakpoints match source: 900 / 860 / 760 / 700 / 620 / 560) ===== */
@media (max-width:900px){
  .kv-project .kv-hero-row .et_pb_column{flex:1 1 100%!important}
}
@media (max-width:760px){
  .kv-project [id='wine'] .et_pb_row{flex-direction:column}
}
@media (max-width:700px){
  .kv-project form[class*=et_pb_contact] .et_pb_contact_field{width:100%!important}
}
@media (max-width:620px){
  .kv-project .et_pb_row > .et_pb_column{flex:1 1 100%!important;max-width:100%!important}
}
@media (max-width:560px){
  .kv-project h1{font-size:2.6rem!important}
  .kv-project h2{font-size:2rem!important}
}

/* ---- 3-up grids: dish-grid, room photos - explicit breakpoints matching source (900px / 620px) ---- */
.kv-project .kv-grid-3{display:flex!important;flex-wrap:wrap;gap:24px}
.kv-project .kv-grid-3 > .et_pb_column{flex:1 1 calc(33.333% - 16px);max-width:calc(33.333% - 16px);margin:0!important;float:none!important}
@media (max-width:900px){
  .kv-project .kv-grid-3 > .et_pb_column{flex:1 1 calc(50% - 12px);max-width:calc(50% - 12px)}
}
@media (max-width:620px){
  .kv-project .kv-grid-3 > .et_pb_column{flex:1 1 100%;max-width:100%}
}