.user-menu,
.user-menu-col,
.user-menu-notifiche {
    line-height: 5vh;
    font-size: 0.9em;
}
.rete-operatori-header,
.rete-operatori-header-mappa {
    transition: padding 0.3s;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    right: 0;
}
.hero.home,
.hero.pagina {
    position: relative;
    background:
        url("../images/rete-operatori.jpg") center/cover no-repeat,
        linear-gradient(45deg, #c5001e 0, #432e5f 100%);
}
.hero.home,
.hero.mappa {
    padding: 200px 0 160px;
    height: 100vh;
    overflow: hidden;
}
.hamburger.active span,
.social_links a:after,
header .accedi:hover,
header .iscriviti,
nav ul li a:hover {
    background-color: #fff;
}
.titolo-slider,
BODY,
h1.banner_big_title,
nav ul li {
    font-weight: var(--font-weight-400);
}
.form_item select,
.tags .tag,
nav ul li {
    text-transform: uppercase;
}
.btn-check,
.hero.home,
.hero.mappa,
.hero.pagina,
.page-card {
    overflow: hidden;
}
.form_item select,
.lb-data .lb-caption,
BODY {
    font-family: var(--font-family-gantari);
}
.anno_costituzione_networking,
.lb-data .lb-caption,
.section-archivio .archivio-card .item_category_list li,
.social_links > li,
nav ul li,
ul.breadcrumb_nav li {
    list-style-type: none;
}
:root {
    --testo: #333;
    --colore-primario: #c5001e;
    --colore-secondario: #dcd1fd;
    --verde: #22d0aa;
    --font-family-gantari: "Gantari", sans-serif;
    --font-optical-sizing: auto;
    --font-variation-settings: "wdth" 100;
    --font-style: normal;
    --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;
}
BODY {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    color: var(--testo);
    font-style: var(--font-style-normal);
    font-optical-sizing: var(--font-optical-sizing);
    font-variation-settings: var(--font-variation-settings);
}
a {
    color: #333;
    text-decoration: none;
}
.user-menu {
    width: 100vw;
    height: 5vh;
    background-color: #333;
    color: #fff;
    position: fixed;
    z-index: 9999999999;
}
#progress-container,
.rete-operatori-header,
.rete-operatori-header-mappa {
    position: fixed;
    top: 0;
    z-index: 99;
    left: 0;
}
.user-menu a {
    color: #866ebb;
}
.rete-operatori-header .container {
    max-width: 1200px;
}
.rete-operatori-header-mappa {
    padding: 44px 0;
    background-color: #5a4383e8;
}
.image-br,
.img-slider,
.img-storie,
.section-shorties .video-thumb img {
    box-shadow: 10px 10px 0 0 rgba(168, 138, 255, 0.5);
}
.rete-operatori-menu-logo,
header .logo {
    width: 200px;
}
header #logo {
    opacity: 1;
    position: absolute;
}
header #logo-c {
    opacity: 0;
    position: absolute;
    margin-right: -100px;
}
.hero.home {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.hero.home .img-container {
    height: 420px;
    position: relative;
    width: 100%;
}
.hero.home .img-container .hero-image-1 {
    position: absolute;
    z-index: 1;
}
.hero.home .img-container .hero-image-2 {
    position: absolute;
    top: 60%;
    right: -80px;
    z-index: 2;
}
.hero.home .img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.hero.pagina {
    padding: 200px 0 160px;
}
.hero.pagina::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.hero.pagina .container {
    position: relative;
    z-index: 2;
}
section {
    width: 100%;
    margin: 0;
}
section.hero {
    min-height: 107vh;
}
section.hero.pagina {
    min-height: 50vh;
}
.tags {
    color: #fff;
    margin-top: 2rem;
}
.tags .tag:hover {
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 0 #1f1d0d;
}
#accedi.color-change a,
.bot-chat-icon,
.breadcrumb_nav a,
.section-archivio .archivio-card .item_category_list a,
.section-networking .networking-content a,
.tags .tag a,
header .accedi a,
header .iscriviti:hover a {
    color: #fff;
}
h1.banner_big_title {
    font-size: 3.5em;
    color: #fff;
    padding-right: 3vw;
    transition: 0.6s;
}
h1.banner_big_title p {
    font-size: 0.5em;
}
h1.banner_big_title p a {
    color: #fff;
    text-decoration: underline;
    font-weight: 500;
    transition: 0.3s;
}
.principale a,
h1.banner_big_title p a:hover {
    color: #fff;
    text-decoration: underline;
}
.btn-cta,
.chat-header a,
.copyright a,
.cta-supporto a,
.dettaglio_storia a,
.menu-items a,
.menu-items-alt a,
.menu-items-alt a:hover,
.menu-title,
.pulsante-operatori a,
.section-archivio .archivio-card .item_finanziamento a,
.testo-benvenuto a,
footer ul.menu li a,
nav ul li a,
nav ul li a:hover {
    text-decoration: none;
}
h1.banner_big_title_pagina {
    font-size: 2.6em;
    color: #fff;
    font-weight: var(--font-weight-600);
    padding-right: 3vw;
    transition: 0.6s;
}
header .accedi,
header .iscriviti {
    top: 50px;
    padding: 5px 15px;
    transition: 0.6s;
    display: inline-block;
}
.titolo-slider .bold,
.titolo-storie .bold,
h1.banner_big_title .bold {
    font-weight: var(--font-weight-700);
}
.banner_description {
    color: #fff;
    font-family: Gantari, sans-serif;
    font-size: 1.2em;
}
.container {
    max-width: 1200px !important;
    padding-left: 15px;
    padding-right: 15px;
}
.section-full,
.section-slider,
.section-spazio,
.section-storie {
    padding-top: 120px;
    padding-bottom: 120px;
}
nav ul {
    margin-top: 15px;
}
nav ul li {
    display: inline-block;
    margin-right: 20px;
    position: relative;
    transition: 0.2s;
    font-size: 0.9em;
}
nav ul li a:hover {
    border-radius: 8px;
    color: #c5001e;
}
#accedi.color-change:hover a,
#search.color-change,
#user.color-change,
.archivio-card .item_title a,
.password-dimenticata a,
.unordered_list_block i,
.user.color-change a,
header .accedi:hover a,
header .iscriviti a,
nav ul.color-change li a {
    color: #c5001e;
}
nav ul.color-change li a:hover {
    color: #fff;
    background-color: #c5001e;
}
header .pulsanti-menu {
    position: absolute;
    right: 300px;
}
header .accedi {
    right: 200px;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 5px;
}
#accedi.color-change,
#chatbot-toggle-btn:hover,
#progress-bar,
.bot-chat:hover,
.hamburger.color-change span,
.img-slider,
.img-storie,
header .iscriviti:hover {
    background-color: #c5001e;
}
header .iscriviti {
    border: 1px solid #fff;
    color: #c5001e;
    border-radius: 5px;
    margin-left: 14px;
}
#accedi.color-change,
#iscriviti.color-change {
    border: 1px solid #c5001e;
}
#accedi.color-change {
    color: #fff;
}
#accedi.color-change:hover {
    border: 1px solid #c5001e;
    background-color: #fff;
    color: #c5001e;
}
.img-slider,
.img-storie {
    border-radius: 5px;
    width: 90%;
    margin-left: 5%;
}
.titolo-slider {
    color: #333;
    font-size: 3em;
    margin-bottom: 2rem;
    line-height: 1.2em;
}
.storia {
    padding: 3%;
}
.titolo-storie {
    color: #c5001e;
    font-size: 4em;
    font-style: normal;
    font-weight: 400;
    line-height: 3.3rem;
    margin-bottom: 3rem;
    margin-top: 3rem;
}
.page-heading-description,
.testo-storie {
    color: #333;
    font-size: 1.4em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.page-heading b,
.register_heading b,
.section-cooperativa .titolo .bold,
.testo-storie .bold {
    font-weight: 700;
}
.register_heading,
h1.page-heading {
    font-weight: 500;
    font-size: 50px;
    color: #c5001e;
}
.section-opportunita .pulsante,
.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;
    margin-top: 40px;
    width: auto;
    display: inline-block;
}
.section-networking {
    padding-top: 150px;
    padding-bottom: 150px;
    background: url(../images/rete-operatori-mappa-italia-1.svg) -359.467px -703.613px/160.875% 317.343% no-repeat
        #e1d7fd;
    mix-blend-mode: multiply;
}
.section-networking .networking-content {
    background: #333;
    color: #fff;
    min-height: 300px;
    background: linear-gradient(106deg, rgba(168, 138, 255, 0) 59.94%, #c5001e 111.52%), #333;
    padding: 70px 80px;
    border-radius: 25px;
}
.section-networking .networking-content .titolo {
    color: #c5001e;
    font-size: 4em;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 50px;
}
.section-networking .networking-content .sottotitolo {
    color: #c5001e;
    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 #f0f8ff;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.freccia-rete-operatori,
.section-networking .networking-content .pulsante {
    width: 30px;
    height: 30px;
    background-image: url(../images/freccia.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.section-shorties {
    padding-top: 20px;
    padding-bottom: 120px;
}
.section-shorties .video-container {
    margin-top: 100px;
}
.section-shorties .titolo {
    color: #c5001e;
    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 #c5001e;
    background: #fff;
    box-shadow:
        5px 5px 0 0 rgba(168, 138, 255, 0.3),
        10px 10px 0 0 rgba(168, 138, 255, 0.3);
    padding: 20px 50px;
    color: #c5001e;
    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-bottom: 0.2rem;
}
.section-shorties .video-autore {
    color: #858c94;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.section-shorties .video-thumb img {
    border-radius: 10px;
    cursor: pointer;
}
.section-shorties .video-autore-immagine img,
.video-autore-immagine img {
    border-radius: 100px;
    width: 80px;
    height: 80px;
    padding: 3px;
    border: 3px solid #c5001e;
}
.section-opportunita {
    padding-top: 120px;
    padding-bottom: 120px;
    background: linear-gradient(334deg, rgba(255, 255, 255, 0) 62.59%, #fff 105.64%), #c5001e;
}
.section-opportunita .opportunita {
    border-radius: 15.231px;
    border: 2px solid #c5001e;
    background: #fff;
    box-shadow: 10px 10px 0 0 rgba(255, 255, 255, 0.5);
    padding: 30px;
    width: 80%;
    margin-left: 10%;
}
.section-opportunita .opportunita-image {
    border-radius: 15.231px;
    background: #c5001e50;
    height: 206px;
}
.section-opportunita .opportunita-title {
    color: #c5001e;
    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 .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;
}
.section-cooperativa {
    background:
        linear-gradient(180deg, #fff 0, rgba(255, 255, 255, 0.8) 100%),
        linear-gradient(0deg, #fff 0, #fff 100%),
        url(../images/bg-cooperativa.jpg) 50% / cover no-repeat #d3d3d3;
    background-blend-mode: normal, color, normal;
    padding-top: 120px;
    padding-bottom: 120px;
}
.section-cooperativa .titolo {
    color: #c5001e;
    font-size: 64px;
    font-style: normal;
    font-weight: 400;
    line-height: 60px;
}
.section-cooperativa .pulsante,
.section-cooperativa .testo {
    font-weight: 400;
    line-height: normal;
    margin-top: 30px;
    color: #333;
    font-style: normal;
}
.section-cooperativa .testo {
    font-kerning: none;
    font-size: 24px;
}
.section-cooperativa .pulsante {
    border-radius: 65px;
    border: 2px solid #333;
    background: rgba(51, 51, 51, 0);
    display: inline-block;
    padding: 10px 20px;
    text-align: center;
    font-size: 20px;
}
.section-pagina,
.section-registrazione {
    padding-top: 40px;
    padding-bottom: 120px;
    background: #f7f7f7;
}
.content-archivio,
.content-page,
.page {
    border-radius: 8px;
    margin-top: -8em;
    background-color: #fff;
    padding: 30px 50px;
}
h1.page-heading {
    font-style: normal;
    line-height: 50px;
    padding-bottom: 10px;
}
.image-full img {
    border-radius: 5px;
}
footer {
    min-height: 30vh;
    background-color: #000;
    color: #fff;
    padding-top: 70px;
    padding-bottom: 10px;
}
footer ul.menu,
ul.lista_non_ordinata {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
footer ul.menu li {
    margin-bottom: 15px;
}
footer ul.menu li a {
    color: #fff;
    transition: 0.3s;
}
footer ul.menu li a:hover {
    margin-left: 4px;
}
footer .copyright {
    padding-top: 40px;
    padding-bottom: 40px;
    border-top: 1px solid #424040;
    font-size: 0.9em;
    margin-top: 40px;
}
.image-br {
    border-radius: 10px;
}
.unordered_list,
.unordered_list_center,
.unordered_list_end {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.pagination_nav,
.social_links {
    margin: -6px;
}
.social_links > li {
    padding: 6px;
}
.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: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.social_links a:before {
    border: 2px solid #fff;
}
.social_links a i {
    color: #333;
    transition: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.social_links a:hover:before {
    transform: scale(1.1);
}
.social_links a:hover:after {
    transform: scale(0.8);
}
#progress-container {
    width: 100%;
    background-color: transparent;
    height: 8px;
}
#progress-bar {
    height: 100%;
    width: 0;
    transition: width 0.1s;
}
.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, 0.12),
        10px 10px 0 0 #1f1d0d;
}
.register_heading {
    font-style: normal;
    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;
}
.form_item {
    position: relative;
    margin-bottom: 30px;
}
.input_title,
.storie_item .info_list > li:not(:last-child) {
    margin-bottom: 6px;
}
.form_item input,
.form_item select,
.form_item textarea {
    width: 100%;
    outline: 0;
    display: block;
    box-shadow: none;
    transition: 0.4s cubic-bezier(0.25, 1, 0.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: 350ms cubic-bezier(0.37, 0, 0.63, 1);
    transition: 350ms cubic-bezier(0.37, 0, 0.63, 1);
    -webkit-box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    position: relative;
    background-image: none;
    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;
    font-family: Inter;
}
:-moz-placeholder {
    color: rgba(31, 29, 13, 0.5);
}
::-moz-placeholder {
    color: rgba(31, 29, 13, 0.5);
}
:-ms-input-placeholder {
    color: rgba(31, 29, 13, 0.5);
}
::-webkit-input-placeholder {
    color: rgba(31, 29, 13, 0.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;
}
.container-mappa,
.registrazione-alt {
    border-radius: 8px;
    background-color: #fff;
    padding: 30px 50px;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
}
.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,
.search-close-icon .bar2 {
    opacity: 1;
}
.checkbox_item label {
    margin: 0;
    cursor: pointer;
    font-size: 16px;
    line-height: 24px;
}
.registrazione-alt {
    margin-top: -8em;
}
.container-mappa {
    margin-top: -5em;
    z-index: 10;
    position: relative;
}
.registrazione-alt .step {
    border: 1px dashed #c5001e;
    border-radius: 8px;
    padding: 30px 20px;
    background-color: #f7f7f7;
}
.registrazione-alt ::placeholder {
    color: #c5001e;
    text-transform: uppercase;
    font-size: 13px;
}
.registrazione-alt .socio-cooperativa {
    display: inline-block;
    width: 49.5%;
}
.form-control,
.form-select,
.registrazione-alt input,
select,
textarea {
    padding: 12px 25px;
    width: 100%;
    max-width: 100%;
    resize: none;
    outline: 0;
    font-size: 13px;
    border: 1px solid #e4e4e4;
    border-radius: 0;
    color: #717580;
    line-height: inherit;
    word-break: normal;
    -webkit-transition: 350ms cubic-bezier(0.37, 0, 0.63, 1);
    transition: 350ms cubic-bezier(0.37, 0, 0.63, 1);
    -webkit-box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.09);
    position: relative;
}
.rete-operatori-select,
.rete-operatori-select option {
    background-color: #fff;
    color: #333;
    font-size: 16px;
    padding: 10px;
}
.rete-operatori-select {
    appearance: none;
    border: 1px solid #c5001e;
    border-radius: 4px;
    width: 100%;
    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;
}
.rete-operatori-select:focus {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(168, 140, 252, 0.3);
}
.form-control:focus,
.form-select:focus,
.registrazione-alt input:focus,
.registrazione-alt select:focus,
.registrazione-alt textarea:focus {
    outline: #c5001e solid 1px;
    background-color: #dcd1fd20;
}
.registrazione-alt .form_item span.bi {
    position: absolute;
    right: 1.35em;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #c5001e;
    font-size: 1.2em;
}
.registrazione-alt .form_item textarea + span.bi {
    top: 0.7em;
    transform: translateY(0);
}
.btn-group .btn {
    width: 100%;
    margin-bottom: 10px;
    text-align: left;
    padding: 15px 20px;
}
.btn-check {
    position: absolute;
    margin: -1px;
    padding: 0;
    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,
.custom-button-2:hover {
    background-color: #c5001e;
    color: #fff;
    border-color: #c5001e;
}
.btn-group .btn:hover {
    background-color: #dcd1fd;
    color: #333;
    border-color: #dcd1fd;
}
#aspirante-cooperatore,
#cooperatore,
#socio-no,
#socio-si,
.custom-checkbox input[type="checkbox"],
.custom-radio input[type="radio"] {
    display: none;
}
.btn-outline-socio {
    border: 2px solid #333;
    margin: 10px;
    border-radius: 8px !important;
}
.custom-button,
.custom-button-2 {
    margin-top: 20px;
    text-align: center;
}
.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;
}
.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: #c5001e;
    background-image: -moz-linear-gradient(to bottom, #c5001e, #c5001e);
    background-image: -ms-linear-gradient(to bottom, #c5001e, #c5001e);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#c5001e), to(#c5001e));
    background-image: -webkit-linear-gradient(to bottom, #c5001e, #c5001e);
    background-image: -o-linear-gradient(to bottom, #c5001e, #c5001e);
    background-image: linear-gradient(to bottom, #c5001e, #c5001e);
    background-repeat: repeat-x;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    color: #333;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.custom-checkbox,
.custom-radio {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.custom-button,
.custom-button-2,
.custom-checkbox label,
.custom-radio label {
    display: inline-block;
    font-size: 1rem;
    transition: 0.3s;
    cursor: pointer;
}
.custom-checkbox label,
.custom-radio label {
    padding: 6px 15px;
    border-radius: 8px;
    border: 1px dashed #c5001e;
    font-family: Inter;
    text-transform: uppercase;
}
.custom-checkbox input[type="checkbox"]:checked + label,
.custom-radio input[type="radio"]:checked + label {
    background-color: #c5001e;
    color: #fff;
    border-color: #c5001e;
    animation: 0.2s ease-in-out pop;
}
.custom-checkbox label:hover,
.custom-radio label:hover {
    border-color: #c5001e;
}
.custom-checkbox input[type="checkbox"]:checked + label::before,
.custom-radio input[type="radio"]:checked + label::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f00c";
    font-size: 1rem;
    margin-right: 8px;
}
@keyframes pop {
    0% {
        transform: scale(0.9);
    }
    100% {
        transform: scale(1);
    }
}
.custom-button {
    padding: 4px 24px;
    border-radius: 8px;
    background-color: #c5001e;
    color: #fff;
    border: 2px solid transparent;
}
.custom-button:hover {
    background-color: #4b356d;
    color: #fff;
    border-color: #4b356d;
}
.custom-button-2 {
    padding: 10px 20px;
    border-radius: 8px;
    background-color: #333;
    color: #fff;
    border: 2px solid transparent;
}
.custom-button:disabled {
    background-color: #c5001e70;
    color: #fefefe94;
    cursor: not-allowed;
    border: 2px solid transparent;
}
.custom-button:active,
.custom-button:focus {
    outline: 0;
    background-color: #9175e6;
}
.breadcrumb_nav {
    margin-bottom: 50px;
    font-family: Gantari, sans-serif;
}
.breadcrumb_nav > li:not(:last-child)::after {
    content: "\f054";
    top: 1px;
    right: -5px;
    opacity: 0.7;
    font-weight: 900;
    content: "\f054";
    position: absolute;
    font-family: "Font Awesome 6 Free";
}
ul.breadcrumb_nav {
    display: inline;
    margin: 0;
    padding: 0;
}
.menu-items li,
.menu-items-alt li {
    margin: 20px 0;
    text-transform: uppercase;
}
.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 {
    display: inline;
    text-transform: uppercase;
}
.section-archivio,
.section-page {
    padding-top: 40px;
    padding-bottom: 120px;
}
.page-card {
    position: relative;
    transition: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    padding: 28px 28px 32px;
    border-radius: 8px;
    background-color: #fff;
    border: 2px solid #c5001e;
    margin-bottom: 30px;
}
.hamburger,
.menu-fullscreen,
.search,
.search-button,
.social-menu,
.user {
    position: fixed;
}
.archivio-card:hover {
    z-index: 1;
    border-color: #333;
    transform: translate(-2px, -2px);
    box-shadow: 10px 10px 0 0 #333;
}
.section-archivio .archivio-card .item_testo {
    min-height: 200px;
}
.section-archivio .archivio-card .item_finanziamento {
    font-weight: 700;
    color: #fff;
    background-color: #333;
    display: inline-block;
    padding: 8px 18px;
    border-radius: 30px;
    position: absolute;
    bottom: 25px;
}
.pulsante-operatori a,
.section-archivio .archivio-card .item_finanziamento a {
    color: #fff;
    transition: 0.3s;
    text-transform: uppercase;
    font-weight: 200;
}
.pulsante-operatori a:hover,
.section-archivio .archivio-card .item_finanziamento a:hover {
    color: #fff;
    text-decoration: none;
    margin-left: 10px;
}
.section-archivio .archivio-card .item_image {
    margin: -30px -30px 23px;
    text-align: center;
}
.section-archivio .archivio-card .item_image img {
    border-radius: 15px;
}
.section-archivio .archivio-card .item_category_list {
    overflow: hidden;
    border-radius: 8px;
    background-color: #c5001e;
    padding: 4px 8px;
    text-transform: uppercase;
    font-size: 0.8em;
    color: #c5001e;
}
.section-archivio .item_content .tag {
    margin-top: -2.2em;
}
.archivio-card .item_title {
    margin: 0;
    padding: 10px 0 24px;
    min-height: 100px;
}
.search-options li,
ul.lista_non_ordinata li {
    display: inline-block;
}
.pagination_wrap {
    padding-top: 50px;
}
.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: 0.6s;
}
.main-cta h1.titolo,
.new-hero h1.titolo {
    font-weight: 300;
    padding-right: 3vw;
    line-height: 1em;
}
.pagination_nav li.active a,
.pagination_nav li:hover a {
    color: #fff;
    border-color: #c5001e;
    background-color: #c5001e;
}
.hamburger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    top: 55px;
    right: 50px;
    z-index: 1001;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.hamburger span:nth-child(2) {
    width: 80%;
}
.hamburger.active span:first-child {
    transform: translateY(10px) rotate(45deg);
}
.hamburger.active span:nth-child(2),
.search-close-icon.active .bar2 {
    opacity: 0;
}
.hamburger.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
}
.menu-fullscreen {
    top: 0;
    right: 0;
    width: 30vw;
    height: 100%;
    background: linear-gradient(109deg, #c5001e 0, #c5001e 100%);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    box-shadow: -10px 0 15px rgba(0, 0, 0, 0.3);
}
.menu-fullscreen::-webkit-scrollbar {
    display: none;
}
.menu-items {
    list-style: none;
    text-align: center;
}
.menu-items a {
    color: #fff;
    font-size: 2rem;
}
.menu-items-alt {
    list-style: none;
    margin-left: 0;
    padding: 0;
}
.menu-items-alt li {
    border-bottom: 0.002em solid #ffffff78;
    padding-bottom: 18px;
}
.menu-items-alt a {
    color: #fff;
    font-size: 1.3em;
    transition: 0.6s;
    font-weight: 300;
    margin-left: 20px;
}
.menu-items-alt a:hover {
    margin-left: 28px;
}
.claim-menu {
    color: #fff;
    font-size: 1.2em;
}
.menu-title {
    text-transform: uppercase;
    font-size: 1.1rem;
    margin-top: 30px;
    color: #c5001e;
}
.p-0 {
    padding: 0 !important;
}
::-webkit-scrollbar {
    width: 12px;
}
::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb {
    background: #333;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background: #7a60e7;
}
body {
    scrollbar-color: #333 #f1f1f1;
    scrollbar-width: thin;
}
.user {
    color: #fff;
    font-size: 2.2em;
    top: 43px;
    right: 110px;
}
.user a {
    color: #fff;
    transition: 0.5s;
}
.user.color-change a:hover {
    color: #c5001e80;
}
.search:hover,
.user a:hover {
    color: #ffffff80;
}
.search {
    color: #fff;
    font-size: 1.7em;
    top: 52px;
    right: 170px;
    cursor: pointer;
    transition: 0.5s;
}
#accedi,
#iscriviti,
#networking,
.fullscreen-checkbox {
    display: none;
}
.social-menu {
    bottom: 30px;
    left: 20px;
}
.search-button {
    top: 20px;
    right: 60px;
    z-index: 1001;
    cursor: pointer;
    background-color: #c5001e;
    color: #fff;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
}
.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/rete-operatori-background.svg") center/cover no-repeat,
        linear-gradient(100deg, #a88aff 0, #432e5f 100%);
}
.search-fullscreen input[type="text"] {
    border: none;
    outline: 0;
}
.search-options {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 15px;
}
.search-options input[type="checkbox"] {
    margin-right: 5px;
}
.search-options label {
    color: #fff;
    font-size: 1.2rem;
    cursor: pointer;
}
.close-search {
    position: absolute;
    top: 20px;
    right: 30px;
    background: 0 0;
    border: none;
    color: #fff;
    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: #fff;
    transition:
        transform 0.3s,
        opacity 0.3s;
    margin-top: 3px;
    margin-bottom: 1px;
}
.search-close-icon .bar1 {
    transform-origin: top left;
}
.search-close-icon .bar3 {
    transform-origin: bottom left;
}
.search-close-icon.active .bar1 {
    transform: rotate(45deg);
}
.search-close-icon.active .bar3 {
    transform: rotate(-45deg);
}
.search-options li {
    list-style: none;
    margin: 10px 0;
    font-size: 1.2rem;
    position: relative;
    padding-left: 30px;
}
.search-options label::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid #c5001e;
    border-radius: 4px;
    margin-right: 10px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    transition:
        background-color 0.3s,
        border-color 0.3s;
}
.search-fullscreen label {
    text-transform: uppercase;
    font-size: 0.9em;
    margin-right: 30px;
}
.fullscreen-checkbox:checked + label::before {
    background-color: #c5001e;
    border-color: #c5001e;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f00c";
    color: #fff;
    font-size: 16px;
    text-align: center;
    line-height: 18px;
}
.search-fullscreen input[type="text"] {
    background: 0 0;
    border-bottom: 4px solid #f0f8ff;
    color: #fff;
    font-size: 3rem;
    padding: 15px;
    border-radius: 0;
    margin: 50px 0;
    transition:
        background 0.3s,
        color 0.3s;
    caret-color: #fff;
    width: 100%;
}
.search-fullscreen input[type="text"]::placeholder {
    color: rgba(253, 253, 253, 0.5);
}
.search-fullscreen input[type="text"]:focus {
    background: 0 0;
    box-shadow: none;
    color: #fff;
    outline: 0;
    border-color: #c5001e;
}
.password-dimenticata {
    color: #432e5f;
}
.container-default-pagina-interna {
    margin-top: -12em;
    background-color: #fff;
    padding: 0 64px;
    border-radius: 20px;
    background: linear-gradient(180deg, #fff 0, #e6e6e6 100%);
    z-index: 1;
}
.container-default-pagina-interna .pre,
.principale p {
    font-size: 1.2em;
}
.storie_item .item_title,
blockquote p {
    font-size: 22px;
    font-weight: 700;
    line-height: 25px;
}
.container-default-pagina {
    background-color: transparent;
    padding: 14px 20px;
}
.image-container {
    overflow: hidden;
    position: relative;
}
.img-fluid {
    transition: transform 0.1s ease-out;
}
.storie_item,
.storie_item .item_icon {
    transition: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    background-color: #fff;
    position: relative;
}
.image_widget {
    overflow: hidden;
    border-radius: 8px;
    position: relative;
    box-shadow: -20px 20px 0 0 #c5001e;
}
.storie_item {
    border-radius: 8px;
    padding: 30px 40px 40px;
    border: 2px solid #f6f6f6;
    box-shadow: 0 1px 1px 0 rgba(31, 29, 13, 0.2);
}
.image-storia,
.video-didascalia {
    box-shadow: 10px 10px 0 0 rgba(168, 138, 255, 0.5);
}
.card-servizi .item_content,
.item_content {
    color: #333;
}
.item_settore {
    text-transform: uppercase;
    font-size: 0.8em;
}
.storie_item .item_icon {
    width: 100%;
    height: 66px;
    display: flex;
    margin-bottom: 10px;
    align-items: center;
    border-radius: 100%;
    justify-content: center;
    border: 2px solid transparent;
    color: #c5001e;
}
.dettaglio_storia p {
    line-height: 1.8em;
}
.dettaglio_storia a {
    position: relative;
    color: #000;
    z-index: 1;
    font-weight: 600;
}
.dettaglio_storia a::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 0.4em;
    background-color: #c5001e94;
    z-index: -1;
}
.storie_item .item_icon svg {
    width: 34px;
    height: 40px;
}
.storie_item .item_title {
    margin-bottom: 11px;
}
.dettaglio_storia,
.dettaglio_storia .titolo {
    font-style: normal;
    line-height: normal;
    color: #333;
}
blockquote {
    margin-top: 50px;
    margin-bottom: 50px;
}
blockquote .blockquote_icon {
    flex: 0 0 60px;
    margin-right: 30px;
    width: 70px;
}
blockquote p {
    margin-left: 100px;
    font-style: italic;
}
.dettaglio_storia {
    font-size: 1em;
    font-weight: 400;
}
.image-storia {
    border-radius: 10px;
    margin-bottom: 40px;
}
.dettaglio_storia .titolo {
    font-size: 38.077px;
    font-weight: 700;
    margin-top: 30px;
    margin-bottom: 30px;
}
ul.infolist {
    margin: 0;
    padding: 0;
}
a.pulsante-pieno,
a.pulsante-vuoto {
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 10px 20px;
    display: inline-block;
    font-size: 20px;
}
ul.infolist li {
    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;
}
.card.info-coop {
    position: relative;
    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;
}
.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;
    pointer-events: none;
}
#chatbot-toggle-btn,
.bot-chat {
    height: 80px;
    width: 80px;
    z-index: 999999;
    bottom: 30px;
    right: 30px;
    cursor: pointer;
    position: fixed;
}
.image-wrapper img {
    transition: 0.3s;
    cursor: pointer;
}
.image-wrapper:hover img {
    filter: grayscale(0%);
    z-index: 1;
    border-color: #9175e6;
    transform: translate(-2px, -2px);
    box-shadow: 10px 10px 0 0 #9175e6;
}
.video-didascalia {
    background:
        0 0,
        #c5001e;
    border-radius: 10px;
    padding: 70px 80px;
    font-size: 1.6em;
    color: #fff;
}
.card-area-riservata {
    min-height: 270px;
    text-align: center;
    transition: 0.6s;
}
.card-area-riservata:hover {
    background-color: #11111114;
    box-shadow: 6px 6px 0 0 rgba(168, 138, 255, 0.5);
}
.card-area-riservata .icon {
    width: 100%;
    color: #c5001e;
}
.card-area-riservata .icon svg {
    width: 100%;
    height: 60px;
    margin-top: 30px;
    margin-bottom: 20px;
}
.bot-chat {
    display: none;
    border-radius: 100%;
    background-color: #333;
    transition: 0.6s;
}
.bot-chat-icon svg {
    width: 40px;
    height: 40px;
    margin-top: 17px;
    margin-left: 20px;
}
a.pulsante-vuoto {
    border-radius: 65px;
    border: 2px solid #333;
    background: rgba(51, 51, 51, 0);
    color: #333;
    text-align: center;
    margin-top: 30px;
    transition: 0.6s;
}
a.pulsante-pieno,
a.pulsante-vuoto:hover {
    background: #333;
    color: #fff;
}
a.pulsante-pieno svg path,
a.pulsante-vuoto svg path {
    transition: 0.6s;
}
a.pulsante-pieno:hover svg path,
a.pulsante-vuoto:hover svg path {
    stroke: #fff;
}
a.pulsante-pieno {
    border-radius: 49.5px;
    border: 0.762px solid #333;
    margin-top: 40px;
    width: auto;
    transition: 0.6s;
}
a.pulsante-pieno:hover {
    background: #9175e6;
    border-color: #9175e6;
}
.chat-header a {
    color: #fff;
}
.copyright {
    font-size: 12px;
    text-align: center;
}
.copyright a {
    color: #343c41;
}
#chatbot-toggle-btn {
    border-radius: 100%;
    background-color: #333;
    transition: 0.6s;
}
#send-btn,
.button-container button {
    transition: background-color 0.3s;
    cursor: pointer;
}
.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;
}
#send-btn,
.chat-header {
    background-color: #c5001e;
    color: #fff;
}
.chat-header {
    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: 0;
    width: 100%;
}
#send-btn {
    padding: 10px 20px;
    border: none;
    border-radius: 12px;
    margin-left: 10px;
}
.bot-message,
.user-message {
    color: #333;
    padding: 14px;
    border-radius: 10px;
    margin-bottom: 10px;
    margin-top: 15px;
    position: relative;
    font-size: 14px;
    font-family: Gantari, sans-serif;
}
.bot-message::before,
.user-message::before {
    position: absolute;
    bottom: -17px;
    font-size: 20px;
    border-radius: 50%;
    width: 30px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    background-color: #1087ff;
    display: flex;
    height: 30px;
}
#send-btn:hover {
    background-color: #333;
    color: #fff;
}
.user-message {
    background-color: #f3f3f3;
    margin-left: 10px;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
}
.user-message::before {
    content: "\1F468";
    right: -20px;
    margin-bottom: 7px;
    color: #fff;
    justify-content: center;
    align-items: center;
}
.bot-message {
    background-color: #d0c1fc;
    align-self: flex-start;
    margin-right: 10px;
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: left;
}
.bot-message::before {
    content: "\1F916";
    left: -14px;
    margin-bottom: 4px;
    color: #fff;
    justify-content: center;
    align-items: center;
}
.button-container {
    display: flex;
    justify-content: space-around;
    margin-top: 10px;
}
.marker,
.video-overlay {
    justify-content: center;
}
.button-container button {
    padding: 10px 50px;
    border: none;
    background-color: #1087ff;
    color: #fff;
    border-radius: 10px;
}
.button-container button:hover {
    background-color: #0074cc;
}
.marker {
    background-color: #333;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
}
.marker img {
    width: 25px;
    height: 25px;
}
#nascondi {
    position: fixed;
    z-index: 9999999;
    background-color: #fff;
    height: 30px;
    width: 300px;
    right: 99px;
    bottom: 113px;
}
.mapboxgl-popup-content {
    padding: 10px 30px 15px !important;
    box-shadow: 10px 10px 0 0 rgba(168, 138, 255, 0.5) !important;
    border-radius: 10px !important;
    background-color: #333 !important;
    border: 1px dashed #fff;
    color: #fff;
    font-family: Gantari, 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: 700;
    margin-bottom: 10px;
}
.alert-warning {
    background-color: #c0acfd !important;
    border-color: #bfabfc !important;
    color: #333 !important;
}
.video-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    display: none;
    align-items: center;
    z-index: 9999;
}
.video-container-vertical {
    width: 100%;
    max-width: 540px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.video-vertical {
    border-radius: 25px;
    height: 80%;
    width: auto;
    padding: 6px;
    background:
        url("../images/rete-operatori-background.svg") center/cover no-repeat,
        linear-gradient(100deg, #ff1276 0, #432e5f 100%);
}
.close-overlay {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
}
.top {
    top: 5vh;
}
.min-height-header {
    min-height: 70vh;
}
.aggiungi-vh {
    transform: translateY(5vh);
}
.fixed-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 5vh;
    background-color: #333;
    color: #fff;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}
.fixed-menu a {
    color: #8871bf;
}
.testo-benvenuto {
    color: #fff;
    font-size: 0.8em;
}
.testo-benvenuto a {
    color: #fff;
}
.testo-benvenuto a:hover {
    text-decoration: underline;
}
.notification-icon {
    position: relative;
    cursor: pointer;
    right: 45px;
    top: 5px;
}
.notification-tooltip {
    position: absolute;
    top: 40px;
    right: 0;
    width: 300px;
    background-color: #fff;
    color: #000;
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
    display: none;
    padding: 10px;
}
.notification-tooltip h6 {
    margin-top: 0;
    color: #68509a;
    text-transform: uppercase;
    font-size: 0.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;
}
.notification-badge {
    position: absolute;
    top: -11px;
    right: -12px;
    background-color: #69548e;
    color: #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
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: #7862a5;
}
#pleaserotate-graphic {
    fill: #fff;
}
#pleaserotate-backdrop {
    color: #fff;
    background-color: #c5001e;
}
.legenda-form {
    text-transform: uppercase;
    font-size: 0.7em;
    color: #c5001e !important;
    margin-bottom: 5px;
}
.form-check-input:checked {
    background-color: #c5001e;
    border-color: #c5001e;
}
.lb-data .lb-caption {
    font-size: 16px;
    font-weight: 700;
    line-height: 1em;
    color: #c5001e;
    background-color: #fff;
    padding: 2px 6px;
    border-radius: 5px;
}
.anno_costituzione_networking {
    overflow: hidden;
    border-radius: 8px;
    background-color: #c5001e;
    padding: 4px 8px;
    text-transform: uppercase;
    font-size: 0.8em;
    display: inline-block;
    color: #fff;
}
.lb-data .lb-number {
    display: none !important;
}
.video-thumb {
    position: relative;
    display: inline-block;
}
.mouse .wheel,
.play-icon {
    position: absolute;
    left: 50%;
}
.video-thumb img {
    display: block;
    border-radius: 8px;
    transition: filter 0.3s;
}
.play-icon {
    top: 50%;
    transform: translate(-50%, -50%);
    color: transparent;
    font-size: 48px;
    transition:
        transform 0.3s,
        color 0.3s;
    cursor: pointer;
}
.mouse .wheel,
.scroll-indicator,
.sub-principale {
    transform: translateX(-50%);
}
.video-thumb:hover img {
    filter: blur(2px);
}
.video-thumb:hover .play-icon {
    transform: translate(-50%, -50%) scale(1.2);
    color: #fff;
}
.networking-cooperativa-title {
    color: #c5001e;
    font-size: 2.6em;
    margin-bottom: 30px;
    font-weight: 700;
}
.networking-cooperativa-web {
    border: 2px solid #c5001e;
    display: inline-block;
    padding: 6px 17px;
    border-radius: 25px;
    margin-top: 30px;
}
.box-centrato {
    border-radius: 8px;
    padding: 30px;
    color: #fff;
    width: 80%;
    max-width: 400px;
    background:
        url("../images/rete-operatori-background.svg") center/cover no-repeat,
        linear-gradient(100deg, #a88aff 0, #432e5f 100%);
}
.intestazione,
.invest-voce .voce {
    color: #c5001e;
    font-weight: 700;
}
.box-centrato small {
    font-size: 0.8em;
    text-transform: uppercase;
    font-weight: 200;
}
.box-centrato .anno {
    font-size: 1.3em;
    font-weight: 700;
    margin-top: 5px;
}
.box-centrato .dotted-line {
    margin-top: 15px;
    border: none;
    border-top: 1px dotted #fff;
    width: 100%;
}
.box-centrato .info {
    font-size: 1.2em;
    margin-top: 10px;
}
.box-centrato .indirizzo {
    font-size: 1em;
    margin-top: 10px;
    line-height: 1.5em;
}
#rotate-message h1 {
    font-size: 18px;
}
.mapboxgl-ctrl-bottom-left {
    bottom: 50px !important;
}
#c-bns button:first-child,
#s-bns button:first-child {
    background: #c5001e !important;
}
.mr-3 {
    margin-right: 15px;
}
.invest-voce {
    padding-top: 18px;
    padding-bottom: 20px;
    margin-bottom: 10px;
    border-bottom: 1px solid #c5001e;
}
.invest-voce .voce {
    font-size: 1.2em;
}
.invest-voce .valore {
    color: #000;
}
.main-nav {
    padding-left: 110px;
}
.pulsante-operatori {
    font-weight: 700;
    color: #fff;
    background-color: #c5001e;
    display: inline-block;
    padding: 8px 18px;
    border-radius: 30px;
    bottom: 25px;
}
.bold,
.box-servizi-testo,
.btn-cta,
.titolo-servizi .bold,
nav ul li a {
    font-weight: 600;
}
.mouse .wheel {
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    top: 10px;
    animation: 1.8s ease-in-out infinite wheelMove;
}
@keyframes wheelMove {
    0%,
    100% {
        opacity: 1;
        transform: translate(-50%, 0);
    }
    50% {
        opacity: 0;
        transform: translate(-50%, 12px);
    }
}
.card-servizi {
    background: #f0f5f6;
    color: #888d95;
    border-radius: 20px;
    padding: 30px;
    margin-bottom: 30px;
    min-height: 208px;
    transition: 0.6s;
    border: 1px solid #f0f5f6;
    box-shadow: 10px 10px 0 0 #f0e8e8;
}
.size-5,
.size-6,
.size-8 { 
    margin-bottom: 5px;
}
.card-servizi h3 {
    font-size: 1.4em;
    font-weight: 500;
    color: #333;
    margin-bottom: 20px;
}
nav ul li a {
    transition: 0.6s;
    color: #333;
    padding: 6px 8px;
}

.main-cta {
    margin-top: 180px;
}
.main-cta h1.titolo {
    font-size: 3.5em;
    color: #fff;
    transition: 0.6s;
}
.principale {
    border-radius: 40px;
    background-color: #c5001e;
    min-height: 600px;
    position: relative;
    color: #fff !important;
    background-image: url("../images/rete-operatori.jpg");
}
.sub-principale {
    border-radius: 30px;
    background-color: #fff;
    min-height: 120px;
    position: absolute;
    bottom: -100px;
    left: 50%;
    width: 95%;
    padding: 20px 10px;
}
.box-servizi,
.new-hero,
.new-hero .servizi .cta {
    background-color: #f0f5f6;
}
.new-hero {
    padding: 40px 25px;
    color: #333 !important;
    border-radius: 40px;
    background-image: url("../images/rete-operatori-background.svg");
    background-size: cover;
}
.operatori-hero {
    position: absolute;
    margin-top: -150px;
    max-width: 80%;
    left: 80px;
    filter: drop-shadow(6px 10px 4px #8a0a2f);
}
.new-hero h1.titolo {
    font-size: 3.2em;
    color: #333;
    transition: 0.6s;
}
.new-hero .servizi {
    background-color: #fff;
    color: #333;
    border-radius: 20px;
    min-height: 100px;
    padding: 22px 20px;
    margin-bottom: 20px;
    position: relative;
}
.tags .tag,
.tags .tag2 {
    padding: 6px 20px;
    text-transform: uppercase;
    margin-right: 8px;
    transition: 0.2s;
}
.new-hero .servizi .cta {
    position: absolute;
    border-radius: 100%;
    min-height: 20px;
    min-width: 20px;
    color: #333;
    bottom: 20px;
    right: 20px;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    display: none;
}
.size-4 {
    height: 28px;
    width: 28px;
    color: #333;
}
.size-5 {
    height: 40px;
    width: 40px;
    color: #333;
}
.size-6 {
    height: 60px;
    width: 60px;
    color: #333;
}
.size-8 {
    height: 80px;
    width: 80px;
    color: #333;
}
.tags .tag2 {
    display: inline-block;
    border: 1px solid #333 !important;
    border-radius: 20px;
    font-size: 0.8em;
    margin-bottom: 10px;
    color: #333 !important;
}
.rete-operatori-header {
    padding: 38px 0 24px;
}
.box-servizi {
    border-radius: 20px;
    min-height: 100px;
    padding: 20px 10px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.box-servizi-numero,
.tags .tag {
    display: inline-block;
    margin-bottom: 10px;
}
.box-servizi-numero {
    font-size: 1em;
    font-weight: 600;
    text-align: center;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    color: #fff;
    line-height: 30px;
}
.box-servizi-testo {
    font-size: 1.2em;
    text-align: center;
    color: #333;
    line-height: 1.1em;
    padding-bottom: 0.5em;
    min-height: 47px;
}
.tags .tag {
    border: 1px solid #f0f5f6;
    border-radius: 20px;
    font-size: 0.9em;
    color: #f0f5f6;
}
.scroll-indicator {
    position: absolute;
    bottom: 200px;
    left: 50%;
}
.mouse {
    width: 15px;
    height: 30px;
    border: 1px solid #fff;
    border-radius: 25px;
    display: block;
    position: relative;
    opacity: 0.7;
}
@media (min-width: 1350px) {
    .container {
        max-width: 1500px !important;
        padding-left: 15px;
        padding-right: 15px;
    }

    


}
@media (max-width: 1000px) {
    .sub-principale {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        margin: 20px auto;
    }
}
.cta-supporto {
    background: #f0f5f6;
    border-radius: 40px;
    color: #fff;
    min-height: 320px;
    transition:
        transform 0.3s,
        box-shadow 0.3s;
}
.cta-supporto:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}
.btn-cta {
    background-color: #c5001e;
    color: #fff !important;
    border-radius: 80px;
    transition: 0.3s;
}
.btn-cta:hover {
    background-color: #333;
    color: #fff !important;
}
.color-333 {
    color: #333 !important;
}
@media (max-width: 1200px) {
    .container {
        max-width: 1200px !important;
    }
    .main-cta h1.titolo {
        font-size: 2.4em;
    }
    .box-servizi-testo,
    .principale p {
        font-size: 1em;
    }
    .nav-hero h1.titolo {
        font-size: 3em;
    }
}
@media (max-width: 1410px) {
    .principale p {
        font-size: 1.2em;
    }
}
@media (max-width: 1350px) {
    .main-cta h1.titolo {
        font-size: 2.6em;
    }
    .box-servizi-testo,
    .principale p {
        font-size: 1em;
    }
}
@media (max-width: 500px) {
    .new-hero h1.titolo {
        font-size: 2.7em;
    }
}
.icona-accedi {
    font-size: 1.4em;
}
.archivio-card {
    overflow: hidden;
    position: relative;
    transition: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    padding: 28px 28px 32px;
    border-radius: 30px;
    background: no-repeat padding-box #f0f5f6;
    box-shadow: 0 10px 10px #00000029;
    margin-bottom: 30px;
    min-height: 400px;
}
.titolo-servizi {
    font-weight: 200;
    font-size: 3em;
    width: 70%;
    line-height: 1em;
    margin-bottom: 30px;
    color: #c5001e;
}
.hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #c5001e;
    border-radius: 2px;
    transition:
        transform 0.3s,
        opacity 0.3s,
        background-color 0.3s;
    margin-bottom: 4px;
    margin-top: 4px;
}


#investimenti, #circolante, #garanzie, #finanza-agevolata {
  scroll-margin-top: 280px; /* metti circa l’altezza del tuo header */
}