/*
 * Psicocultura header refinement.
 * Keep the existing Elementor header as content authority, but make desktop
 * navigation fit the real 1140px shell and keep mobile compact and navigable.
 */
#sezioneMenu {
  background: #04bbc4 !important;
}

#colonnaMenu .elementor-nav-menu--main .elementor-item {
  color: #fff !important;
}

#colonnaMenu .elementor-nav-menu--main .elementor-item:hover,
#colonnaMenu .elementor-nav-menu--main .elementor-item:focus,
#colonnaMenu .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: #db407d !important;
}

#colonnaRicerca .elementor-search-form__container {
  background-color: #04bbc4 !important;
  border-color: rgba(255, 255, 255, .36) !important;
}

#colonnaRicerca .elementor-search-form__icon,
#colonnaRicerca .elementor-search-form__input {
  color: #fff !important;
}

#colonnaRicerca .elementor-search-form__input::placeholder {
  color: rgba(255, 255, 255, .78) !important;
  opacity: 1;
}

@media (min-width: 1025px) {
  #slogan img {
    width: 145px !important;
    max-width: 145px !important;
    height: auto !important;
  }

  #colonnaMenu .elementor-nav-menu--main > .elementor-nav-menu {
    flex-wrap: nowrap !important;
    justify-content: center !important;
  }

  #colonnaMenu .elementor-nav-menu--main > .elementor-nav-menu > li {
    flex: 0 0 auto !important;
  }

  .elementor-15225 .elementor-element.elementor-element-e757f3b .elementor-nav-menu--main .elementor-item {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 18px !important;
    white-space: nowrap;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  #slogan img {
    width: 88px !important;
    max-width: 88px !important;
    height: auto !important;
  }

  #sezioneMenu > .elementor-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
  }

  #colonnaMenu {
    width: calc(100% - 56px) !important;
    flex: 1 1 auto !important;
  }

  #colonnaRicerca {
    width: 56px !important;
    flex: 0 0 56px !important;
    overflow: visible !important;
    z-index: 5;
  }

  #colonnaMenu .elementor-nav-menu--main > .elementor-nav-menu {
    flex-wrap: nowrap !important;
    justify-content: center !important;
  }

  #colonnaRicerca .elementor-widget-wrap,
  #colonnaRicerca .elementor-widget-search-form,
  #colonnaRicerca .elementor-widget-container {
    overflow: visible !important;
  }

  #colonnaRicerca .elementor-search-form {
    display: flex;
    justify-content: flex-end;
  }

  #colonnaRicerca .elementor-search-form__container {
    position: relative;
    width: 42px !important;
    height: 42px;
    min-height: 42px !important;
    overflow: visible;
    transition: width .2s ease, background-color .2s ease, box-shadow .2s ease;
  }

  #colonnaRicerca .elementor-search-form__icon {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: grid;
    place-items: center;
    padding: 0 !important;
    pointer-events: none;
  }

  #colonnaRicerca .elementor-search-form__input {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 12px 0 38px !important;
    border: 0 !important;
    opacity: 0;
    cursor: pointer;
  }

  #colonnaRicerca .elementor-search-form__container:focus-within {
    width: min(210px, calc(100vw - 28px)) !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .16);
  }

  #colonnaRicerca .elementor-search-form__container:focus-within .elementor-search-form__icon {
    color: #079ca7 !important;
  }

  #colonnaRicerca .elementor-search-form__container:focus-within .elementor-search-form__input {
    color: #172332 !important;
    opacity: 1;
    cursor: text;
  }
}

@media (max-width: 767px) {
  .elementor-15225 .elementor-element.elementor-element-9dd87a1 {
    margin: 0 !important;
  }

  .elementor-15225 .elementor-element.elementor-element-958c781 > .elementor-element-populated {
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-15225 .elementor-element.elementor-element-ccf7e78 {
    height: 88px !important;
    min-height: 88px !important;
    max-height: 88px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    overflow: hidden;
  }

  .elementor-15225 .elementor-element.elementor-element-ccf7e78 > .elementor-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    height: 88px !important;
    min-height: 88px !important;
    max-height: 88px !important;
  }

  #colonnaLogo {
    width: 65% !important;
    max-width: 65% !important;
    flex: 0 0 65% !important;
  }

  #colonnaSlogan {
    width: 35% !important;
    max-width: 35% !important;
    flex: 0 0 35% !important;
  }

  #colonnaLogo,
  #colonnaSlogan {
    height: 88px !important;
    min-height: 0 !important;
  }

  #colonnaLogo > .elementor-element-populated,
  #colonnaSlogan > .elementor-element-populated {
    height: 88px !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    align-items: center !important;
    align-content: center !important;
  }

  #colonnaLogo .elementor-widget,
  #colonnaSlogan .elementor-widget {
    margin: 0 !important;
  }

  #colonnaLogo .elementor-widget-container {
    text-align: left !important;
  }

  #colonnaLogo img {
    display: block;
    width: 100%;
    max-width: 205px;
    height: auto;
  }

  #colonnaSlogan .elementor-widget-container {
    text-align: right !important;
  }

  #slogan img {
    display: inline-block;
    width: 60px !important;
    max-width: 60px !important;
    height: auto !important;
    object-fit: contain;
  }

  #sezioneMenu {
    margin: 0 !important;
    padding: 0 6px !important;
  }

  #sezioneMenu > .elementor-container {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    min-height: 72px;
  }

  #colonnaMenu {
    width: calc(100% - 48px) !important;
    flex: 1 1 auto;
  }

  #colonnaRicerca {
    width: 48px !important;
    flex: 0 0 48px;
    z-index: 5;
  }

  #colonnaMenu > .elementor-element-populated,
  #colonnaRicerca > .elementor-element-populated {
    margin: 0 !important;
    padding: 0 !important;
  }

  #colonnaMenu .elementor-menu-toggle,
  #colonnaMenu .elementor-nav-menu--dropdown {
    display: none !important;
  }

  #colonnaMenu .elementor-nav-menu--main {
    display: flex !important;
    width: 100% !important;
  }

  #colonnaMenu .elementor-nav-menu--main > .elementor-nav-menu {
    display: flex !important;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
  }

  #colonnaMenu .elementor-nav-menu--main > .elementor-nav-menu > li {
    display: flex;
    flex: 0 0 33.3333%;
    justify-content: center;
    margin: 0 !important;
  }

  #colonnaMenu .elementor-nav-menu--main .elementor-item {
    width: 100%;
    min-height: 34px;
    justify-content: center;
    padding: 7px 3px !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
    white-space: nowrap;
  }

  #colonnaRicerca,
  #colonnaRicerca .elementor-widget-wrap,
  #colonnaRicerca .elementor-widget-search-form,
  #colonnaRicerca .elementor-widget-container {
    overflow: visible !important;
  }

  #colonnaRicerca .elementor-widget-wrap {
    justify-content: flex-end;
  }

  #colonnaRicerca .elementor-widget-search-form {
    width: auto !important;
  }

  #colonnaRicerca .elementor-search-form {
    display: flex;
    justify-content: flex-end;
  }

  #colonnaRicerca .elementor-search-form__container {
    position: relative;
    width: 42px !important;
    height: 42px;
    min-height: 42px;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    transition: width 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  }

  #colonnaRicerca .elementor-search-form__icon {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: grid;
    place-items: center;
    padding: 0 !important;
    color: #fff !important;
    font-size: 18px;
    pointer-events: none;
  }

  #colonnaRicerca .elementor-search-form__input {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 12px 0 38px !important;
    border: 0 !important;
    opacity: 0;
    cursor: pointer;
  }

  #colonnaRicerca .elementor-search-form__container:focus-within {
    width: min(210px, calc(100vw - 28px)) !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16);
  }

  #colonnaRicerca .elementor-search-form__container:focus-within .elementor-search-form__icon {
    color: #079ca7 !important;
  }

  #colonnaRicerca .elementor-search-form__container:focus-within .elementor-search-form__input {
    color: #172332 !important;
    opacity: 1;
    cursor: text;
  }
}