/* IMPOSTO COLORI INDICOO */


:root {
    --testo: #333;
    --colore-primario: #a88cfc;
    --colore-secondario: #dcd1fd;
    --verde: #22d0aa;
    --font-family-inter: "Inter", sans-serif;
    --font-optical-sizing: auto;
    --font-weight-100: 100;
    --font-weight-200: 200;
    --font-weight-300: 300;
    --font-weight-400: 400;
    --font-weight-500: 500;
    --font-weight-600: 600;
    --font-weight-700: 700;
    --font-weight-800: 800;
    --font-weight-900: 900;
    --font-style-normal: normal;

}

/* FONT */



BODY {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    color: var(--testo);
    font-family: var(--font-family-inter);
    font-weight: var(--font-weight-400);
    font-style: var(--font-style-normal);
    font-optical-sizing: var(--font-optical-sizing);
}

a {
    color: #333;
    text-decoration: none
}

/*HEADER*/

.user-menu {
    width: 100vw;
    height: 5vh;
    background-color: #333;
    color: #fff;
    position: fixed;
    z-index: 9999999999;
    line-height: 5vh;
    font-size: .9em;
}

.user-menu a {
    color: #866ebb;
}

.user-menu-col {
    line-height: 5vh;
    font-size: .9em;
}

.user-menu-notifiche {
    line-height: 5vh;
    font-size: .9em;
}

.indicoo-header {
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    padding: 44px 0;
    position: fixed;
    transition: padding .3s;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
}

.indicoo-header .container {
    max-width: 1200px;
}

.indicoo-header-mappa {
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    padding: 44px 0;
    position: fixed;
    transition: padding .3s;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    background-color: #5a4383e8;
}



header .logo {
    width: 200px;
}

header #logo {
    opacity: 1;
    position: absolute;
}

header #logo-c {
    opacity: 0;
    position: absolute;
    margin-right: -100px;
}


/*SEZIONI*/

.hero.home {
    overflow: hidden;
    padding: 200px 0 160px;
    background: url('../images/indicoo-background.svg') center/cover no-repeat, linear-gradient(100deg, rgba(255, 18, 118, 1) 0%, rgba(67, 46, 95, 1) 100%);
}

.hero.pagina {
    overflow: hidden;
    padding: 200px 0 160px;
    background: url('../images/indicoo-background.svg') center/cover no-repeat, linear-gradient(100deg, rgba(255, 18, 118, 1) 0%, rgba(67, 46, 95, 1) 100%);
}

.hero.mappa {
    overflow: hidden;
    padding: 200px 0 160px;
    height: 85vh;
}

section {
    width: 100%;
    margin: 0;
}

section.hero {
    min-height: 75vh;
}

section.hero.pagina {
    min-height: 50vh;
}

/* TAGS HERO */

.tags {
    color: #fff;
    margin-top: 2rem;
}

.tags .tag {
    display: inline-block;
    padding: 6px 10px;
    border: 1px solid #fff;
    border-radius: 5px;
    font-size: .8em;
    text-transform: uppercase;
    margin-right: 8px;
    transition: all .2s ease;
    margin-bottom: 10px;
}

.tags .tag:hover {
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 0 #1f1d0d
}

.tags .tag a {
    color: #ffF;
}

h1.banner_big_title {
    font-size: 4.5em;
    color: #fff;
    font-weight: var(--font-weight-400);
    padding-right: 20vw;
    transition: all .6s ease;
}

h1.banner_big_title .bold {
    font-weight: var(--font-weight-700);
}

.banner_description {
    color: #fff;
    font-family: "Inter", sans-serif;
    font-size: 1.2em;
}


.container {
    max-width: 1200px !important;
    padding-left: 15px;
    padding-right: 15px;
}

.section-spazio {
    padding-top: 120px;
    padding-bottom: 120px;
}


/* NAVIGAZIONE */

nav ul {
    margin-top: 15px;
}

nav ul li {
    list-style-type: none;
    display: inline-block;
    margin-right: 20px;
    position: relative;
    font-weight: var(--font-weight-400);
    transition: all .2s ease;
    text-transform: uppercase;
    font-size: .9em;
}

nav ul li a {
    text-decoration: none;
    transition: all .6s ease;
    color: #fff;
    padding: 6px 8px;
}

nav ul li a:hover {
    border-radius: 8px;
    background-color: #fff;
    color: #A88AFF;
    text-decoration: none;
}

nav ul.color-change li a {
    color: #ee1574;
}

nav ul.color-change li a:hover {
    color: #fff;
    background-color: #A88AFF;
}


header .pulsanti-menu {
    position: absolute;
    right: 300px;
}

header .accedi {
    display: inline-block;
    right: 200px;
    top: 50px;
    border: 1px solid #fff;
    padding: 5px 15px;
    color: #fff;
    border-radius: 5px;
    transition: all .6s ease;
}

header .accedi a {
    color: #fff;
}

header .accedi:hover a {
    color: #a88cfc;
}

header .accedi:hover {
    background-color: #fff;
}

header .iscriviti {
    display: inline-block;
    top: 50px;
    border: 1px solid #fff;
    background-color: #fff;
    padding: 5px 15px;
    color: #a88cfc;
    border-radius: 5px;
    transition: all .6s ease;
    margin-left: 14px;
}

header .iscriviti a {
    color: #a88cfc;
}

header .iscriviti:hover a {
    color: #fff;
}

header .iscriviti:hover {
    background-color: #a88cfc;
}

#iscriviti.color-change {
    border: #a88cfc 1px solid;
}

#accedi.color-change {
    border: #a88cfc 1px solid;
    background-color: #a88cfc;
    color: #fff;
}

#accedi.color-change:hover {
    border: #a88cfc 1px solid;
    background-color: #fff;
    color: #a88cfc;
}

#accedi.color-change a {
    color: #fff;
}

#accedi.color-change:hover a {
    color: #a88cfc;
}



/*SLIDER SLICK*/

.section-slider {
    padding-top: 120px;
    padding-bottom: 120px;
}

.img-slider {
    border-radius: 5px;
    background-color: #a88cfc;
    width: 90%;
    margin-left: 5%;
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
}

.titolo-slider {
    color: #333;
    font-size: 3em;
    font-weight: var(--font-weight-400);
    margin-bottom: 2rem;
    line-height: 1.2em;
}

.titolo-slider .bold {
    font-weight: var(--font-weight-700);
}


/* SEZIONE STORIE */
/*SLIDER SLICK*/

.section-storie {
    padding-top: 120px;
    padding-bottom: 120px;
}

.storia {
    padding: 3%
}

.img-storie {
    border-radius: 5px;
    background-color: #a88cfc;
    width: 90%;
    margin-left: 5%;
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
}

.titolo-storie {
    color: #A88AFF;
    font-size: 4em;
    font-style: normal;
    font-weight: 400;
    line-height: 3.3rem;
    margin-bottom: 3rem;
    margin-top: 3rem;
}

.titolo-storie .bold {
    font-weight: var(--font-weight-700);
}

.testo-storie {
    color: #333;
    font-size: 1.4em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.testo-storie .bold {
    font-weight: 700;
}

.section-storie .pulsante {
    border-radius: 49.5px;
    border: 0.762px solid #333;
    background: #333;
    color: #fff;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 15px 38px 15px 38px;
    margin-top: 40px;
    width: auto;
    display: inline-block;

}

/*SEZIONE NETWORKING*/

.section-networking {
    padding-top: 150px;
    padding-bottom: 150px;
    background: url(../images/indicoo-mappa-italia-1.svg) lightgray -359.467px -703.613px / 160.875% 317.343% no-repeat;
    mix-blend-mode: multiply;
}

.section-networking .networking-content {
    background: #333;
    color: #fff;
    min-height: 300px;
    background: linear-gradient(106deg, rgba(168, 138, 255, 0.00) 59.94%, #A88AFF 111.52%), #333;
    padding: 70px 80px;
    border-radius: 25px;
}

.section-networking .networking-content a {
    color: #fff;
}

.section-networking .networking-content .titolo {
    color: #A88AFF;
    font-size: 4em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 50px;
}

.section-networking .networking-content .sottotitolo {
    color: #A88AFF;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 30px;
}


.section-networking .networking-content .link {
    font-size: 1.6em;
    border-bottom: 1px solid aliceblue;
    padding-bottom: 30px;
    margin-bottom: 30px;
}

.section-networking .networking-content .pulsante {
    width: 30px;
    height: 30px;
    background-image: url(../images/freccia.svg);
    background-size: contain;
    background-repeat: no-repeat;

}

/* SEZIONE SHORTIES */

.section-shorties {
    padding-top: 120px;
    padding-bottom: 120px;
}

.section-shorties .video-container {
    margin-top: 100px;
}

.section-shorties .titolo {
    color: #A88AFF;
    font-size: 50px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    padding-bottom: 10px;
}

.section-shorties .sottotitolo {
    color: #333;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.section-shorties .pulsante {
    border-radius: 50px;
    border: 2px solid #A88AFF;
    background: #FFF;
    box-shadow: 5px 5px 0px 0px rgba(168, 138, 255, 0.30), 10px 10px 0px 0px rgba(168, 138, 255, 0.30);
    padding: 20px 50px;
    color: #A88AFF;
    font-size: 20px;
    text-align: center;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.section-shorties .video-titolo {
    color: #333;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-top: 0.9rem;
    margin-bottom: .2rem;
}

.section-shorties .video-autore {
    color: #858C94;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.section-shorties .video-thumb img {
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
    border-radius: 10px;
    cursor: pointer;
}

.section-shorties .video-autore-immagine img {
    border-radius: 100px;
    width: 80px;
    height: 80px;
    padding: 3px;
    border: 3px solid #a88aff;
}

.video-autore-immagine img {
    border-radius: 100px;
    width: 80px;
    height: 80px;
    padding: 3px;
    border: 3px solid #a88aff;
}

/* SEZIONE OPPORTUNITA */

.section-opportunita {
    padding-top: 120px;
    padding-bottom: 120px;

    background: linear-gradient(334deg, rgba(255, 255, 255, 0.00) 62.59%, #FFF 105.64%), #A88AFF;
}

.section-opportunita .opportunita {
    border-radius: 15.231px;
    border: 2px solid #A88AFF;
    background: #FFF;
    box-shadow: 10px 10px 0px 0px rgba(255, 255, 255, 0.50);
    padding: 30px;
    width: 80%;
    margin-left: 10%
}

.section-opportunita .opportunita-image {
    border-radius: 15.231px;
    background: #A88AFF50;
    height: 206px;
}

.section-opportunita .opportunita-title {
    color: #A88AFF;
    font-size: 38.077px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 30px;
}

.section-opportunita .opportunita-text .titolo {
    color: #333;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-top: 30px;
}

.section-opportunita .opportunita-text .testo {
    color: #333;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 10px;
}

.section-opportunita .pulsante {
    border-radius: 49.5px;
    border: 0.762px solid #333;
    background: #333;
    color: #fff;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 15px 38px 15px 38px;
    margin-top: 40px;
    width: auto;
    display: inline-block
}


.section-opportunita .opportunita-link {
    width: 80%;
    margin-left: 10%;
    margin-top: 90px;
}



.section-opportunita .opportunita-link .titolo {
    color: #FFF;
    font-size: 50px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.section-opportunita .opportunita-link .testo {
    color: #FFF;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 20px;
}

/* FINE SEZIONE SHORTIES */

/*SEZIONE cOOPERATIVA*/
.section-cooperativa {
    background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, .8) 100%), linear-gradient(0deg, #FFF 0%, #FFF 100%), url(../images/bg-cooperativa.jpg) lightgray 50% / cover no-repeat;
    background-blend-mode: normal, color, normal;

    padding-top: 120px;
    padding-bottom: 120px;
}

.section-cooperativa .titolo {
    color: #A88AFF;
    font-size: 64px;
    font-style: normal;
    font-weight: 400;
    line-height: 60px;
}

.section-cooperativa .titolo .bold {
    font-weight: 700;
}

.section-cooperativa .testo {
    color: #333;
    font-kerning: none;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 30px;
}

.section-cooperativa .pulsante {
    border-radius: 65px;
    border: 2px solid #333;
    background: rgba(51, 51, 51, 0.00);
    display: inline-block;
    padding: 10px 20px;
    color: #333;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 30px;
}

/*FINE SEZIONE COOPERATIVA*/



/* SEZIONE REGISTRAZIONE */

.section-registrazione {
    padding-top: 40px;
    padding-bottom: 120px;
    background: #f7f7f7;
}


/* FINE SECTION REGISTRAZIONE */


/* SEZIONE PAGINA */

.section-pagina {
    padding-top: 40px;
    padding-bottom: 120px;
    background: #f7f7f7;
}

.page {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
}

h1.page-heading {
    color: #333;
    font-size: 50px;
    font-style: normal;
    font-weight: 500;
    line-height: 50px;
    padding-bottom: 10px;
}

.page-heading-description {
    color: #333;
    font-size: 1.4em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.page-heading b {
    font-weight: 700;
}

/* FINE SEZIONE PAGINA */


/*SEZIONE FULL*/

.section-full {
    padding-top: 120px;
    padding-bottom: 120px;
}

.image-full img {
    border-radius: 5px;
}



footer {
    min-height: 30vh;
    background-color: #333;
    color: #fff;
    padding-top: 70px;
    padding-bottom: 10px;
}

footer ul.menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

footer ul.menu li {
    margin-bottom: 15px;
}

footer ul.menu li a {
    color: #fff;
    text-decoration: none;
    transition: all .3s ease;
}

footer ul.menu li a:hover {
    margin-left: 4px;
}

footer .copyright {
    padding-top: 40px;
    padding-bottom: 40px;
    border-top: 1px solid #424040;
    font-size: .9em;
    margin-top: 40px;
}



/*GENERALI*/

.image-br {
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
    border-radius: 10px;
}


.unordered_list, .unordered_list_center, .unordered_list_end {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

/*LINK SOCIAL*/

.social_links {
    margin: -6px
}

.social_links>li {
    padding: 6px;
    list-style-type: none;
}

.social_links a {
    z-index: 1;
    width: 40px;
    height: 40px;
    display: flex;
    position: relative;
    border-radius: 100%;
    align-items: center;
    justify-content: center
}

.social_links a:after,
.social_links a:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    z-index: -1;
    position: absolute;
    border-radius: 100%;
    transition: .4s cubic-bezier(.25, 1, .5, 1)
}

.social_links a:before {
    border: 2px solid #ed1473;
}

.social_links a:after {
    background-color: #ed1473;
}

.social_links a i {
    color: #333;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
}

.social_links a:hover:before {
    transform: scale(1.1)
}

.social_links a:hover:after {
    transform: scale(.8)
}


/*BARRA PROGRESSO*/
#progress-container {
    width: 100%;
    background-color: transparent;
    position: fixed;
    top: 0;
    left: 0;
    height: 8px;
    z-index: 99;
}

#progress-bar {
    height: 100%;
    width: 0;
    background-color: #ed1473;
    transition: width 0.1s ease;
}


/* FORM DI REGIOSTRAZIONE */

.register_form {
    z-index: 1;
    padding: 60px;
    position: relative;
    border-radius: 8px;
    background-color: #fff;
    border: 2px solid #1f1d0d;
    box-shadow: 2px 2px 30px rgba(31, 29, 13, .12), 10px 10px 0 0 #1f1d0d;
}

.register_heading {
    color: #333;
    font-size: 50px;
    font-style: normal;
    font-weight: 500;
    line-height: 1em;
    padding-bottom: 10px;
}

.register_heading_description {
    color: #333;
    font-size: 1.1em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 40px;
}

.register_heading b {
    font-weight: 700;
}

.form_item {
    position: relative;
    margin-bottom: 30px
}

.form_item input,
.form_item select,
.form_item textarea {
    width: 100%;
    outline: 0;
    display: block;
    box-shadow: none;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
    border-radius: 8px;
    border: 2px solid #d2d2d2
}

.form_item input:focus,
.form_item select:focus,
.form_item textarea:focus {
    outline: 0;
    box-shadow: none
}

.form_item input:disabled,
.form_item select:disabled,
.form_item textarea:disabled {
    outline: 0;
    box-shadow: none;
    background-color: #f4f4f4
}

.form_item input {
    height: 60px;
    padding: 0 20px
}

.form_item textarea {
    min-height: 180px;
    padding: 15px 20px
}

.form_item select {
    height: 60px;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-size: 12px;
    padding: 0 40px 0 20px;
    color: #717580;
    border: none;
    border-radius: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
    transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
    position: relative;
    background-image: none;
    font-family: var(--font-family-inter);
    text-transform: uppercase;
    font-size: 13px;
}

.form_item:has(.btn) {
    display: flex;
    margin-bottom: 60px
}

.form_item:has(.btn) input {
    flex: 0 0 370px;
    margin-right: 20px;
    border-color: #1f1d0d
}

.input_title {
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 16px;
    color: #1f1d0d;
    margin-bottom: 6px;
    font-family: "Inter",
}

:-moz-placeholder {
    color: rgba(31, 29, 13, .5)
}

::-moz-placeholder {
    color: rgba(31, 29, 13, .5)
}

:-ms-input-placeholder {
    color: rgba(31, 29, 13, .5)
}

::-webkit-input-placeholder {
    color: rgba(31, 29, 13, .5)
}

.checkbox_item {
    position: relative;
    padding-left: 26px;
    margin-bottom: 30px
}

.checkbox_item input {
    left: 0;
    top: 4px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: absolute;
    border-radius: 8px;
    border: 1px solid #1f1d0d;
    background-color: #fff
}

.checkbox_item input:before {
    top: 50%;
    left: 50%;
    opacity: 0;
    line-height: 1;
    font-size: 8px;
    content: "";
    font-weight: 700;
    position: absolute;
    transform: translate(-50%, -50%);
    font-family: "Font Awesome 5 Pro"
}

.checkbox_item input:checked {
    background-color: #f7ff62
}

.checkbox_item input:checked:before {
    opacity: 1
}

.checkbox_item label {
    margin: 0;
    cursor: pointer;
    font-size: 16px;
    line-height: 24px
}




/* FORM REGISTRAZIONE - ALT  */

.registrazione-alt {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
}

.container-mappa {
    border-radius: 8px;
    margin-top: -5em;
    background-color: #fff;
    padding: 30px 50px;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    z-index: 10;
    position: relative;
}

.registrazione-alt .step {
    border: 1px dashed #333;
    border-radius: 8px;
    padding: 30px 20px;
    background-color: #f7f7f7;
}

.registrazione-alt ::placeholder {
    color: rgb(51, 51, 51);
    text-transform: uppercase;
    font-size: 13px;
}

.registrazione-alt .socio-cooperativa {
    display: inline-block;
    width: 49.5%;
}



.registrazione-alt input, select, textarea, .form-control, .form-select {
    padding: 12px 25px;
    width: 100%;
    max-width: 100%;
    resize: none;
    outline: none;
    font-size: 13px;
    border: 1px solid #e4e4e4;
    border-radius: 0;
    color: #717580;
    line-height: inherit;
    word-break: normal;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
    transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
    position: relative;
}

/* Stile base per la select */
.indicoo-select {
    appearance: none;
    /* Rimuove lo stile di default del browser */
    background-color: white;
    border: 1px solid #a88cfc;
    /* Colore del bordo personalizzato */
    border-radius: 4px;
    padding: 10px;
    width: 100%;
    color: #333;
    /* Colore del testo */
    font-size: 16px;
    cursor: pointer;
    position: relative;
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23a88cfc" viewBox="0 0 16 16"><path d="M7.247 11.14l-4.796-5.481c-.566-.647-.106-1.659.764-1.659h9.576c.87 0 1.33 1.011.764 1.659l-4.796 5.481c-.374.427-1.054.427-1.428 0z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 1em;
}

/* Stile per quando la select è in stato di focus */
.indicoo-select:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(168, 140, 252, 0.3);
    /* Effetto di focus con ombra */
}

/* Stile per le opzioni */
.indicoo-select option {
    background-color: white;
    color: #333;
    padding: 10px;
    font-size: 16px;
}

.registrazione-alt input:focus,
.registrazione-alt select:focus,
.registrazione-alt textarea:focus,
.form-control:focus,
.form-select:focus {
    /* Inserisci qui le proprietà di stile desiderate per lo stato di focus */
    outline: 1px solid #a88cfc;
    /* Cambia il bordo quando l'elemento è in focus */
    background-color: #dcd1fd20;
    /* Cambia il colore di sfondo quando l'elemento è in focus */
    /* Aggiungi altre proprietà di stile se necessario */
}


.registrazione-alt .form_item span.bi {
    position: absolute;
    right: 1.35em;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #EE1574;
    font-size: 1.2em;
}

/* Stile specifico per le textarea */
.registrazione-alt .form_item textarea+span.bi {
    top: 0.7em;
    /* Imposta l'icona in alto */
    transform: translateY(0);
    /* Rimuovi il posizionamento centrale */
}




.btn-group .btn {
    width: 100%;
    /* Rende i pulsanti larghi quanto il container */
    margin-bottom: 10px;
    /* Aggiunge spazio tra i pulsanti */
    text-align: left;
    /* Allinea il testo a sinistra */
    padding: 15px 20px;
    /* Aumenta la spaziatura interna del pulsante */
}

.btn-check {
    position: absolute;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.btn-group .btn-check:checked+.btn,
.btn-group .btn-check:focus+.btn {
    background-color: #EE1574;
    /* Colore di sfondo del pulsante attivo */
    color: #fff;
    /* Colore del testo del pulsante attivo */
    border-color: #EE1574;
    /* Colore del bordo del pulsante attivo */
}

.btn-group .btn:hover {
    background-color: #dcd1fd;
    /* Colore di sfondo del pulsante al passaggio del mouse */
    color: #333;
    /* Colore del testo al passaggio del mouse */
    border-color: #dcd1fd;
    /* Colore del bordo al passaggio del mouse */
}

#socio-si {
    display: none
}

#socio-no {
    display: none
}


.btn-outline-socio {
    border: 2px solid #333;
    margin: 10px;
    border-radius: 8px !important;
}

.btn-outline-socio .risposta {
    font-size: 4em;
    font-weight: 600;
    color: #333;
}

.btn-outline-socio .testo {
    font-size: 1.1em;
    font-weight: 400;
    color: #333;
    line-height: 1.2em
}

#cooperatore, #aspirante-cooperatore {
    display: none
}



/*CALENDARIO DATEPICKER*/

.datepicker table tr td span.active, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active.disabled:hover, .datepicker table tr td span.active:hover {
    background-color: #a88cfc;
    background-image: -moz-linear-gradient(to bottom, #a88cfc, #a88cfc);
    background-image: -ms-linear-gradient(to bottom, #a88cfc, #a88cfc);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#a88cfc), to(#a88cfc));
    background-image: -webkit-linear-gradient(to bottom, #a88cfc, #a88cfc);
    background-image: -o-linear-gradient(to bottom, #a88cfc, #a88cfc);
    background-image: linear-gradient(to bottom, #a88cfc, #a88cfc);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
    border-color: #a88cfc #a88cfc #a88cfc;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #333;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}

/* Pulsanti radio personalizzati */


/* Stile per i radio button */


/* Stile per i radio button e checkbox */
.custom-radio, .custom-checkbox {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.custom-radio label, .custom-checkbox label {
    display: inline-block;
    padding: 6px 15px;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 8px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    font-family: "Inter", ;
    border: 1px dashed #a88cfc;
    text-transform: uppercase;
}

.custom-radio input[type="radio"], .custom-checkbox input[type="checkbox"] {
    display: none;
    /* Nasconde i radio button e checkbox standard */
}

.custom-radio input[type="radio"]:checked+label, .custom-checkbox input[type="checkbox"]:checked+label {
    background-color: #ee1574;
    /* Colore principale */
    color: #fff;
    border-color: #ee1574;

}

.custom-radio label:hover, .custom-checkbox label:hover {
    border-color: #a88cfc;
    /* Cambia bordo al passaggio del mouse */
}

.custom-radio input[type="radio"]:checked+label::before, .custom-checkbox input[type="checkbox"]:checked+label::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f00c";
    /* Simbolo di spunta */
    font-size: 1rem;
    margin-right: 8px;
}

/* Animazione quando il radio button o checkbox viene selezionato */
.custom-radio input[type="radio"]:checked+label, .custom-checkbox input[type="checkbox"]:checked+label {
    animation: pop 0.2s ease-in-out;
}

@keyframes pop {
    0% {
        transform: scale(0.9);
    }

    100% {
        transform: scale(1);
    }
}

/* Stile per il pulsante di invio */
.custom-button {
    display: inline-block;
    padding: 10px 20px;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 8px;
    background-color: #e81372;
    color: #fff;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    text-align: center;
    margin-top: 20px;
}

.custom-button:hover {
    background-color: #9175e6;
    /* Colore di sfondo del pulsante al passaggio del mouse */
    color: #fff;
    /* Colore del testo al passaggio del mouse */
    border-color: #9175e6;
    /* Colore del bordo al passaggio del mouse */
}

.custom-button-2 {
    display: inline-block;
    padding: 10px 20px;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 8px;
    background-color: #333;
    color: #fff;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    text-align: center;
    margin-top: 20px;
}

.custom-button-2:hover {
    background-color: #a88cfc;
    /* Colore di sfondo del pulsante al passaggio del mouse */
    color: #fff;
    /* Colore del testo al passaggio del mouse */
    border-color: #a88cfc;
    /* Colore del bordo al passaggio del mouse */
}

/* Stile per il pulsante disabilitato */
.custom-button:disabled {
    background-color: #a88aff70;
    color: #fefefe94;
    cursor: not-allowed;
    border: 2px solid transparent;
}

/* Rimuovi gli effetti di hover e focus per il pulsante disabilitato */
.custom-button:disabled:hover,
.custom-button:disabled:focus {}

.custom-button:focus, .custom-button:active {
    outline: none;
    background-color: #9175e6;
    /* Colore per focus */
}


/* Breadcrums */

.breadcrumb_nav {
    margin-bottom: 50px;
    font-family: "Inter", ;
}

.breadcrumb_nav a {
    color: #fff;
}

.breadcrumb_nav>li:not(:last-child)::after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    top: 1px;
    right: -5px;
    opacity: .7;
    font-weight: 400;
    content: "\f054";
    position: absolute;
}

.breadcrumb_nav>li:not(:last-child)::after {
    top: 1px;
    right: -5px;
    opacity: .7;
    font-weight: 400;
    font-weight: 900;
    content: "\f054";
    position: absolute;
    font-family: "Font Awesome 6 Free";
}

.breadcrumb_nav>li:not(:last-child) {
    margin-right: 12px;
    padding-right: 12px;
}

ul.breadcrumb_nav {
    display: inline;
    margin: 0;
    padding: 0;
}

.breadcrumb_nav>li:not(:last-child) {
    margin-right: 12px;
    padding-right: 12px;
}

.breadcrumb_nav>li {
    line-height: 1;
    font-size: 13px;
    font-weight: 500;
    position: relative;
    color: #fefefe80;
    text-transform: uppercase;
}

ul.breadcrumb_nav li {
    list-style-type: none;
    display: inline;
    text-transform: uppercase;
}



/* PAGINA STANDARD*/

.section-page {
    padding-top: 40px;
    padding-bottom: 120px;
}

.content-page {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
}

.page-card {
    overflow: hidden;
    position: relative;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
    padding: 28px 28px 32px;
    border-radius: 8px;
    background-color: #fff;
    border: 2px solid #a88cfc;
    margin-bottom: 30px;
}


/* ARCHIVI */

.section-archivio {
    padding-top: 40px;
    padding-bottom: 120px;
}

.content-archivio {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
}

.archivio-card {
    overflow: hidden;
    position: relative;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
    padding: 28px 28px 32px;
    border-radius: 8px;
    background-color: #fff;
    border: 2px solid #ed1373;
    margin-bottom: 30px;
}

.archivio-card:hover {
    z-index: 1;
    border-color: #9175e6;
    transform: translate(-2px, -2px);
    box-shadow: 10px 10px 0 0 #9175e6
}

.section-archivio .archivio-card .item_image {
    margin: -30px -30px 23px;
}

.section-archivio .archivio-card .item_category_list {
    overflow: hidden;
    border-radius: 8px;
    background-color: #ED1473;
    padding: 4px 8px;
    text-transform: uppercase;
    font-size: .8em;
    color: #A88AFF;
}

.section-archivio .item_content .tag {
    margin-top: -2.2em;
}

.section-archivio .archivio-card .item_category_list a {
    color: #fff
}

.section-archivio .archivio-card .item_category_list li {
    list-style-type: none;
}

.archivio-card .item_title {
    margin: 0;
    padding: 10px 0 24px;
    min-height: 100px;
}


ul.lista_non_ordinata {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul.lista_non_ordinata li {
    display: inline-block;
}



/* PAGINAZIONE */

.pagination_wrap {
    padding-top: 50px;
}

.pagination_nav {
    margin: -6px;
}

.pagination_nav li {
    padding: 6px;
}

.pagination_nav a {
    height: 48px;
    display: block;
    min-width: 48px;
    font-size: 16px;
    font-weight: 700;
    line-height: 46px;
    color: #1f1d0d;
    text-align: center;
    border-radius: 8px;
    border: 2px solid #d2d2d2;
    transition: all .6s ease;
}

.pagination_nav li.active a, .pagination_nav li:hover a {
    color: #fff;
    border-color: #a88cfc;
    background-color: #a88cfc;
}

/* Menu Hamburger */

/* Stile per il pulsante hamburger */
/* Stile per il pulsante hamburger */
/* Stile per il pulsante hamburger */
.hamburger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    position: fixed;
    top: 55px;
    right: 50px;
    z-index: 1001;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
    margin-bottom: 4px;
    margin-top: 4px;
}

.hamburger.color-change span {
    background-color: #a88aff;
}

.hamburger span:nth-child(2) {
    width: 80%;
}

/* Effetto X per l'hamburger */
.hamburger.active span:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
    opacity: 0;
}

.hamburger.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
}

/* Stile per il menu fullscreen */
.menu-fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(109deg, #333 0%, #333 100%);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    overflow-y: auto;
}

.indicoo-menu-logo {
    width: 260px;
}



.menu-items {
    list-style: none;
    text-align: center;
}

.menu-items li {
    margin: 20px 0;
    text-transform: uppercase;
}

.menu-items a {
    text-decoration: none;
    color: #fff;
    font-size: 2rem;
}

.menu-items-alt {
    list-style: none;
    margin-left: 0;
    padding: 0;

}

.menu-items-alt li {
    margin: 20px 0;
    text-transform: uppercase;
}

.menu-items-alt a {
    text-decoration: none;
    color: #fff;
    font-size: 1rem;
    transition: all .6s ease;
}

.menu-items-alt a:hover {
    text-decoration: none;
    margin-left: 8px;
}

.claim-menu {
    color: #fff;
    font-size: 1.2em
}

.menu-title {
    text-decoration: none;
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
    font-size: 1.1rem;
    margin-top: 30px;
    color: #ed1473;
}

/*fine menu hambiurger*/


/* Utility */

.p-0 {
    padding: 0 !important
}

/* Per browser basati su WebKit (Chrome, Safari) */
::-webkit-scrollbar {
    width: 12px;
    /* Larghezza della scrollbar */
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    /* Colore del track della scrollbar (sfondo) */
    border-radius: 10px;
    /* Arrotondamento degli angoli del track */
}

::-webkit-scrollbar-thumb {
    background: #333;
    /* Colore del thumb della scrollbar (la parte che si muove) */
    border-radius: 10px;
    /* Arrotondamento degli angoli del thumb */
}

::-webkit-scrollbar-thumb:hover {
    background: #7a60e7;
    /* Colore del thumb quando ci si passa sopra con il mouse */
}

/* Per Microsoft Edge e Internet Explorer */
body {
    scrollbar-color: #333 #f1f1f1;
    /* Colore thumb | Colore track */
    scrollbar-width: thin;
    /* Spessore della scrollbar */
}




/* Icone menu */

.user {
    color: #fff;
    font-size: 2.2em;
    position: fixed;
    top: 43px;
    right: 110px;

}

.user a {
    color: #fff;
    transition: all 0.5s ease;
}

.user.color-change a {
    color: #ed1473;
}

.user.color-change a:hover {
    color: #a88cfc80;
}

.user a:hover {
    color: #ffffff80;
}

.search {
    color: #fff;
    font-size: 1.7em;
    position: fixed;
    top: 52px;
    right: 170px;
    cursor: pointer;
    transition: all 0.5s ease;

}

.search:hover {
    color: #ffffff80;
}

#user.color-change, #search.color-change {
    color: #ed1473;
}

#accedi, #iscriviti {
    display: none;
}


.social-menu {
    position: fixed;
    bottom: 30px;
    left: 20px;
}



/* RICERCA FULLSCREEN */

/* Stile per il pulsante di ricerca */
.search-button {
    position: fixed;
    top: 20px;
    right: 60px;
    z-index: 1001;
    cursor: pointer;
    background-color: #a88cfc;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
}

/* Stile per la finestra di ricerca fullscreen */
.search-fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1002;
    flex-direction: column;
    padding: 20px;
    box-sizing: border-box;
    background: url('../images/indicoo-background.svg') center/cover no-repeat, linear-gradient(100deg, rgba(255, 18, 118, 1) 0%, rgba(67, 46, 95, 1) 100%);
}

/* Stile per l'input di ricerca */
.search-fullscreen input[type="text"] {
    width: 80%;
    padding: 15px;
    font-size: 2rem;
    border: none;
    border-radius: 5px;
    outline: none;
    margin-bottom: 20px;
}

/* Stile per le opzioni di ricerca */
.search-options {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 15px;
}

.search-options li {
    display: inline-block;
}

.search-options input[type="checkbox"] {
    margin-right: 5px;
}

.search-options label {
    color: white;
    font-size: 1.2rem;
}

/* Stile per il pulsante di chiusura */
.close-search {
    position: absolute;
    top: 20px;
    right: 30px;
    background: none;
    border: none;
    color: white;
    font-size: 2rem;
    cursor: pointer;
}

.search-close-icon {
    position: absolute;
    top: 54px;
    right: 42px;
    cursor: pointer;
    width: 35px;
    height: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.search-close-icon span {
    display: block;
    width: 100%;
    height: 2px;
    background-color: white;
    transition: transform 0.3s ease, opacity 0.3s ease;
    margin-top: 3px;
    margin-bottom: 1px;
}

.search-close-icon .bar1 {
    transform-origin: top left;
}

.search-close-icon .bar2 {
    opacity: 1;
}

.search-close-icon .bar3 {
    transform-origin: bottom left;
}

.search-close-icon.active .bar1 {
    transform: rotate(45deg);
}

.search-close-icon.active .bar2 {
    opacity: 0;
}

.search-close-icon.active .bar3 {
    transform: rotate(-45deg);
}




/* Stili per la personalizzazione dei checkbox */
.search-options li {
    list-style: none;
    margin: 10px 0;
    font-size: 1.2rem;
    position: relative;
    padding-left: 30px;
    /* Spazio per l'icona del checkbox */
}

.search-options label {
    cursor: pointer;
}

/* Nascondi il checkbox predefinito */
.fullscreen-checkbox {
    display: none;
}

/* Stile per il checkbox personalizzato */
.search-options label::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #a88cfc;
    border-radius: 4px;
    margin-right: 10px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.search-fullscreen label {
    text-transform: uppercase;
    font-size: .9em;
    margin-right: 30px;
}


/* Stile per il checkbox selezionato */
.fullscreen-checkbox:checked+label::before {
    background-color: #a88cfc;
    border-color: #a88cfc;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f00c";
    /* Simbolo di spunta */
    color: white;
    font-size: 16px;
    text-align: center;
    line-height: 18px;
}

/* Stile per l'input di ricerca */
.search-fullscreen input[type="text"] {
    background: transparent;
    border-bottom: 4px solid aliceblue;
    color: white;
    font-size: 3rem;
    padding: 15px;
    border-radius: 0;
    width: 80%;
    margin: 50px 0;
    transition: background 0.3s ease, color 0.3s ease;
    caret-color: #fff;
    width: 100%;
}

.search-fullscreen input[type="text"]::placeholder {
    color: rgba(253, 253, 253, 0.5);
}




/* Stile per l'input quando è focalizzato */
.search-fullscreen input[type="text"]:focus {
    background: transparent;
    /* rgba(255, 255, 255, 0.2);*/
    /* Leggera modifica alla trasparenza */
    box-shadow: none;
    color: #fff;
    outline: none;


    border-color: #a88cfc;
    /* Colore del bordo quando in focus */
    /*box-shadow: 0 0 10px rgba(168, 140, 252, 0.5);*/
    /* Aggiunta di un'ombra */
    outline: none;
    /* Rimuove il contorno blu predefinito */
}


.password-dimenticata {

    color: #432E5F;
}

.password-dimenticata a {
    color: #ed1372;
}


.container-default-pagina {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
}


/* Effetto immagini */

.image-container {
    overflow: hidden;
    position: relative;
}

.img-fluid {
    transition: transform 0.1s ease-out;
}

/* Pagina storie */

.image_widget {
    overflow: hidden;
    border-radius: 8px;
    position: relative;
    box-shadow: -20px 20px 0 0 #A88AFF;
}


.storie_item {
    border-radius: 8px;
    position: relative;
    padding: 30px 40px 40px;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
    background-color: #fff;
    border: 2px solid #f6f6f6;
    box-shadow: 0 1px 1px 0 rgba(31, 29, 13, .2);
}

.item_content {
    text-align: center;
    color: #333;
}

.item_settore {
    text-transform: uppercase;
    font-size: .8em;
}

.storie_item .item_icon {
    width: 100%;
    height: 66px;
    display: flex;
    margin-bottom: 10px;
    align-items: center;
    border-radius: 100%;
    justify-content: center;
    transition: .4s cubic-bezier(.25, 1, .5, 1);
    border: 2px solid transparent;
    background-color: #fff;
    position: relative;
    color: #a88aff;
}

.dettaglio_storia p {
    line-height: 1.8em;
}

.dettaglio_storia a {
    position: relative;
    color: #000;
    text-decoration: none;
    z-index: 1;
    font-weight: 600;
}

.dettaglio_storia a::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    /* Posizionamento a metà altezza del testo */
    height: 0.4em;
    /* Altezza dell'evidenziazione */
    background-color: #a88aff94;
    /* Colore e trasparenza */
    z-index: -1;
    /* Manda l'evidenziazione sotto il testo */
}

.storie_item .item_icon svg {
    width: 34px;
    height: 40px;
}

.storie_item .item_title {
    font-size: 22px;
    font-weight: 700;
    line-height: 25px;
    margin-bottom: 11px;
}

blockquote {
    margin-top: 50px;
    margin-bottom: 50px;
}

blockquote .blockquote_icon {
    flex: 0 0 60px;
    margin-right: 30px;
    width: 70px;
}

blockquote p {
    font-size: 22px;
    font-weight: 700;
    line-height: 25px;
    margin-left: 100px;
    font-style: italic;
}

.dettaglio_storia {
    color: #333;
    font-size: 1em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.image-storia {
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
    border-radius: 10px;
    margin-bottom: 40px;
}

.dettaglio_storia .titolo {
    color: #333;
    font-size: 38.077px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 30px;
    margin-top: 30px;
    margin-bottom: 30px;
}

ul.infolist {
    margin: 0;
    padding: 0;
}

ul.infolist li {
    list-style-type: none;
    display: block;
    list-style: none;
    margin-bottom: 12px;
}

.unordered_list_block {
    margin: 0;
    padding: 0;
    display: block;
    list-style: none;

}

.dettaglio_storia ul, ol {
    margin-top: 30px;
    margin-bottom: 30px;
}

.dettaglio_storia li {
    margin-bottom: 12px;
}

.unordered_list_block i {
    color: #A88AFF
}

.storie_item .info_list>li:not(:last-child) {
    margin-bottom: 6px;
}


.card.info-coop {
    position: relative;
    /* Inizialmente relativa */
    padding: 20px;
    background-color: #f8f9fa;
    border: 1px solid #ccc;
    width: auto;
    margin: 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.image-wrapper {
    position: relative;
    /* Contesto per il posizionamento assoluto dell'icona */
}

.icon-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: #fff;
    /* Cambia il colore dell'icona se necessario */
    pointer-events: none;
    /* Assicura che l'icona non interferisca con altri elementi cliccabili */
}


.image-wrapper img {
    /*filter: grayscale(100%);*/
    /* Applica il filtro bianco e nero all'immagine */
    transition: all 0.3s ease;
    /* Aggiunge un'animazione fluida */
    cursor: pointer;
}

.image-wrapper:hover img {
    filter: grayscale(0%);
    /* Rimuove il filtro bianco e nero quando si passa il mouse */
    z-index: 1;
    border-color: #9175e6;
    transform: translate(-2px, -2px);
    box-shadow: 10px 10px 0 0 #9175e6
}


.video-didascalia {
    background: linear-gradient(334deg, rgba(255, 255, 255, 0.00) 62.59%, #FFF 105.64%), #A88AFF;
    border-radius: 8px;
    padding: 50px 50px;
    font-size: 1.6em;
    color: #fff;
    background: #a88aff;
    padding: 70px 80px;
    border-radius: 25px;
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50);
    border-radius: 10px;
}



.card-area-riservata {
    min-height: 270px;
    text-align: center;
    border: 1px dashed #d0d0d0;
    /* box-shadow: 6px 6px 0px 0px rgba(168, 138, 255, 0.50); */
    transition: all .6s ease;
}

.card-area-riservata:hover {
    background-color: #11111114;
}

.card-area-riservata .icon {
    width: 100%;
    color: #ED1473;

}

.card-area-riservata .icon svg {
    width: 100%;
    height: 60px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.bot-chat {
    display: none;
    height: 80px;
    width: 80px;
    border-radius: 100%;
    position: fixed;
    z-index: 999999;
    bottom: 30px;
    right: 30px;
    background-color: #333;
    cursor: pointer;
    transition: all .6s ease;
}

.bot-chat:hover {
    background-color: #a88aff;

}

.bot-chat-icon {
    color: #fff;
}

.bot-chat-icon svg {
    width: 40px;
    height: 40px;
    margin-top: 17px;
    margin-left: 20px;
}


/* Pulsanti */


/* PULSANTE VUOTO */

a.pulsante-vuoto {
    border-radius: 65px;
    border: 2px solid #333;
    background: rgba(51, 51, 51, 0.00);
    display: inline-block;
    padding: 10px 20px;
    color: #333;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-top: 30px;
    transition: all .6s ease;
}

a.pulsante-vuoto svg path {
    transition: all .6s ease;
}

a.pulsante-vuoto:hover {
    background: #333;
    color: #fff;
}

a.pulsante-vuoto:hover svg path {
    stroke: #fff;
}

/* PULSANTE PIENO */

a.pulsante-pieno {
    border-radius: 49.5px;
    border: 0.762px solid #333;
    background: #333;
    color: #fff;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 10px 20px;
    margin-top: 40px;
    width: auto;
    display: inline-block;
    transition: all .6s ease;
}

a.pulsante-pieno svg path {
    transition: all .6s ease;
}

a.pulsante-pieno:hover {
    background: #9175e6;
    border-color: #9175e6;
}

a.pulsante-pieno:hover svg path {
    stroke: #fff;
}



/* CHAT */

.chat-header a {
    text-decoration: none;
    color: white;
}

.copyright {
    font-size: 12px;
    text-align: center;
}

.copyright a {
    text-decoration: none;
    color: #343c41;
}

#chatbot-toggle-btn {
    height: 80px;
    width: 80px;
    border-radius: 100%;
    position: fixed;
    z-index: 999999;
    bottom: 30px;
    right: 30px;
    background-color: #333;
    cursor: pointer;
    transition: all .6s ease;
}

#chatbot-toggle-btn:hover {
    background-color: #A88CFC;
}

.chatbot-popup {
    display: none;
    position: fixed;
    bottom: 119px;
    right: 36px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    width: 350px;
    max-width: 90%;
    z-index: 1000;
}

.chat-header {
    background-color: #A88CFC;
    color: #fff;
    padding: 15px 20px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#close-btn {
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

.chat-box {
    max-height: 350px;
    overflow-y: auto;
    padding: 15px 24px;
    min-height: 410px;
}

.chat-input {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    border-top: 1px solid #ddd;
}

#user-input {
    flex: 1;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 12px;
    outline: none;
    width: 100%;
}

#send-btn {
    /* font-family: "Poppins", sans-serif; */
    padding: 10px 20px;
    border: none;
    background-color: #A88CFC;
    color: #fff;
    border-radius: 12px;
    margin-left: 10px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#send-btn:hover {
    background-color: #333;
    color: #fff;
}

.user-message {
    background-color: #f3f3f3;
    color: #333;
    padding: 14px;
    border-radius: 10px;
    margin-bottom: 10px;
    margin-top: 15px;
    margin-left: 10px;
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    font-size: 14px;
    font-family: "Inter", sans-serif;
}

.user-message::before {
    content: "\1F468";

    position: absolute;
    bottom: -17px;
    right: -20px;
    margin-bottom: 7px;
    font-size: 20px;
    background-color: #1087FF;
    color: #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.bot-message {
    background-color: #D0C1FC;
    color: #333;
    padding: 14px;
    border-radius: 10px;
    margin-bottom: 10px;
    margin-top: 15px;
    align-self: flex-start;
    margin-right: 10px;
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    font-size: 14px;
    text-align: left;
    font-family: "Inter", sans-serif;
}

.bot-message::before {
    content: "\1F916";
    /* Robot emoji */
    position: absolute;
    bottom: -17px;
    left: -14px;
    margin-bottom: 4px;
    font-size: 20px;
    background-color: #1087FF;
    color: #fff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.button-container {
    display: flex;
    justify-content: space-around;
    margin-top: 10px;
}

.button-container button {
    padding: 10px 50px;
    border: none;
    background-color: #1087FF;
    color: #fff;
    border-radius: 10px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.button-container button:hover {
    background-color: #0074CC;
}

/* mappa */

.marker {
    background-color: #333;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.marker img {
    width: 25px;
    height: 25px;
}



/* FINE CHAT */
#nascondi {
    position: fixed;
    z-index: 9999999;
    background-color: #fff;
    height: 30px;
    width: 300px;
    right: 99px;
    bottom: 113px;
}


/* MAPBOX */

.mapboxgl-popup-content {
    padding: 10px 30px 15px !important;
    box-shadow: 10px 10px 0px 0px rgba(168, 138, 255, 0.50) !important;
    border-radius: 10px !important;
    background-color: #333 !important;
    border: 1px dashed #fff;
    color: #fff;
    font-family: "Inter", sans-serif;
}

.mapboxgl-popup-close-button {
    right: 6px;
    top: 3px;
    color: #fff;
    font-size: 16px;
}

.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip {
    border-top-color: #333;
}

.mapboxgl-popup-content .settore {
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 10px;
}


/*VARIE*/

.freccia-indicoo {
    width: 30px;
    height: 30px;
    background-image: url(../images/freccia.svg);
    background-size: contain;
    background-repeat: no-repeat;

}

/* ALERT */

.alert-warning {
    background-color: #c0acfd !important;
    border-color: #bfabfc !important;
    color: #333 !important;
}


/* VIDEO */

.video-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.video-container-vertical {
    width: 100%;
    max-width: 540px;
    /* Larghezza ottimizzata per video verticali */
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.video-vertical {
    width: 100%;
    height: 90vh;
    border-radius: 25px;
    height: 80%;
    width: auto;
    padding: 6px;

    background: url('../images/indicoo-background.svg') center/cover no-repeat, linear-gradient(100deg, rgba(255, 18, 118, 1) 0%, rgba(67, 46, 95, 1) 100%);

}




.close-overlay {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 30px;
    color: white;
    cursor: pointer;
}

/*area utente variabili classi*/

.top {
    top: 5vh;
}

.min-height-header {
    min-height: 70vh
}

.aggiungi-vh {
    transform: translateY(5vh);
    /* Sposta l'elemento di 5vh verso il basso */
}

/* Sposta l'elemento di 5vh verso il basso */


/* Notifiche */

.fixed-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 5vh;
    background-color: #333;
    color: white;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

.fixed-menu a {
    color: #fc1276;
}

.testo-benvenuto {
    color: white;
    font-size: .8em;
}

.testo-benvenuto a {
    color: white;
    text-decoration: none;
}

.testo-benvenuto a:hover {
    text-decoration: underline;
}

.notification-icon {
    position: relative;
    cursor: pointer;
    right: 45px;
    top: 5px;
}

/* Tooltip personalizzato */
.notification-tooltip {
    position: absolute;
    top: 40px;
    right: 0;
    width: 300px;
    background-color: white;
    color: black;
    border-radius: 8px;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
    display: none;
    /* Nascosto di default */
    padding: 10px;
}

.notification-tooltip h6 {
    margin-top: 0;
    color: #f91375;
    text-transform: uppercase;
    font-size: .9em;
}

.notification-list {
    max-height: 200px;
    overflow-y: auto;
}

.notification-item {
    border-bottom: 1px solid #ddd;
    padding: 5px 0;
}

.notification-item:last-child {
    border-bottom: none;
}

/* Badge per le notifiche */
.notification-badge {
    position: absolute;
    top: -11px;
    right: -12px;
    background-color: #fd1276;
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    /* Centra verticalmente */
    justify-content: center;
    /* Centra orizzontalmente */
    font-size: 10px;
}


/* Per WebKit (Chrome, Safari, Opera) */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Per Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}



.numero {
    text-align: center;
    border: 1px dotted #947cd2;
    border-radius: 50px;
    width: 20px;
    height: 20px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    margin-left: 5px;
    margin-right: 5px;
    color: #eb1473;
}


/* PORTRAIT FISSO */

/* Solo portrait */

#pleaserotate-graphic {
    fill: #fff;
}

#pleaserotate-backdrop {
    color: #fff;
    background-color: #eb1473;
}


/* LEGENDA FORM */

.legenda-form {
    text-transform: uppercase;
    font-size: .7em;
    color: #eb1473 !important;
    margin-bottom: 5px;
}


.form-check-input:checked {
    background-color: #ed1473;
    border-color: #ed1473;
}

#networking {
    display: none;
}


.autore-video {
    border-radius: 50%;
    width: 80px;
    height: 80px;
    margin-left: 10px;
    margin-right: 10px;
}


.lb-data .lb-caption {
    font-size: 16px;
    font-weight: 700;
    line-height: 1em;
    color: #ed1473;
    font-family: var(--font-family-inter);
    background-color: #fff;
    padding: 2px 6px;
    border-radius: 5px;
}



.anno_costituzione_networking {
    overflow: hidden;
    border-radius: 8px;
    background-color: #ED1473;
    padding: 4px 8px;
    text-transform: uppercase;
    font-size: .8em;
    display: inline-block;
    color: #fff;
    list-style-type: none;
}


.lb-data .lb-number {
    display: none !important;
}


a:has(.image-storia) {
    color: transparent;
    /* Colore trasparente per i link che contengono .image-storia */
}






.video-thumb {
    position: relative;
    /* Permette all'overlay di posizionarsi sopra l'immagine */
    display: inline-block;
    /* Mantiene il contenitore delle dimensioni dell'immagine */
}

.video-thumb img {
    display: block;
    /* Rimuove lo spazio sotto l'immagine */
    border-radius: 8px;
    /* Aggiunge angoli arrotondati all'immagine */
    transition: filter 0.3s ease;
    /* Transizione per il filtro */
}

.play-icon {
    position: absolute;
    /* Posiziona l'icona sopra l'immagine */
    top: 50%;
    /* Centra verticalmente */
    left: 50%;
    /* Centra orizzontalmente */
    transform: translate(-50%, -50%);
    /* Sposta l'icona per centrarla */
    color: #ed1473;
    /* Colore dell'icona */
    font-size: 48px;
    /* Dimensioni dell'icona */
    transition: transform 0.3s ease, color 0.3s ease;
    /* Transizione per la trasformazione e il colore */
    cursor: pointer
}

/* Rende l'immagine più sfocata al passaggio del mouse */
.video-thumb:hover img {
    filter: blur(2px);
    /* Applica un effetto di sfocatura all'immagine */
}

/* Aumenta la dimensione e cambia il colore dell'icona al passaggio del mouse */
.video-thumb:hover .play-icon {
    transform: translate(-50%, -50%) scale(1.2);
    /* Ingrandisce l'icona */
    color: #fff;
    /* Cambia il colore dell'icona */
}