.elementor-64 .elementor-element.elementor-element-c9b73d5{--display:flex;--position:absolute;--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;--justify-content:space-between;--align-items:center;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;top:0px;--z-index:50;}body:not(.rtl) .elementor-64 .elementor-element.elementor-element-c9b73d5{left:0px;}body.rtl .elementor-64 .elementor-element.elementor-element-c9b73d5{right:0px;}.elementor-64 .elementor-element.elementor-element-20bbb9b{--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;--justify-content:space-between;--align-items:center;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-863a2fd );--border-color:var( --e-global-color-863a2fd );--border-radius:16px 16px 16px 16px;--padding-top:12px;--padding-bottom:12px;--padding-left:32px;--padding-right:32px;}.elementor-64 .elementor-element.elementor-element-c7b5503{width:auto;max-width:auto;}.elementor-64 .elementor-element.elementor-element-6aefdc0{--display:flex;}.elementor-64 .elementor-element.elementor-element-9e8a1da .elementor-heading-title{font-family:"Gantari", Sans-serif;font-weight:500;text-transform:uppercase;-webkit-text-stroke-color:#000;stroke:#000;color:#FFFFFF66;}.elementor-64 .elementor-element.elementor-element-9742eac{--display:flex;--flex-direction:row-reverse;--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-reverse;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button{background-color:#02010100;font-family:"Gantari", Sans-serif;font-size:12px;font-weight:900;text-transform:uppercase;line-height:1em;letter-spacing:0.3em;fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-style:solid;border-width:1px 1px 1px 1px;border-color:#F9C80E33;border-radius:12px 12px 12px 12px;padding:8px 28px 8px 28px;}.elementor-64 .elementor-element.elementor-element-97922aa{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 24px 10px 24px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#F9C80E33;border-radius:12px 12px 12px 12px;}.elementor-64 .elementor-element.elementor-element-97922aa.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button:hover, .elementor-64 .elementor-element.elementor-element-97922aa .elementor-button:focus{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button:hover svg, .elementor-64 .elementor-element.elementor-element-97922aa .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-64 .elementor-element.elementor-element-c8517f2{width:auto;max-width:auto;}.elementor-64 .elementor-element.elementor-element-4c61173{width:auto;max-width:auto;}.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item{font-family:"Gantari", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;line-height:1.5em;letter-spacing:0.4em;}.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu--main .elementor-item{color:#FFFFFF66;fill:#FFFFFF66;}.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-64 .elementor-element.elementor-element-9742eac{--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button{font-size:8px;letter-spacing:0.2em;padding:8px 16px 8px 16px;}.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item{font-size:8px;}}@media(max-width:767px){.elementor-64 .elementor-element.elementor-element-c9b73d5{--border-radius:16px 16px 16px 16px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-64 .elementor-element.elementor-element-6aefdc0{--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;--justify-content:flex-end;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-64 .elementor-element.elementor-element-9e8a1da .elementor-heading-title{font-size:9px;letter-spacing:0.3em;}.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item{font-size:16px;}}@media(min-width:768px){.elementor-64 .elementor-element.elementor-element-20bbb9b{--width:1140%;}}/* Start custom CSS for heading, class: .elementor-element-9e8a1da */@media (max-width: 640px) { .elementor-64 .elementor-element.elementor-element-9e8a1da { display: none !important; } }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-dff11a1 *//* Stile del bottone 40x40 (w-10 h-10) con vetro e bordo */
.elementor-64 .elementor-element.elementor-element-dff11a1 .alsi-mobile-btn {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    transition: background-color 0.3s ease;
    cursor: pointer;
    color: #ffffff; /* Questo colora le righe dell'SVG */
}

/* Hover: bg-white/10 */
.elementor-64 .elementor-element.elementor-element-dff11a1 .alsi-mobile-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

/* Rimuoviamo eventuali margini che Elementor mette ai widget HTML */
.elementor-64 .elementor-element.elementor-element-dff11a1 .elementor-widget-container {
    margin: 0 !important;
}

/* Resetta i margini di default del tag button */
.elementor-64 .elementor-element.elementor-element-dff11a1 .alsi-mobile-btn {
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Forza le dimensioni esatte dell'SVG impedendo che si rimpicciolisca */
.elementor-64 .elementor-element.elementor-element-dff11a1 .alsi-mobile-btn svg {
    width: 20px !important;
    height: 20px !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6aefdc0 */.elementor-64 .elementor-element.elementor-element-6aefdc0 {
    width: auto !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-97922aa *//* ==========================================
   0. AZZERAMENTO ASSOLUTO MARGINI ELEMENTOR
========================================= */
.elementor-64 .elementor-element.elementor-element-97922aa, 
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-widget-container, 
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important; /* Forza il wrapper ad adattarsi */
}

/* Assicurati che l'icona e il testo non abbiano margini sballati */
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button-text,
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button-icon {
    margin: 0 !important;
    padding: 0 !important;
}

/* ==========================================
   1. PULIZIA E BLINDATURA (RIMUOVE OMRA E FANTASMI)
========================================= */

/* Agiamo sull'elemento principale del widget e sul suo wrapper interno */
.elementor-64 .elementor-element.elementor-element-97922aa,
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-widget-container {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    outline: none !important;
    border: none !important;
}

/* Agiamo direttamente sul tag <a> del bottone */
.elementor-64 .elementor-element.elementor-element-97922aa a.elementor-button {
    overflow: hidden !important;
    position: relative !important;
    
    /* RESET DI QUALSIASI ALTRA OMRA NASCOSTA */
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

/* ==========================================
   2. STILE BASE DEL BOTTONE (DA PASSAGGIO 1)
========================================= */

/* Stato Normale: Bordo al 20% */
.elementor-64 .elementor-element.elementor-element-97922aa a.elementor-button {
    border: 1px solid rgba(249, 200, 14, 0.2) !important;
    background-color: transparent !important;
    transition: all 0.5s ease-in-out !important; /* Questo serve per il bordo */
}

/* Stato Hover: Bordo al 100% e Colore Testo */
.elementor-64 .elementor-element.elementor-element-97922aa a.elementor-button:hover {
    border: 1px solid #F9C80E !important;
    color: #F9C80E !important;
    text-shadow: none !important; /* Pulizia extra per il testo */
}

/* ==========================================
   3. LA MAGIA CSS (SWIPE LUMINOSO DA PASSAGGIO 3)
========================================= */

/* Il testo deve stare SOPRA la luce */
.elementor-64 .elementor-element.elementor-element-97922aa .elementor-button-content-wrapper {
    position: relative !important;
    z-index: 2 !important;
}

/* Creiamo la luce invisibile a sinistra (translate-x-[-100%]) */
.elementor-64 .elementor-element.elementor-element-97922aa a.elementor-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Il gradiente: trasparente -> oro al 10% -> trasparente */
    background: linear-gradient(90deg, rgba(249, 200, 14, 0) 0%, rgba(249, 200, 14, 0.1) 50%, rgba(249, 200, 14, 0) 100%);
    transform: translateX(-100%);
    /* Durata esatta del tuo React: 1000ms */
    transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 1;
}

/* Al passaggio del mouse, la luce scivola a destra (translate-x-[100%]) */
.elementor-64 .elementor-element.elementor-element-97922aa a.elementor-button:hover::before {
    transform: translateX(100%);
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-4c61173 *//* 1. Sblocco Totale: Impedisce a Elementor di tagliare grafiche */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu,
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu > li,
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item {
    overflow: visible !important;
}

/* 2. Base State del Testo */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item {
    transition: color 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    padding: 0 !important;
}

.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item:hover {
    color: #F9C80E !important;
}

/* 3. Spaziatura Reale (32px) */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu > li:not(:last-child) {
    margin-right: 32px !important;
}

/* 4. I Puntini (Perfetti) */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu > li:not(:last-child)::before {
    content: '';
    position: absolute;
    right: -18px;
    top: 50%;
    margin-top: -2px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #F9C80E !important;
    opacity: 0.2 !important;
    pointer-events: none;
}

/* ==========================================
   5. LA RIGA ANIMATA (ANTIPROIETTILE)
========================================== */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    bottom: -8px !important;
    
    /* La riga occupa l'intera larghezza della parola... */
    left: 0 !important;
    right: 0 !important; 
    height: 1px !important;
    background-color: #F9C80E !important;
    
    /* ...ma la comprimiamo a ZERO usando la scheda video */
    transform: scaleX(0) !important;
    transform-origin: center !important;
    
    /* La transizione è ancorata qui e non può essere annullata */
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
    
    /* Impedisce a Elementor di nasconderla con display: none */
    opacity: 1 !important;
    visibility: visible !important;
}

/* 6. Espansione della Riga all'Hover */
.elementor-64 .elementor-element.elementor-element-4c61173 .elementor-nav-menu .elementor-item:hover::after {
    transform: scaleX(1) !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c9b73d5 *//* ==========================================================================
   NAVBAR ULTRA-FLUIDA (ZERO LAG) - METODO OPACITY
   ========================================================================== */

/* 1. CONTENITORE PADRE: Niente animazioni di dimensione su Mobile! */
.elementor-64 .elementor-element.elementor-element-c9b73d5 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    width: 92vw !important;
    max-width: 92vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: 0 !important;
    right: 0 !important;
    transform: translateZ(0) !important; /* GPU Hack */
}

/* Su Desktop possiamo permetterci l'animazione del restringimento */
@media (min-width: 768px) {
    .elementor-64 .elementor-element.elementor-element-c9b73d5 {
        padding-top: 32px !important;
        padding-bottom: 32px !important;
        transition: padding 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }
    .elementor-64 .elementor-element.elementor-element-c9b73d5.elementor-sticky--effects {
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }
}

/* ==========================================================================
   2. LA PILLOLA (IL TRUCCO DEL FANTASMA)
   ========================================================================== */

/* Il contenitore reale rimane invisibile e non viene mai animato */
.elementor-64 .elementor-element.elementor-element-c9b73d5 .alsi-nav-pill {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: relative;
    z-index: 10;
}

/* IL FANTASMA: Ha già tutto il glassmorphism calcolato, ma è invisibile (opacity: 0) */
.elementor-64 .elementor-element.elementor-element-c9b73d5 .alsi-nav-pill::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 9999px; /* Arrotondamento a pillola */
    background-color: rgba(12, 10, 9, 0.7);
    backdrop-filter: blur(12px); /* Blur leggero per mobile */
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);
    
    /* LA MAGIA È QUI */
    opacity: 0;
    transition: opacity 0.3s ease-out !important; /* Animiamo SOLO l'opacità: 0 Lag! */
    z-index: -1; /* Sta dietro al logo e al pulsante */
    pointer-events: none;
    transform: translateZ(0); /* Aiuta Safari iOS */
}

/* Quando l'utente scorre, il fantasma appare istantaneamente e fluidamente */
.elementor-64 .elementor-element.elementor-element-c9b73d5.elementor-sticky--effects .alsi-nav-pill::before {
    opacity: 1;
}

/* Su Desktop alziamo la qualità del vetro */
@media (min-width: 768px) {
    .elementor-64 .elementor-element.elementor-element-c9b73d5 .alsi-nav-pill::before {
        backdrop-filter: blur(24px);
        -webkit-backdrop-filter: blur(24px);
    }
}/* End custom CSS */