.elementor-9 .elementor-element.elementor-element-727ce60{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-9 .elementor-element.elementor-element-727ce60:not(.elementor-motion-effects-element-type-background), .elementor-9 .elementor-element.elementor-element-727ce60 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCF4E7;}.elementor-9 .elementor-element.elementor-element-5714310{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-9 .elementor-element.elementor-element-d11afc7 img{width:90%;}.elementor-9 .elementor-element.elementor-element-eee58da{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9 .elementor-element.elementor-element-537c6db.elementor-element{--align-self:flex-end;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-9 .elementor-element.elementor-element-5714310{--width:72%;}.elementor-9 .elementor-element.elementor-element-eee58da{--width:22%;}}@media(min-width:768px){.elementor-9 .elementor-element.elementor-element-5714310{--width:20%;}.elementor-9 .elementor-element.elementor-element-eee58da{--width:75%;}}/* Start custom CSS for html, class: .elementor-element-537c6db */:root {
    --bg: #FAF3E8;
    --ink: #241F1B;
    --active-bg: #241F1B;
    --active-text: #FAF3E8;
  }

  .panettone-nav-wrap {
    position: relative;
    font-family: 'Bricolage Grotesque', Sans-Serif;
  }

  .nav-menu {
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
  }

  .nav-menu li a,
  .nav-menu li a:link,
  .nav-menu li a:visited {
    display: inline-block;
    text-decoration: none;
    color: var(--ink) !important;
    font-weight: 600;
    font-size: 15px;
    padding: 12px 22px;
    border-radius: 999px;
    transition: background-color 0.25s ease, color 0.25s ease, transform 0.15s ease;
    white-space: nowrap;
    -webkit-tap-highlight-color: transparent;
    outline: none;
  }

  .nav-menu li a:hover,
  .nav-menu li a:visited:hover,
  .nav-menu li a:focus {
    background-color: rgba(36, 31, 27, 0.08) !important;
    color: var(--ink) !important;
    text-decoration: none !important;
    border-color: transparent !important;
  }

  .nav-menu li a:active,
  .nav-menu li a:visited:active {
    color: var(--ink) !important;
    transform: scale(0.97);
  }

  /* Focus da tastiera visibile, senza il ring rosa di default */
  .nav-menu li a:focus-visible {
    box-shadow: 0 0 0 2px var(--bg), 0 0 0 4px var(--ink);
  }

  .nav-menu li a.active,
  .nav-menu li a.active:link,
  .nav-menu li a.active:visited {
    background-color: var(--active-bg);
    color: var(--active-text) !important;
  }

  .nav-menu li a.active:hover,
  .nav-menu li a.active:visited:hover,
  .nav-menu li a.active:focus,
  .nav-menu li a.active:active {
    background-color: var(--active-bg) !important;
    color: var(--active-text) !important;
    text-decoration: none !important;
  }

  /* Bottone toggle: nascosto di default (solo mobile) */
  .panettone-toggle,
  button.panettone-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border: none;
    border-radius: 50%;
    background: transparent !important;
    cursor: pointer;
    padding: 0;
    -webkit-tap-highlight-color: transparent;
    outline: none;
  }

  /* Forza trasparenza su TUTTI gli stati: qui si annidava il bug del cerchio viola */
  .panettone-toggle:hover,
  button.panettone-toggle:hover,
  .panettone-toggle:focus,
  button.panettone-toggle:focus,
  .panettone-toggle:focus-visible,
  button.panettone-toggle:focus-visible,
  .panettone-toggle:active,
  button.panettone-toggle:active,
  .panettone-toggle:visited,
  button.panettone-toggle:visited {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
  }

  .panettone-toggle:active {
    transform: scale(0.94);
  }

  .panettone-toggle:focus-visible {
    box-shadow: 0 0 0 3px var(--ink);
    border-radius: 50%;
  }

  .panettone-toggle svg {
    width: 38px;
    height: 38px;
    display: block;
  }

  /* Tablet */
  @media (max-width: 900px) {
    .nav-menu {
      gap: 4px;
    }
    .nav-menu li a {
      padding: 10px 16px;
      font-size: 14px;
    }
  }

  /* Mobile: menu a tendina attivato dall'icona panettone */
  @media (max-width: 640px) {
    .panettone-nav-wrap {
      display: flex;
      justify-content: flex-end;
    }

    .panettone-toggle,
    button.panettone-toggle {
      display: flex;
    }

    .nav-menu {
      position: absolute;
      top: calc(100% + 10px);
      right: 0;
      flex-direction: column;
      align-items: stretch;
      gap: 6px;
      width: min(280px, 80vw);
      background: var(--bg);
      border: 1px solid rgba(36, 31, 27, 0.12);
      border-radius: 24px;
      padding: 14px;
      box-shadow: 0 12px 32px rgba(36, 31, 27, 0.18);
      opacity: 0;
      transform: translateY(-8px) scale(0.98);
      pointer-events: none;
      transition: opacity 0.22s ease, transform 0.22s ease;
      z-index: 1000;
    }

    .panettone-nav-wrap.open .nav-menu {
      opacity: 1;
      transform: translateY(0) scale(1);
      pointer-events: auto;
    }

    .nav-menu li a {
      display: block;
      width: 100%;
      text-align: center;
      padding: 14px 20px;
      box-sizing: border-box;
    }
  }/* End custom CSS */