/* One language action, a centred mark, and comfortably spaced mobile controls. */
.olo-header-start {display:none}
.site-header .olo-language-switch {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:40px; padding:0 12px; border:1px solid var(--color-border);
  border-radius:4px; color:var(--color-text); background:transparent;
  font-family:var(--font-ui); font-size:12px; font-weight:500;
  line-height:1; letter-spacing:0; text-transform:none; text-decoration:none;
}
.site-header .olo-language-switch:hover {background:var(--color-surface); border-color:var(--color-text-muted)}
.site-header .olo-language-switch:focus-visible {outline:2px solid var(--color-accent); outline-offset:3px}
.site-header .olo-desktop-language {display:flex; align-items:center}
@media (min-width:1200px) {
  .site-header .utility-nav > a > svg {display:none}
  .site-header .utility-nav > a {gap:4px}
}
@media (max-width:1199px) {
  .site-header:not(.checkout-header) {
    --gutter:16px; --header-height:72px; --logo-width:64px;
    grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);
    column-gap:12px; padding-inline:var(--gutter);
  }
  .site-header:not(.checkout-header) > .olo-header-start {
    display:flex; align-items:center; justify-self:start; gap:8px; min-width:0;
  }
  .site-header .olo-desktop-language {display:none}
  .site-header .desktop-nav,
  .site-header .utility-nav > .account-link {display:none!important}
  .site-header .olo-header-language {display:flex; margin:0; padding:0}
  .site-header .olo-header-language .olo-language-switch {
    min-width:60px; min-height:44px; padding:0 8px; font-size:11px;
  }
  .site-header .mobile-menu {display:block}
  .site-header .mobile-menu > summary {
    display:flex; align-items:center; justify-content:center; width:44px;
    min-height:44px; padding:0; list-style:none; cursor:pointer;
  }
  .site-header .mobile-menu > summary::-webkit-details-marker {display:none}
  .site-header .mobile-menu > summary svg {flex:0 0 22px; transition:transform .15s ease}
  .site-header .mobile-menu[open] > summary svg {transform:rotate(90deg)}
  .site-header:not(.checkout-header) > .brand,
  .site-header:not(.checkout-header) > .custom-logo-link {justify-self:center; width:64px; min-width:0}
  .site-header:not(.checkout-header) .custom-logo-link img,
  .site-header:not(.checkout-header) img.custom-logo {width:auto; max-width:64px; max-height:46px}
  .site-header:not(.checkout-header) > .utility-nav {
    display:flex; justify-self:end; align-items:center; gap:8px; min-width:0;
  }
  .site-header:not(.checkout-header) > .utility-nav > a:not(.account-link) {
    position:relative; display:inline-flex; align-items:center; justify-content:center;
    width:44px; min-width:44px; min-height:44px; padding:0; gap:0;
  }
  .site-header:not(.checkout-header) .utility-label {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
  }
  .site-header:not(.checkout-header) .utility-nav svg {display:block; width:22px; height:22px}
  .site-header:not(.checkout-header) .olo-count {
    position:absolute; top:0; inset-inline-end:0; display:grid; place-items:center;
    min-width:17px; height:17px; padding-inline:4px; border-radius:999px;
    background:var(--olo-espresso,#241a16); color:var(--olo-ivory,#f7f4ee);
    font-size:10px; font-weight:600; line-height:1;
  }
  .site-header .mobile-menu nav {
    z-index:12; max-height:calc(100dvh - 140px); overflow-y:auto;
    padding:12px var(--gutter) 20px; box-shadow:0 14px 24px rgb(26 20 17 / 8%);
  }
  .site-header .mobile-menu nav ul {gap:0}
  .site-header .mobile-menu nav a {
    display:flex; min-height:52px; align-items:center; padding-inline:8px;
    border-block-end:1px solid var(--color-border); font-family:var(--font-ui);
    font-size:14px; font-weight:500; letter-spacing:0; text-transform:none;
  }
  .site-header .mobile-menu nav li:last-child a {border-block-end:0}
  .announcement {
    min-height:36px; padding:6px 16px; font-size:11px;
    line-height:1.65; letter-spacing:0; text-align:center;
  }
}
@media (max-width:360px) {
  .site-header:not(.checkout-header) {
    --gutter:12px; --logo-width:56px;
    grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr); column-gap:8px;
  }
  .site-header:not(.checkout-header) > .brand,
  .site-header:not(.checkout-header) > .custom-logo-link {width:56px}
  .site-header:not(.checkout-header) .custom-logo-link img,
  .site-header:not(.checkout-header) img.custom-logo {max-width:56px}
  .site-header:not(.checkout-header) > .olo-header-start {gap:6px}
  .site-header .olo-header-language .olo-language-switch {min-width:52px; padding-inline:6px; font-size:10.5px}
}
@media (prefers-reduced-motion:reduce) {
  .site-header .mobile-menu > summary svg {transition:none}
}
