.elementor-kit-6{--e-global-color-primary:#6B408F;--e-global-color-secondary:#6BC2D7;--e-global-color-text:#EEE9F4;--e-global-color-accent:#E8F6F8;--e-global-color-59ce05c:#202124;--e-global-color-85a46ce:#414245;--e-global-color-4c6205b:#DFE0E4;--e-global-color-b676924:#F8F7F4;--e-global-typography-primary-font-family:"Manrope";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-weight:500;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-weight:400;background-color:var( --e-global-color-b676924 );color:var( --e-global-color-85a46ce );font-family:"Manrope", Sans-serif;font-size:20px;font-weight:500;line-height:160%;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-59ce05c );font-family:"Manrope", Sans-serif;font-size:16px;font-weight:500;line-height:160%;color:var( --e-global-color-b676924 );border-radius:100px 100px 100px 100px;padding:14px 24px 14px 24px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-85a46ce );border-radius:100px 100px 100px 100px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:0px;}.elementor-kit-6 h1{color:var( --e-global-color-59ce05c );font-family:"Manrope", Sans-serif;font-size:64px;font-weight:600;line-height:120%;}.elementor-kit-6 h2{color:var( --e-global-color-59ce05c );font-family:"Manrope", Sans-serif;font-size:48px;font-weight:600;line-height:120%;}.elementor-kit-6 h3{color:var( --e-global-color-59ce05c );font-family:"Manrope", Sans-serif;font-size:32px;font-weight:600;line-height:120%;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1248px;}.e-con{--container-max-width:1248px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}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{font-size:16px;}.elementor-kit-6 h1{font-size:44px;}.elementor-kit-6 h2{font-size:34px;}.elementor-kit-6 h3{font-size:22px;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{padding:12px 22px 12px 22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Contatti nascosto su desktop e tablet */
.menu-contatti {
    display: none !important;
}

/* Contatti visibile solo su mobile */
@media (max-width: 767px) {
    .menu-contatti {
        display: block !important;
    }
}


.eyebrow-gradient {
    position: relative;
    width: fit-content;
    max-width: 100%;
    padding: 12px 24px;
    border-radius: 999px;
}

.eyebrow-gradient::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;

    background: linear-gradient(
        90deg,
        #6B408F 0%,
        #6BC2D7 100%
    );

    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;

    mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    mask-composite: exclude;

    pointer-events: none;
}

.eyebrow-gradient p {
    margin: 0;
}

/* ==========================================================
   PKH — CONTAINER CON DOPPIA OMBRA
   ========================================================== */

.shaded-container {
    box-shadow:
        -12px 24px 96px 4px rgba(107, 64, 143, 0.25),
         12px 24px 96px 4px rgba(107, 194, 215, 0.25);
}



/* ==========================================================
   PKH — FORM
   ========================================================== */


/* ----------------------------------------------------------
   CAMPI TESTO / EMAIL / TEL / TEXTAREA
   Desktop:
   24px orizzontale
   14px verticale
   ---------------------------------------------------------- */

.pkh-form .elementor-field-textual {
    box-sizing: border-box;
    padding: 14px 24px !important;
}


/* ==========================================================
   TEXTAREA — "Di cosa vuoi parlare?"
   ========================================================== */

.pkh-form
.elementor-form
.elementor-field-group-message
textarea#form-field-message {
    border-radius: 6px !important;
}



/* ==========================================================
   PRIVACY / ACCEPTANCE
   ========================================================== */

.pkh-form .elementor-field-type-acceptance .elementor-field-subgroup {
    width: 100%;
}


/* Contenitore checkbox + testo */

.pkh-form .elementor-field-type-acceptance .elementor-field-option {
    position: relative;
    display: block !important;
    width: 100%;
}


/* ----------------------------------------------------------
   INPUT REALE
   Rimane funzionale/cliccabile ma viene nascosto graficamente
   ---------------------------------------------------------- */

.pkh-form .elementor-field-type-acceptance input[type="checkbox"] {
    position: absolute !important;

    top: 1px;
    left: 0;

    width: 18px !important;
    height: 18px !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 0 !important;

    z-index: 2;

    cursor: pointer;
}


/* ----------------------------------------------------------
   TESTO PRIVACY
   ---------------------------------------------------------- */

.pkh-form .elementor-field-type-acceptance .elementor-field-option label {
    position: relative;
    display: block;

    /* 18px checkbox + 12px distanza */
    padding: 0 0 0 30px !important;
    margin: 0 !important;

    color: #414245 !important;

    font-family: "Manrope", sans-serif;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;

    cursor: pointer;
}


/* ----------------------------------------------------------
   CHECKBOX — STATO NORMALE
   ---------------------------------------------------------- */

.pkh-form .elementor-field-type-acceptance .elementor-field-option label::before {
    content: "";

    position: absolute;

    top: 1px;
    left: 0;

    width: 18px;
    height: 18px;

    box-sizing: border-box;

    background: transparent;

    border: 1px solid #D8DBE0;
    border-radius: 4px;
}


/* ----------------------------------------------------------
   CHECKBOX — STATO SELEZIONATO

   Sinistra:
   #6BC2D7 al 50%

   Destra:
   #6B408F al 50%
   ---------------------------------------------------------- */

.pkh-form
.elementor-field-type-acceptance
input[type="checkbox"]:checked + label::before {

    border-color: transparent;

    background: linear-gradient(
        90deg,
        rgba(107, 194, 215, 0.50) 0%,
        rgba(107, 64, 143, 0.50) 100%
    );
}


/* Check bianco */

.pkh-form
.elementor-field-type-acceptance
input[type="checkbox"]:checked + label::after {

    content: "";

    position: absolute;

    left: 6px;
    top: 4px;

    width: 5px;
    height: 9px;

    box-sizing: border-box;

    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;

    transform: rotate(45deg);
}


/* Focus da tastiera */

.pkh-form
.elementor-field-type-acceptance
input[type="checkbox"]:focus-visible + label::before {

    outline: 2px solid rgba(107, 64, 143, 0.35);
    outline-offset: 3px;
}



/* ==========================================================
   TABLET + MOBILE
   ========================================================== */

@media (max-width: 1024px) {

    /* Campi:
       22px orizzontale
       12px verticale */

    .pkh-form .elementor-field-textual {
        padding: 12px 22px !important;
    }

}


/* ==========================================================
   PKH HERO — BLOBS V2
   Più presenti, più alti e più dinamici
   ========================================================== */

.pkh-hero .lava-blob {
    position: absolute;
    display: block;

    aspect-ratio: 1 / 1;
    border-radius: 50%;

    /* Meno blur rispetto a prima */
    filter: blur(48px);

    transform: translate3d(0, 0, 0);
    will-change: transform;

    pointer-events: none;
}


/* ==========================================================
   01 — CYAN SINISTRA / ALTO-MEDIO
   ========================================================== */

.pkh-hero .lava-blob-1 {
    width: clamp(340px, 26vw, 440px);

    left: -9%;
    top: 14%;

    background: radial-gradient(
        circle,
        rgba(107, 194, 215, 0.82) 0%,
        rgba(107, 194, 215, 0.62) 42%,
        rgba(107, 194, 215, 0) 78%
    );

    animation: lava-move-1 12s ease-in-out infinite alternate;
}


/* ==========================================================
   02 — VIOLA DESTRA / ALTO
   ========================================================== */

.pkh-hero .lava-blob-2 {
    width: clamp(250px, 19vw, 320px);

    right: 3%;
    top: -8%;

    background: radial-gradient(
        circle,
        rgba(107, 64, 143, 0.48) 0%,
        rgba(107, 64, 143, 0.30) 45%,
        rgba(107, 64, 143, 0) 78%
    );

    animation: lava-move-2 14s ease-in-out infinite alternate;
    animation-delay: -5s;
}


/* ==========================================================
   03 — CYAN DESTRA / MEDIO-BASSO
   ========================================================== */

.pkh-hero .lava-blob-3 {
    width: clamp(320px, 25vw, 420px);

    right: -10%;
    top: 46%;

    background: radial-gradient(
        circle,
        rgba(107, 194, 215, 0.78) 0%,
        rgba(107, 194, 215, 0.55) 42%,
        rgba(107, 194, 215, 0) 78%
    );

    animation: lava-move-3 13s ease-in-out infinite alternate;
    animation-delay: -8s;
}


/* ==========================================================
   04 — VIOLA SINISTRA / BASSO-MEDIO
   ========================================================== */

.pkh-hero .lava-blob-4 {
    width: clamp(220px, 17vw, 290px);

    left: 26%;
    top: 58%;

    background: radial-gradient(
        circle,
        rgba(107, 64, 143, 0.42) 0%,
        rgba(107, 64, 143, 0.24) 45%,
        rgba(107, 64, 143, 0) 78%
    );

    animation: lava-move-4 15s ease-in-out infinite alternate;
    animation-delay: -3s;
}

@keyframes lava-move-1 {

    0% {
        transform:
            translate3d(-20px, 110px, 0)
            scale(0.95);
    }

    50% {
        transform:
            translate3d(55px, -105px, 0)
            scale(1.08);
    }

    100% {
        transform:
            translate3d(10px, 55px, 0)
            scale(1);
    }

}


@keyframes lava-move-2 {

    0% {
        transform:
            translate3d(20px, -45px, 0)
            scale(0.95);
    }

    50% {
        transform:
            translate3d(-65px, 140px, 0)
            scale(1.10);
    }

    100% {
        transform:
            translate3d(-15px, 40px, 0)
            scale(1);
    }

}


@keyframes lava-move-3 {

    0% {
        transform:
            translate3d(35px, 100px, 0)
            scale(1);
    }

    50% {
        transform:
            translate3d(-60px, -135px, 0)
            scale(1.08);
    }

    100% {
        transform:
            translate3d(10px, 20px, 0)
            scale(0.96);
    }

}


@keyframes lava-move-4 {

    0% {
        transform:
            translate3d(-30px, 80px, 0)
            scale(0.92);
    }

    50% {
        transform:
            translate3d(65px, -115px, 0)
            scale(1.12);
    }

    100% {
        transform:
            translate3d(15px, 35px, 0)
            scale(1);
    }

}

/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 1024px) {

    .pkh-hero .lava-blob {
        filter: blur(65px);
    }

    .pkh-hero .lava-blob-1 {
        width: 340px;
        left: -18%;
    }

    .pkh-hero .lava-blob-2 {
        width: 230px;
        right: -5%;
    }

    .pkh-hero .lava-blob-3 {
        width: 300px;
        right: -18%;
    }

    .pkh-hero .lava-blob-4 {
        display: none;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .pkh-hero .lava-blob {
        filter: blur(55px);
    }

    .pkh-hero .lava-blob-1 {
        width: 260px;
        left: -42%;
        top: 38%;
    }

    .pkh-hero .lava-blob-2 {
        display: none;
    }

    .pkh-hero .lava-blob-3 {
        width: 250px;
        right: -45%;
        bottom: 12%;
    }

    .pkh-hero .lava-blob-4 {
        display: none;
    }

}

@media (prefers-reduced-motion: reduce) {

    .pkh-hero .lava-blob {
        animation: none !important;
    }

}/* End custom CSS */