/* Mobile-only layout for header (≤1024px). Desktop не затрагивается. */
@media (max-width:1024px){
  .site-header{ position:sticky; top:0; z-index:1000; }
  .site-header .utilitybar{ position:relative; }

  /* Бургер — справа вверху (используем единый .burger) */
  .site-header .utilitybar .burger{
    display:inline-flex;
    position:absolute; right:8px; top:8px;
    width:48px; height:48px;
    align-items:center; justify-content:center;
    z-index:6;
  }

  /* Компоновка: бренд, адрес-пилюля, полоса действий */
  .site-header .utilitybar{
    display:grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto;
    grid-template-areas:
      "brand burger"
      "addr  burger"
      "act   burger";
    justify-items:center; align-items:center;
    gap: 2px 12px;
    padding: max(10px, env(safe-area-inset-top)) var(--hdr-pad-x) 10px;
  }

  .site-header .utilitybar__left,
  .site-header .utilitybar__right{ display:none; }

  .site-header .brand, .site-header .logo{ grid-area: brand; }
  .site-header .brand img, .site-header .logo img{ height:42px; width:auto; }

  .site-header .logo-subline{
    grid-area: addr; position: static; transform:none; margin:0;
    font-size:11px; line-height:1.15;
    padding:3px 9px 3px 20px; border-radius:999px;
    max-width:max-content; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  }

  .site-header .action-strip{
    grid-area: act;
    display:flex; align-items:center; gap:10px;
    width:100%; padding-right:64px;
  }

  /* Прячем горизонтальное меню и дубли телефона/поиска вне action-strip */
  .site-header .mainnav,
  .site-header > nav{ display:none; }
  .site-header :not(.action-strip) > :is([href^="tel:"], .u-phone, .phone, .tel){
    display:none;
  }
}

/* На десктопе мобильная полоса действий не нужна */
@media (min-width:1025px){
  .site-header .action-strip{ display:none; }
  .site-header .burger{ display:none; }
}

.theme-fab{
  position:fixed;
  right:clamp(16px,3vw,32px);
  bottom:clamp(18px,3vw,40px);
  width:52px;
  height:52px;
  border-radius:999px;
  border:1px solid var(--line);
  background:color-mix(in oklab, var(--surface) 96%, transparent);
  color:var(--text);
  display:grid;
  place-items:center;
  z-index:1100;
  cursor:pointer;
  box-shadow:var(--shadow-soft);
  transition:transform .18s ease, box-shadow .18s ease, background .2s ease;
}
.theme-fab svg{width:22px;height:22px;display:block;}
.theme-fab:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.15);}
.theme-fab:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:3px;}
[data-theme="dark"] .theme-fab{
  background:color-mix(in oklab, var(--surface) 72%, transparent);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 10px 28px rgba(0,0,0,.45);
}
