.elementor-kit-6{--e-global-color-primary:#003E7D;--e-global-color-secondary:#003E7D;--e-global-color-text:#003E7D;--e-global-color-accent:#003E7D;--e-global-typography-primary-font-family:"Raleway";--e-global-typography-primary-font-size:1em;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.3em;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Raleway";--e-global-typography-text-font-size:1em;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.3em;--e-global-typography-text-letter-spacing:0.07em;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#003E7D;font-family:"Raleway", Sans-serif;font-size:1em;line-height:1.3em;letter-spacing:0.05em;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#003E7D;font-family:"Raleway", Sans-serif;}.elementor-kit-6 h1{font-family:"Raleway", Sans-serif;}.elementor-kit-6 h2{font-family:"Raleway", Sans-serif;}.elementor-kit-6 h3{font-family:"Raleway", Sans-serif;}.elementor-kit-6 h4{font-family:"Raleway", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-text-font-size:1em;--e-global-typography-text-line-height:1.3em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-text-font-size:1.1em;--e-global-typography-text-line-height:1.3em;font-size:1.1em;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   MARANGON — ALONE FIGMA
   Colore: #003E7D
   Nessun intervento su immagini / border-radius
========================================================= */

.marangon-bottom-shadow {
    position: relative !important;
    overflow: visible !important;
    isolation: isolate !important;
}


/* =========================================================
   FONDO DEL BOX
   Rimane sopra all'alone
========================================================= */

.marangon-bottom-shadow::before {
    content: "" !important;

    position: absolute !important;

    inset: 0 !important;

    background: inherit !important;

    z-index: 1 !important;

    pointer-events: none !important;
}


/* =========================================================
   CONTENUTO DEL BOX
========================================================= */

.marangon-bottom-shadow > * {
    position: relative !important;
    z-index: 2 !important;
}


/* =========================================================
   ALONE ELLITTICO
========================================================= */

.marangon-bottom-shadow::after {
    content: "" !important;

    position: absolute !important;

    left: 50% !important;
    bottom: -55px !important;

    width: 108% !important;
    height: 350px !important;

    transform: translateX(-50%) !important;

    background:
        radial-gradient(
            ellipse at center,

            #003E7D 0%,
            rgba(0, 62, 125, 0.92) 20%,
            rgba(0, 62, 125, 0.72) 40%,
            rgba(0, 62, 125, 0.42) 58%,
            rgba(0, 62, 125, 0.18) 72%,
            rgba(0, 62, 125, 0.06) 84%,
            rgba(0, 62, 125, 0) 100%
        ) !important;

    border-radius: 50% !important;

    filter: blur(30px) !important;

    opacity: .42 !important;

    pointer-events: none !important;

    z-index: 0 !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {

    .marangon-bottom-shadow::after {
        bottom: -55px !important;

        width: 95% !important;
        height: 250px !important;

        filter: blur(30px) !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .marangon-bottom-shadow::after {
        bottom: -25px !important;

        width: 95% !important;
        height: 90px !important;

        filter: blur(14px) !important;
    }

}

/* =========================================
   MARANGON — GESTIONE LIVELLI
========================================= */

/* Sezione che contiene l'immagine con l'alone */
.marangon-shadow-section {
    position: relative !important;
    z-index: 1 !important;
}


/* Sezione successiva: deve stare sopra l'alone */
.marangon-front-section {
    position: relative !important;
    z-index: 5 !important;
}


/* =========================================================
   MARANGON — EXPERIENCE CARD HOVER
   Classe sul container esterno
========================================================= */

.marangon-experience-hover {
    position: relative !important;

    transition:
        transform .45s cubic-bezier(.22, .61, .36, 1),
        box-shadow .45s cubic-bezier(.22, .61, .36, 1) !important;
}


/* =========================================
   HOVER CARD
========================================= */

.marangon-experience-hover:hover {
    transform: translateY(-7px) !important;

    box-shadow:
        0 10px 20px rgba(0, 62, 125, .10),
        0 20px 40px rgba(0, 62, 125, .13) !important;
}


/* =========================================
   BADGE / IMMAGINE
========================================= */

.marangon-experience-hover .elementor-widget-image {
    transition:
        transform .45s cubic-bezier(.22, .61, .36, 1) !important;
}


/* Movimento indipendente del badge */

.marangon-experience-hover:hover .elementor-widget-image {
    transform:
        translateY(-4px)
        scale(1.035) !important;
}


/* =========================================
   TESTO
========================================= */

.marangon-experience-hover .elementor-widget-text-editor {
    transition:
        transform .45s cubic-bezier(.22, .61, .36, 1) !important;
}


.marangon-experience-hover:hover .elementor-widget-text-editor {
    transform: translateX(4px) !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {

    .marangon-experience-hover:hover {
        transform: translateY(-5px) !important;
    }

    .marangon-experience-hover:hover .elementor-widget-image {
        transform:
            translateY(-3px)
            scale(1.025) !important;
    }

    .marangon-experience-hover:hover .elementor-widget-text-editor {
        transform: translateX(3px) !important;
    }

}


/* =========================================================
   MOBILE
   Nessun hover persistente sui dispositivi touch
========================================================= */

@media (max-width: 767px) {

    .marangon-experience-hover:hover {
        transform: none !important;
    }

    .marangon-experience-hover:hover .elementor-widget-image,
    .marangon-experience-hover:hover .elementor-widget-text-editor {
        transform: none !important;
    }

}


/* =========================================================
   MARANGON — UNIVERSAL HOVER LIFT
   Applicabile a qualsiasi container
========================================================= */

.marangon-hover-lift {
    position: relative !important;

    transition:
        transform .45s cubic-bezier(.22, .61, .36, 1),
        box-shadow .45s cubic-bezier(.22, .61, .36, 1) !important;
}


/* =========================================
   HOVER
========================================= */

.marangon-hover-lift:hover {
    transform: translateY(-6px) !important;

    box-shadow:
        0 10px 22px rgba(0, 62, 125, .10),
        0 20px 42px rgba(0, 62, 125, .15) !important;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .marangon-hover-lift:hover {
        transform: translateY(-4px) !important;

        box-shadow:
            0 8px 18px rgba(0, 62, 125, .09),
            0 16px 32px rgba(0, 62, 125, .13) !important;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .marangon-hover-lift:hover {
        transform: none !important;
    }

}







/* =========================================================
   MARANGON — PREMIUM SOFT FRAME
   Cornice completa, sottile e sfumata
   Classe Elementor: marangon-premium-border
========================================================= */

.marangon-premium-border {

    /* elimina eventuale bordo Elementor */
    border: none !important;

    background-image:

        /* TOP — più presente a destra */
        linear-gradient(
            to left,
            rgba(255,255,255,.34) 0%,
            rgba(255,255,255,.20) 28%,
            rgba(255,255,255,.08) 58%,
            rgba(255,255,255,0) 100%
        ),

        /* RIGHT — più presente in alto */
        linear-gradient(
            to bottom,
            rgba(255,255,255,.34) 0%,
            rgba(255,255,255,.20) 28%,
            rgba(255,255,255,.08) 58%,
            rgba(255,255,255,0) 100%
        ),

        /* BOTTOM — più presente a sinistra */
        linear-gradient(
            to right,
            rgba(255,255,255,.28) 0%,
            rgba(255,255,255,.16) 32%,
            rgba(255,255,255,.06) 65%,
            rgba(255,255,255,0) 100%
        ),

        /* LEFT — più presente in basso */
        linear-gradient(
            to top,
            rgba(255,255,255,.28) 0%,
            rgba(255,255,255,.16) 32%,
            rgba(255,255,255,.06) 65%,
            rgba(255,255,255,0) 100%
        ) !important;


    /* LINEE */

    background-size:
        100% 1px,
        1px 100%,
        100% 1px,
        1px 100% !important;


    /* POSIZIONE */

    background-position:
        top right,
        top right,
        bottom left,
        bottom left !important;


    background-repeat: no-repeat !important;
}


/* =========================================================
   MARANGON — H1 / H2 LETTER REVEAL
   DESKTOP + TABLET + MOBILE
========================================================= */


/* =========================================================
   BASE — LETTERA
========================================================= */

.elementor-widget-heading
.elementor-heading-title
.marangon-letter {

    display: inline-block;

    opacity: 0;

    transform:
        translateY(22px)
        rotate(2deg);

    will-change:
        opacity,
        transform;
}


/* =========================================================
   PAROLA
   Non spezza le singole parole
========================================================= */

.elementor-widget-heading
.elementor-heading-title
.marangon-word {

    display: inline-block;
}


/* =========================================================
   H1 — ANIMAZIONE
========================================================= */

.elementor-widget-heading.marangon-title-visible
h1.elementor-heading-title
.marangon-letter {

    animation-name: marangonH1Reveal;

    animation-duration: 1.15s;

    animation-timing-function:
        cubic-bezier(.16, 1, .3, 1);

    animation-fill-mode: forwards;

    animation-delay:
        calc(var(--i) * 45ms);
}


/* =========================================================
   H2 — ANIMAZIONE
========================================================= */

.elementor-widget-heading.marangon-title-visible
h2.elementor-heading-title
.marangon-letter {

    animation-name: marangonH2Reveal;

    animation-duration: .55s;

    animation-timing-function:
        cubic-bezier(.16, 1, .3, 1);

    animation-fill-mode: forwards;

    animation-delay:
        calc(var(--i) * 14ms);
}


/* =========================================================
   KEYFRAMES H1
========================================================= */

@keyframes marangonH1Reveal {

    from {

        opacity: 0;

        transform:
            translateY(22px)
            rotate(2deg);
    }

    to {

        opacity: 1;

        transform:
            translateY(0)
            rotate(0);
    }

}


/* =========================================================
   KEYFRAMES H2
========================================================= */

@keyframes marangonH2Reveal {

    from {

        opacity: 0;

        transform:
            translateY(18px)
            rotate(1.5deg);
    }

    to {

        opacity: 1;

        transform:
            translateY(0)
            rotate(0);
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {

    .elementor-widget-heading
    h1.elementor-heading-title,

    .elementor-widget-heading
    h2.elementor-heading-title {

        white-space: normal;
    }


    /* H1 */

    .elementor-widget-heading.marangon-title-visible
    h1.elementor-heading-title
    .marangon-letter {

        animation-duration: 1s;

        animation-delay:
            calc(var(--i) * 38ms);
    }


    /* H2 */

    .elementor-widget-heading.marangon-title-visible
    h2.elementor-heading-title
    .marangon-letter {

        animation-duration: .45s;

        animation-delay:
            calc(var(--i) * 12ms);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .elementor-widget-heading
    h1.elementor-heading-title,

    .elementor-widget-heading
    h2.elementor-heading-title {

        white-space: normal;
    }


    /* H1 */

    .elementor-widget-heading.marangon-title-visible
    h1.elementor-heading-title
    .marangon-letter {

        animation-duration: .9s;

        animation-delay:
            calc(var(--i) * 30ms);
    }


    /* H2 */

    .elementor-widget-heading.marangon-title-visible
    h2.elementor-heading-title
    .marangon-letter {

        animation-duration: .4s;

        animation-delay:
            calc(var(--i) * 10ms);
    }

}/* End custom CSS */