/* ============================================================
   Burgtec Classic Menu — all styles prefixed .bcm-
   ============================================================ */
:root{
  --bcm-line:#E3E2DE;
  --bcm-text:#1d1d1b;
  --bcm-muted:#737879;
  --bcm-green:#162A24;
  --bcm-soft:#f5f5f2;
  --bcm-softer:#faf9f7;
  --bcm-nav-h:76px;
  --bcm-cw:1600px; /* matches the live footer: 85% of screen, capped at 1600px */
  --bcm-font:'Fonetika',Arial,sans-serif;
}
.bcm-topbar *,.bcm-topbar *::before,.bcm-topbar *::after{box-sizing:border-box}
.bcm-topbar{
  position:sticky!important;top:0!important;width:100%!important;z-index:99999!important;
  background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--bcm-line)!important;
  backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;
  font-family:var(--bcm-font)!important;-webkit-font-smoothing:antialiased!important;
  margin:0!important;padding:0!important;box-shadow:none!important;
}
.bcm-topbar-inner{
  width:85%;max-width:var(--bcm-cw);margin:0 auto;padding:0;height:var(--bcm-nav-h);
  display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:18px;
  position:relative; /* anchor for the expanding search */
}
.bcm-logo{display:inline-flex!important;align-items:center!important;height:52px!important;text-decoration:none!important}
.bcm-logo img{height:100%!important;width:auto!important;object-fit:contain!important;display:block!important;max-width:200px!important}

/* ── Items + classic dropdowns ── */
.bcm-items{list-style:none!important;margin:0!important;padding:0!important;display:flex!important;justify-content:center!important}
.bcm-item{list-style:none!important;margin:0!important;padding:0!important;position:relative!important}
.bcm-item::before,.bcm-item::after{display:none!important;content:none!important}
.bcm-trigger{
  display:flex!important;align-items:center!important;gap:5px!important;
  font-family:var(--bcm-font)!important;font-size:15px!important;font-weight:400!important;
  color:var(--bcm-muted)!important;text-decoration:none!important;white-space:nowrap;
  padding:0 18px!important;height:var(--bcm-nav-h)!important;line-height:1!important;
  border-bottom:2px solid transparent!important;
  transition:border-color .15s,color .15s!important;background:none!important;
}
.bcm-item:hover .bcm-trigger{border-bottom-color:var(--bcm-text)!important;color:var(--bcm-text)!important}
.bcm-chevron{font-size:9px;opacity:.4}

.bcm-drop{
  display:none;position:absolute;top:100%;left:0;
  min-width:250px;background:#fff;border:1px solid var(--bcm-line);
  border-radius:0 0 10px 10px;box-shadow:0 20px 44px rgba(18,18,15,.12);
  padding:8px 0;z-index:99998;
}
.bcm-has-drop:hover .bcm-drop,.bcm-has-drop:focus-within .bcm-drop{display:block}
.bcm-drop a{
  display:block!important;padding:9px 20px!important;
  font-family:var(--bcm-font)!important;font-size:14px!important;font-weight:400!important;
  color:var(--bcm-muted)!important;text-decoration:none!important;white-space:nowrap;
  transition:background .12s,color .12s!important;
}
.bcm-drop a:hover{background:var(--bcm-soft)!important;color:var(--bcm-green)!important}
.bcm-drop a.bcm-drop-viewall{
  font-weight:600!important;color:var(--bcm-green)!important;
  border-top:1px solid var(--bcm-line);margin-top:6px;padding-top:12px!important;
}

/* ── Utility: phone + contact ── */
.bcm-utility{display:flex;align-items:center;gap:14px;justify-self:end}
.bcm-utility-phone{
  display:inline-flex!important;align-items:center;gap:6px;
  font-family:var(--bcm-font)!important;font-size:13px!important;font-weight:600!important;
  color:var(--bcm-text)!important;text-decoration:none!important;white-space:nowrap;
}
.bcm-utility-phone:hover{color:var(--bcm-green)!important}
.bcm-utility-phone svg{flex-shrink:0;opacity:.55}
.bcm-utility-contact{
  display:inline-flex!important;align-items:center;justify-content:center;
  height:34px;padding:0 18px!important;border-radius:7px!important;
  background:var(--bcm-green)!important;color:#fff!important;
  font-family:var(--bcm-font)!important;font-size:13px!important;font-weight:600!important;
  text-decoration:none!important;white-space:nowrap;border:none!important;
  transition:background .15s!important;
}
.bcm-utility-contact:hover{background:#1d4238!important;color:#fff!important}

/* ── Search: collapsed pill, expands leftward to half the page ──
   Everything hardened with !important so theme form styles can't
   box the icon/input/close button into separate elements. */
.bcm-search{
  display:flex!important;align-items:center!important;gap:8px!important;
  border:1px solid var(--bcm-line)!important;border-radius:6px!important;
  padding:0 14px!important;height:34px!important;width:190px;
  font-family:var(--bcm-font)!important;font-size:13px!important;color:var(--bcm-muted)!important;
  background:var(--bcm-softer)!important;cursor:text;justify-self:end;
  position:relative;margin:0!important;box-shadow:none!important;
  transition:width .28s ease,border-color .15s,box-shadow .28s ease!important;
}
.bcm-search-icon{
  font-size:15px!important;color:#b0aa9f!important;flex-shrink:0;
  background:none!important;border:none!important;padding:0!important;margin:0!important;
  border-radius:0!important;box-shadow:none!important;width:auto!important;height:auto!important;
  display:inline!important;line-height:1!important;
}
.bcm-search .bcm-search-input,
.bcm-search input[type="search"].bcm-search-input{
  appearance:none!important;-webkit-appearance:none!important;
  flex:1 1 auto!important;min-width:0!important;width:auto!important;
  border:none!important;background:transparent!important;outline:none!important;
  box-shadow:none!important;border-radius:0!important;
  font-family:var(--bcm-font)!important;font-size:13px!important;color:var(--bcm-text)!important;
  padding:0!important;margin:0!important;height:100%!important;min-height:0!important;
  cursor:text;line-height:normal!important;
}
.bcm-search .bcm-search-input:focus{border:none!important;outline:none!important;box-shadow:none!important;background:transparent!important}
.bcm-search-input::placeholder{color:var(--bcm-muted)!important;opacity:1}
.bcm-search-input::-webkit-search-decoration,
.bcm-search-input::-webkit-search-cancel-button{display:none}
.bcm-search .bcm-search-close,
.bcm-search button.bcm-search-close{
  display:none!important;
  appearance:none!important;-webkit-appearance:none!important;
  border:none!important;background:none!important;box-shadow:none!important;
  font-size:18px!important;line-height:1!important;border-radius:0!important;
  color:var(--bcm-muted)!important;cursor:pointer;
  padding:0 2px!important;margin:0!important;flex-shrink:0;
  width:auto!important;height:auto!important;min-height:0!important;
  font-family:var(--bcm-font)!important;
}
.bcm-search .bcm-search-close:hover{color:var(--bcm-text)!important;background:none!important}

/* Expanded state: anchored right, covers half the viewport, above everything.
   .bcm-search-closing keeps the same anchoring while the width animates back,
   so the field shrinks in place instead of snapping into the grid mid-animation. */
.bcm-search.bcm-search-open,
.bcm-search.bcm-search-closing{
  position:absolute;right:0;top:50%;transform:translateY(-50%);
  z-index:2147483000;
}
.bcm-search.bcm-search-open{
  width:50vw;max-width:85vw;
  background:#fff;border-color:#c7c1b8;
  box-shadow:0 10px 34px rgba(18,18,15,.14);
}
.bcm-search.bcm-search-open .bcm-search-icon{display:none!important} /* icon goes away once active */
.bcm-search.bcm-search-open .bcm-search-close{display:block!important}

/* ── Hamburger + mobile ── */
.bcm-hamburger{display:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:none;border:none;cursor:pointer;padding:0}
.bcm-hamburger span{display:block;width:100%;height:2px;background:var(--bcm-text);border-radius:2px;transition:transform .25s,opacity .25s}
.bcm-hamburger.bcm-open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.bcm-hamburger.bcm-open span:nth-child(2){opacity:0}
.bcm-hamburger.bcm-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

.bcm-mobile{display:none;position:fixed;top:var(--bcm-nav-h);left:0;right:0;bottom:0;background:#fff;overflow-y:auto;z-index:99997;border-top:1px solid var(--bcm-line)}
.bcm-mobile.bcm-mob-open{display:block}
.bcm-mobile-inner{padding:20px 20px 40px;max-width:500px;margin:0 auto;font-family:var(--bcm-font)}
.bcm-mobile-search{display:flex;align-items:center;border:1px solid var(--bcm-line);border-radius:8px;overflow:hidden;margin-bottom:20px;background:var(--bcm-softer)}
.bcm-mobile-search input{flex:1;border:none;background:transparent;padding:10px 14px;font-size:15px;font-family:var(--bcm-font);outline:none;color:var(--bcm-text)}
.bcm-mobile-search button{border:none;background:none;padding:0 14px;font-size:18px;color:var(--bcm-muted);cursor:pointer}
.bcm-mobile-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}
.bcm-mob-item,.bcm-mob-flat{border-bottom:1px solid var(--bcm-line)}
.bcm-mob-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 4px;background:none;border:none;font-family:var(--bcm-font);font-size:16px;font-weight:500;color:var(--bcm-text);cursor:pointer;text-align:left}
.bcm-mob-trigger span{font-size:20px;font-weight:300;transition:transform .2s;color:var(--bcm-muted)}
.bcm-mob-trigger.bcm-mob-active span{transform:rotate(45deg)}
.bcm-mob-panel{display:none;padding-bottom:12px}
.bcm-mob-panel.bcm-mob-open{display:block}
.bcm-mob-panel a{display:block;padding:9px 4px;font-size:15px;color:var(--bcm-text);text-decoration:none;border-bottom:1px solid #f0ede8}
.bcm-mob-panel a.bcm-mob-viewall{font-weight:600;color:var(--bcm-green);border-bottom:none}
.bcm-mob-flat a{display:block;padding:14px 4px;font-size:16px;font-weight:500;color:var(--bcm-text);text-decoration:none}

@media(max-width:1080px){
  .bcm-utility-phone{display:none!important}
}
@media(max-width:768px){
  .bcm-hamburger{display:flex}
  .bcm-items{display:none!important}
  .bcm-search{display:none!important}
  .bcm-utility{display:none!important}
  .bcm-topbar-inner{grid-template-columns:auto 1fr auto}
}
