/* Same phone icon and colour as the desktop contact action. */
.site-header .header-mobile-phone { display: none; }
/* A viewport anchor stays at the same pixel during document replacement and
   scroll restoration. Reserve exactly the height it occupied in normal flow. */
@media (min-width: 1121px) {
  body:has(> .site-header.has-header-search) { padding-top: var(--header-h, 72px); }
  body > .site-header.has-header-search {
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    height: var(--header-h, 72px);
  }
}
@media (max-width: 1120px) {
  .site-header.has-header-search {
    grid-template-columns: auto minmax(0, 1fr) 44px auto;
  }
  .site-header.has-header-search .menu-toggle { grid-column: 4; }
  .site-header.has-header-search .header-mobile-phone {
    display: grid;
    grid-column: 3;
    grid-row: 1;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #08a2ed;
    color: #fff;
    box-shadow: 0 8px 18px rgba(4, 151, 236, .18);
  }
  .site-header .header-mobile-phone span {
    width: 22px;
    height: 22px;
    background: url("icons/phone.svg?v=20260715") center / contain no-repeat;
  }
  .site-header .header-mobile-phone:hover,
  .site-header .header-mobile-phone:focus-visible { background-color: var(--blue-deep); }
  .site-header .header-mobile-phone:focus-visible {
    outline: 2px solid var(--blue-deep);
    outline-offset: 3px;
  }
}
