/* Professional utility header — mobile only. Desktop remains unchanged. */
@media (max-width: 767.98px) {
  body .top-bar {
    position: relative;
    isolation: isolate;
    background:
      radial-gradient(260px 90px at 12% 0%, rgba(41,182,246,.18), transparent 72%),
      linear-gradient(120deg, #14235A 0%, #1D3475 58%, #172A62 100%);
    box-shadow: 0 7px 20px rgba(20,35,90,.18);
  }

  body .top-bar::after {
    content: "";
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    background: linear-gradient(90deg, #FFCA28, #66BB6A, #29B6F6, #8B7CF6);
  }

  body .top-bar .container,
  body.home-page .top-bar .container {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: .55rem;
    padding: .65rem 1rem .8rem !important;
  }

  body .top-bar-contact,
  body.home-page .top-bar-contact {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: .45rem .55rem;
    width: 100%;
  }

  body .top-bar-contact a,
  body.home-page .top-bar-contact a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 34px;
    margin: 0 !important;
    padding: .36rem .68rem;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.09);
    color: #fff;
    font-size: .79rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  }

  body .top-bar-contact a:first-child i,
  body.home-page .top-bar-contact a:first-child i {
    color: #FFD54F;
  }

  body .top-bar-contact a:nth-child(2) i,
  body.home-page .top-bar-contact a:nth-child(2) i {
    color: #81D4FA;
  }

  body .lang-switch,
  body.home-page .lang-switch {
    justify-self: center;
    gap: .1rem;
    margin: 0;
    padding: 3px;
    border: 1px solid rgba(255,255,255,.2);
    background: rgba(7,17,53,.32);
    box-shadow: inset 0 1px 4px rgba(0,0,0,.2), 0 6px 16px rgba(0,0,0,.12);
  }

  body .lang-btn,
  body.home-page .lang-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: .3rem .72rem;
    font-size: .78rem;
    line-height: 1;
  }

  body .lang-btn.active,
  body.home-page .lang-btn.active {
    box-shadow: 0 3px 10px rgba(255,202,40,.4), inset 0 -1px 0 rgba(0,0,0,.12) !important;
  }
}

/* Very narrow phones: stack contact chips without overflow. */
@media (max-width: 339.98px) {
  body .top-bar-contact,
  body.home-page .top-bar-contact {
    flex-direction: column;
    align-items: center;
    gap: .35rem;
  }

  body .top-bar-contact a,
  body.home-page .top-bar-contact a {
    width: min(100%, 250px);
  }
}
