/* FatturatoAziende R20 - header centered navigation and independent account CTA.
   Base for all desktop, tablet and mobile pages. Does not change privileges. */
@media (min-width: 991px) {
  .fa14-header .fa14-header-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(10px,1.4vw,23px);
    width: 100%;
    max-width: none;
  }
  .fa14-header .fa14-brand { grid-column: 1; justify-self: start; }
  .fa14-header .fa14-nav {
    grid-column: 2;
    justify-self: center;
    width: max-content;
    flex: none;
    min-width: 0;
    margin: 0;
    justify-content: center;
    gap: clamp(2px,.42vw,9px);
  }
  .fa14-header .fa20-desktop-access { grid-column: 3; justify-self: end; }
  .fa14-header .fa14-mega {
    left: 50%; right: auto; top: calc(100% - 1px);
    transform: translateX(-50%);
    width: min(1150px,calc(100vw - 44px));
    max-width: calc(100vw - 28px);
    animation: fa20-menu-in .2s ease-out both;
  }
  @keyframes fa20-menu-in {
    from { opacity: 0; transform: translate(-50%, 8px); }
    to { opacity: 1; transform: translate(-50%, 0); }
  }
  .fa14-header .fa20-mobile-access { display: none !important; }
}
.fa14-header .fa20-desktop-access {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 45px;
  padding: 11px 16px;
  border: 1px solid #bcdfe9;
  background: #f3fafc;
  border-radius: 12px;
  color: #075c83;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background .18s ease, border-color .18s ease;
}
.fa14-header .fa20-desktop-access:hover,
.fa14-header .fa20-desktop-access:focus-visible {background:#e8f5fa;border-color:#79c6d9;color:#054e72}
.fa14-header .fa20-desktop-access svg { flex: none; }
.fa14-header .fa20-mobile-access { display:none; }
@media (min-width: 991px) and (max-width: 1140px) {
  .fa14-header .fa14-brand img {width:clamp(159px,18vw,202px)}
  .fa14-header .fa14-search-link,.fa14-header .fa14-primary-link {font-size:12.5px;padding-inline:7px}
  .fa14-header .fa14-nav {gap:0}
  .fa14-header .fa20-desktop-access {padding-inline:9px;font-size:12px;gap:5px}
  .fa14-header .fa20-desktop-access svg {width:17px;height:17px}
  .fa14-header .fa14-mega {width:min(990px,calc(100vw - 24px));gap:12px;padding:16px}
}
@media (max-width: 990px) {
  .fa14-header .fa14-header-main {display:flex!important;}
  .fa14-header .fa20-desktop-access {display:none!important;}
  .fa14-header .fa14-nav>.fa20-mobile-access {
    box-sizing:border-box;
    display:flex!important;
    flex:0 0 auto;
    align-items:center;
    gap:11px;
    width:100%;
    min-height:54px;
    margin:12px 0 0;
    padding:12px 15px;
    color:#0b6084;
    background:#eaf8fb;
    border:1px solid #b7dfe8;
    border-radius:13px;
    text-decoration:none;
    font-size:15px;
    font-weight:770;
  }
  .fa14-header .fa20-mobile-access svg {flex:none;}
  .fa14-header .fa20-mobile-access-arrow {margin-left:auto;font-size:20px;line-height:1}
  .fa14-header .fa14-mega {position:static;left:auto;right:auto;top:auto;transform:none!important;animation:none!important}
  .fa14-header .fa14-nav>.fa20-mobile-access:focus-visible {outline:3px solid #078daf;outline-offset:2px}
}
@media (prefers-reduced-motion: reduce) {
  .fa14-header .fa14-mega {animation:none!important;}
  .fa14-header .fa20-desktop-access {transition:none!important;}
}

/* R29 - customer presence in the global navigation: accessible subscription signal. */
.fa29-status-dot{display:inline-block;width:10px;height:10px;min-width:10px;border-radius:50%;background:#d44e4e;box-shadow:0 0 0 3px rgba(212,78,78,.13);vertical-align:middle}
.fa29-status-green{background:#1ca879;box-shadow:0 0 0 3px rgba(28,168,121,.15)}
.fa29-status-amber{background:#e6a330;box-shadow:0 0 0 3px rgba(230,163,48,.18)}
.fa29-status-red{background:#d34e59;box-shadow:0 0 0 3px rgba(211,78,89,.14)}
.fa29-header-user{display:flex;align-items:center;gap:10px;min-width:0;text-align:left}
.fa29-header-text{display:flex;flex-direction:column;min-width:0;max-width:220px;line-height:1.2;gap:4px}
.fa29-greeting{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#123e56;font-weight:760}
.fa29-header-text small{display:block;color:#648498;font-weight:640;font-size:10px;line-height:1.2}
.fa29-mobile-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#6e8795;font-weight:650;margin-top:4px}
.fa29-mobile-status .fa29-status-dot{width:8px;height:8px;min-width:8px}
.fa18-app-bar .fa29-status-dot{height:7px;width:7px;min-width:7px;margin-right:4px}
.fa14-header .fa24-head-actions .fa20-desktop-access{min-width:0;max-width:270px;border-color:#d3e8ef;border-radius:13px;background:#f9fcfe;padding:8px 12px}
.fa14-header .fa24-head-actions .fa20-desktop-access:hover{border-color:#77b7ce;background:#eff8fb}
@media(max-width:1160px){.fa29-header-text{max-width:162px}.fa14-header .fa24-head-actions .fa20-desktop-access{padding:8px 9px}}
@media(max-width:1040px){.fa29-header-text{max-width:124px}.fa29-greeting{font-size:11px}}
@media(min-width:991px) and (max-width:1040px){.fa14-header .fa24-head-actions .fa20-desktop-access svg{display:none}}
@media(prefers-reduced-motion:reduce){.fa29-status-dot{transition:none}}

/* R32: never let the account caption escape the header card. */
.fa14-header .fa24-head-actions{min-width:0;max-width:100%;}
.fa14-header .fa24-head-actions .fa20-desktop-access{min-width:0;max-width:min(240px,100%);flex:0 1 auto;overflow:hidden;}
.fa14-header .fa29-header-user{min-width:0;width:100%;max-width:100%;}
.fa14-header .fa29-header-text{min-width:0;flex:1 1 0;max-width:100%;overflow:hidden;}
.fa14-header .fa29-header-text .fa29-greeting,
.fa14-header .fa29-header-text small,
.fa14-header .fa29-header-text .fa32-status-label{
  display:block;min-width:0;max-width:100%;overflow:hidden;
  white-space:nowrap;text-overflow:ellipsis;
}
.fa14-header .fa29-mobile-status{min-width:0;max-width:100%;}
.fa14-header .fa29-mobile-status .fa32-status-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media(min-width:991px) and (max-width:1200px){
  .fa14-header .fa24-head-actions .fa20-desktop-access{max-width:180px;}
}
@media(max-width:1040px){
  .fa14-header .fa29-header-text .fa29-greeting{font-size:11px;}
}
