/* Marchio Intesa: stessi colori dei temi esistenti, asset locali da un unico master. */
.ds-brand { display: inline-block; width: 158px; max-width: 100%; flex: none; vertical-align: middle; line-height: 0; }
.ds-brand > img { display: block; width: 100%; height: auto; border-radius: 0; }
.ds-brand > .ds-brand-dark { display: none; }
:root[data-theme="dark"] .ds-brand > .ds-brand-light { display: none; }
:root[data-theme="dark"] .ds-brand > .ds-brand-dark { display: block; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .ds-brand > .ds-brand-light { display: none; }
  :root:not([data-theme="light"]) .ds-brand > .ds-brand-dark { display: block; }
}
.lp-brand .ds-brand { width: 148px; }
.lp-brandpill.ds-identity { display: block; width: min(380px, 100%); margin: 0 auto 20px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.lp-brandpill.ds-identity .ds-brand { width: 100%; }
.brand.ds-sidebar-brand { flex-direction: column; align-items: flex-start; gap: 0; }
.brand.ds-sidebar-brand .ds-brand { width: 180px; }
.brand.ds-sidebar-brand > small { padding-left: 8px; }
.auth-brand .ds-brand { width: 152px; }
.logo .ds-brand { display: inline-block; width: 155px; }
@media (max-width: 600px) {
  .lp-brand .ds-brand { width: 110px; }
  .auth-brand .ds-brand { width: 120px; }
  .logo .ds-brand { width: 112px; }
  .logo > span:last-child:not(.ds-brand) { font-size: 12px; }
}

/* Telefono: simbolo nella barra iniziale, firma centrata solo allo scroll. */
.lp-brand > .lp-brand-symbol { display: none; }
.lp-bar-brand .ds-brand { width: 128px; }
@media (max-width: 734px) {
  .landing .lp-top { height: auto; min-height: 64px; flex-wrap: nowrap; gap: 4px; padding: calc(10px + env(safe-area-inset-top, 0px)) 12px 10px; }
  .lp-brand { flex: none; order: 0; }
  .lp-brand .ds-brand { display: none; }
  .lp-brand > .lp-brand-symbol { display: block; width: 32px; height: 32px; border-radius: 0; }
  .landing .lp-burger { order: 1; flex: none; width: 40px; min-height: 44px; padding: 0; }
  .lp-langbox { order: 2; }
  .lp-langbtn { min-height: 44px; gap: 4px; padding: 0 4px; }
  .lp-langbox .lp-langs { left: 0; right: auto; }
  .lp-top-act { order: 3; gap: 2px; }
  .landing .lp-top-act .lp-top-btn { min-height: 44px; padding: 0 10px; font-size: 12px; white-space: nowrap; }
  .lp-top > .lp-theme { order: 4; width: 44px; height: 44px; }
  .lp-top-rev { display: none; }
  .lp-bar-in { height: auto; min-height: 64px; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 4px; padding: calc(10px + env(safe-area-inset-top, 0px)) 12px 10px; }
  .lp-bar-brand { grid-column: 2; grid-row: 1; justify-self: center; }
  .lp-bar-brand .ds-brand { width: clamp(112px, 35vw, 136px); }
  .landing .lp-bar-burger { grid-column: 1; grid-row: 1; justify-self: start; width: 44px; }
  .lp-bar-act { grid-column: 3; grid-row: 1; justify-self: end; margin: 0; }
  .landing .lp-bar-act .lp-bar-login, .landing .lp-bar-act .lp-bar-cmp, .lp-bar .lp-theme-bar { display: none; }
  .landing .lp-bar-act .lp-bar-btn { flex: none; min-height: 44px; padding: 0 6px; white-space: nowrap; overflow-wrap: normal; }
}
@media (max-width: 380px) {
  .lp-langcode { display: none; }
  .lp-bar-brand .ds-brand { width: 92px; }
  .landing .lp-bar-act .lp-bar-btn { padding: 0 8px; font-size: 11px; }
}
@media (max-width: 340px) {
  .lp-bar-brand .ds-brand { width: 84px; }
}
